From 92cd59b7817ca30bf1fcb287ecb43dc6bc7710ff Mon Sep 17 00:00:00 2001 From: f Date: Wed, 21 Apr 2021 14:11:11 -0300 Subject: [PATCH 001/699] wip: pruebas de #1142 --- app/models/post.rb | 10 ++- app/views/posts/index.haml | 91 ++++++++++++----------- config/environments/test.rb | 9 +++ test/controllers/posts_controller_test.rb | 14 +++- 4 files changed, 76 insertions(+), 48 deletions(-) diff --git a/app/models/post.rb b/app/models/post.rb index a0e16706..7be6c8c8 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -23,7 +23,11 @@ class Post # TODO: Reemplazar cuando leamos el contenido del Document # a demanda? def find_layout(path) - IO.foreach(path).lazy.grep(/^layout: /).take(1).first&.split(' ')&.last&.tr('\'', '')&.tr('"', '')&.to_sym + IO.foreach(path).lazy.grep(/^layout: /).take(1).first&.split(' ')&.last&.tr('\'', '')&.tr('"', '')&.to_sym || :post + rescue Errno::ENOENT => e + ExceptionNotifier.notify(e) + + :post end end @@ -106,7 +110,7 @@ class Post # Devuelve una llave para poder guardar el post en una cache def cache_key - 'posts/' + uuid.value + "posts/#{uuid.value}" end def cache_version @@ -116,7 +120,7 @@ class Post # Agregar el timestamp para saber si cambió, siguiendo el módulo # ActiveRecord::Integration def cache_key_with_version - cache_key + '-' + cache_version + "#{cache_key}-#{cache_version}" end # TODO: Convertir a UUID? diff --git a/app/views/posts/index.haml b/app/views/posts/index.haml index b2f3f661..9f2ab9a6 100644 --- a/app/views/posts/index.haml +++ b/app/views/posts/index.haml @@ -83,46 +83,53 @@ TODO: Verificar qué pasa cuando se gestiona el sitio en distintos idiomas a la vez - - cache_if @usuarie, post do - - checkbox_id = "checkbox-#{post.uuid.value}" - %tr{ id: post.uuid.value, data: { target: 'reorder.row' } } - %td - .custom-control.custom-checkbox - %input.custom-control-input{ id: checkbox_id, type: 'checkbox', autocomplete: 'off', data: { action: 'reorder#select' } } - %label.custom-control-label{ for: checkbox_id } - %span.sr-only= t('posts.reorder.select') - -# Orden más alto es mayor prioridad - = hidden_field 'post[reorder]', post.uuid.value, - value: @posts.length - i, - data: { reorder: true } - %td.w-100{ class: dir } - = link_to site_post_path(@site, post.id) do - %span{ lang: post.lang.value, dir: dir }= post.title.value - - if post.attributes.include? :draft - - if post.draft.value - %span.badge.badge-primary - = post_label_t(:draft, post: post) - - if post.attributes.include? :categories - - unless post.categories.value.empty? - %br - %small - - (post.categories.respond_to?(:belongs_to) ? post.categories.belongs_to : post.categories.value).each do |c| - = link_to site_posts_path(@site, category: (c.respond_to?(:uuid) ? c.uuid.value : c)) do - %span{ lang: post.lang.value, dir: dir }= (c.respond_to?(:title) ? c.title.value : c) + - begin + - cache_if @usuarie, post do + - checkbox_id = "checkbox-#{post.uuid.value}" + %tr{ id: post.uuid.value, data: { target: 'reorder.row' } } + %td + .custom-control.custom-checkbox + %input.custom-control-input{ id: checkbox_id, type: 'checkbox', autocomplete: 'off', data: { action: 'reorder#select' } } + %label.custom-control-label{ for: checkbox_id } + %span.sr-only= t('posts.reorder.select') + -# Orden más alto es mayor prioridad + = hidden_field 'post[reorder]', post.uuid.value, + value: @posts.length - i, + data: { reorder: true } + %td.w-100{ class: dir } + = link_to site_post_path(@site, post.id) do + %span{ lang: post.lang.value, dir: dir }= post.title.value + - if post.attributes.include? :draft + - if post.draft.value + %span.badge.badge-primary + = post_label_t(:draft, post: post) + - if post.attributes.include? :categories + - unless post.categories.value.empty? + %br + %small + - (post.categories.respond_to?(:belongs_to) ? post.categories.belongs_to : post.categories.value).each do |c| + = link_to site_posts_path(@site, category: (c.respond_to?(:uuid) ? c.uuid.value : c)) do + %span{ lang: post.lang.value, dir: dir }= (c.respond_to?(:title) ? c.title.value : c) - %td - = post.date.value.strftime('%F') - %br/ - - if post.attribute? :order - = post.order.value - %td - - if @usuarie || policy(post).edit? - = link_to t('posts.edit'), - edit_site_post_path(@site, post.id), - class: 'btn btn-block' - - if @usuarie || policy(post).destroy? - = link_to t('posts.destroy'), - site_post_path(@site, post.id), - class: 'btn btn-block', - method: :delete, - data: { confirm: t('posts.confirm_destroy') } + %td + = post.date.value.strftime('%F') + %br/ + - if post.attribute? :order + = post.order.value + %td + - if @usuarie || policy(post).edit? + = link_to t('posts.edit'), + edit_site_post_path(@site, post.id), + class: 'btn btn-block' + - if @usuarie || policy(post).destroy? + = link_to t('posts.destroy'), + site_post_path(@site, post.id), + class: 'btn btn-block', + method: :delete, + data: { confirm: t('posts.confirm_destroy') } + -# + Rescatar cualquier error en un post, notificarlo e + ignorar su renderización. + - rescue ActionView::Template::Error => e + - binding.pry + - ExceptionNotifier.notify_exception(e.cause, data: { site: @site.name, post: @post.path.absolute, usuarie: current_usuarie.id }) diff --git a/config/environments/test.rb b/config/environments/test.rb index f8169828..599c5f28 100644 --- a/config/environments/test.rb +++ b/config/environments/test.rb @@ -50,6 +50,15 @@ Rails.application.configure do config.action_mailer.default_url_options = { host: 'localhost', port: 3000 } + config.middleware.use ExceptionNotification::Rack, + error_grouping: true, + email: { + email_prefix: '', + sender_address: ENV['DEFAULT_FROM'], + exception_recipients: ENV['EXCEPTION_TO'], + normalize_subject: true + } + # Print deprecation notices to the stderr. config.active_support.deprecation = :stderr diff --git a/test/controllers/posts_controller_test.rb b/test/controllers/posts_controller_test.rb index b8c9f560..3349f09b 100644 --- a/test/controllers/posts_controller_test.rb +++ b/test/controllers/posts_controller_test.rb @@ -150,7 +150,7 @@ class PostsControllerTest < ActionDispatch::IntegrationTest end posts = @site.posts(**lang) - reorder = Hash[posts.map { |p| p.uuid.value }.shuffle.each_with_index.to_a] + reorder = posts.map { |p| p.uuid.value }.shuffle.each_with_index.to_a.to_h post site_posts_reorder_url(@site), headers: @authorization, @@ -159,10 +159,18 @@ class PostsControllerTest < ActionDispatch::IntegrationTest @site = Site.find @site.id assert_equal reorder, - Hash[@site.posts(**lang).map do |p| + @site.posts(**lang).map do |p| [p.uuid.value, p.order.value] - end] + end.to_h assert_equal I18n.t('post_service.reorder'), @site.repository.rugged.head.target.message end + + test 'si hay algún error se recupera' do + File.open(File.join(@site.path, '_es', "#{Date.today}-#{SecureRandom.hex}.markdown"), 'w') do |f| + f.write '' + end + + get site_posts_url(@site), headers: @authorization + end end From d879b5bbfe087e79519dc2e2affcb5ad8204ccda Mon Sep 17 00:00:00 2001 From: f Date: Mon, 7 Mar 2022 11:57:02 -0300 Subject: [PATCH 002/699] eliminar pry --- app/views/posts/index.haml | 1 - 1 file changed, 1 deletion(-) diff --git a/app/views/posts/index.haml b/app/views/posts/index.haml index 9f2ab9a6..0fbcf50a 100644 --- a/app/views/posts/index.haml +++ b/app/views/posts/index.haml @@ -131,5 +131,4 @@ Rescatar cualquier error en un post, notificarlo e ignorar su renderización. - rescue ActionView::Template::Error => e - - binding.pry - ExceptionNotifier.notify_exception(e.cause, data: { site: @site.name, post: @post.path.absolute, usuarie: current_usuarie.id }) From 3738bb69e4a3a1347b9bd668e6f55dd98fa6136d Mon Sep 17 00:00:00 2001 From: f Date: Fri, 11 Mar 2022 12:07:35 -0300 Subject: [PATCH 003/699] en produccion usamos links simbolicos --- _deploy/.keep | 0 _sites/.keep | 0 _sites/_storage/.keep | 0 3 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 _deploy/.keep delete mode 100644 _sites/.keep delete mode 100644 _sites/_storage/.keep diff --git a/_deploy/.keep b/_deploy/.keep deleted file mode 100644 index e69de29b..00000000 diff --git a/_sites/.keep b/_sites/.keep deleted file mode 100644 index e69de29b..00000000 diff --git a/_sites/_storage/.keep b/_sites/_storage/.keep deleted file mode 100644 index e69de29b..00000000 From cec4c11afe5e4fff7f4d2a2331d94dacee14902b Mon Sep 17 00:00:00 2001 From: f Date: Fri, 11 Mar 2022 12:08:36 -0300 Subject: [PATCH 004/699] links simbolicos --- _deploy | 1 + _sites | 1 + _skel | 1 + _storage | 1 + 4 files changed, 4 insertions(+) create mode 120000 _deploy create mode 120000 _sites create mode 120000 _skel create mode 120000 _storage diff --git a/_deploy b/_deploy new file mode 120000 index 00000000..5d029e6a --- /dev/null +++ b/_deploy @@ -0,0 +1 @@ +data/_deploy \ No newline at end of file diff --git a/_sites b/_sites new file mode 120000 index 00000000..915190d2 --- /dev/null +++ b/_sites @@ -0,0 +1 @@ +data/_sites \ No newline at end of file diff --git a/_skel b/_skel new file mode 120000 index 00000000..8c20bb06 --- /dev/null +++ b/_skel @@ -0,0 +1 @@ +data/skel \ No newline at end of file diff --git a/_storage b/_storage new file mode 120000 index 00000000..e0fa2b79 --- /dev/null +++ b/_storage @@ -0,0 +1 @@ +data/_storage \ No newline at end of file From 47756e5b461f7e6bf582a5afe7a34e2254aea37f Mon Sep 17 00:00:00 2001 From: f Date: Tue, 22 Mar 2022 20:15:59 -0300 Subject: [PATCH 005/699] resiliciencia --- app/models/metadata_file.rb | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/app/models/metadata_file.rb b/app/models/metadata_file.rb index 2c1a6d59..eca87478 100644 --- a/app/models/metadata_file.rb +++ b/app/models/metadata_file.rb @@ -121,6 +121,13 @@ class MetadataFile < MetadataTemplate # @return [Pathname] def destination_path_with_filename destination_path.realpath + # Si el archivo no llegara a existir, en lugar de hacer fallar todo, + # devolvemos la ruta original, que puede ser el archivo que no existe + # o vacía si se está subiendo uno. + rescue Errno::ENOENT => e + ExceptionNotifier.notify_exception(e) + + value['path'] end def relative_destination_path_with_filename From 76e149b6fd157ce6fe0530a4302a0125f33ea20c Mon Sep 17 00:00:00 2001 From: f Date: Wed, 6 Apr 2022 17:00:17 -0300 Subject: [PATCH 006/699] output --- app/models/deploy_rsync.rb | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/app/models/deploy_rsync.rb b/app/models/deploy_rsync.rb index 40018dbd..d07f3c99 100644 --- a/app/models/deploy_rsync.rb +++ b/app/models/deploy_rsync.rb @@ -5,8 +5,8 @@ class DeployRsync < Deploy store :values, accessors: %i[flags destination host_keys], coder: JSON - def deploy - ssh? && rsync + def deploy(output: false) + ssh? && rsync(output: output) end # No se ocupa espacio local @@ -68,8 +68,9 @@ class DeployRsync < Deploy # Sincroniza hacia el directorio remoto, usando las flags opcionales. # # @return [Boolean] - def rsync - run %(rsync -av #{flags ? Shellwords.escape(flags) : ''} #{Shellwords.escape source}/ #{Shellwords.escape destination}/) + def rsync(output: false) + run %(rsync -av #{flags ? Shellwords.escape(flags) : ''} #{Shellwords.escape source}/ #{Shellwords.escape destination}/), + output: output end # El origen es el destino de la compilación From 84c51ad5ecf35552a610ba0540e48d16154bb842 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 6 Apr 2022 20:09:56 -0300 Subject: [PATCH 007/699] informar el servidor remoto --- app/models/deploy_rsync.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/models/deploy_rsync.rb b/app/models/deploy_rsync.rb index dd661840..c8e0dc8f 100644 --- a/app/models/deploy_rsync.rb +++ b/app/models/deploy_rsync.rb @@ -73,7 +73,7 @@ class DeployRsync < Deploy # # @return [Array] def user_host - destination.split(':', 2).first.split('@', 2).tap do |d| + @user_host ||= destination.split(':', 2).first.split('@', 2).tap do |d| next unless d.size == 1 d.insert(0, nil) @@ -93,4 +93,8 @@ class DeployRsync < Deploy def source site.deploys.find_by(type: 'DeployLocal').destination end + + def url + "https://#{user_host.last}" + end end From 6ca6758a555b4ad8acd8be2e11d62880dccb0fe1 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 6 Apr 2022 20:18:29 -0300 Subject: [PATCH 008/699] el metodo es publico --- app/models/deploy_rsync.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/models/deploy_rsync.rb b/app/models/deploy_rsync.rb index c8e0dc8f..feaa25b9 100644 --- a/app/models/deploy_rsync.rb +++ b/app/models/deploy_rsync.rb @@ -23,6 +23,10 @@ class DeployRsync < Deploy end end + def url + "https://#{user_host.last}" + end + private # Verificar la conexión SSH implementando Trust On First Use @@ -93,8 +97,4 @@ class DeployRsync < Deploy def source site.deploys.find_by(type: 'DeployLocal').destination end - - def url - "https://#{user_host.last}" - end end From 5a891391cbea3cd4728cc3946e53198c5df84185 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 11 Apr 2022 13:37:38 -0300 Subject: [PATCH 009/699] anarres por defecto --- config/application.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/application.rb b/config/application.rb index ed143fee..446b5402 100644 --- a/config/application.rb +++ b/config/application.rb @@ -57,7 +57,7 @@ module Sutty end def nodes - @nodes ||= ENV.fetch('SUTTY_NODES', '').split(',') + @nodes ||= ENV.fetch('SUTTY_NODES', 'anarres.sutty.nl').split(',') end end end From cc85c01fbb5eb086044d9a3df04628f4694f24cb Mon Sep 17 00:00:00 2001 From: f Date: Mon, 11 Apr 2022 14:20:30 -0300 Subject: [PATCH 010/699] packs --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 3 +++ ...c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js | 3 +++ ...e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js.gz | 3 +++ ...2d35e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css | 3 +++ ...5e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css.gz | 3 +++ ...2213db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css | 3 +++ ...3db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css.gz | 3 +++ ...e855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg | 3 +++ ...5d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg.gz | 3 +++ ...391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js | 0 ...bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz | 3 +++ ...65df0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css | 3 +++ ...f0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css.gz | 3 +++ ...853543a3542af03c7dde9963359b1c0b9b725220a7f193e1324ecd8.png | 3 +++ ...8a012c0011843ae337a8a20270c336948a8668df5cb89a8827299b.woff | 3 +++ ...24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot | 3 +++ ...35f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot.gz | 3 +++ ...9d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg | 3 +++ ...d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg.gz | 3 +++ ...aebd1c28b404eec442cea53642644b3a73f91c5a4ab46859af772.woff2 | 3 +++ ...e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf | 3 +++ ...169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf.gz | 3 +++ ...ee26b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css | 3 +++ ...6b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css.gz | 3 +++ ...fde4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css | 3 +++ ...4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css.gz | 3 +++ ...9c00df26e81bc5a33bcf64350729f954b85f82d5e759fffec4e183a.png | 3 +++ ...54162eb71f127f50460dbc55d405027189ebe90b20729ef18d13d36.png | 3 +++ ...413b14db27db07285ade3951721e02244c31523284ab2d1ed53c3dc.png | 3 +++ ...0eae9497ea201f3ad57549af343ddc1d24ddc78b055627cf14e9d5d.png | 3 +++ ...391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js | 0 ...bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz | 3 +++ ...3c16cdcefe54920aa7d3994a0683317ca9a58d35cbc5ec65996398c.png | 3 +++ ...c4ba0e1f22a01cdf1ff7f120fa4d89a6cd0933d68f12951d19809b4.png | 3 +++ ...a198f61f68a71ed8f9f9c701122c0c33b775d990edceae4aece567f.png | 3 +++ ...ea5684d70cc5b51fb1ae3186386fe9363bf3edaf01663ac641341.woff2 | 3 +++ ...0de8d5709d5162dbf0dcb9ab8df71e55f63cfd986bdb68ee2ade0b.woff | 3 +++ ...b86358489cb76fc34ec0683d57a1b2635c43acbae45be3349d976.woff2 | 3 +++ ...6451cd2fb3803333f4de3e11033437aa0c8d3d06edcb19e4e38ecb.woff | 3 +++ ...da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg | 3 +++ ...3a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg.gz | 3 +++ ...70c82f2bf8fa2d68b3b32e5e2a1c0ed787dafa6ea1b98b52b96328f.png | 3 +++ public/packs/css/application-3be2c380.css | 3 +++ public/packs/css/application-3be2c380.css.br | 3 +++ public/packs/css/application-3be2c380.css.gz | 3 +++ public/packs/css/application-b5d3069a.css | 3 +++ public/packs/css/application-b5d3069a.css.map | 3 +++ public/packs/js/application-6b082bb3f5bdb1ba778d.js | 3 +++ .../packs/js/application-6b082bb3f5bdb1ba778d.js.LICENSE.txt | 3 +++ public/packs/js/application-6b082bb3f5bdb1ba778d.js.br | 3 +++ public/packs/js/application-6b082bb3f5bdb1ba778d.js.gz | 3 +++ public/packs/js/application-6b082bb3f5bdb1ba778d.js.map | 3 +++ public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.br | 3 +++ public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.gz | 3 +++ public/packs/manifest.json | 3 +++ public/packs/manifest.json.br | 3 +++ public/packs/manifest.json.gz | 3 +++ public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff | 3 +++ public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 | 3 +++ public/packs/media/fonts/forkawesome-webfont-86541105.svg | 3 +++ public/packs/media/fonts/forkawesome-webfont-86541105.svg.br | 3 +++ public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz | 3 +++ public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot | 3 +++ public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br | 3 +++ public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz | 3 +++ public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf | 3 +++ public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br | 3 +++ public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz | 3 +++ public/packs/media/images/layers-2x-8f2c4d11.png | 3 +++ public/packs/media/images/layers-416d9136.png | 3 +++ public/packs/media/images/marker-icon-2b3e1faf.png | 3 +++ public/packs/media/images/marker-icon-2x-680f69f3.png | 3 +++ public/packs/media/images/marker-shadow-a0c6cc14.png | 3 +++ 73 files changed, 213 insertions(+) create mode 100644 public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json create mode 100644 public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js create mode 100644 public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js.gz create mode 100644 public/assets/application-4942bb3192d35e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css create mode 100644 public/assets/application-4942bb3192d35e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css.gz create mode 100644 public/assets/application-5317bae732213db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css create mode 100644 public/assets/application-5317bae732213db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css.gz create mode 100644 public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg create mode 100644 public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg.gz create mode 100644 public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js create mode 100644 public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz create mode 100644 public/assets/blazer/application-b4928e72d65df0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css create mode 100644 public/assets/blazer/application-b4928e72d65df0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css.gz create mode 100644 public/assets/blazer/favicon-ccead91b8853543a3542af03c7dde9963359b1c0b9b725220a7f193e1324ecd8.png create mode 100644 public/assets/blazer/glyphicons-halflings-regular-0703369a358a012c0011843ae337a8a20270c336948a8668df5cb89a8827299b.woff create mode 100644 public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot create mode 100644 public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot.gz create mode 100644 public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg create mode 100644 public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg.gz create mode 100644 public/assets/blazer/glyphicons-halflings-regular-403acfcf0cbaebd1c28b404eec442cea53642644b3a73f91c5a4ab46859af772.woff2 create mode 100644 public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf create mode 100644 public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf.gz create mode 100644 public/assets/editor-4a1f1b9a0ee26b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css create mode 100644 public/assets/editor-4a1f1b9a0ee26b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css.gz create mode 100644 public/assets/editor-bf013ce0afde4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css create mode 100644 public/assets/editor-bf013ce0afde4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css.gz create mode 100644 public/assets/icon_external_link-1af8262ac9c00df26e81bc5a33bcf64350729f954b85f82d5e759fffec4e183a.png create mode 100644 public/assets/layers-0e356f4d554162eb71f127f50460dbc55d405027189ebe90b20729ef18d13d36.png create mode 100644 public/assets/layers-2x-ba8fa601e413b14db27db07285ade3951721e02244c31523284ab2d1ed53c3dc.png create mode 100644 public/assets/logo-e11ab53230eae9497ea201f3ad57549af343ddc1d24ddc78b055627cf14e9d5d.png create mode 100644 public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js create mode 100644 public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz create mode 100644 public/assets/marker-icon-2x-091245b393c16cdcefe54920aa7d3994a0683317ca9a58d35cbc5ec65996398c.png create mode 100644 public/assets/marker-icon-3d253116ec4ba0e1f22a01cdf1ff7f120fa4d89a6cd0933d68f12951d19809b4.png create mode 100644 public/assets/marker-shadow-a2d94406ba198f61f68a71ed8f9f9c701122c0c33b775d990edceae4aece567f.png create mode 100644 public/assets/saira/v3/SairaBold-subset-0c1968b6a54ea5684d70cc5b51fb1ae3186386fe9363bf3edaf01663ac641341.woff2 create mode 100644 public/assets/saira/v3/SairaBold-subset.zopfli-2d3f8769110de8d5709d5162dbf0dcb9ab8df71e55f63cfd986bdb68ee2ade0b.woff create mode 100644 public/assets/saira/v3/SairaMedium-subset-6d53d976d73b86358489cb76fc34ec0683d57a1b2635c43acbae45be3349d976.woff2 create mode 100644 public/assets/saira/v3/SairaMedium-subset.zopfli-47d24dd6cc6451cd2fb3803333f4de3e11033437aa0c8d3d06edcb19e4e38ecb.woff create mode 100644 public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg create mode 100644 public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg.gz create mode 100644 public/assets/sutty_cuadrada-547911cb970c82f2bf8fa2d68b3b32e5e2a1c0ed787dafa6ea1b98b52b96328f.png create mode 100644 public/packs/css/application-3be2c380.css create mode 100644 public/packs/css/application-3be2c380.css.br create mode 100644 public/packs/css/application-3be2c380.css.gz create mode 100644 public/packs/css/application-b5d3069a.css create mode 100644 public/packs/css/application-b5d3069a.css.map create mode 100644 public/packs/js/application-6b082bb3f5bdb1ba778d.js create mode 100644 public/packs/js/application-6b082bb3f5bdb1ba778d.js.LICENSE.txt create mode 100644 public/packs/js/application-6b082bb3f5bdb1ba778d.js.br create mode 100644 public/packs/js/application-6b082bb3f5bdb1ba778d.js.gz create mode 100644 public/packs/js/application-6b082bb3f5bdb1ba778d.js.map create mode 100644 public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.br create mode 100644 public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.gz create mode 100644 public/packs/manifest.json create mode 100644 public/packs/manifest.json.br create mode 100644 public/packs/manifest.json.gz create mode 100644 public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff create mode 100644 public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 create mode 100644 public/packs/media/fonts/forkawesome-webfont-86541105.svg create mode 100644 public/packs/media/fonts/forkawesome-webfont-86541105.svg.br create mode 100644 public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz create mode 100644 public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot create mode 100644 public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br create mode 100644 public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz create mode 100644 public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf create mode 100644 public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br create mode 100644 public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz create mode 100644 public/packs/media/images/layers-2x-8f2c4d11.png create mode 100644 public/packs/media/images/layers-416d9136.png create mode 100644 public/packs/media/images/marker-icon-2b3e1faf.png create mode 100644 public/packs/media/images/marker-icon-2x-680f69f3.png create mode 100644 public/packs/media/images/marker-shadow-a0c6cc14.png diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json new file mode 100644 index 00000000..f386bb06 --- /dev/null +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47b024c771f2afdf4a4cce55ba70ea152986af33a399dffecf1d5386e6f061fa +size 12096 diff --git a/public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js b/public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js new file mode 100644 index 00000000..00eb1f78 --- /dev/null +++ b/public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:180d06e627b032f75d76aba6172b3aa58d171fb0a0f1142f29448d10fc5ec5a9 +size 16449 diff --git a/public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js.gz b/public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js.gz new file mode 100644 index 00000000..b2fc969f --- /dev/null +++ b/public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31c60d7e03c08ec80d38703401399fce2531588d03a3988772180768b252f227 +size 5157 diff --git a/public/assets/application-4942bb3192d35e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css b/public/assets/application-4942bb3192d35e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css new file mode 100644 index 00000000..e715168f --- /dev/null +++ b/public/assets/application-4942bb3192d35e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6b2bb96b2b44504df5c18b7444ba75e6562fb202cb8be98bf9d4dc07551f995 +size 228716 diff --git a/public/assets/application-4942bb3192d35e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css.gz b/public/assets/application-4942bb3192d35e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css.gz new file mode 100644 index 00000000..4812cc23 --- /dev/null +++ b/public/assets/application-4942bb3192d35e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb1b0617cf9b7c58b854fea5c08663bfcacb8e8990aac2f0984a50af9fe4c3b3 +size 31683 diff --git a/public/assets/application-5317bae732213db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css b/public/assets/application-5317bae732213db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css new file mode 100644 index 00000000..5e3d04b8 --- /dev/null +++ b/public/assets/application-5317bae732213db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:295df3a00dc2bfe780f325f7f691f873383f315c3e70bd5f91170d5b75f360f4 +size 228603 diff --git a/public/assets/application-5317bae732213db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css.gz b/public/assets/application-5317bae732213db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css.gz new file mode 100644 index 00000000..de59bfe0 --- /dev/null +++ b/public/assets/application-5317bae732213db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:114c8f61a864c481ff636f930d8bb3e7aaedbb1793d8a12cf660baa1e17fda77 +size 31651 diff --git a/public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg b/public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg new file mode 100644 index 00000000..2a7f2458 --- /dev/null +++ b/public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92f2db633d3e9611dc07743d7267204c40de2f8d75b9fa7e0646b195541f2d53 +size 571 diff --git a/public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg.gz b/public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg.gz new file mode 100644 index 00000000..0dc52f86 --- /dev/null +++ b/public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0d23e3ef3dfd3bac465ba5335bd34063624d0a114ef13f60e664923da173364 +size 359 diff --git a/public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js b/public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js new file mode 100644 index 00000000..e69de29b diff --git a/public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz b/public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz new file mode 100644 index 00000000..4ac239a7 --- /dev/null +++ b/public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:854547623adbcdb1e391f7072dcac9dafe7f1618f7295ed4051b40b9e17d5a5d +size 20 diff --git a/public/assets/blazer/application-b4928e72d65df0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css b/public/assets/blazer/application-b4928e72d65df0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css new file mode 100644 index 00000000..2a35d4f2 --- /dev/null +++ b/public/assets/blazer/application-b4928e72d65df0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e8dd33d9918c9303bd676eb1eb376f8db90521b913dcf22130dad607746af57 +size 134248 diff --git a/public/assets/blazer/application-b4928e72d65df0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css.gz b/public/assets/blazer/application-b4928e72d65df0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css.gz new file mode 100644 index 00000000..93518d06 --- /dev/null +++ b/public/assets/blazer/application-b4928e72d65df0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28123f0ee35baf22ac539dae767aa4ee7762dff8406cd44e9fe736f6fe12e9c2 +size 23336 diff --git a/public/assets/blazer/favicon-ccead91b8853543a3542af03c7dde9963359b1c0b9b725220a7f193e1324ecd8.png b/public/assets/blazer/favicon-ccead91b8853543a3542af03c7dde9963359b1c0b9b725220a7f193e1324ecd8.png new file mode 100644 index 00000000..f275a453 --- /dev/null +++ b/public/assets/blazer/favicon-ccead91b8853543a3542af03c7dde9963359b1c0b9b725220a7f193e1324ecd8.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:392743107d0d14fea5699cff1e80d209db7058ef660e643ff9c9f07e990ac084 +size 320 diff --git a/public/assets/blazer/glyphicons-halflings-regular-0703369a358a012c0011843ae337a8a20270c336948a8668df5cb89a8827299b.woff b/public/assets/blazer/glyphicons-halflings-regular-0703369a358a012c0011843ae337a8a20270c336948a8668df5cb89a8827299b.woff new file mode 100644 index 00000000..334f2da2 --- /dev/null +++ b/public/assets/blazer/glyphicons-halflings-regular-0703369a358a012c0011843ae337a8a20270c336948a8668df5cb89a8827299b.woff @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a26394f7ede100ca118eff2eda08596275a9839b959c226e15439557a5a80742 +size 23424 diff --git a/public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot b/public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot new file mode 100644 index 00000000..42ea705f --- /dev/null +++ b/public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:13634da87d9e23f8c3ed9108ce1724d183a39ad072e73e1b3d8cbf646d2d0407 +size 20127 diff --git a/public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot.gz b/public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot.gz new file mode 100644 index 00000000..96b3c4c0 --- /dev/null +++ b/public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3ae4ea8532a6a5e94a280757443d7a0151ef6c524ef270025f54c676ab87b52 +size 20056 diff --git a/public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg b/public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg new file mode 100644 index 00000000..781641cc --- /dev/null +++ b/public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42f60659d265c1a3c30f9fa42abcbb56bd4a53af4d83d316d6dd7a36903c43e5 +size 108738 diff --git a/public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg.gz b/public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg.gz new file mode 100644 index 00000000..6ea808de --- /dev/null +++ b/public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d040e5ba30ed70a31745441154d9089683726a0af359e55d4944c71a5eccc3f +size 26508 diff --git a/public/assets/blazer/glyphicons-halflings-regular-403acfcf0cbaebd1c28b404eec442cea53642644b3a73f91c5a4ab46859af772.woff2 b/public/assets/blazer/glyphicons-halflings-regular-403acfcf0cbaebd1c28b404eec442cea53642644b3a73f91c5a4ab46859af772.woff2 new file mode 100644 index 00000000..3336ba11 --- /dev/null +++ b/public/assets/blazer/glyphicons-halflings-regular-403acfcf0cbaebd1c28b404eec442cea53642644b3a73f91c5a4ab46859af772.woff2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe185d11a49676890d47bb783312a0cda5a44c4039214094e7957b4c040ef11c +size 18028 diff --git a/public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf b/public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf new file mode 100644 index 00000000..233386da --- /dev/null +++ b/public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e395044093757d82afcb138957d06a1ea9361bdcf0b442d06a18a8051af57456 +size 45404 diff --git a/public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf.gz b/public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf.gz new file mode 100644 index 00000000..d9544ffc --- /dev/null +++ b/public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04d4a05b1528b492212df1107f13e1bdbb68a42ff36717a144036baea4a4265b +size 23360 diff --git a/public/assets/editor-4a1f1b9a0ee26b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css b/public/assets/editor-4a1f1b9a0ee26b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css new file mode 100644 index 00000000..e88d86f2 --- /dev/null +++ b/public/assets/editor-4a1f1b9a0ee26b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87a53467a482bf380c03e3b57e428fb03e40ecb285c3583ff7e9e4a6898c1f12 +size 2021 diff --git a/public/assets/editor-4a1f1b9a0ee26b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css.gz b/public/assets/editor-4a1f1b9a0ee26b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css.gz new file mode 100644 index 00000000..96479f89 --- /dev/null +++ b/public/assets/editor-4a1f1b9a0ee26b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c9bed50695a831ce1c06a1cb8542feda05087edae66c1ccadbe5f42e106bf6f +size 671 diff --git a/public/assets/editor-bf013ce0afde4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css b/public/assets/editor-bf013ce0afde4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css new file mode 100644 index 00000000..77b81082 --- /dev/null +++ b/public/assets/editor-bf013ce0afde4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4797893c199b6df1afac1451595e21af212f23943e5745f3a70e31f840f9882 +size 1908 diff --git a/public/assets/editor-bf013ce0afde4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css.gz b/public/assets/editor-bf013ce0afde4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css.gz new file mode 100644 index 00000000..eec85b87 --- /dev/null +++ b/public/assets/editor-bf013ce0afde4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac4f455ad6ede6d3ad82ed7fc3ca78bf6b7a8a2b1fde4dda34e7622859175172 +size 637 diff --git a/public/assets/icon_external_link-1af8262ac9c00df26e81bc5a33bcf64350729f954b85f82d5e759fffec4e183a.png b/public/assets/icon_external_link-1af8262ac9c00df26e81bc5a33bcf64350729f954b85f82d5e759fffec4e183a.png new file mode 100644 index 00000000..e882b8bc --- /dev/null +++ b/public/assets/icon_external_link-1af8262ac9c00df26e81bc5a33bcf64350729f954b85f82d5e759fffec4e183a.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a0acd631fd5704e940b9f486d3234aa9ab871881733f48d6edd3cb1f1a09ffc +size 144 diff --git a/public/assets/layers-0e356f4d554162eb71f127f50460dbc55d405027189ebe90b20729ef18d13d36.png b/public/assets/layers-0e356f4d554162eb71f127f50460dbc55d405027189ebe90b20729ef18d13d36.png new file mode 100644 index 00000000..7b44754c --- /dev/null +++ b/public/assets/layers-0e356f4d554162eb71f127f50460dbc55d405027189ebe90b20729ef18d13d36.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1dbbe9d028e292f36fcba8f8b3a28d5e8932754fc2215b9ac69e4cdecf5107c6 +size 696 diff --git a/public/assets/layers-2x-ba8fa601e413b14db27db07285ade3951721e02244c31523284ab2d1ed53c3dc.png b/public/assets/layers-2x-ba8fa601e413b14db27db07285ade3951721e02244c31523284ab2d1ed53c3dc.png new file mode 100644 index 00000000..d3cf7e52 --- /dev/null +++ b/public/assets/layers-2x-ba8fa601e413b14db27db07285ade3951721e02244c31523284ab2d1ed53c3dc.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:066daca850d8ffbef007af00b06eac0015728dee279c51f3cb6c716df7c42edf +size 1259 diff --git a/public/assets/logo-e11ab53230eae9497ea201f3ad57549af343ddc1d24ddc78b055627cf14e9d5d.png b/public/assets/logo-e11ab53230eae9497ea201f3ad57549af343ddc1d24ddc78b055627cf14e9d5d.png new file mode 100644 index 00000000..be79dc74 --- /dev/null +++ b/public/assets/logo-e11ab53230eae9497ea201f3ad57549af343ddc1d24ddc78b055627cf14e9d5d.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:abab4950f459ebf3f475d376d6fd468e735cab2d86c712222fa586569a273a09 +size 2001 diff --git a/public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js b/public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js new file mode 100644 index 00000000..e69de29b diff --git a/public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz b/public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz new file mode 100644 index 00000000..4ac239a7 --- /dev/null +++ b/public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:854547623adbcdb1e391f7072dcac9dafe7f1618f7295ed4051b40b9e17d5a5d +size 20 diff --git a/public/assets/marker-icon-2x-091245b393c16cdcefe54920aa7d3994a0683317ca9a58d35cbc5ec65996398c.png b/public/assets/marker-icon-2x-091245b393c16cdcefe54920aa7d3994a0683317ca9a58d35cbc5ec65996398c.png new file mode 100644 index 00000000..09e8445f --- /dev/null +++ b/public/assets/marker-icon-2x-091245b393c16cdcefe54920aa7d3994a0683317ca9a58d35cbc5ec65996398c.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00179c4c1ee830d3a108412ae0d294f55776cfeb085c60129a39aa6fc4ae2528 +size 2464 diff --git a/public/assets/marker-icon-3d253116ec4ba0e1f22a01cdf1ff7f120fa4d89a6cd0933d68f12951d19809b4.png b/public/assets/marker-icon-3d253116ec4ba0e1f22a01cdf1ff7f120fa4d89a6cd0933d68f12951d19809b4.png new file mode 100644 index 00000000..b1789c76 --- /dev/null +++ b/public/assets/marker-icon-3d253116ec4ba0e1f22a01cdf1ff7f120fa4d89a6cd0933d68f12951d19809b4.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:574c3a5cca85f4114085b6841596d62f00d7c892c7b03f28cbfa301deb1dc437 +size 1466 diff --git a/public/assets/marker-shadow-a2d94406ba198f61f68a71ed8f9f9c701122c0c33b775d990edceae4aece567f.png b/public/assets/marker-shadow-a2d94406ba198f61f68a71ed8f9f9c701122c0c33b775d990edceae4aece567f.png new file mode 100644 index 00000000..dc111216 --- /dev/null +++ b/public/assets/marker-shadow-a2d94406ba198f61f68a71ed8f9f9c701122c0c33b775d990edceae4aece567f.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:264f5c640339f042dd729062cfc04c17f8ea0f29882b538e3848ed8f10edb4da +size 618 diff --git a/public/assets/saira/v3/SairaBold-subset-0c1968b6a54ea5684d70cc5b51fb1ae3186386fe9363bf3edaf01663ac641341.woff2 b/public/assets/saira/v3/SairaBold-subset-0c1968b6a54ea5684d70cc5b51fb1ae3186386fe9363bf3edaf01663ac641341.woff2 new file mode 100644 index 00000000..580c899c --- /dev/null +++ b/public/assets/saira/v3/SairaBold-subset-0c1968b6a54ea5684d70cc5b51fb1ae3186386fe9363bf3edaf01663ac641341.woff2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ad13d7b01c301feecfb7f760791100710930be2d232fcdf97fb09a1301e4c3e +size 16264 diff --git a/public/assets/saira/v3/SairaBold-subset.zopfli-2d3f8769110de8d5709d5162dbf0dcb9ab8df71e55f63cfd986bdb68ee2ade0b.woff b/public/assets/saira/v3/SairaBold-subset.zopfli-2d3f8769110de8d5709d5162dbf0dcb9ab8df71e55f63cfd986bdb68ee2ade0b.woff new file mode 100644 index 00000000..94528fe4 --- /dev/null +++ b/public/assets/saira/v3/SairaBold-subset.zopfli-2d3f8769110de8d5709d5162dbf0dcb9ab8df71e55f63cfd986bdb68ee2ade0b.woff @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd722d9eb3a725f4188615c514c5c0e6b1b82de55a00dca194efa84704257dd2 +size 20120 diff --git a/public/assets/saira/v3/SairaMedium-subset-6d53d976d73b86358489cb76fc34ec0683d57a1b2635c43acbae45be3349d976.woff2 b/public/assets/saira/v3/SairaMedium-subset-6d53d976d73b86358489cb76fc34ec0683d57a1b2635c43acbae45be3349d976.woff2 new file mode 100644 index 00000000..7127bebe --- /dev/null +++ b/public/assets/saira/v3/SairaMedium-subset-6d53d976d73b86358489cb76fc34ec0683d57a1b2635c43acbae45be3349d976.woff2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ac4573ca9ed8e08a742d203171057acc3d8f5f49825d9351bd2a22c2d58e669 +size 16388 diff --git a/public/assets/saira/v3/SairaMedium-subset.zopfli-47d24dd6cc6451cd2fb3803333f4de3e11033437aa0c8d3d06edcb19e4e38ecb.woff b/public/assets/saira/v3/SairaMedium-subset.zopfli-47d24dd6cc6451cd2fb3803333f4de3e11033437aa0c8d3d06edcb19e4e38ecb.woff new file mode 100644 index 00000000..bb8a3825 --- /dev/null +++ b/public/assets/saira/v3/SairaMedium-subset.zopfli-47d24dd6cc6451cd2fb3803333f4de3e11033437aa0c8d3d06edcb19e4e38ecb.woff @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4dec398a6c292da28349e76f94646d91d425cf4ddc7f91d749075f72209d0dab +size 20232 diff --git a/public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg b/public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg new file mode 100644 index 00000000..68fca50c --- /dev/null +++ b/public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb86744bcec2d691c94d431627e412113f3648eb02420f2af86de3e3884c5a6d +size 1956 diff --git a/public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg.gz b/public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg.gz new file mode 100644 index 00000000..0aa59c0c --- /dev/null +++ b/public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e63543cf36b2a279d9959df6e0b26083e4daa43204e068c73151a519a298ed45 +size 943 diff --git a/public/assets/sutty_cuadrada-547911cb970c82f2bf8fa2d68b3b32e5e2a1c0ed787dafa6ea1b98b52b96328f.png b/public/assets/sutty_cuadrada-547911cb970c82f2bf8fa2d68b3b32e5e2a1c0ed787dafa6ea1b98b52b96328f.png new file mode 100644 index 00000000..1b018802 --- /dev/null +++ b/public/assets/sutty_cuadrada-547911cb970c82f2bf8fa2d68b3b32e5e2a1c0ed787dafa6ea1b98b52b96328f.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56aa311c3c5249e54d70f03b33fc681b593cd93e74b7af5d80316c5b7d1c6a76 +size 6868 diff --git a/public/packs/css/application-3be2c380.css b/public/packs/css/application-3be2c380.css new file mode 100644 index 00000000..544ddf74 --- /dev/null +++ b/public/packs/css/application-3be2c380.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e0179eec59d4881001e3d26ec0e25d8ca1257c6e4956d76f18cc97c3325a9625 +size 48029 diff --git a/public/packs/css/application-3be2c380.css.br b/public/packs/css/application-3be2c380.css.br new file mode 100644 index 00000000..e5774ab0 --- /dev/null +++ b/public/packs/css/application-3be2c380.css.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48597b99b6932b41dc4fac4fea2efb1dcb258dbbfafcb618649f002b4b6801d8 +size 9703 diff --git a/public/packs/css/application-3be2c380.css.gz b/public/packs/css/application-3be2c380.css.gz new file mode 100644 index 00000000..306dc931 --- /dev/null +++ b/public/packs/css/application-3be2c380.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfeb6b9af353618bdc475d6c921197da2b8a9ae7685a91772658d41883843c12 +size 12022 diff --git a/public/packs/css/application-b5d3069a.css b/public/packs/css/application-b5d3069a.css new file mode 100644 index 00000000..fd4f3326 --- /dev/null +++ b/public/packs/css/application-b5d3069a.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6b8b46de3e622e5810be419291eb0dae1564c1f2baa1fd5eaa0278c2a80e4fa +size 59741 diff --git a/public/packs/css/application-b5d3069a.css.map b/public/packs/css/application-b5d3069a.css.map new file mode 100644 index 00000000..fb5b8e5e --- /dev/null +++ b/public/packs/css/application-b5d3069a.css.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58ba1332af889ee56d2cc9f90aa05496ec20623bd76208fe0838dfc0825658d5 +size 146442 diff --git a/public/packs/js/application-6b082bb3f5bdb1ba778d.js b/public/packs/js/application-6b082bb3f5bdb1ba778d.js new file mode 100644 index 00000000..15c277d4 --- /dev/null +++ b/public/packs/js/application-6b082bb3f5bdb1ba778d.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:090fd34c097d9439e613cf15c641571756edc0d0c03bd4009dfa6f58125228c6 +size 1134513 diff --git a/public/packs/js/application-6b082bb3f5bdb1ba778d.js.LICENSE.txt b/public/packs/js/application-6b082bb3f5bdb1ba778d.js.LICENSE.txt new file mode 100644 index 00000000..89f0cf4f --- /dev/null +++ b/public/packs/js/application-6b082bb3f5bdb1ba778d.js.LICENSE.txt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f +size 629 diff --git a/public/packs/js/application-6b082bb3f5bdb1ba778d.js.br b/public/packs/js/application-6b082bb3f5bdb1ba778d.js.br new file mode 100644 index 00000000..3c564181 --- /dev/null +++ b/public/packs/js/application-6b082bb3f5bdb1ba778d.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c35e8802dcdfb5f1b4653867840bd8e93eee3be460b5727a1ac6d260c3ef1f68 +size 275594 diff --git a/public/packs/js/application-6b082bb3f5bdb1ba778d.js.gz b/public/packs/js/application-6b082bb3f5bdb1ba778d.js.gz new file mode 100644 index 00000000..a0417ebf --- /dev/null +++ b/public/packs/js/application-6b082bb3f5bdb1ba778d.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:671dc6668e122383801f798b4404db36c504c6bc034da11fdff7cbdcfe6ef259 +size 329197 diff --git a/public/packs/js/application-6b082bb3f5bdb1ba778d.js.map b/public/packs/js/application-6b082bb3f5bdb1ba778d.js.map new file mode 100644 index 00000000..2ae0724f --- /dev/null +++ b/public/packs/js/application-6b082bb3f5bdb1ba778d.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f9e3785b8b5a711061814a762673db74162fd484225ad935f3b151eed293752 +size 4658103 diff --git a/public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.br b/public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.br new file mode 100644 index 00000000..e080d41f --- /dev/null +++ b/public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1ce233ef5959923eae27441a8e4e2a591f985d8870c5fe880fdf1e7f5c9163e +size 1003567 diff --git a/public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.gz b/public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.gz new file mode 100644 index 00000000..f87f4901 --- /dev/null +++ b/public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a8ad75e00881f090fbe40aae9b0472b1d0c72db3724c21b6c6ea08b3fdfe675 +size 1222641 diff --git a/public/packs/manifest.json b/public/packs/manifest.json new file mode 100644 index 00000000..101a29c6 --- /dev/null +++ b/public/packs/manifest.json @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11e34bc05159b9d3dded4f99a7fba95b440e4aa6fa7e48fb052166b162dfc62a +size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br new file mode 100644 index 00000000..f624d518 --- /dev/null +++ b/public/packs/manifest.json.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0486c1ddc88ddd1b236e1104a376ba5bf073fb2c822e31903c355413b57f0264 +size 321 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz new file mode 100644 index 00000000..34aabfa1 --- /dev/null +++ b/public/packs/manifest.json.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d4db3eae96ab4901c1f10d80813b438c3e7ab964f1967f6b375a96981cbd574 +size 364 diff --git a/public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff b/public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff new file mode 100644 index 00000000..8925c5d3 --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53ab31062cf740aa76615d2c98aea80b177845d7ed95de45889b3824b0e1597c +size 115148 diff --git a/public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 b/public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 new file mode 100644 index 00000000..52865bdb --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84422de97eb1cf27bcb9bca4f3fbb18f3ebc711647b09c68292f5f43c89d5064 +size 91624 diff --git a/public/packs/media/fonts/forkawesome-webfont-86541105.svg b/public/packs/media/fonts/forkawesome-webfont-86541105.svg new file mode 100644 index 00000000..af45aadc --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-86541105.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:505e7f9fe61ba6d17d8514b5d0c3a75166dab1b57527e2d3a3baf2047624ba93 +size 480784 diff --git a/public/packs/media/fonts/forkawesome-webfont-86541105.svg.br b/public/packs/media/fonts/forkawesome-webfont-86541105.svg.br new file mode 100644 index 00000000..827ed0bc --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-86541105.svg.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4df44c3056ab68d2e1cf1970189876295b62db1640e6ed885c78d8c46f94e66f +size 126249 diff --git a/public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz b/public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz new file mode 100644 index 00000000..0676bab5 --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49664085aa6a37335724f0288531562f352e81d10fdfeadd4a8ed0764eae2f50 +size 160947 diff --git a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot new file mode 100644 index 00000000..37e93df5 --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d96fdd7d6854cf875ce3090e017b0078ae2f7e923763bcbb90748a01c6fb7fd +size 188946 diff --git a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br new file mode 100644 index 00000000..01f63da2 --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36cb46345792080af5dbe8bd742dc632a3821276fff76e57877c93c0e8afb00a +size 107072 diff --git a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz new file mode 100644 index 00000000..5bb32cdc --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:413b68fbd4bc71d5aa98410c6f8048f971b55e7d824180d0fab665cc55c3d9a3 +size 115772 diff --git a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf new file mode 100644 index 00000000..e6380d0e --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e4beb40f0cc19ec55f2ab741d42e806fc6155ccf6e40e50965196c0bcc6aba4 +size 188756 diff --git a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br new file mode 100644 index 00000000..c35abc27 --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de3e4f20e5341214cc1292a61d0f49d833187e862fb1fbfeb746d25f0465ee6b +size 106884 diff --git a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz new file mode 100644 index 00000000..44d9de5a --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26c357b09eb784753afcd35a1aa47fe65378a52c95db0496e98dfb999c9ab1b8 +size 115685 diff --git a/public/packs/media/images/layers-2x-8f2c4d11.png b/public/packs/media/images/layers-2x-8f2c4d11.png new file mode 100644 index 00000000..d3cf7e52 --- /dev/null +++ b/public/packs/media/images/layers-2x-8f2c4d11.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:066daca850d8ffbef007af00b06eac0015728dee279c51f3cb6c716df7c42edf +size 1259 diff --git a/public/packs/media/images/layers-416d9136.png b/public/packs/media/images/layers-416d9136.png new file mode 100644 index 00000000..7b44754c --- /dev/null +++ b/public/packs/media/images/layers-416d9136.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1dbbe9d028e292f36fcba8f8b3a28d5e8932754fc2215b9ac69e4cdecf5107c6 +size 696 diff --git a/public/packs/media/images/marker-icon-2b3e1faf.png b/public/packs/media/images/marker-icon-2b3e1faf.png new file mode 100644 index 00000000..b1789c76 --- /dev/null +++ b/public/packs/media/images/marker-icon-2b3e1faf.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:574c3a5cca85f4114085b6841596d62f00d7c892c7b03f28cbfa301deb1dc437 +size 1466 diff --git a/public/packs/media/images/marker-icon-2x-680f69f3.png b/public/packs/media/images/marker-icon-2x-680f69f3.png new file mode 100644 index 00000000..09e8445f --- /dev/null +++ b/public/packs/media/images/marker-icon-2x-680f69f3.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00179c4c1ee830d3a108412ae0d294f55776cfeb085c60129a39aa6fc4ae2528 +size 2464 diff --git a/public/packs/media/images/marker-shadow-a0c6cc14.png b/public/packs/media/images/marker-shadow-a0c6cc14.png new file mode 100644 index 00000000..dc111216 --- /dev/null +++ b/public/packs/media/images/marker-shadow-a0c6cc14.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:264f5c640339f042dd729062cfc04c17f8ea0f29882b538e3848ed8f10edb4da +size 618 From 95f3fba304bf3383eb3f0ebf68587a5f70273105 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 11 Apr 2022 15:39:08 -0300 Subject: [PATCH 011/699] plantilla del observatorio --- Gemfile | 1 + Gemfile.lock | 80 +++++++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 80 insertions(+), 1 deletion(-) diff --git a/Gemfile b/Gemfile index 2b304ee0..b8deedf4 100644 --- a/Gemfile +++ b/Gemfile @@ -109,6 +109,7 @@ group :themes do gem 'sutty-donaciones-jekyll-theme', require: false gem 'sutty-jekyll-theme', require: false gem 'recursero-jekyll-theme', require: false + gem 'observatorio-jekyll-theme', require: false end group :production do diff --git a/Gemfile.lock b/Gemfile.lock index 8df2d77e..2553b165 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -97,6 +97,7 @@ GEM jekyll-locales (~> 0.1) jekyll-relative-urls (~> 0.0) jekyll-seo-tag (~> 2.1) + ansi (1.5.0) ast (2.4.2) autoprefixer-rails (10.3.3.0) execjs (~> 2) @@ -114,6 +115,7 @@ GEM popper_js (>= 1.14.3, < 2) sassc-rails (>= 2.0.0) brakeman (5.1.2) + brotli (0.2.3-x86_64-linux-musl) builder (3.2.4) capybara (2.18.0) addressable @@ -203,6 +205,33 @@ GEM factory_bot_rails (6.2.0) factory_bot (~> 6.2.0) railties (>= 5.0.0) + faraday (1.10.0) + faraday-em_http (~> 1.0) + faraday-em_synchrony (~> 1.0) + faraday-excon (~> 1.1) + faraday-httpclient (~> 1.0) + faraday-multipart (~> 1.0) + faraday-net_http (~> 1.0) + faraday-net_http_persistent (~> 1.0) + faraday-patron (~> 1.0) + faraday-rack (~> 1.0) + faraday-retry (~> 1.0) + ruby2_keywords (>= 0.0.4) + faraday-em_http (1.0.0) + faraday-em_synchrony (1.0.0) + faraday-excon (1.1.0) + faraday-http-cache (2.2.0) + faraday (>= 0.8) + faraday-httpclient (1.0.1) + faraday-multipart (1.0.3) + multipart-post (>= 1.2, < 3) + faraday-net_http (1.0.1) + faraday-net_http_persistent (1.2.0) + faraday-patron (1.0.0) + faraday-rack (1.0.0) + faraday-retry (1.0.3) + faraday_middleware (1.2.0) + faraday (~> 1.0) fast_blank (1.0.1-x86_64-linux-musl) fast_jsonparser (0.5.0-x86_64-linux-musl) ffi (1.15.4-x86_64-linux-musl) @@ -275,6 +304,9 @@ GEM rouge (~> 3.0) safe_yaml (~> 1.0) terminal-table (~> 2.0) + jekyll-brotli (2.3.0) + brotli (~> 0.2.0) + jekyll (>= 3.0, < 5.0) jekyll-commonmark (1.3.2) commonmarker (~> 0.14, < 0.22) jekyll (>= 3.7, < 5.0) @@ -283,8 +315,19 @@ GEM jekyll-dotenv (0.2.0) dotenv (~> 2.7) jekyll (~> 4) + jekyll-embed-urls (0.4.5) + faraday (~> 1.3) + faraday-http-cache (~> 2.2) + faraday_middleware (~> 1) + jekyll (~> 4) + loofah (~> 2.9) + ogp (~> 0.4) + ruby-oembed (~> 0.16.0) + url-privacy (~> 0) jekyll-feed (0.15.1) jekyll (>= 3.7, < 5.0) + jekyll-gzip (2.5.1) + jekyll (>= 3.0, < 5.0) jekyll-hardlinks (0.1.2) jekyll (~> 4) jekyll-ignore-layouts (0.1.2) @@ -378,12 +421,40 @@ GEM i18n (>= 0.6.10, < 2) request_store (~> 1.0) multi_xml (0.6.0) + multipart-post (2.1.1) net-ssh (6.1.0) netaddr (2.0.5) nio4r (2.5.8-x86_64-linux-musl) nokogiri (1.12.5-x86_64-linux-musl) mini_portile2 (~> 2.6.1) racc (~> 1.4) + observatorio-jekyll-theme (0.1.6) + jekyll (~> 4) + jekyll-brotli + jekyll-commonmark + jekyll-data (~> 1.1) + jekyll-dotenv + jekyll-embed-urls + jekyll-feed (~> 0.15) + jekyll-gzip + jekyll-hardlinks (~> 0) + jekyll-ignore-layouts (~> 0) + jekyll-images (~> 0.2) + jekyll-include-cache (~> 0) + jekyll-linked-posts (~> 0) + jekyll-locales (~> 0.1) + jekyll-lunr + jekyll-order (~> 0) + jekyll-relative-urls (~> 0) + jekyll-seo-tag (~> 2) + jekyll-spree-client (~> 0) + sutty-archives (>= 2.5.5) + sutty-liquid (~> 0) + oga (3.3-x86_64-linux-musl) + ast + ruby-ll (~> 2.1) + ogp (0.5.0) + oga (~> 3.3) orm_adapter (0.5.0) parallel (1.21.0) parser (3.0.2.0) @@ -523,10 +594,15 @@ GEM ruby-enum (0.9.0) i18n ruby-filemagic (0.7.2-x86_64-linux-musl) + ruby-ll (2.1.2-x86_64-linux-musl) + ansi + ast + ruby-oembed (0.16.1) ruby-progressbar (1.11.0) ruby-statistics (3.0.0) ruby-vips (2.1.4) ffi (~> 1.12) + ruby2_keywords (0.0.5) ruby2ruby (2.4.4) ruby_parser (~> 3.1) sexp_processor (~> 4.6) @@ -581,7 +657,7 @@ GEM stackprof (0.2.17-x86_64-linux-musl) sucker_punch (3.0.1) concurrent-ruby (~> 1.0) - sutty-archives (2.5.4) + sutty-archives (2.5.5) jekyll (>= 3.6, < 5.0) sutty-donaciones-jekyll-theme (0.1.2) jekyll (~> 4.0) @@ -626,6 +702,7 @@ GEM unf_ext unf_ext (0.0.8-x86_64-linux-musl) unicode-display_width (1.8.0) + url-privacy (0.1.0) validates_hostname (1.0.11) activerecord (>= 3.0) activesupport (>= 3.0) @@ -706,6 +783,7 @@ DEPENDENCIES mobility net-ssh nokogiri + observatorio-jekyll-theme pg pg_search prometheus_exporter From db30f6f6fba33eec24f52f0b47fd9ca476ae8755 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 23 Apr 2022 16:30:34 -0300 Subject: [PATCH 012/699] arreglar rutas --- bin/access_logs | 2 +- monit.conf | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/access_logs b/bin/access_logs index 2b4fd99f..613e493f 100755 --- a/bin/access_logs +++ b/bin/access_logs @@ -4,7 +4,7 @@ set -e # Volcar y eliminar todos los access logs del día anterior date=`date +%F` -psql -h postgresql "${DATABASE:-sutty}" sutty < "/srv/http/_storage/${date}.psql.gz" +psql -h postgresql "${DATABASE:-sutty}" sutty < "/srv/_storage/${date}.psql.gz" begin; copy (select * from access_logs where created_at < '${date}') to stdout; delete from access_logs where created_at < '${date}'; diff --git a/monit.conf b/monit.conf index 6e57acc8..eabbc11e 100644 --- a/monit.conf +++ b/monit.conf @@ -5,6 +5,6 @@ check program cleanup if status != 0 then alert check program access_logs - with path "/srv/http/bin/access_logs" as uid "app" and gid "www-data" + with path "/srv/bin/access_logs" as uid "app" and gid "www-data" every "0 0 * * *" if status != 0 then alert From 116943d7712cd04e34afbebc653c0e96705c970c Mon Sep 17 00:00:00 2001 From: f Date: Sat, 23 Apr 2022 16:37:23 -0300 Subject: [PATCH 013/699] cliente psql --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 9e4cc02a..bc8f8fee 100644 --- a/Dockerfile +++ b/Dockerfile @@ -14,7 +14,7 @@ ENV RAILS_ENV production # principal RUN apk add --no-cache libxslt libxml2 postgresql-libs libssh2 \ rsync git jpegoptim vips tectonic oxipng git-lfs openssh-client \ - yarn daemonize ruby-webrick + yarn daemonize ruby-webrick postgresql-client RUN gem install --no-document --no-user-install foreman RUN wget https://github.com/jgm/pandoc/releases/download/${PANDOC_VERSION}/pandoc-${PANDOC_VERSION}-linux-amd64.tar.gz -O - | tar --strip-components 1 -xvzf - pandoc-${PANDOC_VERSION}/bin/pandoc && mv /bin/pandoc /usr/bin/pandoc From f7e87a441ce84b889c8e1921c8882da595872b85 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 23 Apr 2022 20:35:07 -0300 Subject: [PATCH 014/699] monit --- monit.conf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/monit.conf b/monit.conf index eabbc11e..a524c468 100644 --- a/monit.conf +++ b/monit.conf @@ -1,10 +1,10 @@ # Limpiar mensualmente check program cleanup - with path "/usr/bin/foreman run -f /srv/Procfile -d /srv " as uid "rails" gid "http-data" + with path "/usr/bin/foreman run -f /srv/Procfile -d /srv " as uid "rails" gid "www-data" every "0 3 1 * *" if status != 0 then alert check program access_logs - with path "/srv/bin/access_logs" as uid "app" and gid "www-data" + with path "/srv/bin/access_logs" as uid "rails" and gid "www-data" every "0 0 * * *" if status != 0 then alert From 497b87b0b36eb65d485a3558271429b6464debbe Mon Sep 17 00:00:00 2001 From: f Date: Sat, 30 Apr 2022 13:32:23 -0300 Subject: [PATCH 015/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index f386bb06..7bd1a607 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:47b024c771f2afdf4a4cce55ba70ea152986af33a399dffecf1d5386e6f061fa -size 12096 +oid sha256:405b177532a36435b4da7a1554cc4a872d0b218d667e4e34b4a062b59b3edb6d +size 11488 From 961f7ec1a968470893717f7804d684bec77bc531 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 30 Apr 2022 14:41:35 -0300 Subject: [PATCH 016/699] assets [skip ci] --- public/packs/manifest.json~Stashed changes | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 public/packs/manifest.json~Stashed changes diff --git a/public/packs/manifest.json~Stashed changes b/public/packs/manifest.json~Stashed changes new file mode 100644 index 00000000..d382a2de --- /dev/null +++ b/public/packs/manifest.json~Stashed changes @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7208250dcf54ed5fde296b63b81d609630eb5a8bbdb1719ffccd2170d030c298 +size 1572 From 3afdf557fc65c36178a10a22656c87208cf79df6 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 30 Apr 2022 14:45:53 -0300 Subject: [PATCH 017/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index 7bd1a607..e6ab7833 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:405b177532a36435b4da7a1554cc4a872d0b218d667e4e34b4a062b59b3edb6d +oid sha256:efbb9440fe23752b19b834239e2446572696c6d90939f9a27e9b9ab64519b2fb size 11488 From f0d4cc81f6b7b3b1a6bc7fab85e6d7f7eaadeeb3 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 30 Apr 2022 14:56:27 -0300 Subject: [PATCH 018/699] make comfortable --- Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index fd264d89..e210dade 100644 --- a/Makefile +++ b/Makefile @@ -49,7 +49,7 @@ help: always ## Ayuda @grep -E "^[a-z\-]+ \?=.*##" Makefile | sed -re "s/(.*) \?=.*##(.*)/\1;\2/" | column -s ";" -t | sed -re "s/^([^ ]+) /\x1B[38;5;197m\1\x1B[0m/" assets: public/packs/manifest.json.br ## Compilar los assets - git add public/assets/ public/packs/ && git commit -m "assets [skip ci]" + git add public/assets/ public/packs/ && NADA=true git commit -m "assets [skip ci]" test: always ## Ejecutar los tests $(MAKE) rake args="test RAILS_ENV=test $(args)" @@ -72,7 +72,7 @@ rake: ## Corre rake dentro del entorno de desarrollo (pasar argumentos con args= bundle: ## Corre bundle dentro del entorno de desarrollo (pasar argumentos con args=). $(hain) 'bundle $(args)' -psql := psql -h $(PG_HOST) -U $(PG_USER) -p $(PG_PORT) -d sutty +psql := haini.sh psql -h $(PG_HOST) -U $(PG_USER) -p $(PG_PORT) -d sutty copy-table: test -n "$(table)" echo "truncate $(table) $(cascade);" | $(psql) From 39beb6d37d427441623df9e28dc93f9cc66bfc4a Mon Sep 17 00:00:00 2001 From: f Date: Sat, 30 Apr 2022 18:45:01 -0300 Subject: [PATCH 019/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 4 ++-- ...c41dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css | 3 +++ ...dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css.gz | 3 +++ public/packs/js/application-08fda2b6614d14c531a8.js | 3 +++ public/packs/js/application-08fda2b6614d14c531a8.js.map | 3 +++ 5 files changed, 14 insertions(+), 2 deletions(-) create mode 100644 public/assets/application-33c5f64219c41dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css create mode 100644 public/assets/application-33c5f64219c41dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css.gz create mode 100644 public/packs/js/application-08fda2b6614d14c531a8.js create mode 100644 public/packs/js/application-08fda2b6614d14c531a8.js.map diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index e6ab7833..672409c3 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:efbb9440fe23752b19b834239e2446572696c6d90939f9a27e9b9ab64519b2fb -size 11488 +oid sha256:a4fbfed93756f602ba23afaf91012ba23e099bc31bdde6086ad04bbd20873f3f +size 11798 diff --git a/public/assets/application-33c5f64219c41dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css b/public/assets/application-33c5f64219c41dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css new file mode 100644 index 00000000..601e8c0f --- /dev/null +++ b/public/assets/application-33c5f64219c41dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7243d3ec8ae52ef744711074e45df1582586b3224b7a361a06169d5bf8054ae6 +size 228737 diff --git a/public/assets/application-33c5f64219c41dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css.gz b/public/assets/application-33c5f64219c41dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css.gz new file mode 100644 index 00000000..dc71a2c1 --- /dev/null +++ b/public/assets/application-33c5f64219c41dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36ed28c75f767b2acb1c73d6d5ccdaa41f8f38136a34851313294894ab387688 +size 31691 diff --git a/public/packs/js/application-08fda2b6614d14c531a8.js b/public/packs/js/application-08fda2b6614d14c531a8.js new file mode 100644 index 00000000..e956b2ec --- /dev/null +++ b/public/packs/js/application-08fda2b6614d14c531a8.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c11672b6ec463f91e6c106f50d68bd155f11952d8c722d9bfe13d19cd160891 +size 4237779 diff --git a/public/packs/js/application-08fda2b6614d14c531a8.js.map b/public/packs/js/application-08fda2b6614d14c531a8.js.map new file mode 100644 index 00000000..59861ccd --- /dev/null +++ b/public/packs/js/application-08fda2b6614d14c531a8.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:439a49af16860e59ec9849976b26109fb02a06be17fab20056a1c8d02e27af11 +size 3952749 From a4f6fd0bb9fa13e658180bb7ef3ab7c7a011afc5 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 30 Apr 2022 19:12:52 -0300 Subject: [PATCH 020/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index 672409c3..b31a9d20 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a4fbfed93756f602ba23afaf91012ba23e099bc31bdde6086ad04bbd20873f3f +oid sha256:02543b54f36189778436dd159bc9cf6e0b64cc13879350325ca195e779cecb8c size 11798 From 88866fec189062302e1a5d7ff7714380272f9181 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 30 Apr 2022 19:36:39 -0300 Subject: [PATCH 021/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index b31a9d20..048623be 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:02543b54f36189778436dd159bc9cf6e0b64cc13879350325ca195e779cecb8c +oid sha256:19e7c3e9287254e51b86d1a4d729df9c083961f5a89b40fcde3418b8e795ab83 size 11798 From 3f9cbd739301f3b7e6e5dae8475e93535e4a0019 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 30 Apr 2022 19:44:50 -0300 Subject: [PATCH 022/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index 048623be..e1eaebba 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:19e7c3e9287254e51b86d1a4d729df9c083961f5a89b40fcde3418b8e795ab83 +oid sha256:b9d977cea75406233e65e59c839dc466954d0610b5dbddb0628b3eacd3f685e2 size 11798 From 1ffa3e195c214c73bec67ae8d46093c15c6face4 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 30 Apr 2022 20:56:31 -0300 Subject: [PATCH 023/699] no fallar si no hay nada que commitear --- Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile b/Makefile index e210dade..2626d339 100644 --- a/Makefile +++ b/Makefile @@ -49,7 +49,7 @@ help: always ## Ayuda @grep -E "^[a-z\-]+ \?=.*##" Makefile | sed -re "s/(.*) \?=.*##(.*)/\1;\2/" | column -s ";" -t | sed -re "s/^([^ ]+) /\x1B[38;5;197m\1\x1B[0m/" assets: public/packs/manifest.json.br ## Compilar los assets - git add public/assets/ public/packs/ && NADA=true git commit -m "assets [skip ci]" + git add public/assets/ public/packs/ && NADA=true git commit -m "assets [skip ci]" ; true test: always ## Ejecutar los tests $(MAKE) rake args="test RAILS_ENV=test $(args)" From 54323862e9707f4ed8524c514d812891e8ada7cb Mon Sep 17 00:00:00 2001 From: f Date: Sat, 30 Apr 2022 20:56:54 -0300 Subject: [PATCH 024/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index e1eaebba..9b10c12c 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b9d977cea75406233e65e59c839dc466954d0610b5dbddb0628b3eacd3f685e2 +oid sha256:260644e9b83e4200f6354223cd04d28bd85078e9919fef31051ae519de05940a size 11798 From 049c936a8fd021915c5a877c864864aef19c6aad Mon Sep 17 00:00:00 2001 From: f Date: Thu, 5 May 2022 19:41:54 -0300 Subject: [PATCH 025/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index 9b10c12c..6c52cf11 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:260644e9b83e4200f6354223cd04d28bd85078e9919fef31051ae519de05940a +oid sha256:06efc04058cf8665d073c0259c2e27b0747883b33f0c5a0c4ffc0c977ff47ecb size 11798 From 38271187365a5e6fe2732dc9d4ae37d8841755f0 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 25 May 2022 16:11:57 -0300 Subject: [PATCH 026/699] =?UTF-8?q?mantener=20la=20versi=C3=B3n=20del=20re?= =?UTF-8?q?cursero?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Gemfile | 2 +- Gemfile.lock | 25 +++++++++++++------------ 2 files changed, 14 insertions(+), 13 deletions(-) diff --git a/Gemfile b/Gemfile index 2b304ee0..4bc4e229 100644 --- a/Gemfile +++ b/Gemfile @@ -108,7 +108,7 @@ group :themes do gem 'share-to-fediverse-jekyll-theme', require: false gem 'sutty-donaciones-jekyll-theme', require: false gem 'sutty-jekyll-theme', require: false - gem 'recursero-jekyll-theme', require: false + gem 'recursero-jekyll-theme', '~> 0.1.0', require: false end group :production do diff --git a/Gemfile.lock b/Gemfile.lock index 8df2d77e..84feb567 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -300,6 +300,8 @@ GEM jekyll-locales (0.1.13) jekyll-lunr (0.3.0) loofah (~> 2.4) + jekyll-node-modules (0.1.0) + jekyll (~> 4) jekyll-order (0.1.4) jekyll-relative-urls (0.0.6) jekyll (~> 4) @@ -462,24 +464,23 @@ GEM rb-fsevent (0.11.0) rb-inotify (0.10.1) ffi (~> 1.0) - recursero-jekyll-theme (0.2.0) - jekyll (~> 4) - jekyll-commonmark (~> 1.3) + recursero-jekyll-theme (0.1.3) + jekyll (~> 4.0) jekyll-data (~> 1.1) - jekyll-dotenv (>= 0.2) - jekyll-feed (~> 0.15) - jekyll-ignore-layouts (~> 0) + jekyll-feed (~> 0.9) jekyll-images (~> 0.2) jekyll-include-cache (~> 0) - jekyll-linked-posts (~> 0) + jekyll-linked-posts (~> 0.2) jekyll-locales (~> 0.1) jekyll-lunr (~> 0.1) - jekyll-order (~> 0) - jekyll-relative-urls (~> 0) - jekyll-seo-tag (~> 2) + jekyll-node-modules (~> 0.1) + jekyll-order (~> 0.1) + jekyll-relative-urls (~> 0.0) + jekyll-seo-tag (~> 2.1) + jekyll-turbolinks (~> 0) jekyll-unique-urls (~> 0.1) sutty-archives (~> 2.2) - sutty-liquid (~> 0) + sutty-liquid (~> 0.1) redis (4.5.1) redis-actionpack (5.2.0) actionpack (>= 5, < 7) @@ -718,7 +719,7 @@ DEPENDENCIES rails (~> 6) rails-i18n rails_warden - recursero-jekyll-theme + recursero-jekyll-theme (~> 0.1.0) redis redis-rails rollups! From 8cdb0a52cc36d69d99a14d31385d21c2b6f7d698 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 11 Jun 2022 19:59:36 -0300 Subject: [PATCH 027/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index 6c52cf11..9405d16d 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:06efc04058cf8665d073c0259c2e27b0747883b33f0c5a0c4ffc0c977ff47ecb +oid sha256:7680f52950095452cf252b3696a7cff46973e54ba5b56dbeba2012b485d0ce2c size 11798 From fcf0caaa3e466a138d1c5cacb784b456f68b4ced Mon Sep 17 00:00:00 2001 From: f Date: Wed, 29 Jun 2022 18:19:17 -0300 Subject: [PATCH 028/699] rack: CVE-2022-30123 --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 8df2d77e..1e195609 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -406,7 +406,7 @@ GEM pundit (2.1.1) activesupport (>= 3.0.0) racc (1.6.0-x86_64-linux-musl) - rack (2.2.3) + rack (2.2.3.1) rack-cors (1.1.1) rack (>= 2.0.0) rack-mini-profiler (2.3.3) From 555767568f00794f4bea8ebfb14a63df8aa1b7f2 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 29 Jun 2022 18:21:05 -0300 Subject: [PATCH 029/699] puma Name: puma Version: 5.5.2 CVE: CVE-2022-23634 GHSA: GHSA-rmj8-8hhh-gv5h Criticality: High URL: https://github.com/puma/puma/security/advisories/GHSA-rmj8-8hhh-gv5h Title: Information Exposure with Puma when used with Rails Solution: upgrade to ~> 4.3.11, >= 5.6.2 Name: puma Version: 5.5.2 CVE: CVE-2022-24790 GHSA: GHSA-h99w-9q5r-gjq9 Criticality: Unknown URL: https://github.com/puma/puma/security/advisories/GHSA-h99w-9q5r-gjq9 Title: HTTP Request Smuggling in puma Solution: upgrade to ~> 4.3.12, >= 5.6.4 --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 1e195609..6a62710a 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -401,7 +401,7 @@ GEM coderay (~> 1.1) method_source (~> 1.0) public_suffix (4.0.6) - puma (5.5.2-x86_64-linux-musl) + puma (5.6.4-x86_64-linux-musl) nio4r (~> 2.0) pundit (2.1.1) activesupport (>= 3.0.0) From e59b39b7ed53a2b476e89f11a20dc2a50b7e82d5 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 29 Jun 2022 18:23:25 -0300 Subject: [PATCH 030/699] nokogiri MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Name: nokogiri Version: 1.12.5 CVE: CVE-2021-30560 GHSA: GHSA-fq42-c5rg-92c2 Criticality: High URL: https://github.com/sparklemotion/nokogiri/security/advisories/GHSA-fq42-c5rg-92c2 Title: Update packaged libxml2 (2.9.12 → 2.9.13) and libxslt (1.1.34 → 1.1.35) Solution: upgrade to >= 1.13.2 Name: nokogiri Version: 1.12.5 CVE: CVE-2022-24836 GHSA: GHSA-crjr-9rc5-ghw8 Criticality: High URL: https://github.com/sparklemotion/nokogiri/security/advisories/GHSA-crjr-9rc5-ghw8 Title: Inefficient Regular Expression Complexity in Nokogiri Solution: upgrade to >= 1.13.4 Name: nokogiri Version: 1.12.5 CVE: CVE-2022-24839 GHSA: GHSA-gx8x-g87m-h5q6 Criticality: High URL: https://github.com/sparklemotion/nekohtml/security/advisories/GHSA-9849-p7jc-9rmv Title: Denial of Service (DoS) in Nokogiri on JRuby Solution: upgrade to >= 1.13.4 Name: nokogiri Version: 1.12.5 CVE: CVE-2018-25032 GHSA: GHSA-v6gp-9mmm-c6p5 Criticality: High URL: https://github.com/sparklemotion/nokogiri/security/advisories/GHSA-v6gp-9mmm-c6p5 Title: Out-of-bounds Write in zlib affects Nokogiri Solution: upgrade to >= 1.13.4 Name: nokogiri Version: 1.12.5 CVE: CVE-2022-23437 GHSA: GHSA-xxx9-3xcr-gjj3 Criticality: Medium URL: https://github.com/sparklemotion/nokogiri/security/advisories/GHSA-xxx9-3xcr-gjj3 Title: XML Injection in Xerces Java affects Nokogiri Solution: upgrade to >= 1.13.4 Name: nokogiri Version: 1.12.5 CVE: CVE-2022-29181 GHSA: GHSA-xh29-r2w5-wx8m Criticality: High URL: https://github.com/sparklemotion/nokogiri/security/advisories/GHSA-xh29-r2w5-wx8m Title: Improper Handling of Unexpected Data Type in Nokogiri Solution: upgrade to >= 1.13.6 Name: nokogiri Version: 1.12.5 GHSA: GHSA-cgx6-hpwq-fhv5 Criticality: High URL: https://github.com/sparklemotion/nokogiri/security/advisories/GHSA-cgx6-hpwq-fhv5 Title: Integer Overflow or Wraparound in libxml2 affects Nokogiri Solution: upgrade to >= 1.13.5 --- Gemfile.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 6a62710a..f9f1c1ab 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -368,7 +368,7 @@ GEM mini_histogram (0.3.1) mini_magick (4.11.0) mini_mime (1.1.2) - mini_portile2 (2.6.1) + mini_portile2 (2.8.0) minima (2.5.1) jekyll (>= 3.5, < 5.0) jekyll-feed (~> 0.9) @@ -381,8 +381,8 @@ GEM net-ssh (6.1.0) netaddr (2.0.5) nio4r (2.5.8-x86_64-linux-musl) - nokogiri (1.12.5-x86_64-linux-musl) - mini_portile2 (~> 2.6.1) + nokogiri (1.13.6-x86_64-linux-musl) + mini_portile2 (~> 2.8.0) racc (~> 1.4) orm_adapter (0.5.0) parallel (1.21.0) From ae194ad5bad72e007ae4a4631f31a6f862c8c3b9 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 29 Jun 2022 18:24:50 -0300 Subject: [PATCH 031/699] image_processing Name: image_processing Version: 1.12.1 CVE: CVE-2022-24720 GHSA: GHSA-cxf7-qrc5-9446 Criticality: Unknown URL: https://github.com/janko/image_processing/security/advisories/GHSA-cxf7-qrc5-9446 Title: Remote shell execution vulnerability when applying commands from user input Solution: upgrade to >= 1.12.2 --- Gemfile.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index f9f1c1ab..8ccaf3ce 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -205,7 +205,7 @@ GEM railties (>= 5.0.0) fast_blank (1.0.1-x86_64-linux-musl) fast_jsonparser (0.5.0-x86_64-linux-musl) - ffi (1.15.4-x86_64-linux-musl) + ffi (1.15.5-x86_64-linux-musl) flamegraph (0.9.5) forwardable-extended (2.6.0) friendly_id (5.4.2) @@ -252,7 +252,7 @@ GEM icalendar (2.7.1) ice_cube (~> 0.16) ice_cube (0.16.4) - image_processing (1.12.1) + image_processing (1.12.2) mini_magick (>= 4.9.5, < 5) ruby-vips (>= 2.0.17, < 3) inline_svg (1.7.2) From 76d614a93b79d3777b00efdc66d3595305fcfbc8 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 29 Jun 2022 18:26:29 -0300 Subject: [PATCH 032/699] blazer Name: blazer Version: 2.4.7 CVE: CVE-2022-29498 GHSA: GHSA-qf9q-q4hh-qph3 Criticality: High URL: https://github.com/ankane/blazer/issues/392 Title: SQL injection for certain queries with variables Solution: upgrade to >= 2.6.0 --- Gemfile.lock | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 8ccaf3ce..e86ac171 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -104,7 +104,7 @@ GEM bcrypt_pbkdf (1.1.0-x86_64-linux-musl) benchmark-ips (2.9.2) bindex (0.8.1-x86_64-linux-musl) - blazer (2.4.7) + blazer (2.6.4) activerecord (>= 5) chartkick (>= 3.2) railties (>= 5) @@ -122,7 +122,7 @@ GEM rack (>= 1.0.0) rack-test (>= 0.5.4) xpath (>= 2.0, < 4.0) - chartkick (4.1.2) + chartkick (4.2.0) childprocess (4.1.0) coderay (1.1.3) colorator (1.1.0) @@ -191,7 +191,7 @@ GEM em-websocket (0.5.3) eventmachine (>= 0.12.9) http_parser.rb (~> 0) - errbase (0.2.1) + errbase (0.2.2) erubi (1.10.0) eventmachine (1.2.7-x86_64-linux-musl) exception_notification (4.4.3) @@ -247,7 +247,7 @@ GEM httparty (0.18.1) mime-types (~> 3.0) multi_xml (>= 0.5.2) - i18n (1.8.11) + i18n (1.10.0) concurrent-ruby (~> 1.0) icalendar (2.7.1) ice_cube (~> 0.16) @@ -353,7 +353,7 @@ GEM activesupport (>= 4) railties (>= 4) request_store (~> 1.0) - loofah (2.12.0) + loofah (2.18.0) crass (~> 1.0.2) nokogiri (>= 1.5.9) mail (2.7.1) @@ -373,7 +373,7 @@ GEM jekyll (>= 3.5, < 5.0) jekyll-feed (~> 0.9) jekyll-seo-tag (~> 2.1) - minitest (5.14.4) + minitest (5.16.1) mobility (1.2.4) i18n (>= 0.6.10, < 2) request_store (~> 1.0) @@ -413,8 +413,8 @@ GEM rack (>= 1.2.0) rack-proxy (0.7.0) rack - rack-test (1.1.0) - rack (>= 1.0, < 3) + rack-test (2.0.2) + rack (>= 1.3) radios-comunitarias-jekyll-theme (0.1.5) jekyll (~> 4.0) jekyll-data (~> 1.1) @@ -444,7 +444,7 @@ GEM rails-dom-testing (2.0.3) activesupport (>= 4.2.0) nokogiri (>= 1.6) - rails-html-sanitizer (1.4.2) + rails-html-sanitizer (1.4.3) loofah (~> 2.3) rails-i18n (6.0.0) i18n (>= 0.7, < 2) @@ -612,7 +612,7 @@ GEM temple (0.8.2) terminal-table (2.0.0) unicode-display_width (~> 1.1, >= 1.1.1) - thor (1.1.0) + thor (1.2.1) tilt (2.0.10) timecop (0.9.4) turbolinks (5.2.1) @@ -647,7 +647,7 @@ GEM websocket-extensions (0.1.5) xpath (3.2.0) nokogiri (~> 1.8) - zeitwerk (2.5.1) + zeitwerk (2.6.0) PLATFORMS ruby From f18fb0508aae26c25d1b17d7e1a1635be628fabd Mon Sep 17 00:00:00 2001 From: f Date: Wed, 29 Jun 2022 18:28:29 -0300 Subject: [PATCH 033/699] commonmarker Name: commonmarker Version: 0.21.2 GHSA: GHSA-fmx4-26r3-wxpf Criticality: High URL: https://github.com/github/cmark-gfm/security/advisories/GHSA-mc3g-88wq-6f4x Title: Integer overflow in cmark-gfm table parsing extension leads to heap memory corruption Solution: upgrade to >= 0.23.4 --- Gemfile.lock | 23 +++++++++-------------- 1 file changed, 9 insertions(+), 14 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index e86ac171..e784b61e 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -126,8 +126,7 @@ GEM childprocess (4.1.0) coderay (1.1.3) colorator (1.1.0) - commonmarker (0.21.2-x86_64-linux-musl) - ruby-enum (~> 0.5) + commonmarker (0.23.5-x86_64-linux-musl) concurrent-ruby (1.1.9) concurrent-ruby-ext (1.1.9-x86_64-linux-musl) concurrent-ruby (= 1.1.9) @@ -260,7 +259,7 @@ GEM nokogiri (>= 1.6) jbuilder (2.11.3) activesupport (>= 5.0.0) - jekyll (4.2.1) + jekyll (4.2.2) addressable (~> 2.4) colorator (~> 1.0) em-websocket (~> 0.5) @@ -275,9 +274,8 @@ GEM rouge (~> 3.0) safe_yaml (~> 1.0) terminal-table (~> 2.0) - jekyll-commonmark (1.3.2) - commonmarker (~> 0.14, < 0.22) - jekyll (>= 3.7, < 5.0) + jekyll-commonmark (1.4.0) + commonmarker (~> 0.22) jekyll-data (1.1.2) jekyll (>= 3.3, < 5.0.0) jekyll-dotenv (0.2.0) @@ -303,7 +301,7 @@ GEM jekyll-order (0.1.4) jekyll-relative-urls (0.0.6) jekyll (~> 4) - jekyll-sass-converter (2.1.0) + jekyll-sass-converter (2.2.0) sassc (> 2.0.1, < 3.0) jekyll-seo-tag (2.7.1) jekyll (>= 3.8, < 5.0) @@ -332,7 +330,7 @@ GEM activerecord kaminari-core (= 1.2.1) kaminari-core (1.2.1) - kramdown (2.3.1) + kramdown (2.4.0) rexml kramdown-parser-gfm (1.1.0) kramdown (~> 2.0) @@ -394,13 +392,12 @@ GEM pg_search (2.3.5) activerecord (>= 5.2) activesupport (>= 5.2) - popper_js (1.16.0) prometheus_exporter (1.0.0) webrick pry (0.14.1) coderay (~> 1.1) method_source (~> 1.0) - public_suffix (4.0.6) + public_suffix (4.0.7) puma (5.6.4-x86_64-linux-musl) nio4r (~> 2.0) pundit (2.1.1) @@ -459,7 +456,7 @@ GEM thor (~> 1.0) rainbow (3.0.0) rake (13.0.6) - rb-fsevent (0.11.0) + rb-fsevent (0.11.1) rb-inotify (0.10.1) ffi (~> 1.0) recursero-jekyll-theme (0.2.0) @@ -504,7 +501,7 @@ GEM actionpack (>= 5.0) railties (>= 5.0) rexml (3.2.5) - rouge (3.26.1) + rouge (3.29.0) rubocop (1.23.0) parallel (~> 1.10) parser (>= 3.0.0.0) @@ -520,8 +517,6 @@ GEM activesupport (>= 4.2.0) rack (>= 1.1) rubocop (>= 1.7.0, < 2.0) - ruby-enum (0.9.0) - i18n ruby-filemagic (0.7.2-x86_64-linux-musl) ruby-progressbar (1.11.0) ruby-statistics (3.0.0) From bddae016d2b0c1d1b5febd73b3fbc4391de9fc8c Mon Sep 17 00:00:00 2001 From: f Date: Wed, 29 Jun 2022 18:38:44 -0300 Subject: [PATCH 034/699] rails: 6.1.4 Name: actionpack Version: 6.1.4.1 CVE: CVE-2021-44528 GHSA: GHSA-qphc-hf5q-v8fc Criticality: Medium URL: https://groups.google.com/g/ruby-security-ann/c/vG9gz3nk1pM/m/7-NU4MNrDAAJ Title: Possible Open Redirect in Host Authorization Middleware Solution: upgrade to ~> 6.0.4, >= 6.0.4.2, ~> 6.1.4, >= 6.1.4.2, >= 7.0.0.rc2 Name: actionpack Version: 6.1.4.1 CVE: CVE-2022-23633 GHSA: GHSA-wh98-p28r-vrc9 Criticality: High URL: https://groups.google.com/g/ruby-security-ann/c/FkTM-_7zSNA/m/K2RiMJBlBAAJ Title: Possible exposure of information vulnerability in Action Pack Solution: upgrade to ~> 5.2.6, >= 5.2.6.2, ~> 6.0.4, >= 6.0.4.6, ~> 6.1.4, >= 6.1.4.6, >= 7.0.2.2 Name: actionpack Version: 6.1.4.1 CVE: CVE-2022-22577 GHSA: GHSA-mm33-5vfq-3mm3 Criticality: Unknown URL: https://groups.google.com/g/ruby-security-ann/c/NuFRKaN5swI Title: Possible XSS Vulnerability in Action Pack Solution: upgrade to ~> 5.2.7, >= 5.2.7.1, ~> 6.0.4, >= 6.0.4.8, ~> 6.1.5, >= 6.1.5.1, >= 7.0.2.4 Name: actionview Version: 6.1.4.1 CVE: CVE-2022-27777 GHSA: GHSA-ch3h-j2vf-95pv Criticality: Unknown URL: https://groups.google.com/g/ruby-security-ann/c/9wJPEDv-iRw Title: Possible XSS Vulnerability in Action View tag helpers Solution: upgrade to ~> 5.2.7, >= 5.2.7.1, ~> 6.0.4, >= 6.0.4.8, ~> 6.1.5, >= 6.1.5.1, >= 7.0.2.4 Name: activestorage Version: 6.1.4.1 CVE: CVE-2022-21831 GHSA: GHSA-w749-p3v6-hccq Criticality: Unknown URL: https://groups.google.com/g/rubyonrails-security/c/n-p-W1yxatI Title: Possible code injection vulnerability in Rails / Active Storage Solution: upgrade to ~> 5.2.6, >= 5.2.6.3, ~> 6.0.4, >= 6.0.4.7, ~> 6.1.4, >= 6.1.4.7, >= 7.0.2.3 --- Gemfile | 2 +- Gemfile.lock | 114 +++++++++++++++++++++++++-------------------------- 2 files changed, 58 insertions(+), 58 deletions(-) diff --git a/Gemfile b/Gemfile index 2b304ee0..c28f95c2 100644 --- a/Gemfile +++ b/Gemfile @@ -8,7 +8,7 @@ ruby '~> 2.7' gem 'dotenv-rails', require: 'dotenv/rails-now' # Bundle edge Rails instead: gem 'rails', github: 'rails/rails' -gem 'rails', '~> 6' +gem 'rails', '~> 6.1.4.0' # Use Puma as the app server gem 'puma' diff --git a/Gemfile.lock b/Gemfile.lock index e784b61e..5379ab63 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -27,60 +27,60 @@ GIT GEM remote: https://gems.sutty.nl/ specs: - actioncable (6.1.4.1) - actionpack (= 6.1.4.1) - activesupport (= 6.1.4.1) + actioncable (6.1.4.7) + actionpack (= 6.1.4.7) + activesupport (= 6.1.4.7) nio4r (~> 2.0) websocket-driver (>= 0.6.1) - actionmailbox (6.1.4.1) - actionpack (= 6.1.4.1) - activejob (= 6.1.4.1) - activerecord (= 6.1.4.1) - activestorage (= 6.1.4.1) - activesupport (= 6.1.4.1) + actionmailbox (6.1.4.7) + actionpack (= 6.1.4.7) + activejob (= 6.1.4.7) + activerecord (= 6.1.4.7) + activestorage (= 6.1.4.7) + activesupport (= 6.1.4.7) mail (>= 2.7.1) - actionmailer (6.1.4.1) - actionpack (= 6.1.4.1) - actionview (= 6.1.4.1) - activejob (= 6.1.4.1) - activesupport (= 6.1.4.1) + actionmailer (6.1.4.7) + actionpack (= 6.1.4.7) + actionview (= 6.1.4.7) + activejob (= 6.1.4.7) + activesupport (= 6.1.4.7) mail (~> 2.5, >= 2.5.4) rails-dom-testing (~> 2.0) - actionpack (6.1.4.1) - actionview (= 6.1.4.1) - activesupport (= 6.1.4.1) + actionpack (6.1.4.7) + actionview (= 6.1.4.7) + activesupport (= 6.1.4.7) rack (~> 2.0, >= 2.0.9) rack-test (>= 0.6.3) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.0, >= 1.2.0) - actiontext (6.1.4.1) - actionpack (= 6.1.4.1) - activerecord (= 6.1.4.1) - activestorage (= 6.1.4.1) - activesupport (= 6.1.4.1) + actiontext (6.1.4.7) + actionpack (= 6.1.4.7) + activerecord (= 6.1.4.7) + activestorage (= 6.1.4.7) + activesupport (= 6.1.4.7) nokogiri (>= 1.8.5) - actionview (6.1.4.1) - activesupport (= 6.1.4.1) + actionview (6.1.4.7) + activesupport (= 6.1.4.7) builder (~> 3.1) erubi (~> 1.4) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.1, >= 1.2.0) - activejob (6.1.4.1) - activesupport (= 6.1.4.1) + activejob (6.1.4.7) + activesupport (= 6.1.4.7) globalid (>= 0.3.6) - activemodel (6.1.4.1) - activesupport (= 6.1.4.1) - activerecord (6.1.4.1) - activemodel (= 6.1.4.1) - activesupport (= 6.1.4.1) - activestorage (6.1.4.1) - actionpack (= 6.1.4.1) - activejob (= 6.1.4.1) - activerecord (= 6.1.4.1) - activesupport (= 6.1.4.1) + activemodel (6.1.4.7) + activesupport (= 6.1.4.7) + activerecord (6.1.4.7) + activemodel (= 6.1.4.7) + activesupport (= 6.1.4.7) + activestorage (6.1.4.7) + actionpack (= 6.1.4.7) + activejob (= 6.1.4.7) + activerecord (= 6.1.4.7) + activesupport (= 6.1.4.7) marcel (~> 1.0.0) mini_mime (>= 1.1.0) - activesupport (6.1.4.1) + activesupport (6.1.4.7) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (>= 1.6, < 2) minitest (>= 5.1) @@ -211,7 +211,7 @@ GEM activerecord (>= 4.0.0) get_process_mem (0.2.7) ffi (~> 1.0) - globalid (0.6.0) + globalid (1.0.0) activesupport (>= 5.0) groupdate (5.2.2) activesupport (>= 5) @@ -423,20 +423,20 @@ GEM jekyll-relative-urls (~> 0.0) jekyll-seo-tag (~> 2.1) jekyll-turbolinks (~> 0) - rails (6.1.4.1) - actioncable (= 6.1.4.1) - actionmailbox (= 6.1.4.1) - actionmailer (= 6.1.4.1) - actionpack (= 6.1.4.1) - actiontext (= 6.1.4.1) - actionview (= 6.1.4.1) - activejob (= 6.1.4.1) - activemodel (= 6.1.4.1) - activerecord (= 6.1.4.1) - activestorage (= 6.1.4.1) - activesupport (= 6.1.4.1) + rails (6.1.4.7) + actioncable (= 6.1.4.7) + actionmailbox (= 6.1.4.7) + actionmailer (= 6.1.4.7) + actionpack (= 6.1.4.7) + actiontext (= 6.1.4.7) + actionview (= 6.1.4.7) + activejob (= 6.1.4.7) + activemodel (= 6.1.4.7) + activerecord (= 6.1.4.7) + activestorage (= 6.1.4.7) + activesupport (= 6.1.4.7) bundler (>= 1.15.0) - railties (= 6.1.4.1) + railties (= 6.1.4.7) sprockets-rails (>= 2.0.0) rails-dom-testing (2.0.3) activesupport (>= 4.2.0) @@ -448,9 +448,9 @@ GEM railties (>= 6.0.0, < 7) rails_warden (0.6.0) warden (>= 1.2.0) - railties (6.1.4.1) - actionpack (= 6.1.4.1) - activesupport (= 6.1.4.1) + railties (6.1.4.7) + actionpack (= 6.1.4.7) + activesupport (= 6.1.4.7) method_source rake (>= 0.13) thor (~> 1.0) @@ -565,10 +565,10 @@ GEM spring-watcher-listen (2.0.1) listen (>= 2.7, < 4.0) spring (>= 1.2, < 3.0) - sprockets (4.0.2) + sprockets (4.1.1) concurrent-ruby (~> 1.0) rack (> 1, < 3) - sprockets-rails (3.4.1) + sprockets-rails (3.4.2) actionpack (>= 5.2) activesupport (>= 5.2) sprockets (>= 3.0.0) @@ -710,7 +710,7 @@ DEPENDENCIES rack-cors rack-mini-profiler radios-comunitarias-jekyll-theme - rails (~> 6) + rails (~> 6.1.4.0) rails-i18n rails_warden recursero-jekyll-theme From 8e517bde0c86921e10aeb780b25a0e07771353e4 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 29 Jun 2022 18:49:53 -0300 Subject: [PATCH 035/699] i18n: >1.9 no puede cargar locales ``` /usr/lib/ruby/gems/2.7.0/gems/i18n-1.9.1/lib/i18n/backend/base.rb:248:in `rescue in load_yml': can not load translations from /usr/lib/ruby/gems/2.7.0/gems/activesupport-6.1.4.7/lib/active_support/locale/en.yml: # (I18n::InvalidLocaleData) ``` --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 5379ab63..c6ae8d8b 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -246,7 +246,7 @@ GEM httparty (0.18.1) mime-types (~> 3.0) multi_xml (>= 0.5.2) - i18n (1.10.0) + i18n (1.8.11) concurrent-ruby (~> 1.0) icalendar (2.7.1) ice_cube (~> 0.16) From 1eb6e2ae87d0dabfc401118c20ffec4f834b4116 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 29 Jun 2022 18:55:46 -0300 Subject: [PATCH 036/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 4 ++-- ...32d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css | 3 +++ ...248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css.gz | 3 +++ 3 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css create mode 100644 public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css.gz diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index 9405d16d..061a9a1c 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7680f52950095452cf252b3696a7cff46973e54ba5b56dbeba2012b485d0ce2c -size 11798 +oid sha256:89bdf11f6f97177967e7cb40b1a12422fd9eb212067efd4af8ea9955374edabb +size 12122 diff --git a/public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css b/public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css new file mode 100644 index 00000000..3070f7a1 --- /dev/null +++ b/public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1c391e4691ea1afd08ba5daff66c790edd4b324af7dae390b616af36c7c2837 +size 134418 diff --git a/public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css.gz b/public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css.gz new file mode 100644 index 00000000..53b626fd --- /dev/null +++ b/public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb47cbb2677b411fe64de94a553e4af2059d24731dafe25237ec08715db6388a +size 23333 From 131a7e2562bd97c97e64bd655012d1dfe7b1a8ec Mon Sep 17 00:00:00 2001 From: f Date: Tue, 12 Jul 2022 17:49:08 -0300 Subject: [PATCH 037/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 2 +- public/packs/js/application-018b1004dae496014c6f.js | 3 +++ public/packs/js/application-018b1004dae496014c6f.js.map | 3 +++ public/packs/manifest.json~Stashed changes | 3 --- 4 files changed, 7 insertions(+), 4 deletions(-) create mode 100644 public/packs/js/application-018b1004dae496014c6f.js create mode 100644 public/packs/js/application-018b1004dae496014c6f.js.map delete mode 100644 public/packs/manifest.json~Stashed changes diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index 061a9a1c..e2f4d76e 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:89bdf11f6f97177967e7cb40b1a12422fd9eb212067efd4af8ea9955374edabb +oid sha256:4e389a3ffa9685cba957f97080da7f170419cefaebd3e0ded35d7d13d62d47c1 size 12122 diff --git a/public/packs/js/application-018b1004dae496014c6f.js b/public/packs/js/application-018b1004dae496014c6f.js new file mode 100644 index 00000000..908d8f2c --- /dev/null +++ b/public/packs/js/application-018b1004dae496014c6f.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:370c317b23f4a90ab4e9dfdbaef00bfd8c86eec40f59c8b88e30dfebe805c341 +size 4228848 diff --git a/public/packs/js/application-018b1004dae496014c6f.js.map b/public/packs/js/application-018b1004dae496014c6f.js.map new file mode 100644 index 00000000..256c5d29 --- /dev/null +++ b/public/packs/js/application-018b1004dae496014c6f.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdda6797b71156fb0f8b27a3cf9d1cc5e5b9b797b7d6e00665b02f2e0c2a3999 +size 3950003 diff --git a/public/packs/manifest.json~Stashed changes b/public/packs/manifest.json~Stashed changes deleted file mode 100644 index d382a2de..00000000 --- a/public/packs/manifest.json~Stashed changes +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7208250dcf54ed5fde296b63b81d609630eb5a8bbdb1719ffccd2170d030c298 -size 1572 From 8bed448418336b39964b23f5a404630009245b0a Mon Sep 17 00:00:00 2001 From: f Date: Wed, 13 Jul 2022 18:57:31 -0300 Subject: [PATCH 038/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 4 ++-- public/packs/js/application-9fc5173b6397548d2bd7.js | 3 +++ .../packs/js/application-9fc5173b6397548d2bd7.js.LICENSE.txt | 3 +++ public/packs/js/application-9fc5173b6397548d2bd7.js.br | 3 +++ public/packs/js/application-9fc5173b6397548d2bd7.js.gz | 3 +++ public/packs/js/application-9fc5173b6397548d2bd7.js.map | 3 +++ public/packs/js/application-9fc5173b6397548d2bd7.js.map.br | 3 +++ public/packs/js/application-9fc5173b6397548d2bd7.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 11 files changed, 28 insertions(+), 7 deletions(-) create mode 100644 public/packs/js/application-9fc5173b6397548d2bd7.js create mode 100644 public/packs/js/application-9fc5173b6397548d2bd7.js.LICENSE.txt create mode 100644 public/packs/js/application-9fc5173b6397548d2bd7.js.br create mode 100644 public/packs/js/application-9fc5173b6397548d2bd7.js.gz create mode 100644 public/packs/js/application-9fc5173b6397548d2bd7.js.map create mode 100644 public/packs/js/application-9fc5173b6397548d2bd7.js.map.br create mode 100644 public/packs/js/application-9fc5173b6397548d2bd7.js.map.gz diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index e2f4d76e..79c018a5 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4e389a3ffa9685cba957f97080da7f170419cefaebd3e0ded35d7d13d62d47c1 -size 12122 +oid sha256:8ecd5c61ac52240905807d6b101c73f98cac60241e3ca6af6dbf881aee7a9242 +size 11488 diff --git a/public/packs/js/application-9fc5173b6397548d2bd7.js b/public/packs/js/application-9fc5173b6397548d2bd7.js new file mode 100644 index 00000000..3ccfc59a --- /dev/null +++ b/public/packs/js/application-9fc5173b6397548d2bd7.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:149bc141d3def870a677f28bdaf1e5d8192ae073a4fd108facfe35779be9c62c +size 1134514 diff --git a/public/packs/js/application-9fc5173b6397548d2bd7.js.LICENSE.txt b/public/packs/js/application-9fc5173b6397548d2bd7.js.LICENSE.txt new file mode 100644 index 00000000..89f0cf4f --- /dev/null +++ b/public/packs/js/application-9fc5173b6397548d2bd7.js.LICENSE.txt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f +size 629 diff --git a/public/packs/js/application-9fc5173b6397548d2bd7.js.br b/public/packs/js/application-9fc5173b6397548d2bd7.js.br new file mode 100644 index 00000000..54ed7384 --- /dev/null +++ b/public/packs/js/application-9fc5173b6397548d2bd7.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c1425feb969053868020b8fe4080a166b970440fbaf2900a9ae90c70b116b30 +size 275829 diff --git a/public/packs/js/application-9fc5173b6397548d2bd7.js.gz b/public/packs/js/application-9fc5173b6397548d2bd7.js.gz new file mode 100644 index 00000000..3bb1f6fd --- /dev/null +++ b/public/packs/js/application-9fc5173b6397548d2bd7.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd756a862bc1f9d02959f7f0244dfc48afd16d1d0172cd0cd1bcdf6f24c4798e +size 329206 diff --git a/public/packs/js/application-9fc5173b6397548d2bd7.js.map b/public/packs/js/application-9fc5173b6397548d2bd7.js.map new file mode 100644 index 00000000..053e8972 --- /dev/null +++ b/public/packs/js/application-9fc5173b6397548d2bd7.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05923150adefc28adfc8ce3419e282fc3a127941a6965c782ea2cba3285dceb4 +size 4658135 diff --git a/public/packs/js/application-9fc5173b6397548d2bd7.js.map.br b/public/packs/js/application-9fc5173b6397548d2bd7.js.map.br new file mode 100644 index 00000000..9cc1e76f --- /dev/null +++ b/public/packs/js/application-9fc5173b6397548d2bd7.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:607e3841598121ed016057dc216d3c7b51bd28cc621a1bd050be02d96d67c3a9 +size 1003598 diff --git a/public/packs/js/application-9fc5173b6397548d2bd7.js.map.gz b/public/packs/js/application-9fc5173b6397548d2bd7.js.map.gz new file mode 100644 index 00000000..acf58647 --- /dev/null +++ b/public/packs/js/application-9fc5173b6397548d2bd7.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:963a2f4c3583643e1ec3b582d61d34d4a3e1d29434f672674542c71069eef17d +size 1222659 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 101a29c6..ef4ad665 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:11e34bc05159b9d3dded4f99a7fba95b440e4aa6fa7e48fb052166b162dfc62a +oid sha256:f5eea10ae4c1cb41e23522823143818cfca064152bfcc1d307c8289cae49ea49 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index f624d518..7ca90c79 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0486c1ddc88ddd1b236e1104a376ba5bf073fb2c822e31903c355413b57f0264 -size 321 +oid sha256:6819501059e2eff434307e15836c1431ab67f15b1ab5ebb6df990bf1be8b1861 +size 324 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 34aabfa1..349d3d48 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1d4db3eae96ab4901c1f10d80813b438c3e7ab964f1967f6b375a96981cbd574 -size 364 +oid sha256:ade96e1b874488ff0684c024a13e90718257ccee84850a9e8731334f70375a4a +size 366 From a425235f55e8d9cbe7709095f6818eca6232cd6c Mon Sep 17 00:00:00 2001 From: f Date: Fri, 15 Jul 2022 14:19:12 -0300 Subject: [PATCH 039/699] assets [skip ci] --- public/packs/js/application-93ee6d5d58e163103c80.js | 3 +++ public/packs/js/application-93ee6d5d58e163103c80.js.map | 3 +++ 2 files changed, 6 insertions(+) create mode 100644 public/packs/js/application-93ee6d5d58e163103c80.js create mode 100644 public/packs/js/application-93ee6d5d58e163103c80.js.map diff --git a/public/packs/js/application-93ee6d5d58e163103c80.js b/public/packs/js/application-93ee6d5d58e163103c80.js new file mode 100644 index 00000000..ed937e56 --- /dev/null +++ b/public/packs/js/application-93ee6d5d58e163103c80.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c4ebb592789b6b75eaa51d8eb9e0ddfb32b30cba82aab225edd95a33c64d501 +size 4228875 diff --git a/public/packs/js/application-93ee6d5d58e163103c80.js.map b/public/packs/js/application-93ee6d5d58e163103c80.js.map new file mode 100644 index 00000000..6abf29b5 --- /dev/null +++ b/public/packs/js/application-93ee6d5d58e163103c80.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4884ec48b41cbe55ce7337fd0a79fe886d2c71bea65966a461e6f90f2835ab61 +size 3950053 From 822d66f1118462ef513d84445f837d34bdce2992 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 15 Jul 2022 18:28:19 -0300 Subject: [PATCH 040/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index 79c018a5..ee989aed 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8ecd5c61ac52240905807d6b101c73f98cac60241e3ca6af6dbf881aee7a9242 +oid sha256:ac95833ae1b8c2b43bfbe3f7b89f17c776c628504b25b34d952552a7f35b15bc size 11488 From 15454596f21fe2a0059e71d573a84fbc937a6a36 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 19 Jul 2022 13:50:30 -0300 Subject: [PATCH 041/699] no actualizar al cargar el listado de sitios hace que todo tarde demasiado tiempo --- app/views/sites/index.haml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/app/views/sites/index.haml b/app/views/sites/index.haml index d69dbeac..7a240f97 100644 --- a/app/views/sites/index.haml +++ b/app/views/sites/index.haml @@ -54,10 +54,4 @@ text: t('usuaries.index.title'), type: 'info', link: site_usuaries_path(site) - - if policy(site).pull? && site.repository.needs_pull? - = render 'layouts/btn_with_tooltip', - tooltip: t('help.sites.pull'), - text: t('.pull'), - type: 'info', - link: site_pull_path(site) = render 'sites/build', site: site From fdfc5db3454fcce26555c52e8faf68f1cea071f8 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 19 Jul 2022 13:52:38 -0300 Subject: [PATCH 042/699] no fallar todo si un sitio no funciona --- app/views/sites/index.haml | 83 ++++++++++++++++++++------------------ 1 file changed, 43 insertions(+), 40 deletions(-) diff --git a/app/views/sites/index.haml b/app/views/sites/index.haml index 7a240f97..b3d99ca5 100644 --- a/app/views/sites/index.haml +++ b/app/views/sites/index.haml @@ -14,44 +14,47 @@ %table.table.table-condensed %tbody - @sites.each do |site| - - next unless site.jekyll - - rol = current_usuarie.rol_for_site(site) - -# - TODO: Solo les usuaries cachean porque tenemos que separar - les botones por permisos. - - cache_if (rol.usuarie? && !rol.temporal), [site, I18n.locale] do - %tr - %td - %h2 - - if policy(site).show? - = link_to site.title, site_posts_path(site, locale: site.default_locale) + - begin + - next unless site.jekyll + - rol = current_usuarie.rol_for_site(site) + -# + TODO: Solo les usuaries cachean porque tenemos que separar + les botones por permisos. + - cache_if (rol.usuarie? && !rol.temporal), [site, I18n.locale] do + %tr + %td + %h2 + - if policy(site).show? + = link_to site.title, site_posts_path(site, locale: site.default_locale) + - else + = site.title + %p.lead= site.description + %br + = link_to t('.visit'), site.url, class: 'btn' + - if rol.temporal + = button_to t('sites.invitations.accept'), + site_usuaries_accept_invitation_path(site), + method: :patch, + title: t('help.sites.invitations.accept'), + class: 'btn' + = button_to t('sites.invitations.reject'), + site_usuaries_reject_invitation_path(site), + method: :patch, + title: t('help.sites.invitations.reject'), + class: 'btn' - else - = site.title - %p.lead= site.description - %br - = link_to t('.visit'), site.url, class: 'btn' - - if rol.temporal - = button_to t('sites.invitations.accept'), - site_usuaries_accept_invitation_path(site), - method: :patch, - title: t('help.sites.invitations.accept'), - class: 'btn' - = button_to t('sites.invitations.reject'), - site_usuaries_reject_invitation_path(site), - method: :patch, - title: t('help.sites.invitations.reject'), - class: 'btn' - - else - - if policy(site).show? - = render 'layouts/btn_with_tooltip', - tooltip: t('help.sites.edit_posts'), - type: 'success', - link: site_path(site), - text: t('sites.posts') - - if policy(SiteUsuarie.new(site, current_usuarie)).index? - = render 'layouts/btn_with_tooltip', - tooltip: t('usuaries.index.help.self'), - text: t('usuaries.index.title'), - type: 'info', - link: site_usuaries_path(site) - = render 'sites/build', site: site + - if policy(site).show? + = render 'layouts/btn_with_tooltip', + tooltip: t('help.sites.edit_posts'), + type: 'success', + link: site_path(site), + text: t('sites.posts') + - if policy(SiteUsuarie.new(site, current_usuarie)).index? + = render 'layouts/btn_with_tooltip', + tooltip: t('usuaries.index.help.self'), + text: t('usuaries.index.title'), + type: 'info', + link: site_usuaries_path(site) + = render 'sites/build', site: site + - rescue ActionView::Template::Error => e + - ExceptionNotifier.notify_exception(e.cause, data: { site: @site.name, usuarie: current_usuarie.id }) From a81b59035645410f659318383b3b667e83d5a0e1 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 19 Jul 2022 14:15:06 -0300 Subject: [PATCH 043/699] =?UTF-8?q?no=20fallar=20si=20el=20sitio=20no=20ex?= =?UTF-8?q?iste=20m=C3=A1s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/sites/index.haml | 85 ++++++++++++++++++++------------------ 1 file changed, 44 insertions(+), 41 deletions(-) diff --git a/app/views/sites/index.haml b/app/views/sites/index.haml index b3d99ca5..4b483e75 100644 --- a/app/views/sites/index.haml +++ b/app/views/sites/index.haml @@ -14,47 +14,50 @@ %table.table.table-condensed %tbody - @sites.each do |site| + -# Los sitios pueden fallar en cargar si los eliminamos físicamente del disco - begin - next unless site.jekyll - - rol = current_usuarie.rol_for_site(site) - -# - TODO: Solo les usuaries cachean porque tenemos que separar - les botones por permisos. - - cache_if (rol.usuarie? && !rol.temporal), [site, I18n.locale] do - %tr - %td - %h2 - - if policy(site).show? - = link_to site.title, site_posts_path(site, locale: site.default_locale) - - else - = site.title - %p.lead= site.description - %br - = link_to t('.visit'), site.url, class: 'btn' - - if rol.temporal - = button_to t('sites.invitations.accept'), - site_usuaries_accept_invitation_path(site), - method: :patch, - title: t('help.sites.invitations.accept'), - class: 'btn' - = button_to t('sites.invitations.reject'), - site_usuaries_reject_invitation_path(site), - method: :patch, - title: t('help.sites.invitations.reject'), - class: 'btn' + - rescue StandardError => e + - ExceptionNotifier.notify_exception(e, data: { site: @site.name, usuarie: current_usuarie.id }) + - next + + - rol = current_usuarie.rol_for_site(site) + -# + TODO: Solo les usuaries cachean porque tenemos que separar + les botones por permisos. + - cache_if (rol.usuarie? && !rol.temporal), [site, I18n.locale] do + %tr + %td + %h2 + - if policy(site).show? + = link_to site.title, site_posts_path(site, locale: site.default_locale) - else - - if policy(site).show? - = render 'layouts/btn_with_tooltip', - tooltip: t('help.sites.edit_posts'), - type: 'success', - link: site_path(site), - text: t('sites.posts') - - if policy(SiteUsuarie.new(site, current_usuarie)).index? - = render 'layouts/btn_with_tooltip', - tooltip: t('usuaries.index.help.self'), - text: t('usuaries.index.title'), - type: 'info', - link: site_usuaries_path(site) - = render 'sites/build', site: site - - rescue ActionView::Template::Error => e - - ExceptionNotifier.notify_exception(e.cause, data: { site: @site.name, usuarie: current_usuarie.id }) + = site.title + %p.lead= site.description + %br + = link_to t('.visit'), site.url, class: 'btn' + - if rol.temporal + = button_to t('sites.invitations.accept'), + site_usuaries_accept_invitation_path(site), + method: :patch, + title: t('help.sites.invitations.accept'), + class: 'btn' + = button_to t('sites.invitations.reject'), + site_usuaries_reject_invitation_path(site), + method: :patch, + title: t('help.sites.invitations.reject'), + class: 'btn' + - else + - if policy(site).show? + = render 'layouts/btn_with_tooltip', + tooltip: t('help.sites.edit_posts'), + type: 'success', + link: site_path(site), + text: t('sites.posts') + - if policy(SiteUsuarie.new(site, current_usuarie)).index? + = render 'layouts/btn_with_tooltip', + tooltip: t('usuaries.index.help.self'), + text: t('usuaries.index.title'), + type: 'info', + link: site_usuaries_path(site) + = render 'sites/build', site: site From a07611b2dcb106ec5c9554b94509ae111dc12f1c Mon Sep 17 00:00:00 2001 From: f Date: Tue, 19 Jul 2022 14:18:39 -0300 Subject: [PATCH 044/699] =?UTF-8?q?fixup!=20no=20fallar=20si=20el=20sitio?= =?UTF-8?q?=20no=20existe=20m=C3=A1s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/sites/index.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/sites/index.haml b/app/views/sites/index.haml index 4b483e75..fb4b9780 100644 --- a/app/views/sites/index.haml +++ b/app/views/sites/index.haml @@ -18,7 +18,7 @@ - begin - next unless site.jekyll - rescue StandardError => e - - ExceptionNotifier.notify_exception(e, data: { site: @site.name, usuarie: current_usuarie.id }) + - ExceptionNotifier.notify_exception(e, data: { site: site.name, usuarie: current_usuarie.id }) - next - rol = current_usuarie.rol_for_site(site) From 6154139c8fb150aab1b3e37cc7e67722b377ca1e Mon Sep 17 00:00:00 2001 From: f Date: Tue, 26 Jul 2022 13:53:46 -0300 Subject: [PATCH 045/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index ee989aed..fb84253c 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ac95833ae1b8c2b43bfbe3f7b89f17c776c628504b25b34d952552a7f35b15bc +oid sha256:b43adcb693edec0c98c93c261b48662e2ca53562e45657ca94f1be33a4d36b6a size 11488 From 7946cfb563b6c3288a6e639f9b87459098f19872 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 26 Jul 2022 13:57:57 -0300 Subject: [PATCH 046/699] output --- app/models/deploy_reindex.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/deploy_reindex.rb b/app/models/deploy_reindex.rb index d2ff0679..3c07023c 100644 --- a/app/models/deploy_reindex.rb +++ b/app/models/deploy_reindex.rb @@ -2,7 +2,7 @@ # Reindexa los artículos al terminar la compilación class DeployReindex < Deploy - def deploy + def deploy(output: true) site.reset site.indexed_posts.destroy_all site.index_posts! From da879d63d6fbc6a8114d016ea0164378ae1ed0aa Mon Sep 17 00:00:00 2001 From: f Date: Sat, 27 Aug 2022 19:31:44 -0300 Subject: [PATCH 047/699] assets [skip ci] --- public/packs/js/application-ed013fc1a32ef22092f9.js | 3 +++ public/packs/js/application-ed013fc1a32ef22092f9.js.map | 3 +++ 2 files changed, 6 insertions(+) create mode 100644 public/packs/js/application-ed013fc1a32ef22092f9.js create mode 100644 public/packs/js/application-ed013fc1a32ef22092f9.js.map diff --git a/public/packs/js/application-ed013fc1a32ef22092f9.js b/public/packs/js/application-ed013fc1a32ef22092f9.js new file mode 100644 index 00000000..4d51a4b9 --- /dev/null +++ b/public/packs/js/application-ed013fc1a32ef22092f9.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3d5d944d0b41ba8a2a3c3db95171d015c4a5b8c03015badd724a96351e89bc2 +size 4237806 diff --git a/public/packs/js/application-ed013fc1a32ef22092f9.js.map b/public/packs/js/application-ed013fc1a32ef22092f9.js.map new file mode 100644 index 00000000..41279ab9 --- /dev/null +++ b/public/packs/js/application-ed013fc1a32ef22092f9.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58919335599e0406049e6673e110febd946fc0b3cde26e56bb0603d5bc9ce04a +size 3952799 From 9dc4fee9c4a6a261029ba61acc318125f514dbb9 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 5 Oct 2022 19:00:37 -0300 Subject: [PATCH 048/699] api --- app/models/deploy_distributed_press.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/deploy_distributed_press.rb b/app/models/deploy_distributed_press.rb index 51788865..08924eff 100644 --- a/app/models/deploy_distributed_press.rb +++ b/app/models/deploy_distributed_press.rb @@ -7,7 +7,7 @@ class DeployDistributedPress < Deploy store :values, accessors: %i[api_key hostname], coder: JSON - def deploy; end + def deploy(**); end def limit; end From ec1ec038f01afe49e92079434f5215ae06e0fa23 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 24 Oct 2022 15:04:18 -0300 Subject: [PATCH 049/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 4 ++-- ...3415e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css | 3 +++ ...5e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css.gz | 3 +++ ...34efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css | 3 +++ ...fdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css.gz | 3 +++ ...4c2ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css | 3 +++ ...ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css.gz | 3 +++ public/packs/js/application-6ec2698b0ab8159792f4.js | 3 +++ .../packs/js/application-6ec2698b0ab8159792f4.js.LICENSE.txt | 3 +++ public/packs/js/application-6ec2698b0ab8159792f4.js.br | 3 +++ public/packs/js/application-6ec2698b0ab8159792f4.js.gz | 3 +++ public/packs/js/application-6ec2698b0ab8159792f4.js.map | 3 +++ public/packs/js/application-6ec2698b0ab8159792f4.js.map.br | 3 +++ public/packs/js/application-6ec2698b0ab8159792f4.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 2 +- 17 files changed, 45 insertions(+), 6 deletions(-) create mode 100644 public/assets/application-31a05920c63415e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css create mode 100644 public/assets/application-31a05920c63415e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css.gz create mode 100644 public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css create mode 100644 public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css.gz create mode 100644 public/assets/new_editor-601e75fed54c2ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css create mode 100644 public/assets/new_editor-601e75fed54c2ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css.gz create mode 100644 public/packs/js/application-6ec2698b0ab8159792f4.js create mode 100644 public/packs/js/application-6ec2698b0ab8159792f4.js.LICENSE.txt create mode 100644 public/packs/js/application-6ec2698b0ab8159792f4.js.br create mode 100644 public/packs/js/application-6ec2698b0ab8159792f4.js.gz create mode 100644 public/packs/js/application-6ec2698b0ab8159792f4.js.map create mode 100644 public/packs/js/application-6ec2698b0ab8159792f4.js.map.br create mode 100644 public/packs/js/application-6ec2698b0ab8159792f4.js.map.gz diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index fb84253c..4a66cff9 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b43adcb693edec0c98c93c261b48662e2ca53562e45657ca94f1be33a4d36b6a -size 11488 +oid sha256:75f328a53bb093e7ed3165904f2463093fdfaf08e0ee61cac35f6a41d6403abb +size 11892 diff --git a/public/assets/application-31a05920c63415e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css b/public/assets/application-31a05920c63415e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css new file mode 100644 index 00000000..cc0a9ef7 --- /dev/null +++ b/public/assets/application-31a05920c63415e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:476b52e868be64f591a83e4da9f003572846a727d242f30109ac5a2a6b3a2cf7 +size 229716 diff --git a/public/assets/application-31a05920c63415e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css.gz b/public/assets/application-31a05920c63415e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css.gz new file mode 100644 index 00000000..f2fc0bfc --- /dev/null +++ b/public/assets/application-31a05920c63415e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8daefb3ace2b117be818695b781bcbb97cce31d9a85c9dc4490b431e8a8c932 +size 31780 diff --git a/public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css b/public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css new file mode 100644 index 00000000..16758e87 --- /dev/null +++ b/public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c30e9a9afbc33c17d773933cc2a0e07c0bfc7f39547bd304c7e0ce6cd459414 +size 2233 diff --git a/public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css.gz b/public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css.gz new file mode 100644 index 00000000..dd4cedc2 --- /dev/null +++ b/public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67f4df4516d69d51c0aa4850d3c9726ed8b87a8435d0e6e7580229c47ca05b1c +size 678 diff --git a/public/assets/new_editor-601e75fed54c2ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css b/public/assets/new_editor-601e75fed54c2ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css new file mode 100644 index 00000000..fcf8e1c9 --- /dev/null +++ b/public/assets/new_editor-601e75fed54c2ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59a968b3c50bce356e2146b454da90513e2f291ca67a44d5939ca6c06a69d77c +size 132 diff --git a/public/assets/new_editor-601e75fed54c2ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css.gz b/public/assets/new_editor-601e75fed54c2ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css.gz new file mode 100644 index 00000000..c16cab8f --- /dev/null +++ b/public/assets/new_editor-601e75fed54c2ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07f3c59585dd7f56bbc9580caac24d90c18da7ac60fd05d7701e6120447586e8 +size 105 diff --git a/public/packs/js/application-6ec2698b0ab8159792f4.js b/public/packs/js/application-6ec2698b0ab8159792f4.js new file mode 100644 index 00000000..68f945d6 --- /dev/null +++ b/public/packs/js/application-6ec2698b0ab8159792f4.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df4abdbde4a34c01dbc1d7f892a6668702b474e7f359801ada680622bdd0c33a +size 1409707 diff --git a/public/packs/js/application-6ec2698b0ab8159792f4.js.LICENSE.txt b/public/packs/js/application-6ec2698b0ab8159792f4.js.LICENSE.txt new file mode 100644 index 00000000..89f0cf4f --- /dev/null +++ b/public/packs/js/application-6ec2698b0ab8159792f4.js.LICENSE.txt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f +size 629 diff --git a/public/packs/js/application-6ec2698b0ab8159792f4.js.br b/public/packs/js/application-6ec2698b0ab8159792f4.js.br new file mode 100644 index 00000000..0b9895f6 --- /dev/null +++ b/public/packs/js/application-6ec2698b0ab8159792f4.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8fba3a9f3926623168c893cc34b000c69eac66542067c11344fb3bea19444a29 +size 294543 diff --git a/public/packs/js/application-6ec2698b0ab8159792f4.js.gz b/public/packs/js/application-6ec2698b0ab8159792f4.js.gz new file mode 100644 index 00000000..eb6b1e63 --- /dev/null +++ b/public/packs/js/application-6ec2698b0ab8159792f4.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a261eec6ee92e760bfb9e3fcf1741e7e976a58093bd3b20a52a631dd1ed1a1f7 +size 410114 diff --git a/public/packs/js/application-6ec2698b0ab8159792f4.js.map b/public/packs/js/application-6ec2698b0ab8159792f4.js.map new file mode 100644 index 00000000..33a3db76 --- /dev/null +++ b/public/packs/js/application-6ec2698b0ab8159792f4.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8239782cd5ae90d9c830a1d504d39bdfda291fb6e6ca66c51d36be34d7f7a3f2 +size 5475672 diff --git a/public/packs/js/application-6ec2698b0ab8159792f4.js.map.br b/public/packs/js/application-6ec2698b0ab8159792f4.js.map.br new file mode 100644 index 00000000..7b1d69ed --- /dev/null +++ b/public/packs/js/application-6ec2698b0ab8159792f4.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a6497c85562762c51c27bb04305aef5776687c9ab062aa0d4e734e8d8e3ff9e +size 1177229 diff --git a/public/packs/js/application-6ec2698b0ab8159792f4.js.map.gz b/public/packs/js/application-6ec2698b0ab8159792f4.js.map.gz new file mode 100644 index 00000000..79d8eda0 --- /dev/null +++ b/public/packs/js/application-6ec2698b0ab8159792f4.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4ff529020ecef6dc59c0a2ccedd79c1dcfbdf1a3b57c9f10d7480ef9d8a32c1 +size 1446613 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index ef4ad665..f2b65222 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f5eea10ae4c1cb41e23522823143818cfca064152bfcc1d307c8289cae49ea49 +oid sha256:d9b4718b8169f55bd12ef6fe43a6d85af803d2348a6a5e96608a77bdb45fe1a5 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 7ca90c79..99887c80 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6819501059e2eff434307e15836c1431ab67f15b1ab5ebb6df990bf1be8b1861 -size 324 +oid sha256:8d20d8adeda4c07cfa1e385f60b3683695c16586206d922f9fc5e9d28afe09e0 +size 319 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 349d3d48..2d9a95f3 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ade96e1b874488ff0684c024a13e90718257ccee84850a9e8731334f70375a4a +oid sha256:75df3a70dfa9ab2a3e75349c43ea2090525c1c037d02db8eaec1ea09d1603148 size 366 From 05f20814fe2b59cb8c3defa084e28bac99a14e18 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 25 Oct 2022 15:39:32 -0300 Subject: [PATCH 050/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 2 +- ...46cc4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css | 3 +++ ...c4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css.gz | 3 +++ ...f2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css | 3 +++ ...74010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css.gz | 3 +++ 5 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 public/assets/application-69a61807846cc4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css create mode 100644 public/assets/application-69a61807846cc4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css.gz create mode 100644 public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css create mode 100644 public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css.gz diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index 4a66cff9..6d5df591 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:75f328a53bb093e7ed3165904f2463093fdfaf08e0ee61cac35f6a41d6403abb +oid sha256:691f397bd3befb79891217a65ffa8f91f6a5e9e43d50d27a3f0e3ecfa017a005 size 11892 diff --git a/public/assets/application-69a61807846cc4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css b/public/assets/application-69a61807846cc4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css new file mode 100644 index 00000000..76c2b6d4 --- /dev/null +++ b/public/assets/application-69a61807846cc4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14e35ab2ac586e986328d8d8e8f62edb2421f8652a7bdcb7651cdb35d20a179b +size 229755 diff --git a/public/assets/application-69a61807846cc4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css.gz b/public/assets/application-69a61807846cc4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css.gz new file mode 100644 index 00000000..1d9af6ef --- /dev/null +++ b/public/assets/application-69a61807846cc4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2eb68b7070d36cc52481ff728e3e4a75249622b4acbe154c60fab85656133964 +size 31792 diff --git a/public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css b/public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css new file mode 100644 index 00000000..65a56f63 --- /dev/null +++ b/public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d967abb43a679cd18d84b114ad0616239a67241a8402185d2929e27b02e1a4b3 +size 171 diff --git a/public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css.gz b/public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css.gz new file mode 100644 index 00000000..c1c591d4 --- /dev/null +++ b/public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:269db4e745d84eefb4c67094b17dea83f3e8f445d2b2346380cfa6dc267917c9 +size 115 From d90576ac9ac807e81b887e411e743d8a0632edcd Mon Sep 17 00:00:00 2001 From: f Date: Tue, 25 Oct 2022 15:42:02 -0300 Subject: [PATCH 051/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index 6d5df591..b1178ef9 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:691f397bd3befb79891217a65ffa8f91f6a5e9e43d50d27a3f0e3ecfa017a005 +oid sha256:c8029da7570d636298c402b7a26b0f1a3a1555fa348ea8b36d163d721c86f72f size 11892 From 51a92a49d426aec1369d350bb8918277a87c6bd9 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 25 Oct 2022 20:21:24 -0300 Subject: [PATCH 052/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 2 +- public/packs/js/application-584663f92c60650aa431.js | 3 +++ .../packs/js/application-584663f92c60650aa431.js.LICENSE.txt | 3 +++ public/packs/js/application-584663f92c60650aa431.js.br | 3 +++ public/packs/js/application-584663f92c60650aa431.js.gz | 3 +++ public/packs/js/application-584663f92c60650aa431.js.map | 3 +++ public/packs/js/application-584663f92c60650aa431.js.map.br | 3 +++ public/packs/js/application-584663f92c60650aa431.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 2 +- 11 files changed, 26 insertions(+), 5 deletions(-) create mode 100644 public/packs/js/application-584663f92c60650aa431.js create mode 100644 public/packs/js/application-584663f92c60650aa431.js.LICENSE.txt create mode 100644 public/packs/js/application-584663f92c60650aa431.js.br create mode 100644 public/packs/js/application-584663f92c60650aa431.js.gz create mode 100644 public/packs/js/application-584663f92c60650aa431.js.map create mode 100644 public/packs/js/application-584663f92c60650aa431.js.map.br create mode 100644 public/packs/js/application-584663f92c60650aa431.js.map.gz diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index b1178ef9..d922a383 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c8029da7570d636298c402b7a26b0f1a3a1555fa348ea8b36d163d721c86f72f +oid sha256:53a2d89bc3f6627eb0f725b0e4c357dbb0a4d4d1b12d5bf67bae2cda2a11c919 size 11892 diff --git a/public/packs/js/application-584663f92c60650aa431.js b/public/packs/js/application-584663f92c60650aa431.js new file mode 100644 index 00000000..bbef5643 --- /dev/null +++ b/public/packs/js/application-584663f92c60650aa431.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f17c5daee0faa7b97dd3fdf3a4c3772ce90c3d3e0e3be37e81f5d4eb2cfade2a +size 1431046 diff --git a/public/packs/js/application-584663f92c60650aa431.js.LICENSE.txt b/public/packs/js/application-584663f92c60650aa431.js.LICENSE.txt new file mode 100644 index 00000000..89f0cf4f --- /dev/null +++ b/public/packs/js/application-584663f92c60650aa431.js.LICENSE.txt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f +size 629 diff --git a/public/packs/js/application-584663f92c60650aa431.js.br b/public/packs/js/application-584663f92c60650aa431.js.br new file mode 100644 index 00000000..43ef2b1d --- /dev/null +++ b/public/packs/js/application-584663f92c60650aa431.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53d603f3b12ee1be625abbb37addcaecf0858dd8b17cfae05c1e4ad2f346f832 +size 311949 diff --git a/public/packs/js/application-584663f92c60650aa431.js.gz b/public/packs/js/application-584663f92c60650aa431.js.gz new file mode 100644 index 00000000..22566383 --- /dev/null +++ b/public/packs/js/application-584663f92c60650aa431.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc3e91fc4ef6d0206b8a280a0541cd08e7667bb058fcd2a39d7752a9226c0a22 +size 414594 diff --git a/public/packs/js/application-584663f92c60650aa431.js.map b/public/packs/js/application-584663f92c60650aa431.js.map new file mode 100644 index 00000000..a5ef6041 --- /dev/null +++ b/public/packs/js/application-584663f92c60650aa431.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cefa4ea73065f3c322c20acf233d9208353ee07af81d5f507a1818320c2f1d8a +size 5584463 diff --git a/public/packs/js/application-584663f92c60650aa431.js.map.br b/public/packs/js/application-584663f92c60650aa431.js.map.br new file mode 100644 index 00000000..d7dab3b0 --- /dev/null +++ b/public/packs/js/application-584663f92c60650aa431.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b767eab683c692731e20875611d68cca4731627af797b43a07020213a90e7bfd +size 1198004 diff --git a/public/packs/js/application-584663f92c60650aa431.js.map.gz b/public/packs/js/application-584663f92c60650aa431.js.map.gz new file mode 100644 index 00000000..a2e52274 --- /dev/null +++ b/public/packs/js/application-584663f92c60650aa431.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92adc1fef96b4e461fe8ae3846da39347b6bccaa2eab45be845fc8503338f05d +size 1469620 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index f2b65222..e4111ee0 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d9b4718b8169f55bd12ef6fe43a6d85af803d2348a6a5e96608a77bdb45fe1a5 +oid sha256:06e5409e6a55fa06e5c591ddfd583f280a20170dc7224a55fae501c6ddf8104d size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 99887c80..3dcab733 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8d20d8adeda4c07cfa1e385f60b3683695c16586206d922f9fc5e9d28afe09e0 -size 319 +oid sha256:04d631511b2b3dacd3cd20bdb80996e6959f31a8b20ca882b3c5f9fe2dff1a1c +size 322 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 2d9a95f3..dc93160f 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:75df3a70dfa9ab2a3e75349c43ea2090525c1c037d02db8eaec1ea09d1603148 +oid sha256:27645554735a5f06a40e13fbdb795c4bd9941d7c92c63ca5ebcb6edfce7f5b30 size 366 From 9f86ac90c377c1420e9e9212e36bfea90f495237 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 26 Oct 2022 18:23:07 -0300 Subject: [PATCH 053/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 2 +- public/packs/js/application-a4b8ecf21f3540681ade.js | 3 +++ .../packs/js/application-a4b8ecf21f3540681ade.js.LICENSE.txt | 3 +++ public/packs/js/application-a4b8ecf21f3540681ade.js.br | 3 +++ public/packs/js/application-a4b8ecf21f3540681ade.js.gz | 3 +++ public/packs/js/application-a4b8ecf21f3540681ade.js.map | 3 +++ public/packs/js/application-a4b8ecf21f3540681ade.js.map.br | 3 +++ public/packs/js/application-a4b8ecf21f3540681ade.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 11 files changed, 27 insertions(+), 6 deletions(-) create mode 100644 public/packs/js/application-a4b8ecf21f3540681ade.js create mode 100644 public/packs/js/application-a4b8ecf21f3540681ade.js.LICENSE.txt create mode 100644 public/packs/js/application-a4b8ecf21f3540681ade.js.br create mode 100644 public/packs/js/application-a4b8ecf21f3540681ade.js.gz create mode 100644 public/packs/js/application-a4b8ecf21f3540681ade.js.map create mode 100644 public/packs/js/application-a4b8ecf21f3540681ade.js.map.br create mode 100644 public/packs/js/application-a4b8ecf21f3540681ade.js.map.gz diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index d922a383..4338fea0 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:53a2d89bc3f6627eb0f725b0e4c357dbb0a4d4d1b12d5bf67bae2cda2a11c919 +oid sha256:aba2d31b585d6d9bd8e2b55c83abed619bacfff1679cb45999999ea1694e37fa size 11892 diff --git a/public/packs/js/application-a4b8ecf21f3540681ade.js b/public/packs/js/application-a4b8ecf21f3540681ade.js new file mode 100644 index 00000000..ed00024a --- /dev/null +++ b/public/packs/js/application-a4b8ecf21f3540681ade.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c63863afea18dfcb3e6420685348f2ebf7b531e378ca1b7a834a55f76bdd2739 +size 1430985 diff --git a/public/packs/js/application-a4b8ecf21f3540681ade.js.LICENSE.txt b/public/packs/js/application-a4b8ecf21f3540681ade.js.LICENSE.txt new file mode 100644 index 00000000..89f0cf4f --- /dev/null +++ b/public/packs/js/application-a4b8ecf21f3540681ade.js.LICENSE.txt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f +size 629 diff --git a/public/packs/js/application-a4b8ecf21f3540681ade.js.br b/public/packs/js/application-a4b8ecf21f3540681ade.js.br new file mode 100644 index 00000000..d45ed7bd --- /dev/null +++ b/public/packs/js/application-a4b8ecf21f3540681ade.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7ef0494c68b8695bc30ded8d4b218164906a37d060cbcba8c65751199b36a54 +size 311665 diff --git a/public/packs/js/application-a4b8ecf21f3540681ade.js.gz b/public/packs/js/application-a4b8ecf21f3540681ade.js.gz new file mode 100644 index 00000000..f6fca359 --- /dev/null +++ b/public/packs/js/application-a4b8ecf21f3540681ade.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b455e78ba065a06e35c3819720001d247eeee7b017517deca0cc9ab25c24bc7a +size 414586 diff --git a/public/packs/js/application-a4b8ecf21f3540681ade.js.map b/public/packs/js/application-a4b8ecf21f3540681ade.js.map new file mode 100644 index 00000000..3ca13b32 --- /dev/null +++ b/public/packs/js/application-a4b8ecf21f3540681ade.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99ff3989d16483b6a7ad5761a1b95eddcd04f0e7806cc65fb8fa97525306d05b +size 5584349 diff --git a/public/packs/js/application-a4b8ecf21f3540681ade.js.map.br b/public/packs/js/application-a4b8ecf21f3540681ade.js.map.br new file mode 100644 index 00000000..177ce073 --- /dev/null +++ b/public/packs/js/application-a4b8ecf21f3540681ade.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:085508477e0ce3059a64f409d03b7b3a4b55939b5457ee9bb1e30abd04d26d4d +size 1197598 diff --git a/public/packs/js/application-a4b8ecf21f3540681ade.js.map.gz b/public/packs/js/application-a4b8ecf21f3540681ade.js.map.gz new file mode 100644 index 00000000..8bcdd150 --- /dev/null +++ b/public/packs/js/application-a4b8ecf21f3540681ade.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17a82addece35e6493d792be0d7e18f935faa79f0b7c90c42b5df0d72fda844f +size 1469640 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index e4111ee0..1ce6c21c 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:06e5409e6a55fa06e5c591ddfd583f280a20170dc7224a55fae501c6ddf8104d +oid sha256:91676b991cc70c46d4959817a76e2bd2912307af7b9dc98eae5221ebaa4cb9bb size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 3dcab733..2f55be9a 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:04d631511b2b3dacd3cd20bdb80996e6959f31a8b20ca882b3c5f9fe2dff1a1c -size 322 +oid sha256:c76a61959d72c6b4961b1f1daa9724fdc7268bd749788abfad15faa44bc1c3a2 +size 321 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index dc93160f..a5df4dd7 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:27645554735a5f06a40e13fbdb795c4bd9941d7c92c63ca5ebcb6edfce7f5b30 -size 366 +oid sha256:4b2e2eef80cdbd81d042c8f4026562d14fcf1a8c0b33df695b40cf4eca9c4c3b +size 365 From a2b5d3013253d16b088283718ef18b9676e448b8 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 26 Oct 2022 19:16:46 -0300 Subject: [PATCH 054/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 2 +- public/packs/js/application-9404c5677871368ab12c.js | 3 +++ .../packs/js/application-9404c5677871368ab12c.js.LICENSE.txt | 3 +++ public/packs/js/application-9404c5677871368ab12c.js.br | 3 +++ public/packs/js/application-9404c5677871368ab12c.js.gz | 3 +++ public/packs/js/application-9404c5677871368ab12c.js.map | 3 +++ public/packs/js/application-9404c5677871368ab12c.js.map.br | 3 +++ public/packs/js/application-9404c5677871368ab12c.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 11 files changed, 27 insertions(+), 6 deletions(-) create mode 100644 public/packs/js/application-9404c5677871368ab12c.js create mode 100644 public/packs/js/application-9404c5677871368ab12c.js.LICENSE.txt create mode 100644 public/packs/js/application-9404c5677871368ab12c.js.br create mode 100644 public/packs/js/application-9404c5677871368ab12c.js.gz create mode 100644 public/packs/js/application-9404c5677871368ab12c.js.map create mode 100644 public/packs/js/application-9404c5677871368ab12c.js.map.br create mode 100644 public/packs/js/application-9404c5677871368ab12c.js.map.gz diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index 4338fea0..e553de11 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:aba2d31b585d6d9bd8e2b55c83abed619bacfff1679cb45999999ea1694e37fa +oid sha256:cc48ab9c925ef542b8ef6a1c1ebca5ec07fdf26543686f34edf187186dc4db67 size 11892 diff --git a/public/packs/js/application-9404c5677871368ab12c.js b/public/packs/js/application-9404c5677871368ab12c.js new file mode 100644 index 00000000..18cacae1 --- /dev/null +++ b/public/packs/js/application-9404c5677871368ab12c.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1ada386ae45181446681de09ba1dc07462e2322db69d5d9bf7b5938a1ad6e51 +size 1432484 diff --git a/public/packs/js/application-9404c5677871368ab12c.js.LICENSE.txt b/public/packs/js/application-9404c5677871368ab12c.js.LICENSE.txt new file mode 100644 index 00000000..89f0cf4f --- /dev/null +++ b/public/packs/js/application-9404c5677871368ab12c.js.LICENSE.txt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f +size 629 diff --git a/public/packs/js/application-9404c5677871368ab12c.js.br b/public/packs/js/application-9404c5677871368ab12c.js.br new file mode 100644 index 00000000..19461359 --- /dev/null +++ b/public/packs/js/application-9404c5677871368ab12c.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d09802cea0f59a507699cf19a8b159a8b2241a210d271d24b04bb4137b0d8891 +size 312391 diff --git a/public/packs/js/application-9404c5677871368ab12c.js.gz b/public/packs/js/application-9404c5677871368ab12c.js.gz new file mode 100644 index 00000000..ede25d3c --- /dev/null +++ b/public/packs/js/application-9404c5677871368ab12c.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1ff1ba3a6b47bc2958e0eaf84fc5a57c8aa3f985fbef5e02b7e11dc69011880 +size 415151 diff --git a/public/packs/js/application-9404c5677871368ab12c.js.map b/public/packs/js/application-9404c5677871368ab12c.js.map new file mode 100644 index 00000000..a7aebfc8 --- /dev/null +++ b/public/packs/js/application-9404c5677871368ab12c.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d79828fe41214b025b1828341d24106ff32c8db45234900a691e43d988e7e665 +size 5589817 diff --git a/public/packs/js/application-9404c5677871368ab12c.js.map.br b/public/packs/js/application-9404c5677871368ab12c.js.map.br new file mode 100644 index 00000000..9fab7725 --- /dev/null +++ b/public/packs/js/application-9404c5677871368ab12c.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8bc22abe1a45032d19e0a5227d01c1408b9b9dad29a4a000e19c6f5d3aebfbe +size 1198487 diff --git a/public/packs/js/application-9404c5677871368ab12c.js.map.gz b/public/packs/js/application-9404c5677871368ab12c.js.map.gz new file mode 100644 index 00000000..7ff35862 --- /dev/null +++ b/public/packs/js/application-9404c5677871368ab12c.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28271dc77cabc1b41093d11aed13a7bb3577fc026024c22d341c919dc29302af +size 1471326 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 1ce6c21c..7d5a4463 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:91676b991cc70c46d4959817a76e2bd2912307af7b9dc98eae5221ebaa4cb9bb +oid sha256:a99b4405c035c6eb89f1308faeb831335495e1fd18dc3c0b68f7b8a87ae3c56e size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 2f55be9a..daf7c277 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c76a61959d72c6b4961b1f1daa9724fdc7268bd749788abfad15faa44bc1c3a2 -size 321 +oid sha256:e09622d82620f535e9b484ab6ae25f5e60298fe051415b5b2af3c4d154d3cf24 +size 320 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index a5df4dd7..5299a557 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4b2e2eef80cdbd81d042c8f4026562d14fcf1a8c0b33df695b40cf4eca9c4c3b -size 365 +oid sha256:64c39d17a31b2946826f1cbcfb368d82f72d667a12428f3d9283b3002ba462bb +size 366 From f0e21e42ff82f2c6dfef7c131a87f15df7d269cf Mon Sep 17 00:00:00 2001 From: f Date: Fri, 4 Nov 2022 15:47:40 -0300 Subject: [PATCH 055/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 2 +- public/packs/js/application-da7d23395df54af9dd86.js | 3 +++ .../packs/js/application-da7d23395df54af9dd86.js.LICENSE.txt | 3 +++ public/packs/js/application-da7d23395df54af9dd86.js.br | 3 +++ public/packs/js/application-da7d23395df54af9dd86.js.gz | 3 +++ public/packs/js/application-da7d23395df54af9dd86.js.map | 3 +++ public/packs/js/application-da7d23395df54af9dd86.js.map.br | 3 +++ public/packs/js/application-da7d23395df54af9dd86.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 2 +- 11 files changed, 26 insertions(+), 5 deletions(-) create mode 100644 public/packs/js/application-da7d23395df54af9dd86.js create mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.LICENSE.txt create mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.br create mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.gz create mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.map create mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.map.br create mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.map.gz diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index e553de11..2f67e1e6 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cc48ab9c925ef542b8ef6a1c1ebca5ec07fdf26543686f34edf187186dc4db67 +oid sha256:e9b09d54f0d1d24c94148b13301cf68eed7f25b01315d8aa7bbe6be65f74387d size 11892 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js b/public/packs/js/application-da7d23395df54af9dd86.js new file mode 100644 index 00000000..c726329d --- /dev/null +++ b/public/packs/js/application-da7d23395df54af9dd86.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:383a5ef45331bc051cb4386fa2d577280a0c0f70c445703f78cf50c0b16e2202 +size 1447613 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.LICENSE.txt b/public/packs/js/application-da7d23395df54af9dd86.js.LICENSE.txt new file mode 100644 index 00000000..89f0cf4f --- /dev/null +++ b/public/packs/js/application-da7d23395df54af9dd86.js.LICENSE.txt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f +size 629 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.br b/public/packs/js/application-da7d23395df54af9dd86.js.br new file mode 100644 index 00000000..4d1feb60 --- /dev/null +++ b/public/packs/js/application-da7d23395df54af9dd86.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7b47124256f6bc1b9ac4c4ba10cfc7c1d7258d1696bf4028cf5b996f07053d8 +size 315845 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.gz b/public/packs/js/application-da7d23395df54af9dd86.js.gz new file mode 100644 index 00000000..d1f4b00f --- /dev/null +++ b/public/packs/js/application-da7d23395df54af9dd86.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd8671495660a5b744e57f18f4b3347c8c7b2a1c20e2a1310e0da37d6e110e22 +size 419598 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.map b/public/packs/js/application-da7d23395df54af9dd86.js.map new file mode 100644 index 00000000..03d7df3d --- /dev/null +++ b/public/packs/js/application-da7d23395df54af9dd86.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b8e227ee411590db0f0aa670fb94551fb58af0cb78f70196e33ec144d182d58 +size 5640997 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.map.br b/public/packs/js/application-da7d23395df54af9dd86.js.map.br new file mode 100644 index 00000000..9aca14c7 --- /dev/null +++ b/public/packs/js/application-da7d23395df54af9dd86.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:185d83227941abf8846139ab3497ddc9bc68f07489003ec38fccb142cc39ca51 +size 1210315 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.map.gz b/public/packs/js/application-da7d23395df54af9dd86.js.map.gz new file mode 100644 index 00000000..9b735e1b --- /dev/null +++ b/public/packs/js/application-da7d23395df54af9dd86.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:176ea6c12e03ed2f9cb5cc0e66b1adc47e6d8ff061ebfdc5aeda0eddf4a9d1cc +size 1485330 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 7d5a4463..a2e83d91 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a99b4405c035c6eb89f1308faeb831335495e1fd18dc3c0b68f7b8a87ae3c56e +oid sha256:5243384bb8f18bb45a29f76e6e70db6d9437c10672b7b46e763d907b4776135b size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index daf7c277..7d822c0e 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e09622d82620f535e9b484ab6ae25f5e60298fe051415b5b2af3c4d154d3cf24 -size 320 +oid sha256:337aa8b87e8d1be79a9829c0fc01dc84862e7b3602d5c81b4f12d18c6e76cce8 +size 319 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 5299a557..a3afbddd 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:64c39d17a31b2946826f1cbcfb368d82f72d667a12428f3d9283b3002ba462bb +oid sha256:884376efda9b7f5c5c4cc1cfcca69a8fe883ea39061d3352782bd8e0369e4a1d size 366 From 1b62b07e1341fcfe322b40f4923e23c590586afa Mon Sep 17 00:00:00 2001 From: f Date: Fri, 4 Nov 2022 16:52:44 -0300 Subject: [PATCH 056/699] fix: table-responsive no existe (?) --- app/assets/stylesheets/new_editor.scss | 1 - 1 file changed, 1 deletion(-) diff --git a/app/assets/stylesheets/new_editor.scss b/app/assets/stylesheets/new_editor.scss index 35c383f3..7ffb0b69 100644 --- a/app/assets/stylesheets/new_editor.scss +++ b/app/assets/stylesheets/new_editor.scss @@ -2,7 +2,6 @@ .editor { table { @extend .table; - @extend .table-responsive; } .menubar { From 7da8382e5dc5a397681fe682277770efd0c5889b Mon Sep 17 00:00:00 2001 From: f Date: Fri, 4 Nov 2022 17:00:44 -0300 Subject: [PATCH 057/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 4 ++-- ...6a2e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css | 3 +++ ...e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css.gz | 3 +++ 3 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 public/assets/application-78cdf135cd6a2e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css create mode 100644 public/assets/application-78cdf135cd6a2e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css.gz diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index 2f67e1e6..1f748362 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e9b09d54f0d1d24c94148b13301cf68eed7f25b01315d8aa7bbe6be65f74387d -size 11892 +oid sha256:9911c440ebd074277cd0c02cf7941022b85bffbad5b45fc0524773aa527a20a2 +size 12202 diff --git a/public/assets/application-78cdf135cd6a2e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css b/public/assets/application-78cdf135cd6a2e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css new file mode 100644 index 00000000..2dddfbcd --- /dev/null +++ b/public/assets/application-78cdf135cd6a2e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2adbb392fe5cc367cc8d9a03fc3a2be09a3ce649c10d33c1370c1ba2971ea2c +size 230254 diff --git a/public/assets/application-78cdf135cd6a2e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css.gz b/public/assets/application-78cdf135cd6a2e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css.gz new file mode 100644 index 00000000..54e32509 --- /dev/null +++ b/public/assets/application-78cdf135cd6a2e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd6095d45601b0e2f843784307e66055361631d9097315ebae94f0adf7ece529 +size 31856 From 0c359726b18b6b6738dc83eb9de44abe4a04c5b4 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 4 Nov 2022 17:01:12 -0300 Subject: [PATCH 058/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index 1f748362..c9bafb44 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9911c440ebd074277cd0c02cf7941022b85bffbad5b45fc0524773aa527a20a2 +oid sha256:4ff19ba8acdf8ba31d10ca31a1192b27854ddec8591a4d7687be03a1a2f7c1a1 size 12202 From ed0f7ac5a85004663266f14060a07efa020dbaa6 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 9 Nov 2022 13:02:46 -0300 Subject: [PATCH 059/699] assets [skip ci] --- public/packs/js/application-0d127edaee192585a1ce.js | 3 +++ public/packs/js/application-0d127edaee192585a1ce.js.map | 3 +++ public/packs/js/application-0fa1aa45cc1316756a1d.js | 3 +++ public/packs/js/application-0fa1aa45cc1316756a1d.js.map | 3 +++ 4 files changed, 12 insertions(+) create mode 100644 public/packs/js/application-0d127edaee192585a1ce.js create mode 100644 public/packs/js/application-0d127edaee192585a1ce.js.map create mode 100644 public/packs/js/application-0fa1aa45cc1316756a1d.js create mode 100644 public/packs/js/application-0fa1aa45cc1316756a1d.js.map diff --git a/public/packs/js/application-0d127edaee192585a1ce.js b/public/packs/js/application-0d127edaee192585a1ce.js new file mode 100644 index 00000000..4442bfc3 --- /dev/null +++ b/public/packs/js/application-0d127edaee192585a1ce.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8197a35f770b5a5b6d44e9b0054a0db7c87e0f0ffec91a307d2da74c1b449d40 +size 4742390 diff --git a/public/packs/js/application-0d127edaee192585a1ce.js.map b/public/packs/js/application-0d127edaee192585a1ce.js.map new file mode 100644 index 00000000..0d878fc5 --- /dev/null +++ b/public/packs/js/application-0d127edaee192585a1ce.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c615d7db62338d19014777abfff549a25d4fc77ed52a89f9e0bf1af2764028a +size 4565230 diff --git a/public/packs/js/application-0fa1aa45cc1316756a1d.js b/public/packs/js/application-0fa1aa45cc1316756a1d.js new file mode 100644 index 00000000..86408b5f --- /dev/null +++ b/public/packs/js/application-0fa1aa45cc1316756a1d.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78c80371565e4e2e45b30b771bd8a74f3b8c7cb4178de5f91b83925cd9daccdd +size 4733487 diff --git a/public/packs/js/application-0fa1aa45cc1316756a1d.js.map b/public/packs/js/application-0fa1aa45cc1316756a1d.js.map new file mode 100644 index 00000000..c99dc1d4 --- /dev/null +++ b/public/packs/js/application-0fa1aa45cc1316756a1d.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5b7998d655d0f533351480cf8e89f2aab9d6efec28b15df664e5a067accfa66 +size 4562518 From 66f98a44967bb61640f11730a461ebd24ef334a8 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 9 Nov 2022 13:03:40 -0300 Subject: [PATCH 060/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 4 ++-- ...2777379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css | 3 +++ ...7379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css.gz | 3 +++ public/packs/js/application-0d127edaee192585a1ce.js | 3 --- public/packs/js/application-0d127edaee192585a1ce.js.map | 3 --- public/packs/js/application-0fa1aa45cc1316756a1d.js | 3 --- public/packs/js/application-0fa1aa45cc1316756a1d.js.map | 3 --- 7 files changed, 8 insertions(+), 14 deletions(-) create mode 100644 public/assets/application-0c5f86a0c52777379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css create mode 100644 public/assets/application-0c5f86a0c52777379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css.gz delete mode 100644 public/packs/js/application-0d127edaee192585a1ce.js delete mode 100644 public/packs/js/application-0d127edaee192585a1ce.js.map delete mode 100644 public/packs/js/application-0fa1aa45cc1316756a1d.js delete mode 100644 public/packs/js/application-0fa1aa45cc1316756a1d.js.map diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index c9bafb44..57e5b94b 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4ff19ba8acdf8ba31d10ca31a1192b27854ddec8591a4d7687be03a1a2f7c1a1 -size 12202 +oid sha256:900213c7ccf1a7ebb98f2d17a51451497143e30659859691eb25ba72b86615fc +size 12512 diff --git a/public/assets/application-0c5f86a0c52777379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css b/public/assets/application-0c5f86a0c52777379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css new file mode 100644 index 00000000..6340676f --- /dev/null +++ b/public/assets/application-0c5f86a0c52777379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10404ae91a435e0654a246dca74df0b0b43681536565ebe0396492e15b07430f +size 230680 diff --git a/public/assets/application-0c5f86a0c52777379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css.gz b/public/assets/application-0c5f86a0c52777379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css.gz new file mode 100644 index 00000000..fe1a9d0a --- /dev/null +++ b/public/assets/application-0c5f86a0c52777379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88c5ea54aeff8bab5750e053821cdec4c11b8ac907439dd7177896d528166858 +size 31985 diff --git a/public/packs/js/application-0d127edaee192585a1ce.js b/public/packs/js/application-0d127edaee192585a1ce.js deleted file mode 100644 index 4442bfc3..00000000 --- a/public/packs/js/application-0d127edaee192585a1ce.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8197a35f770b5a5b6d44e9b0054a0db7c87e0f0ffec91a307d2da74c1b449d40 -size 4742390 diff --git a/public/packs/js/application-0d127edaee192585a1ce.js.map b/public/packs/js/application-0d127edaee192585a1ce.js.map deleted file mode 100644 index 0d878fc5..00000000 --- a/public/packs/js/application-0d127edaee192585a1ce.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8c615d7db62338d19014777abfff549a25d4fc77ed52a89f9e0bf1af2764028a -size 4565230 diff --git a/public/packs/js/application-0fa1aa45cc1316756a1d.js b/public/packs/js/application-0fa1aa45cc1316756a1d.js deleted file mode 100644 index 86408b5f..00000000 --- a/public/packs/js/application-0fa1aa45cc1316756a1d.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:78c80371565e4e2e45b30b771bd8a74f3b8c7cb4178de5f91b83925cd9daccdd -size 4733487 diff --git a/public/packs/js/application-0fa1aa45cc1316756a1d.js.map b/public/packs/js/application-0fa1aa45cc1316756a1d.js.map deleted file mode 100644 index c99dc1d4..00000000 --- a/public/packs/js/application-0fa1aa45cc1316756a1d.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e5b7998d655d0f533351480cf8e89f2aab9d6efec28b15df664e5a067accfa66 -size 4562518 From 16ecf6b08056b11dd952ad1f4cc34a323a3f5434 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 9 Nov 2022 13:04:35 -0300 Subject: [PATCH 061/699] assets [skip ci] --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json index 57e5b94b..e1a60401 100644 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:900213c7ccf1a7ebb98f2d17a51451497143e30659859691eb25ba72b86615fc +oid sha256:a00ecab9b14ccc7e42fb155e5b805fe1ab5f8986a8c8ebd685b833d9b23b21c5 size 12512 From 1fb7d2bfcacc0b620912f36eb0b596121f617e81 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 9 Nov 2022 18:43:07 -0300 Subject: [PATCH 062/699] fix: popper --- Gemfile.lock | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 58ebf6ee..47ffaed6 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -465,6 +465,7 @@ GEM pg_search (2.3.5) activerecord (>= 5.2) activesupport (>= 5.2) + popper_js (1.16.1) prometheus_exporter (1.0.0) webrick pry (0.14.1) @@ -827,4 +828,4 @@ RUBY VERSION ruby 2.7.1p83 BUNDLED WITH - 2.2.2 + 2.2.20 From 15cd3e52944a3e8f8284f2678a7c4fbd1773c17a Mon Sep 17 00:00:00 2001 From: f Date: Tue, 27 Dec 2022 19:15:21 -0300 Subject: [PATCH 063/699] =?UTF-8?q?feat:=20actualizaci=C3=B3n=20#8369?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Gemfile | 18 +- Gemfile.lock | 504 +++++++++++++++++++++++++++------------------------ 2 files changed, 275 insertions(+), 247 deletions(-) diff --git a/Gemfile b/Gemfile index 2b304ee0..10479203 100644 --- a/Gemfile +++ b/Gemfile @@ -6,9 +6,10 @@ source 'https://gems.sutty.nl' ruby '~> 2.7' gem 'dotenv-rails', require: 'dotenv/rails-now' +gem 'i18n', '~> 1.8.0' # Bundle edge Rails instead: gem 'rails', github: 'rails/rails' -gem 'rails', '~> 6' +gem 'rails', '~> 6.1.0' # Use Puma as the app server gem 'puma' @@ -48,9 +49,9 @@ gem 'image_processing' gem 'icalendar' gem 'inline_svg' gem 'httparty' -gem 'safe_yaml', source: 'https://gems.sutty.nl' -gem 'jekyll', '~> 4.2' -gem 'jekyll-data', source: 'https://gems.sutty.nl' +gem 'safe_yaml' +gem 'jekyll', '~> 4.2.0' +gem 'jekyll-data' gem 'jekyll-commonmark' gem 'jekyll-images' gem 'jekyll-include-cache' @@ -62,7 +63,7 @@ gem 'mobility' gem 'pundit' gem 'rails-i18n' gem 'rails_warden' -gem 'redis', require: %w[redis redis/connection/hiredis] +gem 'redis', '~> 4.0', require: %w[redis redis/connection/hiredis] gem 'redis-rails' gem 'rollups', git: 'https://github.com/ankane/rollup.git', branch: 'master' gem 'rubyzip' @@ -125,14 +126,15 @@ group :development, :test do end group :development do + gem 'reek' gem 'brakeman' gem 'haml-lint', require: false gem 'letter_opener' - gem 'listen', '>= 3.0.5', '< 3.2' + gem 'listen' gem 'rubocop-rails' gem 'spring' - gem 'spring-watcher-listen', '~> 2.0.0' - gem 'web-console', '>= 3.3.0' + gem 'spring-watcher-listen' + gem 'web-console' end group :test do diff --git a/Gemfile.lock b/Gemfile.lock index 8df2d77e..e39b4bfe 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -8,12 +8,12 @@ GIT GIT remote: https://github.com/ankane/rollup.git - revision: 0ab6c603450175eb1004f7793e86486943cb9f72 + revision: f3fbff7e11e4904b3aef8635ee02d84a70348222 branch: master specs: - rollups (0.1.3) - activesupport (>= 5.1) - groupdate (>= 5.2) + rollups (0.2.0) + activesupport (>= 5.2) + groupdate (>= 6.1) GIT remote: https://github.com/fauno/email_address @@ -27,93 +27,99 @@ GIT GEM remote: https://gems.sutty.nl/ specs: - actioncable (6.1.4.1) - actionpack (= 6.1.4.1) - activesupport (= 6.1.4.1) + actioncable (6.1.7) + actionpack (= 6.1.7) + activesupport (= 6.1.7) nio4r (~> 2.0) websocket-driver (>= 0.6.1) - actionmailbox (6.1.4.1) - actionpack (= 6.1.4.1) - activejob (= 6.1.4.1) - activerecord (= 6.1.4.1) - activestorage (= 6.1.4.1) - activesupport (= 6.1.4.1) + actionmailbox (6.1.7) + actionpack (= 6.1.7) + activejob (= 6.1.7) + activerecord (= 6.1.7) + activestorage (= 6.1.7) + activesupport (= 6.1.7) mail (>= 2.7.1) - actionmailer (6.1.4.1) - actionpack (= 6.1.4.1) - actionview (= 6.1.4.1) - activejob (= 6.1.4.1) - activesupport (= 6.1.4.1) + actionmailer (6.1.7) + actionpack (= 6.1.7) + actionview (= 6.1.7) + activejob (= 6.1.7) + activesupport (= 6.1.7) mail (~> 2.5, >= 2.5.4) rails-dom-testing (~> 2.0) - actionpack (6.1.4.1) - actionview (= 6.1.4.1) - activesupport (= 6.1.4.1) + actionpack (6.1.7) + actionview (= 6.1.7) + activesupport (= 6.1.7) rack (~> 2.0, >= 2.0.9) rack-test (>= 0.6.3) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.0, >= 1.2.0) - actiontext (6.1.4.1) - actionpack (= 6.1.4.1) - activerecord (= 6.1.4.1) - activestorage (= 6.1.4.1) - activesupport (= 6.1.4.1) + actiontext (6.1.7) + actionpack (= 6.1.7) + activerecord (= 6.1.7) + activestorage (= 6.1.7) + activesupport (= 6.1.7) nokogiri (>= 1.8.5) - actionview (6.1.4.1) - activesupport (= 6.1.4.1) + actionview (6.1.7) + activesupport (= 6.1.7) builder (~> 3.1) erubi (~> 1.4) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.1, >= 1.2.0) - activejob (6.1.4.1) - activesupport (= 6.1.4.1) + activejob (6.1.7) + activesupport (= 6.1.7) globalid (>= 0.3.6) - activemodel (6.1.4.1) - activesupport (= 6.1.4.1) - activerecord (6.1.4.1) - activemodel (= 6.1.4.1) - activesupport (= 6.1.4.1) - activestorage (6.1.4.1) - actionpack (= 6.1.4.1) - activejob (= 6.1.4.1) - activerecord (= 6.1.4.1) - activesupport (= 6.1.4.1) - marcel (~> 1.0.0) + activemodel (6.1.7) + activesupport (= 6.1.7) + activerecord (6.1.7) + activemodel (= 6.1.7) + activesupport (= 6.1.7) + activestorage (6.1.7) + actionpack (= 6.1.7) + activejob (= 6.1.7) + activerecord (= 6.1.7) + activesupport (= 6.1.7) + marcel (~> 1.0) mini_mime (>= 1.1.0) - activesupport (6.1.4.1) + activesupport (6.1.7) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (>= 1.6, < 2) minitest (>= 5.1) tzinfo (~> 2.0) zeitwerk (~> 2.3) - addressable (2.8.0) - public_suffix (>= 2.0.2, < 5.0) - adhesiones-jekyll-theme (0.2.1) - jekyll (~> 4.0) + addressable (2.8.1) + public_suffix (>= 2.0.2, < 6.0) + adhesiones-jekyll-theme (0.2.5) + jekyll (~> 4) + jekyll-commonmark (~> 1.3) jekyll-data (~> 1.1) - jekyll-feed (~> 0.9) + jekyll-dotenv (>= 0.2) + jekyll-feed (~> 0.15) + jekyll-ignore-layouts (~> 0) jekyll-images (~> 0.2) jekyll-include-cache (~> 0) + jekyll-linked-posts (~> 0) jekyll-locales (~> 0.1) - jekyll-relative-urls (~> 0.0) - jekyll-seo-tag (~> 2.1) + jekyll-order (~> 0) + jekyll-relative-urls (~> 0) + jekyll-seo-tag (~> 2) + sutty-liquid (~> 0) ast (2.4.2) - autoprefixer-rails (10.3.3.0) + autoprefixer-rails (10.4.7.0) execjs (~> 2) - bcrypt (3.1.16-x86_64-linux-musl) + bcrypt (3.1.18-x86_64-linux-musl) bcrypt_pbkdf (1.1.0-x86_64-linux-musl) - benchmark-ips (2.9.2) + benchmark-ips (2.10.0) bindex (0.8.1-x86_64-linux-musl) - blazer (2.4.7) + blazer (2.6.5) activerecord (>= 5) chartkick (>= 3.2) railties (>= 5) safely_block (>= 0.1.1) - bootstrap (4.6.0) + bootstrap (4.6.2) autoprefixer-rails (>= 9.1.0) - popper_js (>= 1.14.3, < 2) + popper_js (>= 1.16.1, < 2) sassc-rails (>= 2.0.0) - brakeman (5.1.2) + brakeman (5.4.0) builder (3.2.4) capybara (2.18.0) addressable @@ -122,15 +128,13 @@ GEM rack (>= 1.0.0) rack-test (>= 0.5.4) xpath (>= 2.0, < 4.0) - chartkick (4.1.2) - childprocess (4.1.0) + chartkick (4.2.1) coderay (1.1.3) colorator (1.1.0) - commonmarker (0.21.2-x86_64-linux-musl) - ruby-enum (~> 0.5) - concurrent-ruby (1.1.9) - concurrent-ruby-ext (1.1.9-x86_64-linux-musl) - concurrent-ruby (= 1.1.9) + commonmarker (0.23.6-x86_64-linux-musl) + concurrent-ruby (1.1.10) + concurrent-ruby-ext (1.1.10-x86_64-linux-musl) + concurrent-ruby (= 1.1.10) crass (1.0.6) database_cleaner (2.0.1) database_cleaner-active_record (~> 2.0.0) @@ -138,8 +142,9 @@ GEM activerecord (>= 5.a) database_cleaner-core (~> 2.0.0) database_cleaner-core (2.0.1) - dead_end (3.1.0) - derailed_benchmarks (2.1.1) + date (3.3.3-x86_64-linux-musl) + dead_end (4.0.0) + derailed_benchmarks (2.1.2) benchmark-ips (~> 2) dead_end get_process_mem (~> 0) @@ -151,24 +156,24 @@ GEM rake (> 10, < 14) ruby-statistics (>= 2.1) thor (>= 0.19, < 2) - devise (4.8.0) + devise (4.8.1) bcrypt (~> 3.0) orm_adapter (~> 0.1) railties (>= 4.1.0) responders warden (~> 1.2.3) - devise-i18n (1.10.1) + devise-i18n (1.10.2) devise (>= 4.8.0) - devise_invitable (2.0.5) + devise_invitable (2.0.6) actionmailer (>= 5.0) devise (>= 4.6) - dotenv (2.7.6) - dotenv-rails (2.7.6) - dotenv (= 2.7.6) + dotenv (2.8.1) + dotenv-rails (2.8.1) + dotenv (= 2.8.1) railties (>= 3.2) - down (5.2.4) + down (5.4.0) addressable (~> 2.8) - ed25519 (1.2.4-x86_64-linux-musl) + ed25519 (1.3.0-x86_64-linux-musl) editorial-autogestiva-jekyll-theme (0.3.4) jekyll (~> 4) jekyll-commonmark (~> 1.3) @@ -191,47 +196,48 @@ GEM em-websocket (0.5.3) eventmachine (>= 0.12.9) http_parser.rb (~> 0) - errbase (0.2.1) - erubi (1.10.0) + errbase (0.2.2) + erubi (1.12.0) eventmachine (1.2.7-x86_64-linux-musl) - exception_notification (4.4.3) - actionmailer (>= 4.0, < 7) - activesupport (>= 4.0, < 7) + exception_notification (4.5.0) + actionmailer (>= 5.2, < 8) + activesupport (>= 5.2, < 8) execjs (2.8.1) - factory_bot (6.2.0) + factory_bot (6.2.1) activesupport (>= 5.0.0) factory_bot_rails (6.2.0) factory_bot (~> 6.2.0) railties (>= 5.0.0) fast_blank (1.0.1-x86_64-linux-musl) - fast_jsonparser (0.5.0-x86_64-linux-musl) - ffi (1.15.4-x86_64-linux-musl) + fast_jsonparser (0.6.0-x86_64-linux-musl) + ffi (1.15.5-x86_64-linux-musl) flamegraph (0.9.5) forwardable-extended (2.6.0) - friendly_id (5.4.2) + friendly_id (5.5.0) activerecord (>= 4.0.0) get_process_mem (0.2.7) ffi (~> 1.0) - globalid (0.6.0) + globalid (1.0.0) activesupport (>= 5.0) - groupdate (5.2.2) - activesupport (>= 5) - hairtrigger (0.2.24) - activerecord (>= 5.0, < 7) + groupdate (6.1.0) + activesupport (>= 5.2) + hairtrigger (1.0.0) + activerecord (>= 6.0, < 8) ruby2ruby (~> 2.4) ruby_parser (~> 3.10) - haml (5.2.2) - temple (>= 0.8.0) + haml (6.1.1-x86_64-linux-musl) + temple (>= 0.8.2) + thor tilt haml-lint (0.999.999) haml_lint - haml_lint (0.37.1) - haml (>= 4.0, < 5.3) + haml_lint (0.43.0) + haml (>= 4.0, < 6.2) parallel (~> 1.10) rainbow rubocop (>= 0.50.0) sysexits (~> 1.1) - hamlit (2.15.1-x86_64-linux-musl) + hamlit (3.0.3-x86_64-linux-musl) temple (>= 0.8.2) thor tilt @@ -249,18 +255,19 @@ GEM multi_xml (>= 0.5.2) i18n (1.8.11) concurrent-ruby (~> 1.0) - icalendar (2.7.1) + icalendar (2.8.0) ice_cube (~> 0.16) ice_cube (0.16.4) - image_processing (1.12.1) + image_processing (1.12.2) mini_magick (>= 4.9.5, < 5) ruby-vips (>= 2.0.17, < 3) - inline_svg (1.7.2) + inline_svg (1.8.0) activesupport (>= 3.0) nokogiri (>= 1.6) - jbuilder (2.11.3) + jbuilder (2.11.5) + actionview (>= 5.0.0) activesupport (>= 5.0.0) - jekyll (4.2.1) + jekyll (4.2.2) addressable (~> 2.4) colorator (~> 1.0) em-websocket (~> 0.5) @@ -275,21 +282,20 @@ GEM rouge (~> 3.0) safe_yaml (~> 1.0) terminal-table (~> 2.0) - jekyll-commonmark (1.3.2) - commonmarker (~> 0.14, < 0.22) - jekyll (>= 3.7, < 5.0) + jekyll-commonmark (1.4.0) + commonmarker (~> 0.22) jekyll-data (1.1.2) jekyll (>= 3.3, < 5.0.0) jekyll-dotenv (0.2.0) dotenv (~> 2.7) jekyll (~> 4) - jekyll-feed (0.15.1) + jekyll-feed (0.17.0) jekyll (>= 3.7, < 5.0) - jekyll-hardlinks (0.1.2) + jekyll-hardlinks (0.2.0) jekyll (~> 4) jekyll-ignore-layouts (0.1.2) jekyll (~> 4) - jekyll-images (0.3.0) + jekyll-images (0.3.2) jekyll (~> 4) ruby-filemagic (~> 0.7) ruby-vips (~> 2) @@ -297,124 +303,137 @@ GEM jekyll (>= 3.7, < 5.0) jekyll-linked-posts (0.4.2) jekyll (~> 4) - jekyll-locales (0.1.13) + jekyll-locales (0.2.0) jekyll-lunr (0.3.0) loofah (~> 2.4) - jekyll-order (0.1.4) + jekyll-order (0.1.5) jekyll-relative-urls (0.0.6) jekyll (~> 4) - jekyll-sass-converter (2.1.0) + jekyll-sass-converter (2.2.0) sassc (> 2.0.1, < 3.0) - jekyll-seo-tag (2.7.1) + jekyll-seo-tag (2.8.0) jekyll (>= 3.8, < 5.0) - jekyll-spree-client (0.1.19) + jekyll-spree-client (0.1.21) fast_blank (~> 1) spree-api-client (>= 0.2.4) jekyll-turbolinks (0.0.5) jekyll (~> 4) turbolinks-source (~> 5) - jekyll-unique-urls (0.1.1) + jekyll-unique-urls (0.1.2) jekyll (~> 4) jekyll-watch (2.2.1) listen (~> 3.0) - jekyll-write-and-commit-changes (0.2.1) + jekyll-write-and-commit-changes (0.2.3) jekyll (~> 4) rugged (~> 1) - kaminari (1.2.1) + json (2.6.3-x86_64-linux-musl) + kaminari (1.2.2) activesupport (>= 4.1.0) - kaminari-actionview (= 1.2.1) - kaminari-activerecord (= 1.2.1) - kaminari-core (= 1.2.1) - kaminari-actionview (1.2.1) + kaminari-actionview (= 1.2.2) + kaminari-activerecord (= 1.2.2) + kaminari-core (= 1.2.2) + kaminari-actionview (1.2.2) actionview - kaminari-core (= 1.2.1) - kaminari-activerecord (1.2.1) + kaminari-core (= 1.2.2) + kaminari-activerecord (1.2.2) activerecord - kaminari-core (= 1.2.1) - kaminari-core (1.2.1) - kramdown (2.3.1) + kaminari-core (= 1.2.2) + kaminari-core (1.2.2) + kramdown (2.4.0) rexml kramdown-parser-gfm (1.1.0) kramdown (~> 2.0) + kwalify (0.7.2) launchy (2.5.0) addressable (~> 2.7) - letter_opener (1.7.0) - launchy (~> 2.2) + letter_opener (1.8.1) + launchy (>= 2.2, < 3) liquid (4.0.3) - listen (3.1.5) - rb-fsevent (~> 0.9, >= 0.9.4) - rb-inotify (~> 0.9, >= 0.9.7) - ruby_dep (~> 1.2) + listen (3.7.1) + rb-fsevent (~> 0.10, >= 0.10.3) + rb-inotify (~> 0.9, >= 0.9.10) loaf (0.10.0) railties (>= 3.2) - lockbox (0.6.6) - lograge (0.11.2) + lockbox (1.1.1) + lograge (0.12.0) actionpack (>= 4) activesupport (>= 4) railties (>= 4) request_store (~> 1.0) - loofah (2.12.0) + loofah (2.19.1) crass (~> 1.0.2) nokogiri (>= 1.5.9) - mail (2.7.1) + mail (2.8.0) mini_mime (>= 0.1.1) + net-imap + net-pop + net-smtp marcel (1.0.2) - memory_profiler (1.0.0) + memory_profiler (1.0.1) mercenary (0.4.0) method_source (1.0.0) mime-types (3.4.1) mime-types-data (~> 3.2015) - mime-types-data (3.2021.1115) + mime-types-data (3.2022.0105) mini_histogram (0.3.1) - mini_magick (4.11.0) + mini_magick (4.12.0) mini_mime (1.1.2) - mini_portile2 (2.6.1) + mini_portile2 (2.8.1) minima (2.5.1) jekyll (>= 3.5, < 5.0) jekyll-feed (~> 0.9) jekyll-seo-tag (~> 2.1) - minitest (5.14.4) - mobility (1.2.4) + minitest (5.16.3) + mobility (1.2.9) i18n (>= 0.6.10, < 2) request_store (~> 1.0) multi_xml (0.6.0) - net-ssh (6.1.0) - netaddr (2.0.5) + net-imap (0.3.4) + date + net-protocol + net-pop (0.1.2) + net-protocol + net-protocol (0.2.1) + timeout + net-smtp (0.3.3) + net-protocol + net-ssh (7.0.1) + netaddr (2.0.6) nio4r (2.5.8-x86_64-linux-musl) - nokogiri (1.12.5-x86_64-linux-musl) - mini_portile2 (~> 2.6.1) + nokogiri (1.13.10-x86_64-linux-musl) + mini_portile2 (~> 2.8.0) racc (~> 1.4) orm_adapter (0.5.0) - parallel (1.21.0) - parser (3.0.2.0) + parallel (1.22.1) + parser (3.1.3.0) ast (~> 2.4.1) pathutil (0.16.2) forwardable-extended (~> 2.6) - pg (1.2.3-x86_64-linux-musl) - pg_search (2.3.5) + pg (1.4.5-x86_64-linux-musl) + pg_search (2.3.6) activerecord (>= 5.2) activesupport (>= 5.2) - popper_js (1.16.0) - prometheus_exporter (1.0.0) + popper_js (1.16.1) + prometheus_exporter (2.0.6) webrick pry (0.14.1) coderay (~> 1.1) method_source (~> 1.0) - public_suffix (4.0.6) - puma (5.5.2-x86_64-linux-musl) + public_suffix (5.0.1) + puma (6.0.1-x86_64-linux-musl) nio4r (~> 2.0) - pundit (2.1.1) + pundit (2.3.0) activesupport (>= 3.0.0) - racc (1.6.0-x86_64-linux-musl) - rack (2.2.3) + racc (1.6.2-x86_64-linux-musl) + rack (2.2.5) rack-cors (1.1.1) rack (>= 2.0.0) - rack-mini-profiler (2.3.3) + rack-mini-profiler (3.0.0) rack (>= 1.2.0) - rack-proxy (0.7.0) + rack-proxy (0.7.4) rack - rack-test (1.1.0) - rack (>= 1.0, < 3) + rack-test (2.0.2) + rack (>= 1.3) radios-comunitarias-jekyll-theme (0.1.5) jekyll (~> 4.0) jekyll-data (~> 1.1) @@ -426,40 +445,40 @@ GEM jekyll-relative-urls (~> 0.0) jekyll-seo-tag (~> 2.1) jekyll-turbolinks (~> 0) - rails (6.1.4.1) - actioncable (= 6.1.4.1) - actionmailbox (= 6.1.4.1) - actionmailer (= 6.1.4.1) - actionpack (= 6.1.4.1) - actiontext (= 6.1.4.1) - actionview (= 6.1.4.1) - activejob (= 6.1.4.1) - activemodel (= 6.1.4.1) - activerecord (= 6.1.4.1) - activestorage (= 6.1.4.1) - activesupport (= 6.1.4.1) + rails (6.1.7) + actioncable (= 6.1.7) + actionmailbox (= 6.1.7) + actionmailer (= 6.1.7) + actionpack (= 6.1.7) + actiontext (= 6.1.7) + actionview (= 6.1.7) + activejob (= 6.1.7) + activemodel (= 6.1.7) + activerecord (= 6.1.7) + activestorage (= 6.1.7) + activesupport (= 6.1.7) bundler (>= 1.15.0) - railties (= 6.1.4.1) + railties (= 6.1.7) sprockets-rails (>= 2.0.0) rails-dom-testing (2.0.3) activesupport (>= 4.2.0) nokogiri (>= 1.6) - rails-html-sanitizer (1.4.2) - loofah (~> 2.3) - rails-i18n (6.0.0) + rails-html-sanitizer (1.4.4) + loofah (~> 2.19, >= 2.19.1) + rails-i18n (7.0.6) i18n (>= 0.7, < 2) - railties (>= 6.0.0, < 7) + railties (>= 6.0.0, < 8) rails_warden (0.6.0) warden (>= 1.2.0) - railties (6.1.4.1) - actionpack (= 6.1.4.1) - activesupport (= 6.1.4.1) + railties (6.1.7) + actionpack (= 6.1.7) + activesupport (= 6.1.7) method_source - rake (>= 0.13) + rake (>= 12.2) thor (~> 1.0) - rainbow (3.0.0) + rainbow (3.1.1) rake (13.0.6) - rb-fsevent (0.11.0) + rb-fsevent (0.11.2) rb-inotify (0.10.1) ffi (~> 1.0) recursero-jekyll-theme (0.2.0) @@ -480,61 +499,63 @@ GEM jekyll-unique-urls (~> 0.1) sutty-archives (~> 2.2) sutty-liquid (~> 0) - redis (4.5.1) - redis-actionpack (5.2.0) - actionpack (>= 5, < 7) + redis (4.8.0) + redis-actionpack (5.3.0) + actionpack (>= 5, < 8) redis-rack (>= 2.1.0, < 3) redis-store (>= 1.1.0, < 2) - redis-activesupport (5.2.1) - activesupport (>= 3, < 7) + redis-activesupport (5.3.0) + activesupport (>= 3, < 8) redis-store (>= 1.3, < 2) - redis-rack (2.1.3) + redis-rack (2.1.4) rack (>= 2.0.8, < 3) redis-store (>= 1.2, < 2) redis-rails (5.0.2) redis-actionpack (>= 5.0, < 6) redis-activesupport (>= 5.0, < 6) redis-store (>= 1.2, < 2) - redis-store (1.9.0) + redis-store (1.9.1) redis (>= 4, < 5) - regexp_parser (2.1.1) - request_store (1.5.0) + reek (6.1.2) + kwalify (~> 0.7.0) + parser (~> 3.1.0) + rainbow (>= 2.0, < 4.0) + regexp_parser (2.6.1) + request_store (1.5.1) rack (>= 1.4) responders (3.0.1) actionpack (>= 5.0) railties (>= 5.0) rexml (3.2.5) - rouge (3.26.1) - rubocop (1.23.0) + rouge (3.30.0) + rubocop (1.41.1) + json (~> 2.3) parallel (~> 1.10) - parser (>= 3.0.0.0) + parser (>= 3.1.2.1) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 1.8, < 3.0) - rexml - rubocop-ast (>= 1.12.0, < 2.0) + rexml (>= 3.2.5, < 4.0) + rubocop-ast (>= 1.23.0, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 1.4.0, < 3.0) - rubocop-ast (1.13.0) - parser (>= 3.0.1.1) - rubocop-rails (2.12.4) + rubocop-ast (1.24.0) + parser (>= 3.1.1.0) + rubocop-rails (2.17.4) activesupport (>= 4.2.0) rack (>= 1.1) - rubocop (>= 1.7.0, < 2.0) - ruby-enum (0.9.0) - i18n - ruby-filemagic (0.7.2-x86_64-linux-musl) + rubocop (>= 1.33.0, < 2.0) + ruby-filemagic (0.7.3-x86_64-linux-musl) ruby-progressbar (1.11.0) - ruby-statistics (3.0.0) + ruby-statistics (3.0.1) ruby-vips (2.1.4) ffi (~> 1.12) - ruby2ruby (2.4.4) + ruby2ruby (2.5.0) ruby_parser (~> 3.1) sexp_processor (~> 4.6) - ruby_dep (1.5.0) - ruby_parser (3.18.1) + ruby_parser (3.19.2) sexp_processor (~> 4.16) rubyzip (2.3.2) - rugged (1.2.0-x86_64-linux-musl) + rugged (1.5.0.1-x86_64-linux-musl) safe_yaml (1.0.6) safely_block (0.3.0) errbase (>= 0.1.1) @@ -546,12 +567,12 @@ GEM sprockets (> 3.0) sprockets-rails tilt - selenium-webdriver (4.1.0) - childprocess (>= 0.5, < 5.0) + selenium-webdriver (4.7.1) rexml (~> 3.2, >= 3.2.5) - rubyzip (>= 1.2.2) + rubyzip (>= 1.2.2, < 3.0) + websocket (~> 1.0) semantic_range (3.0.0) - sexp_processor (4.16.0) + sexp_processor (4.16.1) share-to-fediverse-jekyll-theme (0.1.4) jekyll (~> 4.0) jekyll-data (~> 1.1) @@ -566,22 +587,23 @@ GEM spree-api-client (0.2.4) fast_blank (~> 1) httparty (~> 0.18.0) - spring (2.1.1) - spring-watcher-listen (2.0.1) + spring (4.1.0) + spring-watcher-listen (2.1.0) listen (>= 2.7, < 4.0) - spring (>= 1.2, < 3.0) - sprockets (4.0.2) + spring (>= 4) + sprockets (4.2.0) concurrent-ruby (~> 1.0) - rack (> 1, < 3) - sprockets-rails (3.4.1) + rack (>= 2.2.4, < 4) + sprockets-rails (3.4.2) actionpack (>= 5.2) activesupport (>= 5.2) sprockets (>= 3.0.0) - sqlite3 (1.4.2-x86_64-linux-musl) - stackprof (0.2.17-x86_64-linux-musl) - sucker_punch (3.0.1) + sqlite3 (1.5.4-x86_64-linux-musl) + mini_portile2 (~> 2.8.0) + stackprof (0.2.23-x86_64-linux-musl) + sucker_punch (3.1.0) concurrent-ruby (~> 1.0) - sutty-archives (2.5.4) + sutty-archives (2.5.5) jekyll (>= 3.6, < 5.0) sutty-donaciones-jekyll-theme (0.1.2) jekyll (~> 4.0) @@ -600,33 +622,35 @@ GEM jekyll-include-cache (~> 0) jekyll-relative-urls (~> 0.0) jekyll-seo-tag (~> 2.1) - sutty-liquid (0.7.4) + sutty-liquid (0.11.3) fast_blank (~> 1.0) jekyll (~> 4) - sutty-minima (2.5.0) + sutty-minima (2.5.1) jekyll (>= 3.5, < 5.0) jekyll-feed (~> 0.9) + jekyll-relative-urls (~> 0) jekyll-seo-tag (~> 2.1) symbol-fstring (1.0.2-x86_64-linux-musl) sysexits (1.2.0) - temple (0.8.2) + temple (0.9.1) terminal-table (2.0.0) unicode-display_width (~> 1.1, >= 1.1.1) - thor (1.1.0) - tilt (2.0.10) - timecop (0.9.4) + thor (1.2.1) + tilt (2.0.11) + timecop (0.9.6) + timeout (0.3.1) turbolinks (5.2.1) turbolinks-source (~> 5.2) turbolinks-source (5.2.0) - tzinfo (2.0.4) + tzinfo (2.0.5) concurrent-ruby (~> 1.0) uglifier (4.2.0) execjs (>= 0.3.0, < 3) unf (0.1.4) unf_ext - unf_ext (0.0.8-x86_64-linux-musl) + unf_ext (0.0.8.2-x86_64-linux-musl) unicode-display_width (1.8.0) - validates_hostname (1.0.11) + validates_hostname (1.0.13) activerecord (>= 3.0) activesupport (>= 3.0) warden (1.2.9) @@ -642,15 +666,15 @@ GEM railties (>= 5.2) semantic_range (>= 2.3.0) webrick (1.7.0) + websocket (1.2.9) websocket-driver (0.7.5-x86_64-linux-musl) websocket-extensions (>= 0.1.0) websocket-extensions (0.1.5) xpath (3.2.0) nokogiri (~> 1.8) - zeitwerk (2.5.1) + zeitwerk (2.6.6) PLATFORMS - ruby x86_64-linux-musl DEPENDENCIES @@ -685,18 +709,19 @@ DEPENDENCIES hamlit-rails hiredis httparty + i18n (~> 1.8.0) icalendar image_processing inline_svg jbuilder (~> 2.5) - jekyll (~> 4.2) + jekyll (~> 4.2.0) jekyll-commonmark - jekyll-data! + jekyll-data jekyll-images jekyll-include-cache kaminari letter_opener - listen (>= 3.0.5, < 3.2) + listen loaf lockbox lograge @@ -715,23 +740,24 @@ DEPENDENCIES rack-cors rack-mini-profiler radios-comunitarias-jekyll-theme - rails (~> 6) + rails (~> 6.1.0) rails-i18n rails_warden recursero-jekyll-theme - redis + redis (~> 4.0) redis-rails + reek rollups! rubocop-rails rubyzip rugged - safe_yaml! + safe_yaml sassc-rails selenium-webdriver share-to-fediverse-jekyll-theme sourcemap spring - spring-watcher-listen (~> 2.0.0) + spring-watcher-listen sqlite3 stackprof sucker_punch @@ -745,12 +771,12 @@ DEPENDENCIES turbolinks (~> 5) uglifier (>= 1.3.0) validates_hostname - web-console (>= 3.3.0) + web-console webpacker yaml_db! RUBY VERSION - ruby 2.7.1p83 + ruby 2.7.6p219 BUNDLED WITH - 2.2.2 + 2.2.20 From 6a077a12806198052b4144feeb6508a101adefd2 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 28 Dec 2022 16:48:51 -0300 Subject: [PATCH 064/699] fix: ya tenemos todos los nodos #8912 --- app/controllers/stats_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/stats_controller.rb b/app/controllers/stats_controller.rb index c2c7bc58..893a16c9 100644 --- a/app/controllers/stats_controller.rb +++ b/app/controllers/stats_controller.rb @@ -209,7 +209,7 @@ class StatsController < ApplicationController # # @return [Integer] def nodes - @nodes ||= ENV.fetch('NODES', 1).to_i + @nodes ||= Rails.application.nodes.size + 1 end def period From aec5c98411551c058ba0209da7f804fa9f1b9b4d Mon Sep 17 00:00:00 2001 From: f Date: Wed, 28 Dec 2022 16:50:45 -0300 Subject: [PATCH 065/699] =?UTF-8?q?feat:=20usar=20DATABASE=5FURL=20en=20pr?= =?UTF-8?q?oducci=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/database.yml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/config/database.yml b/config/database.yml index cd599a24..41fae09c 100644 --- a/config/database.yml +++ b/config/database.yml @@ -26,8 +26,4 @@ test: user: <%= ENV['USER'] %> production: - adapter: postgresql - pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> - database: <%= ENV.fetch('DATABASE') { 'sutty' } %> - user: sutty - host: postgresql + url: <%= ENV['DATABASE_URL'] %> From 22406e1f329e51428634052c480d31cd295e8244 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 28 Dec 2022 16:52:09 -0300 Subject: [PATCH 066/699] fix: el _skel se clona directamente #8912 --- _skel | 1 - 1 file changed, 1 deletion(-) delete mode 120000 _skel diff --git a/_skel b/_skel deleted file mode 120000 index 8c20bb06..00000000 --- a/_skel +++ /dev/null @@ -1 +0,0 @@ -data/skel \ No newline at end of file From ddfc4f19f1b0f4afb180dbb6ff021ac55cd8f7d5 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 29 Dec 2022 13:26:01 -0300 Subject: [PATCH 067/699] fix: demasiados assets y packs --- .../.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json | 3 --- ...c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js | 3 --- ...e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js.gz | 3 --- ...52777379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css | 3 --- ...77379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css.gz | 3 --- ...63415e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css | 3 --- ...15e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css.gz | 3 --- ...9c41dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css | 3 --- ...1dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css.gz | 3 --- ...2d35e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css | 3 --- ...5e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css.gz | 3 --- ...2213db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css | 3 --- ...3db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css.gz | 3 --- ...46cc4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css | 3 --- ...c4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css.gz | 3 --- ...d6a2e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css | 3 --- ...2e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css.gz | 3 --- ...e855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg | 3 --- ...5d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg.gz | 3 --- ...391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js | 0 ...bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz | 3 --- ...65df0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css | 3 --- ...f0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css.gz | 3 --- ...732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css | 3 --- ...d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css.gz | 3 --- ...853543a3542af03c7dde9963359b1c0b9b725220a7f193e1324ecd8.png | 3 --- ...8a012c0011843ae337a8a20270c336948a8668df5cb89a8827299b.woff | 3 --- ...24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot | 3 --- ...35f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot.gz | 3 --- ...9d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg | 3 --- ...d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg.gz | 3 --- ...aebd1c28b404eec442cea53642644b3a73f91c5a4ab46859af772.woff2 | 3 --- ...e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf | 3 --- ...169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf.gz | 3 --- ...ee26b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css | 3 --- ...6b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css.gz | 3 --- ...fde4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css | 3 --- ...4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css.gz | 3 --- ...634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css | 3 --- ...efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css.gz | 3 --- ...9c00df26e81bc5a33bcf64350729f954b85f82d5e759fffec4e183a.png | 3 --- ...54162eb71f127f50460dbc55d405027189ebe90b20729ef18d13d36.png | 3 --- ...413b14db27db07285ade3951721e02244c31523284ab2d1ed53c3dc.png | 3 --- ...0eae9497ea201f3ad57549af343ddc1d24ddc78b055627cf14e9d5d.png | 3 --- ...391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js | 0 ...bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz | 3 --- ...3c16cdcefe54920aa7d3994a0683317ca9a58d35cbc5ec65996398c.png | 3 --- ...c4ba0e1f22a01cdf1ff7f120fa4d89a6cd0933d68f12951d19809b4.png | 3 --- ...a198f61f68a71ed8f9f9c701122c0c33b775d990edceae4aece567f.png | 3 --- ...54c2ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css | 3 --- ...2ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css.gz | 3 --- ...f2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css | 3 --- ...74010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css.gz | 3 --- ...ea5684d70cc5b51fb1ae3186386fe9363bf3edaf01663ac641341.woff2 | 3 --- ...0de8d5709d5162dbf0dcb9ab8df71e55f63cfd986bdb68ee2ade0b.woff | 3 --- ...b86358489cb76fc34ec0683d57a1b2635c43acbae45be3349d976.woff2 | 3 --- ...6451cd2fb3803333f4de3e11033437aa0c8d3d06edcb19e4e38ecb.woff | 3 --- ...da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg | 3 --- ...3a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg.gz | 3 --- ...70c82f2bf8fa2d68b3b32e5e2a1c0ed787dafa6ea1b98b52b96328f.png | 3 --- public/packs/css/application-3be2c380.css | 3 --- public/packs/css/application-3be2c380.css.br | 3 --- public/packs/css/application-3be2c380.css.gz | 3 --- public/packs/css/application-b5d3069a.css | 3 --- public/packs/css/application-b5d3069a.css.map | 3 --- public/packs/js/application-018b1004dae496014c6f.js | 3 --- public/packs/js/application-018b1004dae496014c6f.js.map | 3 --- public/packs/js/application-08fda2b6614d14c531a8.js | 3 --- public/packs/js/application-08fda2b6614d14c531a8.js.map | 3 --- public/packs/js/application-584663f92c60650aa431.js | 3 --- .../packs/js/application-584663f92c60650aa431.js.LICENSE.txt | 3 --- public/packs/js/application-584663f92c60650aa431.js.br | 3 --- public/packs/js/application-584663f92c60650aa431.js.gz | 3 --- public/packs/js/application-584663f92c60650aa431.js.map | 3 --- public/packs/js/application-584663f92c60650aa431.js.map.br | 3 --- public/packs/js/application-584663f92c60650aa431.js.map.gz | 3 --- public/packs/js/application-6b082bb3f5bdb1ba778d.js | 3 --- .../packs/js/application-6b082bb3f5bdb1ba778d.js.LICENSE.txt | 3 --- public/packs/js/application-6b082bb3f5bdb1ba778d.js.br | 3 --- public/packs/js/application-6b082bb3f5bdb1ba778d.js.gz | 3 --- public/packs/js/application-6b082bb3f5bdb1ba778d.js.map | 3 --- public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.br | 3 --- public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.gz | 3 --- public/packs/js/application-6ec2698b0ab8159792f4.js | 3 --- .../packs/js/application-6ec2698b0ab8159792f4.js.LICENSE.txt | 3 --- public/packs/js/application-6ec2698b0ab8159792f4.js.br | 3 --- public/packs/js/application-6ec2698b0ab8159792f4.js.gz | 3 --- public/packs/js/application-6ec2698b0ab8159792f4.js.map | 3 --- public/packs/js/application-6ec2698b0ab8159792f4.js.map.br | 3 --- public/packs/js/application-6ec2698b0ab8159792f4.js.map.gz | 3 --- public/packs/js/application-93ee6d5d58e163103c80.js | 3 --- public/packs/js/application-93ee6d5d58e163103c80.js.map | 3 --- public/packs/js/application-9404c5677871368ab12c.js | 3 --- .../packs/js/application-9404c5677871368ab12c.js.LICENSE.txt | 3 --- public/packs/js/application-9404c5677871368ab12c.js.br | 3 --- public/packs/js/application-9404c5677871368ab12c.js.gz | 3 --- public/packs/js/application-9404c5677871368ab12c.js.map | 3 --- public/packs/js/application-9404c5677871368ab12c.js.map.br | 3 --- public/packs/js/application-9404c5677871368ab12c.js.map.gz | 3 --- public/packs/js/application-9fc5173b6397548d2bd7.js | 3 --- .../packs/js/application-9fc5173b6397548d2bd7.js.LICENSE.txt | 3 --- public/packs/js/application-9fc5173b6397548d2bd7.js.br | 3 --- public/packs/js/application-9fc5173b6397548d2bd7.js.gz | 3 --- public/packs/js/application-9fc5173b6397548d2bd7.js.map | 3 --- public/packs/js/application-9fc5173b6397548d2bd7.js.map.br | 3 --- public/packs/js/application-9fc5173b6397548d2bd7.js.map.gz | 3 --- public/packs/js/application-a4b8ecf21f3540681ade.js | 3 --- .../packs/js/application-a4b8ecf21f3540681ade.js.LICENSE.txt | 3 --- public/packs/js/application-a4b8ecf21f3540681ade.js.br | 3 --- public/packs/js/application-a4b8ecf21f3540681ade.js.gz | 3 --- public/packs/js/application-a4b8ecf21f3540681ade.js.map | 3 --- public/packs/js/application-a4b8ecf21f3540681ade.js.map.br | 3 --- public/packs/js/application-a4b8ecf21f3540681ade.js.map.gz | 3 --- public/packs/js/application-da7d23395df54af9dd86.js | 3 --- .../packs/js/application-da7d23395df54af9dd86.js.LICENSE.txt | 3 --- public/packs/js/application-da7d23395df54af9dd86.js.br | 3 --- public/packs/js/application-da7d23395df54af9dd86.js.gz | 3 --- public/packs/js/application-da7d23395df54af9dd86.js.map | 3 --- public/packs/js/application-da7d23395df54af9dd86.js.map.br | 3 --- public/packs/js/application-da7d23395df54af9dd86.js.map.gz | 3 --- public/packs/js/application-ed013fc1a32ef22092f9.js | 3 --- public/packs/js/application-ed013fc1a32ef22092f9.js.map | 3 --- public/packs/manifest.json | 3 --- public/packs/manifest.json.br | 3 --- public/packs/manifest.json.gz | 3 --- public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff | 3 --- public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 | 3 --- public/packs/media/fonts/forkawesome-webfont-86541105.svg | 3 --- public/packs/media/fonts/forkawesome-webfont-86541105.svg.br | 3 --- public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz | 3 --- public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot | 3 --- public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br | 3 --- public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz | 3 --- public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf | 3 --- public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br | 3 --- public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz | 3 --- public/packs/media/images/layers-2x-8f2c4d11.png | 3 --- public/packs/media/images/layers-416d9136.png | 3 --- public/packs/media/images/marker-icon-2b3e1faf.png | 3 --- public/packs/media/images/marker-icon-2x-680f69f3.png | 3 --- public/packs/media/images/marker-shadow-a0c6cc14.png | 3 --- 141 files changed, 417 deletions(-) delete mode 100644 public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json delete mode 100644 public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js delete mode 100644 public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js.gz delete mode 100644 public/assets/application-0c5f86a0c52777379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css delete mode 100644 public/assets/application-0c5f86a0c52777379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css.gz delete mode 100644 public/assets/application-31a05920c63415e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css delete mode 100644 public/assets/application-31a05920c63415e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css.gz delete mode 100644 public/assets/application-33c5f64219c41dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css delete mode 100644 public/assets/application-33c5f64219c41dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css.gz delete mode 100644 public/assets/application-4942bb3192d35e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css delete mode 100644 public/assets/application-4942bb3192d35e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css.gz delete mode 100644 public/assets/application-5317bae732213db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css delete mode 100644 public/assets/application-5317bae732213db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css.gz delete mode 100644 public/assets/application-69a61807846cc4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css delete mode 100644 public/assets/application-69a61807846cc4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css.gz delete mode 100644 public/assets/application-78cdf135cd6a2e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css delete mode 100644 public/assets/application-78cdf135cd6a2e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css.gz delete mode 100644 public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg delete mode 100644 public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg.gz delete mode 100644 public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js delete mode 100644 public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz delete mode 100644 public/assets/blazer/application-b4928e72d65df0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css delete mode 100644 public/assets/blazer/application-b4928e72d65df0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css.gz delete mode 100644 public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css delete mode 100644 public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css.gz delete mode 100644 public/assets/blazer/favicon-ccead91b8853543a3542af03c7dde9963359b1c0b9b725220a7f193e1324ecd8.png delete mode 100644 public/assets/blazer/glyphicons-halflings-regular-0703369a358a012c0011843ae337a8a20270c336948a8668df5cb89a8827299b.woff delete mode 100644 public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot delete mode 100644 public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot.gz delete mode 100644 public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg delete mode 100644 public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg.gz delete mode 100644 public/assets/blazer/glyphicons-halflings-regular-403acfcf0cbaebd1c28b404eec442cea53642644b3a73f91c5a4ab46859af772.woff2 delete mode 100644 public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf delete mode 100644 public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf.gz delete mode 100644 public/assets/editor-4a1f1b9a0ee26b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css delete mode 100644 public/assets/editor-4a1f1b9a0ee26b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css.gz delete mode 100644 public/assets/editor-bf013ce0afde4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css delete mode 100644 public/assets/editor-bf013ce0afde4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css.gz delete mode 100644 public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css delete mode 100644 public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css.gz delete mode 100644 public/assets/icon_external_link-1af8262ac9c00df26e81bc5a33bcf64350729f954b85f82d5e759fffec4e183a.png delete mode 100644 public/assets/layers-0e356f4d554162eb71f127f50460dbc55d405027189ebe90b20729ef18d13d36.png delete mode 100644 public/assets/layers-2x-ba8fa601e413b14db27db07285ade3951721e02244c31523284ab2d1ed53c3dc.png delete mode 100644 public/assets/logo-e11ab53230eae9497ea201f3ad57549af343ddc1d24ddc78b055627cf14e9d5d.png delete mode 100644 public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js delete mode 100644 public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz delete mode 100644 public/assets/marker-icon-2x-091245b393c16cdcefe54920aa7d3994a0683317ca9a58d35cbc5ec65996398c.png delete mode 100644 public/assets/marker-icon-3d253116ec4ba0e1f22a01cdf1ff7f120fa4d89a6cd0933d68f12951d19809b4.png delete mode 100644 public/assets/marker-shadow-a2d94406ba198f61f68a71ed8f9f9c701122c0c33b775d990edceae4aece567f.png delete mode 100644 public/assets/new_editor-601e75fed54c2ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css delete mode 100644 public/assets/new_editor-601e75fed54c2ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css.gz delete mode 100644 public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css delete mode 100644 public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css.gz delete mode 100644 public/assets/saira/v3/SairaBold-subset-0c1968b6a54ea5684d70cc5b51fb1ae3186386fe9363bf3edaf01663ac641341.woff2 delete mode 100644 public/assets/saira/v3/SairaBold-subset.zopfli-2d3f8769110de8d5709d5162dbf0dcb9ab8df71e55f63cfd986bdb68ee2ade0b.woff delete mode 100644 public/assets/saira/v3/SairaMedium-subset-6d53d976d73b86358489cb76fc34ec0683d57a1b2635c43acbae45be3349d976.woff2 delete mode 100644 public/assets/saira/v3/SairaMedium-subset.zopfli-47d24dd6cc6451cd2fb3803333f4de3e11033437aa0c8d3d06edcb19e4e38ecb.woff delete mode 100644 public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg delete mode 100644 public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg.gz delete mode 100644 public/assets/sutty_cuadrada-547911cb970c82f2bf8fa2d68b3b32e5e2a1c0ed787dafa6ea1b98b52b96328f.png delete mode 100644 public/packs/css/application-3be2c380.css delete mode 100644 public/packs/css/application-3be2c380.css.br delete mode 100644 public/packs/css/application-3be2c380.css.gz delete mode 100644 public/packs/css/application-b5d3069a.css delete mode 100644 public/packs/css/application-b5d3069a.css.map delete mode 100644 public/packs/js/application-018b1004dae496014c6f.js delete mode 100644 public/packs/js/application-018b1004dae496014c6f.js.map delete mode 100644 public/packs/js/application-08fda2b6614d14c531a8.js delete mode 100644 public/packs/js/application-08fda2b6614d14c531a8.js.map delete mode 100644 public/packs/js/application-584663f92c60650aa431.js delete mode 100644 public/packs/js/application-584663f92c60650aa431.js.LICENSE.txt delete mode 100644 public/packs/js/application-584663f92c60650aa431.js.br delete mode 100644 public/packs/js/application-584663f92c60650aa431.js.gz delete mode 100644 public/packs/js/application-584663f92c60650aa431.js.map delete mode 100644 public/packs/js/application-584663f92c60650aa431.js.map.br delete mode 100644 public/packs/js/application-584663f92c60650aa431.js.map.gz delete mode 100644 public/packs/js/application-6b082bb3f5bdb1ba778d.js delete mode 100644 public/packs/js/application-6b082bb3f5bdb1ba778d.js.LICENSE.txt delete mode 100644 public/packs/js/application-6b082bb3f5bdb1ba778d.js.br delete mode 100644 public/packs/js/application-6b082bb3f5bdb1ba778d.js.gz delete mode 100644 public/packs/js/application-6b082bb3f5bdb1ba778d.js.map delete mode 100644 public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.br delete mode 100644 public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.gz delete mode 100644 public/packs/js/application-6ec2698b0ab8159792f4.js delete mode 100644 public/packs/js/application-6ec2698b0ab8159792f4.js.LICENSE.txt delete mode 100644 public/packs/js/application-6ec2698b0ab8159792f4.js.br delete mode 100644 public/packs/js/application-6ec2698b0ab8159792f4.js.gz delete mode 100644 public/packs/js/application-6ec2698b0ab8159792f4.js.map delete mode 100644 public/packs/js/application-6ec2698b0ab8159792f4.js.map.br delete mode 100644 public/packs/js/application-6ec2698b0ab8159792f4.js.map.gz delete mode 100644 public/packs/js/application-93ee6d5d58e163103c80.js delete mode 100644 public/packs/js/application-93ee6d5d58e163103c80.js.map delete mode 100644 public/packs/js/application-9404c5677871368ab12c.js delete mode 100644 public/packs/js/application-9404c5677871368ab12c.js.LICENSE.txt delete mode 100644 public/packs/js/application-9404c5677871368ab12c.js.br delete mode 100644 public/packs/js/application-9404c5677871368ab12c.js.gz delete mode 100644 public/packs/js/application-9404c5677871368ab12c.js.map delete mode 100644 public/packs/js/application-9404c5677871368ab12c.js.map.br delete mode 100644 public/packs/js/application-9404c5677871368ab12c.js.map.gz delete mode 100644 public/packs/js/application-9fc5173b6397548d2bd7.js delete mode 100644 public/packs/js/application-9fc5173b6397548d2bd7.js.LICENSE.txt delete mode 100644 public/packs/js/application-9fc5173b6397548d2bd7.js.br delete mode 100644 public/packs/js/application-9fc5173b6397548d2bd7.js.gz delete mode 100644 public/packs/js/application-9fc5173b6397548d2bd7.js.map delete mode 100644 public/packs/js/application-9fc5173b6397548d2bd7.js.map.br delete mode 100644 public/packs/js/application-9fc5173b6397548d2bd7.js.map.gz delete mode 100644 public/packs/js/application-a4b8ecf21f3540681ade.js delete mode 100644 public/packs/js/application-a4b8ecf21f3540681ade.js.LICENSE.txt delete mode 100644 public/packs/js/application-a4b8ecf21f3540681ade.js.br delete mode 100644 public/packs/js/application-a4b8ecf21f3540681ade.js.gz delete mode 100644 public/packs/js/application-a4b8ecf21f3540681ade.js.map delete mode 100644 public/packs/js/application-a4b8ecf21f3540681ade.js.map.br delete mode 100644 public/packs/js/application-a4b8ecf21f3540681ade.js.map.gz delete mode 100644 public/packs/js/application-da7d23395df54af9dd86.js delete mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.LICENSE.txt delete mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.br delete mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.gz delete mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.map delete mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.map.br delete mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.map.gz delete mode 100644 public/packs/js/application-ed013fc1a32ef22092f9.js delete mode 100644 public/packs/js/application-ed013fc1a32ef22092f9.js.map delete mode 100644 public/packs/manifest.json delete mode 100644 public/packs/manifest.json.br delete mode 100644 public/packs/manifest.json.gz delete mode 100644 public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff delete mode 100644 public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 delete mode 100644 public/packs/media/fonts/forkawesome-webfont-86541105.svg delete mode 100644 public/packs/media/fonts/forkawesome-webfont-86541105.svg.br delete mode 100644 public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz delete mode 100644 public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot delete mode 100644 public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br delete mode 100644 public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz delete mode 100644 public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf delete mode 100644 public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br delete mode 100644 public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz delete mode 100644 public/packs/media/images/layers-2x-8f2c4d11.png delete mode 100644 public/packs/media/images/layers-416d9136.png delete mode 100644 public/packs/media/images/marker-icon-2b3e1faf.png delete mode 100644 public/packs/media/images/marker-icon-2x-680f69f3.png delete mode 100644 public/packs/media/images/marker-shadow-a0c6cc14.png diff --git a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json b/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json deleted file mode 100644 index e1a60401..00000000 --- a/public/assets/.sprockets-manifest-f1fce95d04d484c978ee15887a3f1a7f.json +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a00ecab9b14ccc7e42fb155e5b805fe1ab5f8986a8c8ebd685b833d9b23b21c5 -size 12512 diff --git a/public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js b/public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js deleted file mode 100644 index 00eb1f78..00000000 --- a/public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:180d06e627b032f75d76aba6172b3aa58d171fb0a0f1142f29448d10fc5ec5a9 -size 16449 diff --git a/public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js.gz b/public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js.gz deleted file mode 100644 index b2fc969f..00000000 --- a/public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:31c60d7e03c08ec80d38703401399fce2531588d03a3988772180768b252f227 -size 5157 diff --git a/public/assets/application-0c5f86a0c52777379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css b/public/assets/application-0c5f86a0c52777379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css deleted file mode 100644 index 6340676f..00000000 --- a/public/assets/application-0c5f86a0c52777379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:10404ae91a435e0654a246dca74df0b0b43681536565ebe0396492e15b07430f -size 230680 diff --git a/public/assets/application-0c5f86a0c52777379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css.gz b/public/assets/application-0c5f86a0c52777379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css.gz deleted file mode 100644 index fe1a9d0a..00000000 --- a/public/assets/application-0c5f86a0c52777379548380ee219d4c7fa18fd9c93ba03d99fa4064c724578ab.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:88c5ea54aeff8bab5750e053821cdec4c11b8ac907439dd7177896d528166858 -size 31985 diff --git a/public/assets/application-31a05920c63415e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css b/public/assets/application-31a05920c63415e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css deleted file mode 100644 index cc0a9ef7..00000000 --- a/public/assets/application-31a05920c63415e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:476b52e868be64f591a83e4da9f003572846a727d242f30109ac5a2a6b3a2cf7 -size 229716 diff --git a/public/assets/application-31a05920c63415e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css.gz b/public/assets/application-31a05920c63415e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css.gz deleted file mode 100644 index f2fc0bfc..00000000 --- a/public/assets/application-31a05920c63415e43d947cc37191b7ceb21e08b835b3e2f4a93b4894776bff63.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e8daefb3ace2b117be818695b781bcbb97cce31d9a85c9dc4490b431e8a8c932 -size 31780 diff --git a/public/assets/application-33c5f64219c41dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css b/public/assets/application-33c5f64219c41dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css deleted file mode 100644 index 601e8c0f..00000000 --- a/public/assets/application-33c5f64219c41dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7243d3ec8ae52ef744711074e45df1582586b3224b7a361a06169d5bf8054ae6 -size 228737 diff --git a/public/assets/application-33c5f64219c41dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css.gz b/public/assets/application-33c5f64219c41dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css.gz deleted file mode 100644 index dc71a2c1..00000000 --- a/public/assets/application-33c5f64219c41dc26a2ef87bc0d0b83b32bea79f362dc470bffbf30e1edea95a.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:36ed28c75f767b2acb1c73d6d5ccdaa41f8f38136a34851313294894ab387688 -size 31691 diff --git a/public/assets/application-4942bb3192d35e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css b/public/assets/application-4942bb3192d35e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css deleted file mode 100644 index e715168f..00000000 --- a/public/assets/application-4942bb3192d35e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b6b2bb96b2b44504df5c18b7444ba75e6562fb202cb8be98bf9d4dc07551f995 -size 228716 diff --git a/public/assets/application-4942bb3192d35e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css.gz b/public/assets/application-4942bb3192d35e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css.gz deleted file mode 100644 index 4812cc23..00000000 --- a/public/assets/application-4942bb3192d35e3a29d575aef4962c19589edf607b5887032ca3c43bab6bb24d.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fb1b0617cf9b7c58b854fea5c08663bfcacb8e8990aac2f0984a50af9fe4c3b3 -size 31683 diff --git a/public/assets/application-5317bae732213db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css b/public/assets/application-5317bae732213db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css deleted file mode 100644 index 5e3d04b8..00000000 --- a/public/assets/application-5317bae732213db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:295df3a00dc2bfe780f325f7f691f873383f315c3e70bd5f91170d5b75f360f4 -size 228603 diff --git a/public/assets/application-5317bae732213db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css.gz b/public/assets/application-5317bae732213db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css.gz deleted file mode 100644 index de59bfe0..00000000 --- a/public/assets/application-5317bae732213db187afe034622693e1190ced5f8e05578fe3f92daa583c2755.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:114c8f61a864c481ff636f930d8bb3e7aaedbb1793d8a12cf660baa1e17fda77 -size 31651 diff --git a/public/assets/application-69a61807846cc4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css b/public/assets/application-69a61807846cc4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css deleted file mode 100644 index 76c2b6d4..00000000 --- a/public/assets/application-69a61807846cc4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:14e35ab2ac586e986328d8d8e8f62edb2421f8652a7bdcb7651cdb35d20a179b -size 229755 diff --git a/public/assets/application-69a61807846cc4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css.gz b/public/assets/application-69a61807846cc4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css.gz deleted file mode 100644 index 1d9af6ef..00000000 --- a/public/assets/application-69a61807846cc4eec1fdb9f9793a92a8ea90b021c13d02335821cf700c9f9ac1.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2eb68b7070d36cc52481ff728e3e4a75249622b4acbe154c60fab85656133964 -size 31792 diff --git a/public/assets/application-78cdf135cd6a2e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css b/public/assets/application-78cdf135cd6a2e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css deleted file mode 100644 index 2dddfbcd..00000000 --- a/public/assets/application-78cdf135cd6a2e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a2adbb392fe5cc367cc8d9a03fc3a2be09a3ce649c10d33c1370c1ba2971ea2c -size 230254 diff --git a/public/assets/application-78cdf135cd6a2e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css.gz b/public/assets/application-78cdf135cd6a2e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css.gz deleted file mode 100644 index 54e32509..00000000 --- a/public/assets/application-78cdf135cd6a2e7b1f4da003f81e2899c54ea7c91abaf08374fc1879c9d623fd.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fd6095d45601b0e2f843784307e66055361631d9097315ebae94f0adf7ece529 -size 31856 diff --git a/public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg b/public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg deleted file mode 100644 index 2a7f2458..00000000 --- a/public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:92f2db633d3e9611dc07743d7267204c40de2f8d75b9fa7e0646b195541f2d53 -size 571 diff --git a/public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg.gz b/public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg.gz deleted file mode 100644 index 0dc52f86..00000000 --- a/public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f0d23e3ef3dfd3bac465ba5335bd34063624d0a114ef13f60e664923da173364 -size 359 diff --git a/public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js b/public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js deleted file mode 100644 index e69de29b..00000000 diff --git a/public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz b/public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz deleted file mode 100644 index 4ac239a7..00000000 --- a/public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:854547623adbcdb1e391f7072dcac9dafe7f1618f7295ed4051b40b9e17d5a5d -size 20 diff --git a/public/assets/blazer/application-b4928e72d65df0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css b/public/assets/blazer/application-b4928e72d65df0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css deleted file mode 100644 index 2a35d4f2..00000000 --- a/public/assets/blazer/application-b4928e72d65df0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3e8dd33d9918c9303bd676eb1eb376f8db90521b913dcf22130dad607746af57 -size 134248 diff --git a/public/assets/blazer/application-b4928e72d65df0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css.gz b/public/assets/blazer/application-b4928e72d65df0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css.gz deleted file mode 100644 index 93518d06..00000000 --- a/public/assets/blazer/application-b4928e72d65df0862006e64f272efcb4501827e658811677dee59cd99aeb1854.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:28123f0ee35baf22ac539dae767aa4ee7762dff8406cd44e9fe736f6fe12e9c2 -size 23336 diff --git a/public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css b/public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css deleted file mode 100644 index 3070f7a1..00000000 --- a/public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c1c391e4691ea1afd08ba5daff66c790edd4b324af7dae390b616af36c7c2837 -size 134418 diff --git a/public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css.gz b/public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css.gz deleted file mode 100644 index 53b626fd..00000000 --- a/public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bb47cbb2677b411fe64de94a553e4af2059d24731dafe25237ec08715db6388a -size 23333 diff --git a/public/assets/blazer/favicon-ccead91b8853543a3542af03c7dde9963359b1c0b9b725220a7f193e1324ecd8.png b/public/assets/blazer/favicon-ccead91b8853543a3542af03c7dde9963359b1c0b9b725220a7f193e1324ecd8.png deleted file mode 100644 index f275a453..00000000 --- a/public/assets/blazer/favicon-ccead91b8853543a3542af03c7dde9963359b1c0b9b725220a7f193e1324ecd8.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:392743107d0d14fea5699cff1e80d209db7058ef660e643ff9c9f07e990ac084 -size 320 diff --git a/public/assets/blazer/glyphicons-halflings-regular-0703369a358a012c0011843ae337a8a20270c336948a8668df5cb89a8827299b.woff b/public/assets/blazer/glyphicons-halflings-regular-0703369a358a012c0011843ae337a8a20270c336948a8668df5cb89a8827299b.woff deleted file mode 100644 index 334f2da2..00000000 --- a/public/assets/blazer/glyphicons-halflings-regular-0703369a358a012c0011843ae337a8a20270c336948a8668df5cb89a8827299b.woff +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a26394f7ede100ca118eff2eda08596275a9839b959c226e15439557a5a80742 -size 23424 diff --git a/public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot b/public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot deleted file mode 100644 index 42ea705f..00000000 --- a/public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:13634da87d9e23f8c3ed9108ce1724d183a39ad072e73e1b3d8cbf646d2d0407 -size 20127 diff --git a/public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot.gz b/public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot.gz deleted file mode 100644 index 96b3c4c0..00000000 --- a/public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c3ae4ea8532a6a5e94a280757443d7a0151ef6c524ef270025f54c676ab87b52 -size 20056 diff --git a/public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg b/public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg deleted file mode 100644 index 781641cc..00000000 --- a/public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:42f60659d265c1a3c30f9fa42abcbb56bd4a53af4d83d316d6dd7a36903c43e5 -size 108738 diff --git a/public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg.gz b/public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg.gz deleted file mode 100644 index 6ea808de..00000000 --- a/public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0d040e5ba30ed70a31745441154d9089683726a0af359e55d4944c71a5eccc3f -size 26508 diff --git a/public/assets/blazer/glyphicons-halflings-regular-403acfcf0cbaebd1c28b404eec442cea53642644b3a73f91c5a4ab46859af772.woff2 b/public/assets/blazer/glyphicons-halflings-regular-403acfcf0cbaebd1c28b404eec442cea53642644b3a73f91c5a4ab46859af772.woff2 deleted file mode 100644 index 3336ba11..00000000 --- a/public/assets/blazer/glyphicons-halflings-regular-403acfcf0cbaebd1c28b404eec442cea53642644b3a73f91c5a4ab46859af772.woff2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fe185d11a49676890d47bb783312a0cda5a44c4039214094e7957b4c040ef11c -size 18028 diff --git a/public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf b/public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf deleted file mode 100644 index 233386da..00000000 --- a/public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e395044093757d82afcb138957d06a1ea9361bdcf0b442d06a18a8051af57456 -size 45404 diff --git a/public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf.gz b/public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf.gz deleted file mode 100644 index d9544ffc..00000000 --- a/public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:04d4a05b1528b492212df1107f13e1bdbb68a42ff36717a144036baea4a4265b -size 23360 diff --git a/public/assets/editor-4a1f1b9a0ee26b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css b/public/assets/editor-4a1f1b9a0ee26b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css deleted file mode 100644 index e88d86f2..00000000 --- a/public/assets/editor-4a1f1b9a0ee26b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:87a53467a482bf380c03e3b57e428fb03e40ecb285c3583ff7e9e4a6898c1f12 -size 2021 diff --git a/public/assets/editor-4a1f1b9a0ee26b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css.gz b/public/assets/editor-4a1f1b9a0ee26b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css.gz deleted file mode 100644 index 96479f89..00000000 --- a/public/assets/editor-4a1f1b9a0ee26b7179d6f3e88cd22da26bc97d793f072addc8d96a9cfffdd544.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9c9bed50695a831ce1c06a1cb8542feda05087edae66c1ccadbe5f42e106bf6f -size 671 diff --git a/public/assets/editor-bf013ce0afde4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css b/public/assets/editor-bf013ce0afde4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css deleted file mode 100644 index 77b81082..00000000 --- a/public/assets/editor-bf013ce0afde4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e4797893c199b6df1afac1451595e21af212f23943e5745f3a70e31f840f9882 -size 1908 diff --git a/public/assets/editor-bf013ce0afde4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css.gz b/public/assets/editor-bf013ce0afde4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css.gz deleted file mode 100644 index eec85b87..00000000 --- a/public/assets/editor-bf013ce0afde4a3b35f9baee137111610f08ddc5a18dbc190b9c2e1c22c53caf.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ac4f455ad6ede6d3ad82ed7fc3ca78bf6b7a8a2b1fde4dda34e7622859175172 -size 637 diff --git a/public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css b/public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css deleted file mode 100644 index 16758e87..00000000 --- a/public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4c30e9a9afbc33c17d773933cc2a0e07c0bfc7f39547bd304c7e0ce6cd459414 -size 2233 diff --git a/public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css.gz b/public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css.gz deleted file mode 100644 index dd4cedc2..00000000 --- a/public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:67f4df4516d69d51c0aa4850d3c9726ed8b87a8435d0e6e7580229c47ca05b1c -size 678 diff --git a/public/assets/icon_external_link-1af8262ac9c00df26e81bc5a33bcf64350729f954b85f82d5e759fffec4e183a.png b/public/assets/icon_external_link-1af8262ac9c00df26e81bc5a33bcf64350729f954b85f82d5e759fffec4e183a.png deleted file mode 100644 index e882b8bc..00000000 --- a/public/assets/icon_external_link-1af8262ac9c00df26e81bc5a33bcf64350729f954b85f82d5e759fffec4e183a.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0a0acd631fd5704e940b9f486d3234aa9ab871881733f48d6edd3cb1f1a09ffc -size 144 diff --git a/public/assets/layers-0e356f4d554162eb71f127f50460dbc55d405027189ebe90b20729ef18d13d36.png b/public/assets/layers-0e356f4d554162eb71f127f50460dbc55d405027189ebe90b20729ef18d13d36.png deleted file mode 100644 index 7b44754c..00000000 --- a/public/assets/layers-0e356f4d554162eb71f127f50460dbc55d405027189ebe90b20729ef18d13d36.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1dbbe9d028e292f36fcba8f8b3a28d5e8932754fc2215b9ac69e4cdecf5107c6 -size 696 diff --git a/public/assets/layers-2x-ba8fa601e413b14db27db07285ade3951721e02244c31523284ab2d1ed53c3dc.png b/public/assets/layers-2x-ba8fa601e413b14db27db07285ade3951721e02244c31523284ab2d1ed53c3dc.png deleted file mode 100644 index d3cf7e52..00000000 --- a/public/assets/layers-2x-ba8fa601e413b14db27db07285ade3951721e02244c31523284ab2d1ed53c3dc.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:066daca850d8ffbef007af00b06eac0015728dee279c51f3cb6c716df7c42edf -size 1259 diff --git a/public/assets/logo-e11ab53230eae9497ea201f3ad57549af343ddc1d24ddc78b055627cf14e9d5d.png b/public/assets/logo-e11ab53230eae9497ea201f3ad57549af343ddc1d24ddc78b055627cf14e9d5d.png deleted file mode 100644 index be79dc74..00000000 --- a/public/assets/logo-e11ab53230eae9497ea201f3ad57549af343ddc1d24ddc78b055627cf14e9d5d.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:abab4950f459ebf3f475d376d6fd468e735cab2d86c712222fa586569a273a09 -size 2001 diff --git a/public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js b/public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js deleted file mode 100644 index e69de29b..00000000 diff --git a/public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz b/public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz deleted file mode 100644 index 4ac239a7..00000000 --- a/public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:854547623adbcdb1e391f7072dcac9dafe7f1618f7295ed4051b40b9e17d5a5d -size 20 diff --git a/public/assets/marker-icon-2x-091245b393c16cdcefe54920aa7d3994a0683317ca9a58d35cbc5ec65996398c.png b/public/assets/marker-icon-2x-091245b393c16cdcefe54920aa7d3994a0683317ca9a58d35cbc5ec65996398c.png deleted file mode 100644 index 09e8445f..00000000 --- a/public/assets/marker-icon-2x-091245b393c16cdcefe54920aa7d3994a0683317ca9a58d35cbc5ec65996398c.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:00179c4c1ee830d3a108412ae0d294f55776cfeb085c60129a39aa6fc4ae2528 -size 2464 diff --git a/public/assets/marker-icon-3d253116ec4ba0e1f22a01cdf1ff7f120fa4d89a6cd0933d68f12951d19809b4.png b/public/assets/marker-icon-3d253116ec4ba0e1f22a01cdf1ff7f120fa4d89a6cd0933d68f12951d19809b4.png deleted file mode 100644 index b1789c76..00000000 --- a/public/assets/marker-icon-3d253116ec4ba0e1f22a01cdf1ff7f120fa4d89a6cd0933d68f12951d19809b4.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:574c3a5cca85f4114085b6841596d62f00d7c892c7b03f28cbfa301deb1dc437 -size 1466 diff --git a/public/assets/marker-shadow-a2d94406ba198f61f68a71ed8f9f9c701122c0c33b775d990edceae4aece567f.png b/public/assets/marker-shadow-a2d94406ba198f61f68a71ed8f9f9c701122c0c33b775d990edceae4aece567f.png deleted file mode 100644 index dc111216..00000000 --- a/public/assets/marker-shadow-a2d94406ba198f61f68a71ed8f9f9c701122c0c33b775d990edceae4aece567f.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:264f5c640339f042dd729062cfc04c17f8ea0f29882b538e3848ed8f10edb4da -size 618 diff --git a/public/assets/new_editor-601e75fed54c2ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css b/public/assets/new_editor-601e75fed54c2ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css deleted file mode 100644 index fcf8e1c9..00000000 --- a/public/assets/new_editor-601e75fed54c2ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:59a968b3c50bce356e2146b454da90513e2f291ca67a44d5939ca6c06a69d77c -size 132 diff --git a/public/assets/new_editor-601e75fed54c2ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css.gz b/public/assets/new_editor-601e75fed54c2ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css.gz deleted file mode 100644 index c16cab8f..00000000 --- a/public/assets/new_editor-601e75fed54c2ccee04dc7f76d77f6e109ed588962ed0ddab4c83f501a9f6365.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:07f3c59585dd7f56bbc9580caac24d90c18da7ac60fd05d7701e6120447586e8 -size 105 diff --git a/public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css b/public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css deleted file mode 100644 index 65a56f63..00000000 --- a/public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d967abb43a679cd18d84b114ad0616239a67241a8402185d2929e27b02e1a4b3 -size 171 diff --git a/public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css.gz b/public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css.gz deleted file mode 100644 index c1c591d4..00000000 --- a/public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:269db4e745d84eefb4c67094b17dea83f3e8f445d2b2346380cfa6dc267917c9 -size 115 diff --git a/public/assets/saira/v3/SairaBold-subset-0c1968b6a54ea5684d70cc5b51fb1ae3186386fe9363bf3edaf01663ac641341.woff2 b/public/assets/saira/v3/SairaBold-subset-0c1968b6a54ea5684d70cc5b51fb1ae3186386fe9363bf3edaf01663ac641341.woff2 deleted file mode 100644 index 580c899c..00000000 --- a/public/assets/saira/v3/SairaBold-subset-0c1968b6a54ea5684d70cc5b51fb1ae3186386fe9363bf3edaf01663ac641341.woff2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0ad13d7b01c301feecfb7f760791100710930be2d232fcdf97fb09a1301e4c3e -size 16264 diff --git a/public/assets/saira/v3/SairaBold-subset.zopfli-2d3f8769110de8d5709d5162dbf0dcb9ab8df71e55f63cfd986bdb68ee2ade0b.woff b/public/assets/saira/v3/SairaBold-subset.zopfli-2d3f8769110de8d5709d5162dbf0dcb9ab8df71e55f63cfd986bdb68ee2ade0b.woff deleted file mode 100644 index 94528fe4..00000000 --- a/public/assets/saira/v3/SairaBold-subset.zopfli-2d3f8769110de8d5709d5162dbf0dcb9ab8df71e55f63cfd986bdb68ee2ade0b.woff +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:cd722d9eb3a725f4188615c514c5c0e6b1b82de55a00dca194efa84704257dd2 -size 20120 diff --git a/public/assets/saira/v3/SairaMedium-subset-6d53d976d73b86358489cb76fc34ec0683d57a1b2635c43acbae45be3349d976.woff2 b/public/assets/saira/v3/SairaMedium-subset-6d53d976d73b86358489cb76fc34ec0683d57a1b2635c43acbae45be3349d976.woff2 deleted file mode 100644 index 7127bebe..00000000 --- a/public/assets/saira/v3/SairaMedium-subset-6d53d976d73b86358489cb76fc34ec0683d57a1b2635c43acbae45be3349d976.woff2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1ac4573ca9ed8e08a742d203171057acc3d8f5f49825d9351bd2a22c2d58e669 -size 16388 diff --git a/public/assets/saira/v3/SairaMedium-subset.zopfli-47d24dd6cc6451cd2fb3803333f4de3e11033437aa0c8d3d06edcb19e4e38ecb.woff b/public/assets/saira/v3/SairaMedium-subset.zopfli-47d24dd6cc6451cd2fb3803333f4de3e11033437aa0c8d3d06edcb19e4e38ecb.woff deleted file mode 100644 index bb8a3825..00000000 --- a/public/assets/saira/v3/SairaMedium-subset.zopfli-47d24dd6cc6451cd2fb3803333f4de3e11033437aa0c8d3d06edcb19e4e38ecb.woff +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4dec398a6c292da28349e76f94646d91d425cf4ddc7f91d749075f72209d0dab -size 20232 diff --git a/public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg b/public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg deleted file mode 100644 index 68fca50c..00000000 --- a/public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:eb86744bcec2d691c94d431627e412113f3648eb02420f2af86de3e3884c5a6d -size 1956 diff --git a/public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg.gz b/public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg.gz deleted file mode 100644 index 0aa59c0c..00000000 --- a/public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e63543cf36b2a279d9959df6e0b26083e4daa43204e068c73151a519a298ed45 -size 943 diff --git a/public/assets/sutty_cuadrada-547911cb970c82f2bf8fa2d68b3b32e5e2a1c0ed787dafa6ea1b98b52b96328f.png b/public/assets/sutty_cuadrada-547911cb970c82f2bf8fa2d68b3b32e5e2a1c0ed787dafa6ea1b98b52b96328f.png deleted file mode 100644 index 1b018802..00000000 --- a/public/assets/sutty_cuadrada-547911cb970c82f2bf8fa2d68b3b32e5e2a1c0ed787dafa6ea1b98b52b96328f.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:56aa311c3c5249e54d70f03b33fc681b593cd93e74b7af5d80316c5b7d1c6a76 -size 6868 diff --git a/public/packs/css/application-3be2c380.css b/public/packs/css/application-3be2c380.css deleted file mode 100644 index 544ddf74..00000000 --- a/public/packs/css/application-3be2c380.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e0179eec59d4881001e3d26ec0e25d8ca1257c6e4956d76f18cc97c3325a9625 -size 48029 diff --git a/public/packs/css/application-3be2c380.css.br b/public/packs/css/application-3be2c380.css.br deleted file mode 100644 index e5774ab0..00000000 --- a/public/packs/css/application-3be2c380.css.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:48597b99b6932b41dc4fac4fea2efb1dcb258dbbfafcb618649f002b4b6801d8 -size 9703 diff --git a/public/packs/css/application-3be2c380.css.gz b/public/packs/css/application-3be2c380.css.gz deleted file mode 100644 index 306dc931..00000000 --- a/public/packs/css/application-3be2c380.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bfeb6b9af353618bdc475d6c921197da2b8a9ae7685a91772658d41883843c12 -size 12022 diff --git a/public/packs/css/application-b5d3069a.css b/public/packs/css/application-b5d3069a.css deleted file mode 100644 index fd4f3326..00000000 --- a/public/packs/css/application-b5d3069a.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a6b8b46de3e622e5810be419291eb0dae1564c1f2baa1fd5eaa0278c2a80e4fa -size 59741 diff --git a/public/packs/css/application-b5d3069a.css.map b/public/packs/css/application-b5d3069a.css.map deleted file mode 100644 index fb5b8e5e..00000000 --- a/public/packs/css/application-b5d3069a.css.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:58ba1332af889ee56d2cc9f90aa05496ec20623bd76208fe0838dfc0825658d5 -size 146442 diff --git a/public/packs/js/application-018b1004dae496014c6f.js b/public/packs/js/application-018b1004dae496014c6f.js deleted file mode 100644 index 908d8f2c..00000000 --- a/public/packs/js/application-018b1004dae496014c6f.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:370c317b23f4a90ab4e9dfdbaef00bfd8c86eec40f59c8b88e30dfebe805c341 -size 4228848 diff --git a/public/packs/js/application-018b1004dae496014c6f.js.map b/public/packs/js/application-018b1004dae496014c6f.js.map deleted file mode 100644 index 256c5d29..00000000 --- a/public/packs/js/application-018b1004dae496014c6f.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fdda6797b71156fb0f8b27a3cf9d1cc5e5b9b797b7d6e00665b02f2e0c2a3999 -size 3950003 diff --git a/public/packs/js/application-08fda2b6614d14c531a8.js b/public/packs/js/application-08fda2b6614d14c531a8.js deleted file mode 100644 index e956b2ec..00000000 --- a/public/packs/js/application-08fda2b6614d14c531a8.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3c11672b6ec463f91e6c106f50d68bd155f11952d8c722d9bfe13d19cd160891 -size 4237779 diff --git a/public/packs/js/application-08fda2b6614d14c531a8.js.map b/public/packs/js/application-08fda2b6614d14c531a8.js.map deleted file mode 100644 index 59861ccd..00000000 --- a/public/packs/js/application-08fda2b6614d14c531a8.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:439a49af16860e59ec9849976b26109fb02a06be17fab20056a1c8d02e27af11 -size 3952749 diff --git a/public/packs/js/application-584663f92c60650aa431.js b/public/packs/js/application-584663f92c60650aa431.js deleted file mode 100644 index bbef5643..00000000 --- a/public/packs/js/application-584663f92c60650aa431.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f17c5daee0faa7b97dd3fdf3a4c3772ce90c3d3e0e3be37e81f5d4eb2cfade2a -size 1431046 diff --git a/public/packs/js/application-584663f92c60650aa431.js.LICENSE.txt b/public/packs/js/application-584663f92c60650aa431.js.LICENSE.txt deleted file mode 100644 index 89f0cf4f..00000000 --- a/public/packs/js/application-584663f92c60650aa431.js.LICENSE.txt +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f -size 629 diff --git a/public/packs/js/application-584663f92c60650aa431.js.br b/public/packs/js/application-584663f92c60650aa431.js.br deleted file mode 100644 index 43ef2b1d..00000000 --- a/public/packs/js/application-584663f92c60650aa431.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:53d603f3b12ee1be625abbb37addcaecf0858dd8b17cfae05c1e4ad2f346f832 -size 311949 diff --git a/public/packs/js/application-584663f92c60650aa431.js.gz b/public/packs/js/application-584663f92c60650aa431.js.gz deleted file mode 100644 index 22566383..00000000 --- a/public/packs/js/application-584663f92c60650aa431.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:dc3e91fc4ef6d0206b8a280a0541cd08e7667bb058fcd2a39d7752a9226c0a22 -size 414594 diff --git a/public/packs/js/application-584663f92c60650aa431.js.map b/public/packs/js/application-584663f92c60650aa431.js.map deleted file mode 100644 index a5ef6041..00000000 --- a/public/packs/js/application-584663f92c60650aa431.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:cefa4ea73065f3c322c20acf233d9208353ee07af81d5f507a1818320c2f1d8a -size 5584463 diff --git a/public/packs/js/application-584663f92c60650aa431.js.map.br b/public/packs/js/application-584663f92c60650aa431.js.map.br deleted file mode 100644 index d7dab3b0..00000000 --- a/public/packs/js/application-584663f92c60650aa431.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b767eab683c692731e20875611d68cca4731627af797b43a07020213a90e7bfd -size 1198004 diff --git a/public/packs/js/application-584663f92c60650aa431.js.map.gz b/public/packs/js/application-584663f92c60650aa431.js.map.gz deleted file mode 100644 index a2e52274..00000000 --- a/public/packs/js/application-584663f92c60650aa431.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:92adc1fef96b4e461fe8ae3846da39347b6bccaa2eab45be845fc8503338f05d -size 1469620 diff --git a/public/packs/js/application-6b082bb3f5bdb1ba778d.js b/public/packs/js/application-6b082bb3f5bdb1ba778d.js deleted file mode 100644 index 15c277d4..00000000 --- a/public/packs/js/application-6b082bb3f5bdb1ba778d.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:090fd34c097d9439e613cf15c641571756edc0d0c03bd4009dfa6f58125228c6 -size 1134513 diff --git a/public/packs/js/application-6b082bb3f5bdb1ba778d.js.LICENSE.txt b/public/packs/js/application-6b082bb3f5bdb1ba778d.js.LICENSE.txt deleted file mode 100644 index 89f0cf4f..00000000 --- a/public/packs/js/application-6b082bb3f5bdb1ba778d.js.LICENSE.txt +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f -size 629 diff --git a/public/packs/js/application-6b082bb3f5bdb1ba778d.js.br b/public/packs/js/application-6b082bb3f5bdb1ba778d.js.br deleted file mode 100644 index 3c564181..00000000 --- a/public/packs/js/application-6b082bb3f5bdb1ba778d.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c35e8802dcdfb5f1b4653867840bd8e93eee3be460b5727a1ac6d260c3ef1f68 -size 275594 diff --git a/public/packs/js/application-6b082bb3f5bdb1ba778d.js.gz b/public/packs/js/application-6b082bb3f5bdb1ba778d.js.gz deleted file mode 100644 index a0417ebf..00000000 --- a/public/packs/js/application-6b082bb3f5bdb1ba778d.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:671dc6668e122383801f798b4404db36c504c6bc034da11fdff7cbdcfe6ef259 -size 329197 diff --git a/public/packs/js/application-6b082bb3f5bdb1ba778d.js.map b/public/packs/js/application-6b082bb3f5bdb1ba778d.js.map deleted file mode 100644 index 2ae0724f..00000000 --- a/public/packs/js/application-6b082bb3f5bdb1ba778d.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6f9e3785b8b5a711061814a762673db74162fd484225ad935f3b151eed293752 -size 4658103 diff --git a/public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.br b/public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.br deleted file mode 100644 index e080d41f..00000000 --- a/public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e1ce233ef5959923eae27441a8e4e2a591f985d8870c5fe880fdf1e7f5c9163e -size 1003567 diff --git a/public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.gz b/public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.gz deleted file mode 100644 index f87f4901..00000000 --- a/public/packs/js/application-6b082bb3f5bdb1ba778d.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0a8ad75e00881f090fbe40aae9b0472b1d0c72db3724c21b6c6ea08b3fdfe675 -size 1222641 diff --git a/public/packs/js/application-6ec2698b0ab8159792f4.js b/public/packs/js/application-6ec2698b0ab8159792f4.js deleted file mode 100644 index 68f945d6..00000000 --- a/public/packs/js/application-6ec2698b0ab8159792f4.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:df4abdbde4a34c01dbc1d7f892a6668702b474e7f359801ada680622bdd0c33a -size 1409707 diff --git a/public/packs/js/application-6ec2698b0ab8159792f4.js.LICENSE.txt b/public/packs/js/application-6ec2698b0ab8159792f4.js.LICENSE.txt deleted file mode 100644 index 89f0cf4f..00000000 --- a/public/packs/js/application-6ec2698b0ab8159792f4.js.LICENSE.txt +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f -size 629 diff --git a/public/packs/js/application-6ec2698b0ab8159792f4.js.br b/public/packs/js/application-6ec2698b0ab8159792f4.js.br deleted file mode 100644 index 0b9895f6..00000000 --- a/public/packs/js/application-6ec2698b0ab8159792f4.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8fba3a9f3926623168c893cc34b000c69eac66542067c11344fb3bea19444a29 -size 294543 diff --git a/public/packs/js/application-6ec2698b0ab8159792f4.js.gz b/public/packs/js/application-6ec2698b0ab8159792f4.js.gz deleted file mode 100644 index eb6b1e63..00000000 --- a/public/packs/js/application-6ec2698b0ab8159792f4.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a261eec6ee92e760bfb9e3fcf1741e7e976a58093bd3b20a52a631dd1ed1a1f7 -size 410114 diff --git a/public/packs/js/application-6ec2698b0ab8159792f4.js.map b/public/packs/js/application-6ec2698b0ab8159792f4.js.map deleted file mode 100644 index 33a3db76..00000000 --- a/public/packs/js/application-6ec2698b0ab8159792f4.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8239782cd5ae90d9c830a1d504d39bdfda291fb6e6ca66c51d36be34d7f7a3f2 -size 5475672 diff --git a/public/packs/js/application-6ec2698b0ab8159792f4.js.map.br b/public/packs/js/application-6ec2698b0ab8159792f4.js.map.br deleted file mode 100644 index 7b1d69ed..00000000 --- a/public/packs/js/application-6ec2698b0ab8159792f4.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7a6497c85562762c51c27bb04305aef5776687c9ab062aa0d4e734e8d8e3ff9e -size 1177229 diff --git a/public/packs/js/application-6ec2698b0ab8159792f4.js.map.gz b/public/packs/js/application-6ec2698b0ab8159792f4.js.map.gz deleted file mode 100644 index 79d8eda0..00000000 --- a/public/packs/js/application-6ec2698b0ab8159792f4.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a4ff529020ecef6dc59c0a2ccedd79c1dcfbdf1a3b57c9f10d7480ef9d8a32c1 -size 1446613 diff --git a/public/packs/js/application-93ee6d5d58e163103c80.js b/public/packs/js/application-93ee6d5d58e163103c80.js deleted file mode 100644 index ed937e56..00000000 --- a/public/packs/js/application-93ee6d5d58e163103c80.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3c4ebb592789b6b75eaa51d8eb9e0ddfb32b30cba82aab225edd95a33c64d501 -size 4228875 diff --git a/public/packs/js/application-93ee6d5d58e163103c80.js.map b/public/packs/js/application-93ee6d5d58e163103c80.js.map deleted file mode 100644 index 6abf29b5..00000000 --- a/public/packs/js/application-93ee6d5d58e163103c80.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4884ec48b41cbe55ce7337fd0a79fe886d2c71bea65966a461e6f90f2835ab61 -size 3950053 diff --git a/public/packs/js/application-9404c5677871368ab12c.js b/public/packs/js/application-9404c5677871368ab12c.js deleted file mode 100644 index 18cacae1..00000000 --- a/public/packs/js/application-9404c5677871368ab12c.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d1ada386ae45181446681de09ba1dc07462e2322db69d5d9bf7b5938a1ad6e51 -size 1432484 diff --git a/public/packs/js/application-9404c5677871368ab12c.js.LICENSE.txt b/public/packs/js/application-9404c5677871368ab12c.js.LICENSE.txt deleted file mode 100644 index 89f0cf4f..00000000 --- a/public/packs/js/application-9404c5677871368ab12c.js.LICENSE.txt +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f -size 629 diff --git a/public/packs/js/application-9404c5677871368ab12c.js.br b/public/packs/js/application-9404c5677871368ab12c.js.br deleted file mode 100644 index 19461359..00000000 --- a/public/packs/js/application-9404c5677871368ab12c.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d09802cea0f59a507699cf19a8b159a8b2241a210d271d24b04bb4137b0d8891 -size 312391 diff --git a/public/packs/js/application-9404c5677871368ab12c.js.gz b/public/packs/js/application-9404c5677871368ab12c.js.gz deleted file mode 100644 index ede25d3c..00000000 --- a/public/packs/js/application-9404c5677871368ab12c.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c1ff1ba3a6b47bc2958e0eaf84fc5a57c8aa3f985fbef5e02b7e11dc69011880 -size 415151 diff --git a/public/packs/js/application-9404c5677871368ab12c.js.map b/public/packs/js/application-9404c5677871368ab12c.js.map deleted file mode 100644 index a7aebfc8..00000000 --- a/public/packs/js/application-9404c5677871368ab12c.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d79828fe41214b025b1828341d24106ff32c8db45234900a691e43d988e7e665 -size 5589817 diff --git a/public/packs/js/application-9404c5677871368ab12c.js.map.br b/public/packs/js/application-9404c5677871368ab12c.js.map.br deleted file mode 100644 index 9fab7725..00000000 --- a/public/packs/js/application-9404c5677871368ab12c.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e8bc22abe1a45032d19e0a5227d01c1408b9b9dad29a4a000e19c6f5d3aebfbe -size 1198487 diff --git a/public/packs/js/application-9404c5677871368ab12c.js.map.gz b/public/packs/js/application-9404c5677871368ab12c.js.map.gz deleted file mode 100644 index 7ff35862..00000000 --- a/public/packs/js/application-9404c5677871368ab12c.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:28271dc77cabc1b41093d11aed13a7bb3577fc026024c22d341c919dc29302af -size 1471326 diff --git a/public/packs/js/application-9fc5173b6397548d2bd7.js b/public/packs/js/application-9fc5173b6397548d2bd7.js deleted file mode 100644 index 3ccfc59a..00000000 --- a/public/packs/js/application-9fc5173b6397548d2bd7.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:149bc141d3def870a677f28bdaf1e5d8192ae073a4fd108facfe35779be9c62c -size 1134514 diff --git a/public/packs/js/application-9fc5173b6397548d2bd7.js.LICENSE.txt b/public/packs/js/application-9fc5173b6397548d2bd7.js.LICENSE.txt deleted file mode 100644 index 89f0cf4f..00000000 --- a/public/packs/js/application-9fc5173b6397548d2bd7.js.LICENSE.txt +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f -size 629 diff --git a/public/packs/js/application-9fc5173b6397548d2bd7.js.br b/public/packs/js/application-9fc5173b6397548d2bd7.js.br deleted file mode 100644 index 54ed7384..00000000 --- a/public/packs/js/application-9fc5173b6397548d2bd7.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6c1425feb969053868020b8fe4080a166b970440fbaf2900a9ae90c70b116b30 -size 275829 diff --git a/public/packs/js/application-9fc5173b6397548d2bd7.js.gz b/public/packs/js/application-9fc5173b6397548d2bd7.js.gz deleted file mode 100644 index 3bb1f6fd..00000000 --- a/public/packs/js/application-9fc5173b6397548d2bd7.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bd756a862bc1f9d02959f7f0244dfc48afd16d1d0172cd0cd1bcdf6f24c4798e -size 329206 diff --git a/public/packs/js/application-9fc5173b6397548d2bd7.js.map b/public/packs/js/application-9fc5173b6397548d2bd7.js.map deleted file mode 100644 index 053e8972..00000000 --- a/public/packs/js/application-9fc5173b6397548d2bd7.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:05923150adefc28adfc8ce3419e282fc3a127941a6965c782ea2cba3285dceb4 -size 4658135 diff --git a/public/packs/js/application-9fc5173b6397548d2bd7.js.map.br b/public/packs/js/application-9fc5173b6397548d2bd7.js.map.br deleted file mode 100644 index 9cc1e76f..00000000 --- a/public/packs/js/application-9fc5173b6397548d2bd7.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:607e3841598121ed016057dc216d3c7b51bd28cc621a1bd050be02d96d67c3a9 -size 1003598 diff --git a/public/packs/js/application-9fc5173b6397548d2bd7.js.map.gz b/public/packs/js/application-9fc5173b6397548d2bd7.js.map.gz deleted file mode 100644 index acf58647..00000000 --- a/public/packs/js/application-9fc5173b6397548d2bd7.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:963a2f4c3583643e1ec3b582d61d34d4a3e1d29434f672674542c71069eef17d -size 1222659 diff --git a/public/packs/js/application-a4b8ecf21f3540681ade.js b/public/packs/js/application-a4b8ecf21f3540681ade.js deleted file mode 100644 index ed00024a..00000000 --- a/public/packs/js/application-a4b8ecf21f3540681ade.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c63863afea18dfcb3e6420685348f2ebf7b531e378ca1b7a834a55f76bdd2739 -size 1430985 diff --git a/public/packs/js/application-a4b8ecf21f3540681ade.js.LICENSE.txt b/public/packs/js/application-a4b8ecf21f3540681ade.js.LICENSE.txt deleted file mode 100644 index 89f0cf4f..00000000 --- a/public/packs/js/application-a4b8ecf21f3540681ade.js.LICENSE.txt +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f -size 629 diff --git a/public/packs/js/application-a4b8ecf21f3540681ade.js.br b/public/packs/js/application-a4b8ecf21f3540681ade.js.br deleted file mode 100644 index d45ed7bd..00000000 --- a/public/packs/js/application-a4b8ecf21f3540681ade.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c7ef0494c68b8695bc30ded8d4b218164906a37d060cbcba8c65751199b36a54 -size 311665 diff --git a/public/packs/js/application-a4b8ecf21f3540681ade.js.gz b/public/packs/js/application-a4b8ecf21f3540681ade.js.gz deleted file mode 100644 index f6fca359..00000000 --- a/public/packs/js/application-a4b8ecf21f3540681ade.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b455e78ba065a06e35c3819720001d247eeee7b017517deca0cc9ab25c24bc7a -size 414586 diff --git a/public/packs/js/application-a4b8ecf21f3540681ade.js.map b/public/packs/js/application-a4b8ecf21f3540681ade.js.map deleted file mode 100644 index 3ca13b32..00000000 --- a/public/packs/js/application-a4b8ecf21f3540681ade.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:99ff3989d16483b6a7ad5761a1b95eddcd04f0e7806cc65fb8fa97525306d05b -size 5584349 diff --git a/public/packs/js/application-a4b8ecf21f3540681ade.js.map.br b/public/packs/js/application-a4b8ecf21f3540681ade.js.map.br deleted file mode 100644 index 177ce073..00000000 --- a/public/packs/js/application-a4b8ecf21f3540681ade.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:085508477e0ce3059a64f409d03b7b3a4b55939b5457ee9bb1e30abd04d26d4d -size 1197598 diff --git a/public/packs/js/application-a4b8ecf21f3540681ade.js.map.gz b/public/packs/js/application-a4b8ecf21f3540681ade.js.map.gz deleted file mode 100644 index 8bcdd150..00000000 --- a/public/packs/js/application-a4b8ecf21f3540681ade.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:17a82addece35e6493d792be0d7e18f935faa79f0b7c90c42b5df0d72fda844f -size 1469640 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js b/public/packs/js/application-da7d23395df54af9dd86.js deleted file mode 100644 index c726329d..00000000 --- a/public/packs/js/application-da7d23395df54af9dd86.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:383a5ef45331bc051cb4386fa2d577280a0c0f70c445703f78cf50c0b16e2202 -size 1447613 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.LICENSE.txt b/public/packs/js/application-da7d23395df54af9dd86.js.LICENSE.txt deleted file mode 100644 index 89f0cf4f..00000000 --- a/public/packs/js/application-da7d23395df54af9dd86.js.LICENSE.txt +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f -size 629 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.br b/public/packs/js/application-da7d23395df54af9dd86.js.br deleted file mode 100644 index 4d1feb60..00000000 --- a/public/packs/js/application-da7d23395df54af9dd86.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b7b47124256f6bc1b9ac4c4ba10cfc7c1d7258d1696bf4028cf5b996f07053d8 -size 315845 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.gz b/public/packs/js/application-da7d23395df54af9dd86.js.gz deleted file mode 100644 index d1f4b00f..00000000 --- a/public/packs/js/application-da7d23395df54af9dd86.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bd8671495660a5b744e57f18f4b3347c8c7b2a1c20e2a1310e0da37d6e110e22 -size 419598 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.map b/public/packs/js/application-da7d23395df54af9dd86.js.map deleted file mode 100644 index 03d7df3d..00000000 --- a/public/packs/js/application-da7d23395df54af9dd86.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6b8e227ee411590db0f0aa670fb94551fb58af0cb78f70196e33ec144d182d58 -size 5640997 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.map.br b/public/packs/js/application-da7d23395df54af9dd86.js.map.br deleted file mode 100644 index 9aca14c7..00000000 --- a/public/packs/js/application-da7d23395df54af9dd86.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:185d83227941abf8846139ab3497ddc9bc68f07489003ec38fccb142cc39ca51 -size 1210315 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.map.gz b/public/packs/js/application-da7d23395df54af9dd86.js.map.gz deleted file mode 100644 index 9b735e1b..00000000 --- a/public/packs/js/application-da7d23395df54af9dd86.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:176ea6c12e03ed2f9cb5cc0e66b1adc47e6d8ff061ebfdc5aeda0eddf4a9d1cc -size 1485330 diff --git a/public/packs/js/application-ed013fc1a32ef22092f9.js b/public/packs/js/application-ed013fc1a32ef22092f9.js deleted file mode 100644 index 4d51a4b9..00000000 --- a/public/packs/js/application-ed013fc1a32ef22092f9.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d3d5d944d0b41ba8a2a3c3db95171d015c4a5b8c03015badd724a96351e89bc2 -size 4237806 diff --git a/public/packs/js/application-ed013fc1a32ef22092f9.js.map b/public/packs/js/application-ed013fc1a32ef22092f9.js.map deleted file mode 100644 index 41279ab9..00000000 --- a/public/packs/js/application-ed013fc1a32ef22092f9.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:58919335599e0406049e6673e110febd946fc0b3cde26e56bb0603d5bc9ce04a -size 3952799 diff --git a/public/packs/manifest.json b/public/packs/manifest.json deleted file mode 100644 index a2e83d91..00000000 --- a/public/packs/manifest.json +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5243384bb8f18bb45a29f76e6e70db6d9437c10672b7b46e763d907b4776135b -size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br deleted file mode 100644 index 7d822c0e..00000000 --- a/public/packs/manifest.json.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:337aa8b87e8d1be79a9829c0fc01dc84862e7b3602d5c81b4f12d18c6e76cce8 -size 319 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz deleted file mode 100644 index a3afbddd..00000000 --- a/public/packs/manifest.json.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:884376efda9b7f5c5c4cc1cfcca69a8fe883ea39061d3352782bd8e0369e4a1d -size 366 diff --git a/public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff b/public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff deleted file mode 100644 index 8925c5d3..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:53ab31062cf740aa76615d2c98aea80b177845d7ed95de45889b3824b0e1597c -size 115148 diff --git a/public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 b/public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 deleted file mode 100644 index 52865bdb..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:84422de97eb1cf27bcb9bca4f3fbb18f3ebc711647b09c68292f5f43c89d5064 -size 91624 diff --git a/public/packs/media/fonts/forkawesome-webfont-86541105.svg b/public/packs/media/fonts/forkawesome-webfont-86541105.svg deleted file mode 100644 index af45aadc..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-86541105.svg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:505e7f9fe61ba6d17d8514b5d0c3a75166dab1b57527e2d3a3baf2047624ba93 -size 480784 diff --git a/public/packs/media/fonts/forkawesome-webfont-86541105.svg.br b/public/packs/media/fonts/forkawesome-webfont-86541105.svg.br deleted file mode 100644 index 827ed0bc..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-86541105.svg.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4df44c3056ab68d2e1cf1970189876295b62db1640e6ed885c78d8c46f94e66f -size 126249 diff --git a/public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz b/public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz deleted file mode 100644 index 0676bab5..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:49664085aa6a37335724f0288531562f352e81d10fdfeadd4a8ed0764eae2f50 -size 160947 diff --git a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot deleted file mode 100644 index 37e93df5..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0d96fdd7d6854cf875ce3090e017b0078ae2f7e923763bcbb90748a01c6fb7fd -size 188946 diff --git a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br deleted file mode 100644 index 01f63da2..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:36cb46345792080af5dbe8bd742dc632a3821276fff76e57877c93c0e8afb00a -size 107072 diff --git a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz deleted file mode 100644 index 5bb32cdc..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:413b68fbd4bc71d5aa98410c6f8048f971b55e7d824180d0fab665cc55c3d9a3 -size 115772 diff --git a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf deleted file mode 100644 index e6380d0e..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3e4beb40f0cc19ec55f2ab741d42e806fc6155ccf6e40e50965196c0bcc6aba4 -size 188756 diff --git a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br deleted file mode 100644 index c35abc27..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:de3e4f20e5341214cc1292a61d0f49d833187e862fb1fbfeb746d25f0465ee6b -size 106884 diff --git a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz deleted file mode 100644 index 44d9de5a..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:26c357b09eb784753afcd35a1aa47fe65378a52c95db0496e98dfb999c9ab1b8 -size 115685 diff --git a/public/packs/media/images/layers-2x-8f2c4d11.png b/public/packs/media/images/layers-2x-8f2c4d11.png deleted file mode 100644 index d3cf7e52..00000000 --- a/public/packs/media/images/layers-2x-8f2c4d11.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:066daca850d8ffbef007af00b06eac0015728dee279c51f3cb6c716df7c42edf -size 1259 diff --git a/public/packs/media/images/layers-416d9136.png b/public/packs/media/images/layers-416d9136.png deleted file mode 100644 index 7b44754c..00000000 --- a/public/packs/media/images/layers-416d9136.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1dbbe9d028e292f36fcba8f8b3a28d5e8932754fc2215b9ac69e4cdecf5107c6 -size 696 diff --git a/public/packs/media/images/marker-icon-2b3e1faf.png b/public/packs/media/images/marker-icon-2b3e1faf.png deleted file mode 100644 index b1789c76..00000000 --- a/public/packs/media/images/marker-icon-2b3e1faf.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:574c3a5cca85f4114085b6841596d62f00d7c892c7b03f28cbfa301deb1dc437 -size 1466 diff --git a/public/packs/media/images/marker-icon-2x-680f69f3.png b/public/packs/media/images/marker-icon-2x-680f69f3.png deleted file mode 100644 index 09e8445f..00000000 --- a/public/packs/media/images/marker-icon-2x-680f69f3.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:00179c4c1ee830d3a108412ae0d294f55776cfeb085c60129a39aa6fc4ae2528 -size 2464 diff --git a/public/packs/media/images/marker-shadow-a0c6cc14.png b/public/packs/media/images/marker-shadow-a0c6cc14.png deleted file mode 100644 index dc111216..00000000 --- a/public/packs/media/images/marker-shadow-a0c6cc14.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:264f5c640339f042dd729062cfc04c17f8ea0f29882b538e3848ed8f10edb4da -size 618 From 7522ab1cd6a4fe1ff7f3b67681255f90013db899 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 29 Dec 2022 13:27:38 -0300 Subject: [PATCH 068/699] fix: assets y packs --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 3 +++ ...c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js | 3 +++ ...e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js.gz | 3 +++ ...f17b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css | 3 +++ ...b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css.gz | 3 +++ ...e855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg | 3 +++ ...5d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg.gz | 3 +++ ...391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js | 0 ...bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz | 3 +++ ...732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css | 3 +++ ...d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css.gz | 3 +++ ...853543a3542af03c7dde9963359b1c0b9b725220a7f193e1324ecd8.png | 3 +++ ...8a012c0011843ae337a8a20270c336948a8668df5cb89a8827299b.woff | 3 +++ ...24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot | 3 +++ ...35f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot.gz | 3 +++ ...9d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg | 3 +++ ...d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg.gz | 3 +++ ...aebd1c28b404eec442cea53642644b3a73f91c5a4ab46859af772.woff2 | 3 +++ ...e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf | 3 +++ ...169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf.gz | 3 +++ ...0468043c2d1c998a38d45fac02beffa1b09088918b9c433c0750b4f.css | 3 +++ ...8043c2d1c998a38d45fac02beffa1b09088918b9c433c0750b4f.css.gz | 3 +++ ...9c00df26e81bc5a33bcf64350729f954b85f82d5e759fffec4e183a.png | 3 +++ ...54162eb71f127f50460dbc55d405027189ebe90b20729ef18d13d36.png | 3 +++ ...413b14db27db07285ade3951721e02244c31523284ab2d1ed53c3dc.png | 3 +++ ...0eae9497ea201f3ad57549af343ddc1d24ddc78b055627cf14e9d5d.png | 3 +++ ...391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js | 0 ...bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz | 3 +++ ...3c16cdcefe54920aa7d3994a0683317ca9a58d35cbc5ec65996398c.png | 3 +++ ...c4ba0e1f22a01cdf1ff7f120fa4d89a6cd0933d68f12951d19809b4.png | 3 +++ ...a198f61f68a71ed8f9f9c701122c0c33b775d990edceae4aece567f.png | 3 +++ ...f2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css | 3 +++ ...74010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css.gz | 3 +++ ...ea5684d70cc5b51fb1ae3186386fe9363bf3edaf01663ac641341.woff2 | 3 +++ ...0de8d5709d5162dbf0dcb9ab8df71e55f63cfd986bdb68ee2ade0b.woff | 3 +++ ...b86358489cb76fc34ec0683d57a1b2635c43acbae45be3349d976.woff2 | 3 +++ ...6451cd2fb3803333f4de3e11033437aa0c8d3d06edcb19e4e38ecb.woff | 3 +++ ...da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg | 3 +++ ...3a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg.gz | 3 +++ ...70c82f2bf8fa2d68b3b32e5e2a1c0ed787dafa6ea1b98b52b96328f.png | 3 +++ public/packs/css/application-3be2c380.css | 3 +++ public/packs/css/application-3be2c380.css.br | 3 +++ public/packs/css/application-3be2c380.css.gz | 3 +++ public/packs/js/application-7f30b778498ba886815d.js | 3 +++ .../packs/js/application-7f30b778498ba886815d.js.LICENSE.txt | 3 +++ public/packs/js/application-7f30b778498ba886815d.js.br | 3 +++ public/packs/js/application-7f30b778498ba886815d.js.gz | 3 +++ public/packs/js/application-7f30b778498ba886815d.js.map | 3 +++ public/packs/js/application-7f30b778498ba886815d.js.map.br | 3 +++ public/packs/js/application-7f30b778498ba886815d.js.map.gz | 3 +++ public/packs/manifest.json | 3 +++ public/packs/manifest.json.br | 3 +++ public/packs/manifest.json.gz | 3 +++ public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff | 3 +++ public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 | 3 +++ public/packs/media/fonts/forkawesome-webfont-86541105.svg | 3 +++ public/packs/media/fonts/forkawesome-webfont-86541105.svg.br | 3 +++ public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz | 3 +++ public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot | 3 +++ public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br | 3 +++ public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz | 3 +++ public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf | 3 +++ public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br | 3 +++ public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz | 3 +++ public/packs/media/images/layers-2x-8f2c4d11.png | 3 +++ public/packs/media/images/layers-416d9136.png | 3 +++ public/packs/media/images/marker-icon-2b3e1faf.png | 3 +++ public/packs/media/images/marker-icon-2x-680f69f3.png | 3 +++ public/packs/media/images/marker-shadow-a0c6cc14.png | 3 +++ 69 files changed, 201 insertions(+) create mode 100644 public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json create mode 100644 public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js create mode 100644 public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js.gz create mode 100644 public/assets/application-50dc9093cf17b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css create mode 100644 public/assets/application-50dc9093cf17b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css.gz create mode 100644 public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg create mode 100644 public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg.gz create mode 100644 public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js create mode 100644 public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz create mode 100644 public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css create mode 100644 public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css.gz create mode 100644 public/assets/blazer/favicon-ccead91b8853543a3542af03c7dde9963359b1c0b9b725220a7f193e1324ecd8.png create mode 100644 public/assets/blazer/glyphicons-halflings-regular-0703369a358a012c0011843ae337a8a20270c336948a8668df5cb89a8827299b.woff create mode 100644 public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot create mode 100644 public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot.gz create mode 100644 public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg create mode 100644 public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg.gz create mode 100644 public/assets/blazer/glyphicons-halflings-regular-403acfcf0cbaebd1c28b404eec442cea53642644b3a73f91c5a4ab46859af772.woff2 create mode 100644 public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf create mode 100644 public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf.gz create mode 100644 public/assets/editor-39df1ce9e0468043c2d1c998a38d45fac02beffa1b09088918b9c433c0750b4f.css create mode 100644 public/assets/editor-39df1ce9e0468043c2d1c998a38d45fac02beffa1b09088918b9c433c0750b4f.css.gz create mode 100644 public/assets/icon_external_link-1af8262ac9c00df26e81bc5a33bcf64350729f954b85f82d5e759fffec4e183a.png create mode 100644 public/assets/layers-0e356f4d554162eb71f127f50460dbc55d405027189ebe90b20729ef18d13d36.png create mode 100644 public/assets/layers-2x-ba8fa601e413b14db27db07285ade3951721e02244c31523284ab2d1ed53c3dc.png create mode 100644 public/assets/logo-e11ab53230eae9497ea201f3ad57549af343ddc1d24ddc78b055627cf14e9d5d.png create mode 100644 public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js create mode 100644 public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz create mode 100644 public/assets/marker-icon-2x-091245b393c16cdcefe54920aa7d3994a0683317ca9a58d35cbc5ec65996398c.png create mode 100644 public/assets/marker-icon-3d253116ec4ba0e1f22a01cdf1ff7f120fa4d89a6cd0933d68f12951d19809b4.png create mode 100644 public/assets/marker-shadow-a2d94406ba198f61f68a71ed8f9f9c701122c0c33b775d990edceae4aece567f.png create mode 100644 public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css create mode 100644 public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css.gz create mode 100644 public/assets/saira/v3/SairaBold-subset-0c1968b6a54ea5684d70cc5b51fb1ae3186386fe9363bf3edaf01663ac641341.woff2 create mode 100644 public/assets/saira/v3/SairaBold-subset.zopfli-2d3f8769110de8d5709d5162dbf0dcb9ab8df71e55f63cfd986bdb68ee2ade0b.woff create mode 100644 public/assets/saira/v3/SairaMedium-subset-6d53d976d73b86358489cb76fc34ec0683d57a1b2635c43acbae45be3349d976.woff2 create mode 100644 public/assets/saira/v3/SairaMedium-subset.zopfli-47d24dd6cc6451cd2fb3803333f4de3e11033437aa0c8d3d06edcb19e4e38ecb.woff create mode 100644 public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg create mode 100644 public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg.gz create mode 100644 public/assets/sutty_cuadrada-547911cb970c82f2bf8fa2d68b3b32e5e2a1c0ed787dafa6ea1b98b52b96328f.png create mode 100644 public/packs/css/application-3be2c380.css create mode 100644 public/packs/css/application-3be2c380.css.br create mode 100644 public/packs/css/application-3be2c380.css.gz create mode 100644 public/packs/js/application-7f30b778498ba886815d.js create mode 100644 public/packs/js/application-7f30b778498ba886815d.js.LICENSE.txt create mode 100644 public/packs/js/application-7f30b778498ba886815d.js.br create mode 100644 public/packs/js/application-7f30b778498ba886815d.js.gz create mode 100644 public/packs/js/application-7f30b778498ba886815d.js.map create mode 100644 public/packs/js/application-7f30b778498ba886815d.js.map.br create mode 100644 public/packs/js/application-7f30b778498ba886815d.js.map.gz create mode 100644 public/packs/manifest.json create mode 100644 public/packs/manifest.json.br create mode 100644 public/packs/manifest.json.gz create mode 100644 public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff create mode 100644 public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 create mode 100644 public/packs/media/fonts/forkawesome-webfont-86541105.svg create mode 100644 public/packs/media/fonts/forkawesome-webfont-86541105.svg.br create mode 100644 public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz create mode 100644 public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot create mode 100644 public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br create mode 100644 public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz create mode 100644 public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf create mode 100644 public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br create mode 100644 public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz create mode 100644 public/packs/media/images/layers-2x-8f2c4d11.png create mode 100644 public/packs/media/images/layers-416d9136.png create mode 100644 public/packs/media/images/marker-icon-2b3e1faf.png create mode 100644 public/packs/media/images/marker-icon-2x-680f69f3.png create mode 100644 public/packs/media/images/marker-shadow-a0c6cc14.png diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json new file mode 100644 index 00000000..ba5c91bd --- /dev/null +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47e84a8003fb7a2f301923992ee5dd06e3052b3e9a7a210b0af0d2fc154aa10a +size 11892 diff --git a/public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js b/public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js new file mode 100644 index 00000000..00eb1f78 --- /dev/null +++ b/public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:180d06e627b032f75d76aba6172b3aa58d171fb0a0f1142f29448d10fc5ec5a9 +size 16449 diff --git a/public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js.gz b/public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js.gz new file mode 100644 index 00000000..547fa854 --- /dev/null +++ b/public/assets/activestorage-a32231d4c74e0bd4b322c1466c29120152be4ea1f4b896d9bfa546b49c39c52f.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a64406e0735a5a688ae5f0b804fb4d425fbc1c7a9aa8638b9cdc2768daa1215 +size 5157 diff --git a/public/assets/application-50dc9093cf17b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css b/public/assets/application-50dc9093cf17b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css new file mode 100644 index 00000000..f55680e6 --- /dev/null +++ b/public/assets/application-50dc9093cf17b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf9d1c7c5cee2c16385a24dad42902d5a9a95211c118a024010da6b48f0fa70d +size 231397 diff --git a/public/assets/application-50dc9093cf17b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css.gz b/public/assets/application-50dc9093cf17b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css.gz new file mode 100644 index 00000000..360356e5 --- /dev/null +++ b/public/assets/application-50dc9093cf17b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9438fe34048f198e017c22563eb76dd8afb2e0029b3c75c0b371af573030beec +size 32110 diff --git a/public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg b/public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg new file mode 100644 index 00000000..2a7f2458 --- /dev/null +++ b/public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92f2db633d3e9611dc07743d7267204c40de2f8d75b9fa7e0646b195541f2d53 +size 571 diff --git a/public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg.gz b/public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg.gz new file mode 100644 index 00000000..5b4b25ab --- /dev/null +++ b/public/assets/arrows-alt-v-89a34626be855d3b1c3199cd75f62cf6327678eed1e126f74b7cbc6de3502606.svg.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9c026060870ad426fdd5f04de97ab73f9e8d3fbcdb5fc389652c2dbb8d58cac +size 359 diff --git a/public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js b/public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js new file mode 100644 index 00000000..e69de29b diff --git a/public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz b/public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz new file mode 100644 index 00000000..3ac4f898 --- /dev/null +++ b/public/assets/blazer/application-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a808f31c5704c32a1b85155b41b68f60e08929ab31352cd811138a2c70cacf3 +size 20 diff --git a/public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css b/public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css new file mode 100644 index 00000000..3070f7a1 --- /dev/null +++ b/public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1c391e4691ea1afd08ba5daff66c790edd4b324af7dae390b616af36c7c2837 +size 134418 diff --git a/public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css.gz b/public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css.gz new file mode 100644 index 00000000..f73b6993 --- /dev/null +++ b/public/assets/blazer/application-c68598fc5732d248b857f9712a627ca58483ad188d6764320941b74fa71bbcac.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:858413c8cd07dff8ee14d3d8a2dbd98c6bad6a6dfd5b202a0e3bb00972dc9ef3 +size 23333 diff --git a/public/assets/blazer/favicon-ccead91b8853543a3542af03c7dde9963359b1c0b9b725220a7f193e1324ecd8.png b/public/assets/blazer/favicon-ccead91b8853543a3542af03c7dde9963359b1c0b9b725220a7f193e1324ecd8.png new file mode 100644 index 00000000..f275a453 --- /dev/null +++ b/public/assets/blazer/favicon-ccead91b8853543a3542af03c7dde9963359b1c0b9b725220a7f193e1324ecd8.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:392743107d0d14fea5699cff1e80d209db7058ef660e643ff9c9f07e990ac084 +size 320 diff --git a/public/assets/blazer/glyphicons-halflings-regular-0703369a358a012c0011843ae337a8a20270c336948a8668df5cb89a8827299b.woff b/public/assets/blazer/glyphicons-halflings-regular-0703369a358a012c0011843ae337a8a20270c336948a8668df5cb89a8827299b.woff new file mode 100644 index 00000000..334f2da2 --- /dev/null +++ b/public/assets/blazer/glyphicons-halflings-regular-0703369a358a012c0011843ae337a8a20270c336948a8668df5cb89a8827299b.woff @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a26394f7ede100ca118eff2eda08596275a9839b959c226e15439557a5a80742 +size 23424 diff --git a/public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot b/public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot new file mode 100644 index 00000000..42ea705f --- /dev/null +++ b/public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:13634da87d9e23f8c3ed9108ce1724d183a39ad072e73e1b3d8cbf646d2d0407 +size 20127 diff --git a/public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot.gz b/public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot.gz new file mode 100644 index 00000000..79704b9c --- /dev/null +++ b/public/assets/blazer/glyphicons-halflings-regular-0805fb1fe24235f70a639f67514990e4bfb6d2cfb00ca563ad4b553c240ddc33.eot.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec5793d14d9c94d2e77f2402cc72cb02fbad30c2f9e694db24a1770c68b85ef2 +size 20056 diff --git a/public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg b/public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg new file mode 100644 index 00000000..781641cc --- /dev/null +++ b/public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42f60659d265c1a3c30f9fa42abcbb56bd4a53af4d83d316d6dd7a36903c43e5 +size 108738 diff --git a/public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg.gz b/public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg.gz new file mode 100644 index 00000000..ab024c17 --- /dev/null +++ b/public/assets/blazer/glyphicons-halflings-regular-22d0c88a49d7d0ebe45627143a601061a32a46a9b9afd2dc7f457436f5f15f6e.svg.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c0063a75b931092fa7dc19eab7df95f9b715c4444a164f3d63a37c3a7ac4b8f +size 26508 diff --git a/public/assets/blazer/glyphicons-halflings-regular-403acfcf0cbaebd1c28b404eec442cea53642644b3a73f91c5a4ab46859af772.woff2 b/public/assets/blazer/glyphicons-halflings-regular-403acfcf0cbaebd1c28b404eec442cea53642644b3a73f91c5a4ab46859af772.woff2 new file mode 100644 index 00000000..3336ba11 --- /dev/null +++ b/public/assets/blazer/glyphicons-halflings-regular-403acfcf0cbaebd1c28b404eec442cea53642644b3a73f91c5a4ab46859af772.woff2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe185d11a49676890d47bb783312a0cda5a44c4039214094e7957b4c040ef11c +size 18028 diff --git a/public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf b/public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf new file mode 100644 index 00000000..233386da --- /dev/null +++ b/public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e395044093757d82afcb138957d06a1ea9361bdcf0b442d06a18a8051af57456 +size 45404 diff --git a/public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf.gz b/public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf.gz new file mode 100644 index 00000000..5c760dc2 --- /dev/null +++ b/public/assets/blazer/glyphicons-halflings-regular-7c9caa5f4e16169b0129fdf93c84e85ad14d6c107eb1b0ad60b542daf01ee1f0.ttf.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54d10fbf4ee64ed8263cac863485e034c3f430afd686301c51cde3ecd49612b9 +size 23360 diff --git a/public/assets/editor-39df1ce9e0468043c2d1c998a38d45fac02beffa1b09088918b9c433c0750b4f.css b/public/assets/editor-39df1ce9e0468043c2d1c998a38d45fac02beffa1b09088918b9c433c0750b4f.css new file mode 100644 index 00000000..9349b0ad --- /dev/null +++ b/public/assets/editor-39df1ce9e0468043c2d1c998a38d45fac02beffa1b09088918b9c433c0750b4f.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:403aaacf284c969542b423b9563f4cfa907a81cdf7443da106c3307bc22acd85 +size 2257 diff --git a/public/assets/editor-39df1ce9e0468043c2d1c998a38d45fac02beffa1b09088918b9c433c0750b4f.css.gz b/public/assets/editor-39df1ce9e0468043c2d1c998a38d45fac02beffa1b09088918b9c433c0750b4f.css.gz new file mode 100644 index 00000000..9b6ecad0 --- /dev/null +++ b/public/assets/editor-39df1ce9e0468043c2d1c998a38d45fac02beffa1b09088918b9c433c0750b4f.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:944d9e5d96f79b8acf12b5e4896d6f60bb9f6fbba5cfb200269ba2b263015f93 +size 687 diff --git a/public/assets/icon_external_link-1af8262ac9c00df26e81bc5a33bcf64350729f954b85f82d5e759fffec4e183a.png b/public/assets/icon_external_link-1af8262ac9c00df26e81bc5a33bcf64350729f954b85f82d5e759fffec4e183a.png new file mode 100644 index 00000000..e882b8bc --- /dev/null +++ b/public/assets/icon_external_link-1af8262ac9c00df26e81bc5a33bcf64350729f954b85f82d5e759fffec4e183a.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a0acd631fd5704e940b9f486d3234aa9ab871881733f48d6edd3cb1f1a09ffc +size 144 diff --git a/public/assets/layers-0e356f4d554162eb71f127f50460dbc55d405027189ebe90b20729ef18d13d36.png b/public/assets/layers-0e356f4d554162eb71f127f50460dbc55d405027189ebe90b20729ef18d13d36.png new file mode 100644 index 00000000..7b44754c --- /dev/null +++ b/public/assets/layers-0e356f4d554162eb71f127f50460dbc55d405027189ebe90b20729ef18d13d36.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1dbbe9d028e292f36fcba8f8b3a28d5e8932754fc2215b9ac69e4cdecf5107c6 +size 696 diff --git a/public/assets/layers-2x-ba8fa601e413b14db27db07285ade3951721e02244c31523284ab2d1ed53c3dc.png b/public/assets/layers-2x-ba8fa601e413b14db27db07285ade3951721e02244c31523284ab2d1ed53c3dc.png new file mode 100644 index 00000000..d3cf7e52 --- /dev/null +++ b/public/assets/layers-2x-ba8fa601e413b14db27db07285ade3951721e02244c31523284ab2d1ed53c3dc.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:066daca850d8ffbef007af00b06eac0015728dee279c51f3cb6c716df7c42edf +size 1259 diff --git a/public/assets/logo-e11ab53230eae9497ea201f3ad57549af343ddc1d24ddc78b055627cf14e9d5d.png b/public/assets/logo-e11ab53230eae9497ea201f3ad57549af343ddc1d24ddc78b055627cf14e9d5d.png new file mode 100644 index 00000000..be79dc74 --- /dev/null +++ b/public/assets/logo-e11ab53230eae9497ea201f3ad57549af343ddc1d24ddc78b055627cf14e9d5d.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:abab4950f459ebf3f475d376d6fd468e735cab2d86c712222fa586569a273a09 +size 2001 diff --git a/public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js b/public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js new file mode 100644 index 00000000..e69de29b diff --git a/public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz b/public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz new file mode 100644 index 00000000..3ac4f898 --- /dev/null +++ b/public/assets/manifest-04024382391bb910584145d8113cf35ef376b55d125bb4516cebeb14ce788597.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a808f31c5704c32a1b85155b41b68f60e08929ab31352cd811138a2c70cacf3 +size 20 diff --git a/public/assets/marker-icon-2x-091245b393c16cdcefe54920aa7d3994a0683317ca9a58d35cbc5ec65996398c.png b/public/assets/marker-icon-2x-091245b393c16cdcefe54920aa7d3994a0683317ca9a58d35cbc5ec65996398c.png new file mode 100644 index 00000000..09e8445f --- /dev/null +++ b/public/assets/marker-icon-2x-091245b393c16cdcefe54920aa7d3994a0683317ca9a58d35cbc5ec65996398c.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00179c4c1ee830d3a108412ae0d294f55776cfeb085c60129a39aa6fc4ae2528 +size 2464 diff --git a/public/assets/marker-icon-3d253116ec4ba0e1f22a01cdf1ff7f120fa4d89a6cd0933d68f12951d19809b4.png b/public/assets/marker-icon-3d253116ec4ba0e1f22a01cdf1ff7f120fa4d89a6cd0933d68f12951d19809b4.png new file mode 100644 index 00000000..b1789c76 --- /dev/null +++ b/public/assets/marker-icon-3d253116ec4ba0e1f22a01cdf1ff7f120fa4d89a6cd0933d68f12951d19809b4.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:574c3a5cca85f4114085b6841596d62f00d7c892c7b03f28cbfa301deb1dc437 +size 1466 diff --git a/public/assets/marker-shadow-a2d94406ba198f61f68a71ed8f9f9c701122c0c33b775d990edceae4aece567f.png b/public/assets/marker-shadow-a2d94406ba198f61f68a71ed8f9f9c701122c0c33b775d990edceae4aece567f.png new file mode 100644 index 00000000..dc111216 --- /dev/null +++ b/public/assets/marker-shadow-a2d94406ba198f61f68a71ed8f9f9c701122c0c33b775d990edceae4aece567f.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:264f5c640339f042dd729062cfc04c17f8ea0f29882b538e3848ed8f10edb4da +size 618 diff --git a/public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css b/public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css new file mode 100644 index 00000000..65a56f63 --- /dev/null +++ b/public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d967abb43a679cd18d84b114ad0616239a67241a8402185d2929e27b02e1a4b3 +size 171 diff --git a/public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css.gz b/public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css.gz new file mode 100644 index 00000000..07501a46 --- /dev/null +++ b/public/assets/new_editor-9962df2caf2874010146cfd735216677865b7e37bee68c59e997a9aa2198594d.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d29a581f5f246d75366cda62749a4a9166ad9daeb6bfcc168d7bedc9d973dda +size 115 diff --git a/public/assets/saira/v3/SairaBold-subset-0c1968b6a54ea5684d70cc5b51fb1ae3186386fe9363bf3edaf01663ac641341.woff2 b/public/assets/saira/v3/SairaBold-subset-0c1968b6a54ea5684d70cc5b51fb1ae3186386fe9363bf3edaf01663ac641341.woff2 new file mode 100644 index 00000000..580c899c --- /dev/null +++ b/public/assets/saira/v3/SairaBold-subset-0c1968b6a54ea5684d70cc5b51fb1ae3186386fe9363bf3edaf01663ac641341.woff2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ad13d7b01c301feecfb7f760791100710930be2d232fcdf97fb09a1301e4c3e +size 16264 diff --git a/public/assets/saira/v3/SairaBold-subset.zopfli-2d3f8769110de8d5709d5162dbf0dcb9ab8df71e55f63cfd986bdb68ee2ade0b.woff b/public/assets/saira/v3/SairaBold-subset.zopfli-2d3f8769110de8d5709d5162dbf0dcb9ab8df71e55f63cfd986bdb68ee2ade0b.woff new file mode 100644 index 00000000..94528fe4 --- /dev/null +++ b/public/assets/saira/v3/SairaBold-subset.zopfli-2d3f8769110de8d5709d5162dbf0dcb9ab8df71e55f63cfd986bdb68ee2ade0b.woff @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd722d9eb3a725f4188615c514c5c0e6b1b82de55a00dca194efa84704257dd2 +size 20120 diff --git a/public/assets/saira/v3/SairaMedium-subset-6d53d976d73b86358489cb76fc34ec0683d57a1b2635c43acbae45be3349d976.woff2 b/public/assets/saira/v3/SairaMedium-subset-6d53d976d73b86358489cb76fc34ec0683d57a1b2635c43acbae45be3349d976.woff2 new file mode 100644 index 00000000..7127bebe --- /dev/null +++ b/public/assets/saira/v3/SairaMedium-subset-6d53d976d73b86358489cb76fc34ec0683d57a1b2635c43acbae45be3349d976.woff2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ac4573ca9ed8e08a742d203171057acc3d8f5f49825d9351bd2a22c2d58e669 +size 16388 diff --git a/public/assets/saira/v3/SairaMedium-subset.zopfli-47d24dd6cc6451cd2fb3803333f4de3e11033437aa0c8d3d06edcb19e4e38ecb.woff b/public/assets/saira/v3/SairaMedium-subset.zopfli-47d24dd6cc6451cd2fb3803333f4de3e11033437aa0c8d3d06edcb19e4e38ecb.woff new file mode 100644 index 00000000..bb8a3825 --- /dev/null +++ b/public/assets/saira/v3/SairaMedium-subset.zopfli-47d24dd6cc6451cd2fb3803333f4de3e11033437aa0c8d3d06edcb19e4e38ecb.woff @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4dec398a6c292da28349e76f94646d91d425cf4ddc7f91d749075f72209d0dab +size 20232 diff --git a/public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg b/public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg new file mode 100644 index 00000000..68fca50c --- /dev/null +++ b/public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb86744bcec2d691c94d431627e412113f3648eb02420f2af86de3e3884c5a6d +size 1956 diff --git a/public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg.gz b/public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg.gz new file mode 100644 index 00000000..11eacf60 --- /dev/null +++ b/public/assets/sutty-08b30df17da83a32911e3bb4fa0a2c967148a2f98020a63b6c171c17c94bf05d.svg.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b96644799494b8c2117ce68d763c392418dbb1b065ffc3d2c52061d9a046ed7f +size 943 diff --git a/public/assets/sutty_cuadrada-547911cb970c82f2bf8fa2d68b3b32e5e2a1c0ed787dafa6ea1b98b52b96328f.png b/public/assets/sutty_cuadrada-547911cb970c82f2bf8fa2d68b3b32e5e2a1c0ed787dafa6ea1b98b52b96328f.png new file mode 100644 index 00000000..1b018802 --- /dev/null +++ b/public/assets/sutty_cuadrada-547911cb970c82f2bf8fa2d68b3b32e5e2a1c0ed787dafa6ea1b98b52b96328f.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56aa311c3c5249e54d70f03b33fc681b593cd93e74b7af5d80316c5b7d1c6a76 +size 6868 diff --git a/public/packs/css/application-3be2c380.css b/public/packs/css/application-3be2c380.css new file mode 100644 index 00000000..544ddf74 --- /dev/null +++ b/public/packs/css/application-3be2c380.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e0179eec59d4881001e3d26ec0e25d8ca1257c6e4956d76f18cc97c3325a9625 +size 48029 diff --git a/public/packs/css/application-3be2c380.css.br b/public/packs/css/application-3be2c380.css.br new file mode 100644 index 00000000..e5774ab0 --- /dev/null +++ b/public/packs/css/application-3be2c380.css.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48597b99b6932b41dc4fac4fea2efb1dcb258dbbfafcb618649f002b4b6801d8 +size 9703 diff --git a/public/packs/css/application-3be2c380.css.gz b/public/packs/css/application-3be2c380.css.gz new file mode 100644 index 00000000..306dc931 --- /dev/null +++ b/public/packs/css/application-3be2c380.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfeb6b9af353618bdc475d6c921197da2b8a9ae7685a91772658d41883843c12 +size 12022 diff --git a/public/packs/js/application-7f30b778498ba886815d.js b/public/packs/js/application-7f30b778498ba886815d.js new file mode 100644 index 00000000..6f707fca --- /dev/null +++ b/public/packs/js/application-7f30b778498ba886815d.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c8c78c85479bb9cf178d3ce65e5a3df53f7b5132751176acad11a04c9d7c900 +size 1334640 diff --git a/public/packs/js/application-7f30b778498ba886815d.js.LICENSE.txt b/public/packs/js/application-7f30b778498ba886815d.js.LICENSE.txt new file mode 100644 index 00000000..89f0cf4f --- /dev/null +++ b/public/packs/js/application-7f30b778498ba886815d.js.LICENSE.txt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f +size 629 diff --git a/public/packs/js/application-7f30b778498ba886815d.js.br b/public/packs/js/application-7f30b778498ba886815d.js.br new file mode 100644 index 00000000..03ddc152 --- /dev/null +++ b/public/packs/js/application-7f30b778498ba886815d.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46903322d13025663e8d91ac88166de16bbd379d6e13935c076c381651eda85c +size 299929 diff --git a/public/packs/js/application-7f30b778498ba886815d.js.gz b/public/packs/js/application-7f30b778498ba886815d.js.gz new file mode 100644 index 00000000..d27fa330 --- /dev/null +++ b/public/packs/js/application-7f30b778498ba886815d.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:038baa96b91d871cc3ce6b98fc0712fd1885ff9e6b345a973ab4902ad3f46aaa +size 386274 diff --git a/public/packs/js/application-7f30b778498ba886815d.js.map b/public/packs/js/application-7f30b778498ba886815d.js.map new file mode 100644 index 00000000..0d574554 --- /dev/null +++ b/public/packs/js/application-7f30b778498ba886815d.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:937506cb636c2eb556b8f18b6e62e00c774c40d112b3e0610fe597592a81d4a7 +size 5488081 diff --git a/public/packs/js/application-7f30b778498ba886815d.js.map.br b/public/packs/js/application-7f30b778498ba886815d.js.map.br new file mode 100644 index 00000000..80ad47f5 --- /dev/null +++ b/public/packs/js/application-7f30b778498ba886815d.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28e5a2030830b470f9ff10b13d805f3dd9facd74d25a3a1a6111ed390df426d9 +size 1167037 diff --git a/public/packs/js/application-7f30b778498ba886815d.js.map.gz b/public/packs/js/application-7f30b778498ba886815d.js.map.gz new file mode 100644 index 00000000..ea7f1124 --- /dev/null +++ b/public/packs/js/application-7f30b778498ba886815d.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b496c1f44a7569ee0100f6106b30e9c3ba92639b6f70b5e3bc3bd34716e911a5 +size 1431174 diff --git a/public/packs/manifest.json b/public/packs/manifest.json new file mode 100644 index 00000000..fa7ebc26 --- /dev/null +++ b/public/packs/manifest.json @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e0311cccc07aff857ca596b034c1cacc230fa2d63bd2333d48a3fe630ae653da +size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br new file mode 100644 index 00000000..333bb07a --- /dev/null +++ b/public/packs/manifest.json.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42b99c5ca092edc9fc5ba6ff7706e9567febc9ed82c3cf7d82eec3b02678d17d +size 320 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz new file mode 100644 index 00000000..7a3e3ba4 --- /dev/null +++ b/public/packs/manifest.json.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9d356dda423870974b446c5e096346d1a9d1767684096fd7be62a744c254cb15 +size 365 diff --git a/public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff b/public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff new file mode 100644 index 00000000..8925c5d3 --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53ab31062cf740aa76615d2c98aea80b177845d7ed95de45889b3824b0e1597c +size 115148 diff --git a/public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 b/public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 new file mode 100644 index 00000000..52865bdb --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84422de97eb1cf27bcb9bca4f3fbb18f3ebc711647b09c68292f5f43c89d5064 +size 91624 diff --git a/public/packs/media/fonts/forkawesome-webfont-86541105.svg b/public/packs/media/fonts/forkawesome-webfont-86541105.svg new file mode 100644 index 00000000..af45aadc --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-86541105.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:505e7f9fe61ba6d17d8514b5d0c3a75166dab1b57527e2d3a3baf2047624ba93 +size 480784 diff --git a/public/packs/media/fonts/forkawesome-webfont-86541105.svg.br b/public/packs/media/fonts/forkawesome-webfont-86541105.svg.br new file mode 100644 index 00000000..827ed0bc --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-86541105.svg.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4df44c3056ab68d2e1cf1970189876295b62db1640e6ed885c78d8c46f94e66f +size 126249 diff --git a/public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz b/public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz new file mode 100644 index 00000000..0676bab5 --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49664085aa6a37335724f0288531562f352e81d10fdfeadd4a8ed0764eae2f50 +size 160947 diff --git a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot new file mode 100644 index 00000000..37e93df5 --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d96fdd7d6854cf875ce3090e017b0078ae2f7e923763bcbb90748a01c6fb7fd +size 188946 diff --git a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br new file mode 100644 index 00000000..01f63da2 --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36cb46345792080af5dbe8bd742dc632a3821276fff76e57877c93c0e8afb00a +size 107072 diff --git a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz new file mode 100644 index 00000000..5bb32cdc --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:413b68fbd4bc71d5aa98410c6f8048f971b55e7d824180d0fab665cc55c3d9a3 +size 115772 diff --git a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf new file mode 100644 index 00000000..e6380d0e --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e4beb40f0cc19ec55f2ab741d42e806fc6155ccf6e40e50965196c0bcc6aba4 +size 188756 diff --git a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br new file mode 100644 index 00000000..c35abc27 --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de3e4f20e5341214cc1292a61d0f49d833187e862fb1fbfeb746d25f0465ee6b +size 106884 diff --git a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz new file mode 100644 index 00000000..44d9de5a --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26c357b09eb784753afcd35a1aa47fe65378a52c95db0496e98dfb999c9ab1b8 +size 115685 diff --git a/public/packs/media/images/layers-2x-8f2c4d11.png b/public/packs/media/images/layers-2x-8f2c4d11.png new file mode 100644 index 00000000..d3cf7e52 --- /dev/null +++ b/public/packs/media/images/layers-2x-8f2c4d11.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:066daca850d8ffbef007af00b06eac0015728dee279c51f3cb6c716df7c42edf +size 1259 diff --git a/public/packs/media/images/layers-416d9136.png b/public/packs/media/images/layers-416d9136.png new file mode 100644 index 00000000..7b44754c --- /dev/null +++ b/public/packs/media/images/layers-416d9136.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1dbbe9d028e292f36fcba8f8b3a28d5e8932754fc2215b9ac69e4cdecf5107c6 +size 696 diff --git a/public/packs/media/images/marker-icon-2b3e1faf.png b/public/packs/media/images/marker-icon-2b3e1faf.png new file mode 100644 index 00000000..b1789c76 --- /dev/null +++ b/public/packs/media/images/marker-icon-2b3e1faf.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:574c3a5cca85f4114085b6841596d62f00d7c892c7b03f28cbfa301deb1dc437 +size 1466 diff --git a/public/packs/media/images/marker-icon-2x-680f69f3.png b/public/packs/media/images/marker-icon-2x-680f69f3.png new file mode 100644 index 00000000..09e8445f --- /dev/null +++ b/public/packs/media/images/marker-icon-2x-680f69f3.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00179c4c1ee830d3a108412ae0d294f55776cfeb085c60129a39aa6fc4ae2528 +size 2464 diff --git a/public/packs/media/images/marker-shadow-a0c6cc14.png b/public/packs/media/images/marker-shadow-a0c6cc14.png new file mode 100644 index 00000000..dc111216 --- /dev/null +++ b/public/packs/media/images/marker-shadow-a0c6cc14.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:264f5c640339f042dd729062cfc04c17f8ea0f29882b538e3848ed8f10edb4da +size 618 From eddce29a435c168abc7fd3b3b0b465dd9d0982c5 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 29 Dec 2022 14:34:46 -0300 Subject: [PATCH 069/699] fix: mantener mail en 2.7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit la versión 2.8 es para ruby 3 y genera errores en require https://github.com/ruby/net-imap/issues/16 --- Gemfile | 1 + Gemfile.lock | 27 +++++++-------------------- 2 files changed, 8 insertions(+), 20 deletions(-) diff --git a/Gemfile b/Gemfile index 10479203..e2c40a87 100644 --- a/Gemfile +++ b/Gemfile @@ -5,6 +5,7 @@ source 'https://gems.sutty.nl' ruby '~> 2.7' +gem 'mail', '~> 2.7.1' gem 'dotenv-rails', require: 'dotenv/rails-now' gem 'i18n', '~> 1.8.0' diff --git a/Gemfile.lock b/Gemfile.lock index e39b4bfe..866ad175 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -142,7 +142,6 @@ GEM activerecord (>= 5.a) database_cleaner-core (~> 2.0.0) database_cleaner-core (2.0.1) - date (3.3.3-x86_64-linux-musl) dead_end (4.0.0) derailed_benchmarks (2.1.2) benchmark-ips (~> 2) @@ -344,8 +343,8 @@ GEM kramdown-parser-gfm (1.1.0) kramdown (~> 2.0) kwalify (0.7.2) - launchy (2.5.0) - addressable (~> 2.7) + launchy (2.5.2) + addressable (~> 2.8) letter_opener (1.8.1) launchy (>= 2.2, < 3) liquid (4.0.3) @@ -363,11 +362,8 @@ GEM loofah (2.19.1) crass (~> 1.0.2) nokogiri (>= 1.5.9) - mail (2.8.0) + mail (2.7.1) mini_mime (>= 0.1.1) - net-imap - net-pop - net-smtp marcel (1.0.2) memory_profiler (1.0.1) mercenary (0.4.0) @@ -388,15 +384,6 @@ GEM i18n (>= 0.6.10, < 2) request_store (~> 1.0) multi_xml (0.6.0) - net-imap (0.3.4) - date - net-protocol - net-pop (0.1.2) - net-protocol - net-protocol (0.2.1) - timeout - net-smtp (0.3.3) - net-protocol net-ssh (7.0.1) netaddr (2.0.6) nio4r (2.5.8-x86_64-linux-musl) @@ -516,7 +503,7 @@ GEM redis-store (>= 1.2, < 2) redis-store (1.9.1) redis (>= 4, < 5) - reek (6.1.2) + reek (6.1.3) kwalify (~> 0.7.0) parser (~> 3.1.0) rainbow (>= 2.0, < 4.0) @@ -538,7 +525,7 @@ GEM rubocop-ast (>= 1.23.0, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 1.4.0, < 3.0) - rubocop-ast (1.24.0) + rubocop-ast (1.24.1) parser (>= 3.1.1.0) rubocop-rails (2.17.4) activesupport (>= 4.2.0) @@ -622,7 +609,7 @@ GEM jekyll-include-cache (~> 0) jekyll-relative-urls (~> 0.0) jekyll-seo-tag (~> 2.1) - sutty-liquid (0.11.3) + sutty-liquid (0.11.6) fast_blank (~> 1.0) jekyll (~> 4) sutty-minima (2.5.1) @@ -638,7 +625,6 @@ GEM thor (1.2.1) tilt (2.0.11) timecop (0.9.6) - timeout (0.3.1) turbolinks (5.2.1) turbolinks-source (~> 5.2) turbolinks-source (5.2.0) @@ -725,6 +711,7 @@ DEPENDENCIES loaf lockbox lograge + mail (~> 2.7.1) memory_profiler mini_magick minima From 94cdec71a51717aa89a5fccc87a3a519081f3cd8 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 29 Dec 2022 14:54:32 -0300 Subject: [PATCH 070/699] fix: volver a editor funcional --- package.json | 2 +- ...rockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-7f30b778498ba886815d.js | 3 --- public/packs/js/application-7f30b778498ba886815d.js.br | 3 --- public/packs/js/application-7f30b778498ba886815d.js.gz | 3 --- public/packs/js/application-7f30b778498ba886815d.js.map | 3 --- .../packs/js/application-7f30b778498ba886815d.js.map.br | 3 --- .../packs/js/application-7f30b778498ba886815d.js.map.gz | 3 --- public/packs/js/application-da7d23395df54af9dd86.js | 3 +++ ...xt => application-da7d23395df54af9dd86.js.LICENSE.txt} | 0 public/packs/js/application-da7d23395df54af9dd86.js.br | 3 +++ public/packs/js/application-da7d23395df54af9dd86.js.gz | 3 +++ public/packs/js/application-da7d23395df54af9dd86.js.map | 3 +++ .../packs/js/application-da7d23395df54af9dd86.js.map.br | 3 +++ .../packs/js/application-da7d23395df54af9dd86.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- yarn.lock | 8 ++++---- 19 files changed, 29 insertions(+), 29 deletions(-) delete mode 100644 public/packs/js/application-7f30b778498ba886815d.js delete mode 100644 public/packs/js/application-7f30b778498ba886815d.js.br delete mode 100644 public/packs/js/application-7f30b778498ba886815d.js.gz delete mode 100644 public/packs/js/application-7f30b778498ba886815d.js.map delete mode 100644 public/packs/js/application-7f30b778498ba886815d.js.map.br delete mode 100644 public/packs/js/application-7f30b778498ba886815d.js.map.gz create mode 100644 public/packs/js/application-da7d23395df54af9dd86.js rename public/packs/js/{application-7f30b778498ba886815d.js.LICENSE.txt => application-da7d23395df54af9dd86.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.br create mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.gz create mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.map create mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.map.br create mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.map.gz diff --git a/package.json b/package.json index 9668098e..50f934b5 100644 --- a/package.json +++ b/package.json @@ -12,7 +12,7 @@ "@rails/activestorage": "^6.1.3-1", "@rails/ujs": "^6.1.3-1", "@rails/webpacker": "5.2.1", - "@suttyweb/editor": "^0.1.9", + "@suttyweb/editor": "0.1.6", "babel-loader": "^8.2.2", "chart.js": "^3.5.1", "chartkick": "^4.0.5", diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index ba5c91bd..121f6b9a 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:47e84a8003fb7a2f301923992ee5dd06e3052b3e9a7a210b0af0d2fc154aa10a +oid sha256:6f91ab720bb65b30ef4d1e2d4f7e601f6ee7a8acec34f34e343acfc795792631 size 11892 diff --git a/public/packs/js/application-7f30b778498ba886815d.js b/public/packs/js/application-7f30b778498ba886815d.js deleted file mode 100644 index 6f707fca..00000000 --- a/public/packs/js/application-7f30b778498ba886815d.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9c8c78c85479bb9cf178d3ce65e5a3df53f7b5132751176acad11a04c9d7c900 -size 1334640 diff --git a/public/packs/js/application-7f30b778498ba886815d.js.br b/public/packs/js/application-7f30b778498ba886815d.js.br deleted file mode 100644 index 03ddc152..00000000 --- a/public/packs/js/application-7f30b778498ba886815d.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:46903322d13025663e8d91ac88166de16bbd379d6e13935c076c381651eda85c -size 299929 diff --git a/public/packs/js/application-7f30b778498ba886815d.js.gz b/public/packs/js/application-7f30b778498ba886815d.js.gz deleted file mode 100644 index d27fa330..00000000 --- a/public/packs/js/application-7f30b778498ba886815d.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:038baa96b91d871cc3ce6b98fc0712fd1885ff9e6b345a973ab4902ad3f46aaa -size 386274 diff --git a/public/packs/js/application-7f30b778498ba886815d.js.map b/public/packs/js/application-7f30b778498ba886815d.js.map deleted file mode 100644 index 0d574554..00000000 --- a/public/packs/js/application-7f30b778498ba886815d.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:937506cb636c2eb556b8f18b6e62e00c774c40d112b3e0610fe597592a81d4a7 -size 5488081 diff --git a/public/packs/js/application-7f30b778498ba886815d.js.map.br b/public/packs/js/application-7f30b778498ba886815d.js.map.br deleted file mode 100644 index 80ad47f5..00000000 --- a/public/packs/js/application-7f30b778498ba886815d.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:28e5a2030830b470f9ff10b13d805f3dd9facd74d25a3a1a6111ed390df426d9 -size 1167037 diff --git a/public/packs/js/application-7f30b778498ba886815d.js.map.gz b/public/packs/js/application-7f30b778498ba886815d.js.map.gz deleted file mode 100644 index ea7f1124..00000000 --- a/public/packs/js/application-7f30b778498ba886815d.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b496c1f44a7569ee0100f6106b30e9c3ba92639b6f70b5e3bc3bd34716e911a5 -size 1431174 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js b/public/packs/js/application-da7d23395df54af9dd86.js new file mode 100644 index 00000000..c726329d --- /dev/null +++ b/public/packs/js/application-da7d23395df54af9dd86.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:383a5ef45331bc051cb4386fa2d577280a0c0f70c445703f78cf50c0b16e2202 +size 1447613 diff --git a/public/packs/js/application-7f30b778498ba886815d.js.LICENSE.txt b/public/packs/js/application-da7d23395df54af9dd86.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-7f30b778498ba886815d.js.LICENSE.txt rename to public/packs/js/application-da7d23395df54af9dd86.js.LICENSE.txt diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.br b/public/packs/js/application-da7d23395df54af9dd86.js.br new file mode 100644 index 00000000..4d1feb60 --- /dev/null +++ b/public/packs/js/application-da7d23395df54af9dd86.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7b47124256f6bc1b9ac4c4ba10cfc7c1d7258d1696bf4028cf5b996f07053d8 +size 315845 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.gz b/public/packs/js/application-da7d23395df54af9dd86.js.gz new file mode 100644 index 00000000..d1f4b00f --- /dev/null +++ b/public/packs/js/application-da7d23395df54af9dd86.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd8671495660a5b744e57f18f4b3347c8c7b2a1c20e2a1310e0da37d6e110e22 +size 419598 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.map b/public/packs/js/application-da7d23395df54af9dd86.js.map new file mode 100644 index 00000000..03d7df3d --- /dev/null +++ b/public/packs/js/application-da7d23395df54af9dd86.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b8e227ee411590db0f0aa670fb94551fb58af0cb78f70196e33ec144d182d58 +size 5640997 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.map.br b/public/packs/js/application-da7d23395df54af9dd86.js.map.br new file mode 100644 index 00000000..9aca14c7 --- /dev/null +++ b/public/packs/js/application-da7d23395df54af9dd86.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:185d83227941abf8846139ab3497ddc9bc68f07489003ec38fccb142cc39ca51 +size 1210315 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.map.gz b/public/packs/js/application-da7d23395df54af9dd86.js.map.gz new file mode 100644 index 00000000..9b735e1b --- /dev/null +++ b/public/packs/js/application-da7d23395df54af9dd86.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:176ea6c12e03ed2f9cb5cc0e66b1adc47e6d8ff061ebfdc5aeda0eddf4a9d1cc +size 1485330 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index fa7ebc26..a2e83d91 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e0311cccc07aff857ca596b034c1cacc230fa2d63bd2333d48a3fe630ae653da +oid sha256:5243384bb8f18bb45a29f76e6e70db6d9437c10672b7b46e763d907b4776135b size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 333bb07a..7d822c0e 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:42b99c5ca092edc9fc5ba6ff7706e9567febc9ed82c3cf7d82eec3b02678d17d -size 320 +oid sha256:337aa8b87e8d1be79a9829c0fc01dc84862e7b3602d5c81b4f12d18c6e76cce8 +size 319 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 7a3e3ba4..a3afbddd 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9d356dda423870974b446c5e096346d1a9d1767684096fd7be62a744c254cb15 -size 365 +oid sha256:884376efda9b7f5c5c4cc1cfcca69a8fe883ea39061d3352782bd8e0369e4a1d +size 366 diff --git a/yarn.lock b/yarn.lock index d9e8d59f..1848e5bf 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1171,10 +1171,10 @@ resolved "https://registry.yarnpkg.com/@stimulus/webpack-helpers/-/webpack-helpers-1.1.1.tgz#eff60cd4e58b921d1a2764dc5215f5141510f2c2" integrity sha512-XOkqSw53N9072FLHvpLM25PIwy+ndkSSbnTtjKuyzsv8K5yfkFB2rv68jU1pzqYa9FZLcvZWP4yazC0V38dx9A== -"@suttyweb/editor@^0.1.9": - version "0.1.9" - resolved "https://registry.yarnpkg.com/@suttyweb/editor/-/editor-0.1.9.tgz#723ad00eb46aa94657c405d50e8849b0143a3ebc" - integrity sha512-aUOJnYyQ+g5fqNtjabuM3TvO7hAxKgbOJKLO44RQ/PtBidYu4/FS4gDHMb/HwenjKALpQD3PFnU+yb/IUdgNKQ== +"@suttyweb/editor@0.1.6": + version "0.1.6" + resolved "https://registry.yarnpkg.com/@suttyweb/editor/-/editor-0.1.6.tgz#863359c35aae6be808860ef899d05fce52898876" + integrity sha512-W9N61/73z5j3pFasaBagHB92PBATG1e8Jy2OkDk4TmsGmXwI5EecYH/WwwzhzMeWm4Nndm/En7x/4f4Izf7JeQ== "@types/caseless@*": version "0.12.2" From 90da9c96919fb492980155389f775a203fe964ee Mon Sep 17 00:00:00 2001 From: f Date: Thu, 29 Dec 2022 15:59:17 -0300 Subject: [PATCH 071/699] [skip ci] assets --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-acdf20413d06284f6525.js | 3 +++ ...SE.txt => application-acdf20413d06284f6525.js.LICENSE.txt} | 0 public/packs/js/application-acdf20413d06284f6525.js.br | 3 +++ public/packs/js/application-acdf20413d06284f6525.js.gz | 3 +++ public/packs/js/application-acdf20413d06284f6525.js.map | 3 +++ public/packs/js/application-acdf20413d06284f6525.js.map.br | 3 +++ public/packs/js/application-acdf20413d06284f6525.js.map.gz | 3 +++ public/packs/js/application-da7d23395df54af9dd86.js | 3 --- public/packs/js/application-da7d23395df54af9dd86.js.br | 3 --- public/packs/js/application-da7d23395df54af9dd86.js.gz | 3 --- public/packs/js/application-da7d23395df54af9dd86.js.map | 3 --- public/packs/js/application-da7d23395df54af9dd86.js.map.br | 3 --- public/packs/js/application-da7d23395df54af9dd86.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 17 files changed, 24 insertions(+), 24 deletions(-) create mode 100644 public/packs/js/application-acdf20413d06284f6525.js rename public/packs/js/{application-da7d23395df54af9dd86.js.LICENSE.txt => application-acdf20413d06284f6525.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-acdf20413d06284f6525.js.br create mode 100644 public/packs/js/application-acdf20413d06284f6525.js.gz create mode 100644 public/packs/js/application-acdf20413d06284f6525.js.map create mode 100644 public/packs/js/application-acdf20413d06284f6525.js.map.br create mode 100644 public/packs/js/application-acdf20413d06284f6525.js.map.gz delete mode 100644 public/packs/js/application-da7d23395df54af9dd86.js delete mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.br delete mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.gz delete mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.map delete mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.map.br delete mode 100644 public/packs/js/application-da7d23395df54af9dd86.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 121f6b9a..cabc4505 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6f91ab720bb65b30ef4d1e2d4f7e601f6ee7a8acec34f34e343acfc795792631 +oid sha256:4a40219b0c166e418a9f277ef43a909f7f9961d9eacefe5be65c113239750f1c size 11892 diff --git a/public/packs/js/application-acdf20413d06284f6525.js b/public/packs/js/application-acdf20413d06284f6525.js new file mode 100644 index 00000000..3c8274a0 --- /dev/null +++ b/public/packs/js/application-acdf20413d06284f6525.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f345ea6311867953163b9f456974717392c818d401133c9f17472e5af774e9a8 +size 1458143 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.LICENSE.txt b/public/packs/js/application-acdf20413d06284f6525.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-da7d23395df54af9dd86.js.LICENSE.txt rename to public/packs/js/application-acdf20413d06284f6525.js.LICENSE.txt diff --git a/public/packs/js/application-acdf20413d06284f6525.js.br b/public/packs/js/application-acdf20413d06284f6525.js.br new file mode 100644 index 00000000..c8e5fe98 --- /dev/null +++ b/public/packs/js/application-acdf20413d06284f6525.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1a40145fc84dad335be234ccdb88d9c12c89e9c506f8f4498fcf84622af9e3a +size 318582 diff --git a/public/packs/js/application-acdf20413d06284f6525.js.gz b/public/packs/js/application-acdf20413d06284f6525.js.gz new file mode 100644 index 00000000..f2f841b0 --- /dev/null +++ b/public/packs/js/application-acdf20413d06284f6525.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f00fa2b08d72b36b180cc3dde30823bc6f1c134b9c1d707c97510ee8e2c77028 +size 422276 diff --git a/public/packs/js/application-acdf20413d06284f6525.js.map b/public/packs/js/application-acdf20413d06284f6525.js.map new file mode 100644 index 00000000..5e476c30 --- /dev/null +++ b/public/packs/js/application-acdf20413d06284f6525.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42c72e7a58beec95a3c84e28f2cb44e32187d2a372d8fe1212ed4e1ffb97d28c +size 5649159 diff --git a/public/packs/js/application-acdf20413d06284f6525.js.map.br b/public/packs/js/application-acdf20413d06284f6525.js.map.br new file mode 100644 index 00000000..3b2afb65 --- /dev/null +++ b/public/packs/js/application-acdf20413d06284f6525.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba2c27eaa36df184cc9489e10fa2ddd21649b01a70991bec769b582094256a72 +size 1216947 diff --git a/public/packs/js/application-acdf20413d06284f6525.js.map.gz b/public/packs/js/application-acdf20413d06284f6525.js.map.gz new file mode 100644 index 00000000..df72e365 --- /dev/null +++ b/public/packs/js/application-acdf20413d06284f6525.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:73428a0def957efa42d940cb934063aab6f4fe11a9f90105a647cd07e997937d +size 1492305 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js b/public/packs/js/application-da7d23395df54af9dd86.js deleted file mode 100644 index c726329d..00000000 --- a/public/packs/js/application-da7d23395df54af9dd86.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:383a5ef45331bc051cb4386fa2d577280a0c0f70c445703f78cf50c0b16e2202 -size 1447613 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.br b/public/packs/js/application-da7d23395df54af9dd86.js.br deleted file mode 100644 index 4d1feb60..00000000 --- a/public/packs/js/application-da7d23395df54af9dd86.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b7b47124256f6bc1b9ac4c4ba10cfc7c1d7258d1696bf4028cf5b996f07053d8 -size 315845 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.gz b/public/packs/js/application-da7d23395df54af9dd86.js.gz deleted file mode 100644 index d1f4b00f..00000000 --- a/public/packs/js/application-da7d23395df54af9dd86.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bd8671495660a5b744e57f18f4b3347c8c7b2a1c20e2a1310e0da37d6e110e22 -size 419598 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.map b/public/packs/js/application-da7d23395df54af9dd86.js.map deleted file mode 100644 index 03d7df3d..00000000 --- a/public/packs/js/application-da7d23395df54af9dd86.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6b8e227ee411590db0f0aa670fb94551fb58af0cb78f70196e33ec144d182d58 -size 5640997 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.map.br b/public/packs/js/application-da7d23395df54af9dd86.js.map.br deleted file mode 100644 index 9aca14c7..00000000 --- a/public/packs/js/application-da7d23395df54af9dd86.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:185d83227941abf8846139ab3497ddc9bc68f07489003ec38fccb142cc39ca51 -size 1210315 diff --git a/public/packs/js/application-da7d23395df54af9dd86.js.map.gz b/public/packs/js/application-da7d23395df54af9dd86.js.map.gz deleted file mode 100644 index 9b735e1b..00000000 --- a/public/packs/js/application-da7d23395df54af9dd86.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:176ea6c12e03ed2f9cb5cc0e66b1adc47e6d8ff061ebfdc5aeda0eddf4a9d1cc -size 1485330 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index a2e83d91..e29bb929 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5243384bb8f18bb45a29f76e6e70db6d9437c10672b7b46e763d907b4776135b +oid sha256:57f89516bd8fc8bf783c327caf3b21b46b22c6cceded51ca2cf35960a53a58c6 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 7d822c0e..6b81cc02 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:337aa8b87e8d1be79a9829c0fc01dc84862e7b3602d5c81b4f12d18c6e76cce8 -size 319 +oid sha256:23934c80a74816bc46719586a7af8701b8657063ccf8532065a5f353622d82d6 +size 321 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index a3afbddd..65df44e2 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:884376efda9b7f5c5c4cc1cfcca69a8fe883ea39061d3352782bd8e0369e4a1d -size 366 +oid sha256:5d873aeab239925e40f458dc6e94a081ccc03cc27cf0f5395a9c4d2bbfbde17f +size 365 From f74c47626c1f1084e6c4ae8f2bb1bf1d16309d98 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 29 Dec 2022 16:49:33 -0300 Subject: [PATCH 072/699] [skip ci] assets --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 4 ++-- ...f8e82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css | 3 +++ ...82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css.gz | 3 +++ ...1a2d95c803f56ceaa2b4333519e99469c673d583c280a9da54b695.css | 3 +++ ...d95c803f56ceaa2b4333519e99469c673d583c280a9da54b695.css.gz | 3 +++ public/packs/css/application-3be2c380.css | 3 --- public/packs/css/application-3be2c380.css.br | 3 --- public/packs/css/application-3be2c380.css.gz | 3 --- public/packs/css/application-78a20160.css | 3 +++ public/packs/css/application-78a20160.css.br | 3 +++ public/packs/css/application-78a20160.css.gz | 3 +++ public/packs/css/application-abcdf59d.css | 3 +++ public/packs/css/application-abcdf59d.css.map | 3 +++ public/packs/js/application-acdf20413d06284f6525.js | 3 --- public/packs/js/application-acdf20413d06284f6525.js.br | 3 --- public/packs/js/application-acdf20413d06284f6525.js.gz | 3 --- public/packs/js/application-acdf20413d06284f6525.js.map | 3 --- public/packs/js/application-acdf20413d06284f6525.js.map.br | 3 --- public/packs/js/application-acdf20413d06284f6525.js.map.gz | 3 --- public/packs/js/application-b85e3489503669c56979.js | 3 +++ public/packs/js/application-b85e3489503669c56979.js.map | 3 +++ public/packs/js/application-de588fb3ec7d097a188d.js | 3 +++ ...SE.txt => application-de588fb3ec7d097a188d.js.LICENSE.txt} | 0 public/packs/js/application-de588fb3ec7d097a188d.js.br | 3 +++ public/packs/js/application-de588fb3ec7d097a188d.js.gz | 3 +++ public/packs/js/application-de588fb3ec7d097a188d.js.map | 3 +++ public/packs/js/application-de588fb3ec7d097a188d.js.map.br | 3 +++ public/packs/js/application-de588fb3ec7d097a188d.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 31 files changed, 58 insertions(+), 34 deletions(-) create mode 100644 public/assets/application-7a9f6a47d5f8e82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css create mode 100644 public/assets/application-7a9f6a47d5f8e82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css.gz create mode 100644 public/assets/new_editor-15587648151a2d95c803f56ceaa2b4333519e99469c673d583c280a9da54b695.css create mode 100644 public/assets/new_editor-15587648151a2d95c803f56ceaa2b4333519e99469c673d583c280a9da54b695.css.gz delete mode 100644 public/packs/css/application-3be2c380.css delete mode 100644 public/packs/css/application-3be2c380.css.br delete mode 100644 public/packs/css/application-3be2c380.css.gz create mode 100644 public/packs/css/application-78a20160.css create mode 100644 public/packs/css/application-78a20160.css.br create mode 100644 public/packs/css/application-78a20160.css.gz create mode 100644 public/packs/css/application-abcdf59d.css create mode 100644 public/packs/css/application-abcdf59d.css.map delete mode 100644 public/packs/js/application-acdf20413d06284f6525.js delete mode 100644 public/packs/js/application-acdf20413d06284f6525.js.br delete mode 100644 public/packs/js/application-acdf20413d06284f6525.js.gz delete mode 100644 public/packs/js/application-acdf20413d06284f6525.js.map delete mode 100644 public/packs/js/application-acdf20413d06284f6525.js.map.br delete mode 100644 public/packs/js/application-acdf20413d06284f6525.js.map.gz create mode 100644 public/packs/js/application-b85e3489503669c56979.js create mode 100644 public/packs/js/application-b85e3489503669c56979.js.map create mode 100644 public/packs/js/application-de588fb3ec7d097a188d.js rename public/packs/js/{application-acdf20413d06284f6525.js.LICENSE.txt => application-de588fb3ec7d097a188d.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-de588fb3ec7d097a188d.js.br create mode 100644 public/packs/js/application-de588fb3ec7d097a188d.js.gz create mode 100644 public/packs/js/application-de588fb3ec7d097a188d.js.map create mode 100644 public/packs/js/application-de588fb3ec7d097a188d.js.map.br create mode 100644 public/packs/js/application-de588fb3ec7d097a188d.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index cabc4505..aee98b5c 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4a40219b0c166e418a9f277ef43a909f7f9961d9eacefe5be65c113239750f1c -size 11892 +oid sha256:5aaa589ff0790fc3488aac72576adffe90030299ceb34d7334c2419fa367a084 +size 12507 diff --git a/public/assets/application-7a9f6a47d5f8e82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css b/public/assets/application-7a9f6a47d5f8e82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css new file mode 100644 index 00000000..97b58e4e --- /dev/null +++ b/public/assets/application-7a9f6a47d5f8e82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05fba25057e85979438fa88381f972a45595be6d2690b4d98650a70ba0064349 +size 231475 diff --git a/public/assets/application-7a9f6a47d5f8e82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css.gz b/public/assets/application-7a9f6a47d5f8e82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css.gz new file mode 100644 index 00000000..2789b229 --- /dev/null +++ b/public/assets/application-7a9f6a47d5f8e82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a94b9ace358883aa1bd0e188263ce4eb68992278c8d1272f8098e8d3355c00d6 +size 32125 diff --git a/public/assets/new_editor-15587648151a2d95c803f56ceaa2b4333519e99469c673d583c280a9da54b695.css b/public/assets/new_editor-15587648151a2d95c803f56ceaa2b4333519e99469c673d583c280a9da54b695.css new file mode 100644 index 00000000..56ae4aa9 --- /dev/null +++ b/public/assets/new_editor-15587648151a2d95c803f56ceaa2b4333519e99469c673d583c280a9da54b695.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8d681a496901b8002289244aed10757942ed7a9397e731adaf2b21e4b05c888 +size 249 diff --git a/public/assets/new_editor-15587648151a2d95c803f56ceaa2b4333519e99469c673d583c280a9da54b695.css.gz b/public/assets/new_editor-15587648151a2d95c803f56ceaa2b4333519e99469c673d583c280a9da54b695.css.gz new file mode 100644 index 00000000..bdf93ed9 --- /dev/null +++ b/public/assets/new_editor-15587648151a2d95c803f56ceaa2b4333519e99469c673d583c280a9da54b695.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca24f22dd61aeab05caf63d32274d779f501dcf9224265509dc523bb6b0eb287 +size 143 diff --git a/public/packs/css/application-3be2c380.css b/public/packs/css/application-3be2c380.css deleted file mode 100644 index 544ddf74..00000000 --- a/public/packs/css/application-3be2c380.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e0179eec59d4881001e3d26ec0e25d8ca1257c6e4956d76f18cc97c3325a9625 -size 48029 diff --git a/public/packs/css/application-3be2c380.css.br b/public/packs/css/application-3be2c380.css.br deleted file mode 100644 index e5774ab0..00000000 --- a/public/packs/css/application-3be2c380.css.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:48597b99b6932b41dc4fac4fea2efb1dcb258dbbfafcb618649f002b4b6801d8 -size 9703 diff --git a/public/packs/css/application-3be2c380.css.gz b/public/packs/css/application-3be2c380.css.gz deleted file mode 100644 index 306dc931..00000000 --- a/public/packs/css/application-3be2c380.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bfeb6b9af353618bdc475d6c921197da2b8a9ae7685a91772658d41883843c12 -size 12022 diff --git a/public/packs/css/application-78a20160.css b/public/packs/css/application-78a20160.css new file mode 100644 index 00000000..54cd0ac8 --- /dev/null +++ b/public/packs/css/application-78a20160.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe7683e61b7a4a1b8f0895cd06d088eb49b4a7b85e2444da12321a0a40fd1a18 +size 48903 diff --git a/public/packs/css/application-78a20160.css.br b/public/packs/css/application-78a20160.css.br new file mode 100644 index 00000000..c4d3a59f --- /dev/null +++ b/public/packs/css/application-78a20160.css.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d5b6d121c3e24e211b791380205a271fa51f6ed3fdf67deec12f82b8825a422 +size 9914 diff --git a/public/packs/css/application-78a20160.css.gz b/public/packs/css/application-78a20160.css.gz new file mode 100644 index 00000000..38641e0d --- /dev/null +++ b/public/packs/css/application-78a20160.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ca0db399534a2b63403422c1f0ba4257094392772081f51593260af93e85c25 +size 12238 diff --git a/public/packs/css/application-abcdf59d.css b/public/packs/css/application-abcdf59d.css new file mode 100644 index 00000000..e8d5f841 --- /dev/null +++ b/public/packs/css/application-abcdf59d.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:beb03f780b6ce3bbff1a667379478d24eaa21da74a2647ef552a27f2d4832363 +size 61440 diff --git a/public/packs/css/application-abcdf59d.css.map b/public/packs/css/application-abcdf59d.css.map new file mode 100644 index 00000000..9e8366a1 --- /dev/null +++ b/public/packs/css/application-abcdf59d.css.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d18dff65775085c09d9cbd79f3e324ba550340fc575ae9b6eb5bc1e407742da6 +size 147690 diff --git a/public/packs/js/application-acdf20413d06284f6525.js b/public/packs/js/application-acdf20413d06284f6525.js deleted file mode 100644 index 3c8274a0..00000000 --- a/public/packs/js/application-acdf20413d06284f6525.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f345ea6311867953163b9f456974717392c818d401133c9f17472e5af774e9a8 -size 1458143 diff --git a/public/packs/js/application-acdf20413d06284f6525.js.br b/public/packs/js/application-acdf20413d06284f6525.js.br deleted file mode 100644 index c8e5fe98..00000000 --- a/public/packs/js/application-acdf20413d06284f6525.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a1a40145fc84dad335be234ccdb88d9c12c89e9c506f8f4498fcf84622af9e3a -size 318582 diff --git a/public/packs/js/application-acdf20413d06284f6525.js.gz b/public/packs/js/application-acdf20413d06284f6525.js.gz deleted file mode 100644 index f2f841b0..00000000 --- a/public/packs/js/application-acdf20413d06284f6525.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f00fa2b08d72b36b180cc3dde30823bc6f1c134b9c1d707c97510ee8e2c77028 -size 422276 diff --git a/public/packs/js/application-acdf20413d06284f6525.js.map b/public/packs/js/application-acdf20413d06284f6525.js.map deleted file mode 100644 index 5e476c30..00000000 --- a/public/packs/js/application-acdf20413d06284f6525.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:42c72e7a58beec95a3c84e28f2cb44e32187d2a372d8fe1212ed4e1ffb97d28c -size 5649159 diff --git a/public/packs/js/application-acdf20413d06284f6525.js.map.br b/public/packs/js/application-acdf20413d06284f6525.js.map.br deleted file mode 100644 index 3b2afb65..00000000 --- a/public/packs/js/application-acdf20413d06284f6525.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ba2c27eaa36df184cc9489e10fa2ddd21649b01a70991bec769b582094256a72 -size 1216947 diff --git a/public/packs/js/application-acdf20413d06284f6525.js.map.gz b/public/packs/js/application-acdf20413d06284f6525.js.map.gz deleted file mode 100644 index df72e365..00000000 --- a/public/packs/js/application-acdf20413d06284f6525.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:73428a0def957efa42d940cb934063aab6f4fe11a9f90105a647cd07e997937d -size 1492305 diff --git a/public/packs/js/application-b85e3489503669c56979.js b/public/packs/js/application-b85e3489503669c56979.js new file mode 100644 index 00000000..c987f836 --- /dev/null +++ b/public/packs/js/application-b85e3489503669c56979.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46dc879c000efe0317c7290b5c2bb8438e1c95fd7ee6fbc96ea874768cdb9cf7 +size 4734071 diff --git a/public/packs/js/application-b85e3489503669c56979.js.map b/public/packs/js/application-b85e3489503669c56979.js.map new file mode 100644 index 00000000..c521797f --- /dev/null +++ b/public/packs/js/application-b85e3489503669c56979.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d190c2c89208100b21cabacb44dcdcb8222112c78f6e10c25c4e52aa24af74f4 +size 4562180 diff --git a/public/packs/js/application-de588fb3ec7d097a188d.js b/public/packs/js/application-de588fb3ec7d097a188d.js new file mode 100644 index 00000000..cb72f96a --- /dev/null +++ b/public/packs/js/application-de588fb3ec7d097a188d.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b12a1d9415acc13cc8d77dd26a5f27eec0496f52f0699ecb9a7d68b36de1401f +size 1458198 diff --git a/public/packs/js/application-acdf20413d06284f6525.js.LICENSE.txt b/public/packs/js/application-de588fb3ec7d097a188d.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-acdf20413d06284f6525.js.LICENSE.txt rename to public/packs/js/application-de588fb3ec7d097a188d.js.LICENSE.txt diff --git a/public/packs/js/application-de588fb3ec7d097a188d.js.br b/public/packs/js/application-de588fb3ec7d097a188d.js.br new file mode 100644 index 00000000..ed403f57 --- /dev/null +++ b/public/packs/js/application-de588fb3ec7d097a188d.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d3fb7f922464de616e5d69d6f470f479f490d804c25ec03f53d5d62555345d4 +size 318440 diff --git a/public/packs/js/application-de588fb3ec7d097a188d.js.gz b/public/packs/js/application-de588fb3ec7d097a188d.js.gz new file mode 100644 index 00000000..b2a35945 --- /dev/null +++ b/public/packs/js/application-de588fb3ec7d097a188d.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24a008c51073fc5acdc899f5442e2329935f4fb6d72c2f501747e25de4a79de1 +size 422291 diff --git a/public/packs/js/application-de588fb3ec7d097a188d.js.map b/public/packs/js/application-de588fb3ec7d097a188d.js.map new file mode 100644 index 00000000..07fa0cb0 --- /dev/null +++ b/public/packs/js/application-de588fb3ec7d097a188d.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7334ae35347731cf6cabcfb0688917a465102d2b7ffee24e9f9ee96c435271fb +size 5649290 diff --git a/public/packs/js/application-de588fb3ec7d097a188d.js.map.br b/public/packs/js/application-de588fb3ec7d097a188d.js.map.br new file mode 100644 index 00000000..eb062695 --- /dev/null +++ b/public/packs/js/application-de588fb3ec7d097a188d.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b677bc6c0c1cf1ddac61596ada4f09ccc67892ca5127398c20c6975590f7d6c1 +size 1216546 diff --git a/public/packs/js/application-de588fb3ec7d097a188d.js.map.gz b/public/packs/js/application-de588fb3ec7d097a188d.js.map.gz new file mode 100644 index 00000000..384ec06a --- /dev/null +++ b/public/packs/js/application-de588fb3ec7d097a188d.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc5f4e7c8f8dab482d55397722c84c06414d759d9fbd9a41a62ea0ddf9807aae +size 1492352 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index e29bb929..dc8c923c 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:57f89516bd8fc8bf783c327caf3b21b46b22c6cceded51ca2cf35960a53a58c6 +oid sha256:aae0edc7db1e00dd4b7b476e47767fccdd13d7aa8a64beae9335fc5ecc2a1b1f size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 6b81cc02..0ae08cc5 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:23934c80a74816bc46719586a7af8701b8657063ccf8532065a5f353622d82d6 -size 321 +oid sha256:31015f3d593a45085b615b863e6b11e40fa9b6fbed495222deeedb89666c63ef +size 319 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 65df44e2..d755f2ea 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5d873aeab239925e40f458dc6e94a081ccc03cc27cf0f5395a9c4d2bbfbde17f -size 365 +oid sha256:b7d90bc552cca0df07474a71a0b2a77b9bd5c722d8613e2b2946d028dca01705 +size 366 From 38b5e0e2e047e0a968a71434b0b5e1f7108f30b7 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 12 Jan 2023 14:26:30 -0300 Subject: [PATCH 073/699] fix: actualizar Gemfile.lock --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index 0c6265ab..b8477f11 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -174,7 +174,7 @@ GEM factory_bot (~> 6.2.0) railties (>= 5.0.0) fast_blank (1.0.1-x86_64-linux-musl) - fast_jsonparser (0.6.0-x86_64-linux-musl) + fast_jsonparser (0.5.0-x86_64-linux-musl) ffi (1.15.5-x86_64-linux-musl) flamegraph (0.9.5) forwardable-extended (2.6.0) From d59c66b478b5c44c73219b89e6a38188a07221f8 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 20 Jan 2023 18:22:08 -0300 Subject: [PATCH 074/699] feat: almacenar y renovar tokens de distributed press --- Gemfile | 1 + Gemfile.lock | 40 ++++++++++- Procfile | 1 + .../renew_distributed_press_tokens_job.rb | 17 +++++ app/models/distributed_press_publisher.rb | 68 +++++++++++++++++++ ...5420_create_distributed_press_publisher.rb | 14 ++++ lib/tasks/distributed_press.rake | 10 +++ monit.conf | 5 ++ 8 files changed, 154 insertions(+), 2 deletions(-) create mode 100644 app/jobs/renew_distributed_press_tokens_job.rb create mode 100644 app/models/distributed_press_publisher.rb create mode 100644 db/migrate/20230119165420_create_distributed_press_publisher.rb create mode 100644 lib/tasks/distributed_press.rake diff --git a/Gemfile b/Gemfile index 82819e45..1151785a 100644 --- a/Gemfile +++ b/Gemfile @@ -40,6 +40,7 @@ gem 'commonmarker' gem 'devise' gem 'devise-i18n' gem 'devise_invitable' +gem 'distributed-press-api-client', '~> 0.2.0' gem 'email_address', git: 'https://github.com/fauno/email_address', branch: 'i18n' gem 'exception_notification' gem 'fast_blank' diff --git a/Gemfile.lock b/Gemfile.lock index b8477f11..95178fd8 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -114,6 +114,7 @@ GEM rack-test (>= 0.5.4) xpath (>= 2.0, < 4.0) chartkick (4.2.1) + climate_control (1.2.0) coderay (1.1.3) colorator (1.1.0) commonmarker (0.23.6-x86_64-linux-musl) @@ -151,12 +152,45 @@ GEM devise_invitable (2.0.6) actionmailer (>= 5.0) devise (>= 4.6) + distributed-press-api-client (0.2.0) + addressable (~> 2.3, >= 2.3.0) + climate_control + dry-schema + httparty (~> 0.18) + json (~> 2.1, >= 2.1.0) + jwt (~> 2.6.0) dotenv (2.8.1) dotenv-rails (2.8.1) dotenv (= 2.8.1) railties (>= 3.2) down (5.4.0) addressable (~> 2.8) + dry-configurable (1.0.1) + dry-core (~> 1.0, < 2) + zeitwerk (~> 2.6) + dry-core (1.0.0) + concurrent-ruby (~> 1.0) + zeitwerk (~> 2.6) + dry-inflector (1.0.0) + dry-initializer (3.1.1) + dry-logic (1.5.0) + concurrent-ruby (~> 1.0) + dry-core (~> 1.0, < 2) + zeitwerk (~> 2.6) + dry-schema (1.13.0) + concurrent-ruby (~> 1.0) + dry-configurable (~> 1.0, >= 1.0.1) + dry-core (~> 1.0, < 2) + dry-initializer (~> 3.0) + dry-logic (>= 1.5, < 2) + dry-types (>= 1.7, < 2) + zeitwerk (~> 2.6) + dry-types (1.7.0) + concurrent-ruby (~> 1.0) + dry-core (~> 1.0, < 2) + dry-inflector (~> 1.0, < 2) + dry-logic (>= 1.4, < 2) + zeitwerk (~> 2.6) ed25519 (1.3.0-x86_64-linux-musl) em-websocket (0.5.3) eventmachine (>= 0.12.9) @@ -215,8 +249,8 @@ GEM thor hiredis (0.6.3-x86_64-linux-musl) http_parser.rb (0.8.0-x86_64-linux-musl) - httparty (0.20.0) - mime-types (~> 3.0) + httparty (0.21.0) + mini_mime (>= 1.0.0) multi_xml (>= 0.5.2) i18n (1.8.11) concurrent-ruby (~> 1.0) @@ -262,6 +296,7 @@ GEM jekyll-watch (2.2.1) listen (~> 3.0) json (2.6.3-x86_64-linux-musl) + jwt (2.6.0) kaminari (1.2.2) activesupport (>= 4.1.0) kaminari-actionview (= 1.2.2) @@ -546,6 +581,7 @@ DEPENDENCIES devise devise-i18n devise_invitable + distributed-press-api-client (~> 0.2.0) dotenv-rails down ed25519 diff --git a/Procfile b/Procfile index 45fe1df7..79daa90b 100644 --- a/Procfile +++ b/Procfile @@ -1,2 +1,3 @@ cleanup: bundle exec rake cleanup:everything stats: bundle exec rake stats:process_all +distributed_press_renew_tokens: bundle exec rake distributed_press:tokens:renew diff --git a/app/jobs/renew_distributed_press_tokens_job.rb b/app/jobs/renew_distributed_press_tokens_job.rb new file mode 100644 index 00000000..5664d9fa --- /dev/null +++ b/app/jobs/renew_distributed_press_tokens_job.rb @@ -0,0 +1,17 @@ +# frozen_string_literal: true + +# Renueva los tokens de Distributed Press antes que se venzan, +# activando los callbacks que hacen que se refresque el token. +class RenewDistributedPressTokensJob < ApplicationJob + # Renueva todos los tokens a punto de vencer o informa el error sin + # detener la tarea si algo pasa. + def perform + DistributedPressPublisher.with_about_to_expire_tokens.find_each do |publisher| + publisher.touch + rescue DistributedPress::V1::Error => e + data = { instance: publisher.instance, expires_at: publisher.client.token.expires_at } + + ExceptionNotifier.notify_exception(e, data: data) + end + end +end diff --git a/app/models/distributed_press_publisher.rb b/app/models/distributed_press_publisher.rb new file mode 100644 index 00000000..c120811e --- /dev/null +++ b/app/models/distributed_press_publisher.rb @@ -0,0 +1,68 @@ +# frozen_string_literal: true + +require 'distributed_press/v1' + +# Almacena el token de autenticación y la URL, por ahora solo vamos +# a tener uno, pero queda abierta la posibilidad de agregar más. +class DistributedPressPublisher < ApplicationRecord + # Cifrar la información del token en la base de datos + has_encrypted :token + + # La instancia es única + validates_uniqueness_of :instance + + # El token es necesario + validates_presence_of :token + + # Mantener la fecha de vencimiento actualizada + before_save :update_expires_at_from_token!, :update_token_from_client! + + # Devuelve todos los tokens que vencen en una hora + scope :with_about_to_expire_tokens, -> do + where('expires_at > ? and expires_at < ?', Time.now, Time.now + 1.hour) + end + + # Al cambiar el token genera un cliente nuevo + # + # @return [String] + def token=(new_token) + @client = nil + super + end + + # Al cambiar la instancia genera un cliente nuevo + # + # @return [String] + def instance=(new_instance) + @client = nil + super + end + + # Instancia un cliente de Distributed Press a partir del token. Al + # cargar un token a punto de vencer se renueva automáticamente. + # + # @return [DistributedPress::V1::Client] + def client + @client ||= DistributedPress::V1::Client.new(url: instance, token: token) + end + + private + + # Actualiza o desactiva la fecha de vencimiento a partir de la + # información del token. + # + # @return [nil] + def update_expires_at_from_token! + self.expires_at = client.token.forever? ? nil : client.token.expires_at + nil + end + + # Actualiza el token a partir del cliente, que ya actualiza el token + # automáticamente. + # + # @return [nil] + def update_token_from_client! + self.token = client.token.to_s + nil + end +end diff --git a/db/migrate/20230119165420_create_distributed_press_publisher.rb b/db/migrate/20230119165420_create_distributed_press_publisher.rb new file mode 100644 index 00000000..8d8de37a --- /dev/null +++ b/db/migrate/20230119165420_create_distributed_press_publisher.rb @@ -0,0 +1,14 @@ +# frozen_string_literal: true + +# Crea la tabla de publishers de Distributed Press que contiene las +# instancias y tokens +class CreateDistributedPressPublisher < ActiveRecord::Migration[6.1] + def change + create_table :distributed_press_publishers do |t| + t.timestamps + t.string :instance, unique: true + t.text :token_ciphertext, null: false + t.datetime :expires_at, null: true + end + end +end diff --git a/lib/tasks/distributed_press.rake b/lib/tasks/distributed_press.rake new file mode 100644 index 00000000..8ba270ec --- /dev/null +++ b/lib/tasks/distributed_press.rake @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +namespace :distributed_press do + namespace :tokens do + desc 'Renew tokens' + task renew: :environment do + RenewDistributedPressTokensJob.perform_now + end + end +end diff --git a/monit.conf b/monit.conf index 6e5e8b64..ebb27fe7 100644 --- a/monit.conf +++ b/monit.conf @@ -13,3 +13,8 @@ check program stats with path "/usr/bin/foreman run -f /srv/Procfile -d /srv stats" as uid "rails" gid "www-data" every "0 1 * * *" if status != 0 then alert + +check program distributed_press_tokens_renew + with path "/usr/bin/foreman run -f /srv/Procfile -d /srv distributed_press_tokens_renew" as uid "rails" gid "www-data" + every "0 3 * * *" + if status != 0 then alert From 39601b0e9dd8aef9bbee3cf31fc248cf477e2529 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 25 Jan 2023 13:44:28 -0300 Subject: [PATCH 075/699] [skip ci] JS --- ...fest-a1cbb907961024fc033716a7d30668dd.json | 4 +- ...5778f034eccdd0565697f589654dabb363d79a.css | 3 ++ ...8f034eccdd0565697f589654dabb363d79a.css.gz | 3 ++ public/manifest.webmanifest | 50 +++++++++++++++++++ public/packs/css/application-08988bf8.css | 3 ++ public/packs/css/application-08988bf8.css.br | 3 ++ public/packs/css/application-08988bf8.css.gz | 3 ++ .../js/application-366adb49c505e0e33b62.js | 3 ++ ...cation-366adb49c505e0e33b62.js.LICENSE.txt | 3 ++ .../js/application-366adb49c505e0e33b62.js.br | 3 ++ .../js/application-366adb49c505e0e33b62.js.gz | 3 ++ .../application-366adb49c505e0e33b62.js.map | 3 ++ ...application-366adb49c505e0e33b62.js.map.br | 3 ++ ...application-366adb49c505e0e33b62.js.map.gz | 3 ++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 2 +- public/packs/manifest.json.gz | 4 +- 17 files changed, 92 insertions(+), 6 deletions(-) create mode 100644 public/assets/fonts-c51ac4112aa6f7493cea2408ae5778f034eccdd0565697f589654dabb363d79a.css create mode 100644 public/assets/fonts-c51ac4112aa6f7493cea2408ae5778f034eccdd0565697f589654dabb363d79a.css.gz create mode 100644 public/manifest.webmanifest create mode 100644 public/packs/css/application-08988bf8.css create mode 100644 public/packs/css/application-08988bf8.css.br create mode 100644 public/packs/css/application-08988bf8.css.gz create mode 100644 public/packs/js/application-366adb49c505e0e33b62.js create mode 100644 public/packs/js/application-366adb49c505e0e33b62.js.LICENSE.txt create mode 100644 public/packs/js/application-366adb49c505e0e33b62.js.br create mode 100644 public/packs/js/application-366adb49c505e0e33b62.js.gz create mode 100644 public/packs/js/application-366adb49c505e0e33b62.js.map create mode 100644 public/packs/js/application-366adb49c505e0e33b62.js.map.br create mode 100644 public/packs/js/application-366adb49c505e0e33b62.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index aee98b5c..3514146f 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5aaa589ff0790fc3488aac72576adffe90030299ceb34d7334c2419fa367a084 -size 12507 +oid sha256:bc66f080e4cf7832f7a18fb91f7987846e8652f3970dd7e66592f34f1adadc2b +size 12891 diff --git a/public/assets/fonts-c51ac4112aa6f7493cea2408ae5778f034eccdd0565697f589654dabb363d79a.css b/public/assets/fonts-c51ac4112aa6f7493cea2408ae5778f034eccdd0565697f589654dabb363d79a.css new file mode 100644 index 00000000..1ee2f722 --- /dev/null +++ b/public/assets/fonts-c51ac4112aa6f7493cea2408ae5778f034eccdd0565697f589654dabb363d79a.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6cd9507ad59b2d60d4fefd2ee1e20b75c263872ce57bf8d62b6a7fd565d89279 +size 785 diff --git a/public/assets/fonts-c51ac4112aa6f7493cea2408ae5778f034eccdd0565697f589654dabb363d79a.css.gz b/public/assets/fonts-c51ac4112aa6f7493cea2408ae5778f034eccdd0565697f589654dabb363d79a.css.gz new file mode 100644 index 00000000..6aa4a074 --- /dev/null +++ b/public/assets/fonts-c51ac4112aa6f7493cea2408ae5778f034eccdd0565697f589654dabb363d79a.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7ef626d9caeb98918792415865ddb3339176fd6f0d64866263b3e69cf1b90cf +size 379 diff --git a/public/manifest.webmanifest b/public/manifest.webmanifest new file mode 100644 index 00000000..f00037df --- /dev/null +++ b/public/manifest.webmanifest @@ -0,0 +1,50 @@ + + +{ + "name": "Sutty", + "short_name": "Sutty", + "start_url": ".", + "display": "standalone", + "background_color": "#fff", + "description": "Sutty crea sitios seguros, veloces y visibles", + "icons": [ + + + { + "src": "assets/images/icon48.png", + "sizes": "48x48", + "type": "image/png" + }, + + { + "src": "assets/images/icon72.png", + "sizes": "72x72", + "type": "image/png" + }, + + { + "src": "assets/images/icon96.png", + "sizes": "96x96", + "type": "image/png" + }, + + { + "src": "assets/images/icon144.png", + "sizes": "144x144", + "type": "image/png" + }, + + { + "src": "assets/images/icon168.png", + "sizes": "168x168", + "type": "image/png" + }, + + { + "src": "assets/images/icon192.png", + "sizes": "192x192", + "type": "image/png" + } + + ] +} diff --git a/public/packs/css/application-08988bf8.css b/public/packs/css/application-08988bf8.css new file mode 100644 index 00000000..54cd0ac8 --- /dev/null +++ b/public/packs/css/application-08988bf8.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe7683e61b7a4a1b8f0895cd06d088eb49b4a7b85e2444da12321a0a40fd1a18 +size 48903 diff --git a/public/packs/css/application-08988bf8.css.br b/public/packs/css/application-08988bf8.css.br new file mode 100644 index 00000000..c4d3a59f --- /dev/null +++ b/public/packs/css/application-08988bf8.css.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d5b6d121c3e24e211b791380205a271fa51f6ed3fdf67deec12f82b8825a422 +size 9914 diff --git a/public/packs/css/application-08988bf8.css.gz b/public/packs/css/application-08988bf8.css.gz new file mode 100644 index 00000000..38641e0d --- /dev/null +++ b/public/packs/css/application-08988bf8.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ca0db399534a2b63403422c1f0ba4257094392772081f51593260af93e85c25 +size 12238 diff --git a/public/packs/js/application-366adb49c505e0e33b62.js b/public/packs/js/application-366adb49c505e0e33b62.js new file mode 100644 index 00000000..69f7b187 --- /dev/null +++ b/public/packs/js/application-366adb49c505e0e33b62.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:129f50c0cd4e411433e139c5e76127d84380411aa79fe1bceef85bda16dae118 +size 1458373 diff --git a/public/packs/js/application-366adb49c505e0e33b62.js.LICENSE.txt b/public/packs/js/application-366adb49c505e0e33b62.js.LICENSE.txt new file mode 100644 index 00000000..89f0cf4f --- /dev/null +++ b/public/packs/js/application-366adb49c505e0e33b62.js.LICENSE.txt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f +size 629 diff --git a/public/packs/js/application-366adb49c505e0e33b62.js.br b/public/packs/js/application-366adb49c505e0e33b62.js.br new file mode 100644 index 00000000..7c936b92 --- /dev/null +++ b/public/packs/js/application-366adb49c505e0e33b62.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa2ce78f9d5613102d7ba02b67787aeca360b8d07be887c4e49297ef48543f7d +size 318393 diff --git a/public/packs/js/application-366adb49c505e0e33b62.js.gz b/public/packs/js/application-366adb49c505e0e33b62.js.gz new file mode 100644 index 00000000..40456d14 --- /dev/null +++ b/public/packs/js/application-366adb49c505e0e33b62.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aea5656d84b68f6968a63a7936e9f608cf3eca932a18dbf42870ff89b11e9273 +size 422364 diff --git a/public/packs/js/application-366adb49c505e0e33b62.js.map b/public/packs/js/application-366adb49c505e0e33b62.js.map new file mode 100644 index 00000000..59f8a47f --- /dev/null +++ b/public/packs/js/application-366adb49c505e0e33b62.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ad72e0b3c2f8357f0351e238fa2937b3ca82c479273bc2d6bb3b2fb6959e0de +size 5649659 diff --git a/public/packs/js/application-366adb49c505e0e33b62.js.map.br b/public/packs/js/application-366adb49c505e0e33b62.js.map.br new file mode 100644 index 00000000..b89ee66b --- /dev/null +++ b/public/packs/js/application-366adb49c505e0e33b62.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e6d196fccf772790882639f1923bd46b46777f1138ccfd3bda5855f9f5620a5 +size 1217434 diff --git a/public/packs/js/application-366adb49c505e0e33b62.js.map.gz b/public/packs/js/application-366adb49c505e0e33b62.js.map.gz new file mode 100644 index 00000000..43c0dcee --- /dev/null +++ b/public/packs/js/application-366adb49c505e0e33b62.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16ac52c6c8563f485aa1144b442931e78034fb88dca5a740720e6cb3dced1935 +size 1492415 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index dc8c923c..425c0316 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:aae0edc7db1e00dd4b7b476e47767fccdd13d7aa8a64beae9335fc5ecc2a1b1f +oid sha256:842b43b6ae22df29f70be10f49ba6b6c8abaedb457a6b083b6dc76778882e1bc size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 0ae08cc5..2a056bfd 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:31015f3d593a45085b615b863e6b11e40fa9b6fbed495222deeedb89666c63ef +oid sha256:6b47b92c900e6b23c57cba5db446a14a38659555dca2a647678f98771a20c4a3 size 319 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index d755f2ea..07292118 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b7d90bc552cca0df07474a71a0b2a77b9bd5c722d8613e2b2946d028dca01705 -size 366 +oid sha256:d9b42964b825a6ef1ffdfe6a5b56e1cc4c6f7ac3b904034fab17b9df0f8bb7ab +size 367 From ac8d95590bb581a30d85e467085691e32dd4a2ec Mon Sep 17 00:00:00 2001 From: f Date: Wed, 25 Jan 2023 14:17:57 -0300 Subject: [PATCH 076/699] ci: build assets --- .woodpecker.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/.woodpecker.yml b/.woodpecker.yml index 087b2e90..48d1c696 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -1,4 +1,17 @@ pipeline: + assets: + image: "registry.nulo.in/sutty/panel:3.14.8-2.7.6" + commands: + - "apk add python2" + - "yarn" + - "RAILS_GROUPS=assets bundle install --path=vendor" + - "RAILS_GROUPS=assets bundle exec rails assets:precompile assets:clean" + - "git add assets && git commit -m \"[skip ci] JS\" || true" + when: + branch: + - "rails" + - "panel.sutty.nl" + path: "app/assets/**/*" publish: image: plugins/docker settings: From f96994b72ac15951a3cd84f95a94060c0c75daed Mon Sep 17 00:00:00 2001 From: f Date: Wed, 25 Jan 2023 14:27:14 -0300 Subject: [PATCH 077/699] ci: compilar assets cuando cambian las dependencias --- .woodpecker.yml | 6 +++++- package.json | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/.woodpecker.yml b/.woodpecker.yml index 48d1c696..b3406f39 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -11,7 +11,11 @@ pipeline: branch: - "rails" - "panel.sutty.nl" - path: "app/assets/**/*" + path: + include: + - "app/assets/**/*" + - "package.json" + - "yarn.lock" publish: image: plugins/docker settings: diff --git a/package.json b/package.json index b8e5a939..ed157c8f 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,6 @@ { "name": "sutty", + "author": "Sutty ", "private": true, "dependencies": { "@airbrake/browser": "^1.4.1", From 738f8b7e48b80e59bc5d70e9703ddd188e9d3c2b Mon Sep 17 00:00:00 2001 From: f Date: Thu, 26 Jan 2023 15:52:25 -0300 Subject: [PATCH 078/699] fix: temporalmente no agregar licencias --- app/services/site_service.rb | 4 ---- 1 file changed, 4 deletions(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 22423bb8..d95dcb62 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -17,8 +17,6 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do commit_config(action: :create) end - add_licencias - site end @@ -30,8 +28,6 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do commit_config(action: :update) end - change_licencias - site end From 3acf2a6a425d233f65fe147e073ce48ce8adf984 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 26 Jan 2023 15:54:42 -0300 Subject: [PATCH 079/699] fix: volver a 0.2.0 --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index fbefd156..95178fd8 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -152,7 +152,7 @@ GEM devise_invitable (2.0.6) actionmailer (>= 5.0) devise (>= 4.6) - distributed-press-api-client (0.2.1) + distributed-press-api-client (0.2.0) addressable (~> 2.3, >= 2.3.0) climate_control dry-schema From d3e9bc7ec4caf1fb2f27cdc75e89eaa1cdf9168f Mon Sep 17 00:00:00 2001 From: f Date: Thu, 26 Jan 2023 15:58:22 -0300 Subject: [PATCH 080/699] fix: asignar el hostname por defecto --- app/models/deploy_distributed_press.rb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/models/deploy_distributed_press.rb b/app/models/deploy_distributed_press.rb index 7834c025..c7a63951 100644 --- a/app/models/deploy_distributed_press.rb +++ b/app/models/deploy_distributed_press.rb @@ -84,6 +84,8 @@ class DeployDistributedPress < Deploy # # @return [nil] def create_remote_site! + self.hostname = site.hostname + created_site = site_client.create(create_site) self.remote_site_id = created_site[:id] From 05b3053e9e3720212495234d99f6db70d02cccbf Mon Sep 17 00:00:00 2001 From: f Date: Thu, 9 Mar 2023 15:54:34 -0300 Subject: [PATCH 081/699] fix: mejorar la ayuda del nombre #9986 --- config/locales/en.yml | 2 +- config/locales/es.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/config/locales/en.yml b/config/locales/en.yml index 10a4793b..724d6bda 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -351,7 +351,7 @@ en: title: There were errors and we couldn't save your changes :( help: Please, look for the invalid fields to fix them help: - name: "The name of your site. It can only include numbers and letters." + name: "This will be the host name for your site, ie. **example**.sutty.nl. Choose an expression up to 63 characters. It can contain only lowercase letters, numbers and dashes. It can't start or end with a dash, or be entirely composed of numbers." title: 'The title can be anything you want' description: 'You site description that appears in search engines. Between 50 and 160 characters.' design: 'Select the design for your site. You can change it later. We add more designs from time to time!' diff --git a/config/locales/es.yml b/config/locales/es.yml index 02973de5..5a20ba2e 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -357,7 +357,7 @@ es: title: Hubo errores y no pudimos guardar tus cambios :( help: Por favor, busca los campos marcados como no válidos para resolverlos help: - name: 'El nombre de tu sitio que formará parte de la dirección (**ejemplo**.sutty.nl). Solo puede contener letras minúsculas, números y guiones.' + name: 'El nombre de tu sitio que formará parte de la dirección (**ejemplo**.sutty.nl). Solo puede contener hasta 63 letras minúsculas, números y guiones. No puede empezar ni terminar con guión, ni estar compuesto enteramente por números.' title: 'El título de tu sitio puede ser lo que quieras.' description: 'La descripción del sitio, que saldrá en buscadores. Entre 50 y 160 caracteres.' design: 'Elegí el diseño que va a tener tu sitio aquí. Podés cambiarlo luego. De tanto en tanto vamos sumando diseños nuevos.' From b6b5a39c664446d4e08664e664f0a3c83205b130 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 9 Mar 2023 15:54:50 -0300 Subject: [PATCH 082/699] fix: el limite inferior es 10 caracteres --- config/locales/en.yml | 2 +- config/locales/es.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/config/locales/en.yml b/config/locales/en.yml index 724d6bda..007b586c 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -353,7 +353,7 @@ en: help: name: "This will be the host name for your site, ie. **example**.sutty.nl. Choose an expression up to 63 characters. It can contain only lowercase letters, numbers and dashes. It can't start or end with a dash, or be entirely composed of numbers." title: 'The title can be anything you want' - description: 'You site description that appears in search engines. Between 50 and 160 characters.' + description: 'You site description that appears in search engines. Between 10 and 160 characters.' design: 'Select the design for your site. You can change it later. We add more designs from time to time!' licencia: 'Everything we publish has automatic copyright. This means nobody can use our works without explicit permission. By diff --git a/config/locales/es.yml b/config/locales/es.yml index 5a20ba2e..2833b8cd 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -359,7 +359,7 @@ es: help: name: 'El nombre de tu sitio que formará parte de la dirección (**ejemplo**.sutty.nl). Solo puede contener hasta 63 letras minúsculas, números y guiones. No puede empezar ni terminar con guión, ni estar compuesto enteramente por números.' title: 'El título de tu sitio puede ser lo que quieras.' - description: 'La descripción del sitio, que saldrá en buscadores. Entre 50 y 160 caracteres.' + description: 'La descripción del sitio, que saldrá en buscadores. Entre 10 y 160 caracteres.' design: 'Elegí el diseño que va a tener tu sitio aquí. Podés cambiarlo luego. De tanto en tanto vamos sumando diseños nuevos.' licencia: 'Todo lo que publicamos posee automáticamente derechos de autore. Esto significa que nadie puede hacer uso de nuestras From 0119cab8da0bd73dedfb39d9a4c79fbb85b7a436 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 13 Mar 2023 18:46:22 -0300 Subject: [PATCH 083/699] =?UTF-8?q?chore:=20secar=20el=20c=C3=B3digo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit la primera hipótesis sobre #10031 es que las excepciones cancelan la actualización de la información, como si fueran una transacción, pero haciendo pruebas manuales no pasa. con este cambio al menos el código queda más limpio. --- app/jobs/deploy_job.rb | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/app/jobs/deploy_job.rb b/app/jobs/deploy_job.rb index 76ec05a3..d7d5f92b 100644 --- a/app/jobs/deploy_job.rb +++ b/app/jobs/deploy_job.rb @@ -19,7 +19,6 @@ class DeployJob < ApplicationJob # hora original para poder ir haciendo timeouts. if @site.building? if 10.minutes.ago >= time - @site.update status: 'waiting' raise DeployTimedOutException, "#{@site.name} la tarea estuvo más de 10 minutos esperando, volviendo al estado original" end @@ -41,17 +40,13 @@ class DeployJob < ApplicationJob # No es opcional unless @deployed[:deploy_local] - @site.update status: 'waiting' - notify_usuaries if notify - # Hacer fallar la tarea raise DeployException, deploy_local.build_stats.last.log end deploy_others - - # Volver a la espera - @site.update status: 'waiting' + ensure + @site&.update status: 'waiting' notify_usuaries if notify end From 9dea78fcc2c145e6ec4f231fbc4f0f2094024115 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 13 Mar 2023 18:46:56 -0300 Subject: [PATCH 084/699] fix: no notificar al liberar la tarea --- app/jobs/deploy_job.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/app/jobs/deploy_job.rb b/app/jobs/deploy_job.rb index d7d5f92b..27ee30ca 100644 --- a/app/jobs/deploy_job.rb +++ b/app/jobs/deploy_job.rb @@ -19,6 +19,7 @@ class DeployJob < ApplicationJob # hora original para poder ir haciendo timeouts. if @site.building? if 10.minutes.ago >= time + notify = false raise DeployTimedOutException, "#{@site.name} la tarea estuvo más de 10 minutos esperando, volviendo al estado original" end From b93c2ac51db1685430c3125299c685d5dc06852e Mon Sep 17 00:00:00 2001 From: f Date: Tue, 14 Mar 2023 19:12:35 -0300 Subject: [PATCH 085/699] ci: force assets rebuild --- app/javascript/packs/application.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/javascript/packs/application.js b/app/javascript/packs/application.js index 492ca736..b7e5fcfb 100644 --- a/app/javascript/packs/application.js +++ b/app/javascript/packs/application.js @@ -23,3 +23,5 @@ import 'chartkick/chart.js' Rails.start() Turbolinks.start() ActiveStorage.start() + +// ci: force rebuild From d8cadabfc288436ddf20afd69232fe302ca818bf Mon Sep 17 00:00:00 2001 From: f Date: Tue, 14 Mar 2023 19:22:29 -0300 Subject: [PATCH 086/699] ci: force rebuild --- app/javascript/packs/application.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/app/javascript/packs/application.js b/app/javascript/packs/application.js index b7e5fcfb..492ca736 100644 --- a/app/javascript/packs/application.js +++ b/app/javascript/packs/application.js @@ -23,5 +23,3 @@ import 'chartkick/chart.js' Rails.start() Turbolinks.start() ActiveStorage.start() - -// ci: force rebuild From 759ec00c3a3705db9895bc01d5735e1a01839a22 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 14 Mar 2023 19:30:58 -0300 Subject: [PATCH 087/699] fix: usar .env --- .env.example | 3 ++- .woodpecker.yml | 7 ++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.env.example b/.env.example index fb086224..3d134dc2 100644 --- a/.env.example +++ b/.env.example @@ -1,7 +1,8 @@ +RAILS_MASTER_KEY=CHANGEME RAILS_GROUPS=assets DELEGATE=athshe.sutty.nl HAINISH=../haini.sh/haini.sh -DATABASE= +DATABASE_URL=postgres://suttier@postgresql.sutty.local/sutty RAILS_ENV=development IMAP_SERVER= DEFAULT_FROM= diff --git a/.woodpecker.yml b/.woodpecker.yml index 07f18570..1ad83060 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -2,10 +2,11 @@ pipeline: assets: image: "registry.nulo.in/sutty/panel:3.14.8-2.7.6" commands: - - "apk add python2" + - "apk add python2 dotenv" - "yarn" - - "RAILS_GROUPS=assets bundle install --path=vendor" - - "RAILS_GROUPS=assets RAILS_MASTER_KEY=nada bundle exec rails assets:precompile assets:clean" + - "cp .env.example .env" + - "dotenv bundle install --path=vendor" + - "dotenv RAILS_ENV=production bundle exec rails assets:precompile assets:clean" - "git add assets && git commit -m \"[skip ci] JS\" || true" when: branch: From b3db02d2b209853536ac18bce5b9bbcd32d21238 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 14 Mar 2023 19:31:18 -0300 Subject: [PATCH 088/699] chore: force ci --- app/javascript/packs/application.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/javascript/packs/application.js b/app/javascript/packs/application.js index 492ca736..41f04e39 100644 --- a/app/javascript/packs/application.js +++ b/app/javascript/packs/application.js @@ -23,3 +23,5 @@ import 'chartkick/chart.js' Rails.start() Turbolinks.start() ActiveStorage.start() + +// ci From dba3ed9a9ba88bcb351c5391faf71783b668ca15 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 14 Mar 2023 19:51:46 -0300 Subject: [PATCH 089/699] fix: credenciales de prueba --- .env.example | 3 ++- .gitignore | 1 - config/credentials.yml.enc | 1 + 3 files changed, 3 insertions(+), 2 deletions(-) create mode 100644 config/credentials.yml.enc diff --git a/.env.example b/.env.example index 3d134dc2..f3cf48d9 100644 --- a/.env.example +++ b/.env.example @@ -1,4 +1,5 @@ -RAILS_MASTER_KEY=CHANGEME +# pwgen -1 32 +RAILS_MASTER_KEY=11111111111111111111111111111111 RAILS_GROUPS=assets DELEGATE=athshe.sutty.nl HAINISH=../haini.sh/haini.sh diff --git a/.gitignore b/.gitignore index e6f2adbb..e6229083 100644 --- a/.gitignore +++ b/.gitignore @@ -32,7 +32,6 @@ # Ignore master key for decrypting credentials and more. /config/master.key -/config/credentials.yml.enc /public/packs-test /node_modules diff --git a/config/credentials.yml.enc b/config/credentials.yml.enc new file mode 100644 index 00000000..ad215f22 --- /dev/null +++ b/config/credentials.yml.enc @@ -0,0 +1 @@ +r7drFxABS9885DuIhjg3ErL++9dkHZdO6/kBlBNlML20R2R2hhYkE1C2Q9fO7zGaHQX3y51FKu9nRAI9Bomp5JCF/RR3oEzP24Je9DsN/Q2lg3smTNuXKV5J8NuqZPRVBZIp7FsyR66xThzI6ZSrk0IFXRpTwQkW83v3Z+FqLKCAFBAiJ84occonkLUxppL0W0IYN4FzNAK0KiPixZDTg/oAqG17pY0suyJRCe86OYkdrvblI/EEmoxKzSPzT4fml4wka26z4KYeRYDjaQmlTJ8/zLK82AruxhYvL9abdtjsUYIVVWHdNrlRRZaVhFP79YIa0AFfHK1KviMKAAfb8EfDar1fivtzW9mb46dzZcEu0ynJB+HDdM1JFiVw33INI6BY8I604pu5B5ebd9Djd1nIP2wNZNu7ZBOgvbPnDJUdenVAnWYZAqmPVAryK1MfwvaG0RmVYnhlIZoQ2HTLENHV9AyAfUOUiZUse7GQ85iOqrn3yk2KxEh7i4U5yqZu2tuMBBmQK8jpDWiu6hEtIIDgL2327EUNTw1uDvMfpD64I9pBwHGXhKBr3Qi02rNwOI6wJBTLTaSHv15oAolVmiI3kWtQca+UO7LfMaU+mLb6xZ4jm3/maNmugKKHD4Ud7FO2nJ6m2FPUB7uolQPiiSY4cnkd2uKNn7aQPMDcWlQn1CQuwriGwhJD27YfYzyJRD5PG33bmR3JSSjUe4BI9cBTv3UZ7XS/B7Z7SEzqef09hpMUVzEsEsw5yW6Qm1MV8AhYaxPuWLOElwiATcObehJ7LyjeKQSwoTioEG4GBlvgujcNTxI5O0RkU7hP6I/A3Q==--3br8yafpyHA5Y6YU--Aq+HRsZsGTHm4pOfvQYyoA== \ No newline at end of file From c0dfb0e7abcad2a65efe2e06ecaa4d3c2ca69645 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 14 Mar 2023 19:52:30 -0300 Subject: [PATCH 090/699] ci: force build --- app/javascript/packs/application.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/app/javascript/packs/application.js b/app/javascript/packs/application.js index 41f04e39..492ca736 100644 --- a/app/javascript/packs/application.js +++ b/app/javascript/packs/application.js @@ -23,5 +23,3 @@ import 'chartkick/chart.js' Rails.start() Turbolinks.start() ActiveStorage.start() - -// ci From 4ce2549bb256a1d18b75e4265b4917bbeb8e5e6d Mon Sep 17 00:00:00 2001 From: f Date: Tue, 14 Mar 2023 20:05:57 -0300 Subject: [PATCH 091/699] fix: credentials must be strings --- config/credentials.yml.enc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/credentials.yml.enc b/config/credentials.yml.enc index ad215f22..4add450d 100644 --- a/config/credentials.yml.enc +++ b/config/credentials.yml.enc @@ -1 +1 @@ -r7drFxABS9885DuIhjg3ErL++9dkHZdO6/kBlBNlML20R2R2hhYkE1C2Q9fO7zGaHQX3y51FKu9nRAI9Bomp5JCF/RR3oEzP24Je9DsN/Q2lg3smTNuXKV5J8NuqZPRVBZIp7FsyR66xThzI6ZSrk0IFXRpTwQkW83v3Z+FqLKCAFBAiJ84occonkLUxppL0W0IYN4FzNAK0KiPixZDTg/oAqG17pY0suyJRCe86OYkdrvblI/EEmoxKzSPzT4fml4wka26z4KYeRYDjaQmlTJ8/zLK82AruxhYvL9abdtjsUYIVVWHdNrlRRZaVhFP79YIa0AFfHK1KviMKAAfb8EfDar1fivtzW9mb46dzZcEu0ynJB+HDdM1JFiVw33INI6BY8I604pu5B5ebd9Djd1nIP2wNZNu7ZBOgvbPnDJUdenVAnWYZAqmPVAryK1MfwvaG0RmVYnhlIZoQ2HTLENHV9AyAfUOUiZUse7GQ85iOqrn3yk2KxEh7i4U5yqZu2tuMBBmQK8jpDWiu6hEtIIDgL2327EUNTw1uDvMfpD64I9pBwHGXhKBr3Qi02rNwOI6wJBTLTaSHv15oAolVmiI3kWtQca+UO7LfMaU+mLb6xZ4jm3/maNmugKKHD4Ud7FO2nJ6m2FPUB7uolQPiiSY4cnkd2uKNn7aQPMDcWlQn1CQuwriGwhJD27YfYzyJRD5PG33bmR3JSSjUe4BI9cBTv3UZ7XS/B7Z7SEzqef09hpMUVzEsEsw5yW6Qm1MV8AhYaxPuWLOElwiATcObehJ7LyjeKQSwoTioEG4GBlvgujcNTxI5O0RkU7hP6I/A3Q==--3br8yafpyHA5Y6YU--Aq+HRsZsGTHm4pOfvQYyoA== \ No newline at end of file +1jEfzfldP9tT4+HWfhP48I9hw31gYCnnxHWpYjPrcTm/pgkFdiG+mDa6y31EOxzs50w6FEw2GO127BnyBSUIPIxuWY0cR96xL5pVrS3vjyzM84QN4lJF9ER0Tz1AQ9S7NJ54CelSkMfFt/rf+O4YM8cLtdSVsVC/HlGbp16p3D1pm4MFo5cQb0hEmlyyYlzEn4oJtsp/MCIwI4+z8oFhxKdMIxdbiw+KS/7PBRfMm1h5rdGORCnD69iVmnXseMvVtZn9A7N7uR6+gFlhxlD5yyEW0pwTj3tbu9NeIOVbtmYOL5ZhLW9REXtGTqR5Op/LN+ukIXbDNEScKltJXUdWfa9Pd/QjVT8IMURZ04POEMDgs1cw363yz4f+WQForhSco9oYLDOd5hTGRXoZ9fnjnfJSTjINM62hkfDY3w3+s844nNbjbj+lPTJHU/QjRhcuNqBDDxWUfwTmRIqm5zrelnHnZnuFmFwCNet6NChC6EFUAFjrals6kTSQllyMt4xImqA+HL7DnjWj6VURSH+nGQTA4tQvDdfbDwTzg/PvRkJcsy2dRd135RQdmRZ+8KXBviLabwdR256vaCqSO1j+jyeUPGLll35ghyLxncyBkkAKt1zaDRPDWgVafg0gJ3v7hVV5TYgToPzlv4w88KPCY7cBhkb1qGoXAhtO6iAuZYK9eyZd1gNQJKyqbcLqA5aTTX/ylfdbptWhaZ8ibB8KBgVyn2RmrOHEhB38rDSMHHNfK3Xs4/hhqMFIGHGTGCUYVmjCzhVFd15yRurU32d3YtP8W4L77H7qkFsF1gnvsZx+R084LcJqknwY94dmjtUE4x2u+Qh3ElFj--lr8JoUq1WH9xXNsB--mE8hxHADL7SbDWabAPY1+Q== \ No newline at end of file From 70f6d773056b50ab00b582a1b3a19b34a16739bf Mon Sep 17 00:00:00 2001 From: f Date: Tue, 14 Mar 2023 20:06:37 -0300 Subject: [PATCH 092/699] chore: force ci --- app/javascript/packs/application.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/javascript/packs/application.js b/app/javascript/packs/application.js index 492ca736..41f04e39 100644 --- a/app/javascript/packs/application.js +++ b/app/javascript/packs/application.js @@ -23,3 +23,5 @@ import 'chartkick/chart.js' Rails.start() Turbolinks.start() ActiveStorage.start() + +// ci From 98159fb67f863a85e72b8ab5998646526d983d2f Mon Sep 17 00:00:00 2001 From: f Date: Tue, 14 Mar 2023 20:27:07 -0300 Subject: [PATCH 093/699] chore: force build --- app/javascript/packs/application.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/app/javascript/packs/application.js b/app/javascript/packs/application.js index 41f04e39..492ca736 100644 --- a/app/javascript/packs/application.js +++ b/app/javascript/packs/application.js @@ -23,5 +23,3 @@ import 'chartkick/chart.js' Rails.start() Turbolinks.start() ActiveStorage.start() - -// ci From ae7564dbc04a9fe1b8ee720e5633c44c2a8751c7 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 14 Mar 2023 20:30:27 -0300 Subject: [PATCH 094/699] build: force --- app/javascript/packs/application.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/javascript/packs/application.js b/app/javascript/packs/application.js index 492ca736..41f04e39 100644 --- a/app/javascript/packs/application.js +++ b/app/javascript/packs/application.js @@ -23,3 +23,5 @@ import 'chartkick/chart.js' Rails.start() Turbolinks.start() ActiveStorage.start() + +// ci From 0c285af9f24080e8eb5f7e7ac2662c3758a6f536 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 15 Mar 2023 11:23:35 -0300 Subject: [PATCH 095/699] fix: no duplicar el remote --- .woodpecker.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.woodpecker.yml b/.woodpecker.yml index 198f5a99..41dc85a3 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -35,14 +35,14 @@ pipeline: - "echo \"$${SSH_KEY}\" | base64 -d | ssh-add -" - "git config user.name Woodpecker" - "git config user.email ci@sutty.coop.ar" - - "git remote add origin $${ORIGIN}" + - "git remote add upstream $${ORIGIN}" - "git checkout -B ${CI_COMMIT_BRANCH}" - "yarn" - "cp .env.example .env" - "dotenv bundle install --path=vendor" - "dotenv RAILS_ENV=production bundle exec rails assets:precompile assets:clean" - "git add public && git commit -m \"ci: assets [skip ci]\"" - - "git push origin ${CI_COMMIT_BRANCH}" + - "git push upstream ${CI_COMMIT_BRANCH}" secrets: - "SSH_KEY" - "KNOWN_HOSTS" From a60a03c6d0c6edcafcbf038fc079095cc298cd4e Mon Sep 17 00:00:00 2001 From: f Date: Wed, 15 Mar 2023 11:23:51 -0300 Subject: [PATCH 096/699] build: force --- app/javascript/packs/application.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/app/javascript/packs/application.js b/app/javascript/packs/application.js index 41f04e39..492ca736 100644 --- a/app/javascript/packs/application.js +++ b/app/javascript/packs/application.js @@ -23,5 +23,3 @@ import 'chartkick/chart.js' Rails.start() Turbolinks.start() ActiveStorage.start() - -// ci From d8170add459eec6a2ccf6060d8c83e66cb53a696 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 16 Mar 2023 09:51:28 -0300 Subject: [PATCH 097/699] =?UTF-8?q?ci:=20probar=20conexi=C3=B3n=20a=20ssh?= =?UTF-8?q?=20antes=20de=20perder=20tiempo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .woodpecker.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.woodpecker.yml b/.woodpecker.yml index 41dc85a3..29cc756a 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -29,10 +29,12 @@ pipeline: image: "registry.nulo.in/sutty/panel:${ALPINE_VERSION}-${RUBY_VERSION}.${RUBY_PATCH}" commands: - "apk add python2 dotenv openssh-client" - - "mkdir ~/.ssh/" + - "install -m 700 ~/.ssh/" - "echo \"$${KNOW_HOSTS}\" | base64 -d >> ~/.ssh/known_hosts" + - "chmod 600 ~/.ssh/known_hosts" - "eval $(ssh-agent -s)" - "echo \"$${SSH_KEY}\" | base64 -d | ssh-add -" + - "ssh $${ORIGIN%:*}" - "git config user.name Woodpecker" - "git config user.email ci@sutty.coop.ar" - "git remote add upstream $${ORIGIN}" From 2b0c1d88fd44e2a9ef2dff9bfbc69ac89e2e350a Mon Sep 17 00:00:00 2001 From: f Date: Thu, 16 Mar 2023 09:51:44 -0300 Subject: [PATCH 098/699] ci: forzar assets hasta que esto funcione --- .woodpecker.yml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/.woodpecker.yml b/.woodpecker.yml index 29cc756a..9143a3cd 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -53,12 +53,6 @@ pipeline: branch: - "rails" - "panel.sutty.nl" - path: - include: - - "app/assets/**/*" - - "app/javascript/**/*" - - "package.json" - - "yarn.lock" matrix: include: - ALPINE_VERSION: "3.14.8" From 8b70efb0c1d0604eaca207751d33813098956bb0 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 16 Mar 2023 09:55:08 -0300 Subject: [PATCH 099/699] =?UTF-8?q?fixup!=20ci:=20probar=20conexi=C3=B3n?= =?UTF-8?q?=20a=20ssh=20antes=20de=20perder=20tiempo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .woodpecker.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.woodpecker.yml b/.woodpecker.yml index 9143a3cd..79c5eab6 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -29,7 +29,7 @@ pipeline: image: "registry.nulo.in/sutty/panel:${ALPINE_VERSION}-${RUBY_VERSION}.${RUBY_PATCH}" commands: - "apk add python2 dotenv openssh-client" - - "install -m 700 ~/.ssh/" + - "install -d -m 700 ~/.ssh/" - "echo \"$${KNOW_HOSTS}\" | base64 -d >> ~/.ssh/known_hosts" - "chmod 600 ~/.ssh/known_hosts" - "eval $(ssh-agent -s)" From 5ffbabfa4737cb76aed53504c3f24be1944a1904 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 16 Mar 2023 09:57:17 -0300 Subject: [PATCH 100/699] =?UTF-8?q?fixup!=20ci:=20probar=20conexi=C3=B3n?= =?UTF-8?q?=20a=20ssh=20antes=20de=20perder=20tiempo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .woodpecker.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.woodpecker.yml b/.woodpecker.yml index 79c5eab6..fc623527 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -32,6 +32,7 @@ pipeline: - "install -d -m 700 ~/.ssh/" - "echo \"$${KNOW_HOSTS}\" | base64 -d >> ~/.ssh/known_hosts" - "chmod 600 ~/.ssh/known_hosts" + - "echo \"$${ORIGIN}\" | cut -d @ -f 2 | cut -d : -f 1 | xargs ssh-keygen -F" - "eval $(ssh-agent -s)" - "echo \"$${SSH_KEY}\" | base64 -d | ssh-add -" - "ssh $${ORIGIN%:*}" From 3eef6fc1b478f1bc1a731485477d69456014bce6 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 16 Mar 2023 10:00:43 -0300 Subject: [PATCH 101/699] =?UTF-8?q?fixup!=20ci:=20probar=20conexi=C3=B3n?= =?UTF-8?q?=20a=20ssh=20antes=20de=20perder=20tiempo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .woodpecker.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.woodpecker.yml b/.woodpecker.yml index fc623527..1a83ee9c 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -31,7 +31,11 @@ pipeline: - "apk add python2 dotenv openssh-client" - "install -d -m 700 ~/.ssh/" - "echo \"$${KNOW_HOSTS}\" | base64 -d >> ~/.ssh/known_hosts" + - "echo \"$${KNOW_HOSTS}\"" + - "echo \"$${KNOW_HOSTS}\" | base64 -d" - "chmod 600 ~/.ssh/known_hosts" + - "cat ~/.ssh/known_hosts" + - "ls -hal ~/.ssh" - "echo \"$${ORIGIN}\" | cut -d @ -f 2 | cut -d : -f 1 | xargs ssh-keygen -F" - "eval $(ssh-agent -s)" - "echo \"$${SSH_KEY}\" | base64 -d | ssh-add -" From ccfc0fae34728e7bd41b9aa6089fba51a7fee92f Mon Sep 17 00:00:00 2001 From: f Date: Thu, 16 Mar 2023 10:01:58 -0300 Subject: [PATCH 102/699] =?UTF-8?q?fixup!=20ci:=20probar=20conexi=C3=B3n?= =?UTF-8?q?=20a=20ssh=20antes=20de=20perder=20tiempo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .woodpecker.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.woodpecker.yml b/.woodpecker.yml index 1a83ee9c..3d7d1e34 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -30,9 +30,9 @@ pipeline: commands: - "apk add python2 dotenv openssh-client" - "install -d -m 700 ~/.ssh/" - - "echo \"$${KNOW_HOSTS}\" | base64 -d >> ~/.ssh/known_hosts" - - "echo \"$${KNOW_HOSTS}\"" - - "echo \"$${KNOW_HOSTS}\" | base64 -d" + - "echo \"$${KNOWN_HOSTS}\" | base64 -d >> ~/.ssh/known_hosts" + - "echo \"$${KNOWN_HOSTS}\"" + - "echo \"$${KNOWN_HOSTS}\" | base64 -d" - "chmod 600 ~/.ssh/known_hosts" - "cat ~/.ssh/known_hosts" - "ls -hal ~/.ssh" From 190aa74f58400605024447650edf43dea3633b6a Mon Sep 17 00:00:00 2001 From: f Date: Thu, 16 Mar 2023 10:04:06 -0300 Subject: [PATCH 103/699] =?UTF-8?q?fixup!=20ci:=20probar=20conexi=C3=B3n?= =?UTF-8?q?=20a=20ssh=20antes=20de=20perder=20tiempo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .woodpecker.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/.woodpecker.yml b/.woodpecker.yml index 3d7d1e34..f6e6c0f3 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -31,12 +31,7 @@ pipeline: - "apk add python2 dotenv openssh-client" - "install -d -m 700 ~/.ssh/" - "echo \"$${KNOWN_HOSTS}\" | base64 -d >> ~/.ssh/known_hosts" - - "echo \"$${KNOWN_HOSTS}\"" - - "echo \"$${KNOWN_HOSTS}\" | base64 -d" - "chmod 600 ~/.ssh/known_hosts" - - "cat ~/.ssh/known_hosts" - - "ls -hal ~/.ssh" - - "echo \"$${ORIGIN}\" | cut -d @ -f 2 | cut -d : -f 1 | xargs ssh-keygen -F" - "eval $(ssh-agent -s)" - "echo \"$${SSH_KEY}\" | base64 -d | ssh-add -" - "ssh $${ORIGIN%:*}" From c67db9087d9443f15c8d881cb9c3652515959cb9 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Thu, 16 Mar 2023 13:09:46 +0000 Subject: [PATCH 104/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 4 ++-- ...9a395c0fede5f96bcc30a93a832cfbb325d6c50f1c31fffe8f7352b.js | 3 +++ ...95c0fede5f96bcc30a93a832cfbb325d6c50f1c31fffe8f7352b.js.gz | 3 +++ public/packs/css/application-619c3ad0.css | 3 +++ public/packs/css/application-619c3ad0.css.br | 3 +++ public/packs/css/application-619c3ad0.css.gz | 3 +++ public/packs/js/application-2616234043725064e154.js | 3 +++ .../packs/js/application-2616234043725064e154.js.LICENSE.txt | 3 +++ public/packs/js/application-2616234043725064e154.js.br | 3 +++ public/packs/js/application-2616234043725064e154.js.gz | 3 +++ public/packs/js/application-2616234043725064e154.js.map | 3 +++ public/packs/js/application-2616234043725064e154.js.map.br | 3 +++ public/packs/js/application-2616234043725064e154.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 16 files changed, 43 insertions(+), 7 deletions(-) create mode 100644 public/assets/blazer/application-ec191b6689a395c0fede5f96bcc30a93a832cfbb325d6c50f1c31fffe8f7352b.js create mode 100644 public/assets/blazer/application-ec191b6689a395c0fede5f96bcc30a93a832cfbb325d6c50f1c31fffe8f7352b.js.gz create mode 100644 public/packs/css/application-619c3ad0.css create mode 100644 public/packs/css/application-619c3ad0.css.br create mode 100644 public/packs/css/application-619c3ad0.css.gz create mode 100644 public/packs/js/application-2616234043725064e154.js create mode 100644 public/packs/js/application-2616234043725064e154.js.LICENSE.txt create mode 100644 public/packs/js/application-2616234043725064e154.js.br create mode 100644 public/packs/js/application-2616234043725064e154.js.gz create mode 100644 public/packs/js/application-2616234043725064e154.js.map create mode 100644 public/packs/js/application-2616234043725064e154.js.map.br create mode 100644 public/packs/js/application-2616234043725064e154.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 3514146f..50150388 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bc66f080e4cf7832f7a18fb91f7987846e8652f3970dd7e66592f34f1adadc2b -size 12891 +oid sha256:78472916234b07cdf7279df3b50d7a309dffae7ee347bdfce293ce6c7e3464bd +size 13214 diff --git a/public/assets/blazer/application-ec191b6689a395c0fede5f96bcc30a93a832cfbb325d6c50f1c31fffe8f7352b.js b/public/assets/blazer/application-ec191b6689a395c0fede5f96bcc30a93a832cfbb325d6c50f1c31fffe8f7352b.js new file mode 100644 index 00000000..5ea9b7f1 --- /dev/null +++ b/public/assets/blazer/application-ec191b6689a395c0fede5f96bcc30a93a832cfbb325d6c50f1c31fffe8f7352b.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7425badb1fcf60b27d22aed3d4ff8a68c9f65770127234714db354a6dddbd37 +size 1974293 diff --git a/public/assets/blazer/application-ec191b6689a395c0fede5f96bcc30a93a832cfbb325d6c50f1c31fffe8f7352b.js.gz b/public/assets/blazer/application-ec191b6689a395c0fede5f96bcc30a93a832cfbb325d6c50f1c31fffe8f7352b.js.gz new file mode 100644 index 00000000..728eb3ed --- /dev/null +++ b/public/assets/blazer/application-ec191b6689a395c0fede5f96bcc30a93a832cfbb325d6c50f1c31fffe8f7352b.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:541f3578df5e183ad4111c52ebc9a403437fde6f37f55b0b1172cb89e50d0b79 +size 378607 diff --git a/public/packs/css/application-619c3ad0.css b/public/packs/css/application-619c3ad0.css new file mode 100644 index 00000000..54cd0ac8 --- /dev/null +++ b/public/packs/css/application-619c3ad0.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe7683e61b7a4a1b8f0895cd06d088eb49b4a7b85e2444da12321a0a40fd1a18 +size 48903 diff --git a/public/packs/css/application-619c3ad0.css.br b/public/packs/css/application-619c3ad0.css.br new file mode 100644 index 00000000..c4d3a59f --- /dev/null +++ b/public/packs/css/application-619c3ad0.css.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d5b6d121c3e24e211b791380205a271fa51f6ed3fdf67deec12f82b8825a422 +size 9914 diff --git a/public/packs/css/application-619c3ad0.css.gz b/public/packs/css/application-619c3ad0.css.gz new file mode 100644 index 00000000..38641e0d --- /dev/null +++ b/public/packs/css/application-619c3ad0.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ca0db399534a2b63403422c1f0ba4257094392772081f51593260af93e85c25 +size 12238 diff --git a/public/packs/js/application-2616234043725064e154.js b/public/packs/js/application-2616234043725064e154.js new file mode 100644 index 00000000..e5e5c2d4 --- /dev/null +++ b/public/packs/js/application-2616234043725064e154.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d65a9b66a2aa79b5d2e7ba759cefcffd9337b2f5728e02b92c9ae0cc09616f01 +size 1458335 diff --git a/public/packs/js/application-2616234043725064e154.js.LICENSE.txt b/public/packs/js/application-2616234043725064e154.js.LICENSE.txt new file mode 100644 index 00000000..89f0cf4f --- /dev/null +++ b/public/packs/js/application-2616234043725064e154.js.LICENSE.txt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f +size 629 diff --git a/public/packs/js/application-2616234043725064e154.js.br b/public/packs/js/application-2616234043725064e154.js.br new file mode 100644 index 00000000..e79fa83b --- /dev/null +++ b/public/packs/js/application-2616234043725064e154.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a89d14dcfff747eeb3f195aa2e490f0330260dc400b6c99100f11b20f5af2da +size 318462 diff --git a/public/packs/js/application-2616234043725064e154.js.gz b/public/packs/js/application-2616234043725064e154.js.gz new file mode 100644 index 00000000..8c58efab --- /dev/null +++ b/public/packs/js/application-2616234043725064e154.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:723c86a5d2b8f68a492a2f0bac87053a4a4d0f252eaeba386cc0be65dd1452fc +size 422351 diff --git a/public/packs/js/application-2616234043725064e154.js.map b/public/packs/js/application-2616234043725064e154.js.map new file mode 100644 index 00000000..2c52fc8f --- /dev/null +++ b/public/packs/js/application-2616234043725064e154.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9cd05eac565cbc84316debaa3f6e98fa0bae8c4009e2ddb32d1afde30b9dd55f +size 5649555 diff --git a/public/packs/js/application-2616234043725064e154.js.map.br b/public/packs/js/application-2616234043725064e154.js.map.br new file mode 100644 index 00000000..e7a208e0 --- /dev/null +++ b/public/packs/js/application-2616234043725064e154.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:942865bbcebd236a9f9bade91506297a0cfd4d7d5ed830be40535623007ff93c +size 1216618 diff --git a/public/packs/js/application-2616234043725064e154.js.map.gz b/public/packs/js/application-2616234043725064e154.js.map.gz new file mode 100644 index 00000000..4e3a1a64 --- /dev/null +++ b/public/packs/js/application-2616234043725064e154.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:384a609848dcb83e6df010338461f32ec60fa5b298e9295c1fb4c598e9072d7f +size 1492439 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 425c0316..d0ccc345 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:842b43b6ae22df29f70be10f49ba6b6c8abaedb457a6b083b6dc76778882e1bc +oid sha256:1d6bf7429acd68ec646b1ca1943e510c59a58c379e79d73084585a8bd1f2a9d2 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 2a056bfd..e2f1ec4c 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6b47b92c900e6b23c57cba5db446a14a38659555dca2a647678f98771a20c4a3 -size 319 +oid sha256:46246f77192775ebfe577a3306a0725aef15b3df22bd090c792a0821acc381b5 +size 321 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 07292118..795b027c 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d9b42964b825a6ef1ffdfe6a5b56e1cc4c6f7ac3b904034fab17b9df0f8bb7ab -size 367 +oid sha256:107d85b11eb946956d6a9bd806611d38a342442ef08e91015eb93e9ad5f64507 +size 365 From a4c5238e55c6f96ff90bab05cedbf77221734b3d Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Thu, 16 Mar 2023 13:32:06 +0000 Subject: [PATCH 105/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/css/application-08988bf8.css | 3 --- public/packs/css/application-08988bf8.css.br | 3 --- public/packs/css/application-08988bf8.css.gz | 3 --- public/packs/css/application-78a20160.css | 3 --- public/packs/css/application-78a20160.css.br | 3 --- public/packs/css/application-78a20160.css.gz | 3 --- public/packs/css/application-abcdf59d.css | 3 --- public/packs/css/application-abcdf59d.css.map | 3 --- public/packs/js/application-366adb49c505e0e33b62.js | 3 --- .../packs/js/application-366adb49c505e0e33b62.js.LICENSE.txt | 3 --- public/packs/js/application-366adb49c505e0e33b62.js.br | 3 --- public/packs/js/application-366adb49c505e0e33b62.js.gz | 3 --- public/packs/js/application-366adb49c505e0e33b62.js.map | 3 --- public/packs/js/application-366adb49c505e0e33b62.js.map.br | 3 --- public/packs/js/application-366adb49c505e0e33b62.js.map.gz | 3 --- public/packs/js/application-b85e3489503669c56979.js | 3 --- public/packs/js/application-b85e3489503669c56979.js.map | 3 --- public/packs/js/application-de588fb3ec7d097a188d.js | 3 --- .../packs/js/application-de588fb3ec7d097a188d.js.LICENSE.txt | 3 --- public/packs/js/application-de588fb3ec7d097a188d.js.br | 3 --- public/packs/js/application-de588fb3ec7d097a188d.js.gz | 3 --- public/packs/js/application-de588fb3ec7d097a188d.js.map | 3 --- public/packs/js/application-de588fb3ec7d097a188d.js.map.br | 3 --- public/packs/js/application-de588fb3ec7d097a188d.js.map.gz | 3 --- 25 files changed, 1 insertion(+), 73 deletions(-) delete mode 100644 public/packs/css/application-08988bf8.css delete mode 100644 public/packs/css/application-08988bf8.css.br delete mode 100644 public/packs/css/application-08988bf8.css.gz delete mode 100644 public/packs/css/application-78a20160.css delete mode 100644 public/packs/css/application-78a20160.css.br delete mode 100644 public/packs/css/application-78a20160.css.gz delete mode 100644 public/packs/css/application-abcdf59d.css delete mode 100644 public/packs/css/application-abcdf59d.css.map delete mode 100644 public/packs/js/application-366adb49c505e0e33b62.js delete mode 100644 public/packs/js/application-366adb49c505e0e33b62.js.LICENSE.txt delete mode 100644 public/packs/js/application-366adb49c505e0e33b62.js.br delete mode 100644 public/packs/js/application-366adb49c505e0e33b62.js.gz delete mode 100644 public/packs/js/application-366adb49c505e0e33b62.js.map delete mode 100644 public/packs/js/application-366adb49c505e0e33b62.js.map.br delete mode 100644 public/packs/js/application-366adb49c505e0e33b62.js.map.gz delete mode 100644 public/packs/js/application-b85e3489503669c56979.js delete mode 100644 public/packs/js/application-b85e3489503669c56979.js.map delete mode 100644 public/packs/js/application-de588fb3ec7d097a188d.js delete mode 100644 public/packs/js/application-de588fb3ec7d097a188d.js.LICENSE.txt delete mode 100644 public/packs/js/application-de588fb3ec7d097a188d.js.br delete mode 100644 public/packs/js/application-de588fb3ec7d097a188d.js.gz delete mode 100644 public/packs/js/application-de588fb3ec7d097a188d.js.map delete mode 100644 public/packs/js/application-de588fb3ec7d097a188d.js.map.br delete mode 100644 public/packs/js/application-de588fb3ec7d097a188d.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 50150388..4cfdde09 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:78472916234b07cdf7279df3b50d7a309dffae7ee347bdfce293ce6c7e3464bd +oid sha256:128f29cdd0426482c11b966286f959554581ff846831b38b8e186901769e61a8 size 13214 diff --git a/public/packs/css/application-08988bf8.css b/public/packs/css/application-08988bf8.css deleted file mode 100644 index 54cd0ac8..00000000 --- a/public/packs/css/application-08988bf8.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fe7683e61b7a4a1b8f0895cd06d088eb49b4a7b85e2444da12321a0a40fd1a18 -size 48903 diff --git a/public/packs/css/application-08988bf8.css.br b/public/packs/css/application-08988bf8.css.br deleted file mode 100644 index c4d3a59f..00000000 --- a/public/packs/css/application-08988bf8.css.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8d5b6d121c3e24e211b791380205a271fa51f6ed3fdf67deec12f82b8825a422 -size 9914 diff --git a/public/packs/css/application-08988bf8.css.gz b/public/packs/css/application-08988bf8.css.gz deleted file mode 100644 index 38641e0d..00000000 --- a/public/packs/css/application-08988bf8.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3ca0db399534a2b63403422c1f0ba4257094392772081f51593260af93e85c25 -size 12238 diff --git a/public/packs/css/application-78a20160.css b/public/packs/css/application-78a20160.css deleted file mode 100644 index 54cd0ac8..00000000 --- a/public/packs/css/application-78a20160.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fe7683e61b7a4a1b8f0895cd06d088eb49b4a7b85e2444da12321a0a40fd1a18 -size 48903 diff --git a/public/packs/css/application-78a20160.css.br b/public/packs/css/application-78a20160.css.br deleted file mode 100644 index c4d3a59f..00000000 --- a/public/packs/css/application-78a20160.css.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8d5b6d121c3e24e211b791380205a271fa51f6ed3fdf67deec12f82b8825a422 -size 9914 diff --git a/public/packs/css/application-78a20160.css.gz b/public/packs/css/application-78a20160.css.gz deleted file mode 100644 index 38641e0d..00000000 --- a/public/packs/css/application-78a20160.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3ca0db399534a2b63403422c1f0ba4257094392772081f51593260af93e85c25 -size 12238 diff --git a/public/packs/css/application-abcdf59d.css b/public/packs/css/application-abcdf59d.css deleted file mode 100644 index e8d5f841..00000000 --- a/public/packs/css/application-abcdf59d.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:beb03f780b6ce3bbff1a667379478d24eaa21da74a2647ef552a27f2d4832363 -size 61440 diff --git a/public/packs/css/application-abcdf59d.css.map b/public/packs/css/application-abcdf59d.css.map deleted file mode 100644 index 9e8366a1..00000000 --- a/public/packs/css/application-abcdf59d.css.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d18dff65775085c09d9cbd79f3e324ba550340fc575ae9b6eb5bc1e407742da6 -size 147690 diff --git a/public/packs/js/application-366adb49c505e0e33b62.js b/public/packs/js/application-366adb49c505e0e33b62.js deleted file mode 100644 index 69f7b187..00000000 --- a/public/packs/js/application-366adb49c505e0e33b62.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:129f50c0cd4e411433e139c5e76127d84380411aa79fe1bceef85bda16dae118 -size 1458373 diff --git a/public/packs/js/application-366adb49c505e0e33b62.js.LICENSE.txt b/public/packs/js/application-366adb49c505e0e33b62.js.LICENSE.txt deleted file mode 100644 index 89f0cf4f..00000000 --- a/public/packs/js/application-366adb49c505e0e33b62.js.LICENSE.txt +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f -size 629 diff --git a/public/packs/js/application-366adb49c505e0e33b62.js.br b/public/packs/js/application-366adb49c505e0e33b62.js.br deleted file mode 100644 index 7c936b92..00000000 --- a/public/packs/js/application-366adb49c505e0e33b62.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fa2ce78f9d5613102d7ba02b67787aeca360b8d07be887c4e49297ef48543f7d -size 318393 diff --git a/public/packs/js/application-366adb49c505e0e33b62.js.gz b/public/packs/js/application-366adb49c505e0e33b62.js.gz deleted file mode 100644 index 40456d14..00000000 --- a/public/packs/js/application-366adb49c505e0e33b62.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:aea5656d84b68f6968a63a7936e9f608cf3eca932a18dbf42870ff89b11e9273 -size 422364 diff --git a/public/packs/js/application-366adb49c505e0e33b62.js.map b/public/packs/js/application-366adb49c505e0e33b62.js.map deleted file mode 100644 index 59f8a47f..00000000 --- a/public/packs/js/application-366adb49c505e0e33b62.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7ad72e0b3c2f8357f0351e238fa2937b3ca82c479273bc2d6bb3b2fb6959e0de -size 5649659 diff --git a/public/packs/js/application-366adb49c505e0e33b62.js.map.br b/public/packs/js/application-366adb49c505e0e33b62.js.map.br deleted file mode 100644 index b89ee66b..00000000 --- a/public/packs/js/application-366adb49c505e0e33b62.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0e6d196fccf772790882639f1923bd46b46777f1138ccfd3bda5855f9f5620a5 -size 1217434 diff --git a/public/packs/js/application-366adb49c505e0e33b62.js.map.gz b/public/packs/js/application-366adb49c505e0e33b62.js.map.gz deleted file mode 100644 index 43c0dcee..00000000 --- a/public/packs/js/application-366adb49c505e0e33b62.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:16ac52c6c8563f485aa1144b442931e78034fb88dca5a740720e6cb3dced1935 -size 1492415 diff --git a/public/packs/js/application-b85e3489503669c56979.js b/public/packs/js/application-b85e3489503669c56979.js deleted file mode 100644 index c987f836..00000000 --- a/public/packs/js/application-b85e3489503669c56979.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:46dc879c000efe0317c7290b5c2bb8438e1c95fd7ee6fbc96ea874768cdb9cf7 -size 4734071 diff --git a/public/packs/js/application-b85e3489503669c56979.js.map b/public/packs/js/application-b85e3489503669c56979.js.map deleted file mode 100644 index c521797f..00000000 --- a/public/packs/js/application-b85e3489503669c56979.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d190c2c89208100b21cabacb44dcdcb8222112c78f6e10c25c4e52aa24af74f4 -size 4562180 diff --git a/public/packs/js/application-de588fb3ec7d097a188d.js b/public/packs/js/application-de588fb3ec7d097a188d.js deleted file mode 100644 index cb72f96a..00000000 --- a/public/packs/js/application-de588fb3ec7d097a188d.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b12a1d9415acc13cc8d77dd26a5f27eec0496f52f0699ecb9a7d68b36de1401f -size 1458198 diff --git a/public/packs/js/application-de588fb3ec7d097a188d.js.LICENSE.txt b/public/packs/js/application-de588fb3ec7d097a188d.js.LICENSE.txt deleted file mode 100644 index 89f0cf4f..00000000 --- a/public/packs/js/application-de588fb3ec7d097a188d.js.LICENSE.txt +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f -size 629 diff --git a/public/packs/js/application-de588fb3ec7d097a188d.js.br b/public/packs/js/application-de588fb3ec7d097a188d.js.br deleted file mode 100644 index ed403f57..00000000 --- a/public/packs/js/application-de588fb3ec7d097a188d.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2d3fb7f922464de616e5d69d6f470f479f490d804c25ec03f53d5d62555345d4 -size 318440 diff --git a/public/packs/js/application-de588fb3ec7d097a188d.js.gz b/public/packs/js/application-de588fb3ec7d097a188d.js.gz deleted file mode 100644 index b2a35945..00000000 --- a/public/packs/js/application-de588fb3ec7d097a188d.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:24a008c51073fc5acdc899f5442e2329935f4fb6d72c2f501747e25de4a79de1 -size 422291 diff --git a/public/packs/js/application-de588fb3ec7d097a188d.js.map b/public/packs/js/application-de588fb3ec7d097a188d.js.map deleted file mode 100644 index 07fa0cb0..00000000 --- a/public/packs/js/application-de588fb3ec7d097a188d.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7334ae35347731cf6cabcfb0688917a465102d2b7ffee24e9f9ee96c435271fb -size 5649290 diff --git a/public/packs/js/application-de588fb3ec7d097a188d.js.map.br b/public/packs/js/application-de588fb3ec7d097a188d.js.map.br deleted file mode 100644 index eb062695..00000000 --- a/public/packs/js/application-de588fb3ec7d097a188d.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b677bc6c0c1cf1ddac61596ada4f09ccc67892ca5127398c20c6975590f7d6c1 -size 1216546 diff --git a/public/packs/js/application-de588fb3ec7d097a188d.js.map.gz b/public/packs/js/application-de588fb3ec7d097a188d.js.map.gz deleted file mode 100644 index 384ec06a..00000000 --- a/public/packs/js/application-de588fb3ec7d097a188d.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:cc5f4e7c8f8dab482d55397722c84c06414d759d9fbd9a41a62ea0ddf9807aae -size 1492352 From b1f9f37b9cac4a9b643166246d786fb999b644ab Mon Sep 17 00:00:00 2001 From: f Date: Thu, 16 Mar 2023 12:33:56 -0300 Subject: [PATCH 106/699] Revert "ci: forzar assets hasta que esto funcione" This reverts commit 2b0c1d88fd44e2a9ef2dff9bfbc69ac89e2e350a. --- .woodpecker.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.woodpecker.yml b/.woodpecker.yml index febb1a9b..ab4887ac 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -56,6 +56,12 @@ pipeline: branch: - "rails" - "panel.sutty.nl" + path: + include: + - "app/assets/**/*" + - "app/javascript/**/*" + - "package.json" + - "yarn.lock" matrix: include: - ALPINE_VERSION: "3.14.8" From 3230f71166cd47ffddfabb112cf9d1dfb204761d Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 Mar 2023 18:38:47 -0300 Subject: [PATCH 107/699] feat: los deploys son interdependientes --- app/models/deploy.rb | 3 +++ app/models/deploy_alternative_domain.rb | 2 ++ app/models/deploy_rsync.rb | 8 ++++++++ app/models/deploy_www.rb | 2 ++ app/models/deploy_zip.rb | 2 ++ 5 files changed, 17 insertions(+) diff --git a/app/models/deploy.rb b/app/models/deploy.rb index 3f034ad5..40cb79b5 100644 --- a/app/models/deploy.rb +++ b/app/models/deploy.rb @@ -1,6 +1,7 @@ # frozen_string_literal: true require 'open3' + # Este modelo implementa los distintos tipos de alojamiento que provee # Sutty. # @@ -11,6 +12,8 @@ class Deploy < ApplicationRecord belongs_to :site has_many :build_stats, dependent: :destroy + DEPENDENCIES = [] + def deploy raise NotImplementedError end diff --git a/app/models/deploy_alternative_domain.rb b/app/models/deploy_alternative_domain.rb index e4960e65..fce69159 100644 --- a/app/models/deploy_alternative_domain.rb +++ b/app/models/deploy_alternative_domain.rb @@ -4,6 +4,8 @@ class DeployAlternativeDomain < Deploy store :values, accessors: %i[hostname], coder: JSON + DEPENDENCIES = %i[local] + # Generar un link simbólico del sitio principal al alternativo def deploy File.symlink?(destination) || diff --git a/app/models/deploy_rsync.rb b/app/models/deploy_rsync.rb index 996f8cdd..ed71ec37 100644 --- a/app/models/deploy_rsync.rb +++ b/app/models/deploy_rsync.rb @@ -5,6 +5,14 @@ class DeployRsync < Deploy store :values, accessors: %i[destination host_keys], coder: JSON + DEPENDENCIES = %i[ + alternative_domain + hidden_service + local + www + zip + ] + def deploy ssh? && rsync end diff --git a/app/models/deploy_www.rb b/app/models/deploy_www.rb index 5602b0fc..088b0179 100644 --- a/app/models/deploy_www.rb +++ b/app/models/deploy_www.rb @@ -4,6 +4,8 @@ class DeployWww < Deploy store :values, accessors: %i[], coder: JSON + DEPENDENCIES = %i[local] + before_destroy :remove_destination! def deploy diff --git a/app/models/deploy_zip.rb b/app/models/deploy_zip.rb index ec8973d1..4bc9a240 100644 --- a/app/models/deploy_zip.rb +++ b/app/models/deploy_zip.rb @@ -8,6 +8,8 @@ require 'zip' class DeployZip < Deploy store :values, accessors: %i[], coder: JSON + DEPENDENCIES = %i[local] + # Una vez que el sitio está generado, tomar todos los archivos y # y generar un zip accesible públicamente. # From 2d3e4300c3bbefbd5a9a063f1c8ef40071a03dc6 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 Mar 2023 18:54:38 -0300 Subject: [PATCH 108/699] feat: usar un grafo dirigido para ordenar las dependencias #10464 --- Gemfile | 1 + Gemfile.lock | 7 +++++++ app/models/site/deploy_dependencies.rb | 28 ++++++++++++++++++++++++++ 3 files changed, 36 insertions(+) create mode 100644 app/models/site/deploy_dependencies.rb diff --git a/Gemfile b/Gemfile index 78eb020c..0fba35cc 100644 --- a/Gemfile +++ b/Gemfile @@ -23,6 +23,7 @@ if ENV['RAILS_GROUPS']&.split(',')&.include? 'assets' end gem 'nokogiri' +gem 'rgl' # Turbolinks makes navigating your web application faster. Read more: # https://github.com/turbolinks/turbolinks diff --git a/Gemfile.lock b/Gemfile.lock index dffe90bf..2eab3574 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -353,6 +353,7 @@ GEM mini_portile2 (~> 2.6.1) racc (~> 1.4) orm_adapter (0.5.0) + pairing_heap (3.0.0) parallel (1.21.0) parser (3.0.2.0) ast (~> 2.4.1) @@ -443,6 +444,10 @@ GEM actionpack (>= 5.0) railties (>= 5.0) rexml (3.2.5) + rgl (0.6.2) + pairing_heap (>= 0.3.0) + rexml (~> 3.2, >= 3.2.4) + stream (~> 0.5.3) rouge (3.26.1) rubocop (1.23.0) parallel (~> 1.10) @@ -510,6 +515,7 @@ GEM sprockets (>= 3.0.0) sqlite3 (1.4.2-x86_64-linux-musl) stackprof (0.2.17-x86_64-linux-musl) + stream (0.5.5) sucker_punch (3.0.1) concurrent-ruby (~> 1.0) sutty-archives (2.5.4) @@ -626,6 +632,7 @@ DEPENDENCIES rails_warden redis redis-rails + rgl rollups! rubocop-rails rubyzip diff --git a/app/models/site/deploy_dependencies.rb b/app/models/site/deploy_dependencies.rb new file mode 100644 index 00000000..472bbdf2 --- /dev/null +++ b/app/models/site/deploy_dependencies.rb @@ -0,0 +1,28 @@ +# frozen_string_literal: true + +require 'rgl/adjacent' +require 'rgl/topsort' + +class Site + module DeployDependencies + extend ActiveSupport::Concern + + included do + def deployment_graph + @deployment_graph ||= RGL::AdjacencyGraph.new.tap do |graph| + deploys.each do |deploy| + graph.add_vertex deploy + end + + deploys.each do |deploy| + deploy.class::DEPENDENCIES.each do |dependency| + deploys.where(type: "Deploy#{dependency.to_s.classify}").each do |deploy_dependency| + graph.add_edge deploy_dependency, deploy + end + end + end + end + end + end + end +end From 4528da5bcb4d365439403823f0b01d999fc31c12 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 Mar 2023 18:57:50 -0300 Subject: [PATCH 109/699] fixup! feat: usar un grafo dirigido para ordenar las dependencias #10464 --- app/models/site/deploy_dependencies.rb | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/app/models/site/deploy_dependencies.rb b/app/models/site/deploy_dependencies.rb index 472bbdf2..b807f0e8 100644 --- a/app/models/site/deploy_dependencies.rb +++ b/app/models/site/deploy_dependencies.rb @@ -1,7 +1,6 @@ # frozen_string_literal: true -require 'rgl/adjacent' -require 'rgl/topsort' +require 'rgl/adjacency' class Site module DeployDependencies From 5440ecc2c24145a1b52846dfc585f19f9f74f1ab Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 Mar 2023 21:32:05 -0300 Subject: [PATCH 110/699] fixup! fixup! feat: usar un grafo dirigido para ordenar las dependencias #10464 --- app/models/site/deploy_dependencies.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/site/deploy_dependencies.rb b/app/models/site/deploy_dependencies.rb index b807f0e8..b40d8d04 100644 --- a/app/models/site/deploy_dependencies.rb +++ b/app/models/site/deploy_dependencies.rb @@ -8,7 +8,7 @@ class Site included do def deployment_graph - @deployment_graph ||= RGL::AdjacencyGraph.new.tap do |graph| + @deployment_graph ||= RGL::DirectedAdjacencyGraph.new.tap do |graph| deploys.each do |deploy| graph.add_vertex deploy end From 2453a105a3697230432d709576ee2e37a0580dd9 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 Mar 2023 21:37:49 -0300 Subject: [PATCH 111/699] fixup! fixup! fixup! feat: usar un grafo dirigido para ordenar las dependencias #10464 --- app/models/site/deploy_dependencies.rb | 3 +++ 1 file changed, 3 insertions(+) diff --git a/app/models/site/deploy_dependencies.rb b/app/models/site/deploy_dependencies.rb index b40d8d04..33ed9e37 100644 --- a/app/models/site/deploy_dependencies.rb +++ b/app/models/site/deploy_dependencies.rb @@ -7,6 +7,9 @@ class Site extend ActiveSupport::Concern included do + # Genera un grafo dirigido de todos los métodos de publicación + # + # @return [RGL::DirectedAdjacencyGraph] def deployment_graph @deployment_graph ||= RGL::DirectedAdjacencyGraph.new.tap do |graph| deploys.each do |deploy| From e67f67e175da8e391d00092375494dada88377bd Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 Mar 2023 21:37:58 -0300 Subject: [PATCH 112/699] feat: devolver una lista ordenada de metodos de publicacion --- app/models/site/deploy_dependencies.rb | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/app/models/site/deploy_dependencies.rb b/app/models/site/deploy_dependencies.rb index 33ed9e37..05939320 100644 --- a/app/models/site/deploy_dependencies.rb +++ b/app/models/site/deploy_dependencies.rb @@ -1,6 +1,7 @@ # frozen_string_literal: true require 'rgl/adjacency' +require 'rgl/topsort' class Site module DeployDependencies @@ -25,6 +26,13 @@ class Site end end end + + # Devuelve una lista ordenada de todos los métodos de publicación + # + # @return [Array] + def deployment_list + @deployment_list ||= deployment_graph.topsort_iterator.to_a + end end end end From 358d2f3a3a41880f9f95d29791e14451618c0cc0 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 Mar 2023 21:38:31 -0300 Subject: [PATCH 113/699] feat: activar ordenamiento de metodos de publicacion --- app/models/site.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/app/models/site.rb b/app/models/site.rb index 8cab0ae0..f5c48d36 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -7,6 +7,7 @@ class Site < ApplicationRecord include Site::Forms include Site::FindAndReplace include Site::Api + include Site::DeployDependencies include Tienda # Cifrar la llave privada que cifra y decifra campos ocultos. Sutty From 57719c8f44c420635ee080e90bf84be7312faa4d Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 13:42:47 -0300 Subject: [PATCH 114/699] feat: generar el sitio en orden #10464 --- app/jobs/deploy_job.rb | 83 +++++++++++-------------- app/models/deploy_alternative_domain.rb | 2 +- app/models/deploy_rsync.rb | 10 +-- app/models/deploy_www.rb | 2 +- app/models/deploy_zip.rb | 2 +- app/models/site/deploy_dependencies.rb | 2 +- 6 files changed, 46 insertions(+), 55 deletions(-) diff --git a/app/jobs/deploy_job.rb b/app/jobs/deploy_job.rb index b4bb0097..d7eee49d 100644 --- a/app/jobs/deploy_job.rb +++ b/app/jobs/deploy_job.rb @@ -26,28 +26,30 @@ class DeployJob < ApplicationJob return end + @deployed = {} @site.update status: 'building' - # Asegurarse que DeployLocal sea el primero! - @deployed = { - deploy_local: { - status: deploy_locally, - seconds: deploy_local.build_stats.last.seconds, - size: deploy_local.size, - urls: [deploy_local.url] + @site.deployment_list.each do |d| + begin + raise DeployException, 'Una dependencia falló' if failed_dependencies? d + + status = d.deploy + seconds = d.build_stats.last.try(:seconds) + rescue StandardError => e + status = false + seconds = 0 + + notify_exception e, d + end + + @deployed[d.type.underscore.to_sym] = { + status: status, + seconds: seconds || 0, + size: d.size, + urls: d.respond_to?(:urls) ? d.urls : [d.url].compact } - } - - # No es opcional - unless @deployed[:deploy_local][:status] - # Hacer fallar la tarea - raise DeployException, "#{@site.name}: Falló la compilación" end - - deploy_others rescue DeployTimedOutException => e notify_exception e - rescue DeployException => e - notify_exception e, deploy_local ensure @site&.update status: 'waiting' @@ -58,6 +60,24 @@ class DeployJob < ApplicationJob private + # Detecta si un método de publicación tiene dependencias fallidas + # + # @param :deploy [Deploy] + # @return [Boolean] + def failed_dependencies?(deploy) + !(deploy.class::DEPENDENCIES - failed_dependencies(deploy)).empty? + end + + # Obtiene las dependencias fallidas de un deploy + # + # @param :deploy [Deploy] + # @return [Array] + def failed_dependencies(deploy) + @deployed.select do |_, v| + !v[:status] + end.keys + end + # @param :exception [StandardError] # @param :deploy [Deploy] def notify_exception(exception, deploy = nil) @@ -70,35 +90,6 @@ class DeployJob < ApplicationJob ExceptionNotifier.notify_exception(exception, data: data) end - def deploy_local - @deploy_local ||= @site.deploys.find_by(type: 'DeployLocal') - end - - def deploy_locally - deploy_local.deploy - end - - def deploy_others - @site.deploys.where.not(type: 'DeployLocal').find_each do |d| - begin - status = d.deploy - seconds = d.build_stats.last.try(:seconds) - rescue StandardError => e - status = false - seconds = 0 - - notify_exception e, d - end - - @deployed[d.type.underscore.to_sym] = { - status: status, - seconds: seconds || 0, - size: d.size, - urls: d.respond_to?(:urls) ? d.urls : [d.url].compact - } - end - end - def notify_usuaries @site.roles.where(rol: 'usuarie', temporal: false).pluck(:usuarie_id).each do |usuarie| DeployMailer.with(usuarie: usuarie, site: @site.id) diff --git a/app/models/deploy_alternative_domain.rb b/app/models/deploy_alternative_domain.rb index db7de872..a437b534 100644 --- a/app/models/deploy_alternative_domain.rb +++ b/app/models/deploy_alternative_domain.rb @@ -4,7 +4,7 @@ class DeployAlternativeDomain < Deploy store :values, accessors: %i[hostname], coder: JSON - DEPENDENCIES = %i[local] + DEPENDENCIES = %i[deploy_local] # Generar un link simbólico del sitio principal al alternativo def deploy diff --git a/app/models/deploy_rsync.rb b/app/models/deploy_rsync.rb index ed71ec37..01ef1990 100644 --- a/app/models/deploy_rsync.rb +++ b/app/models/deploy_rsync.rb @@ -6,11 +6,11 @@ class DeployRsync < Deploy store :values, accessors: %i[destination host_keys], coder: JSON DEPENDENCIES = %i[ - alternative_domain - hidden_service - local - www - zip + deploy_alternative_domain + deploy_hidden_service + deploy_local + deploy_www + deploy_zip ] def deploy diff --git a/app/models/deploy_www.rb b/app/models/deploy_www.rb index 2b604fe4..2e12a05f 100644 --- a/app/models/deploy_www.rb +++ b/app/models/deploy_www.rb @@ -4,7 +4,7 @@ class DeployWww < Deploy store :values, accessors: %i[], coder: JSON - DEPENDENCIES = %i[local] + DEPENDENCIES = %i[deploy_local] before_destroy :remove_destination! diff --git a/app/models/deploy_zip.rb b/app/models/deploy_zip.rb index 8e257041..e1632998 100644 --- a/app/models/deploy_zip.rb +++ b/app/models/deploy_zip.rb @@ -8,7 +8,7 @@ require 'zip' class DeployZip < Deploy store :values, accessors: %i[], coder: JSON - DEPENDENCIES = %i[local] + DEPENDENCIES = %i[deploy_local] # Una vez que el sitio está generado, tomar todos los archivos y # y generar un zip accesible públicamente. diff --git a/app/models/site/deploy_dependencies.rb b/app/models/site/deploy_dependencies.rb index 05939320..a01f99e7 100644 --- a/app/models/site/deploy_dependencies.rb +++ b/app/models/site/deploy_dependencies.rb @@ -19,7 +19,7 @@ class Site deploys.each do |deploy| deploy.class::DEPENDENCIES.each do |dependency| - deploys.where(type: "Deploy#{dependency.to_s.classify}").each do |deploy_dependency| + deploys.where(type: dependency.to_s.classify).each do |deploy_dependency| graph.add_edge deploy_dependency, deploy end end From 1059ab55014f33d0d92f3731df4a3d2c2c370dd6 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 13:47:34 -0300 Subject: [PATCH 115/699] =?UTF-8?q?fix:=20no=20pedir=20el=20tama=C3=B1o=20?= =?UTF-8?q?si=20fall=C3=B3=20la=20compilaci=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/jobs/deploy_job.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/jobs/deploy_job.rb b/app/jobs/deploy_job.rb index d7eee49d..cc9aa429 100644 --- a/app/jobs/deploy_job.rb +++ b/app/jobs/deploy_job.rb @@ -34,9 +34,11 @@ class DeployJob < ApplicationJob status = d.deploy seconds = d.build_stats.last.try(:seconds) + size = d.size rescue StandardError => e status = false seconds = 0 + size = 0 notify_exception e, d end @@ -44,7 +46,7 @@ class DeployJob < ApplicationJob @deployed[d.type.underscore.to_sym] = { status: status, seconds: seconds || 0, - size: d.size, + size: size, urls: d.respond_to?(:urls) ? d.urls : [d.url].compact } end From 51e11d38e4227f0912c5265717311e4b5c4cd7c7 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 13:54:19 -0300 Subject: [PATCH 116/699] =?UTF-8?q?fix:=20mejorar=20gesti=C3=B3n=20de=20zi?= =?UTF-8?q?p?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/deploy_zip.rb | 53 +++++++++++++++++++++++++++++++--------- 1 file changed, 42 insertions(+), 11 deletions(-) diff --git a/app/models/deploy_zip.rb b/app/models/deploy_zip.rb index e1632998..5f72a728 100644 --- a/app/models/deploy_zip.rb +++ b/app/models/deploy_zip.rb @@ -14,24 +14,43 @@ class DeployZip < Deploy # y generar un zip accesible públicamente. # # rubocop:disable Metrics/MethodLength - def deploy + def deploy(output: false) FileUtils.rm_f path - time_start - Dir.chdir(destination) do - Zip::File.open(path, Zip::File::CREATE) do |z| - Dir.glob('./**/**').each do |f| - File.directory?(f) ? z.mkdir(f) : z.add(f, f) + Zip::File.open(path, Zip::File::CREATE) do |zip| + Dir.glob(File.join(destination, '**', '**')).each do |file| + entry = Pathname.new(file).relative_path_from(destination).to_s + + if File.directory? file + log "Creando directorio #{entry}", output + + zip.mkdir(entry) + else + log "Comprimiendo #{entry}", output + zip.add(entry, file) end end end + time_stop - build_stats.create action: 'zip', - seconds: time_spent_in_seconds, - bytes: size + File.exist?(path).tap do |status| + build_stats.create action: 'zip', + seconds: time_spent_in_seconds, + bytes: size, + log: @log.join("\n"), + status: status + end + rescue Zip::Error => e + ExceptionNotifier.notify_exception(e, data: { site: site.name }) - File.exist? path + build_stats.create action: 'zip', + seconds: 0, + bytes: 0, + log: @log.join("\n"), + status: false + + false end # rubocop:enable Metrics/MethodLength @@ -43,8 +62,9 @@ class DeployZip < Deploy File.size path end + # @return [String] def destination - File.join(Rails.root, '_deploy', site.hostname) + Rails.root.join('_deploy', site.hostname).realpath.to_s end def file @@ -58,4 +78,15 @@ class DeployZip < Deploy def path File.join(destination, file) end + + private + + # @param :line [String] + # @param :output [Boolean] + def log(line, output) + @log ||= [] + @log << line + + puts line if output + end end From 56b2556447c4526a7a471f22b37c7d94b2c208f4 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 14:21:11 -0300 Subject: [PATCH 117/699] fixup! feat: generar el sitio en orden #10464 --- app/jobs/deploy_job.rb | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/app/jobs/deploy_job.rb b/app/jobs/deploy_job.rb index cc9aa429..37063ff3 100644 --- a/app/jobs/deploy_job.rb +++ b/app/jobs/deploy_job.rb @@ -67,7 +67,7 @@ class DeployJob < ApplicationJob # @param :deploy [Deploy] # @return [Boolean] def failed_dependencies?(deploy) - !(deploy.class::DEPENDENCIES - failed_dependencies(deploy)).empty? + failed_dependencies(deploy).present? end # Obtiene las dependencias fallidas de un deploy @@ -75,9 +75,9 @@ class DeployJob < ApplicationJob # @param :deploy [Deploy] # @return [Array] def failed_dependencies(deploy) - @deployed.select do |_, v| - !v[:status] - end.keys + deploy.class::DEPENDENCIES & (@deployed.reject do |_, v| + v[:status] + end.keys) end # @param :exception [StandardError] @@ -86,7 +86,8 @@ class DeployJob < ApplicationJob data = { site: @site.id, deploy: deploy&.type, - log: deploy&.build_stats&.last&.log + log: deploy&.build_stats&.last&.log, + failed_dependencies: (failed_dependencies(deploy) if deploy) } ExceptionNotifier.notify_exception(exception, data: data) From 2b4cf2bc753419a217642905839a2a5a67c1b0c8 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 14 Mar 2022 13:39:54 -0300 Subject: [PATCH 118/699] poder ver la salida opcionalmente --- app/models/deploy.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/models/deploy.rb b/app/models/deploy.rb index aefd8090..269747fc 100644 --- a/app/models/deploy.rb +++ b/app/models/deploy.rb @@ -55,7 +55,7 @@ class Deploy < ApplicationRecord # # @param [String] # @return [Boolean] - def run(cmd) + def run(cmd, output: false) r = nil lines = [] @@ -68,6 +68,7 @@ class Deploy < ApplicationRecord # TODO: Enviar a un websocket para ver el proceso en vivo? o.each do |line| lines << line + puts line if output end end end From 878311abf6470d1b04beeba3cde5911987c90600 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 14 Mar 2022 13:40:17 -0300 Subject: [PATCH 119/699] leer la salida por separado para no bloquear el programa --- app/models/deploy.rb | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/app/models/deploy.rb b/app/models/deploy.rb index 269747fc..a911ad84 100644 --- a/app/models/deploy.rb +++ b/app/models/deploy.rb @@ -62,14 +62,15 @@ class Deploy < ApplicationRecord time_start Dir.chdir(site.path) do Open3.popen2e(env, cmd, unsetenv_others: true) do |_, o, t| - r = t.value - # XXX: Tenemos que leer línea por línea porque en salidas largas - # se cuelga la IO # TODO: Enviar a un websocket para ver el proceso en vivo? - o.each do |line| - lines << line - puts line if output + Thread.new do + o.each do |line| + lines << line + + puts line if output + end end + r = t.value end end time_stop From b9b11b20b89d7ebd7172f06cdeb8ba40dc98004c Mon Sep 17 00:00:00 2001 From: f Date: Tue, 15 Mar 2022 16:03:16 -0300 Subject: [PATCH 120/699] poder ver la salida si lo ejecutamos desde la terminal --- app/jobs/deploy_job.rb | 6 ++++-- app/models/deploy_local.rb | 22 +++++++++++----------- 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/app/jobs/deploy_job.rb b/app/jobs/deploy_job.rb index 37063ff3..ccad1c5c 100644 --- a/app/jobs/deploy_job.rb +++ b/app/jobs/deploy_job.rb @@ -6,7 +6,9 @@ class DeployJob < ApplicationJob class DeployTimedOutException < DeployException; end # rubocop:disable Metrics/MethodLength - def perform(site, notify = true, time = Time.now) + def perform(site, notify: true, time: Time.now, output: false) + @output = output + ActiveRecord::Base.connection_pool.with_connection do @site = Site.find(site) @@ -22,7 +24,7 @@ class DeployJob < ApplicationJob "#{@site.name} la tarea estuvo más de 10 minutos esperando, volviendo al estado original" end - DeployJob.perform_in(60, site, notify, time) + DeployJob.perform_in(60, site, notify: notify, time: time, output: output) return end diff --git a/app/models/deploy_local.rb b/app/models/deploy_local.rb index c58fd9b3..c0da5430 100644 --- a/app/models/deploy_local.rb +++ b/app/models/deploy_local.rb @@ -12,12 +12,12 @@ class DeployLocal < Deploy # # Pasamos variables de entorno mínimas para no filtrar secretos de # Sutty - def deploy + def deploy(output: false) return false unless mkdir - return false unless yarn - return false unless bundle + return false unless yarn(output: output) + return false unless bundle(output: output) - jekyll_build + jekyll_build(output: output) end # Sólo permitimos un deploy local @@ -85,23 +85,23 @@ class DeployLocal < Deploy File.exist? yarn_lock end - def gem - run %(gem install bundler --no-document) + def gem(output: false) + run %(gem install bundler --no-document), output: output end # Corre yarn dentro del repositorio - def yarn + def yarn(output: false) return true unless yarn_lock? - run 'yarn install --production' + run 'yarn install --production', output: output end def bundle - run %(bundle install --no-cache --path="#{gems_dir}") + run %(bundle install --no-cache --path="#{gems_dir}"), output: output end - def jekyll_build - run %(bundle exec jekyll build --trace --profile --destination "#{escaped_destination}") + def jekyll_build(output: false) + run %(bundle exec jekyll build --trace --profile --destination "#{escaped_destination}"), output: output end # no debería haber espacios ni caracteres especiales, pero por si From 193ba69a5fdaf6ff4f4ce21e90ce6e58361bff32 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 16 Mar 2022 18:19:04 -0300 Subject: [PATCH 121/699] implementar la misma api en todos los deploys --- app/models/deploy.rb | 2 +- app/models/deploy_alternative_domain.rb | 2 +- app/models/deploy_hidden_service.rb | 2 +- app/models/deploy_localized_domain.rb | 12 ++++++++++++ app/models/deploy_private.rb | 4 ++-- app/models/deploy_www.rb | 2 +- 6 files changed, 18 insertions(+), 6 deletions(-) create mode 100644 app/models/deploy_localized_domain.rb diff --git a/app/models/deploy.rb b/app/models/deploy.rb index a911ad84..967e798f 100644 --- a/app/models/deploy.rb +++ b/app/models/deploy.rb @@ -14,7 +14,7 @@ class Deploy < ApplicationRecord DEPENDENCIES = [] - def deploy + def deploy(**) raise NotImplementedError end diff --git a/app/models/deploy_alternative_domain.rb b/app/models/deploy_alternative_domain.rb index a437b534..9b1d63d7 100644 --- a/app/models/deploy_alternative_domain.rb +++ b/app/models/deploy_alternative_domain.rb @@ -7,7 +7,7 @@ class DeployAlternativeDomain < Deploy DEPENDENCIES = %i[deploy_local] # Generar un link simbólico del sitio principal al alternativo - def deploy + def deploy(**) File.symlink?(destination) || File.symlink(site.hostname, destination).zero? end diff --git a/app/models/deploy_hidden_service.rb b/app/models/deploy_hidden_service.rb index 8df46c2e..dc9549f5 100644 --- a/app/models/deploy_hidden_service.rb +++ b/app/models/deploy_hidden_service.rb @@ -2,7 +2,7 @@ # Genera una versión onion class DeployHiddenService < DeployWww - def deploy + def deploy(**) return true if fqdn.blank? super diff --git a/app/models/deploy_localized_domain.rb b/app/models/deploy_localized_domain.rb new file mode 100644 index 00000000..59e17dcd --- /dev/null +++ b/app/models/deploy_localized_domain.rb @@ -0,0 +1,12 @@ +# frozen_string_literal: true + +# Soportar dominios localizados +class DeployLocalizedDomain < DeployAlternativeDomain + store :values, accessors: %i[hostname locale], coder: JSON + + # Generar un link simbólico del sitio principal al alternativo + def deploy(**) + File.symlink?(destination) || + File.symlink(File.join(site.hostname, locale), destination).zero? + end +end diff --git a/app/models/deploy_private.rb b/app/models/deploy_private.rb index 0d79811d..d3bfb50d 100644 --- a/app/models/deploy_private.rb +++ b/app/models/deploy_private.rb @@ -7,8 +7,8 @@ # jekyll-private-data class DeployPrivate < DeployLocal # No es necesario volver a instalar dependencias - def deploy - jekyll_build + def deploy(output: false) + jekyll_build(output: output) end # Hacer el deploy a un directorio privado diff --git a/app/models/deploy_www.rb b/app/models/deploy_www.rb index 2e12a05f..d27f77cc 100644 --- a/app/models/deploy_www.rb +++ b/app/models/deploy_www.rb @@ -8,7 +8,7 @@ class DeployWww < Deploy before_destroy :remove_destination! - def deploy + def deploy(**) File.symlink?(destination) || File.symlink(site.hostname, destination).zero? end From 3c78f0dfb9e585470d56f560f4f9c8fb3a7bec86 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 18 Apr 2022 17:27:43 -0300 Subject: [PATCH 122/699] no fallar al cerrarse la salida --- app/models/deploy.rb | 3 +++ 1 file changed, 3 insertions(+) diff --git a/app/models/deploy.rb b/app/models/deploy.rb index 967e798f..19d1f412 100644 --- a/app/models/deploy.rb +++ b/app/models/deploy.rb @@ -69,7 +69,10 @@ class Deploy < ApplicationRecord puts line if output end + rescue IOError => e + ExceptionNotifier.notify(e, data: { site: site.name }) end + r = t.value end end From 4de34ceab5a8d7add4b07bcf04ea0a63273bf5e1 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 Jun 2022 15:07:08 -0300 Subject: [PATCH 123/699] =?UTF-8?q?notificar=20correctamente=20la=20excepc?= =?UTF-8?q?i=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/deploy.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/deploy.rb b/app/models/deploy.rb index 19d1f412..360b36d1 100644 --- a/app/models/deploy.rb +++ b/app/models/deploy.rb @@ -70,7 +70,7 @@ class Deploy < ApplicationRecord puts line if output end rescue IOError => e - ExceptionNotifier.notify(e, data: { site: site.name }) + ExceptionNotifier.notify_exception(e, data: { site: site.name }) end r = t.value From 709f3b29e53f608cc57659e92ef7ef3b3323f61b Mon Sep 17 00:00:00 2001 From: f Date: Wed, 29 Jun 2022 18:41:51 -0300 Subject: [PATCH 124/699] no generar issues para log --- app/models/deploy.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/models/deploy.rb b/app/models/deploy.rb index 360b36d1..5f2d3cca 100644 --- a/app/models/deploy.rb +++ b/app/models/deploy.rb @@ -70,7 +70,8 @@ class Deploy < ApplicationRecord puts line if output end rescue IOError => e - ExceptionNotifier.notify_exception(e, data: { site: site.name }) + lines << e.message + puts e.message if output end r = t.value From ba3e595f78677d20a005d2a75e45e647d4763e52 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 14:31:39 -0300 Subject: [PATCH 125/699] =?UTF-8?q?fix:=20mejorar=20gesti=C3=B3n=20de=20sy?= =?UTF-8?q?mlink?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/deploy_www.rb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/models/deploy_www.rb b/app/models/deploy_www.rb index d27f77cc..bb25cc64 100644 --- a/app/models/deploy_www.rb +++ b/app/models/deploy_www.rb @@ -8,7 +8,9 @@ class DeployWww < Deploy before_destroy :remove_destination! - def deploy(**) + def deploy(output: false) + puts "Creando symlink #{site.hostname} => #{destination}" if output + File.symlink?(destination) || File.symlink(site.hostname, destination).zero? end @@ -30,7 +32,7 @@ class DeployWww < Deploy end def url - "https://www.#{site.hostname}/" + "https://#{fqdn}/" end private From dedf8979e484ee1445f2e0db43cd448651532b35 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 14:37:52 -0300 Subject: [PATCH 126/699] =?UTF-8?q?fix:=20rsync=20no=20deber=C3=ADa=20depe?= =?UTF-8?q?nder=20de=20zip?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit aunque el zip no se genere igual queremos poder sincronizar el sitio --- app/models/deploy_rsync.rb | 1 - 1 file changed, 1 deletion(-) diff --git a/app/models/deploy_rsync.rb b/app/models/deploy_rsync.rb index 01ef1990..de6f980b 100644 --- a/app/models/deploy_rsync.rb +++ b/app/models/deploy_rsync.rb @@ -10,7 +10,6 @@ class DeployRsync < Deploy deploy_hidden_service deploy_local deploy_www - deploy_zip ] def deploy From 753000736759cc697aa9838299e4d0ea9875f7e8 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 14:38:45 -0300 Subject: [PATCH 127/699] feat: eliminar archivos al sincronizar --- app/models/deploy_rsync.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/deploy_rsync.rb b/app/models/deploy_rsync.rb index de6f980b..a70b4a34 100644 --- a/app/models/deploy_rsync.rb +++ b/app/models/deploy_rsync.rb @@ -91,7 +91,7 @@ class DeployRsync < Deploy # # @return [Boolean] def rsync - run %(rsync -aviH --timeout=5 #{Shellwords.escape source}/ #{Shellwords.escape destination}/) + run %(rsync -aviH --delete-after --timeout=5 #{Shellwords.escape source}/ #{Shellwords.escape destination}/) end # El origen es el destino de la compilación From fa04538669a93c79db7fc3244450c809d0a400d8 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 14:45:35 -0300 Subject: [PATCH 128/699] fix: output para rsync --- app/models/deploy_rsync.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/models/deploy_rsync.rb b/app/models/deploy_rsync.rb index a70b4a34..c75f744d 100644 --- a/app/models/deploy_rsync.rb +++ b/app/models/deploy_rsync.rb @@ -12,8 +12,8 @@ class DeployRsync < Deploy deploy_www ] - def deploy - ssh? && rsync + def deploy(output: false) + ssh? && rsync(output: output) end # El espacio remoto es el mismo que el local @@ -91,7 +91,7 @@ class DeployRsync < Deploy # # @return [Boolean] def rsync - run %(rsync -aviH --delete-after --timeout=5 #{Shellwords.escape source}/ #{Shellwords.escape destination}/) + run %(rsync -aviH --delete-after --timeout=5 #{Shellwords.escape source}/ #{Shellwords.escape destination}/), output: output end # El origen es el destino de la compilación From 151aecc4d8f2598ccc6d5b313e6ef1deb5202ef9 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 14:59:34 -0300 Subject: [PATCH 129/699] feat: mostrar una tabla con el resumen en la consola --- app/jobs/deploy_job.rb | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/app/jobs/deploy_job.rb b/app/jobs/deploy_job.rb index ccad1c5c..5634108d 100644 --- a/app/jobs/deploy_job.rb +++ b/app/jobs/deploy_job.rb @@ -52,6 +52,16 @@ class DeployJob < ApplicationJob urls: d.respond_to?(:urls) ? d.urls : [d.url].compact } end + + return unless @output + + puts (Terminal::Table.new do |t| + t << (%w[type] + @deployed.values.first.keys) + t.add_separator + @deployed.each do |type, row| + t << ([type.to_s] + row.values) + end + end) rescue DeployTimedOutException => e notify_exception e ensure From 39a615c00c510f8303de91861832a7b29ed45086 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 15:10:32 -0300 Subject: [PATCH 130/699] =?UTF-8?q?fix:=20fallar=20el=20hidden=20service?= =?UTF-8?q?=20si=20no=20se=20gener=C3=B3=20el=20onion=20aun?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/deploy_hidden_service.rb | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/app/models/deploy_hidden_service.rb b/app/models/deploy_hidden_service.rb index dc9549f5..79ff1bae 100644 --- a/app/models/deploy_hidden_service.rb +++ b/app/models/deploy_hidden_service.rb @@ -2,14 +2,10 @@ # Genera una versión onion class DeployHiddenService < DeployWww - def deploy(**) - return true if fqdn.blank? - - super - end - def fqdn - values[:onion] + values[:onion].tap do |onion| + raise ArgumentError, 'Aun no se generó la dirección .onion' if onion.blank? + end end def url From 816773282b748469a0d94d3eb1b345f4d7616e63 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 15:22:10 -0300 Subject: [PATCH 131/699] fix: capturar todas las posibles excepciones --- app/jobs/deploy_job.rb | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/app/jobs/deploy_job.rb b/app/jobs/deploy_job.rb index 5634108d..9ded7dc9 100644 --- a/app/jobs/deploy_job.rb +++ b/app/jobs/deploy_job.rb @@ -37,19 +37,21 @@ class DeployJob < ApplicationJob status = d.deploy seconds = d.build_stats.last.try(:seconds) size = d.size + urls = d.respond_to?(:urls) ? d.urls : [d.url].compact rescue StandardError => e status = false - seconds = 0 - size = 0 + seconds ||= 0 + size ||= 0 + urls ||= [] notify_exception e, d end @deployed[d.type.underscore.to_sym] = { status: status, - seconds: seconds || 0, + seconds: seconds, size: size, - urls: d.respond_to?(:urls) ? d.urls : [d.url].compact + urls: urls } end From d1a3ec25698deaf27af126abb172200fc5457d4b Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 15:23:13 -0300 Subject: [PATCH 132/699] feat: hacer sonar una campana --- app/jobs/deploy_job.rb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/jobs/deploy_job.rb b/app/jobs/deploy_job.rb index 9ded7dc9..9fbdb570 100644 --- a/app/jobs/deploy_job.rb +++ b/app/jobs/deploy_job.rb @@ -64,6 +64,8 @@ class DeployJob < ApplicationJob t << ([type.to_s] + row.values) end end) + + puts "\a" rescue DeployTimedOutException => e notify_exception e ensure From e623504665c924550c53369c476d5796c5acb3b9 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 15:50:05 -0300 Subject: [PATCH 133/699] feat: separar rsync de full rsync los segundos se usan para sincronizar todas las versiones de un sitio con otro servidor de sutty. los primeros solo sincronizan los archivos a otro servidor, no necesariamente bajo el mismo nombre. --- app/models/deploy_alternative_domain.rb | 6 ++- app/models/deploy_full_rsync.rb | 22 +++++++++++ app/models/deploy_rsync.rb | 9 +---- app/services/site_service.rb | 2 +- ...ename_deploy_rsync_to_deploy_full_rsync.rb | 37 +++++++++++++++++++ 5 files changed, 67 insertions(+), 9 deletions(-) create mode 100644 app/models/deploy_full_rsync.rb create mode 100644 db/migrate/20230318183722_rename_deploy_rsync_to_deploy_full_rsync.rb diff --git a/app/models/deploy_alternative_domain.rb b/app/models/deploy_alternative_domain.rb index 9b1d63d7..75b69180 100644 --- a/app/models/deploy_alternative_domain.rb +++ b/app/models/deploy_alternative_domain.rb @@ -20,7 +20,11 @@ class DeployAlternativeDomain < Deploy end def destination - @destination ||= File.join(Rails.root, '_deploy', hostname.gsub(/\.\z/, '')) + @destination ||= File.join(Rails.root, '_deploy', fqdn) + end + + def fqdn + hostname.gsub(/\.\z/, '') end def url diff --git a/app/models/deploy_full_rsync.rb b/app/models/deploy_full_rsync.rb new file mode 100644 index 00000000..c0ff84c6 --- /dev/null +++ b/app/models/deploy_full_rsync.rb @@ -0,0 +1,22 @@ +# frozen_string_literal: true + +class DeployFullRsync < DeployRsync + DEPENDENCIES = %i[ + deploy_alternative_domain + deploy_hidden_service + deploy_local + deploy_www + ] + + # Sincroniza las ubicaciones alternativas también + # + # @param :output [Boolean] + # @return [Boolean] + def rsync(output: false) + DEPENDENCIES.map(&:to_s).map(&:classify).map do |dependency| + site.deploys.where(type: dependency).find_each.map do |deploy| + run %(rsync -aviH --delete-after --timeout=5 #{Shellwords.escape deploy.destination} #{Shellwords.escape destination}), output: output + end + end.flatten.all? + end +end diff --git a/app/models/deploy_rsync.rb b/app/models/deploy_rsync.rb index c75f744d..6a96a274 100644 --- a/app/models/deploy_rsync.rb +++ b/app/models/deploy_rsync.rb @@ -5,12 +5,7 @@ class DeployRsync < Deploy store :values, accessors: %i[destination host_keys], coder: JSON - DEPENDENCIES = %i[ - deploy_alternative_domain - deploy_hidden_service - deploy_local - deploy_www - ] + DEPENDENCIES = %i[deploy_local] def deploy(output: false) ssh? && rsync(output: output) @@ -90,7 +85,7 @@ class DeployRsync < Deploy # Sincroniza hacia el directorio remoto # # @return [Boolean] - def rsync + def rsync(output: false) run %(rsync -aviH --delete-after --timeout=5 #{Shellwords.escape source}/ #{Shellwords.escape destination}/), output: output end diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 22423bb8..39e1c845 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -149,7 +149,7 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do # Crea los deploys necesarios para sincronizar a otros nodos de Sutty def sync_nodes Rails.application.nodes.each do |node| - site.deploys.build(type: 'DeployRsync', destination: "sutty@#{node}:#{site.hostname}") + site.deploys.build(type: 'DeployFullRsync', destination: "sutty@#{node}:") end end end diff --git a/db/migrate/20230318183722_rename_deploy_rsync_to_deploy_full_rsync.rb b/db/migrate/20230318183722_rename_deploy_rsync_to_deploy_full_rsync.rb new file mode 100644 index 00000000..689dc559 --- /dev/null +++ b/db/migrate/20230318183722_rename_deploy_rsync_to_deploy_full_rsync.rb @@ -0,0 +1,37 @@ +# frozen_string_literal: true + +# Cambia todos los DeployRsync propios de Sutty a DeployFullRsync que se +# encarga de sincronizar todo. +class RenameDeployRsyncToDeployFullRsync < ActiveRecord::Migration[6.1] + def up + DeployRsync.all.find_each do |deploy| + dest = deploy.destination.split(':', 2).first + + next unless nodes.include? dest + + deploy.destination = "#{dest}:" + deploy.type = 'DeployFullRsync' + + deploy.save + end + end + + def down + DeployFullRsync.all.find_each do |deploy| + next unless nodes.include? deploy.destination.split(':', 2).first + + deploy.destination = "#{deploy.destination}#{deploy.site.hostname}" + deploy.type = 'DeployRsync' + + deploy.save + end + end + + private + + def nodes + @nodes ||= Rails.application.nodes.map do |node| + "sutty@#{node}" + end + end +end From 729284953d66b47aca891f8aaf89a9d724ea0643 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 16:40:17 -0300 Subject: [PATCH 134/699] fix: agregar dependencias a distributed press --- app/models/deploy_distributed_press.rb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/models/deploy_distributed_press.rb b/app/models/deploy_distributed_press.rb index e8d8b095..7f663a0b 100644 --- a/app/models/deploy_distributed_press.rb +++ b/app/models/deploy_distributed_press.rb @@ -17,6 +17,8 @@ class DeployDistributedPress < Deploy before_create :create_remote_site!, :create_njalla_records! + DEPENDENCIES = %i[deploy_local] + # Actualiza la información y luego envía los cambios # # @param :output [Bool] From 7359d4f6c197c304c915afdaf5859f6977c8b5e7 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 16:41:32 -0300 Subject: [PATCH 135/699] =?UTF-8?q?feat:=20todav=C3=ADa=20no=20hay=20inter?= =?UTF-8?q?faz=20para=20estos=20deploys?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/deploys/_deploy_full_rsync.haml | 1 + app/views/deploys/_deploy_localized_domain.haml | 1 + 2 files changed, 2 insertions(+) create mode 100644 app/views/deploys/_deploy_full_rsync.haml create mode 100644 app/views/deploys/_deploy_localized_domain.haml diff --git a/app/views/deploys/_deploy_full_rsync.haml b/app/views/deploys/_deploy_full_rsync.haml new file mode 100644 index 00000000..0aab9802 --- /dev/null +++ b/app/views/deploys/_deploy_full_rsync.haml @@ -0,0 +1 @@ +-# nada diff --git a/app/views/deploys/_deploy_localized_domain.haml b/app/views/deploys/_deploy_localized_domain.haml new file mode 100644 index 00000000..0aab9802 --- /dev/null +++ b/app/views/deploys/_deploy_localized_domain.haml @@ -0,0 +1 @@ +-# nada From d109eb76dbcc26d143e81344a736e0a1658a9ab4 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 16:48:32 -0300 Subject: [PATCH 136/699] feat: darle url a deploy rsync --- app/models/deploy_rsync.rb | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/app/models/deploy_rsync.rb b/app/models/deploy_rsync.rb index 6a96a274..ac9f19ec 100644 --- a/app/models/deploy_rsync.rb +++ b/app/models/deploy_rsync.rb @@ -3,7 +3,7 @@ # Sincroniza sitios a servidores remotos usando Rsync. El servidor # remoto tiene que tener rsync instalado. class DeployRsync < Deploy - store :values, accessors: %i[destination host_keys], coder: JSON + store :values, accessors: %i[hostname destination host_keys], coder: JSON DEPENDENCIES = %i[deploy_local] @@ -25,6 +25,11 @@ class DeployRsync < Deploy end end + # @return [String] + def url + "https://#{hostname}/" + end + private # Verificar la conexión SSH implementando Trust On First Use From 0e70aed88cc61b09fd49d162e07574edb68ac2f0 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 16:52:36 -0300 Subject: [PATCH 137/699] feat: darle url a full rsync --- app/models/deploy_full_rsync.rb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/models/deploy_full_rsync.rb b/app/models/deploy_full_rsync.rb index c0ff84c6..8f1d306e 100644 --- a/app/models/deploy_full_rsync.rb +++ b/app/models/deploy_full_rsync.rb @@ -19,4 +19,8 @@ class DeployFullRsync < DeployRsync end end.flatten.all? end + + def url + "https://#{user_host.last}/" + end end From fcb68b683da41921d6c3fd41bbcdcb125b9d0138 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 16:53:56 -0300 Subject: [PATCH 138/699] fix: traducir metodos de publicacion #10030 --- config/locales/en.yml | 8 ++++++++ config/locales/es.yml | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/config/locales/en.yml b/config/locales/en.yml index 15ed8a78..43b80983 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -105,10 +105,18 @@ en: title: Alternative domain name success: Success! error: Error + deploy_localized_domain: + title: Localized domain + success: Success! + error: Error deploy_rsync: title: Synchronize to backup server success: Success! error: Error + deploy_full_rsync: + title: Synchronize to another Sutty node + success: Success! + error: Error deploy_distributed_press: title: Distributed Web success: Success! diff --git a/config/locales/es.yml b/config/locales/es.yml index a190b143..a6201bce 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -105,10 +105,18 @@ es: title: Dominio alternativo success: ¡Éxito! error: Hubo un error + deploy_localized_domain: + title: Dominio por idioma + success: ¡Éxito! + error: Hubo un error deploy_rsync: title: Sincronizar al servidor alternativo success: ¡Éxito! error: Hubo un error + deploy_full_rsync: + title: Sincronizar a otro nodo de Sutty + success: ¡Éxito! + error: Hubo un error deploy_distributed_press: title: Web distribuida success: ¡Éxito! From 3a0a1dfd89a37cee00e7a8e22e0eb78cb011420e Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 17:00:29 -0300 Subject: [PATCH 139/699] fix: siempre hay segundos --- app/jobs/deploy_job.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/jobs/deploy_job.rb b/app/jobs/deploy_job.rb index 9fbdb570..8b4d8c38 100644 --- a/app/jobs/deploy_job.rb +++ b/app/jobs/deploy_job.rb @@ -35,7 +35,7 @@ class DeployJob < ApplicationJob raise DeployException, 'Una dependencia falló' if failed_dependencies? d status = d.deploy - seconds = d.build_stats.last.try(:seconds) + seconds = d.build_stats.last.try(:seconds) || 0 size = d.size urls = d.respond_to?(:urls) ? d.urls : [d.url].compact rescue StandardError => e From 56cd3a4b20ff5bee3d35c00516ebf0a003eee028 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 17:01:38 -0300 Subject: [PATCH 140/699] fix: mostrar la salida --- app/jobs/deploy_job.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/jobs/deploy_job.rb b/app/jobs/deploy_job.rb index 8b4d8c38..541bdf7c 100644 --- a/app/jobs/deploy_job.rb +++ b/app/jobs/deploy_job.rb @@ -34,7 +34,7 @@ class DeployJob < ApplicationJob begin raise DeployException, 'Una dependencia falló' if failed_dependencies? d - status = d.deploy + status = d.deploy(output: @output) seconds = d.build_stats.last.try(:seconds) || 0 size = d.size urls = d.respond_to?(:urls) ? d.urls : [d.url].compact From cb145c20507d26eda3a26d896884c5c084368d02 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 17:02:38 -0300 Subject: [PATCH 141/699] =?UTF-8?q?fix:=20siempre=20avisar=20cuando=20term?= =?UTF-8?q?in=C3=B3=20el=20deploy=20en=20la=20consola?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/jobs/deploy_job.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/jobs/deploy_job.rb b/app/jobs/deploy_job.rb index 541bdf7c..f0dc23f3 100644 --- a/app/jobs/deploy_job.rb +++ b/app/jobs/deploy_job.rb @@ -64,14 +64,14 @@ class DeployJob < ApplicationJob t << ([type.to_s] + row.values) end end) - - puts "\a" rescue DeployTimedOutException => e notify_exception e ensure @site&.update status: 'waiting' notify_usuaries if notify + + puts "\a" if @output end end # rubocop:enable Metrics/MethodLength From 052c716b72353129f653112010c7b96aabe30a00 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 19:01:13 -0300 Subject: [PATCH 142/699] fix: private depende de local para instalar las dependencias --- app/models/deploy_private.rb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/models/deploy_private.rb b/app/models/deploy_private.rb index d3bfb50d..1fa42648 100644 --- a/app/models/deploy_private.rb +++ b/app/models/deploy_private.rb @@ -6,6 +6,8 @@ # XXX: La plantilla tiene que soportar esto con el plugin # jekyll-private-data class DeployPrivate < DeployLocal + DEPENDENCIES = %i[deploy_local] + # No es necesario volver a instalar dependencias def deploy(output: false) jekyll_build(output: output) From 93b005ca07f58e558b28dac175f59d4913d8a251 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 Mar 2023 19:33:25 -0300 Subject: [PATCH 143/699] fix: volver a hacer depender la sincronizacion del zip --- app/models/deploy_full_rsync.rb | 1 + app/models/deploy_rsync.rb | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/app/models/deploy_full_rsync.rb b/app/models/deploy_full_rsync.rb index 8f1d306e..5bdfeeff 100644 --- a/app/models/deploy_full_rsync.rb +++ b/app/models/deploy_full_rsync.rb @@ -6,6 +6,7 @@ class DeployFullRsync < DeployRsync deploy_hidden_service deploy_local deploy_www + deploy_zip ] # Sincroniza las ubicaciones alternativas también diff --git a/app/models/deploy_rsync.rb b/app/models/deploy_rsync.rb index ac9f19ec..1dff2d99 100644 --- a/app/models/deploy_rsync.rb +++ b/app/models/deploy_rsync.rb @@ -5,7 +5,7 @@ class DeployRsync < Deploy store :values, accessors: %i[hostname destination host_keys], coder: JSON - DEPENDENCIES = %i[deploy_local] + DEPENDENCIES = %i[deploy_local deploy_zip] def deploy(output: false) ssh? && rsync(output: output) From fd46157e28eec3b9642dcfe594370653161c9654 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 20 Mar 2023 12:20:50 -0300 Subject: [PATCH 144/699] fix: siempre devolver el destino closes ##10541 closes ##10540 closes ##10539 closes ##10538 closes ##10537 closes ##10536 closes ##10535 closes ##10534 closes ##10533 --- app/models/deploy_zip.rb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/models/deploy_zip.rb b/app/models/deploy_zip.rb index 5f72a728..85005470 100644 --- a/app/models/deploy_zip.rb +++ b/app/models/deploy_zip.rb @@ -65,6 +65,8 @@ class DeployZip < Deploy # @return [String] def destination Rails.root.join('_deploy', site.hostname).realpath.to_s + rescue Errno::ENOENT + Rails.root.join('_deploy', site.hostname).to_s end def file From 682046d0176e62faa7547c47fa2201540c496345 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 20 Mar 2023 12:26:11 -0300 Subject: [PATCH 145/699] =?UTF-8?q?fix:=20no=20hacer=20falla=20la=20config?= =?UTF-8?q?uraci=C3=B3n=20si=20todav=C3=ADa=20no=20se=20gener=C3=B3=20el?= =?UTF-8?q?=20onion=20#10542?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/deploys/_deploy_hidden_service.haml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/views/deploys/_deploy_hidden_service.haml b/app/views/deploys/_deploy_hidden_service.haml index d6388123..9ebda012 100644 --- a/app/views/deploys/_deploy_hidden_service.haml +++ b/app/views/deploys/_deploy_hidden_service.haml @@ -17,7 +17,8 @@ = sanitize_markdown t('.help', public_url: deploy.object.site.url), tags: %w[p strong em a] - - if deploy.object.fqdn + - begin = sanitize_markdown t('.help_2', url: deploy.object.url), tags: %w[p strong em a] + - rescue ArgumentError %hr/ From 26603baa63c9e80f8313df6e101db7624c44bf06 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 20 Mar 2023 16:08:37 -0300 Subject: [PATCH 146/699] fix: recuperar el comportamiento esperado #2123 --- app/controllers/usuaries_controller.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/controllers/usuaries_controller.rb b/app/controllers/usuaries_controller.rb index 6d02a35a..2439b348 100644 --- a/app/controllers/usuaries_controller.rb +++ b/app/controllers/usuaries_controller.rb @@ -88,16 +88,16 @@ class UsuariesController < ApplicationController # TODO: Enviar invitación igual! Podemos no usar el Mailer de # DeviseInvitations y usar uno propio que contenga texto y se # envíe de todas formas. - usuarie = Usuarie.invite! email: invitacion.address, - skip_invitation: true + usuarie = Usuarie.invite! { email: invitacion.address }, + current_usuarie, + { skip_invitation: true } # No invitar al sitio si ya estaba en la lista! # # XXX: En este caso no estamos enviando ninguna invitación next if usuarie.sites.exists? @site.id - @site.roles << Rol.create(usuarie: usuarie, site: @site, - temporal: true, rol: invited_as) + @site.roles.create(usuarie: usuarie, temporal: true, rol: invited_as) # Invitamos después de crear el rol para que el correo de # invitación pueda recibir el sitio. From 951ec9b6f0e4cb42193134f91efc5eb874afd657 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 20 Mar 2023 16:14:30 -0300 Subject: [PATCH 147/699] fixup! fix: recuperar el comportamiento esperado #2123 --- app/controllers/usuaries_controller.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/controllers/usuaries_controller.rb b/app/controllers/usuaries_controller.rb index 2439b348..cfc7844a 100644 --- a/app/controllers/usuaries_controller.rb +++ b/app/controllers/usuaries_controller.rb @@ -88,9 +88,9 @@ class UsuariesController < ApplicationController # TODO: Enviar invitación igual! Podemos no usar el Mailer de # DeviseInvitations y usar uno propio que contenga texto y se # envíe de todas formas. - usuarie = Usuarie.invite! { email: invitacion.address }, - current_usuarie, - { skip_invitation: true } + attributes = { email: invitacion.address }{ email: invitacion.address } + options = { skip_invitation: true } + usuarie = Usuarie.invite! attributes, current_usuarie, options # No invitar al sitio si ya estaba en la lista! # From d30353b8113bcb0fdfe74705ba6667b09821bc6a Mon Sep 17 00:00:00 2001 From: f Date: Mon, 20 Mar 2023 16:15:07 -0300 Subject: [PATCH 148/699] fixup! fixup! fix: recuperar el comportamiento esperado #2123 --- app/controllers/usuaries_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/usuaries_controller.rb b/app/controllers/usuaries_controller.rb index cfc7844a..c60ea206 100644 --- a/app/controllers/usuaries_controller.rb +++ b/app/controllers/usuaries_controller.rb @@ -88,7 +88,7 @@ class UsuariesController < ApplicationController # TODO: Enviar invitación igual! Podemos no usar el Mailer de # DeviseInvitations y usar uno propio que contenga texto y se # envíe de todas formas. - attributes = { email: invitacion.address }{ email: invitacion.address } + attributes = { email: invitacion.address } options = { skip_invitation: true } usuarie = Usuarie.invite! attributes, current_usuarie, options From 1d11de519cf0a4ea5d936aca0ed9356927cf8471 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 20 Mar 2023 16:54:00 -0300 Subject: [PATCH 149/699] =?UTF-8?q?fix:=20solo=20enviar=20invitaci=C3=B3n?= =?UTF-8?q?=20si=20le=20usuarie=20no=20existe?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/usuaries_controller.rb | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/app/controllers/usuaries_controller.rb b/app/controllers/usuaries_controller.rb index c60ea206..3dd78de1 100644 --- a/app/controllers/usuaries_controller.rb +++ b/app/controllers/usuaries_controller.rb @@ -82,26 +82,14 @@ class UsuariesController < ApplicationController # Enviar la invitación si es necesario y agregar al sitio invitaciones.each do |invitacion| - # Si la cuenta no existe, envía una invitación por correo, sino, - # no se envía nada - # - # TODO: Enviar invitación igual! Podemos no usar el Mailer de - # DeviseInvitations y usar uno propio que contenga texto y se - # envíe de todas formas. attributes = { email: invitacion.address } - options = { skip_invitation: true } - usuarie = Usuarie.invite! attributes, current_usuarie, options - # No invitar al sitio si ya estaba en la lista! - # - # XXX: En este caso no estamos enviando ninguna invitación + usuarie = Usuarie.find_by attributes + usuarie ||= Usuarie.invite! attributes, current_usuarie + next if usuarie.sites.exists? @site.id @site.roles.create(usuarie: usuarie, temporal: true, rol: invited_as) - - # Invitamos después de crear el rol para que el correo de - # invitación pueda recibir el sitio. - usuarie.deliver_invitation end redirect_to site_usuaries_path(@site) From f8b57c8a2b36e28301869a5931a0d13ca03bc473 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 20 Mar 2023 16:59:27 -0300 Subject: [PATCH 150/699] fix: no llevar registro de quien se conoce con quien aunque es un poco obvio al mirar la lista de usuaries de un sitio --- app/controllers/usuaries_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/usuaries_controller.rb b/app/controllers/usuaries_controller.rb index 3dd78de1..9cc756f7 100644 --- a/app/controllers/usuaries_controller.rb +++ b/app/controllers/usuaries_controller.rb @@ -85,7 +85,7 @@ class UsuariesController < ApplicationController attributes = { email: invitacion.address } usuarie = Usuarie.find_by attributes - usuarie ||= Usuarie.invite! attributes, current_usuarie + usuarie ||= Usuarie.invite! attributes next if usuarie.sites.exists? @site.id From 72c6c3dcd216008d432a22970367a855ee9fb266 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 20 Mar 2023 17:17:53 -0300 Subject: [PATCH 151/699] fix: efectivamente ignorar mails que ya son usuaries de este sitio --- app/controllers/usuaries_controller.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/controllers/usuaries_controller.rb b/app/controllers/usuaries_controller.rb index 9cc756f7..2dd3ea99 100644 --- a/app/controllers/usuaries_controller.rb +++ b/app/controllers/usuaries_controller.rb @@ -84,11 +84,11 @@ class UsuariesController < ApplicationController invitaciones.each do |invitacion| attributes = { email: invitacion.address } + next if Usuarie.where(id: @site.roles.pluck(:usuarie_id)).find_by(attributes) + usuarie = Usuarie.find_by attributes usuarie ||= Usuarie.invite! attributes - next if usuarie.sites.exists? @site.id - @site.roles.create(usuarie: usuarie, temporal: true, rol: invited_as) end From 88754ff6eca2e2ae69b34a22bdcfdc48c72ef1f8 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 20 Mar 2023 17:22:40 -0300 Subject: [PATCH 152/699] =?UTF-8?q?fix:=20enviar=20invitaci=C3=B3n=20sin?= =?UTF-8?q?=20link?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Usuarie#deliver_invitation además generaba un token cuando no era necesario y esto es lo que hacía que les usuaries quedaran flotando. --- app/controllers/usuaries_controller.rb | 5 ++++- .../mailer/invitation_instructions.html.haml | 15 +++++++++------ .../mailer/invitation_instructions.text.haml | 16 ++++++++++------ config/locales/devise_invitable.en.yml | 1 + config/locales/devise_invitable.es.yml | 1 + 5 files changed, 25 insertions(+), 13 deletions(-) diff --git a/app/controllers/usuaries_controller.rb b/app/controllers/usuaries_controller.rb index 2dd3ea99..d9510392 100644 --- a/app/controllers/usuaries_controller.rb +++ b/app/controllers/usuaries_controller.rb @@ -86,7 +86,10 @@ class UsuariesController < ApplicationController next if Usuarie.where(id: @site.roles.pluck(:usuarie_id)).find_by(attributes) - usuarie = Usuarie.find_by attributes + usuarie = Usuarie.find_by attributes.tap do |u| + u.send_devise_notification(:invitation_instructions, nil) + end + usuarie ||= Usuarie.invite! attributes @site.roles.create(usuarie: usuarie, temporal: true, rol: invited_as) diff --git a/app/views/devise/mailer/invitation_instructions.html.haml b/app/views/devise/mailer/invitation_instructions.html.haml index 74193878..146caabb 100644 --- a/app/views/devise/mailer/invitation_instructions.html.haml +++ b/app/views/devise/mailer/invitation_instructions.html.haml @@ -8,12 +8,15 @@ %h1= site.title %p= site.description -%p= link_to t('devise.mailer.invitation_instructions.accept'), - accept_invitation_url(@resource, invitation_token: @token) +- if @resource.created_by_invite? + %p= link_to t('devise.mailer.invitation_instructions.accept'), + accept_invitation_url(@resource, invitation_token: @token) -- if @resource.invitation_due_at - %p= t('devise.mailer.invitation_instructions.accept_until', - due_date: l(@resource.invitation_due_at, - format: :'devise.mailer.invitation_instructions.accept_until_format')) + - if @resource.invitation_due_at + %p= t('devise.mailer.invitation_instructions.accept_until', + due_date: l(@resource.invitation_due_at, + format: :'devise.mailer.invitation_instructions.accept_until_format')) +- else + %p= link_to t('devise.mailer.invitation_instructions.sign_in'), root_url %p= t('devise.mailer.invitation_instructions.ignore') diff --git a/app/views/devise/mailer/invitation_instructions.text.haml b/app/views/devise/mailer/invitation_instructions.text.haml index 16a9f0a8..8d30e3df 100644 --- a/app/views/devise/mailer/invitation_instructions.text.haml +++ b/app/views/devise/mailer/invitation_instructions.text.haml @@ -9,11 +9,15 @@ \ = site.description \ -= accept_invitation_url(@resource, invitation_token: @token) -\ -- if @resource.invitation_due_at - = t('devise.mailer.invitation_instructions.accept_until', - due_date: l(@resource.invitation_due_at, - format: :'devise.mailer.invitation_instructions.accept_until_format')) +- if @resource.created_by_invite? + = accept_invitation_url(@resource, invitation_token: @token) + \ + - if @resource.invitation_due_at + = t('devise.mailer.invitation_instructions.accept_until', + due_date: l(@resource.invitation_due_at, + format: :'devise.mailer.invitation_instructions.accept_until_format')) +- else + = root_url(change_locale_to: @resource.lang) + = t('devise.mailer.invitation_instructions.sign_in') \ = t('devise.mailer.invitation_instructions.ignore') diff --git a/config/locales/devise_invitable.en.yml b/config/locales/devise_invitable.en.yml index f6bfee40..39238140 100644 --- a/config/locales/devise_invitable.en.yml +++ b/config/locales/devise_invitable.en.yml @@ -23,6 +23,7 @@ en: accept: "Accept invitation" accept_until: "This invitation will be due in %{due_date}." ignore: "If you don't want to accept the invitation, please ignore this email. Your account won't be created until you access the link above and set your password." + sign_in: "Sign in to your account to accept or decline the invitation." time: formats: devise: diff --git a/config/locales/devise_invitable.es.yml b/config/locales/devise_invitable.es.yml index 144d6df6..e83a703c 100644 --- a/config/locales/devise_invitable.es.yml +++ b/config/locales/devise_invitable.es.yml @@ -23,6 +23,7 @@ es: accept: "Aceptar la invitación" accept_until: "La invitación vencerá el %{due_date}." ignore: "Si no querés aceptar la invitación, por favor ignora este correo. Tu cuenta no será creada hasta que aceptes la invitación y configures una contraseña." + sign_in: "Iniciá sesión con tu cuenta para aceptar o rechazar la invitación." time: formats: devise: From 3ee55ffebe7c0a754a7e9b0a572f8999683b60b1 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Wed, 22 Mar 2023 17:53:39 +0000 Subject: [PATCH 153/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 4 ++-- ...f70d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css | 3 +++ ...d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css.gz | 3 +++ 3 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 public/assets/application-2f1fc0ce14f70d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css create mode 100644 public/assets/application-2f1fc0ce14f70d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 4cfdde09..5ebba6b1 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:128f29cdd0426482c11b966286f959554581ff846831b38b8e186901769e61a8 -size 13214 +oid sha256:adb8deb87386f25aca09d49aa32d43bb3e3a22e9c53e7bac866cefae449a8d6b +size 13524 diff --git a/public/assets/application-2f1fc0ce14f70d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css b/public/assets/application-2f1fc0ce14f70d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css new file mode 100644 index 00000000..eecfff61 --- /dev/null +++ b/public/assets/application-2f1fc0ce14f70d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b04c532f0da4f46f1bd3e5bb02fe2dcf62395cfec63619f6b8000e7ca9988b40 +size 231506 diff --git a/public/assets/application-2f1fc0ce14f70d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css.gz b/public/assets/application-2f1fc0ce14f70d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css.gz new file mode 100644 index 00000000..8be2b832 --- /dev/null +++ b/public/assets/application-2f1fc0ce14f70d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d795f1ab8bfbc40b9f7557820c30dd4a7af955a7400def567798d692d3df6beb +size 32143 From 67e11e1f3c8db97b3b9928a5a170c9b9e19808c3 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 22 Mar 2023 18:39:56 -0300 Subject: [PATCH 154/699] fix: agregar licencia con layout --- app/services/site_service.rb | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 22423bb8..436bc1c3 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -104,11 +104,10 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do def add_licencia(lang:) params = ActionController::Parameters.new( post: { + layout: 'license', lang: lang, title: site.licencia.name, description: I18n.t('sites.form.licencia.title'), - author: %w[Sutty], - permalink: "#{I18n.t('activerecord.models.licencia').downcase}/", content: CommonMarker.render_html(site.licencia.deed) } ) From 601bf2e636c210b0d8cd86ef4377f5f77abbdadf Mon Sep 17 00:00:00 2001 From: f Date: Wed, 22 Mar 2023 18:41:12 -0300 Subject: [PATCH 155/699] feat: no agregar licencia si la plantilla no lo soporta --- app/services/site_service.rb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 436bc1c3..87a08652 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -92,6 +92,8 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do # Crea la licencia del sitio para cada locale disponible en el sitio def add_licencias + return unless site.layout? :license + site.locales.each do |locale| next unless I18n.available_locales.include? locale From a587ed76c1ecff43ca1f702f0ee27f484f618525 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 22 Mar 2023 18:43:20 -0300 Subject: [PATCH 156/699] fix: solo cambiar la licencia si existe una #159 --- app/services/site_service.rb | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 87a08652..b4fa2fa0 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -119,18 +119,14 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do # Encuentra la licencia a partir de su enlace permanente y le cambia # el contenido - # - # TODO: Crear un layout específico para licencias así es más certera - # la búsqueda. def change_licencias site.locales.each do |locale| next unless I18n.available_locales.include? locale Mobility.with_locale(locale) do - permalink = "#{I18n.t('activerecord.models.licencia').downcase}/" - post = site.posts(lang: locale).find_by(permalink: permalink) + post = site.posts(lang: locale).find_by(layout: 'license') - post ? change_licencia(post: post) : add_licencia(lang: locale) + change_licencia(post: post) if post end end end From 401c80ba80db23c1a625c642ad251b0bd8166211 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 22 Mar 2023 18:45:41 -0300 Subject: [PATCH 157/699] =?UTF-8?q?fix:=20crear=20las=20licencias=20despu?= =?UTF-8?q?=C3=A9s=20de=20crear=20el=20t=C3=ADtulo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit y los commits también se harían en el idioma de le usuarie --- app/services/site_service.rb | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index b4fa2fa0..e98d2487 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -14,11 +14,10 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do I18n.with_locale(usuarie&.lang&.to_sym || I18n.default_locale) do site.save && site.config.write && - commit_config(action: :create) + commit_config(action: :create) && + add_licencias end - add_licencias - site end @@ -27,11 +26,10 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do I18n.with_locale(usuarie&.lang&.to_sym || I18n.default_locale) do site.update(params) && site.config.write && - commit_config(action: :update) + commit_config(action: :update) && + change_licencias end - change_licencias - site end From 3779f4b241ae063f34425bc33051f8b59d81d67b Mon Sep 17 00:00:00 2001 From: f Date: Wed, 22 Mar 2023 19:04:15 -0300 Subject: [PATCH 158/699] =?UTF-8?q?feat:=20incorporar=20los=20c=C3=B3digos?= =?UTF-8?q?=20de=20conducta?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/code_of_conduct.rb | 14 + app/services/site_service.rb | 34 +- config/initializers/inflections.rb | 4 + .../20230322214924_add_code_of_conduct.rb | 22 + db/seeds/codes_of_conduct.yml | 613 ++++++++++++++++++ 5 files changed, 686 insertions(+), 1 deletion(-) create mode 100644 app/models/code_of_conduct.rb create mode 100644 db/migrate/20230322214924_add_code_of_conduct.rb create mode 100644 db/seeds/codes_of_conduct.yml diff --git a/app/models/code_of_conduct.rb b/app/models/code_of_conduct.rb new file mode 100644 index 00000000..87c24c7f --- /dev/null +++ b/app/models/code_of_conduct.rb @@ -0,0 +1,14 @@ +# frozen_string_literal: true + +# Códigos de conducta +class CodeOfConduct < ApplicationRecord + extend Mobility + + translates :title, type: :string, locale_accessors: true + translates :description, type: :text, locale_accessors: true + translates :content, type: :text, locale_accessors: true + + validates :title, presence: true, uniqueness: true + validates :description, presence: true + validates :content, presence: true +end diff --git a/app/services/site_service.rb b/app/services/site_service.rb index e98d2487..5ba84af0 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -15,7 +15,8 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do site.save && site.config.write && commit_config(action: :create) && - add_licencias + add_licencias && + add_code_of_conduct end site @@ -141,10 +142,41 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do params: params).update end + def add_code_of_conduct + # TODO: soportar más códigos de conducta + coc = CodeOfConduct.first + + with_all_locales do |locale| + params = ActionController::Parameters.new( + post: { + layout: 'code_of_conduct', + lang: locale.to_s, + title: coc.title, + description: coc.description + content: CommonMarker.render_html(coc.content) + } + ) + + PostService.new(site: site, usuarie: usuarie, params: params).create + end + end + # Crea los deploys necesarios para sincronizar a otros nodos de Sutty def sync_nodes Rails.application.nodes.each do |node| site.deploys.build(type: 'DeployRsync', destination: "sutty@#{node}:#{site.hostname}") end end + + private + + def with_all_locales(&block) + site.locales.each do |locale| + next unless I18n.available_locales.include? locale + + Mobility.with_locale(locale) do + yield locale + end + end + end end diff --git a/config/initializers/inflections.rb b/config/initializers/inflections.rb index 0e18b987..46cb9d78 100644 --- a/config/initializers/inflections.rb +++ b/config/initializers/inflections.rb @@ -13,6 +13,8 @@ ActiveSupport::Inflector.inflections(:en) do |inflect| inflect.singular 'roles', 'rol' inflect.plural 'rollup', 'rollups' inflect.singular 'rollups', 'rollup' + inflect.plural 'code_of_conduct', 'codes_of_conduct' + inflect.singular 'codes_of_conduct', 'code_of_conduct' end ActiveSupport::Inflector.inflections(:es) do |inflect| @@ -28,4 +30,6 @@ ActiveSupport::Inflector.inflections(:es) do |inflect| inflect.singular 'licencias', 'licencia' inflect.plural 'rollup', 'rollups' inflect.singular 'rollups', 'rollup' + inflect.plural 'code_of_conduct', 'codes_of_conduct' + inflect.singular 'codes_of_conduct', 'code_of_conduct' end diff --git a/db/migrate/20230322214924_add_code_of_conduct.rb b/db/migrate/20230322214924_add_code_of_conduct.rb new file mode 100644 index 00000000..0558d69f --- /dev/null +++ b/db/migrate/20230322214924_add_code_of_conduct.rb @@ -0,0 +1,22 @@ +# frozen_string_literal: true + +# Crea códigos de conducta +class AddCodeOfConduct < ActiveRecord::Migration[6.1] + def up + create_table :codes_of_conduct do |t| + t.timestamps + t.string :title + t.text :description + t.text :content + end + + # XXX: En lugar de ponerlo en las seeds + YAML.safe_load(File.read('db/seeds/codes_of_conduct.yml')).each do |coc| + CodigoDeConducta.new(**coc).save! + end + end + + def down + drop_table :codes_of_conduct + end +end diff --git a/db/seeds/codes_of_conduct.yml b/db/seeds/codes_of_conduct.yml new file mode 100644 index 00000000..cde7fbfe --- /dev/null +++ b/db/seeds/codes_of_conduct.yml @@ -0,0 +1,613 @@ +--- +- name_en: "Codes for sharing" + name_es: "Códigos para compartir" + description_en: "Codes of conduct allow inclusive communities." + description_es: "Los códigos de convivencia nos permiten alojar comunidades inclusivas." + content_en: | + # Code for sharing + + > This code of conduct is based in "[Códigos para compartir, hackear, + > piratear en + > libertad](https://utopia.partidopirata.com.ar/zines/codigos_para_compartir.html)" + > published by [Partido Interdimensional + > Pirata](https://partidopirata.com.ar/). + + > We use gender neutral pronouns to include all peoples. In this sense, + > we encourage different forms, strategies and tools used to embody + > practices that aren't anthropocentric, sexist, cis-sexist in our + > language. + + ## Introduction + + This is an example code that strives to give a consensual frame to + enable asistance, permanence and confortable stay to everyone using and + inhabiting [Sutty](https://sutty.nl/), and to welcome new users and + potential allies as well. It sets the floor for desirable and + acceptable, and undesirable and intolerable conducts for its community. + You can use it with or without changes, adapting it to your activities. + This code is in permanent and collective mutation and feeds, copies and + inspires on the following sources: + + * + + * + + * + + * + + We strive to sustain and foment an open community, that invites and + attains participation from more people, in all their diversity. We know + that spaces related to computing and free software are mostly inhabited + by middle class cis white males, even when there's an acknowledgement of + the need to close the gender gap. In this sense, this is our little + contribution, made from collective practices on multiple dimentions, + reflections, readings, and experiences that grow every day. + + ## That everyone needs to be well treated + + Every being that we share space with deserves good treatment, respect + and compassion. Here we share basic criteria for introduction and care. + + ### Towards humans + + Everyone is deserving of care and greetings and we have a right to + assume good intentions from others. + + When we refer to other humans, we try to be careful and respectul + towards their gender identity. For this, these principles are useful: + + * Don't assume, judge or try to "interpret" the gender of others. + + * Don't use gender beforehand. It's related to the previous item, but + puts emphasis towards naturalized gendering behaviour (ie. assuming + someone wearing a dress uses female pronouns...). The proposal is to + discard them. + + * If a person explicits their pronouns and mode in which they want to be + referenced, we respect them, by listening and trying to use their + prefered pronouns. + + * When presentations don't include pronouns, we can ask respectfully + for prefered pronouns. But be careful! This question must be asked + to everyone, otherwise the "suspicion" is loaded towards a person, and + it can become a form of harrassment. + + * Do we need to know the gender of a person to relate with them? Maybe + a better practice is to evade gendering others. But if this means to + use "them" compulsively, some people may be made to feel bad. (For + instance, trans\* people who use female or male pronouns may feel + upset or outed when refering to them as "them", specially if they're + the only ones to be gendered like this in a group! + + * When in doubt, asking and apologizing respectfully is a good way of + being careful towards each other. + + ## Important points to guarantee our space from being expulsive + + **Listening to and between everyone in a caring climate** + + * Listen to what everyone has to say, being mindful that everyone has + something valuable to communicate. + + * For active listening, we prefer to ask first, before making judgement. + + * Sometimes being silent is a condition for others to be able to talk. + To listen is an exercise that requires practice. Also talking. + + * We're interested in what everyone has to say. If you're more trained + in participating, talking, and having opinions, take into account that + not everyone does. Give them space if they want to take it. But + remember that encouraging is not the same as pressuring! + + * We try to check and stop offensive practices to add to the respectful + climate. This doesn't mean to be submissive or to agree to + everything. At the least, it sets a floor of respect towards enabling + a dialogue when necessary. + + * It's at the very least disrepectful to repeat damaging behaviour when + it was already identified as such. It can make others unconfortable, + or hurt and expel them. We'll make this point every time that is + needed and tolerable. + + * We avoid this behaviour ourselves and we help others to notice their + own. + + * When raising attention becomes insufficient, we need to review this + agreements to keep the coexistence. This implies to act in accord to + them, and that this code can be revised and updated when deemed + necessary (there's no consensus). + + * One of the ways in which free software spaces can be and are expulsive + is with attitudes that don't contemplate diversity in knowledges and + interlocutors. By appealing to technicisms, many comrades are kept + out of what's happening, and no one verifies if everyone is keeping up + with the conversation. + + Our fervent recommendation is to be attentive to this dynamic so we + can avoid or revert them. + + * The counter to the previous situation is "mansplaining": a cis-male + person assuming the authoritative place of knowledge to (over-)explain + everything to others, in a patronizing way and without taking into + account what others want to listen or not, to say, what already know + or do, etc. + + * We believe there's no "authoritative voice" to have an opinion and to + participate. Free culture is for everyone to share. + + * "Sharing is caring" v. "Google is your friend". Meritocracy and other + traditional codes in cyber-communities work against free culture. We + support the pirate culture that onboards ever more pirates to their + ships. We believe that culture is for everyone and we defy elitisms. + + * We don't assume that other people shares our likings, beliefs, class + position, sexuality, etc. We can be violent when we misread others. + We recommend to ask respectfully and to avoid comments or jokes that + can be hurtful to others. + + * We speak and act gently and inclusively. + + * We respect different points of view, experiences, beliefs, etc. and we + take them into account when we act collectively so it reflects in our + attitudes. + + * We welcome criticism, specially the constructive kind ;) + + * We focus in what's best for the community, without losing warmth, + respect and diversity amongst ourselves. + + * We show empathy toward others. We want to share and communicate. + + * It's useful to think everyone has different abilities, stories, + experiences... It's possible to not understand some comments. We try + to avoid acting in bad faith and to use every accessibility tool we + can. + + * The last item includes neurodiverse people and those that have + experienced trauma. Sometimes, sarcasm or irony is not well received + or understood by others. We take this into our strategies to include + everyone in our communications. Even more, if we think some topics + could be sensitive to others (memory-triggering, phobias, untolerable, + explicit violence or body images, etc.), we use content warnings (cw) + before what we wanted to share. For instance: "cw: comments about + sexual and physical violence". This allows everyone to opt in to the + content instead of being taken by surprise. + + * We're respectful of limits established by others (personal space, + physical contact, interaction mood, privacy, being photographed, etc.) + + * We want to and believe in welcoming more pirates! + + ## Consent for documenting and sharing in media + + * If you're going to take pictures or record video, ask consent from + people involved. + + * If there're minors, ask their responsible families. + + ## Our commitment against harassment + + In the interest of fomenting an open, diverse and welcoming community, + we contributors and admins make a commitment against harassment in our + projects and community for everyone, without regard of age, body + diversity, capacity, neuro-diversity, ethnicity, gender identity and + expression, experience level, nationality, physical appearance, + religion, sexual identity or orientation. + + Examples of unacceptable behaviour from participants: + + * Offensive comments about gender/s, gender identity and expression, + sexual orientation, capacity, mental sickness, neuro-(a)tipicality, + physical appearance, body size, ethnicity or religion. + + * Unwelcomed comments related to personal and life choices, including + amongst others, those related to food, health, children upbringing, + drug use and employment. + + * Insulting or despective comments and personal or political attacks. + **Trolling**. + + * Assuming others' gender. If you're in doubt, ask politely about + pronouns. Don't use the name(s) that people don't use anymore, use + the name, _nickname_ or pseudonym that they prefer. Do you really + need the name, ID number, biometric data, birth certificate of others? + + * Sexual comments, images or behaviour, unneeded or in spaces where they + weren't appropiate. + + * Unconsented physical contact or repeated after being asked to stop. + + * Threatening others. + + * Inciting violence towards others, including self-damage. + + * Deliberate intimidation. + + * Stalking. + + * To harass by photographing or recording without consent, including + uploading personal information to the Internet. + + * Interrupting a conversation constantly. + + * Making unwanted sexual comments. + + * Unappropiate patterns of social contact, like asking/assuming + inappropiate intimacy levels with others. + + * Trying to interact with a person after being asked not to. + + * Exposing deliberately any aspect of a person identity without consent, + except when necessary for protecting others against intentional abuse. + + * Making public any kind of private conversation. + + * Other kinds of conduct that can be considered inappropiate in an + environment of camaraderie. + + * Repeating attitudes that others find offensive or violatory of this + code. + + ## Consequences + + * Any person that has been asked to stop offensive behaviour is expected + to respond immediately, even when in disagreement. + + * Admins can take any action deemed necessary and adequate, including + expelling the person or removing their site without advertence. This + decision is taken by consensus between admins and is reserved for + extreme cases that compromise the community or the permanence of + others without feeling wronged or threatened. + + * Admins reserve the right to forbid participation to any future + activity or publication. + + As we mentioned before, this code is in permanent collective mutation. + It's main objective is to generate an inclusive and non-expulsive + environment that is also transparent and open without [missing + stairs](https://en.wikipedia.org/wiki/Missing_stair) ("the missing stair + from a house that everyone knows about but no one wants to take + responsibility for"). It's important to adapt it to different + activities and that it nurtures from contributions from its users. + Receiving your comments and input will help us to achieve this + objective. + + ## Let's keep in contact! + + Si pasaste por alguna situación que quieras compartir --te hayas animado + o no a decirlo en el momento--, podés ponerte en contacto con nosotres. + + Con respecto a quejas o avisos acerca de situaciones de violencia, + acoso, abuso o repetición de conductas que se advirtieron como + intolerables, tomamos la responsabilidad de tenerlas en cuenta y + trabajar en ellas para que el resultado sea el favorable al espíritu de + colectiva que elegimos y describimos aquí. Si bien consideramos que las + prácticas punitivistas no van con nosotres, nuestra decisión explícita + es escuchar a la persona que se manifiesta como violentada o víctima y + acompañarla. + + You can contact us if you were part of a situation you want to share + --even if you didn't pointed it in the moment. + + In regards to complaints or notices about violence, harassment, abuse or + repeated untolerable conducts, we take the responsibility of working on + them for a favorable result towards the collective spirit we defined + here. Even when we don't condone punitivist practices, our explicit + decision is for the victim to be listened and accompanied. + content_es: | + # Códigos para compartir + + > Este código de convivencia está basado en los "[Códigos para + > compartir, hackear, piratear en + > libertad](https://utopia.partidopirata.com.ar/zines/codigos_para_compartir.html)" + > publicados por el [Partido Interdimensional + > Pirata](https://partidopirata.com.ar/). + + > Utilizamos preferentemente la 'e' para referirnos a las personas en + > general. En ese sentido, alentamos las diferentes formas, estrategias + > y herramientas para incorporar prácticas no antropocéntricas, + > sexistas, ni cisexistas en la lengua. Otras alternativas que apoyamos + > --y eventualmente usamos-- son el uso del femenino, la letra e, arrobas, + > equis, asteriscos, etc. + + ## Introducción + + Este es un ejemplo de código que busca aportar un marco de consenso para + garantizar la asistencia, permanencia y cómoda estadía de todas las + personas que habitan y utilizan Sutty, así como para bienvenir a nueves + usuaries y potenciales aliades. Para esto, fija un piso de conductas + deseables, aceptables, indeseables y/o intolerables para la comunidad. + Podés usarlo sin cambios o modificarlo para adaptarlo a tus actividades. + Este código está en permanente mutación colectiva y se alimenta, copia e + inspira de las siguientes fuentes: + + * + + * + + * + + * + + Procuramos mantener y fomentar una comunidad abierta, que invite y logre + la participación de cada vez más personas, en toda su diversidad. + Sabemos que los espacios de Software Libre, informática, sistemas, etc. + son habitados mayormente por varones cis, blancos y de clase media, pese + al reconocimiento de la necesidad de eliminar la brecha de géneros. En + este sentido, este es nuestro pequeño aporte, hecho de prácticas + colectivas de múltiples dimensiones, reflexiones, lecturas, experiencias + que crecen día a día. + + ## Que todes les seres sean bien tratades + + Cada ser con el que compartamos el espacio es merecedore de buen trato, + respeto y compasión. En otras palabras, compartimos a continuación los + criterios básicos de presentación y cuidados. + + Para les humanes + + Todes somos dignes de cuidados y de saludos y tenemos derecho a suponer + las buenas intenciones de le otre. + + Para referirnos a otres humanes, trataremos de ser cuidadoses y + respuestuoses de su identidad de género. Para ello, son útiles los + siguientes principios: + + * No presuponer, juzgar o "interpretar" el género de le otre. + + * No generizar de antemano. Se desprende del punto anterior, pero hace + especial énfasis en comportamientos naturalizados de generización (EJ: + presuponer que porque una persona usa un vestido se nombra en + femenino...). La propuesta es desecharlos. + + * Si la persona explicita sus pronombres y modos en que quiere ser + referenciade, lo respetamos, escuchando y procurando referirnos a elle + usando sus pronombres elegidos. + + * Si no se incluye en la presentación los pronombres preferidos, podemos + preguntar respetuosamente qué pronombres se usan. ¡Pero atención! Es + una pregunta que debe dirigirse a todes por igual, de lo contrario, + carga la "sospecha" sobre la persona señalada y puede resultar en una + forma de hostigamiento. + + * ¿Es necesario conocer el género de una persona para relacionarnos o + referirnos a ella? Quizás una buena práctica es evitar generizar para + todas las personas. Pero si esto implica el uso compulsivo de la "e" + para todes, puede ser que alguna persona se sienta molesta. (Por + ejemplo, las personas trans\* que se identifican en femenino o + masculino suelen sentirse molestas y "sacadas del clóset" u *outeadas* + si se refieren a ellas con la "e", ¡en especial si son las únicas en + ser generizadas de esta forma en un grupo!). + + * Ante cualquier duda, preguntar respetuosamente y disculparse + respetuosamente es una buena idea para ayudar a cuidarnos. + + ## Puntos importantes para garantizar que nuestro espacio no resulte expulsivo + + **Escucharnos a todas y entre todas en un clima de cuidados** + + * Escuchar lo que cada quien tiene para decir, conscientes de que todes + tenemos algo valioso para comunicar(nos). + + * Para la escucha activa, preferimos preguntar primero, en lugar de + hacer juicios. + + * Hacer silencio a veces es la condición para que otres puedan animarse + a hablar. Escuchar es un ejercicio que requiere práctica. También lo + es hablar. + + * Nos interesa lo que todes tengan para decir. Por lo tanto, si estás + más entrenade en el ejercicio de participar, hablar, opinar, tené en + cuenta que quizás haya otres que no lo estén tanto: darles el espacio + si quieren tomarlo. ¡Pero recordá que incentivar no es lo mismo que + presionar! + + * Tratamos de revisar y discontinuar alguna práctica que pueda haber + resultado ofensiva, para sumar al clima de respeto. Sin embargo, esto + no significa "bajar la cabeza" o estar necesariamente de acuerdo. Al + menos, fija un piso de respeto para comenzar un diálogo en el caso en + que sea necesario. + + * Es --al menos-- una falta de respeto repetir un comportamiento dañino + que ya se identificó como tal. Puede incomodar, lastimar y expulsar a + otres, por lo que preferimos llamar la atención sobre este punto todas + las veces que sea necesario y tolerable. + + * Evitamos esto nosotres y ayudamos a otres a darse cuenta cuando lo + están haciendo. + + * En los casos en los que los llamados de atención resulten + insuficientes, hemos de revisar estos acuerdos para sostener la + convivencia. Eso implica actuar de acuerdo a ellos. Y también que + estos códigos pueden ser revisados y actualizados en caso de que se + considere necesario (deje de haber consenso). + + * Una manera en la que los espacios de Software Libre y tecnologías + pueden y suelen ser expulsivos es mediante actitudes que no contemplan + la diversidad de saberes e interlocutor\*s. So pretexto de incluir + tecnicismos, muches compañeres quedan al margen de lo que está + sucediendo, muchas veces, sin que nadie tenga la mínima delicadeza de + verificar que todes estén siguiendo la conversación. + + Recomendamos fervientemente estar atentes a estas dinámicas para poder + evitarlas y/o revertirlas. + + * La otra cara de la situación anterior es el famoso _mansplaining_: un + tipo cis poniéndose en el lugar de la autoridad del saber para + (sobre-)explicar todo a le otre, de manera paternalista y sin tener en + cuenta lo que le otre quiere o no escuchar, decir, lo que sabe o hace, + etc. + + * Creemos que no hace falta ser "una voz autorizada" para opinar y + participar. La cultura libre se comparte entre todes. + + * "Compartir es bueno" vs. "Google es tu amigo". La meritocracia y + ciertos códigos tradicionales de ciertas ciber-comunidades suelen + operar de manera contraria a la propuesta de la cultura libre de + compartir. Apoyamos la cultura piratil que suma más piratas a los + barcos. Creemos que la cultura es para todes y desafiamos las + prácticas elitistas. + + * No damos por sentado que la persona con la que estamos interactuando + comparte gustos, creencias, pertenencias de clase, sexualidad, etc. + Podemos ser violentes si hacemos una lectura equivocada de le otre. + Recomendamos siempre preguntar de manera respetuosa y evitar + comentarios o chistes que puedan herir a les otres. + + * Usamos lenguaje amable e inclusivo y mostramos conductas amables e + inclusivas. + + * Respetamos los diferentes puntos de vista, experiencias, creencias, + etc. y lo tenemos en cuenta cuando estamos en grupo para verlo + reflejado en nuestras actitudes. + + * Aceptamos las críticas. En especial las constructivas ;) + + * Nos enfocamos en lo que es mejor para la comunidad, sin por ello + perder de vista la calidez, el respeto y la diversidad entre cada une + de nosotres. + + * Mostramos empatía con les otres. Queremos comunicarnos y compartir. + + * Es útil tener en cuenta que las personas tenemos capacidades, + historias, recorridos... diferentes. Es posible que algunos + comentarios no sean comprendidos. Trataremos de evitar la mala fe y + sumar todas las herramientas de accesibilidad para todas las personas. + + * El punto anterior incluye a personas neurodiversas y con experiencias + de trauma. A veces el sarcasmo o la ironía no es bien recibido o + comprendido por todes. Será útil tenerlo en cuenta para buscar + estrategias que no excluyan a las personas de nuestros intercambios. + Por otro lado, si creemos que determinados temas pueden ser sensibles + (desencadenantes de recuerdos, fobias, difíciles de tolerar o cargados + de violencia o imágenes corporales muy explícitas, por ejemplo) para + algunas personas y nos valemos de las advertencias de contenido o + _content warning_ (cw) (ej: "cw: comentarios de violencia sexual y + violencia física") antes del contenido a introducir. Esto permite que + cada cual pueda elegir si acceder o no a esos contenidos y que no le + tomen por sorpresa. + + * Respetamos los límites que establecen otras personas (espacio + personal, contacto físico, ganas de interactuar, no querer dar datos + de contacto o ser fotografiades, etc.) + + * ¡Queremos y (creemos) en sumar piratas! + + ## Consentimiento para documentar o compartir en medios + + * Si vas a publicar video o fotos, obtené el consentimiento de las + personas. + + * Si hay menores, consultalo con su familia responsable. + + ## Nuestro compromiso contra el acoso + + En el interés de fomentar una comunidad abierta, diversa y hospitalaria, + nosotres como contribuyentes y administradores nos comprometemos a hacer + de la participación en nuestro proyecto y nuestra comunidad una + experiencia libre de acoso para todes, independientemente de la edad, + diversidad corporal, capacidades, neuro-diversidad, etnia, identidad y + expresión de género, nivel de experiencia, nacionalidad, apariencia + física, raza, religión, identidad u orientación sexual y otras. + + Ejemplos de comportamiento inaceptable por parte de participantes: + + * Comentarios ofensivos relacionados con el/los género/s, la identidad + y expresión de género, la orientación sexual, las capacidades, las + enfermedades mentales, la neuro(a)tipicalidad, la apariencia física, + el tamaño corporal, la raza o la religión. + + * Comentarios indeseados relacionados con las elecciones y las prácticas + de estilo de vida de una persona, incluidas, entre otras, las + relacionadas con alimentos, salud, crianza de les hijes, drogas y + empleo. + + * Comentarios insultantes o despectivos (_trolling_) y ataques + personales o políticos. + + * Dar por sentado el género de las demás personas. En caso de duda, + preguntá educadamente por los pronombres. No uses nombres con los que + las personas no se identifican, usá el nombre, _nickname_ o apodo que + hayan elegido (¿Realmente necesitás el nombre y el número de DNI, + datos biométricos, carta natal, etc.?). + + * Comentarios, imágenes o comportamientos sexuales innecesarios o fuera + de lugar en espacios en los que no son apropiados. + + * Contacto físico sin consentimiento o reiterado tras un pedido de cese. + En el mismo sentido, invasión del espacio corporal (y espacios en + general). + + * Amenazas contra otras personas. + + * Incitación a la violencia contra otra persona, que también incluye + alentar a una persona a autolesionarse. + + * Intimidación deliberada. + + * Acechar (_stalkear_) o perseguir. + + * Acosar fotografiando o grabando sin consentimiento, incluyendo también + subir información personal a Internet sobre alguien para acosarle. + + * Interrumpir constantemente en una conversación. + + * Hacer comentarios sexuales indeseados. + + * Patrones de contacto social inapropiados, como por ejemplo + pedir/suponer niveles de intimidad inapropiados con les demás. + + * Seguir tratando de entablar conversación con una persona cuando se te + pidió que no lo hagas. + + * Divulgar deliberadamente cualquier aspecto de la identidad de una + persona sin su consentimiento, excepto que sea necesario para proteger + a otras personas de abuso intencional. + + * Hacer pública una conversación privada de cualquier tipo. + + * Otros tipos de conducta que pudieran considerarse inapropiadas en un + entorno de camaradería. + + * Reiteración de actitudes que les participantes señalen como ofensivas + o violatorias de este código. + + ## Consecuencias + + * Se espera que la persona a la que se la haya pedido que cese un + comportamiento que infringe este código acate el pedido de forma + inmediata, incluso si no está de acuerdo con este. + + * Les administradores pueden tomar cualquier acción que juzguen + necesaria y adecuada, incluyendo expulsar a la persona o dar de baja + sus sitios sin advertencia. Esta decisión la toman les administradores + en consenso y se reserva para casos extremos que comprometan la + continuidad de la comunidad o bien la posibilidad de permanencia en + ella de otres participantes sin sentirse agraviades o amenazades. + + * Les administradores se reservan el derecho a prohibir la asistencia a + cualquier actividad futura o publicación de sitios. + + Como mencionamos antes, este código está en permanente mutación + colectiva. El objetivo principal es generar un ambiente inclusivo y no + expulsivo, un ambiente transparente y abierto en el que no haya + escalones faltantes ("el escalón que falta en la escalera y todo el + mundo sabe y avisa pero nadie se quiere hacer cargo"). Es importante que + se adapte a las actividades y se nutra de las contribuciones de les + usuaries. Recibir tus comentarios y aportes nos ayudará a cumplir con + su objetivo principal. + + ## ¡Sigamos en contacto! + + Si pasaste por alguna situación que quieras compartir --te hayas animado + o no a decirlo en el momento--, podés ponerte en contacto con nosotres. + + Con respecto a quejas o avisos acerca de situaciones de violencia, + acoso, abuso o repetición de conductas que se advirtieron como + intolerables, tomamos la responsabilidad de tenerlas en cuenta y + trabajar en ellas para que el resultado sea el favorable al espíritu de + colectiva que elegimos y describimos aquí. Si bien consideramos que las + prácticas punitivistas no van con nosotres, nuestra decisión explícita + es escuchar a la persona que se manifiesta como violentada o víctima y + acompañarla. From 35722484e7beb21ec326ce2c21263034b5f1b057 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 22 Mar 2023 19:06:57 -0300 Subject: [PATCH 159/699] =?UTF-8?q?fix:=20solo=20crear=20el=20c=C3=B3digo?= =?UTF-8?q?=20de=20conducta=20si=20la=20plantilla=20lo=20soporta?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit como fallback usamos page --- app/services/site_service.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 5ba84af0..a7811a5c 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -143,13 +143,15 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do end def add_code_of_conduct + return unless site.layout?(:code_of_conduct) || site.layout?(:page) + # TODO: soportar más códigos de conducta coc = CodeOfConduct.first with_all_locales do |locale| params = ActionController::Parameters.new( post: { - layout: 'code_of_conduct', + layout: site.layout?(:code_of_conduct) ? 'code_of_conduct' : 'page', lang: locale.to_s, title: coc.title, description: coc.description From 4f89123ec37a00ae9fed4386ada9e19d4ce65038 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 23 Mar 2023 15:34:59 -0300 Subject: [PATCH 160/699] fix: merge fallido --- app/views/devise/mailer/invitation_instructions.html.haml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/app/views/devise/mailer/invitation_instructions.html.haml b/app/views/devise/mailer/invitation_instructions.html.haml index 4989cf64..0aba8a22 100644 --- a/app/views/devise/mailer/invitation_instructions.html.haml +++ b/app/views/devise/mailer/invitation_instructions.html.haml @@ -16,9 +16,7 @@ %p= t('devise.mailer.invitation_instructions.accept_until', due_date: l(@resource.invitation_due_at, format: :'devise.mailer.invitation_instructions.accept_until_format')) -- else - %p= link_to t('devise.mailer.invitation_instructions.sign_in'), root_url(change_locale_to: @resource.lang) %p= t('devise.mailer.invitation_instructions.ignore') - else - %p= link_to t('devise.mailer.invitation_instructions.sign_in'), root_url + %p= link_to t('devise.mailer.invitation_instructions.sign_in'), root_url(change_locale_to: @resource.lang) From 66df2a971c1547d15da9815d35c512dddfcafeb3 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 23 Mar 2023 17:11:51 -0300 Subject: [PATCH 161/699] feat: guardar la api key de njalla en las credenciales --- app/models/deploy_distributed_press.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/deploy_distributed_press.rb b/app/models/deploy_distributed_press.rb index 9414abc6..6a6b1d64 100644 --- a/app/models/deploy_distributed_press.rb +++ b/app/models/deploy_distributed_press.rb @@ -160,7 +160,7 @@ class DeployDistributedPress < Deploy def njalla @njalla ||= begin - client = Njalla::V1::Client.new(token: ENV['NJALLA_TOKEN']) + client = Njalla::V1::Client.new(token: Rails.application.credentials.njalla) Njalla::V1::Domain.new(domain: Site.domain, client: client) end From fda1e5b78c3951bda2470ba8d54942e1c4d382da Mon Sep 17 00:00:00 2001 From: f Date: Thu, 23 Mar 2023 17:21:05 -0300 Subject: [PATCH 162/699] =?UTF-8?q?fix:=20establecer=20un=20par=C3=A1metro?= =?UTF-8?q?=20por=20defecto=20#12754?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/usuaries_controller.rb | 2 ++ app/models/rol.rb | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/app/controllers/usuaries_controller.rb b/app/controllers/usuaries_controller.rb index 6d02a35a..b0ab77cd 100644 --- a/app/controllers/usuaries_controller.rb +++ b/app/controllers/usuaries_controller.rb @@ -72,6 +72,8 @@ class UsuariesController < ApplicationController site_usuarie = SiteUsuarie.new(@site, current_usuarie) authorize site_usuarie + params[:invited_as] = Rol::INVITADE unless Rol.role? params[:invited_as] + @policy = policy(site_usuarie) end diff --git a/app/models/rol.rb b/app/models/rol.rb index 5879d666..fcd07037 100644 --- a/app/models/rol.rb +++ b/app/models/rol.rb @@ -21,4 +21,8 @@ class Rol < ApplicationRecord def usuarie? rol == USUARIE end + + def self.role?(rol) + ROLES.include? rol + end end From 655edf59e1bd3ee8a739e07b4b9e31df16a28eec Mon Sep 17 00:00:00 2001 From: f Date: Thu, 23 Mar 2023 18:02:43 -0300 Subject: [PATCH 163/699] fix: no intentar notificar si no hay sitio closes #12753 --- app/jobs/deploy_job.rb | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/app/jobs/deploy_job.rb b/app/jobs/deploy_job.rb index f0dc23f3..8b1e1df0 100644 --- a/app/jobs/deploy_job.rb +++ b/app/jobs/deploy_job.rb @@ -67,11 +67,13 @@ class DeployJob < ApplicationJob rescue DeployTimedOutException => e notify_exception e ensure - @site&.update status: 'waiting' + if @site.present? + @site.update status: 'waiting' - notify_usuaries if notify + notify_usuaries if notify - puts "\a" if @output + puts "\a" if @output + end end end # rubocop:enable Metrics/MethodLength From e92d5947b437cf6f30f070f3c04969732ac8578d Mon Sep 17 00:00:00 2001 From: f Date: Thu, 23 Mar 2023 18:25:55 -0300 Subject: [PATCH 164/699] =?UTF-8?q?fix:=20no=20fallar=20njalla=20si=20fall?= =?UTF-8?q?=C3=B3=20dp?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit closes #12410 --- app/models/deploy_distributed_press.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/app/models/deploy_distributed_press.rb b/app/models/deploy_distributed_press.rb index 6a6b1d64..679da09d 100644 --- a/app/models/deploy_distributed_press.rb +++ b/app/models/deploy_distributed_press.rb @@ -133,6 +133,7 @@ class DeployDistributedPress < Deploy # XXX: Esto depende de nuestro DNS actual, cuando lo migremos hay # que eliminarlo. unless site.name.end_with? '.' + self.remote_info ||= {} self.remote_info['njalla'] = {} self.remote_info['njalla']['a'] = njalla.add_record(name: site.name, type: 'CNAME', content: "#{Site.domain}.").to_h self.remote_info['njalla']['ns'] = njalla.add_record(name: "_dnslink.#{site.name}", type: 'NS', content: "#{publisher.hostname}.").to_h From f83fb68dfc74466d7c7c0806ab7e8d8f793ee90d Mon Sep 17 00:00:00 2001 From: f Date: Fri, 24 Mar 2023 13:30:14 -0300 Subject: [PATCH 165/699] =?UTF-8?q?fix:=20mostrar=20los=20metodos=20fallid?= =?UTF-8?q?os=20en=20el=20correo=20de=20notificaci=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit no salían porque la tabla se genera en base a expandir las urls y cuando las urls venían vacías no se generaba la fila. --- app/jobs/deploy_job.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/jobs/deploy_job.rb b/app/jobs/deploy_job.rb index 530b69dd..aeb0f4b6 100644 --- a/app/jobs/deploy_job.rb +++ b/app/jobs/deploy_job.rb @@ -44,7 +44,8 @@ class DeployJob < ApplicationJob status = false seconds ||= 0 size ||= 0 - urls ||= [] + # XXX: Hace que se vea la tabla + urls ||= [nil] notify_exception e, d end From 546b739edf9934be92fd4360867cbf27847a87ea Mon Sep 17 00:00:00 2001 From: f Date: Fri, 24 Mar 2023 14:10:39 -0300 Subject: [PATCH 166/699] fix: merge fallido --- app/models/deploy_local.rb | 7 ------- 1 file changed, 7 deletions(-) diff --git a/app/models/deploy_local.rb b/app/models/deploy_local.rb index 1c80e51b..645d7906 100644 --- a/app/models/deploy_local.rb +++ b/app/models/deploy_local.rb @@ -130,13 +130,6 @@ class DeployLocal < Deploy run 'yarn install --production', output: output end - def pnpm(output: output) - return true unless pnpm_lock? - - run %(pnpm config set store-dir "#{pnpm_cache_dir}"), output: output - run 'pnpm install --production', output: output - end - def bundle(output: false) # XXX: Desde que ya no compartimos el directorio de gemas, tenemos # que hacer limpieza después de instalar. From 86baa413efecb04edac44af56eeb9302b64c72e9 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 24 Mar 2023 14:23:34 -0300 Subject: [PATCH 167/699] =?UTF-8?q?fix:=20sincronizar=20aunque=20algunos?= =?UTF-8?q?=20destinos=20todav=C3=ADa=20no=20existan?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit por ejemplo la dependencia en hidden service hace que no se sincronice el sitio principal. --- app/models/deploy_full_rsync.rb | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/app/models/deploy_full_rsync.rb b/app/models/deploy_full_rsync.rb index 5bdfeeff..a3c1840d 100644 --- a/app/models/deploy_full_rsync.rb +++ b/app/models/deploy_full_rsync.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true class DeployFullRsync < DeployRsync - DEPENDENCIES = %i[ + SOFT_DEPENDENCIES = %i[ deploy_alternative_domain deploy_hidden_service deploy_local @@ -9,16 +9,24 @@ class DeployFullRsync < DeployRsync deploy_zip ] - # Sincroniza las ubicaciones alternativas también + # Sincroniza las ubicaciones alternativas también, ignorando las que + # todavía no se generaron. Solo falla si ningún sitio fue + # sincronizado o si alguna sincronización falló. # # @param :output [Boolean] # @return [Boolean] def rsync(output: false) - DEPENDENCIES.map(&:to_s).map(&:classify).map do |dependency| - site.deploys.where(type: dependency).find_each.map do |deploy| - run %(rsync -aviH --delete-after --timeout=5 #{Shellwords.escape deploy.destination} #{Shellwords.escape destination}), output: output - end - end.flatten.all? + result = + SOFT_DEPENDENCIES.map(&:to_s).map(&:classify).map do |dependency| + site.deploys.where(type: dependency).find_each.map do |deploy| + next unless File.exist? deploy.destination + + run %(rsync -aviH --delete-after --timeout=5 #{Shellwords.escape deploy.destination} #{Shellwords.escape destination}), output: output + rescue StandardError + end + end.flatten.compact + + result.present? && result.all? end def url From 7e470547951d5323623d82c61b46c0a8071e5b70 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 25 Mar 2023 14:50:36 -0300 Subject: [PATCH 168/699] feat: implementar un servicio liviano de git-lfs #9361 --- app/services/lfs_object_service.rb | 64 ++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 app/services/lfs_object_service.rb diff --git a/app/services/lfs_object_service.rb b/app/services/lfs_object_service.rb new file mode 100644 index 00000000..44881bd5 --- /dev/null +++ b/app/services/lfs_object_service.rb @@ -0,0 +1,64 @@ +# frozen_string_literal: true + +# Representa un objeto git LFS +class LfsObjectService + attr_reader :site, :blob, :usuarie + + # @param :site [Site] + # @param :blob [ActiveStorage::Blob] + def initialize(site:, blob:, usuarie:) + @site = site + @blob = blob + @usuarie = usuarie + end + + def process + # Crear el directorio + FileUtils.mkdir_p(File.dirname(object_path)) + + # Mover el archivo + FileUtils.mv(path, object_path) unless File.exist? object_path + + # Crear el pointer + Site::Writer.new(site: site, file: path, content: pointer).save + + # Commitear el pointer + site.repository.commit(file: path, usuarie: usuarie, message: File.basename(path)) + + # Eliminar el pointer + FileUtils.rm(path) + + # Hacer link duro del objeto al archivo + FileUtils.hardlink(object_path, path) + end + + # @return [String] + def path + @path ||= blob.service.path_for(blob.key) + end + + # @return [String] + def digest + @digest ||= Digest::SHA256.file(path) + end + + # @return [String] + def object_path + @git_lfs_object_path ||= File.join(site.path, '.git', 'lfs', 'objects', digest[0..1], digest[2..3], digest) + end + + # @return [Integer] + def size + @size ||= File.size(path) + end + + # @return [String] + def pointer + @pointer ||= + <<~POINTER + version https://git-lfs.github.com/spec/v1 + oid sha256:#{digest} + size #{size} + POINTER + end +end From 3bd96e7726ce17057469fff7665391ff25ffe343 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 25 Mar 2023 15:22:54 -0300 Subject: [PATCH 169/699] feat: commitear el archivo en lfs al subirlo --- app/lib/active_storage/service/jekyll_service.rb | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/app/lib/active_storage/service/jekyll_service.rb b/app/lib/active_storage/service/jekyll_service.rb index 88ffa83c..6763ee0d 100644 --- a/app/lib/active_storage/service/jekyll_service.rb +++ b/app/lib/active_storage/service/jekyll_service.rb @@ -4,11 +4,6 @@ module ActiveStorage class Service # Sube los archivos a cada repositorio y los agrega al LFS de su # repositorio git. - # - # @todo: Implementar LFS. No nos gusta mucho la idea porque duplica - # el espacio en disco, pero es la única forma que tenemos (hasta que - # implementemos IPFS) para poder transferir los archivos junto con el - # sitio. class JekyllService < Service::DiskService # Genera un servicio para un sitio determinado # @@ -27,7 +22,10 @@ module ActiveStorage # @param :checksum [String] def upload(key, io, checksum: nil, **) instrument :upload, key: key, checksum: checksum do - IO.copy_stream(io, make_path_for(key)) unless exist?(key) + unless exist?(key) + IO.copy_stream(io, make_path_for(key)) + LfsObjectService.new(site: site, usuarie: current_usuarie, blob: blob).process + end ensure_integrity_of(key, checksum) if checksum end end @@ -91,6 +89,11 @@ module ActiveStorage def path_for(key) File.join root, folder_for(key), filename_for(key) end + + # @return [Site] + def site + @site ||= Site.find_by_name(File.basename(root)) + end end end end From 58cb3a7bae46c83eabe9991882fbfd874f897f7b Mon Sep 17 00:00:00 2001 From: f Date: Mon, 27 Mar 2023 14:08:19 -0300 Subject: [PATCH 170/699] fix: typo --- app/models/deploy_local.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/deploy_local.rb b/app/models/deploy_local.rb index c512e0a8..9c0ba492 100644 --- a/app/models/deploy_local.rb +++ b/app/models/deploy_local.rb @@ -123,7 +123,7 @@ class DeployLocal < Deploy run 'yarn install --production', output: output end - def pnpm(output: output) + def pnpm(output: false) return true unless pnpm_lock? run %(pnpm config set store-dir "#{pnpm_cache_dir}"), output: output From 3b1b309b2a39c2db55586b863ae35e847add8868 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 27 Mar 2023 14:09:16 -0300 Subject: [PATCH 171/699] =?UTF-8?q?fix:=20crear=20un=20registro=20para=20w?= =?UTF-8?q?ww=20tambi=C3=A9n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/deploy_distributed_press.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/app/models/deploy_distributed_press.rb b/app/models/deploy_distributed_press.rb index 679da09d..f26a72b5 100644 --- a/app/models/deploy_distributed_press.rb +++ b/app/models/deploy_distributed_press.rb @@ -136,6 +136,7 @@ class DeployDistributedPress < Deploy self.remote_info ||= {} self.remote_info['njalla'] = {} self.remote_info['njalla']['a'] = njalla.add_record(name: site.name, type: 'CNAME', content: "#{Site.domain}.").to_h + self.remote_info['njalla']['cname'] = njalla.add_record(name: "www.#{site.name}", type: 'CNAME', content: "#{Site.domain}.").to_h self.remote_info['njalla']['ns'] = njalla.add_record(name: "_dnslink.#{site.name}", type: 'NS', content: "#{publisher.hostname}.").to_h end rescue HTTParty::Error => e From fbb3a5166cd4f155d726c35b5faee40a21737db5 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 27 Mar 2023 14:10:35 -0300 Subject: [PATCH 172/699] fix: intentar crear siempre los registros en njalla --- app/models/deploy_distributed_press.rb | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/app/models/deploy_distributed_press.rb b/app/models/deploy_distributed_press.rb index f26a72b5..a2e2e20a 100644 --- a/app/models/deploy_distributed_press.rb +++ b/app/models/deploy_distributed_press.rb @@ -30,7 +30,7 @@ class DeployDistributedPress < Deploy time_start create_remote_site! if remote_site_id.blank? - create_njalla_records! if remote_info['njalla'].blank? + create_njalla_records! save if remote_site_id.blank? || remote_info['njalla'].blank? @@ -134,10 +134,10 @@ class DeployDistributedPress < Deploy # que eliminarlo. unless site.name.end_with? '.' self.remote_info ||= {} - self.remote_info['njalla'] = {} - self.remote_info['njalla']['a'] = njalla.add_record(name: site.name, type: 'CNAME', content: "#{Site.domain}.").to_h - self.remote_info['njalla']['cname'] = njalla.add_record(name: "www.#{site.name}", type: 'CNAME', content: "#{Site.domain}.").to_h - self.remote_info['njalla']['ns'] = njalla.add_record(name: "_dnslink.#{site.name}", type: 'NS', content: "#{publisher.hostname}.").to_h + self.remote_info['njalla'] ||= {} + self.remote_info['njalla']['a'] ||= njalla.add_record(name: site.name, type: 'CNAME', content: "#{Site.domain}.").to_h + self.remote_info['njalla']['cname'] ||= njalla.add_record(name: "www.#{site.name}", type: 'CNAME', content: "#{Site.domain}.").to_h + self.remote_info['njalla']['ns'] ||= njalla.add_record(name: "_dnslink.#{site.name}", type: 'NS', content: "#{publisher.hostname}.").to_h end rescue HTTParty::Error => e ExceptionNotifier.notify_exception(e, data: { site: site.name }) From 373cdf895a68a976ac628ce50773cf3fa0fb4966 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 27 Mar 2023 14:43:01 -0300 Subject: [PATCH 173/699] feat: sincronizar dominios por idioma --- app/models/deploy_full_rsync.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/app/models/deploy_full_rsync.rb b/app/models/deploy_full_rsync.rb index a3c1840d..7bc0e788 100644 --- a/app/models/deploy_full_rsync.rb +++ b/app/models/deploy_full_rsync.rb @@ -3,6 +3,7 @@ class DeployFullRsync < DeployRsync SOFT_DEPENDENCIES = %i[ deploy_alternative_domain + deploy_localized_domain deploy_hidden_service deploy_local deploy_www From 68704dd5984a479aa4e7cab0030ee61c274cc207 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 27 Mar 2023 14:44:22 -0300 Subject: [PATCH 174/699] fix: deprecar DeployLocal#extra_env --- app/models/deploy.rb | 1 + app/models/deploy_local.rb | 1 + 2 files changed, 2 insertions(+) diff --git a/app/models/deploy.rb b/app/models/deploy.rb index 52031d87..33dc9f2b 100644 --- a/app/models/deploy.rb +++ b/app/models/deploy.rb @@ -13,6 +13,7 @@ class Deploy < ApplicationRecord has_many :build_stats, dependent: :destroy DEPENDENCIES = [] + SOFT_DEPENDENCIES = [] def deploy(**) raise NotImplementedError diff --git a/app/models/deploy_local.rb b/app/models/deploy_local.rb index 9c0ba492..c031c7b9 100644 --- a/app/models/deploy_local.rb +++ b/app/models/deploy_local.rb @@ -152,6 +152,7 @@ class DeployLocal < Deploy # Consigue todas las variables de entorno configuradas por otros # deploys. # + # @deprecated Solo tenía sentido para Distributed Press v0 # @return [Hash] def extra_env @extra_env ||= From 5e23a7568060ca42f4c9f6599f0cd2eb303cd918 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 27 Mar 2023 14:52:37 -0300 Subject: [PATCH 175/699] feat: tener en cuenta las dependencias suaves al armar el grafo --- app/models/deploy.rb | 7 +++++++ app/models/deploy_full_rsync.rb | 4 +--- app/models/site/deploy_dependencies.rb | 2 +- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/app/models/deploy.rb b/app/models/deploy.rb index 33dc9f2b..a92708c0 100644 --- a/app/models/deploy.rb +++ b/app/models/deploy.rb @@ -100,6 +100,13 @@ class Deploy < ApplicationRecord @local_env ||= {} end + # Trae todas las dependencias + # + # @return [Array] + def self.all_dependencies + self::DEPENDENCIES | self::SOFT_DEPENDENCIES + end + private # @param [String] diff --git a/app/models/deploy_full_rsync.rb b/app/models/deploy_full_rsync.rb index 7bc0e788..b8c48eab 100644 --- a/app/models/deploy_full_rsync.rb +++ b/app/models/deploy_full_rsync.rb @@ -5,9 +5,7 @@ class DeployFullRsync < DeployRsync deploy_alternative_domain deploy_localized_domain deploy_hidden_service - deploy_local deploy_www - deploy_zip ] # Sincroniza las ubicaciones alternativas también, ignorando las que @@ -18,7 +16,7 @@ class DeployFullRsync < DeployRsync # @return [Boolean] def rsync(output: false) result = - SOFT_DEPENDENCIES.map(&:to_s).map(&:classify).map do |dependency| + self.class.all_dependencies.map(&:to_s).map(&:classify).map do |dependency| site.deploys.where(type: dependency).find_each.map do |deploy| next unless File.exist? deploy.destination diff --git a/app/models/site/deploy_dependencies.rb b/app/models/site/deploy_dependencies.rb index a01f99e7..ed80a8af 100644 --- a/app/models/site/deploy_dependencies.rb +++ b/app/models/site/deploy_dependencies.rb @@ -18,7 +18,7 @@ class Site end deploys.each do |deploy| - deploy.class::DEPENDENCIES.each do |dependency| + deploy.class.all_dependencies.each do |dependency| deploys.where(type: dependency.to_s.classify).each do |deploy_dependency| graph.add_edge deploy_dependency, deploy end From f4264fe763127557fe083b0b2dedec08e192b0c6 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 Mar 2023 15:28:46 -0300 Subject: [PATCH 176/699] feat: generar direcciones tor a demanda #12773 --- app/lib/hidden_service_client.rb | 13 +++++++++++++ app/models/deploy_hidden_service.rb | 12 +++++++++++- 2 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 app/lib/hidden_service_client.rb diff --git a/app/lib/hidden_service_client.rb b/app/lib/hidden_service_client.rb new file mode 100644 index 00000000..9cf8a1d5 --- /dev/null +++ b/app/lib/hidden_service_client.rb @@ -0,0 +1,13 @@ +# frozen_string_literal: true + +require 'httparty' + +class HiddenServiceClient + include HTTParty + + base_uri ENV.fetch('HIDDEN_SERVICE', 'http://tor:3000') + + def create(name) + self.class.get("/#{name}") + end +end diff --git a/app/models/deploy_hidden_service.rb b/app/models/deploy_hidden_service.rb index 79ff1bae..6b84752f 100644 --- a/app/models/deploy_hidden_service.rb +++ b/app/models/deploy_hidden_service.rb @@ -2,8 +2,12 @@ # Genera una versión onion class DeployHiddenService < DeployWww + store :values, accessors: %i[onion], coder: JSON + + before_create :create_hidden_service! + def fqdn - values[:onion].tap do |onion| + onion.tap do |onion| raise ArgumentError, 'Aun no se generó la dirección .onion' if onion.blank? end end @@ -11,4 +15,10 @@ class DeployHiddenService < DeployWww def url "http://#{fqdn}" end + + private + + def create_hidden_service! + self.onion = HiddenServiceClient.new.create(site.name) + end end From 9d09c3244f98ab1ab77bcf7aff4aa93957a1e18f Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 Mar 2023 16:21:29 -0300 Subject: [PATCH 177/699] =?UTF-8?q?feat:=20validar=20y=20agregar=20la=20di?= =?UTF-8?q?recci=C3=B3n=20a=20la=20configuraci=C3=B3n=20del=20sitio?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/deploy_hidden_service.rb | 13 ++++++++++++- app/services/site_service.rb | 7 ++----- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/app/models/deploy_hidden_service.rb b/app/models/deploy_hidden_service.rb index 6b84752f..ec6ed08c 100644 --- a/app/models/deploy_hidden_service.rb +++ b/app/models/deploy_hidden_service.rb @@ -6,6 +6,8 @@ class DeployHiddenService < DeployWww before_create :create_hidden_service! + ONION_RE = /\A[a-z0-9]{56}\.onion\z/.freeze + def fqdn onion.tap do |onion| raise ArgumentError, 'Aun no se generó la dirección .onion' if onion.blank? @@ -19,6 +21,15 @@ class DeployHiddenService < DeployWww private def create_hidden_service! - self.onion = HiddenServiceClient.new.create(site.name) + onion_address = HiddenServiceClient.new.create(site.name) + + if onion_address =~ ONION_RE + self.onion = onion_address + + usuarie = GitAuthor.new email: "tor@#{Site.domain}", name: 'Tor' + params = { onion: onion_address, deploy: self } + + SiteService.new(site: site, usuarie: usuarie, params: params).add_onion + end end end diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 0ecccba4..378bcec0 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -62,14 +62,11 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do # Agregar una dirección oculta de Tor al DeployHiddenService y a la # configuración del Site. def add_onion - onion = params[:onion].strip - deploy = DeployHiddenService.find_by(site: site) + onion = params[:onion] + deploy = params[:deploy] return false unless !onion.blank? && deploy - deploy.values[:onion] = onion - deploy.save - site.config['onion-location'] = onion site.config.write From 9d1505d2631024875ca7a9d732b065798a6d6a99 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 Mar 2023 16:22:02 -0300 Subject: [PATCH 178/699] BREAKING CHANGE: deprecar la api de onion --- app/controllers/api/v1/sites_controller.rb | 25 ---------------------- config/routes.rb | 2 -- 2 files changed, 27 deletions(-) diff --git a/app/controllers/api/v1/sites_controller.rb b/app/controllers/api/v1/sites_controller.rb index 10a92907..ae64cf74 100644 --- a/app/controllers/api/v1/sites_controller.rb +++ b/app/controllers/api/v1/sites_controller.rb @@ -12,31 +12,6 @@ module Api render json: sites_names + alternative_names + api_names + www_names end - # Sitios con hidden service de Tor - # - # @return [Array] lista de nombres de sitios sin onion aun - def hidden_services - render json: DeployHiddenService.where(values: nil).includes(:site).pluck(:name) - end - - # Tor va a enviar el onion junto con el nombre del sitio y tenemos - # que guardarlo en su deploy_hidden_service. - # - # @params [String] name - # @params [String] onion - def add_onion - site = Site.find_by(name: params[:name]) - - if site - usuarie = GitAuthor.new email: "tor@#{Site.domain}", name: 'Tor' - service = SiteService.new site: site, usuarie: usuarie, - params: params - service.add_onion - end - - head :ok - end - private def canonicalize(name) diff --git a/config/routes.rb b/config/routes.rb index a132135a..511ca654 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -11,8 +11,6 @@ Rails.application.routes.draw do namespace :v1 do resources :csp_reports, only: %i[create] - get :'sites/hidden_services', to: 'sites#hidden_services' - post :'sites/add_onion', to: 'sites#add_onion' resources :sites, only: %i[index], constraints: { site_id: /[a-z0-9\-.]+/, id: /[a-z0-9\-.]+/ } do get :'invitades/cookie', to: 'invitades#cookie' post :'posts/:layout', to: 'posts#create', as: :posts From 76c97372b9f5cc419f8a92b375bb29fcb23a110f Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 Mar 2023 16:22:58 -0300 Subject: [PATCH 179/699] =?UTF-8?q?fix:=20reintentar=20si=20fall=C3=B3=20l?= =?UTF-8?q?a=20generaci=C3=B3n=20en=20el=20pasado?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/deploy_hidden_service.rb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/models/deploy_hidden_service.rb b/app/models/deploy_hidden_service.rb index ec6ed08c..6e065102 100644 --- a/app/models/deploy_hidden_service.rb +++ b/app/models/deploy_hidden_service.rb @@ -9,6 +9,8 @@ class DeployHiddenService < DeployWww ONION_RE = /\A[a-z0-9]{56}\.onion\z/.freeze def fqdn + create_hidden_service! if onion.blank? + onion.tap do |onion| raise ArgumentError, 'Aun no se generó la dirección .onion' if onion.blank? end From 532e223af5aed71b9a63f9ac583785e7b3002bbd Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 Mar 2023 16:35:02 -0300 Subject: [PATCH 180/699] fixup! feat: generar direcciones tor a demanda #12773 --- app/lib/hidden_service_client.rb | 2 +- app/models/deploy_hidden_service.rb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/lib/hidden_service_client.rb b/app/lib/hidden_service_client.rb index 9cf8a1d5..5715a869 100644 --- a/app/lib/hidden_service_client.rb +++ b/app/lib/hidden_service_client.rb @@ -8,6 +8,6 @@ class HiddenServiceClient base_uri ENV.fetch('HIDDEN_SERVICE', 'http://tor:3000') def create(name) - self.class.get("/#{name}") + self.class.get("/#{name}").body end end diff --git a/app/models/deploy_hidden_service.rb b/app/models/deploy_hidden_service.rb index 6e065102..25c0c217 100644 --- a/app/models/deploy_hidden_service.rb +++ b/app/models/deploy_hidden_service.rb @@ -25,7 +25,7 @@ class DeployHiddenService < DeployWww def create_hidden_service! onion_address = HiddenServiceClient.new.create(site.name) - if onion_address =~ ONION_RE + if ONION_RE =~ onion_address self.onion = onion_address usuarie = GitAuthor.new email: "tor@#{Site.domain}", name: 'Tor' From fd109d79c33b4ebb708d4e6132847bb31251719b Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 Mar 2023 17:31:35 -0300 Subject: [PATCH 181/699] feat: pedir consentimiento #12795 --- app/views/devise/registrations/new.haml | 16 ++++++++++++++++ config/locales/devise.views.en.yml | 19 +++++++++++++++++++ config/locales/devise.views.es.yml | 18 ++++++++++++++++++ 3 files changed, 53 insertions(+) diff --git a/app/views/devise/registrations/new.haml b/app/views/devise/registrations/new.haml index 21676556..eab4a870 100644 --- a/app/views/devise/registrations/new.haml +++ b/app/views/devise/registrations/new.haml @@ -39,6 +39,22 @@ min: @minimum_password_length, aria: { describedby: 'minimum-password-length' }, placeholder: t("#{password}_confirmation") + + - if params[:consent] + .form-group + - %i[privacy_policy_accepted terms_of_service_accepted code_of_conduct_accepted available_for_feedback_accepted].each do |field| + - required = t(".#{field}.required", default: '').present? + - id = "usuarie_#{field}" + - name = "usuarie[#{field}]" + - content = t(".#{field}.label") + = render 'bootstrap/custom_checkbox', id: id, name: name, content: content, required: required do + - href = t(".#{field}.href", default: '') + - help = t(".#{field}.help") + - if href.present? + = link_to help, href, target: '_blank', rel: 'noopener' + - else + = help + .actions = f.submit t('.sign_up'), class: 'btn btn-lg btn-block' diff --git a/config/locales/devise.views.en.yml b/config/locales/devise.views.en.yml index fd041b33..53a3f16e 100644 --- a/config/locales/devise.views.en.yml +++ b/config/locales/devise.views.en.yml @@ -104,6 +104,25 @@ en: new: sign_up: Sign up help: We only ask for an e-mail address and a password. The password is safely stored, no one else besides you knows it! You'll also receive an e-mail to confirm your account. + privacy_policy_accepted: + label: "I know about Sutty's privacy policy" + help: "Read privacy policy" + href: "https://sutty.nl/en/privacy-policy/" + required: true + terms_of_service_accepted: + label: "My sites won't promote hate towards minorities" + help: "Read terms of service" + href: "https://sutty.nl/en/terms-of-service/" + required: true + code_of_conduct_accepted: + label: "My sites are inclusive spaces" + help: "Read codes for sharing" + href: "https://sutty.nl/en/code-of-conduct/" + required: true + available_for_feedback_accepted: + label: "I'm available to provide feedback" + help: "We may contact you occasionaly" + required: false signed_up: Welcome! You have signed up successfully. signed_up_but_inactive: You have signed up successfully. However, we could not sign you in because your account is not yet activated. signed_up_but_locked: You have signed up successfully. However, we could not sign you in because your account is locked. diff --git a/config/locales/devise.views.es.yml b/config/locales/devise.views.es.yml index 73166afc..6ad7628c 100644 --- a/config/locales/devise.views.es.yml +++ b/config/locales/devise.views.es.yml @@ -104,6 +104,24 @@ es: new: sign_up: Registrarme help: Para registrarte solo pedimos una dirección de correo y una contraseña. La contraseña se almacena de forma segura, ¡nadie más que vos la sabe! Recibirás un correo de confirmación de cuenta. + privacy_policy_accepted: + label: "Conozco la política de privacidad de Sutty" + help: "Leer política de privacidad" + href: "https://sutty.nl/politica-de-privacidad/" + required: "true" + terms_of_service_accepted: + label: "Mis sitios no promueven el odio a minorías" + help: "Leer términos de servicio" + href: "https://sutty.nl/terminos-de-servicio/" + required: "true" + code_of_conduct_accepted: + label: "Mis sitios son espacios inclusivos" + help: "Leer códigos para compartir" + href: "https://sutty.nl/codigo-de-convivencia/" + required: "true" + available_for_feedback_accepted: + label: "Estoy disponible para ofrecer retroalimentación" + help: "Te contactaremos ocasionalmente" signed_up: Bienvenide. Tu cuenta fue creada. signed_up_but_inactive: Tu cuenta ha sido creada correctamente. Sin embargo, no hemos podido iniciar la sesión porque tu cuenta aún no está activada. signed_up_but_locked: Tu cuenta ha sido creada correctamente. Sin embargo, no hemos podido iniciar la sesión porque que tu cuenta está bloqueada. From 75a92108f2da068d2fcc2805428814b3af8824f3 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 Mar 2023 17:38:28 -0300 Subject: [PATCH 182/699] fixup! feat: pedir consentimiento #12795 --- app/views/bootstrap/_custom_checkbox.haml | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 app/views/bootstrap/_custom_checkbox.haml diff --git a/app/views/bootstrap/_custom_checkbox.haml b/app/views/bootstrap/_custom_checkbox.haml new file mode 100644 index 00000000..339c05d2 --- /dev/null +++ b/app/views/bootstrap/_custom_checkbox.haml @@ -0,0 +1,6 @@ +- help_id = "#{id}-help" + +.custom-control.custom-checkbox + %input.custom-control-input{ id: id, type: 'checkbox', name: name, value: value, required: required } + %label.custom-control-label{ for: id, aria: { describedby: help_id } }= content + %small.form-text.text-muted{ id: help_id }= yield From 221bab97dcda938cb585456cb803aa95b78f8ff7 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 Mar 2023 17:39:17 -0300 Subject: [PATCH 183/699] fixup! fixup! feat: pedir consentimiento #12795 --- app/views/devise/registrations/new.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/devise/registrations/new.haml b/app/views/devise/registrations/new.haml index eab4a870..de8879da 100644 --- a/app/views/devise/registrations/new.haml +++ b/app/views/devise/registrations/new.haml @@ -47,7 +47,7 @@ - id = "usuarie_#{field}" - name = "usuarie[#{field}]" - content = t(".#{field}.label") - = render 'bootstrap/custom_checkbox', id: id, name: name, content: content, required: required do + = render 'bootstrap/custom_checkbox', id: id, name: name, content: content, required: required, value: "1" do - href = t(".#{field}.href", default: '') - help = t(".#{field}.help") - if href.present? From 1444b57161550b1594591a60f337f8e4f0c33735 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 Mar 2023 17:55:46 -0300 Subject: [PATCH 184/699] fixup! fixup! fixup! feat: pedir consentimiento #12795 --- app/views/devise/registrations/new.haml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/app/views/devise/registrations/new.haml b/app/views/devise/registrations/new.haml index de8879da..896fe45c 100644 --- a/app/views/devise/registrations/new.haml +++ b/app/views/devise/registrations/new.haml @@ -2,7 +2,7 @@ - 'black-bg' .row.align-items-center.justify-content-center.full-height - .col-md-5.align-self-center + .col-md-6.align-self-center %h2= t('.sign_up') %p= t('.help') @@ -47,13 +47,13 @@ - id = "usuarie_#{field}" - name = "usuarie[#{field}]" - content = t(".#{field}.label") + - href = t(".#{field}.href", default: '') + - help_content = t(".#{field}.help") = render 'bootstrap/custom_checkbox', id: id, name: name, content: content, required: required, value: "1" do - - href = t(".#{field}.href", default: '') - - help = t(".#{field}.help") - if href.present? - = link_to help, href, target: '_blank', rel: 'noopener' + = link_to help_content, href, target: '_blank', rel: 'noopener' - else - = help + = help_content .actions = f.submit t('.sign_up'), From 05be2bb51b4e9600c1180755cbe140a6c6830104 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 Mar 2023 18:18:53 -0300 Subject: [PATCH 185/699] feat: almacenar los campos --- app/controllers/application_controller.rb | 1 + app/models/usuarie.rb | 2 ++ app/views/devise/registrations/new.haml | 2 +- db/migrate/20230328200129_add_consent_to_usuaries.rb | 12 ++++++++++++ 4 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 db/migrate/20230328200129_add_consent_to_usuaries.rb diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index e80c279d..b6c1a4a8 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -84,6 +84,7 @@ class ApplicationController < ActionController::Base protected def configure_permitted_parameters + devise_parameter_sanitizer.permit(:sign_up, keys: Usuarie::CONSENT_FIELDS) devise_parameter_sanitizer.permit(:account_update, keys: %i[lang]) end diff --git a/app/models/usuarie.rb b/app/models/usuarie.rb index c87d82f9..83c89272 100644 --- a/app/models/usuarie.rb +++ b/app/models/usuarie.rb @@ -2,6 +2,8 @@ # Usuarie de la plataforma class Usuarie < ApplicationRecord + include Usuarie::Consent + devise :invitable, :database_authenticatable, :recoverable, :rememberable, :validatable, :confirmable, :lockable, :registerable diff --git a/app/views/devise/registrations/new.haml b/app/views/devise/registrations/new.haml index 896fe45c..78fed394 100644 --- a/app/views/devise/registrations/new.haml +++ b/app/views/devise/registrations/new.haml @@ -42,7 +42,7 @@ - if params[:consent] .form-group - - %i[privacy_policy_accepted terms_of_service_accepted code_of_conduct_accepted available_for_feedback_accepted].each do |field| + - Usuarie::CONSENT_FIELDS.each do |field| - required = t(".#{field}.required", default: '').present? - id = "usuarie_#{field}" - name = "usuarie[#{field}]" diff --git a/db/migrate/20230328200129_add_consent_to_usuaries.rb b/db/migrate/20230328200129_add_consent_to_usuaries.rb new file mode 100644 index 00000000..1e85864d --- /dev/null +++ b/db/migrate/20230328200129_add_consent_to_usuaries.rb @@ -0,0 +1,12 @@ +# frozen_string_literal: true + +# Agrega consentimientos a les usuaries. No usamos un loop de +# Usuarie::CONSENT_FIELDS porque quizás agreguemos campos luego. +class AddConsentToUsuaries < ActiveRecord::Migration[6.1] + def change + add_column :usuaries, :privacy_policy_accepted_at, :datetime + add_column :usuaries, :terms_of_service_accepted_at, :datetime + add_column :usuaries, :code_of_conduct_accepted_at, :datetime + add_column :usuaries, :available_for_feedback_accepted_at, :datetime + end +end From 33859946c27ac17301543c25e381e341a1f620e0 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 Mar 2023 18:19:19 -0300 Subject: [PATCH 186/699] fixup! fixup! fixup! fixup! feat: pedir consentimiento #12795 --- app/views/bootstrap/_custom_checkbox.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/bootstrap/_custom_checkbox.haml b/app/views/bootstrap/_custom_checkbox.haml index 339c05d2..0c3ff3a6 100644 --- a/app/views/bootstrap/_custom_checkbox.haml +++ b/app/views/bootstrap/_custom_checkbox.haml @@ -1,4 +1,4 @@ -- help_id = "#{id}-help" +- help_id = "#{id}_help" .custom-control.custom-checkbox %input.custom-control-input{ id: id, type: 'checkbox', name: name, value: value, required: required } From 1fc4797c4f3f8e8e0b1751f55ca7e8f312777ce6 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 Mar 2023 18:21:55 -0300 Subject: [PATCH 187/699] fixup! feat: almacenar los campos --- app/models/concerns/usuarie/consent.rb | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 app/models/concerns/usuarie/consent.rb diff --git a/app/models/concerns/usuarie/consent.rb b/app/models/concerns/usuarie/consent.rb new file mode 100644 index 00000000..6d9b5051 --- /dev/null +++ b/app/models/concerns/usuarie/consent.rb @@ -0,0 +1,26 @@ +# frozen_string_literal: true + +class Usuarie + # Gestiona los campos de consentimiento + module Consent + extend ActiveSupport::Concern + + included do + CONSENT_FIELDS = %i[privacy_policy_accepted terms_of_service_accepted code_of_conduct_accepted available_for_feedback_accepted] + + CONSENT_FIELDS.each do |field| + attr_accessor field + end + + before_save :update_consent_fields! + + private + + def update_consent_fields! + CONSENT_FIELDS.each do |field| + send(:"#{field}_at=", Time.now) if send(:field).present? + end + end + end + end +end From d2136380d5e678439de216e08122660500b3062f Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 Mar 2023 18:28:31 -0300 Subject: [PATCH 188/699] fixup! fixup! feat: almacenar los campos --- app/models/concerns/usuarie/consent.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/models/concerns/usuarie/consent.rb b/app/models/concerns/usuarie/consent.rb index 6d9b5051..14e67fbc 100644 --- a/app/models/concerns/usuarie/consent.rb +++ b/app/models/concerns/usuarie/consent.rb @@ -9,7 +9,7 @@ class Usuarie CONSENT_FIELDS = %i[privacy_policy_accepted terms_of_service_accepted code_of_conduct_accepted available_for_feedback_accepted] CONSENT_FIELDS.each do |field| - attr_accessor field + attribute field, :boolean end before_save :update_consent_fields! @@ -18,7 +18,7 @@ class Usuarie def update_consent_fields! CONSENT_FIELDS.each do |field| - send(:"#{field}_at=", Time.now) if send(:field).present? + send(:"#{field}_at=", Time.now) if send(field).present? end end end From 7091d79ff92f2bb57affdf57ea6a6c536702bae4 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 Mar 2023 18:33:19 -0300 Subject: [PATCH 189/699] =?UTF-8?q?BREAKING=20CHANGE:=20eliminar=20campo?= =?UTF-8?q?=20que=20no=20se=20us=C3=B3=20nunca?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...remove_acepta_politicas_de_privacidad_from_usuaries.rb | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 db/migrate/20230328213242_remove_acepta_politicas_de_privacidad_from_usuaries.rb diff --git a/db/migrate/20230328213242_remove_acepta_politicas_de_privacidad_from_usuaries.rb b/db/migrate/20230328213242_remove_acepta_politicas_de_privacidad_from_usuaries.rb new file mode 100644 index 00000000..7ca562bf --- /dev/null +++ b/db/migrate/20230328213242_remove_acepta_politicas_de_privacidad_from_usuaries.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +# Elimina un campo que nunca se usó +class RemoveAceptaPoliticasDePrivacidadFromUsuaries < ActiveRecord::Migration[6.1] + def change + remove_column :usuaries, :acepta_politicas_de_privacidad, :boolean, default: false + end +end From 269efbd44223a3c416dfeaa2836f041fbbb3408b Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 Mar 2023 19:48:20 -0300 Subject: [PATCH 190/699] chore: force ci build --- app/assets/stylesheets/application.scss | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index dd91c10a..0fb3f602 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -555,3 +555,5 @@ $bezier: cubic-bezier(0.75, 0, 0.25, 1); } } } + +// force ci From 18261edd3d9b7c7924a3d7a4cca53c7f2f03ddfe Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Tue, 28 Mar 2023 22:56:33 +0000 Subject: [PATCH 191/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- ...f17b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css | 3 --- ...b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css.gz | 3 --- ...37304832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css | 3 +++ ...04832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css.gz | 3 +++ 5 files changed, 7 insertions(+), 7 deletions(-) delete mode 100644 public/assets/application-50dc9093cf17b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css delete mode 100644 public/assets/application-50dc9093cf17b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css.gz create mode 100644 public/assets/application-f7b1d770237304832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css create mode 100644 public/assets/application-f7b1d770237304832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 5ebba6b1..c5d3418a 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:adb8deb87386f25aca09d49aa32d43bb3e3a22e9c53e7bac866cefae449a8d6b +oid sha256:07551a04d0a083c8eff6f74ee8360ff12cd36a7407623f2ecd02926b801b2811 size 13524 diff --git a/public/assets/application-50dc9093cf17b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css b/public/assets/application-50dc9093cf17b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css deleted file mode 100644 index f55680e6..00000000 --- a/public/assets/application-50dc9093cf17b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bf9d1c7c5cee2c16385a24dad42902d5a9a95211c118a024010da6b48f0fa70d -size 231397 diff --git a/public/assets/application-50dc9093cf17b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css.gz b/public/assets/application-50dc9093cf17b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css.gz deleted file mode 100644 index 360356e5..00000000 --- a/public/assets/application-50dc9093cf17b943546bc85aa5ed73aba27a41cad2d2405074879343b416b3a1.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9438fe34048f198e017c22563eb76dd8afb2e0029b3c75c0b371af573030beec -size 32110 diff --git a/public/assets/application-f7b1d770237304832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css b/public/assets/application-f7b1d770237304832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css new file mode 100644 index 00000000..44c21bce --- /dev/null +++ b/public/assets/application-f7b1d770237304832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01dd6c8846d74cb7808f6dbf52d8493fd5645d72c75202bcc372105146c56446 +size 231902 diff --git a/public/assets/application-f7b1d770237304832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css.gz b/public/assets/application-f7b1d770237304832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css.gz new file mode 100644 index 00000000..ee668d14 --- /dev/null +++ b/public/assets/application-f7b1d770237304832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43d0857b4a02acfbd192a3b44551446325c390ddbaf3bf504298cb712572ecf1 +size 32208 From 5857e9c1cd80b1cb7c0d0fd5d5589b884cfd5a69 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 29 Mar 2023 14:57:30 -0300 Subject: [PATCH 192/699] feat: realizar la limpieza en segundo plano --- app/jobs/cleanup_job.rb | 8 ++++++++ lib/tasks/cleanup.rake | 4 +--- 2 files changed, 9 insertions(+), 3 deletions(-) create mode 100644 app/jobs/cleanup_job.rb diff --git a/app/jobs/cleanup_job.rb b/app/jobs/cleanup_job.rb new file mode 100644 index 00000000..13053cb0 --- /dev/null +++ b/app/jobs/cleanup_job.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +# Realiza tareas de limpieza en segundo plano +class CleanupJob < ApplicationJob + def perform(before = nil) + CleanupService.new(before: before).cleanup_everything! + end +end diff --git a/lib/tasks/cleanup.rake b/lib/tasks/cleanup.rake index e14693bc..1c52abaf 100644 --- a/lib/tasks/cleanup.rake +++ b/lib/tasks/cleanup.rake @@ -4,8 +4,6 @@ namespace :cleanup do desc 'Cleanup sites' task everything: :environment do before = ENV.fetch('BEFORE', '30').to_i.days.ago - service = CleanupService.new(before: before) - - service.cleanup_everything! + CleanupJob.perform_later(before) end end From ee461543307ba6cae84fd72374cbdf3eaf1e7481 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 29 Mar 2023 15:06:26 -0300 Subject: [PATCH 193/699] =?UTF-8?q?feat:=20informar=20qu=C3=A9=20se=20est?= =?UTF-8?q?=C3=A1=20haciendo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/services/cleanup_service.rb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/services/cleanup_service.rb b/app/services/cleanup_service.rb index ad87cf9a..01b42d9e 100644 --- a/app/services/cleanup_service.rb +++ b/app/services/cleanup_service.rb @@ -26,6 +26,8 @@ class CleanupService Site.where('updated_at < ?', before).find_each do |site| next unless File.directory? site.path + Rails.logger.info "Limpiando dependencias, archivos temporales y repositorio git de #{site.name}" + site.deploys.find_each(&:cleanup!) site.repository.gc @@ -40,6 +42,8 @@ class CleanupService Site.where('updated_at >= ?', before).find_each do |site| next unless File.directory? site.path + Rails.logger.info "Limpiando repositorio git de #{site.name}" + site.repository.gc site.touch end From 7f263c1557ee88f0a2bd9516d23ec56dd93fe4a6 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 29 Mar 2023 15:06:46 -0300 Subject: [PATCH 194/699] =?UTF-8?q?fix:=20obtener=20los=20sitios=20ordenad?= =?UTF-8?q?os=20para=20ir=20actualiz=C3=A1ndolos=20en=20orden?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/services/cleanup_service.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/services/cleanup_service.rb b/app/services/cleanup_service.rb index 01b42d9e..b0792159 100644 --- a/app/services/cleanup_service.rb +++ b/app/services/cleanup_service.rb @@ -23,7 +23,7 @@ class CleanupService # # @return [nil] def cleanup_older_sites! - Site.where('updated_at < ?', before).find_each do |site| + Site.where('updated_at < ?', before).order(updated_at: :desc).find_each do |site| next unless File.directory? site.path Rails.logger.info "Limpiando dependencias, archivos temporales y repositorio git de #{site.name}" @@ -39,7 +39,7 @@ class CleanupService # # @return [nil] def cleanup_newer_sites! - Site.where('updated_at >= ?', before).find_each do |site| + Site.where('updated_at >= ?', before).order(updated_at: :desc).find_each do |site| next unless File.directory? site.path Rails.logger.info "Limpiando repositorio git de #{site.name}" From 63e55f16afea7c68d240b443a7c243c1c61d8eaf Mon Sep 17 00:00:00 2001 From: f Date: Wed, 29 Mar 2023 15:10:53 -0300 Subject: [PATCH 195/699] =?UTF-8?q?fix:=20detectar=20cu=C3=A1ndo=20estamos?= =?UTF-8?q?=20en=20hainish?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Gemfile | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Gemfile b/Gemfile index f3799638..7a1a2936 100644 --- a/Gemfile +++ b/Gemfile @@ -1,6 +1,9 @@ # frozen_string_literal: true -puts 'Usa haini.sh para generar un entorno de trabajo reproducible' +if ENV['RAILS_ENV'] != 'production' && ENV['HAIN_ENV'].nil? + puts 'Usa haini.sh para generar un entorno de trabajo reproducible' +end + source 'https://gems.sutty.nl' ruby '~> 2.7' From 28c51cab0108284b1b9c5af28ac47f575066a4a4 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 29 Mar 2023 15:12:10 -0300 Subject: [PATCH 196/699] feat: hacer limpieza de emergencia #12854 --- Procfile | 1 + lib/tasks/cleanup.rake | 5 ++--- monit.conf | 4 ++++ 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/Procfile b/Procfile index 45fe1df7..e7f4ebb6 100644 --- a/Procfile +++ b/Procfile @@ -1,2 +1,3 @@ cleanup: bundle exec rake cleanup:everything stats: bundle exec rake stats:process_all +emergency_cleanup: bundle exec rake cleanup:everything[7] diff --git a/lib/tasks/cleanup.rake b/lib/tasks/cleanup.rake index 1c52abaf..6ea48c0d 100644 --- a/lib/tasks/cleanup.rake +++ b/lib/tasks/cleanup.rake @@ -2,8 +2,7 @@ namespace :cleanup do desc 'Cleanup sites' - task everything: :environment do - before = ENV.fetch('BEFORE', '30').to_i.days.ago - CleanupJob.perform_later(before) + task everything: :environment do |_, args| + CleanupJob.perform_later((args.extras.first || 30).to_i.days.ago) end end diff --git a/monit.conf b/monit.conf index 39f45d6d..139a401d 100644 --- a/monit.conf +++ b/monit.conf @@ -13,3 +13,7 @@ check program stats with path "/usr/bin/foreman run -f /srv/Procfile -d /srv stats" as uid "rails" gid "www-data" every "0 1 * * *" if status != 0 then alert + +check filesystem root with path / + if space usage > 80% for 5 times within 15 cycles then alert + if space usage > 90% for 5 cycles then exec "/usr/bin/foreman run -f /srv/Procfile -d /srv emergency_cleanup" as uid "rails" gid "www-data" From 1d03583b2c2ff6cea8a1b70f72ebb9beab464a8c Mon Sep 17 00:00:00 2001 From: f Date: Wed, 29 Mar 2023 15:26:23 -0300 Subject: [PATCH 197/699] fixup! feat: hacer limpieza de emergencia #12854 --- Procfile | 2 +- lib/tasks/cleanup.rake | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/Procfile b/Procfile index e7f4ebb6..508a93c6 100644 --- a/Procfile +++ b/Procfile @@ -1,3 +1,3 @@ cleanup: bundle exec rake cleanup:everything stats: bundle exec rake stats:process_all -emergency_cleanup: bundle exec rake cleanup:everything[7] +emergency_cleanup: bundle exec rake cleanup:everything BEFORE=7 diff --git a/lib/tasks/cleanup.rake b/lib/tasks/cleanup.rake index 6ea48c0d..20044871 100644 --- a/lib/tasks/cleanup.rake +++ b/lib/tasks/cleanup.rake @@ -3,6 +3,8 @@ namespace :cleanup do desc 'Cleanup sites' task everything: :environment do |_, args| - CleanupJob.perform_later((args.extras.first || 30).to_i.days.ago) + before = ENV.fetch('BEFORE', '30').to_i.days.ago + + CleanupJob.perform_later(before) end end From 169682c2dbeec54cf8bef985899dfb0c12f396c0 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 29 Mar 2023 15:50:45 -0300 Subject: [PATCH 198/699] =?UTF-8?q?fix:=20mejorar=20la=20redacci=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/locales/devise.views.en.yml | 6 +++--- config/locales/devise.views.es.yml | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/config/locales/devise.views.en.yml b/config/locales/devise.views.en.yml index 53a3f16e..a5998e6e 100644 --- a/config/locales/devise.views.en.yml +++ b/config/locales/devise.views.en.yml @@ -105,17 +105,17 @@ en: sign_up: Sign up help: We only ask for an e-mail address and a password. The password is safely stored, no one else besides you knows it! You'll also receive an e-mail to confirm your account. privacy_policy_accepted: - label: "I know about Sutty's privacy policy" + label: "I understand and accept the privacy policy" help: "Read privacy policy" href: "https://sutty.nl/en/privacy-policy/" required: true terms_of_service_accepted: - label: "My sites won't promote hate towards minorities" + label: "My sites won't promote hate speech" help: "Read terms of service" href: "https://sutty.nl/en/terms-of-service/" required: true code_of_conduct_accepted: - label: "My sites are inclusive spaces" + label: "I want a more inclusive Internet" help: "Read codes for sharing" href: "https://sutty.nl/en/code-of-conduct/" required: true diff --git a/config/locales/devise.views.es.yml b/config/locales/devise.views.es.yml index 6ad7628c..f755336c 100644 --- a/config/locales/devise.views.es.yml +++ b/config/locales/devise.views.es.yml @@ -105,17 +105,17 @@ es: sign_up: Registrarme help: Para registrarte solo pedimos una dirección de correo y una contraseña. La contraseña se almacena de forma segura, ¡nadie más que vos la sabe! Recibirás un correo de confirmación de cuenta. privacy_policy_accepted: - label: "Conozco la política de privacidad de Sutty" + label: "Comprendo y acepto la política de privacidad" help: "Leer política de privacidad" href: "https://sutty.nl/politica-de-privacidad/" required: "true" terms_of_service_accepted: - label: "Mis sitios no promueven el odio a minorías" + label: "Mis sitios no promueven el discurso de odio" help: "Leer términos de servicio" href: "https://sutty.nl/terminos-de-servicio/" required: "true" code_of_conduct_accepted: - label: "Mis sitios son espacios inclusivos" + label: "Quiero una Internet más inclusiva" help: "Leer códigos para compartir" href: "https://sutty.nl/codigo-de-convivencia/" required: "true" From 7246ba00f5e60fe82ad5e3b38afe7a259ca0d406 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 29 Mar 2023 15:51:10 -0300 Subject: [PATCH 199/699] fix: activarlo --- app/views/devise/registrations/new.haml | 27 ++++++++++++------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/app/views/devise/registrations/new.haml b/app/views/devise/registrations/new.haml index 78fed394..f72afff0 100644 --- a/app/views/devise/registrations/new.haml +++ b/app/views/devise/registrations/new.haml @@ -40,20 +40,19 @@ aria: { describedby: 'minimum-password-length' }, placeholder: t("#{password}_confirmation") - - if params[:consent] - .form-group - - Usuarie::CONSENT_FIELDS.each do |field| - - required = t(".#{field}.required", default: '').present? - - id = "usuarie_#{field}" - - name = "usuarie[#{field}]" - - content = t(".#{field}.label") - - href = t(".#{field}.href", default: '') - - help_content = t(".#{field}.help") - = render 'bootstrap/custom_checkbox', id: id, name: name, content: content, required: required, value: "1" do - - if href.present? - = link_to help_content, href, target: '_blank', rel: 'noopener' - - else - = help_content + .form-group + - Usuarie::CONSENT_FIELDS.each do |field| + - required = t(".#{field}.required", default: '').present? + - id = "usuarie_#{field}" + - name = "usuarie[#{field}]" + - content = t(".#{field}.label") + - href = t(".#{field}.href", default: '') + - help_content = t(".#{field}.help") + = render 'bootstrap/custom_checkbox', id: id, name: name, content: content, required: required, value: "1" do + - if href.present? + = link_to help_content, href, target: '_blank', rel: 'noopener' + - else + = help_content .actions = f.submit t('.sign_up'), From 6aa500ebee0ff65e251d8a13c91517f04c61e9dd Mon Sep 17 00:00:00 2001 From: Sutty Date: Wed, 29 Mar 2023 18:19:08 +0000 Subject: [PATCH 200/699] =?UTF-8?q?feat:=20actualizaci=C3=B3n=20de=20cuida?= =?UTF-8?q?dos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Gemfile | 2 +- Gemfile.lock | 273 ++++++++++++++++++++++++--------------------------- 2 files changed, 127 insertions(+), 148 deletions(-) diff --git a/Gemfile b/Gemfile index 556140dc..b58c5c70 100644 --- a/Gemfile +++ b/Gemfile @@ -15,7 +15,7 @@ gem 'i18n', '~> 1.8.0' # Bundle edge Rails instead: gem 'rails', github: 'rails/rails' gem 'rails', '~> 6.1.0' # Use Puma as the app server -gem 'puma' +gem 'puma', '~> 6.1.0' # Solo incluir las gemas cuando estemos en desarrollo o compilando los # assets. No es necesario instalarlas en producción. diff --git a/Gemfile.lock b/Gemfile.lock index cc29a3c3..ef0f87bb 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -27,60 +27,60 @@ GIT GEM remote: https://gems.sutty.nl/ specs: - actioncable (6.1.7) - actionpack (= 6.1.7) - activesupport (= 6.1.7) + actioncable (6.1.7.3) + actionpack (= 6.1.7.3) + activesupport (= 6.1.7.3) nio4r (~> 2.0) websocket-driver (>= 0.6.1) - actionmailbox (6.1.7) - actionpack (= 6.1.7) - activejob (= 6.1.7) - activerecord (= 6.1.7) - activestorage (= 6.1.7) - activesupport (= 6.1.7) + actionmailbox (6.1.7.3) + actionpack (= 6.1.7.3) + activejob (= 6.1.7.3) + activerecord (= 6.1.7.3) + activestorage (= 6.1.7.3) + activesupport (= 6.1.7.3) mail (>= 2.7.1) - actionmailer (6.1.7) - actionpack (= 6.1.7) - actionview (= 6.1.7) - activejob (= 6.1.7) - activesupport (= 6.1.7) + actionmailer (6.1.7.3) + actionpack (= 6.1.7.3) + actionview (= 6.1.7.3) + activejob (= 6.1.7.3) + activesupport (= 6.1.7.3) mail (~> 2.5, >= 2.5.4) rails-dom-testing (~> 2.0) - actionpack (6.1.7) - actionview (= 6.1.7) - activesupport (= 6.1.7) + actionpack (6.1.7.3) + actionview (= 6.1.7.3) + activesupport (= 6.1.7.3) rack (~> 2.0, >= 2.0.9) rack-test (>= 0.6.3) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.0, >= 1.2.0) - actiontext (6.1.7) - actionpack (= 6.1.7) - activerecord (= 6.1.7) - activestorage (= 6.1.7) - activesupport (= 6.1.7) + actiontext (6.1.7.3) + actionpack (= 6.1.7.3) + activerecord (= 6.1.7.3) + activestorage (= 6.1.7.3) + activesupport (= 6.1.7.3) nokogiri (>= 1.8.5) - actionview (6.1.7) - activesupport (= 6.1.7) + actionview (6.1.7.3) + activesupport (= 6.1.7.3) builder (~> 3.1) erubi (~> 1.4) rails-dom-testing (~> 2.0) rails-html-sanitizer (~> 1.1, >= 1.2.0) - activejob (6.1.7) - activesupport (= 6.1.7) + activejob (6.1.7.3) + activesupport (= 6.1.7.3) globalid (>= 0.3.6) - activemodel (6.1.7) - activesupport (= 6.1.7) - activerecord (6.1.7) - activemodel (= 6.1.7) - activesupport (= 6.1.7) - activestorage (6.1.7) - actionpack (= 6.1.7) - activejob (= 6.1.7) - activerecord (= 6.1.7) - activesupport (= 6.1.7) + activemodel (6.1.7.3) + activesupport (= 6.1.7.3) + activerecord (6.1.7.3) + activemodel (= 6.1.7.3) + activesupport (= 6.1.7.3) + activestorage (6.1.7.3) + actionpack (= 6.1.7.3) + activejob (= 6.1.7.3) + activerecord (= 6.1.7.3) + activesupport (= 6.1.7.3) marcel (~> 1.0) mini_mime (>= 1.1.0) - activesupport (6.1.7) + activesupport (6.1.7.3) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (>= 1.6, < 2) minitest (>= 5.1) @@ -89,22 +89,16 @@ GEM addressable (2.8.1) public_suffix (>= 2.0.2, < 6.0) ast (2.4.2) - autoprefixer-rails (10.4.7.0) - execjs (~> 2) bcrypt (3.1.18-x86_64-linux-musl) bcrypt_pbkdf (1.1.0-x86_64-linux-musl) - benchmark-ips (2.10.0) + benchmark-ips (2.12.0) bindex (0.8.1-x86_64-linux-musl) blazer (2.6.5) activerecord (>= 5) chartkick (>= 3.2) railties (>= 5) safely_block (>= 0.1.1) - bootstrap (4.6.2) - autoprefixer-rails (>= 9.1.0) - popper_js (>= 1.16.1, < 2) - sassc-rails (>= 2.0.0) - brakeman (5.4.0) + brakeman (5.4.1) builder (3.2.4) capybara (2.18.0) addressable @@ -113,16 +107,18 @@ GEM rack (>= 1.0.0) rack-test (>= 0.5.4) xpath (>= 2.0, < 4.0) - chartkick (4.2.1) + chartkick (5.0.1) climate_control (1.2.0) coderay (1.1.3) colorator (1.1.0) - commonmarker (0.21.2-x86_64-linux-musl) - ruby-enum (~> 0.5) + commonmarker (0.23.8-x86_64-linux-musl) + concurrent-ruby (1.2.2) + concurrent-ruby-ext (1.2.2-x86_64-linux-musl) + concurrent-ruby (= 1.2.2) crass (1.0.6) - database_cleaner (2.0.1) - database_cleaner-active_record (~> 2.0.0) - database_cleaner-active_record (2.0.1) + database_cleaner (2.0.2) + database_cleaner-active_record (>= 2, < 3) + database_cleaner-active_record (2.1.0) activerecord (>= 5.a) database_cleaner-core (~> 2.0.0) database_cleaner-core (2.0.1) @@ -139,15 +135,15 @@ GEM rake (> 10, < 14) ruby-statistics (>= 2.1) thor (>= 0.19, < 2) - devise (4.8.1) + devise (4.9.0) bcrypt (~> 3.0) orm_adapter (~> 0.1) railties (>= 4.1.0) responders warden (~> 1.2.3) - devise-i18n (1.10.2) - devise (>= 4.8.0) - devise_invitable (2.0.6) + devise-i18n (1.11.0) + devise (>= 4.9.0) + devise_invitable (2.0.7) actionmailer (>= 5.0) devise (>= 4.6) distributed-press-api-client (0.2.2) @@ -183,11 +179,11 @@ GEM dry-logic (>= 1.5, < 2) dry-types (>= 1.7, < 2) zeitwerk (~> 2.6) - dry-types (1.7.0) + dry-types (1.7.1) concurrent-ruby (~> 1.0) - dry-core (~> 1.0, < 2) - dry-inflector (~> 1.0, < 2) - dry-logic (>= 1.4, < 2) + dry-core (~> 1.0) + dry-inflector (~> 1.0) + dry-logic (~> 1.4) zeitwerk (~> 2.6) ed25519 (1.3.0-x86_64-linux-musl) em-websocket (0.5.3) @@ -199,7 +195,6 @@ GEM exception_notification (4.5.0) actionmailer (>= 5.2, < 8) activesupport (>= 5.2, < 8) - execjs (2.8.1) factory_bot (6.2.1) activesupport (>= 5.0.0) factory_bot_rails (6.2.0) @@ -214,9 +209,9 @@ GEM activerecord (>= 4.0.0) get_process_mem (0.2.7) ffi (~> 1.0) - globalid (1.0.0) + globalid (1.1.0) activesupport (>= 5.0) - groupdate (6.1.0) + groupdate (6.2.0) activesupport (>= 5.2) hairtrigger (1.0.0) activerecord (>= 6.0, < 8) @@ -228,7 +223,7 @@ GEM tilt haml-lint (0.999.999) haml_lint - haml_lint (0.43.0) + haml_lint (0.45.0) haml (>= 4.0, < 6.2) parallel (~> 1.10) rainbow @@ -258,7 +253,7 @@ GEM image_processing (1.12.2) mini_magick (>= 4.9.5, < 5) ruby-vips (>= 2.0.17, < 3) - inline_svg (1.8.0) + inline_svg (1.9.0) activesupport (>= 3.0) nokogiri (>= 1.6) jbuilder (2.11.5) @@ -283,7 +278,7 @@ GEM commonmarker (~> 0.22) jekyll-data (1.1.2) jekyll (>= 3.3, < 5.0.0) - jekyll-images (0.3.2) + jekyll-images (0.4.0) jekyll (~> 4) ruby-filemagic (~> 0.7) ruby-vips (~> 2) @@ -316,13 +311,13 @@ GEM addressable (~> 2.8) letter_opener (1.8.1) launchy (>= 2.2, < 3) - liquid (4.0.3) - listen (3.7.1) + liquid (4.0.4) + listen (3.8.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) loaf (0.10.0) railties (>= 3.2) - lockbox (1.1.1) + lockbox (1.2.0) lograge (0.12.0) actionpack (>= 4) activesupport (>= 4) @@ -337,88 +332,84 @@ GEM memory_profiler (1.0.1) mercenary (0.4.0) method_source (1.0.0) - mime-types (3.4.1) - mime-types-data (~> 3.2015) - mime-types-data (3.2022.0105) mini_histogram (0.3.1) mini_magick (4.12.0) mini_mime (1.1.2) mini_portile2 (2.8.1) - minitest (5.16.3) + minitest (5.18.0) mobility (1.2.9) i18n (>= 0.6.10, < 2) request_store (~> 1.0) multi_xml (0.6.0) - net-ssh (7.0.1) + net-ssh (7.1.0) netaddr (2.0.6) nio4r (2.5.8-x86_64-linux-musl) - nokogiri (1.13.10-x86_64-linux-musl) - mini_portile2 (~> 2.8.0) - racc (~> 1.4) njalla-api-client (0.1.0) dry-schema httparty (~> 0.18) + nokogiri (1.14.2-x86_64-linux-musl) + mini_portile2 (~> 2.8.0) + racc (~> 1.4) orm_adapter (0.5.0) pairing_heap (3.0.0) parallel (1.22.1) - parser (3.1.3.0) + parser (3.2.1.1) ast (~> 2.4.1) pathutil (0.16.2) forwardable-extended (~> 2.6) - pg (1.4.5-x86_64-linux-musl) + pg (1.4.6-x86_64-linux-musl) pg_search (2.3.6) activerecord (>= 5.2) activesupport (>= 5.2) - popper_js (1.16.1) - prometheus_exporter (2.0.6) + prometheus_exporter (2.0.8) webrick - pry (0.14.1) + pry (0.14.2) coderay (~> 1.1) method_source (~> 1.0) public_suffix (5.0.1) - puma (6.0.1-x86_64-linux-musl) + puma (6.1.1-x86_64-linux-musl) nio4r (~> 2.0) pundit (2.3.0) activesupport (>= 3.0.0) - racc (1.6.0-x86_64-linux-musl) que (2.2.0) - rack (2.2.3) - rack-cors (1.1.1) + racc (1.6.2-x86_64-linux-musl) + rack (2.2.6.4) + rack-cors (2.0.1) rack (>= 2.0.0) rack-mini-profiler (3.0.0) rack (>= 1.2.0) - rack-proxy (0.7.4) + rack-proxy (0.7.6) rack - rack-test (2.0.2) + rack-test (2.1.0) rack (>= 1.3) - rails (6.1.7) - actioncable (= 6.1.7) - actionmailbox (= 6.1.7) - actionmailer (= 6.1.7) - actionpack (= 6.1.7) - actiontext (= 6.1.7) - actionview (= 6.1.7) - activejob (= 6.1.7) - activemodel (= 6.1.7) - activerecord (= 6.1.7) - activestorage (= 6.1.7) - activesupport (= 6.1.7) + rails (6.1.7.3) + actioncable (= 6.1.7.3) + actionmailbox (= 6.1.7.3) + actionmailer (= 6.1.7.3) + actionpack (= 6.1.7.3) + actiontext (= 6.1.7.3) + actionview (= 6.1.7.3) + activejob (= 6.1.7.3) + activemodel (= 6.1.7.3) + activerecord (= 6.1.7.3) + activestorage (= 6.1.7.3) + activesupport (= 6.1.7.3) bundler (>= 1.15.0) - railties (= 6.1.7) + railties (= 6.1.7.3) sprockets-rails (>= 2.0.0) rails-dom-testing (2.0.3) activesupport (>= 4.2.0) nokogiri (>= 1.6) - rails-html-sanitizer (1.4.4) + rails-html-sanitizer (1.5.0) loofah (~> 2.19, >= 2.19.1) rails-i18n (7.0.6) i18n (>= 0.7, < 2) railties (>= 6.0.0, < 8) rails_warden (0.6.0) warden (>= 1.2.0) - railties (6.1.7) - actionpack (= 6.1.7) - activesupport (= 6.1.7) + railties (6.1.7.3) + actionpack (= 6.1.7.3) + activesupport (= 6.1.7.3) method_source rake (>= 12.2) thor (~> 1.0) @@ -427,7 +418,7 @@ GEM rb-fsevent (0.11.2) rb-inotify (0.10.1) ffi (~> 1.0) - redis (4.8.0) + redis (4.8.1) redis-actionpack (5.3.0) actionpack (>= 5, < 8) redis-rack (>= 2.1.0, < 3) @@ -442,64 +433,58 @@ GEM redis-actionpack (>= 5.0, < 6) redis-activesupport (>= 5.0, < 6) redis-store (>= 1.2, < 2) - redis-store (1.9.1) - redis (>= 4, < 5) - reek (6.1.3) + redis-store (1.9.2) + redis (>= 4, < 6) + reek (6.1.4) kwalify (~> 0.7.0) - parser (~> 3.1.0) + parser (~> 3.2.0) rainbow (>= 2.0, < 4.0) - regexp_parser (2.6.1) + regexp_parser (2.7.0) request_store (1.5.1) rack (>= 1.4) - responders (3.0.1) - actionpack (>= 5.0) - railties (>= 5.0) + responders (3.1.0) + actionpack (>= 5.2) + railties (>= 5.2) rexml (3.2.5) rgl (0.6.2) pairing_heap (>= 0.3.0) rexml (~> 3.2, >= 3.2.4) stream (~> 0.5.3) rouge (3.30.0) - rubocop (1.41.1) + rubocop (1.42.0) json (~> 2.3) parallel (~> 1.10) parser (>= 3.1.2.1) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 1.8, < 3.0) rexml (>= 3.2.5, < 4.0) - rubocop-ast (>= 1.23.0, < 2.0) + rubocop-ast (>= 1.24.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 1.4.0, < 3.0) - rubocop-ast (1.24.1) - parser (>= 3.1.1.0) - rubocop-rails (2.17.4) + rubocop-ast (1.28.0) + parser (>= 3.2.1.0) + rubocop-rails (2.18.0) activesupport (>= 4.2.0) rack (>= 1.1) rubocop (>= 1.33.0, < 2.0) ruby-filemagic (0.7.3-x86_64-linux-musl) - ruby-progressbar (1.11.0) + ruby-progressbar (1.13.0) ruby-statistics (3.0.1) ruby-vips (2.1.4) ffi (~> 1.12) ruby2ruby (2.5.0) ruby_parser (~> 3.1) sexp_processor (~> 4.6) - ruby_parser (3.19.2) + ruby_parser (3.20.0) sexp_processor (~> 4.16) rubyzip (2.3.2) - rugged (1.5.0.1-x86_64-linux-musl) + rugged (1.6.3-x86_64-linux-musl) safe_yaml (1.0.6) safely_block (0.3.0) errbase (>= 0.1.1) sassc (2.4.0-x86_64-linux-musl) ffi (~> 1.9) - sassc-rails (2.1.2) - railties (>= 4.0.0) - sassc (>= 2.0) - sprockets (> 3.0) - sprockets-rails - tilt - selenium-webdriver (4.7.1) + selenium-webdriver (4.8.6) rexml (~> 3.2, >= 3.2.5) rubyzip (>= 1.2.2, < 3.0) websocket (~> 1.0) @@ -508,7 +493,7 @@ GEM simpleidn (0.2.1) unf (~> 0.1.4) sourcemap (0.1.1) - spring (4.1.0) + spring (4.1.1) spring-watcher-listen (2.1.0) listen (>= 2.7, < 4.0) spring (>= 4) @@ -519,28 +504,25 @@ GEM actionpack (>= 5.2) activesupport (>= 5.2) sprockets (>= 3.0.0) - sqlite3 (1.4.2-x86_64-linux-musl) - stackprof (0.2.17-x86_64-linux-musl) - sutty-archives (2.5.4) - jekyll (>= 3.6, < 5.0) - sutty-liquid (0.7.4) + sqlite3 (1.6.2-x86_64-linux) + stackprof (0.2.24-x86_64-linux-musl) + stream (0.5.5) + sutty-liquid (0.11.8) fast_blank (~> 1.0) jekyll (~> 4) symbol-fstring (1.0.2-x86_64-linux-musl) sysexits (1.2.0) - temple (0.9.1) + temple (0.10.0) terminal-table (2.0.0) unicode-display_width (~> 1.1, >= 1.1.1) thor (1.2.1) - tilt (2.0.11) + tilt (2.1.0) timecop (0.9.6) turbolinks (5.2.1) turbolinks-source (~> 5.2) turbolinks-source (5.2.0) - tzinfo (2.0.5) + tzinfo (2.0.6) concurrent-ruby (~> 1.0) - uglifier (4.2.0) - execjs (>= 0.3.0, < 3) unf (0.1.4) unf_ext unf_ext (0.0.8.2-x86_64-linux-musl) @@ -555,19 +537,19 @@ GEM activemodel (>= 6.0.0) bindex (>= 0.4.0) railties (>= 6.0.0) - webpacker (5.4.3) + webpacker (5.4.4) activesupport (>= 5.2) rack-proxy (>= 0.6.1) railties (>= 5.2) semantic_range (>= 2.3.0) - webrick (1.7.0) + webrick (1.8.1) websocket (1.2.9) websocket-driver (0.7.5-x86_64-linux-musl) websocket-extensions (>= 0.1.0) websocket-extensions (0.1.5) xpath (3.2.0) nokogiri (~> 1.8) - zeitwerk (2.6.6) + zeitwerk (2.6.7) PLATFORMS x86_64-linux-musl @@ -576,7 +558,6 @@ DEPENDENCIES bcrypt (~> 3.1.7) bcrypt_pbkdf blazer - bootstrap (~> 4) brakeman capybara (~> 2.13) chartkick @@ -595,7 +576,7 @@ DEPENDENCIES exception_notification factory_bot_rails fast_blank - fast_jsonparser + fast_jsonparser (~> 0.5.0) flamegraph friendly_id hairtrigger @@ -630,7 +611,7 @@ DEPENDENCIES pg_search prometheus_exporter pry - puma + puma (~> 6.1.0) pundit que rack-cors @@ -647,7 +628,6 @@ DEPENDENCIES rubyzip rugged safe_yaml - sassc-rails selenium-webdriver sourcemap spring @@ -659,7 +639,6 @@ DEPENDENCIES terminal-table timecop turbolinks (~> 5) - uglifier (>= 1.3.0) validates_hostname web-console webpacker From b9c224d79b67771b1a8b6658ee8be46d881e5291 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 29 Mar 2023 17:08:29 -0300 Subject: [PATCH 201/699] chore: force ci --- app/assets/stylesheets/application.scss | 2 -- 1 file changed, 2 deletions(-) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 08cef9f2..e117a2dc 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -557,5 +557,3 @@ $bezier: cubic-bezier(0.75, 0, 0.25, 1); } } } - -// force ci From 752886b7d4debcd77a895934bc6fd936d2565b6b Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Wed, 29 Mar 2023 23:33:41 +0000 Subject: [PATCH 202/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 4 ++-- ...f8e82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css | 3 --- ...82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css.gz | 3 --- ...b7553e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css | 3 +++ ...53e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css.gz | 3 +++ ...fa2016142132ea36573395d45b4e5c5cf772ef1558462a46996967.css | 3 +++ ...016142132ea36573395d45b4e5c5cf772ef1558462a46996967.css.gz | 3 +++ ...34efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css | 3 +++ ...fdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css.gz | 3 +++ 9 files changed, 20 insertions(+), 8 deletions(-) delete mode 100644 public/assets/application-7a9f6a47d5f8e82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css delete mode 100644 public/assets/application-7a9f6a47d5f8e82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css.gz create mode 100644 public/assets/application-dd909f2708b7553e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css create mode 100644 public/assets/application-dd909f2708b7553e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css.gz create mode 100644 public/assets/blazer/application-de70452dc5fa2016142132ea36573395d45b4e5c5cf772ef1558462a46996967.css create mode 100644 public/assets/blazer/application-de70452dc5fa2016142132ea36573395d45b4e5c5cf772ef1558462a46996967.css.gz create mode 100644 public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css create mode 100644 public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index c5d3418a..af469aa6 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:07551a04d0a083c8eff6f74ee8360ff12cd36a7407623f2ecd02926b801b2811 -size 13524 +oid sha256:5153f1dcbec1852784abfa83f2dc6911ef29b2d3aa3ccd477221a5e01feb3366 +size 14146 diff --git a/public/assets/application-7a9f6a47d5f8e82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css b/public/assets/application-7a9f6a47d5f8e82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css deleted file mode 100644 index 97b58e4e..00000000 --- a/public/assets/application-7a9f6a47d5f8e82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:05fba25057e85979438fa88381f972a45595be6d2690b4d98650a70ba0064349 -size 231475 diff --git a/public/assets/application-7a9f6a47d5f8e82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css.gz b/public/assets/application-7a9f6a47d5f8e82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css.gz deleted file mode 100644 index 2789b229..00000000 --- a/public/assets/application-7a9f6a47d5f8e82917a4cc4336e055d77128c162f31d4008eb971adcbb8979cc.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a94b9ace358883aa1bd0e188263ce4eb68992278c8d1272f8098e8d3355c00d6 -size 32125 diff --git a/public/assets/application-dd909f2708b7553e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css b/public/assets/application-dd909f2708b7553e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css new file mode 100644 index 00000000..72667dc0 --- /dev/null +++ b/public/assets/application-dd909f2708b7553e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0a36d2e815f3d908374cbde6bad62d93e6073d4510d47a3b5dcb07ac7abcb48 +size 235309 diff --git a/public/assets/application-dd909f2708b7553e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css.gz b/public/assets/application-dd909f2708b7553e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css.gz new file mode 100644 index 00000000..5a8916d0 --- /dev/null +++ b/public/assets/application-dd909f2708b7553e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ecc40bfa2e781de0482a15729cba7229b103165e93f3725182075cd772f4fe2a +size 32692 diff --git a/public/assets/blazer/application-de70452dc5fa2016142132ea36573395d45b4e5c5cf772ef1558462a46996967.css b/public/assets/blazer/application-de70452dc5fa2016142132ea36573395d45b4e5c5cf772ef1558462a46996967.css new file mode 100644 index 00000000..6ec43dde --- /dev/null +++ b/public/assets/blazer/application-de70452dc5fa2016142132ea36573395d45b4e5c5cf772ef1558462a46996967.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea293694663cf946057fdb9573bac081112128fe87f2405f0fe668141ee37b2b +size 134244 diff --git a/public/assets/blazer/application-de70452dc5fa2016142132ea36573395d45b4e5c5cf772ef1558462a46996967.css.gz b/public/assets/blazer/application-de70452dc5fa2016142132ea36573395d45b4e5c5cf772ef1558462a46996967.css.gz new file mode 100644 index 00000000..0c0bec77 --- /dev/null +++ b/public/assets/blazer/application-de70452dc5fa2016142132ea36573395d45b4e5c5cf772ef1558462a46996967.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e421483e231aaa2f3fdb3a4711bcb95f1b4d72dca39e8d28600057bbd20dccfd +size 23302 diff --git a/public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css b/public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css new file mode 100644 index 00000000..16758e87 --- /dev/null +++ b/public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c30e9a9afbc33c17d773933cc2a0e07c0bfc7f39547bd304c7e0ce6cd459414 +size 2233 diff --git a/public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css.gz b/public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css.gz new file mode 100644 index 00000000..0848c162 --- /dev/null +++ b/public/assets/editor-d0d83345c634efdd987cfc6359297fec136984dd3bd5a2f6bcac2d58459a7aec.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f019c1480ea1ba1893c3328f835682f31252a907c872a9542065c19da75e717 +size 678 From 716e15eb2c0caa8a55160263db91a926fd984efc Mon Sep 17 00:00:00 2001 From: f Date: Thu, 30 Mar 2023 10:28:11 -0300 Subject: [PATCH 203/699] chore: force ci --- app/assets/stylesheets/application.scss | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 652d1ae0..1eabf730 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -557,3 +557,5 @@ $bezier: cubic-bezier(0.75, 0, 0.25, 1); } } } + +// force ci From 64cd6fb7242a84d3a148c0389a6ae7dcaea8e2f6 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Thu, 30 Mar 2023 13:38:49 +0000 Subject: [PATCH 204/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- ...4f70d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css | 3 --- ...0d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css.gz | 3 --- ...353e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css | 3 +++ ...e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css.gz | 3 +++ 5 files changed, 7 insertions(+), 7 deletions(-) delete mode 100644 public/assets/application-2f1fc0ce14f70d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css delete mode 100644 public/assets/application-2f1fc0ce14f70d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css.gz create mode 100644 public/assets/application-8b9d4eb76353e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css create mode 100644 public/assets/application-8b9d4eb76353e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index af469aa6..6083bb88 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5153f1dcbec1852784abfa83f2dc6911ef29b2d3aa3ccd477221a5e01feb3366 +oid sha256:a344d3e6a98f71c9534f82066f433d6a3fdf92d8d20264b6c62e6bc139bdfd5f size 14146 diff --git a/public/assets/application-2f1fc0ce14f70d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css b/public/assets/application-2f1fc0ce14f70d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css deleted file mode 100644 index eecfff61..00000000 --- a/public/assets/application-2f1fc0ce14f70d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b04c532f0da4f46f1bd3e5bb02fe2dcf62395cfec63619f6b8000e7ca9988b40 -size 231506 diff --git a/public/assets/application-2f1fc0ce14f70d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css.gz b/public/assets/application-2f1fc0ce14f70d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css.gz deleted file mode 100644 index 8be2b832..00000000 --- a/public/assets/application-2f1fc0ce14f70d18d29e498ce47fa9103d0994edf6d6a59bd5ac44ca040fad06.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d795f1ab8bfbc40b9f7557820c30dd4a7af955a7400def567798d692d3df6beb -size 32143 diff --git a/public/assets/application-8b9d4eb76353e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css b/public/assets/application-8b9d4eb76353e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css new file mode 100644 index 00000000..d319818b --- /dev/null +++ b/public/assets/application-8b9d4eb76353e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e70eca1332677d4d2188c516e354414d8d3a8bdf30b1dfa1f6b1419364dca6ae +size 235429 diff --git a/public/assets/application-8b9d4eb76353e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css.gz b/public/assets/application-8b9d4eb76353e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css.gz new file mode 100644 index 00000000..71165ca2 --- /dev/null +++ b/public/assets/application-8b9d4eb76353e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f155ffcb05bcde4d1aa4b5a946f73670bebb2f3bea0fadef89c8b4918985d08 +size 32691 From 1fbfe0704e6e8a2272921942cc7c3e854a960e8d Mon Sep 17 00:00:00 2001 From: f Date: Thu, 30 Mar 2023 14:45:49 -0300 Subject: [PATCH 205/699] =?UTF-8?q?fix:=20evitar=20m=C3=A9todos=20de=20pub?= =?UTF-8?q?licaci=C3=B3n=20duplicados=20#12276?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/sites_controller.rb | 2 -- app/services/site_service.rb | 1 + app/views/sites/_form.haml | 3 --- 3 files changed, 1 insertion(+), 5 deletions(-) diff --git a/app/controllers/sites_controller.rb b/app/controllers/sites_controller.rb index f0eff0dc..8d49fd8a 100644 --- a/app/controllers/sites_controller.rb +++ b/app/controllers/sites_controller.rb @@ -28,8 +28,6 @@ class SitesController < ApplicationController @site = Site.new authorize @site - - @site.deploys.build type: 'DeployLocal' end def create diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 0ecccba4..bb76c6ac 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -14,6 +14,7 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do self.site = Site.new params add_role temporal: false, rol: 'usuarie' + site.deploys.build type: 'DeployLocal' sync_nodes I18n.with_locale(usuarie.lang.to_sym || I18n.default_locale) do diff --git a/app/views/sites/_form.haml b/app/views/sites/_form.haml index 9a044c7f..7897d2ee 100644 --- a/app/views/sites/_form.haml +++ b/app/views/sites/_form.haml @@ -156,9 +156,6 @@ = f.fields_for :deploys do |deploy| = render "deploys/#{deploy.object.type.underscore}", deploy: deploy, site: site - - else - = f.fields_for :deploys do |deploy| - = deploy.hidden_field :type .form-group = f.submit submit, class: 'btn btn-lg btn-block' From 645e1703b7b9e17fc81defb2a27c0b7240c1fa4d Mon Sep 17 00:00:00 2001 From: f Date: Thu, 30 Mar 2023 14:53:34 -0300 Subject: [PATCH 206/699] feat: configurar la fuente de gemas del skel desde el panel --- app/models/deploy_local.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/models/deploy_local.rb b/app/models/deploy_local.rb index c031c7b9..bfde29f7 100644 --- a/app/models/deploy_local.rb +++ b/app/models/deploy_local.rb @@ -84,7 +84,8 @@ class DeployLocal < Deploy 'AIRBRAKE_PROJECT_KEY' => site.airbrake_api_key, 'JEKYLL_ENV' => Rails.env, 'LANG' => ENV['LANG'], - 'YARN_CACHE_FOLDER' => yarn_cache_dir + 'YARN_CACHE_FOLDER' => yarn_cache_dir, + 'GEMS_SOURCE' => ENV['GEMS_SOURCE'] }) end From fd9d68b3df712ab276d6863b3bd4f3a61a6621b9 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 31 Mar 2023 12:01:00 -0300 Subject: [PATCH 207/699] =?UTF-8?q?BREAKING=20CHANGE:=20usar=20la=20=C3=BA?= =?UTF-8?q?ltima=20instancia=20de=20Distributed=20Press?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/deploy_distributed_press.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/deploy_distributed_press.rb b/app/models/deploy_distributed_press.rb index a2e2e20a..64c66cfc 100644 --- a/app/models/deploy_distributed_press.rb +++ b/app/models/deploy_distributed_press.rb @@ -88,7 +88,7 @@ class DeployDistributedPress < Deploy # # @return [DistributedPressPublisher] def publisher - @publisher ||= DistributedPressPublisher.first + @publisher ||= DistributedPressPublisher.last end # El cliente para actualizar el sitio From d4f5bb60eea6afae230dc878bda083d757159eb7 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 31 Mar 2023 12:14:14 -0300 Subject: [PATCH 208/699] feat: indicarle a distributed press que elimine el sitio sutty/distributed-press-api-client#10 --- Gemfile | 2 +- app/models/deploy_distributed_press.rb | 11 ++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/Gemfile b/Gemfile index 9d1b6d67..2ff1c68c 100644 --- a/Gemfile +++ b/Gemfile @@ -39,7 +39,7 @@ gem 'commonmarker' gem 'devise' gem 'devise-i18n' gem 'devise_invitable' -gem 'distributed-press-api-client', '~> 0.2.2' +gem 'distributed-press-api-client', '~> 0.2.3' gem 'njalla-api-client' gem 'email_address', git: 'https://github.com/fauno/email_address', branch: 'i18n' gem 'exception_notification' diff --git a/app/models/deploy_distributed_press.rb b/app/models/deploy_distributed_press.rb index 64c66cfc..28ddebc0 100644 --- a/app/models/deploy_distributed_press.rb +++ b/app/models/deploy_distributed_press.rb @@ -16,6 +16,7 @@ class DeployDistributedPress < Deploy store :values, accessors: %i[hostname remote_site_id remote_info], coder: JSON before_create :create_remote_site!, :create_njalla_records! + before_destroy :delete_remote_site! DEPENDENCIES = %i[deploy_local] @@ -120,9 +121,9 @@ class DeployDistributedPress < Deploy self.remote_site_id = created_site[:id] self.remote_info = created_site.to_h + nil rescue DistributedPress::V1::Error => e ExceptionNotifier.notify_exception(e, data: { site: site.name }) - ensure nil end @@ -156,6 +157,14 @@ class DeployDistributedPress < Deploy nil end + def delete_remote_site! + site_client.destroy(publishing_site) + nil + rescue DistributedPress::V1::Error => e + ExceptionNotifier.notify_exception(e, data: { site: site.name }) + nil + end + # Actualizar registros en Njalla # # @return [Njalla::V1::Domain] From db67b9dbf3273e2221071bed50802fd95899443f Mon Sep 17 00:00:00 2001 From: f Date: Fri, 31 Mar 2023 13:35:42 -0300 Subject: [PATCH 209/699] feat: eliminar registros en njalla --- Gemfile | 2 +- Gemfile.lock | 2 +- app/models/deploy_distributed_press.rb | 10 +++++++++- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/Gemfile b/Gemfile index 2ff1c68c..b2472035 100644 --- a/Gemfile +++ b/Gemfile @@ -40,7 +40,7 @@ gem 'devise' gem 'devise-i18n' gem 'devise_invitable' gem 'distributed-press-api-client', '~> 0.2.3' -gem 'njalla-api-client' +gem 'njalla-api-client', '~> 0.2.0' gem 'email_address', git: 'https://github.com/fauno/email_address', branch: 'i18n' gem 'exception_notification' gem 'fast_blank' diff --git a/Gemfile.lock b/Gemfile.lock index c2c29531..c5e0af41 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -387,7 +387,7 @@ GEM nokogiri (1.12.5-x86_64-linux-musl) mini_portile2 (~> 2.6.1) racc (~> 1.4) - njalla-api-client (0.1.0) + njalla-api-client (0.2.0) dry-schema httparty (~> 0.18) orm_adapter (0.5.0) diff --git a/app/models/deploy_distributed_press.rb b/app/models/deploy_distributed_press.rb index 28ddebc0..3d101204 100644 --- a/app/models/deploy_distributed_press.rb +++ b/app/models/deploy_distributed_press.rb @@ -16,7 +16,7 @@ class DeployDistributedPress < Deploy store :values, accessors: %i[hostname remote_site_id remote_info], coder: JSON before_create :create_remote_site!, :create_njalla_records! - before_destroy :delete_remote_site! + before_destroy :delete_remote_site!, :delete_njalla_records! DEPENDENCIES = %i[deploy_local] @@ -165,6 +165,14 @@ class DeployDistributedPress < Deploy nil end + def delete_njalla_records! + %[a ns cname].each do |type| + next unless (id = remote_info.dig('njalla', type, 'id')) + + njalla.remove_record(id: id) + end + end + # Actualizar registros en Njalla # # @return [Njalla::V1::Domain] From 786aba5552e4c7f445c0911a628284dfdc2d5f01 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 31 Mar 2023 13:36:02 -0300 Subject: [PATCH 210/699] fixup! feat: indicarle a distributed press que elimine el sitio --- Gemfile.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile.lock b/Gemfile.lock index c5e0af41..67ce13e2 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -622,7 +622,7 @@ DEPENDENCIES devise devise-i18n devise_invitable - distributed-press-api-client (~> 0.2.2) + distributed-press-api-client (~> 0.2.3) dotenv-rails down ed25519 From 38a8ad1e1d4b8ff6d5d0bda6b5a8e8270e6acf22 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 31 Mar 2023 13:40:50 -0300 Subject: [PATCH 211/699] fixup! feat: indicarle a distributed press que elimine el sitio --- app/models/deploy_distributed_press.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/deploy_distributed_press.rb b/app/models/deploy_distributed_press.rb index 3d101204..5ae4bb43 100644 --- a/app/models/deploy_distributed_press.rb +++ b/app/models/deploy_distributed_press.rb @@ -158,7 +158,7 @@ class DeployDistributedPress < Deploy end def delete_remote_site! - site_client.destroy(publishing_site) + site_client.delete(publishing_site) nil rescue DistributedPress::V1::Error => e ExceptionNotifier.notify_exception(e, data: { site: site.name }) From 03a5742889d9c8597a717e94a7d360187f1a5ad4 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 31 Mar 2023 13:42:23 -0300 Subject: [PATCH 212/699] fixup! feat: eliminar registros en njalla --- app/models/deploy_distributed_press.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/deploy_distributed_press.rb b/app/models/deploy_distributed_press.rb index 5ae4bb43..99e42926 100644 --- a/app/models/deploy_distributed_press.rb +++ b/app/models/deploy_distributed_press.rb @@ -166,7 +166,7 @@ class DeployDistributedPress < Deploy end def delete_njalla_records! - %[a ns cname].each do |type| + %w[a ns cname].each do |type| next unless (id = remote_info.dig('njalla', type, 'id')) njalla.remove_record(id: id) From 7caa27102e9267ab50940e2d785235058fd16b22 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 31 Mar 2023 13:44:10 -0300 Subject: [PATCH 213/699] fixup! feat: eliminar registros en njalla --- app/models/deploy_distributed_press.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/models/deploy_distributed_press.rb b/app/models/deploy_distributed_press.rb index 99e42926..9f78ba28 100644 --- a/app/models/deploy_distributed_press.rb +++ b/app/models/deploy_distributed_press.rb @@ -167,9 +167,9 @@ class DeployDistributedPress < Deploy def delete_njalla_records! %w[a ns cname].each do |type| - next unless (id = remote_info.dig('njalla', type, 'id')) + next if (id = remote_info.dig('njalla', type, 'id')).blank? - njalla.remove_record(id: id) + njalla.remove_record(id: id.to_i) end end From 92ae942e7b2bca83d111c232acad3dbd0f35d89e Mon Sep 17 00:00:00 2001 From: f Date: Fri, 31 Mar 2023 13:58:10 -0300 Subject: [PATCH 214/699] fix: los registros en njalla no siempre son necesarios --- app/models/deploy_distributed_press.rb | 36 ++++++++++++++++++-------- 1 file changed, 25 insertions(+), 11 deletions(-) diff --git a/app/models/deploy_distributed_press.rb b/app/models/deploy_distributed_press.rb index 9f78ba28..b77dfe19 100644 --- a/app/models/deploy_distributed_press.rb +++ b/app/models/deploy_distributed_press.rb @@ -34,8 +34,12 @@ class DeployDistributedPress < Deploy create_njalla_records! save - if remote_site_id.blank? || remote_info['njalla'].blank? - raise DeployJob::DeployException, '' + if remote_site_id.blank? + raise DeployJob::DeployException, 'El sitio no se creó en Distributed Press' + end + + if create_njalla_records? && remote_info['njalla'].blank? + raise DeployJob::DeployException, 'No se pudieron crear los registros necesarios en Njalla' end site_client.tap do |c| @@ -129,17 +133,20 @@ class DeployDistributedPress < Deploy # Crea los registros en Njalla # + # XXX: Esto depende de nuestro DNS actual, cuando lo migremos hay + # que eliminarlo. + # # @return [nil] def create_njalla_records! - # XXX: Esto depende de nuestro DNS actual, cuando lo migremos hay - # que eliminarlo. - unless site.name.end_with? '.' - self.remote_info ||= {} - self.remote_info['njalla'] ||= {} - self.remote_info['njalla']['a'] ||= njalla.add_record(name: site.name, type: 'CNAME', content: "#{Site.domain}.").to_h - self.remote_info['njalla']['cname'] ||= njalla.add_record(name: "www.#{site.name}", type: 'CNAME', content: "#{Site.domain}.").to_h - self.remote_info['njalla']['ns'] ||= njalla.add_record(name: "_dnslink.#{site.name}", type: 'NS', content: "#{publisher.hostname}.").to_h - end + return unless create_njalla_records? + + self.remote_info ||= {} + self.remote_info['njalla'] ||= {} + self.remote_info['njalla']['a'] ||= njalla.add_record(name: site.name, type: 'CNAME', content: "#{Site.domain}.").to_h + self.remote_info['njalla']['cname'] ||= njalla.add_record(name: "www.#{site.name}", type: 'CNAME', content: "#{Site.domain}.").to_h + self.remote_info['njalla']['ns'] ||= njalla.add_record(name: "_dnslink.#{site.name}", type: 'NS', content: "#{publisher.hostname}.").to_h + + nil rescue HTTParty::Error => e ExceptionNotifier.notify_exception(e, data: { site: site.name }) self.remote_info['njalla'] = nil @@ -166,6 +173,8 @@ class DeployDistributedPress < Deploy end def delete_njalla_records! + return unless create_njalla_records? + %w[a ns cname].each do |type| next if (id = remote_info.dig('njalla', type, 'id')).blank? @@ -184,4 +193,9 @@ class DeployDistributedPress < Deploy Njalla::V1::Domain.new(domain: Site.domain, client: client) end end + + # Detecta si tenemos que crear registros en Njalla + def create_njalla_records? + !site.name.end_with?('.') + end end From dba55a7cbe1738305f4b7fb69ce52c6d1d57ad87 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 31 Mar 2023 14:38:04 -0300 Subject: [PATCH 215/699] fix: no pisar las datos de njalla con los de distributed press --- app/models/deploy_distributed_press.rb | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/app/models/deploy_distributed_press.rb b/app/models/deploy_distributed_press.rb index b77dfe19..081ceeb5 100644 --- a/app/models/deploy_distributed_press.rb +++ b/app/models/deploy_distributed_press.rb @@ -38,7 +38,7 @@ class DeployDistributedPress < Deploy raise DeployJob::DeployException, 'El sitio no se creó en Distributed Press' end - if create_njalla_records? && remote_info['njalla'].blank? + if create_njalla_records? && remote_info[:njalla].blank? raise DeployJob::DeployException, 'No se pudieron crear los registros necesarios en Njalla' end @@ -52,7 +52,8 @@ class DeployDistributedPress < Deploy end end - update remote_info: c.show(publishing_site).to_h + self.remote_info[:distributed_press] = c.show(publishing_site).to_h + save status = c.publish(publishing_site, deploy_local.destination) @@ -77,7 +78,7 @@ class DeployDistributedPress < Deploy # Devuelve las URLs de todos los protocolos def urls - remote_info[:links].values.map do |protocol| + remote_info.dig(:distributed_press, :links).values.map do |protocol| [ protocol[:link], protocol[:gateway] ] end.flatten.compact.select do |link| link.include? '://' @@ -124,7 +125,8 @@ class DeployDistributedPress < Deploy created_site = site_client.create(create_site) self.remote_site_id = created_site[:id] - self.remote_info = created_site.to_h + self.remote_info ||= {} + self.remote_info[:distributed_press] = created_site.to_h nil rescue DistributedPress::V1::Error => e ExceptionNotifier.notify_exception(e, data: { site: site.name }) @@ -141,15 +143,15 @@ class DeployDistributedPress < Deploy return unless create_njalla_records? self.remote_info ||= {} - self.remote_info['njalla'] ||= {} - self.remote_info['njalla']['a'] ||= njalla.add_record(name: site.name, type: 'CNAME', content: "#{Site.domain}.").to_h - self.remote_info['njalla']['cname'] ||= njalla.add_record(name: "www.#{site.name}", type: 'CNAME', content: "#{Site.domain}.").to_h - self.remote_info['njalla']['ns'] ||= njalla.add_record(name: "_dnslink.#{site.name}", type: 'NS', content: "#{publisher.hostname}.").to_h + self.remote_info[:njalla] ||= {} + self.remote_info[:njalla][:a] ||= njalla.add_record(name: site.name, type: 'CNAME', content: "#{Site.domain}.").to_h + self.remote_info[:njalla][:cname] ||= njalla.add_record(name: "www.#{site.name}", type: 'CNAME', content: "#{Site.domain}.").to_h + self.remote_info[:njalla][:ns] ||= njalla.add_record(name: "_dnslink.#{site.name}", type: 'NS', content: "#{publisher.hostname}.").to_h nil rescue HTTParty::Error => e ExceptionNotifier.notify_exception(e, data: { site: site.name }) - self.remote_info['njalla'] = nil + self.remote_info.delete :njalla ensure nil end From 5dddc93736ce0c8414f4734b8936697545848799 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 31 Mar 2023 14:44:48 -0300 Subject: [PATCH 216/699] =?UTF-8?q?fix:=20obtener=20los=20links=20luego=20?= =?UTF-8?q?de=20la=20publicaci=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/deploy_distributed_press.rb | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/app/models/deploy_distributed_press.rb b/app/models/deploy_distributed_press.rb index 081ceeb5..d8fd3f61 100644 --- a/app/models/deploy_distributed_press.rb +++ b/app/models/deploy_distributed_press.rb @@ -52,11 +52,13 @@ class DeployDistributedPress < Deploy end end - self.remote_info[:distributed_press] = c.show(publishing_site).to_h - save - status = c.publish(publishing_site, deploy_local.destination) + if status + self.remote_info[:distributed_press] = c.show(publishing_site).to_h + save + end + publisher.logger.close stdout.join end From 05f2fbc749a699cc77e004f8a494212d7edae3e4 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 31 Mar 2023 14:49:17 -0300 Subject: [PATCH 217/699] feat: devolver las urls con protocolos --- app/models/deploy_distributed_press.rb | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/app/models/deploy_distributed_press.rb b/app/models/deploy_distributed_press.rb index d8fd3f61..32a3049e 100644 --- a/app/models/deploy_distributed_press.rb +++ b/app/models/deploy_distributed_press.rb @@ -80,6 +80,12 @@ class DeployDistributedPress < Deploy # Devuelve las URLs de todos los protocolos def urls + protocol_urls + gateway_urls + end + + private + + def gateway_urls remote_info.dig(:distributed_press, :links).values.map do |protocol| [ protocol[:link], protocol[:gateway] ] end.flatten.compact.select do |link| @@ -87,7 +93,13 @@ class DeployDistributedPress < Deploy end end - private + def protocol_urls + remote_info.dig(:distributed_press, :protocols).select do |_, enabled| + enabled + end.map do |protocol, _| + "#{protocol}://#{site.hostname}" + end + end # El cliente de la API # From 7b6b82c6c17833427dfc80b7d6a85d947decc994 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 31 Mar 2023 18:16:44 -0300 Subject: [PATCH 218/699] chore: force ci --- app/assets/stylesheets/application.scss | 2 -- 1 file changed, 2 deletions(-) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 1eabf730..652d1ae0 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -557,5 +557,3 @@ $bezier: cubic-bezier(0.75, 0, 0.25, 1); } } } - -// force ci From 76ef56afe73cedbc41a57f6b812262a5d25e0374 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 31 Mar 2023 18:30:44 -0300 Subject: [PATCH 219/699] chore: force ci --- .woodpecker.yml | 1 - app/assets/stylesheets/application.scss | 2 ++ 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.woodpecker.yml b/.woodpecker.yml index 1d760b52..18959633 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -46,7 +46,6 @@ pipeline: - "dotenv RAILS_ENV=production bundle exec rails webpacker:clobber" - "dotenv RAILS_ENV=production bundle exec rails assets:precompile" - "dotenv RAILS_ENV=production bundle exec rails assets:clean" - - "find public -type f -print0 | xargs -r0 brotli -k9f" - "git add public && git commit -m \"ci: assets [skip ci]\"" - "git pull upstream ${CI_COMMIT_BRANCH}" - "git push upstream ${CI_COMMIT_BRANCH}" diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 652d1ae0..1eabf730 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -557,3 +557,5 @@ $bezier: cubic-bezier(0.75, 0, 0.25, 1); } } } + +// force ci From 3bb8ffd30db40f25f69ebbcad5ac14a392c5e10c Mon Sep 17 00:00:00 2001 From: f Date: Fri, 31 Mar 2023 18:52:34 -0300 Subject: [PATCH 220/699] chore: force ci --- .woodpecker.yml | 1 - app/assets/stylesheets/application.scss | 2 -- 2 files changed, 3 deletions(-) diff --git a/.woodpecker.yml b/.woodpecker.yml index 18959633..10054163 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -47,7 +47,6 @@ pipeline: - "dotenv RAILS_ENV=production bundle exec rails assets:precompile" - "dotenv RAILS_ENV=production bundle exec rails assets:clean" - "git add public && git commit -m \"ci: assets [skip ci]\"" - - "git pull upstream ${CI_COMMIT_BRANCH}" - "git push upstream ${CI_COMMIT_BRANCH}" secrets: - "SSH_KEY" diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 1eabf730..652d1ae0 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -557,5 +557,3 @@ $bezier: cubic-bezier(0.75, 0, 0.25, 1); } } } - -// force ci From 284c1de3bec9c3af9f22a6421afffc91a8a856ee Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Fri, 31 Mar 2023 22:00:43 +0000 Subject: [PATCH 221/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/css/application-619c3ad0.css | 3 --- public/packs/css/application-619c3ad0.css.br | 3 --- public/packs/css/application-619c3ad0.css.gz | 3 --- public/packs/css/application-c4fb7ce1.css | 3 +++ public/packs/css/application-c4fb7ce1.css.br | 3 +++ public/packs/css/application-c4fb7ce1.css.gz | 3 +++ public/packs/js/application-2616234043725064e154.js | 3 --- public/packs/js/application-2616234043725064e154.js.br | 3 --- public/packs/js/application-2616234043725064e154.js.gz | 3 --- public/packs/js/application-2616234043725064e154.js.map | 3 --- public/packs/js/application-2616234043725064e154.js.map.br | 3 --- public/packs/js/application-2616234043725064e154.js.map.gz | 3 --- public/packs/js/application-df574869cd006337e299.js | 3 +++ ...SE.txt => application-df574869cd006337e299.js.LICENSE.txt} | 0 public/packs/js/application-df574869cd006337e299.js.br | 3 +++ public/packs/js/application-df574869cd006337e299.js.gz | 3 +++ public/packs/js/application-df574869cd006337e299.js.map | 3 +++ public/packs/js/application-df574869cd006337e299.js.map.br | 3 +++ public/packs/js/application-df574869cd006337e299.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 23 files changed, 33 insertions(+), 33 deletions(-) delete mode 100644 public/packs/css/application-619c3ad0.css delete mode 100644 public/packs/css/application-619c3ad0.css.br delete mode 100644 public/packs/css/application-619c3ad0.css.gz create mode 100644 public/packs/css/application-c4fb7ce1.css create mode 100644 public/packs/css/application-c4fb7ce1.css.br create mode 100644 public/packs/css/application-c4fb7ce1.css.gz delete mode 100644 public/packs/js/application-2616234043725064e154.js delete mode 100644 public/packs/js/application-2616234043725064e154.js.br delete mode 100644 public/packs/js/application-2616234043725064e154.js.gz delete mode 100644 public/packs/js/application-2616234043725064e154.js.map delete mode 100644 public/packs/js/application-2616234043725064e154.js.map.br delete mode 100644 public/packs/js/application-2616234043725064e154.js.map.gz create mode 100644 public/packs/js/application-df574869cd006337e299.js rename public/packs/js/{application-2616234043725064e154.js.LICENSE.txt => application-df574869cd006337e299.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-df574869cd006337e299.js.br create mode 100644 public/packs/js/application-df574869cd006337e299.js.gz create mode 100644 public/packs/js/application-df574869cd006337e299.js.map create mode 100644 public/packs/js/application-df574869cd006337e299.js.map.br create mode 100644 public/packs/js/application-df574869cd006337e299.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 6083bb88..d77904a0 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a344d3e6a98f71c9534f82066f433d6a3fdf92d8d20264b6c62e6bc139bdfd5f +oid sha256:3f8732addd37f94e45e068f41d00b84e7ce769c68d24a011f8787e41f769a296 size 14146 diff --git a/public/packs/css/application-619c3ad0.css b/public/packs/css/application-619c3ad0.css deleted file mode 100644 index 54cd0ac8..00000000 --- a/public/packs/css/application-619c3ad0.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fe7683e61b7a4a1b8f0895cd06d088eb49b4a7b85e2444da12321a0a40fd1a18 -size 48903 diff --git a/public/packs/css/application-619c3ad0.css.br b/public/packs/css/application-619c3ad0.css.br deleted file mode 100644 index c4d3a59f..00000000 --- a/public/packs/css/application-619c3ad0.css.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8d5b6d121c3e24e211b791380205a271fa51f6ed3fdf67deec12f82b8825a422 -size 9914 diff --git a/public/packs/css/application-619c3ad0.css.gz b/public/packs/css/application-619c3ad0.css.gz deleted file mode 100644 index 38641e0d..00000000 --- a/public/packs/css/application-619c3ad0.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3ca0db399534a2b63403422c1f0ba4257094392772081f51593260af93e85c25 -size 12238 diff --git a/public/packs/css/application-c4fb7ce1.css b/public/packs/css/application-c4fb7ce1.css new file mode 100644 index 00000000..8d0482e1 --- /dev/null +++ b/public/packs/css/application-c4fb7ce1.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:757e7d5c17dd75fc19aacf2d1b6cbce88b9aacb496e73740a7e3d2a44b01548f +size 48842 diff --git a/public/packs/css/application-c4fb7ce1.css.br b/public/packs/css/application-c4fb7ce1.css.br new file mode 100644 index 00000000..3adc905b --- /dev/null +++ b/public/packs/css/application-c4fb7ce1.css.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c338e3292ad867f924e9e64fd4d631d8b8c3c2f3f5ddc77b8bd0f52481eb3b1 +size 9885 diff --git a/public/packs/css/application-c4fb7ce1.css.gz b/public/packs/css/application-c4fb7ce1.css.gz new file mode 100644 index 00000000..c9e0a3b8 --- /dev/null +++ b/public/packs/css/application-c4fb7ce1.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f1603909c05934c20ed17538423472c62150e13b603e1e6bbd58b47e539e37b +size 12215 diff --git a/public/packs/js/application-2616234043725064e154.js b/public/packs/js/application-2616234043725064e154.js deleted file mode 100644 index e5e5c2d4..00000000 --- a/public/packs/js/application-2616234043725064e154.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d65a9b66a2aa79b5d2e7ba759cefcffd9337b2f5728e02b92c9ae0cc09616f01 -size 1458335 diff --git a/public/packs/js/application-2616234043725064e154.js.br b/public/packs/js/application-2616234043725064e154.js.br deleted file mode 100644 index e79fa83b..00000000 --- a/public/packs/js/application-2616234043725064e154.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7a89d14dcfff747eeb3f195aa2e490f0330260dc400b6c99100f11b20f5af2da -size 318462 diff --git a/public/packs/js/application-2616234043725064e154.js.gz b/public/packs/js/application-2616234043725064e154.js.gz deleted file mode 100644 index 8c58efab..00000000 --- a/public/packs/js/application-2616234043725064e154.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:723c86a5d2b8f68a492a2f0bac87053a4a4d0f252eaeba386cc0be65dd1452fc -size 422351 diff --git a/public/packs/js/application-2616234043725064e154.js.map b/public/packs/js/application-2616234043725064e154.js.map deleted file mode 100644 index 2c52fc8f..00000000 --- a/public/packs/js/application-2616234043725064e154.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9cd05eac565cbc84316debaa3f6e98fa0bae8c4009e2ddb32d1afde30b9dd55f -size 5649555 diff --git a/public/packs/js/application-2616234043725064e154.js.map.br b/public/packs/js/application-2616234043725064e154.js.map.br deleted file mode 100644 index e7a208e0..00000000 --- a/public/packs/js/application-2616234043725064e154.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:942865bbcebd236a9f9bade91506297a0cfd4d7d5ed830be40535623007ff93c -size 1216618 diff --git a/public/packs/js/application-2616234043725064e154.js.map.gz b/public/packs/js/application-2616234043725064e154.js.map.gz deleted file mode 100644 index 4e3a1a64..00000000 --- a/public/packs/js/application-2616234043725064e154.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:384a609848dcb83e6df010338461f32ec60fa5b298e9295c1fb4c598e9072d7f -size 1492439 diff --git a/public/packs/js/application-df574869cd006337e299.js b/public/packs/js/application-df574869cd006337e299.js new file mode 100644 index 00000000..cac756d8 --- /dev/null +++ b/public/packs/js/application-df574869cd006337e299.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8668b918cb3b6511ce4cd07917d74ab284d3f3f462d1b5d7c29a38f58631a9a +size 1460543 diff --git a/public/packs/js/application-2616234043725064e154.js.LICENSE.txt b/public/packs/js/application-df574869cd006337e299.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-2616234043725064e154.js.LICENSE.txt rename to public/packs/js/application-df574869cd006337e299.js.LICENSE.txt diff --git a/public/packs/js/application-df574869cd006337e299.js.br b/public/packs/js/application-df574869cd006337e299.js.br new file mode 100644 index 00000000..91d90fb2 --- /dev/null +++ b/public/packs/js/application-df574869cd006337e299.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65e9b596cb8ef59e922f3c9020adcaad8b6369bab5e54e01041e2b34bb6fd11f +size 319433 diff --git a/public/packs/js/application-df574869cd006337e299.js.gz b/public/packs/js/application-df574869cd006337e299.js.gz new file mode 100644 index 00000000..67b61b86 --- /dev/null +++ b/public/packs/js/application-df574869cd006337e299.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b028ec3fdb5fd4dcbaeab0133c5fac86e1650ae5026b062cacdb1f6ca079a915 +size 423573 diff --git a/public/packs/js/application-df574869cd006337e299.js.map b/public/packs/js/application-df574869cd006337e299.js.map new file mode 100644 index 00000000..f12d8b25 --- /dev/null +++ b/public/packs/js/application-df574869cd006337e299.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:97d08e59371833888a537be94d10abb1e04b358d76eb1e1d73558fb47e086024 +size 5726714 diff --git a/public/packs/js/application-df574869cd006337e299.js.map.br b/public/packs/js/application-df574869cd006337e299.js.map.br new file mode 100644 index 00000000..308f7712 --- /dev/null +++ b/public/packs/js/application-df574869cd006337e299.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b26da909a9c3dad830de38b1c7c1a6dda6828c1368a02234837fa69c0773025a +size 1228442 diff --git a/public/packs/js/application-df574869cd006337e299.js.map.gz b/public/packs/js/application-df574869cd006337e299.js.map.gz new file mode 100644 index 00000000..aebe1ec3 --- /dev/null +++ b/public/packs/js/application-df574869cd006337e299.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:797e5a74936e9ce2e5947b024d4d676899f4173fce3a1edf1095f215435751d9 +size 1518445 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index d0ccc345..843b2818 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1d6bf7429acd68ec646b1ca1943e510c59a58c379e79d73084585a8bd1f2a9d2 +oid sha256:25c5882f75663149fe85ff0c6fb53d6dbb73d50a8a590de8cf58ecbf2314611e size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index e2f1ec4c..37c2eb19 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:46246f77192775ebfe577a3306a0725aef15b3df22bd090c792a0821acc381b5 -size 321 +oid sha256:57964269d30b95ace61d1d0ccd955384d7d32810d7f93160678940f56c31bede +size 319 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 795b027c..3e49b0ab 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:107d85b11eb946956d6a9bd806611d38a342442ef08e91015eb93e9ad5f64507 -size 365 +oid sha256:5ba1da0101108aa912af5532d8e647c1861888e101f17b676fdecff5d9b9b78e +size 366 From 7a4e115d0abff464553ed0997f8a86d45b751997 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 31 Mar 2023 19:46:31 -0300 Subject: [PATCH 222/699] feat: editor 0.1.17 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 75ad901a..745ab952 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,7 @@ "@rails/activestorage": "^6.1.3-1", "@rails/ujs": "^6.1.3-1", "@rails/webpacker": "5.2.1", - "@suttyweb/editor": "^0.1.16", + "@suttyweb/editor": "^0.1.17", "babel-loader": "^8.2.2", "chart.js": "^3.5.1", "chartkick": "^4.0.5", From a9164ae3d23932976619c85e4e41d52cd546172f Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Fri, 31 Mar 2023 22:55:08 +0000 Subject: [PATCH 223/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/css/application-c4fb7ce1.css | 3 --- public/packs/css/application-c4fb7ce1.css.br | 3 --- public/packs/css/application-c4fb7ce1.css.gz | 3 --- public/packs/css/application-f7071aa6.css | 3 +++ public/packs/css/application-f7071aa6.css.br | 3 +++ public/packs/css/application-f7071aa6.css.gz | 3 +++ public/packs/js/application-5efbba94c044b88103a4.js | 3 +++ ...SE.txt => application-5efbba94c044b88103a4.js.LICENSE.txt} | 0 public/packs/js/application-5efbba94c044b88103a4.js.br | 3 +++ public/packs/js/application-5efbba94c044b88103a4.js.gz | 3 +++ public/packs/js/application-5efbba94c044b88103a4.js.map | 3 +++ public/packs/js/application-5efbba94c044b88103a4.js.map.br | 3 +++ public/packs/js/application-5efbba94c044b88103a4.js.map.gz | 3 +++ public/packs/js/application-df574869cd006337e299.js | 3 --- public/packs/js/application-df574869cd006337e299.js.br | 3 --- public/packs/js/application-df574869cd006337e299.js.gz | 3 --- public/packs/js/application-df574869cd006337e299.js.map | 3 --- public/packs/js/application-df574869cd006337e299.js.map.br | 3 --- public/packs/js/application-df574869cd006337e299.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 2 +- public/packs/manifest.json.gz | 4 ++-- 23 files changed, 32 insertions(+), 32 deletions(-) delete mode 100644 public/packs/css/application-c4fb7ce1.css delete mode 100644 public/packs/css/application-c4fb7ce1.css.br delete mode 100644 public/packs/css/application-c4fb7ce1.css.gz create mode 100644 public/packs/css/application-f7071aa6.css create mode 100644 public/packs/css/application-f7071aa6.css.br create mode 100644 public/packs/css/application-f7071aa6.css.gz create mode 100644 public/packs/js/application-5efbba94c044b88103a4.js rename public/packs/js/{application-df574869cd006337e299.js.LICENSE.txt => application-5efbba94c044b88103a4.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-5efbba94c044b88103a4.js.br create mode 100644 public/packs/js/application-5efbba94c044b88103a4.js.gz create mode 100644 public/packs/js/application-5efbba94c044b88103a4.js.map create mode 100644 public/packs/js/application-5efbba94c044b88103a4.js.map.br create mode 100644 public/packs/js/application-5efbba94c044b88103a4.js.map.gz delete mode 100644 public/packs/js/application-df574869cd006337e299.js delete mode 100644 public/packs/js/application-df574869cd006337e299.js.br delete mode 100644 public/packs/js/application-df574869cd006337e299.js.gz delete mode 100644 public/packs/js/application-df574869cd006337e299.js.map delete mode 100644 public/packs/js/application-df574869cd006337e299.js.map.br delete mode 100644 public/packs/js/application-df574869cd006337e299.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index d77904a0..e05a1ceb 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3f8732addd37f94e45e068f41d00b84e7ce769c68d24a011f8787e41f769a296 +oid sha256:9d56fad491c62e26c0b02777684fe1f9cff6e9cd8e106afea161d01b19032962 size 14146 diff --git a/public/packs/css/application-c4fb7ce1.css b/public/packs/css/application-c4fb7ce1.css deleted file mode 100644 index 8d0482e1..00000000 --- a/public/packs/css/application-c4fb7ce1.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:757e7d5c17dd75fc19aacf2d1b6cbce88b9aacb496e73740a7e3d2a44b01548f -size 48842 diff --git a/public/packs/css/application-c4fb7ce1.css.br b/public/packs/css/application-c4fb7ce1.css.br deleted file mode 100644 index 3adc905b..00000000 --- a/public/packs/css/application-c4fb7ce1.css.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7c338e3292ad867f924e9e64fd4d631d8b8c3c2f3f5ddc77b8bd0f52481eb3b1 -size 9885 diff --git a/public/packs/css/application-c4fb7ce1.css.gz b/public/packs/css/application-c4fb7ce1.css.gz deleted file mode 100644 index c9e0a3b8..00000000 --- a/public/packs/css/application-c4fb7ce1.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2f1603909c05934c20ed17538423472c62150e13b603e1e6bbd58b47e539e37b -size 12215 diff --git a/public/packs/css/application-f7071aa6.css b/public/packs/css/application-f7071aa6.css new file mode 100644 index 00000000..a6c0f681 --- /dev/null +++ b/public/packs/css/application-f7071aa6.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77503a8087d894a65d4eb10e7df9bfa0a73434227b51ce89e2fc9ef1e1fd9b3e +size 48868 diff --git a/public/packs/css/application-f7071aa6.css.br b/public/packs/css/application-f7071aa6.css.br new file mode 100644 index 00000000..c27d398f --- /dev/null +++ b/public/packs/css/application-f7071aa6.css.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35da80be4fcd0557bf262418b4dafa47d6ed1c0e8ad3f62b3080087bdf5eee00 +size 9902 diff --git a/public/packs/css/application-f7071aa6.css.gz b/public/packs/css/application-f7071aa6.css.gz new file mode 100644 index 00000000..953e0c72 --- /dev/null +++ b/public/packs/css/application-f7071aa6.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f24225fb1364ce58df598a525151d0330d7d442bc269dc1d7e5f7bc81344adc +size 12230 diff --git a/public/packs/js/application-5efbba94c044b88103a4.js b/public/packs/js/application-5efbba94c044b88103a4.js new file mode 100644 index 00000000..a069ed13 --- /dev/null +++ b/public/packs/js/application-5efbba94c044b88103a4.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c39b47821236d8accf81b48b93dedcbc884134fa3a7b6b612c17065095e75bb3 +size 1461472 diff --git a/public/packs/js/application-df574869cd006337e299.js.LICENSE.txt b/public/packs/js/application-5efbba94c044b88103a4.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-df574869cd006337e299.js.LICENSE.txt rename to public/packs/js/application-5efbba94c044b88103a4.js.LICENSE.txt diff --git a/public/packs/js/application-5efbba94c044b88103a4.js.br b/public/packs/js/application-5efbba94c044b88103a4.js.br new file mode 100644 index 00000000..b6740c30 --- /dev/null +++ b/public/packs/js/application-5efbba94c044b88103a4.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f455f19b3df4722e0bae2584ec42681c3aefa00359c83c57fc47628c9f51fcc7 +size 319649 diff --git a/public/packs/js/application-5efbba94c044b88103a4.js.gz b/public/packs/js/application-5efbba94c044b88103a4.js.gz new file mode 100644 index 00000000..2f383375 --- /dev/null +++ b/public/packs/js/application-5efbba94c044b88103a4.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:645f342399a340610bd4c3915fec4a8e24f95a770c75f808a631c82d50b30e8e +size 423884 diff --git a/public/packs/js/application-5efbba94c044b88103a4.js.map b/public/packs/js/application-5efbba94c044b88103a4.js.map new file mode 100644 index 00000000..08c26b98 --- /dev/null +++ b/public/packs/js/application-5efbba94c044b88103a4.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66bc5eff844e58d768e4c818a350555a04e2b8db2e8da71ac2ba3c0d5b4ebace +size 5729175 diff --git a/public/packs/js/application-5efbba94c044b88103a4.js.map.br b/public/packs/js/application-5efbba94c044b88103a4.js.map.br new file mode 100644 index 00000000..7b1c6cc7 --- /dev/null +++ b/public/packs/js/application-5efbba94c044b88103a4.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:113f53116e03965859e5b8bfab77bc13dd7982661cedcf8c9cffa3fce629bcec +size 1228385 diff --git a/public/packs/js/application-5efbba94c044b88103a4.js.map.gz b/public/packs/js/application-5efbba94c044b88103a4.js.map.gz new file mode 100644 index 00000000..8030ffc5 --- /dev/null +++ b/public/packs/js/application-5efbba94c044b88103a4.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae05a47661a71c06e54e20283b1ad2cb58ecb7ccabc615d568082e89cc5dfc22 +size 1519055 diff --git a/public/packs/js/application-df574869cd006337e299.js b/public/packs/js/application-df574869cd006337e299.js deleted file mode 100644 index cac756d8..00000000 --- a/public/packs/js/application-df574869cd006337e299.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e8668b918cb3b6511ce4cd07917d74ab284d3f3f462d1b5d7c29a38f58631a9a -size 1460543 diff --git a/public/packs/js/application-df574869cd006337e299.js.br b/public/packs/js/application-df574869cd006337e299.js.br deleted file mode 100644 index 91d90fb2..00000000 --- a/public/packs/js/application-df574869cd006337e299.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:65e9b596cb8ef59e922f3c9020adcaad8b6369bab5e54e01041e2b34bb6fd11f -size 319433 diff --git a/public/packs/js/application-df574869cd006337e299.js.gz b/public/packs/js/application-df574869cd006337e299.js.gz deleted file mode 100644 index 67b61b86..00000000 --- a/public/packs/js/application-df574869cd006337e299.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b028ec3fdb5fd4dcbaeab0133c5fac86e1650ae5026b062cacdb1f6ca079a915 -size 423573 diff --git a/public/packs/js/application-df574869cd006337e299.js.map b/public/packs/js/application-df574869cd006337e299.js.map deleted file mode 100644 index f12d8b25..00000000 --- a/public/packs/js/application-df574869cd006337e299.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:97d08e59371833888a537be94d10abb1e04b358d76eb1e1d73558fb47e086024 -size 5726714 diff --git a/public/packs/js/application-df574869cd006337e299.js.map.br b/public/packs/js/application-df574869cd006337e299.js.map.br deleted file mode 100644 index 308f7712..00000000 --- a/public/packs/js/application-df574869cd006337e299.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b26da909a9c3dad830de38b1c7c1a6dda6828c1368a02234837fa69c0773025a -size 1228442 diff --git a/public/packs/js/application-df574869cd006337e299.js.map.gz b/public/packs/js/application-df574869cd006337e299.js.map.gz deleted file mode 100644 index aebe1ec3..00000000 --- a/public/packs/js/application-df574869cd006337e299.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:797e5a74936e9ce2e5947b024d4d676899f4173fce3a1edf1095f215435751d9 -size 1518445 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 843b2818..e6d0265b 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:25c5882f75663149fe85ff0c6fb53d6dbb73d50a8a590de8cf58ecbf2314611e +oid sha256:277f425245ec21f4ee1d549047922eb8a98bf8ce95f297eeed3217c876a4fb42 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 37c2eb19..6ab24dbc 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:57964269d30b95ace61d1d0ccd955384d7d32810d7f93160678940f56c31bede +oid sha256:d716cb21ff655301318c589e0f021b95b7ccfddf444de9dc637dc97cf366ff40 size 319 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 3e49b0ab..491fa98d 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5ba1da0101108aa912af5532d8e647c1861888e101f17b676fdecff5d9b9b78e -size 366 +oid sha256:212421de59677c17d970cb7bb2c593ac367ecae71af23edb730ecbfe724487b8 +size 365 From ddfc24b6dd87c80e3c849ba46c21f85bddbc8ab9 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 31 Mar 2023 20:00:17 -0300 Subject: [PATCH 224/699] feat: editor 0.1.18 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 745ab952..940e50c1 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,7 @@ "@rails/activestorage": "^6.1.3-1", "@rails/ujs": "^6.1.3-1", "@rails/webpacker": "5.2.1", - "@suttyweb/editor": "^0.1.17", + "@suttyweb/editor": "^0.1.18", "babel-loader": "^8.2.2", "chart.js": "^3.5.1", "chartkick": "^4.0.5", From 0a739f8ab60c58ddaa64d5d9a42290101473121b Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Fri, 31 Mar 2023 23:09:05 +0000 Subject: [PATCH 225/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index e05a1ceb..1cd790ed 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9d56fad491c62e26c0b02777684fe1f9cff6e9cd8e106afea161d01b19032962 +oid sha256:282a370571791af934de0fe7c5d11dc62614e31acf1b9b07c4ec9f51cccfbf36 size 14146 From 106cb86f7202adc3a528aa0fc02ab3113b4fd999 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 31 Mar 2023 20:16:54 -0300 Subject: [PATCH 226/699] feat: editor 0.1.19 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 940e50c1..582ac790 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,7 @@ "@rails/activestorage": "^6.1.3-1", "@rails/ujs": "^6.1.3-1", "@rails/webpacker": "5.2.1", - "@suttyweb/editor": "^0.1.18", + "@suttyweb/editor": "^0.1.19", "babel-loader": "^8.2.2", "chart.js": "^3.5.1", "chartkick": "^4.0.5", From c0f1c41f52bfc4740250b029836db28032994bd0 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Fri, 31 Mar 2023 23:25:32 +0000 Subject: [PATCH 227/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-583a4c398185f14b7e6e.js | 3 +++ ...SE.txt => application-583a4c398185f14b7e6e.js.LICENSE.txt} | 0 public/packs/js/application-583a4c398185f14b7e6e.js.br | 3 +++ public/packs/js/application-583a4c398185f14b7e6e.js.gz | 3 +++ public/packs/js/application-583a4c398185f14b7e6e.js.map | 3 +++ public/packs/js/application-583a4c398185f14b7e6e.js.map.br | 3 +++ public/packs/js/application-583a4c398185f14b7e6e.js.map.gz | 3 +++ public/packs/js/application-5efbba94c044b88103a4.js | 3 --- public/packs/js/application-5efbba94c044b88103a4.js.br | 3 --- public/packs/js/application-5efbba94c044b88103a4.js.gz | 3 --- public/packs/js/application-5efbba94c044b88103a4.js.map | 3 --- public/packs/js/application-5efbba94c044b88103a4.js.map.br | 3 --- public/packs/js/application-5efbba94c044b88103a4.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 2 +- 17 files changed, 23 insertions(+), 23 deletions(-) create mode 100644 public/packs/js/application-583a4c398185f14b7e6e.js rename public/packs/js/{application-5efbba94c044b88103a4.js.LICENSE.txt => application-583a4c398185f14b7e6e.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-583a4c398185f14b7e6e.js.br create mode 100644 public/packs/js/application-583a4c398185f14b7e6e.js.gz create mode 100644 public/packs/js/application-583a4c398185f14b7e6e.js.map create mode 100644 public/packs/js/application-583a4c398185f14b7e6e.js.map.br create mode 100644 public/packs/js/application-583a4c398185f14b7e6e.js.map.gz delete mode 100644 public/packs/js/application-5efbba94c044b88103a4.js delete mode 100644 public/packs/js/application-5efbba94c044b88103a4.js.br delete mode 100644 public/packs/js/application-5efbba94c044b88103a4.js.gz delete mode 100644 public/packs/js/application-5efbba94c044b88103a4.js.map delete mode 100644 public/packs/js/application-5efbba94c044b88103a4.js.map.br delete mode 100644 public/packs/js/application-5efbba94c044b88103a4.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 1cd790ed..96dc003e 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:282a370571791af934de0fe7c5d11dc62614e31acf1b9b07c4ec9f51cccfbf36 +oid sha256:7b70d4da873852564edaf2ce72af078ae6a8810921bcc3a0ede589637b4c2967 size 14146 diff --git a/public/packs/js/application-583a4c398185f14b7e6e.js b/public/packs/js/application-583a4c398185f14b7e6e.js new file mode 100644 index 00000000..7fae6c97 --- /dev/null +++ b/public/packs/js/application-583a4c398185f14b7e6e.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18ba1b14e0072c8c828408ce410ffb01e59d3aeb49e6ae58832300f032c513f9 +size 1461857 diff --git a/public/packs/js/application-5efbba94c044b88103a4.js.LICENSE.txt b/public/packs/js/application-583a4c398185f14b7e6e.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-5efbba94c044b88103a4.js.LICENSE.txt rename to public/packs/js/application-583a4c398185f14b7e6e.js.LICENSE.txt diff --git a/public/packs/js/application-583a4c398185f14b7e6e.js.br b/public/packs/js/application-583a4c398185f14b7e6e.js.br new file mode 100644 index 00000000..9b6f7d15 --- /dev/null +++ b/public/packs/js/application-583a4c398185f14b7e6e.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9233e3fadc81f85fce09b204d9204860d0e30e4b144a03c9d5ed30ab5d3dfdb0 +size 319890 diff --git a/public/packs/js/application-583a4c398185f14b7e6e.js.gz b/public/packs/js/application-583a4c398185f14b7e6e.js.gz new file mode 100644 index 00000000..1195a05a --- /dev/null +++ b/public/packs/js/application-583a4c398185f14b7e6e.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:393c290bc3c4aa3ed57a6970870d4c6f618e4e1b126505cd1bc91635e2396ddc +size 424013 diff --git a/public/packs/js/application-583a4c398185f14b7e6e.js.map b/public/packs/js/application-583a4c398185f14b7e6e.js.map new file mode 100644 index 00000000..8ac3358d --- /dev/null +++ b/public/packs/js/application-583a4c398185f14b7e6e.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49f200273253a17cb236575930458deccdf6e66bce832c20a59b726fe4388278 +size 5731073 diff --git a/public/packs/js/application-583a4c398185f14b7e6e.js.map.br b/public/packs/js/application-583a4c398185f14b7e6e.js.map.br new file mode 100644 index 00000000..2f6d9509 --- /dev/null +++ b/public/packs/js/application-583a4c398185f14b7e6e.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:053c79072697a9db2c567a0d19f42ef1c1488bdefad580b72c95f1a6b6539d06 +size 1228882 diff --git a/public/packs/js/application-583a4c398185f14b7e6e.js.map.gz b/public/packs/js/application-583a4c398185f14b7e6e.js.map.gz new file mode 100644 index 00000000..cd52638a --- /dev/null +++ b/public/packs/js/application-583a4c398185f14b7e6e.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4907a7653fa6859202a2c9f826e8a7fcd121b6840db9cad64fa86f581bf0d549 +size 1519724 diff --git a/public/packs/js/application-5efbba94c044b88103a4.js b/public/packs/js/application-5efbba94c044b88103a4.js deleted file mode 100644 index a069ed13..00000000 --- a/public/packs/js/application-5efbba94c044b88103a4.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c39b47821236d8accf81b48b93dedcbc884134fa3a7b6b612c17065095e75bb3 -size 1461472 diff --git a/public/packs/js/application-5efbba94c044b88103a4.js.br b/public/packs/js/application-5efbba94c044b88103a4.js.br deleted file mode 100644 index b6740c30..00000000 --- a/public/packs/js/application-5efbba94c044b88103a4.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f455f19b3df4722e0bae2584ec42681c3aefa00359c83c57fc47628c9f51fcc7 -size 319649 diff --git a/public/packs/js/application-5efbba94c044b88103a4.js.gz b/public/packs/js/application-5efbba94c044b88103a4.js.gz deleted file mode 100644 index 2f383375..00000000 --- a/public/packs/js/application-5efbba94c044b88103a4.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:645f342399a340610bd4c3915fec4a8e24f95a770c75f808a631c82d50b30e8e -size 423884 diff --git a/public/packs/js/application-5efbba94c044b88103a4.js.map b/public/packs/js/application-5efbba94c044b88103a4.js.map deleted file mode 100644 index 08c26b98..00000000 --- a/public/packs/js/application-5efbba94c044b88103a4.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:66bc5eff844e58d768e4c818a350555a04e2b8db2e8da71ac2ba3c0d5b4ebace -size 5729175 diff --git a/public/packs/js/application-5efbba94c044b88103a4.js.map.br b/public/packs/js/application-5efbba94c044b88103a4.js.map.br deleted file mode 100644 index 7b1c6cc7..00000000 --- a/public/packs/js/application-5efbba94c044b88103a4.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:113f53116e03965859e5b8bfab77bc13dd7982661cedcf8c9cffa3fce629bcec -size 1228385 diff --git a/public/packs/js/application-5efbba94c044b88103a4.js.map.gz b/public/packs/js/application-5efbba94c044b88103a4.js.map.gz deleted file mode 100644 index 8030ffc5..00000000 --- a/public/packs/js/application-5efbba94c044b88103a4.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ae05a47661a71c06e54e20283b1ad2cb58ecb7ccabc615d568082e89cc5dfc22 -size 1519055 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index e6d0265b..6087fee6 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:277f425245ec21f4ee1d549047922eb8a98bf8ce95f297eeed3217c876a4fb42 +oid sha256:9d6a1ab30a599e063c31465fae01ffde55f79b264feeaa88212da2d5f8bd8c0a size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 6ab24dbc..9e85f425 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d716cb21ff655301318c589e0f021b95b7ccfddf444de9dc637dc97cf366ff40 -size 319 +oid sha256:4b3950f6492f04a0e76943ab101aa5e917eda6086232c4fbab8eeaf39feab23b +size 320 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 491fa98d..e06af927 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:212421de59677c17d970cb7bb2c593ac367ecae71af23edb730ecbfe724487b8 +oid sha256:0a25c669e29634db38d7eb97317dca43a0d6963131d692118b2051daf21a9802 size 365 From 8e7213ffe1c38e4bd0765d800364c903861cfc48 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 31 Mar 2023 20:20:37 -0300 Subject: [PATCH 228/699] =?UTF-8?q?fix:=20hacer=20que=20devise=20respete?= =?UTF-8?q?=20el=20idioma=20de=20la=20sesi=C3=B3n=20#10478?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/lib/devise/failure_app_decorator.rb | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 app/lib/devise/failure_app_decorator.rb diff --git a/app/lib/devise/failure_app_decorator.rb b/app/lib/devise/failure_app_decorator.rb new file mode 100644 index 00000000..f17cb482 --- /dev/null +++ b/app/lib/devise/failure_app_decorator.rb @@ -0,0 +1,21 @@ +# frozen_string_literal: true + +module Devise + module FailureAppDecorator + extend ActiveSupport::Concern + + included do + include AbstractController::Callbacks + + around_action :set_locale + + private + + def set_locale(&action) + I18n.with_locale(session[:locale] || I18n.locale, &action) + end + end + end +end + +Devise::FailureApp.include Devise::FailureAppDecorator From b7de9775a7bcc4ec2526d3e9bd7c627c21513b8b Mon Sep 17 00:00:00 2001 From: f Date: Fri, 31 Mar 2023 20:49:50 -0300 Subject: [PATCH 229/699] feat: editor 0.1.20 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 582ac790..3b6fc7fb 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,7 @@ "@rails/activestorage": "^6.1.3-1", "@rails/ujs": "^6.1.3-1", "@rails/webpacker": "5.2.1", - "@suttyweb/editor": "^0.1.19", + "@suttyweb/editor": "^0.1.20", "babel-loader": "^8.2.2", "chart.js": "^3.5.1", "chartkick": "^4.0.5", From 623ffcbd3a88c8a328a1b8c1801d4c599e89fefb Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Fri, 31 Mar 2023 23:59:03 +0000 Subject: [PATCH 230/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-06accf355bb87d785edf.js | 3 +++ ...NSE.txt => application-06accf355bb87d785edf.js.LICENSE.txt} | 0 public/packs/js/application-06accf355bb87d785edf.js.br | 3 +++ public/packs/js/application-06accf355bb87d785edf.js.gz | 3 +++ public/packs/js/application-06accf355bb87d785edf.js.map | 3 +++ public/packs/js/application-06accf355bb87d785edf.js.map.br | 3 +++ public/packs/js/application-06accf355bb87d785edf.js.map.gz | 3 +++ public/packs/js/application-583a4c398185f14b7e6e.js | 3 --- public/packs/js/application-583a4c398185f14b7e6e.js.br | 3 --- public/packs/js/application-583a4c398185f14b7e6e.js.gz | 3 --- public/packs/js/application-583a4c398185f14b7e6e.js.map | 3 --- public/packs/js/application-583a4c398185f14b7e6e.js.map.br | 3 --- public/packs/js/application-583a4c398185f14b7e6e.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 2 +- public/packs/manifest.json.gz | 2 +- 17 files changed, 22 insertions(+), 22 deletions(-) create mode 100644 public/packs/js/application-06accf355bb87d785edf.js rename public/packs/js/{application-583a4c398185f14b7e6e.js.LICENSE.txt => application-06accf355bb87d785edf.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-06accf355bb87d785edf.js.br create mode 100644 public/packs/js/application-06accf355bb87d785edf.js.gz create mode 100644 public/packs/js/application-06accf355bb87d785edf.js.map create mode 100644 public/packs/js/application-06accf355bb87d785edf.js.map.br create mode 100644 public/packs/js/application-06accf355bb87d785edf.js.map.gz delete mode 100644 public/packs/js/application-583a4c398185f14b7e6e.js delete mode 100644 public/packs/js/application-583a4c398185f14b7e6e.js.br delete mode 100644 public/packs/js/application-583a4c398185f14b7e6e.js.gz delete mode 100644 public/packs/js/application-583a4c398185f14b7e6e.js.map delete mode 100644 public/packs/js/application-583a4c398185f14b7e6e.js.map.br delete mode 100644 public/packs/js/application-583a4c398185f14b7e6e.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 96dc003e..02ea792f 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7b70d4da873852564edaf2ce72af078ae6a8810921bcc3a0ede589637b4c2967 +oid sha256:e80a4e7f8e43ef1942ee0a4d46356488fd46652f7789177feb8bef905effc1ff size 14146 diff --git a/public/packs/js/application-06accf355bb87d785edf.js b/public/packs/js/application-06accf355bb87d785edf.js new file mode 100644 index 00000000..01c76c03 --- /dev/null +++ b/public/packs/js/application-06accf355bb87d785edf.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3bc4350cd84e60a83037c5c360943de622476ec6ed02f49029120f3144713c3 +size 1461899 diff --git a/public/packs/js/application-583a4c398185f14b7e6e.js.LICENSE.txt b/public/packs/js/application-06accf355bb87d785edf.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-583a4c398185f14b7e6e.js.LICENSE.txt rename to public/packs/js/application-06accf355bb87d785edf.js.LICENSE.txt diff --git a/public/packs/js/application-06accf355bb87d785edf.js.br b/public/packs/js/application-06accf355bb87d785edf.js.br new file mode 100644 index 00000000..648090a5 --- /dev/null +++ b/public/packs/js/application-06accf355bb87d785edf.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fcbb146132a175ef9d05adc8e7e6c8b3f6044d8457fab01d223d3f4a0f8e2f5 +size 319607 diff --git a/public/packs/js/application-06accf355bb87d785edf.js.gz b/public/packs/js/application-06accf355bb87d785edf.js.gz new file mode 100644 index 00000000..756783a2 --- /dev/null +++ b/public/packs/js/application-06accf355bb87d785edf.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82083896e49648eb7c15b77d5215e1e5c7ecb3a261e79e50605d563d1f0a2da0 +size 424027 diff --git a/public/packs/js/application-06accf355bb87d785edf.js.map b/public/packs/js/application-06accf355bb87d785edf.js.map new file mode 100644 index 00000000..adceaee3 --- /dev/null +++ b/public/packs/js/application-06accf355bb87d785edf.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9679f944908fdc831625dde1e17273f8139f8b469a8811f2efbb60264f804318 +size 5731213 diff --git a/public/packs/js/application-06accf355bb87d785edf.js.map.br b/public/packs/js/application-06accf355bb87d785edf.js.map.br new file mode 100644 index 00000000..5bbeadda --- /dev/null +++ b/public/packs/js/application-06accf355bb87d785edf.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1c511999d83976966009262dab19c1f28f1ed6937a949bd151f501f75c131c4 +size 1228864 diff --git a/public/packs/js/application-06accf355bb87d785edf.js.map.gz b/public/packs/js/application-06accf355bb87d785edf.js.map.gz new file mode 100644 index 00000000..3bedc5a5 --- /dev/null +++ b/public/packs/js/application-06accf355bb87d785edf.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5679527936827ef05d9b9227f43032eadfa150f70dfdbc9cd51ecbd643a5576 +size 1519778 diff --git a/public/packs/js/application-583a4c398185f14b7e6e.js b/public/packs/js/application-583a4c398185f14b7e6e.js deleted file mode 100644 index 7fae6c97..00000000 --- a/public/packs/js/application-583a4c398185f14b7e6e.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:18ba1b14e0072c8c828408ce410ffb01e59d3aeb49e6ae58832300f032c513f9 -size 1461857 diff --git a/public/packs/js/application-583a4c398185f14b7e6e.js.br b/public/packs/js/application-583a4c398185f14b7e6e.js.br deleted file mode 100644 index 9b6f7d15..00000000 --- a/public/packs/js/application-583a4c398185f14b7e6e.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9233e3fadc81f85fce09b204d9204860d0e30e4b144a03c9d5ed30ab5d3dfdb0 -size 319890 diff --git a/public/packs/js/application-583a4c398185f14b7e6e.js.gz b/public/packs/js/application-583a4c398185f14b7e6e.js.gz deleted file mode 100644 index 1195a05a..00000000 --- a/public/packs/js/application-583a4c398185f14b7e6e.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:393c290bc3c4aa3ed57a6970870d4c6f618e4e1b126505cd1bc91635e2396ddc -size 424013 diff --git a/public/packs/js/application-583a4c398185f14b7e6e.js.map b/public/packs/js/application-583a4c398185f14b7e6e.js.map deleted file mode 100644 index 8ac3358d..00000000 --- a/public/packs/js/application-583a4c398185f14b7e6e.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:49f200273253a17cb236575930458deccdf6e66bce832c20a59b726fe4388278 -size 5731073 diff --git a/public/packs/js/application-583a4c398185f14b7e6e.js.map.br b/public/packs/js/application-583a4c398185f14b7e6e.js.map.br deleted file mode 100644 index 2f6d9509..00000000 --- a/public/packs/js/application-583a4c398185f14b7e6e.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:053c79072697a9db2c567a0d19f42ef1c1488bdefad580b72c95f1a6b6539d06 -size 1228882 diff --git a/public/packs/js/application-583a4c398185f14b7e6e.js.map.gz b/public/packs/js/application-583a4c398185f14b7e6e.js.map.gz deleted file mode 100644 index cd52638a..00000000 --- a/public/packs/js/application-583a4c398185f14b7e6e.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4907a7653fa6859202a2c9f826e8a7fcd121b6840db9cad64fa86f581bf0d549 -size 1519724 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 6087fee6..9ec10b59 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9d6a1ab30a599e063c31465fae01ffde55f79b264feeaa88212da2d5f8bd8c0a +oid sha256:29615d188ee8f6e4d63cd2618b6cf7fdc3618286866cf56e1748404d52847322 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 9e85f425..41d802c2 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4b3950f6492f04a0e76943ab101aa5e917eda6086232c4fbab8eeaf39feab23b +oid sha256:930d2421cd4a6adae2256e54ca4826ca7bb0bdb477a6df09163300df2281296f size 320 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index e06af927..4d8cbf0f 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0a25c669e29634db38d7eb97317dca43a0d6963131d692118b2051daf21a9802 +oid sha256:d1816a990a1e990ef02d368133f2e588ff31aa73c98e96e63b9b479c22d2eaff size 365 From 5f50cc04dcc95c8ba2b0aa4e954d84c345f3b7b7 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Mon, 3 Apr 2023 17:09:40 +0000 Subject: [PATCH 231/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 02ea792f..ccb785f5 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e80a4e7f8e43ef1942ee0a4d46356488fd46652f7789177feb8bef905effc1ff +oid sha256:2b669691cf823345dc71d7d9c1340587b1e589d206ecb24b19b7defe61114840 size 14146 From 9fbe215771122a0523b07f64eccf3498f60bd72a Mon Sep 17 00:00:00 2001 From: f Date: Mon, 3 Apr 2023 17:56:02 -0300 Subject: [PATCH 232/699] =?UTF-8?q?fix:=20por=20ahora=20la=20=C3=BAnica=20?= =?UTF-8?q?opci=C3=B3n=20de=20idioma=20es=20la=20de=20le=20usuarie=20#1049?= =?UTF-8?q?4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/services/site_service.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index f5f415e7..a102161c 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -22,7 +22,7 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do # # TODO: hacer que el repositorio se cree cuando es necesario, para # que no haya estados intermedios. - site.locales = [usuarie.lang] + I18n.available_locales + site.locales = [usuarie.lang] site.save && site.config.write && From 3545bf74c9c121f952df7612238b44d04cc9809e Mon Sep 17 00:00:00 2001 From: f Date: Thu, 6 Apr 2023 11:08:47 -0300 Subject: [PATCH 233/699] =?UTF-8?q?BREAKING=20CHANGE:=20no=20usar=20enlace?= =?UTF-8?q?s=20simb=C3=B3licos=20para=20los=20datos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _deploy | 1 - _sites | 1 - _storage | 1 - 3 files changed, 3 deletions(-) delete mode 120000 _deploy delete mode 120000 _sites delete mode 120000 _storage diff --git a/_deploy b/_deploy deleted file mode 120000 index 5d029e6a..00000000 --- a/_deploy +++ /dev/null @@ -1 +0,0 @@ -data/_deploy \ No newline at end of file diff --git a/_sites b/_sites deleted file mode 120000 index 915190d2..00000000 --- a/_sites +++ /dev/null @@ -1 +0,0 @@ -data/_sites \ No newline at end of file diff --git a/_storage b/_storage deleted file mode 120000 index e0fa2b79..00000000 --- a/_storage +++ /dev/null @@ -1 +0,0 @@ -data/_storage \ No newline at end of file From c62ce80b9bbf0a61e860ad2ffe0a75ac7251859e Mon Sep 17 00:00:00 2001 From: f Date: Thu, 6 Apr 2023 11:22:21 -0300 Subject: [PATCH 234/699] chore: forzar la ci --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 7e48b617..267d103f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,6 @@ ARG RUBY_VERSION=2.7 -ARG RUBY_PATCH=6 -ARG ALPINE_VERSION=3.13.10 +ARG RUBY_PATCH=8 +ARG ALPINE_VERSION=3.14.10 ARG BASE_IMAGE=registry.nulo.in/sutty/rails FROM ${BASE_IMAGE}:${ALPINE_VERSION}-${RUBY_VERSION}.${RUBY_PATCH} ARG PANDOC_VERSION=2.18 From 06ca8c974a983ce0d8e5c78f273207b78cf7cb1f Mon Sep 17 00:00:00 2001 From: f Date: Thu, 6 Apr 2023 20:30:47 -0300 Subject: [PATCH 235/699] fix: la tarea estaba mal nombrada --- Procfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Procfile b/Procfile index 16af87c6..4aa6f2e9 100644 --- a/Procfile +++ b/Procfile @@ -1,5 +1,5 @@ cleanup: bundle exec rake cleanup:everything stats: bundle exec rake stats:process_all -distributed_press_renew_tokens: bundle exec rake distributed_press:tokens:renew +distributed_press_tokens_renew: bundle exec rake distributed_press:tokens:renew que: daemonize -c /srv/ -p /srv/tmp/que.pid -u rails /usr/local/bin/syslogize bundle exec que emergency_cleanup: bundle exec rake cleanup:everything BEFORE=7 From 1e2c29f3090ee5cb39592ce3b9a63622791fa44d Mon Sep 17 00:00:00 2001 From: f Date: Sat, 8 Apr 2023 12:47:51 -0300 Subject: [PATCH 236/699] feat: metadata has one #12985 --- app/models/metadata_has_one.rb | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 app/models/metadata_has_one.rb diff --git a/app/models/metadata_has_one.rb b/app/models/metadata_has_one.rb new file mode 100644 index 00000000..49fd65bf --- /dev/null +++ b/app/models/metadata_has_one.rb @@ -0,0 +1,4 @@ +# frozen_string_literal: true + +class MetadataHasOne < MetadataHasMany +end From b06751e62e5310a7b33c529c51cd8273e50db2c3 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 8 Apr 2023 17:09:40 -0300 Subject: [PATCH 237/699] feat: establecer relaciones bidireccionales --- app/models/metadata_belongs_to.rb | 14 +++++++++++--- app/models/metadata_has_one.rb | 30 ++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+), 3 deletions(-) diff --git a/app/models/metadata_belongs_to.rb b/app/models/metadata_belongs_to.rb index be1fa670..e1b84438 100644 --- a/app/models/metadata_belongs_to.rb +++ b/app/models/metadata_belongs_to.rb @@ -40,13 +40,21 @@ class MetadataBelongsTo < MetadataRelatedPosts # Si estamos cambiando la relación, tenemos que eliminar la relación # anterior if belonged_to.present? - belonged_to[inverse].value = belonged_to[inverse].value.reject do |rej| - rej == post.uuid.value + if belonged_to[inverse].respond_to? :has_one + belonged_to[inverse].value = nil + else + belonged_to[inverse].value = belonged_to[inverse].value.reject do |rej| + rej == post.uuid.value + end end end # No duplicar las relaciones - belongs_to[inverse].value = (belongs_to[inverse].value.dup << post.uuid.value) unless belongs_to.blank? || included? + if belongs_to[inverse].respond_to? :has_one + belongs_to[inverse].value = post.uuid.value + else + belongs_to[inverse].value = (belongs_to[inverse].value.dup << post.uuid.value) unless belongs_to.blank? || included? + end true end diff --git a/app/models/metadata_has_one.rb b/app/models/metadata_has_one.rb index 49fd65bf..38911e1d 100644 --- a/app/models/metadata_has_one.rb +++ b/app/models/metadata_has_one.rb @@ -1,4 +1,34 @@ # frozen_string_literal: true class MetadataHasOne < MetadataHasMany + def had_one + return default_value if value_was.blank? + + posts.find(uuid: value) + end + + def has_one + return default_value if value.blank? + + posts.find(uuid: value) + end + + def had_many; end + def has_many; end + + def save + super + + return true unless changed? + return true unless inverse? + + had_one&.value = nil + has_one&.value = post.uuid.value + + true + end + + def related_methods + @related_methods ||= %i[has_one had_one].freeze + end end From a62039b50a1057b8f8b42689acda6a4c5871689a Mon Sep 17 00:00:00 2001 From: f Date: Sat, 8 Apr 2023 17:26:56 -0300 Subject: [PATCH 238/699] fix: editar desde el panel --- app/views/posts/attribute_ro/_has_one.haml | 6 ++++++ app/views/posts/attributes/_has_one.haml | 7 +++++++ 2 files changed, 13 insertions(+) create mode 100644 app/views/posts/attribute_ro/_has_one.haml create mode 100644 app/views/posts/attributes/_has_one.haml diff --git a/app/views/posts/attribute_ro/_has_one.haml b/app/views/posts/attribute_ro/_has_one.haml new file mode 100644 index 00000000..c7e06be8 --- /dev/null +++ b/app/views/posts/attribute_ro/_has_one.haml @@ -0,0 +1,6 @@ +%tr{ id: attribute } + %th= post_label_t(attribute, post: post) + %td{ dir: dir, lang: locale } + - p = metadata.belongs_to + - if p + = link_to p.title.value, site_post_path(site, p.id) diff --git a/app/views/posts/attributes/_has_one.haml b/app/views/posts/attributes/_has_one.haml new file mode 100644 index 00000000..b0d21f35 --- /dev/null +++ b/app/views/posts/attributes/_has_one.haml @@ -0,0 +1,7 @@ +.form-group + = label_tag "#{base}_#{attribute}", post_label_t(attribute, post: post) + = select_tag(plain_field_name_for(base, attribute), + options_for_select(metadata.values, metadata.value), + **field_options(attribute, metadata), include_blank: t('.empty')) + = render 'posts/attribute_feedback', + post: post, attribute: attribute, metadata: metadata From 6e3408777790211724ef79b91dfc50ca7401086f Mon Sep 17 00:00:00 2001 From: f Date: Sat, 8 Apr 2023 17:28:45 -0300 Subject: [PATCH 239/699] fixup! fix: editar desde el panel --- app/views/posts/attribute_ro/_has_one.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/posts/attribute_ro/_has_one.haml b/app/views/posts/attribute_ro/_has_one.haml index c7e06be8..425e659e 100644 --- a/app/views/posts/attribute_ro/_has_one.haml +++ b/app/views/posts/attribute_ro/_has_one.haml @@ -1,6 +1,6 @@ %tr{ id: attribute } %th= post_label_t(attribute, post: post) %td{ dir: dir, lang: locale } - - p = metadata.belongs_to + - p = metadata.has_one - if p = link_to p.title.value, site_post_path(site, p.id) From a053fe6239a2e3258b60cef96cdf6bb14c7bbf1a Mon Sep 17 00:00:00 2001 From: f Date: Sat, 8 Apr 2023 17:36:13 -0300 Subject: [PATCH 240/699] fix: no comportarse como un array --- app/models/metadata_has_one.rb | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/app/models/metadata_has_one.rb b/app/models/metadata_has_one.rb index 38911e1d..686afc6e 100644 --- a/app/models/metadata_has_one.rb +++ b/app/models/metadata_has_one.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true -class MetadataHasOne < MetadataHasMany +class MetadataHasOne < MetadataBelongsTo def had_one return default_value if value_was.blank? @@ -13,11 +13,18 @@ class MetadataHasOne < MetadataHasMany posts.find(uuid: value) end - def had_many; end - def has_many; end + def belonged_to; end + def belongs_to; end def save - super + # XXX: DRY + if !changed? + self[:value] = document_value + + return true + end + + self[:value] = sanitize value return true unless changed? return true unless inverse? @@ -31,4 +38,8 @@ class MetadataHasOne < MetadataHasMany def related_methods @related_methods ||= %i[has_one had_one].freeze end + + def indexable_values + has_one&.title&.value + end end From b09d051de19a9b8ea8a3063e079be30062e72d40 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 8 Apr 2023 17:42:09 -0300 Subject: [PATCH 241/699] fix: sintaxis correcta para encontrar uno solo --- app/models/metadata_has_one.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/models/metadata_has_one.rb b/app/models/metadata_has_one.rb index 686afc6e..41b2f7cd 100644 --- a/app/models/metadata_has_one.rb +++ b/app/models/metadata_has_one.rb @@ -4,13 +4,13 @@ class MetadataHasOne < MetadataBelongsTo def had_one return default_value if value_was.blank? - posts.find(uuid: value) + posts.find(value, uuid: true) end def has_one return default_value if value.blank? - posts.find(uuid: value) + posts.find(value, uuid: true) end def belonged_to; end From ce7c7ffd96d07a421c9f0537cb161a71ac4265e4 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 8 Apr 2023 17:45:02 -0300 Subject: [PATCH 242/699] fix: reusar belongs to --- app/models/metadata_has_one.rb | 20 ++------------------ 1 file changed, 2 insertions(+), 18 deletions(-) diff --git a/app/models/metadata_has_one.rb b/app/models/metadata_has_one.rb index 41b2f7cd..239bf2e8 100644 --- a/app/models/metadata_has_one.rb +++ b/app/models/metadata_has_one.rb @@ -1,20 +1,8 @@ # frozen_string_literal: true class MetadataHasOne < MetadataBelongsTo - def had_one - return default_value if value_was.blank? - - posts.find(value, uuid: true) - end - - def has_one - return default_value if value.blank? - - posts.find(value, uuid: true) - end - - def belonged_to; end - def belongs_to; end + alias has_one belongs_to + alias had_one belonged_to def save # XXX: DRY @@ -38,8 +26,4 @@ class MetadataHasOne < MetadataBelongsTo def related_methods @related_methods ||= %i[has_one had_one].freeze end - - def indexable_values - has_one&.title&.value - end end From 72dd7e66ad7abac6924d1eaa2dfd70be755336fd Mon Sep 17 00:00:00 2001 From: f Date: Sat, 8 Apr 2023 17:50:49 -0300 Subject: [PATCH 243/699] fix: poder guardar --- app/models/metadata_belongs_to.rb | 2 +- app/models/metadata_has_one.rb | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/models/metadata_belongs_to.rb b/app/models/metadata_belongs_to.rb index e1b84438..8726f1b1 100644 --- a/app/models/metadata_belongs_to.rb +++ b/app/models/metadata_belongs_to.rb @@ -41,7 +41,7 @@ class MetadataBelongsTo < MetadataRelatedPosts # anterior if belonged_to.present? if belonged_to[inverse].respond_to? :has_one - belonged_to[inverse].value = nil + belonged_to[inverse].value = '' else belonged_to[inverse].value = belonged_to[inverse].value.reject do |rej| rej == post.uuid.value diff --git a/app/models/metadata_has_one.rb b/app/models/metadata_has_one.rb index 239bf2e8..93aaba50 100644 --- a/app/models/metadata_has_one.rb +++ b/app/models/metadata_has_one.rb @@ -17,8 +17,8 @@ class MetadataHasOne < MetadataBelongsTo return true unless changed? return true unless inverse? - had_one&.value = nil - has_one&.value = post.uuid.value + had_one[inverse]&.value = '' + has_one[inverse]&.value = post.uuid.value true end From 29bae31e08b414f568cf862e27c6ed3d571a3e36 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 8 Apr 2023 17:52:38 -0300 Subject: [PATCH 244/699] fix: quizas viene vacio --- app/models/metadata_has_one.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/models/metadata_has_one.rb b/app/models/metadata_has_one.rb index 93aaba50..ae5c6617 100644 --- a/app/models/metadata_has_one.rb +++ b/app/models/metadata_has_one.rb @@ -17,8 +17,8 @@ class MetadataHasOne < MetadataBelongsTo return true unless changed? return true unless inverse? - had_one[inverse]&.value = '' - has_one[inverse]&.value = post.uuid.value + had_one&[inverse]&.value = '' + has_one&[inverse]&.value = post.uuid.value true end From e8c659be837b2435598794d55ff757aa12741c2c Mon Sep 17 00:00:00 2001 From: f Date: Sat, 8 Apr 2023 17:54:07 -0300 Subject: [PATCH 245/699] fixup! fix: quizas viene vacio --- app/models/metadata_has_one.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/models/metadata_has_one.rb b/app/models/metadata_has_one.rb index ae5c6617..d1705e7d 100644 --- a/app/models/metadata_has_one.rb +++ b/app/models/metadata_has_one.rb @@ -17,8 +17,8 @@ class MetadataHasOne < MetadataBelongsTo return true unless changed? return true unless inverse? - had_one&[inverse]&.value = '' - has_one&[inverse]&.value = post.uuid.value + had_one[inverse]&.value = '' if had_one + has_one[inverse]&.value = post.uuid.value if has_one true end From bdd5e8bbc69fa4f3d23c18579109f1c5571a9b71 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Sun, 9 Apr 2023 00:55:33 +0000 Subject: [PATCH 246/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/css/application-6c9ed06e.css | 3 +++ public/packs/css/application-6c9ed06e.css.br | 3 +++ public/packs/css/application-6c9ed06e.css.gz | 3 +++ public/packs/css/application-f7071aa6.css | 3 --- public/packs/css/application-f7071aa6.css.br | 3 --- public/packs/css/application-f7071aa6.css.gz | 3 --- public/packs/js/application-06accf355bb87d785edf.js | 3 --- public/packs/js/application-06accf355bb87d785edf.js.br | 3 --- public/packs/js/application-06accf355bb87d785edf.js.gz | 3 --- public/packs/js/application-06accf355bb87d785edf.js.map | 3 --- public/packs/js/application-06accf355bb87d785edf.js.map.br | 3 --- public/packs/js/application-06accf355bb87d785edf.js.map.gz | 3 --- public/packs/js/application-cdec7ae77146d3468c55.js | 3 +++ ...SE.txt => application-cdec7ae77146d3468c55.js.LICENSE.txt} | 0 public/packs/js/application-cdec7ae77146d3468c55.js.br | 3 +++ public/packs/js/application-cdec7ae77146d3468c55.js.gz | 3 +++ public/packs/js/application-cdec7ae77146d3468c55.js.map | 3 +++ public/packs/js/application-cdec7ae77146d3468c55.js.map.br | 3 +++ public/packs/js/application-cdec7ae77146d3468c55.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 2 +- 23 files changed, 32 insertions(+), 32 deletions(-) create mode 100644 public/packs/css/application-6c9ed06e.css create mode 100644 public/packs/css/application-6c9ed06e.css.br create mode 100644 public/packs/css/application-6c9ed06e.css.gz delete mode 100644 public/packs/css/application-f7071aa6.css delete mode 100644 public/packs/css/application-f7071aa6.css.br delete mode 100644 public/packs/css/application-f7071aa6.css.gz delete mode 100644 public/packs/js/application-06accf355bb87d785edf.js delete mode 100644 public/packs/js/application-06accf355bb87d785edf.js.br delete mode 100644 public/packs/js/application-06accf355bb87d785edf.js.gz delete mode 100644 public/packs/js/application-06accf355bb87d785edf.js.map delete mode 100644 public/packs/js/application-06accf355bb87d785edf.js.map.br delete mode 100644 public/packs/js/application-06accf355bb87d785edf.js.map.gz create mode 100644 public/packs/js/application-cdec7ae77146d3468c55.js rename public/packs/js/{application-06accf355bb87d785edf.js.LICENSE.txt => application-cdec7ae77146d3468c55.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-cdec7ae77146d3468c55.js.br create mode 100644 public/packs/js/application-cdec7ae77146d3468c55.js.gz create mode 100644 public/packs/js/application-cdec7ae77146d3468c55.js.map create mode 100644 public/packs/js/application-cdec7ae77146d3468c55.js.map.br create mode 100644 public/packs/js/application-cdec7ae77146d3468c55.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 34ef28ae..6e89e83d 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9a7d104962d22dee1c617980daf7fb0825a6f9a96fe8bfc102702a6b75dc9687 +oid sha256:9b4a5b7f3842e89210be81c530f7999042ae61cf9dd0d1f51a1eaccc09795ae1 size 14525 diff --git a/public/packs/css/application-6c9ed06e.css b/public/packs/css/application-6c9ed06e.css new file mode 100644 index 00000000..7ecd1b5c --- /dev/null +++ b/public/packs/css/application-6c9ed06e.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:863e9a1c3924c26753de078209212ee8711c2fd66daab197437a1b5f5f87dcd1 +size 48959 diff --git a/public/packs/css/application-6c9ed06e.css.br b/public/packs/css/application-6c9ed06e.css.br new file mode 100644 index 00000000..300518dc --- /dev/null +++ b/public/packs/css/application-6c9ed06e.css.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83b701c14f54256da97dbe1897ce148b6e2a42da6b40f282afa57b73f0780010 +size 9951 diff --git a/public/packs/css/application-6c9ed06e.css.gz b/public/packs/css/application-6c9ed06e.css.gz new file mode 100644 index 00000000..60e8092f --- /dev/null +++ b/public/packs/css/application-6c9ed06e.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8073858fa59b475b9c46a2bad2baa29fe9dacb74f165ce1f270c044117ccc43c +size 12276 diff --git a/public/packs/css/application-f7071aa6.css b/public/packs/css/application-f7071aa6.css deleted file mode 100644 index a6c0f681..00000000 --- a/public/packs/css/application-f7071aa6.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:77503a8087d894a65d4eb10e7df9bfa0a73434227b51ce89e2fc9ef1e1fd9b3e -size 48868 diff --git a/public/packs/css/application-f7071aa6.css.br b/public/packs/css/application-f7071aa6.css.br deleted file mode 100644 index c27d398f..00000000 --- a/public/packs/css/application-f7071aa6.css.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:35da80be4fcd0557bf262418b4dafa47d6ed1c0e8ad3f62b3080087bdf5eee00 -size 9902 diff --git a/public/packs/css/application-f7071aa6.css.gz b/public/packs/css/application-f7071aa6.css.gz deleted file mode 100644 index 953e0c72..00000000 --- a/public/packs/css/application-f7071aa6.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7f24225fb1364ce58df598a525151d0330d7d442bc269dc1d7e5f7bc81344adc -size 12230 diff --git a/public/packs/js/application-06accf355bb87d785edf.js b/public/packs/js/application-06accf355bb87d785edf.js deleted file mode 100644 index 01c76c03..00000000 --- a/public/packs/js/application-06accf355bb87d785edf.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d3bc4350cd84e60a83037c5c360943de622476ec6ed02f49029120f3144713c3 -size 1461899 diff --git a/public/packs/js/application-06accf355bb87d785edf.js.br b/public/packs/js/application-06accf355bb87d785edf.js.br deleted file mode 100644 index 648090a5..00000000 --- a/public/packs/js/application-06accf355bb87d785edf.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5fcbb146132a175ef9d05adc8e7e6c8b3f6044d8457fab01d223d3f4a0f8e2f5 -size 319607 diff --git a/public/packs/js/application-06accf355bb87d785edf.js.gz b/public/packs/js/application-06accf355bb87d785edf.js.gz deleted file mode 100644 index 756783a2..00000000 --- a/public/packs/js/application-06accf355bb87d785edf.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:82083896e49648eb7c15b77d5215e1e5c7ecb3a261e79e50605d563d1f0a2da0 -size 424027 diff --git a/public/packs/js/application-06accf355bb87d785edf.js.map b/public/packs/js/application-06accf355bb87d785edf.js.map deleted file mode 100644 index adceaee3..00000000 --- a/public/packs/js/application-06accf355bb87d785edf.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9679f944908fdc831625dde1e17273f8139f8b469a8811f2efbb60264f804318 -size 5731213 diff --git a/public/packs/js/application-06accf355bb87d785edf.js.map.br b/public/packs/js/application-06accf355bb87d785edf.js.map.br deleted file mode 100644 index 5bbeadda..00000000 --- a/public/packs/js/application-06accf355bb87d785edf.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f1c511999d83976966009262dab19c1f28f1ed6937a949bd151f501f75c131c4 -size 1228864 diff --git a/public/packs/js/application-06accf355bb87d785edf.js.map.gz b/public/packs/js/application-06accf355bb87d785edf.js.map.gz deleted file mode 100644 index 3bedc5a5..00000000 --- a/public/packs/js/application-06accf355bb87d785edf.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e5679527936827ef05d9b9227f43032eadfa150f70dfdbc9cd51ecbd643a5576 -size 1519778 diff --git a/public/packs/js/application-cdec7ae77146d3468c55.js b/public/packs/js/application-cdec7ae77146d3468c55.js new file mode 100644 index 00000000..7f33b67a --- /dev/null +++ b/public/packs/js/application-cdec7ae77146d3468c55.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5e18ca7bddf9f67111c1b0fa959b626c37160c0fa4ee2b90fe7b01f57afe468 +size 1462651 diff --git a/public/packs/js/application-06accf355bb87d785edf.js.LICENSE.txt b/public/packs/js/application-cdec7ae77146d3468c55.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-06accf355bb87d785edf.js.LICENSE.txt rename to public/packs/js/application-cdec7ae77146d3468c55.js.LICENSE.txt diff --git a/public/packs/js/application-cdec7ae77146d3468c55.js.br b/public/packs/js/application-cdec7ae77146d3468c55.js.br new file mode 100644 index 00000000..63dc9a5f --- /dev/null +++ b/public/packs/js/application-cdec7ae77146d3468c55.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9d046ee351b11bfefd059b53d693c2995230f9290c5d03a0d87c4973c2b0e57 +size 320196 diff --git a/public/packs/js/application-cdec7ae77146d3468c55.js.gz b/public/packs/js/application-cdec7ae77146d3468c55.js.gz new file mode 100644 index 00000000..6835e479 --- /dev/null +++ b/public/packs/js/application-cdec7ae77146d3468c55.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b1ad9b1c73ed840ec52903c2aa718b5ca38be2c91a487ef3c4e54ea363abbb2 +size 424533 diff --git a/public/packs/js/application-cdec7ae77146d3468c55.js.map b/public/packs/js/application-cdec7ae77146d3468c55.js.map new file mode 100644 index 00000000..6877cfb4 --- /dev/null +++ b/public/packs/js/application-cdec7ae77146d3468c55.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f996d730e27024f45d5283d550a078caab8a5e7ea68bb7ac28b88aa7e25cc08 +size 5732310 diff --git a/public/packs/js/application-cdec7ae77146d3468c55.js.map.br b/public/packs/js/application-cdec7ae77146d3468c55.js.map.br new file mode 100644 index 00000000..fdc51e64 --- /dev/null +++ b/public/packs/js/application-cdec7ae77146d3468c55.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bae4dc99b541fbb77790116efd3d00735733fa5e1eba685da46875d7f134d14f +size 1229952 diff --git a/public/packs/js/application-cdec7ae77146d3468c55.js.map.gz b/public/packs/js/application-cdec7ae77146d3468c55.js.map.gz new file mode 100644 index 00000000..fbbbcde2 --- /dev/null +++ b/public/packs/js/application-cdec7ae77146d3468c55.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41971b2691edbebc3e9e767b1fd80aa97827dabec63ee390bfdadc57b0d10bc5 +size 1520472 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 9ec10b59..3a4250db 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:29615d188ee8f6e4d63cd2618b6cf7fdc3618286866cf56e1748404d52847322 +oid sha256:fbc42958762db81b16a673e4df4b60e3b1feff1ac6740378d1a595e8ec07130f size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 41d802c2..e65415ef 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:930d2421cd4a6adae2256e54ca4826ca7bb0bdb477a6df09163300df2281296f -size 320 +oid sha256:aa8030d7bc50e462edac18a0e1d15ff0c70222e1e8d2d5f14b6f0cfaeddc451e +size 319 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 4d8cbf0f..06524b1c 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d1816a990a1e990ef02d368133f2e588ff31aa73c98e96e63b9b479c22d2eaff +oid sha256:605a74aa3deb8c8bfe988319adc4e8b435aab12f596d3be5680d7c04f369fbac size 365 From 22202a6ebf58acb968d2c858007b2615d1144fe4 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Sun, 9 Apr 2023 01:04:06 +0000 Subject: [PATCH 247/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-575d9c3a7a181d77f95b.js | 3 +++ ...SE.txt => application-575d9c3a7a181d77f95b.js.LICENSE.txt} | 0 public/packs/js/application-575d9c3a7a181d77f95b.js.br | 3 +++ public/packs/js/application-575d9c3a7a181d77f95b.js.gz | 3 +++ public/packs/js/application-575d9c3a7a181d77f95b.js.map | 3 +++ public/packs/js/application-575d9c3a7a181d77f95b.js.map.br | 3 +++ public/packs/js/application-575d9c3a7a181d77f95b.js.map.gz | 3 +++ public/packs/js/application-cdec7ae77146d3468c55.js | 3 --- public/packs/js/application-cdec7ae77146d3468c55.js.br | 3 --- public/packs/js/application-cdec7ae77146d3468c55.js.gz | 3 --- public/packs/js/application-cdec7ae77146d3468c55.js.map | 3 --- public/packs/js/application-cdec7ae77146d3468c55.js.map.br | 3 --- public/packs/js/application-cdec7ae77146d3468c55.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 2 +- public/packs/manifest.json.gz | 4 ++-- 17 files changed, 23 insertions(+), 23 deletions(-) create mode 100644 public/packs/js/application-575d9c3a7a181d77f95b.js rename public/packs/js/{application-cdec7ae77146d3468c55.js.LICENSE.txt => application-575d9c3a7a181d77f95b.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-575d9c3a7a181d77f95b.js.br create mode 100644 public/packs/js/application-575d9c3a7a181d77f95b.js.gz create mode 100644 public/packs/js/application-575d9c3a7a181d77f95b.js.map create mode 100644 public/packs/js/application-575d9c3a7a181d77f95b.js.map.br create mode 100644 public/packs/js/application-575d9c3a7a181d77f95b.js.map.gz delete mode 100644 public/packs/js/application-cdec7ae77146d3468c55.js delete mode 100644 public/packs/js/application-cdec7ae77146d3468c55.js.br delete mode 100644 public/packs/js/application-cdec7ae77146d3468c55.js.gz delete mode 100644 public/packs/js/application-cdec7ae77146d3468c55.js.map delete mode 100644 public/packs/js/application-cdec7ae77146d3468c55.js.map.br delete mode 100644 public/packs/js/application-cdec7ae77146d3468c55.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 6e89e83d..6bcf6389 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9b4a5b7f3842e89210be81c530f7999042ae61cf9dd0d1f51a1eaccc09795ae1 +oid sha256:d79638dac3cebeec25a34f980fd075ea822cb71aba694fb2e5582c2cdc0311be size 14525 diff --git a/public/packs/js/application-575d9c3a7a181d77f95b.js b/public/packs/js/application-575d9c3a7a181d77f95b.js new file mode 100644 index 00000000..9f4eded4 --- /dev/null +++ b/public/packs/js/application-575d9c3a7a181d77f95b.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fedabdb992f541d9f9cecca53ab595da08cf634314ebed3a3d493d430af161ca +size 1462651 diff --git a/public/packs/js/application-cdec7ae77146d3468c55.js.LICENSE.txt b/public/packs/js/application-575d9c3a7a181d77f95b.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-cdec7ae77146d3468c55.js.LICENSE.txt rename to public/packs/js/application-575d9c3a7a181d77f95b.js.LICENSE.txt diff --git a/public/packs/js/application-575d9c3a7a181d77f95b.js.br b/public/packs/js/application-575d9c3a7a181d77f95b.js.br new file mode 100644 index 00000000..5ffef7d2 --- /dev/null +++ b/public/packs/js/application-575d9c3a7a181d77f95b.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1bcbfe4a977bec671406fde5e4bbcc82d22a64b3af4e5772952338a5855b58aa +size 319930 diff --git a/public/packs/js/application-575d9c3a7a181d77f95b.js.gz b/public/packs/js/application-575d9c3a7a181d77f95b.js.gz new file mode 100644 index 00000000..94a8caa4 --- /dev/null +++ b/public/packs/js/application-575d9c3a7a181d77f95b.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:092eb6a51147003e2b3f7aebe4c67285612cf52944449ed8f891745f4568fc76 +size 424534 diff --git a/public/packs/js/application-575d9c3a7a181d77f95b.js.map b/public/packs/js/application-575d9c3a7a181d77f95b.js.map new file mode 100644 index 00000000..aeaaa60e --- /dev/null +++ b/public/packs/js/application-575d9c3a7a181d77f95b.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b8672489f1cc7f7e0df008015e082807df8966a4ebe0a11d18a4707efb605c3 +size 5732325 diff --git a/public/packs/js/application-575d9c3a7a181d77f95b.js.map.br b/public/packs/js/application-575d9c3a7a181d77f95b.js.map.br new file mode 100644 index 00000000..bf2d9e9f --- /dev/null +++ b/public/packs/js/application-575d9c3a7a181d77f95b.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b058c2f9ec082be1f95b21df94c5a35127467cfc7a8bf90694a681dc8a7bcb3 +size 1230414 diff --git a/public/packs/js/application-575d9c3a7a181d77f95b.js.map.gz b/public/packs/js/application-575d9c3a7a181d77f95b.js.map.gz new file mode 100644 index 00000000..5e814e8d --- /dev/null +++ b/public/packs/js/application-575d9c3a7a181d77f95b.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9bbc34830570e52d3f94a8eaf30515ba8a2487d0239a1af561e1b0b9b311570 +size 1520483 diff --git a/public/packs/js/application-cdec7ae77146d3468c55.js b/public/packs/js/application-cdec7ae77146d3468c55.js deleted file mode 100644 index 7f33b67a..00000000 --- a/public/packs/js/application-cdec7ae77146d3468c55.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c5e18ca7bddf9f67111c1b0fa959b626c37160c0fa4ee2b90fe7b01f57afe468 -size 1462651 diff --git a/public/packs/js/application-cdec7ae77146d3468c55.js.br b/public/packs/js/application-cdec7ae77146d3468c55.js.br deleted file mode 100644 index 63dc9a5f..00000000 --- a/public/packs/js/application-cdec7ae77146d3468c55.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c9d046ee351b11bfefd059b53d693c2995230f9290c5d03a0d87c4973c2b0e57 -size 320196 diff --git a/public/packs/js/application-cdec7ae77146d3468c55.js.gz b/public/packs/js/application-cdec7ae77146d3468c55.js.gz deleted file mode 100644 index 6835e479..00000000 --- a/public/packs/js/application-cdec7ae77146d3468c55.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1b1ad9b1c73ed840ec52903c2aa718b5ca38be2c91a487ef3c4e54ea363abbb2 -size 424533 diff --git a/public/packs/js/application-cdec7ae77146d3468c55.js.map b/public/packs/js/application-cdec7ae77146d3468c55.js.map deleted file mode 100644 index 6877cfb4..00000000 --- a/public/packs/js/application-cdec7ae77146d3468c55.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7f996d730e27024f45d5283d550a078caab8a5e7ea68bb7ac28b88aa7e25cc08 -size 5732310 diff --git a/public/packs/js/application-cdec7ae77146d3468c55.js.map.br b/public/packs/js/application-cdec7ae77146d3468c55.js.map.br deleted file mode 100644 index fdc51e64..00000000 --- a/public/packs/js/application-cdec7ae77146d3468c55.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bae4dc99b541fbb77790116efd3d00735733fa5e1eba685da46875d7f134d14f -size 1229952 diff --git a/public/packs/js/application-cdec7ae77146d3468c55.js.map.gz b/public/packs/js/application-cdec7ae77146d3468c55.js.map.gz deleted file mode 100644 index fbbbcde2..00000000 --- a/public/packs/js/application-cdec7ae77146d3468c55.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:41971b2691edbebc3e9e767b1fd80aa97827dabec63ee390bfdadc57b0d10bc5 -size 1520472 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 3a4250db..4be1d47b 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fbc42958762db81b16a673e4df4b60e3b1feff1ac6740378d1a595e8ec07130f +oid sha256:89762bbe3de612055dbc5d521cf37fb3b2fd5aaabb463437ff8a12447866234b size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index e65415ef..28d1ba27 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:aa8030d7bc50e462edac18a0e1d15ff0c70222e1e8d2d5f14b6f0cfaeddc451e +oid sha256:6315d1d78ac1cf484902bfb374b996c7ad52d56e3996dcd4ca3aa17708e3b70a size 319 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 06524b1c..c9e81c1e 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:605a74aa3deb8c8bfe988319adc4e8b435aab12f596d3be5680d7c04f369fbac -size 365 +oid sha256:ac3ad2c805b6b42d524ee05b99cd185bbe7bdbf43ffa31f1575df5afb9d939ac +size 366 From 4c49926e4cc8199cbc0cd9e306eaadc12613f0a6 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 25 Mar 2023 14:50:36 -0300 Subject: [PATCH 248/699] feat: implementar un servicio liviano de git-lfs #9361 --- app/services/lfs_object_service.rb | 64 ++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 app/services/lfs_object_service.rb diff --git a/app/services/lfs_object_service.rb b/app/services/lfs_object_service.rb new file mode 100644 index 00000000..65db113d --- /dev/null +++ b/app/services/lfs_object_service.rb @@ -0,0 +1,64 @@ +# frozen_string_literal: true + +# Representa un objeto git LFS +class LfsObjectService + attr_reader :site, :blob, :usuarie + + # @param :site [Site] + # @param :blob [ActiveStorage::Blob] + def initialize(site:, blob:, usuarie:) + @site = site + @blob = blob + @usuarie = usuarie + end + + def process + # Crear el directorio + FileUtils.mkdir_p(File.dirname(object_path)) + + # Mover el archivo + FileUtils.mv(path, object_path) unless File.exist? object_path + + # Crear el pointer + Site::Writer.new(site: site, file: path, content: pointer).save + + # Commitear el pointer + site.repository.commit(file: path, usuarie: usuarie, message: File.basename(path)) + + # Eliminar el pointer + FileUtils.rm(path) + + # Hacer link duro del objeto al archivo + FileUtils.ln(object_path, path) + end + + # @return [String] + def path + @path ||= blob.service.path_for(blob.key) + end + + # @return [String] + def digest + @digest ||= Digest::SHA256.file(path).hexdigest + end + + # @return [String] + def object_path + @git_lfs_object_path ||= File.join(site.path, '.git', 'lfs', 'objects', digest[0..1], digest[2..3], digest) + end + + # @return [Integer] + def size + @size ||= File.size(File.exist?(object_path) ? object_path : path) + end + + # @return [String] + def pointer + @pointer ||= + <<~POINTER + version https://git-lfs.github.com/spec/v1 + oid sha256:#{digest} + size #{size} + POINTER + end +end From fc86f4829fcb596ca0d20936dec19d872e8b0c34 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 25 Mar 2023 15:22:54 -0300 Subject: [PATCH 249/699] feat: commitear el archivo en lfs al subirlo --- app/lib/active_storage/service/jekyll_service.rb | 15 +++++++++------ app/services/lfs_object_service.rb | 2 +- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/app/lib/active_storage/service/jekyll_service.rb b/app/lib/active_storage/service/jekyll_service.rb index 88ffa83c..6763ee0d 100644 --- a/app/lib/active_storage/service/jekyll_service.rb +++ b/app/lib/active_storage/service/jekyll_service.rb @@ -4,11 +4,6 @@ module ActiveStorage class Service # Sube los archivos a cada repositorio y los agrega al LFS de su # repositorio git. - # - # @todo: Implementar LFS. No nos gusta mucho la idea porque duplica - # el espacio en disco, pero es la única forma que tenemos (hasta que - # implementemos IPFS) para poder transferir los archivos junto con el - # sitio. class JekyllService < Service::DiskService # Genera un servicio para un sitio determinado # @@ -27,7 +22,10 @@ module ActiveStorage # @param :checksum [String] def upload(key, io, checksum: nil, **) instrument :upload, key: key, checksum: checksum do - IO.copy_stream(io, make_path_for(key)) unless exist?(key) + unless exist?(key) + IO.copy_stream(io, make_path_for(key)) + LfsObjectService.new(site: site, usuarie: current_usuarie, blob: blob).process + end ensure_integrity_of(key, checksum) if checksum end end @@ -91,6 +89,11 @@ module ActiveStorage def path_for(key) File.join root, folder_for(key), filename_for(key) end + + # @return [Site] + def site + @site ||= Site.find_by_name(File.basename(root)) + end end end end diff --git a/app/services/lfs_object_service.rb b/app/services/lfs_object_service.rb index 65db113d..61775e12 100644 --- a/app/services/lfs_object_service.rb +++ b/app/services/lfs_object_service.rb @@ -44,7 +44,7 @@ class LfsObjectService # @return [String] def object_path - @git_lfs_object_path ||= File.join(site.path, '.git', 'lfs', 'objects', digest[0..1], digest[2..3], digest) + @object_path ||= File.join(site.path, '.git', 'lfs', 'objects', digest[0..1], digest[2..3], digest) end # @return [Integer] From 8c0ae30d754ba91ba409bfcf531873960019556d Mon Sep 17 00:00:00 2001 From: f Date: Sat, 25 Mar 2023 15:29:49 -0300 Subject: [PATCH 250/699] =?UTF-8?q?fix:=20no=20podemos=20saber=20qui=C3=A9?= =?UTF-8?q?n=20subi=C3=B3=20el=20archivo=20todav=C3=ADa?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/lib/active_storage/service/jekyll_service.rb | 2 +- app/services/lfs_object_service.rb | 11 +++++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/app/lib/active_storage/service/jekyll_service.rb b/app/lib/active_storage/service/jekyll_service.rb index 6763ee0d..f399f440 100644 --- a/app/lib/active_storage/service/jekyll_service.rb +++ b/app/lib/active_storage/service/jekyll_service.rb @@ -24,7 +24,7 @@ module ActiveStorage instrument :upload, key: key, checksum: checksum do unless exist?(key) IO.copy_stream(io, make_path_for(key)) - LfsObjectService.new(site: site, usuarie: current_usuarie, blob: blob).process + LfsObjectService.new(site: site, blob: blob).process end ensure_integrity_of(key, checksum) if checksum end diff --git a/app/services/lfs_object_service.rb b/app/services/lfs_object_service.rb index 61775e12..bb62301d 100644 --- a/app/services/lfs_object_service.rb +++ b/app/services/lfs_object_service.rb @@ -2,14 +2,13 @@ # Representa un objeto git LFS class LfsObjectService - attr_reader :site, :blob, :usuarie + attr_reader :site, :blob # @param :site [Site] # @param :blob [ActiveStorage::Blob] - def initialize(site:, blob:, usuarie:) + def initialize(site:, blob:) @site = site @blob = blob - @usuarie = usuarie end def process @@ -23,7 +22,7 @@ class LfsObjectService Site::Writer.new(site: site, file: path, content: pointer).save # Commitear el pointer - site.repository.commit(file: path, usuarie: usuarie, message: File.basename(path)) + site.repository.commit(file: path, usuarie: author, message: File.basename(path)) # Eliminar el pointer FileUtils.rm(path) @@ -61,4 +60,8 @@ class LfsObjectService size #{size} POINTER end + + def author + @author ||= GitAuthor.new email: "disk_service@#{Site.domain}", name: 'DiskService' + end end From d026204497b329d8aa2c6288b647c983a7f3cb4c Mon Sep 17 00:00:00 2001 From: f Date: Sat, 25 Mar 2023 15:34:47 -0300 Subject: [PATCH 251/699] fix: encontrar el blob para este servicio --- app/lib/active_storage/service/jekyll_service.rb | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/app/lib/active_storage/service/jekyll_service.rb b/app/lib/active_storage/service/jekyll_service.rb index f399f440..e6c5fda6 100644 --- a/app/lib/active_storage/service/jekyll_service.rb +++ b/app/lib/active_storage/service/jekyll_service.rb @@ -24,7 +24,7 @@ module ActiveStorage instrument :upload, key: key, checksum: checksum do unless exist?(key) IO.copy_stream(io, make_path_for(key)) - LfsObjectService.new(site: site, blob: blob).process + LfsObjectService.new(site: site, blob: blob_for(key)).process end ensure_integrity_of(key, checksum) if checksum end @@ -77,7 +77,7 @@ module ActiveStorage # @param :key [String] # @return [String] def filename_for(key) - ActiveStorage::Blob.where(key: key).limit(1).pluck(:filename).first.tap do |filename| + blob_for(key).filename.to_s.tap do |filename| raise ArgumentError, "Filename for key #{key} is blank" if filename.blank? end end @@ -92,7 +92,11 @@ module ActiveStorage # @return [Site] def site - @site ||= Site.find_by_name(File.basename(root)) + @site ||= Site.find_by_name(name) + end + + def blob_for(key) + ActiveStorage::Blob.find_by(key: key, service_name: name) end end end From 3514fb026e825b4f9c87a8168a3588648fc3ba97 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 3 Apr 2023 12:44:09 -0300 Subject: [PATCH 252/699] fix: es necesario el arbol actual para ignorar cambios en paralelo cuando estamos guardando un post con archivos subidos y posts relacionados, al no usar el arbol actual se pisaban los archivos modificados y el repositorio quedaba en un estado inconsistente. --- app/models/site/repository.rb | 3 +++ 1 file changed, 3 insertions(+) diff --git a/app/models/site/repository.rb b/app/models/site/repository.rb index f63288d4..62e4c45e 100644 --- a/app/models/site/repository.rb +++ b/app/models/site/repository.rb @@ -117,6 +117,9 @@ class Site def commit(file:, usuarie:, message:, remove: false) file = [file] unless file.respond_to? :each + # Cargar el árbol actual + rugged.index.read_tree rugged.head.target.tree + file.each do |f| remove ? rm(f) : add(f) end From 9ed22fb065d9c7367429b9034e298d6a9b4e0774 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 10 Apr 2023 18:06:01 -0300 Subject: [PATCH 253/699] =?UTF-8?q?fix:=20verificar=20que=20haya=20una=20r?= =?UTF-8?q?elaci=C3=B3n=20#13005?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/metadata_belongs_to.rb | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/app/models/metadata_belongs_to.rb b/app/models/metadata_belongs_to.rb index 8726f1b1..17ecaee8 100644 --- a/app/models/metadata_belongs_to.rb +++ b/app/models/metadata_belongs_to.rb @@ -50,10 +50,12 @@ class MetadataBelongsTo < MetadataRelatedPosts end # No duplicar las relaciones - if belongs_to[inverse].respond_to? :has_one - belongs_to[inverse].value = post.uuid.value - else - belongs_to[inverse].value = (belongs_to[inverse].value.dup << post.uuid.value) unless belongs_to.blank? || included? + if belongs_to.present? + if belongs_to[inverse].respond_to? :has_one + belongs_to[inverse].value = post.uuid.value + else + belongs_to[inverse].value = (belongs_to[inverse].value.dup << post.uuid.value) unless belongs_to.blank? || included? + end end true From fa7b45fb443f7cbc1b480e45ffdf43bb6c0d8a37 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 10 Apr 2023 19:32:03 -0300 Subject: [PATCH 254/699] chore: force ci --- app/assets/stylesheets/application.scss | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index d9364657..b7ec5256 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -549,3 +549,5 @@ $bezier: cubic-bezier(0.75, 0, 0.25, 1); } } } + +// force ci From 1c0009ce50b0c30aa9184ccf8f2496a8b269d843 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Mon, 10 Apr 2023 22:40:44 +0000 Subject: [PATCH 255/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- ...8bde7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css | 3 +++ ...e7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css.gz | 3 +++ ...37304832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css | 3 --- ...04832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css.gz | 3 --- 5 files changed, 7 insertions(+), 7 deletions(-) create mode 100644 public/assets/application-c2ce850628bde7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css create mode 100644 public/assets/application-c2ce850628bde7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css.gz delete mode 100644 public/assets/application-f7b1d770237304832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css delete mode 100644 public/assets/application-f7b1d770237304832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index ccb785f5..8fce6ab1 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2b669691cf823345dc71d7d9c1340587b1e589d206ecb24b19b7defe61114840 +oid sha256:91a3dc7e4a297ebf4b8c3af0fb500f56f317ee43861a33be2ee8eba6c06a809a size 14146 diff --git a/public/assets/application-c2ce850628bde7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css b/public/assets/application-c2ce850628bde7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css new file mode 100644 index 00000000..d1d65a7d --- /dev/null +++ b/public/assets/application-c2ce850628bde7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36553a3a1fa148c255d4b37145ae35c92b125e7272609f4e7174dad48e684ccb +size 235329 diff --git a/public/assets/application-c2ce850628bde7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css.gz b/public/assets/application-c2ce850628bde7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css.gz new file mode 100644 index 00000000..f0c6259c --- /dev/null +++ b/public/assets/application-c2ce850628bde7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:136984894578cacf94b9435219e966f2831f4c29401b64f737d8c598c1f6a020 +size 32656 diff --git a/public/assets/application-f7b1d770237304832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css b/public/assets/application-f7b1d770237304832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css deleted file mode 100644 index 44c21bce..00000000 --- a/public/assets/application-f7b1d770237304832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:01dd6c8846d74cb7808f6dbf52d8493fd5645d72c75202bcc372105146c56446 -size 231902 diff --git a/public/assets/application-f7b1d770237304832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css.gz b/public/assets/application-f7b1d770237304832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css.gz deleted file mode 100644 index ee668d14..00000000 --- a/public/assets/application-f7b1d770237304832e82646ff31fed14a368dee4ac8aaaee8b8bff1d9cda479f.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:43d0857b4a02acfbd192a3b44551446325c390ddbaf3bf504298cb712572ecf1 -size 32208 From 082df36ec3c018a37de1118cded9694f888019a3 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Tue, 11 Apr 2023 07:43:57 +0000 Subject: [PATCH 256/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 6bcf6389..18103be4 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d79638dac3cebeec25a34f980fd075ea822cb71aba694fb2e5582c2cdc0311be +oid sha256:4885aff8001347ab3a0d8008e7f8e7e0155cff09e540171036cf6b92ae3f33d6 size 14525 From f1a1f096273be1b10ad59a12b1365ee63cc57742 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Wed, 12 Apr 2023 15:37:56 +0000 Subject: [PATCH 257/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 4 ++-- ...cd0cf1af4e1bfd28d32c69caf3f11f464c5b5cef404487f864ae73.css | 3 +++ ...cf1af4e1bfd28d32c69caf3f11f464c5b5cef404487f864ae73.css.gz | 3 +++ 3 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 public/assets/dark-e2d0356b7ccd0cf1af4e1bfd28d32c69caf3f11f464c5b5cef404487f864ae73.css create mode 100644 public/assets/dark-e2d0356b7ccd0cf1af4e1bfd28d32c69caf3f11f464c5b5cef404487f864ae73.css.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 8fce6ab1..34ef28ae 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:91a3dc7e4a297ebf4b8c3af0fb500f56f317ee43861a33be2ee8eba6c06a809a -size 14146 +oid sha256:9a7d104962d22dee1c617980daf7fb0825a6f9a96fe8bfc102702a6b75dc9687 +size 14525 diff --git a/public/assets/dark-e2d0356b7ccd0cf1af4e1bfd28d32c69caf3f11f464c5b5cef404487f864ae73.css b/public/assets/dark-e2d0356b7ccd0cf1af4e1bfd28d32c69caf3f11f464c5b5cef404487f864ae73.css new file mode 100644 index 00000000..6a5c5339 --- /dev/null +++ b/public/assets/dark-e2d0356b7ccd0cf1af4e1bfd28d32c69caf3f11f464c5b5cef404487f864ae73.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2667cb03c8e57b2f19bb68f06f479054f73c61e2c355113230d5177a7029eed2 +size 64 diff --git a/public/assets/dark-e2d0356b7ccd0cf1af4e1bfd28d32c69caf3f11f464c5b5cef404487f864ae73.css.gz b/public/assets/dark-e2d0356b7ccd0cf1af4e1bfd28d32c69caf3f11f464c5b5cef404487f864ae73.css.gz new file mode 100644 index 00000000..bf193f11 --- /dev/null +++ b/public/assets/dark-e2d0356b7ccd0cf1af4e1bfd28d32c69caf3f11f464c5b5cef404487f864ae73.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:417fc7d2206a0bc83de0893b8512990e34439702fc3adf1902d4eb0af4b48241 +size 75 From 11f5b7375eb745c124fc41a1aa2c593d335ac393 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 12 Apr 2023 13:16:06 -0300 Subject: [PATCH 258/699] chore: force ci --- app/javascript/packs/application.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/javascript/packs/application.js b/app/javascript/packs/application.js index 492ca736..827d6a4b 100644 --- a/app/javascript/packs/application.js +++ b/app/javascript/packs/application.js @@ -23,3 +23,5 @@ import 'chartkick/chart.js' Rails.start() Turbolinks.start() ActiveStorage.start() + +// force ci From 1cd4b3775fa0ef106b9d6dbb90c2d7dcda87aa74 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 12 Apr 2023 13:28:51 -0300 Subject: [PATCH 259/699] Revert "chore: force ci" This reverts commit 11f5b7375eb745c124fc41a1aa2c593d335ac393. --- app/javascript/packs/application.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/app/javascript/packs/application.js b/app/javascript/packs/application.js index 827d6a4b..492ca736 100644 --- a/app/javascript/packs/application.js +++ b/app/javascript/packs/application.js @@ -23,5 +23,3 @@ import 'chartkick/chart.js' Rails.start() Turbolinks.start() ActiveStorage.start() - -// force ci From 26aa0dd534a01a5e82ae3ddd0fec9672053ff2d6 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 14 Apr 2023 19:40:40 -0300 Subject: [PATCH 260/699] chore: force ci --- app/javascript/packs/application.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/javascript/packs/application.js b/app/javascript/packs/application.js index 492ca736..827d6a4b 100644 --- a/app/javascript/packs/application.js +++ b/app/javascript/packs/application.js @@ -23,3 +23,5 @@ import 'chartkick/chart.js' Rails.start() Turbolinks.start() ActiveStorage.start() + +// force ci From 0cbe53451cc42b94ebe85ed7a0f023a9a9806b41 Mon Sep 17 00:00:00 2001 From: jazzari Date: Sat, 15 Apr 2023 12:02:43 -0300 Subject: [PATCH 261/699] fix: change in help how create a new site en & es #13089 --- config/locales/en.yml | 2 +- config/locales/es.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/config/locales/en.yml b/config/locales/en.yml index 2df50e7e..fad17e49 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -406,7 +406,7 @@ en: title: There were errors and we couldn't save your changes :( help: Please, look for the invalid fields to fix them help: - name: "This will be the host name for your site, ie. **example**.sutty.nl. Choose an expression up to 63 characters. It can contain only lowercase letters, numbers and dashes. It can't start or end with a dash, or be entirely composed of numbers." + name: "This will be the host name for your site, ie. **example**.sutty.nl. Choose an expression up to 63 characters. It can contain only lowercase letters, numbers and dashes, **and no spaces**. It can't start or end with a dash, or be entirely composed of numbers." title: 'The title can be anything you want' description: 'You site description that appears in search engines. Between 10 and 160 characters.' design: 'Select the design for your site. You can change it later. We add more designs from time to time!' diff --git a/config/locales/es.yml b/config/locales/es.yml index 687e8796..e973c715 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -412,7 +412,7 @@ es: title: Hubo errores y no pudimos guardar tus cambios :( help: Por favor, busca los campos marcados como no válidos para resolverlos help: - name: 'El nombre de tu sitio que formará parte de la dirección (**ejemplo**.sutty.nl). Solo puede contener hasta 63 letras minúsculas, números y guiones. No puede empezar ni terminar con guión, ni estar compuesto enteramente por números.' + name: 'El nombre de tu sitio que formará parte de la dirección (**ejemplo**.sutty.nl). Solo puede contener hasta 63 letras minúsculas, números y guiones, pero **sin espacios**. No puede empezar ni terminar con guión, ni estar compuesto enteramente por números.' title: 'El título de tu sitio puede ser lo que quieras.' description: 'La descripción del sitio, que saldrá en buscadores. Entre 10 y 160 caracteres.' design: 'Elegí el diseño que va a tener tu sitio aquí. Podés cambiarlo luego. De tanto en tanto vamos sumando diseños nuevos.' From 2f1504d1d0016deff9801985ac9b39643fced376 Mon Sep 17 00:00:00 2001 From: jazzari Date: Sat, 15 Apr 2023 12:13:27 -0300 Subject: [PATCH 262/699] fix: add puntuation to title in en.yml #13090 --- config/locales/en.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/locales/en.yml b/config/locales/en.yml index fad17e49..a198bdce 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -407,7 +407,7 @@ en: help: Please, look for the invalid fields to fix them help: name: "This will be the host name for your site, ie. **example**.sutty.nl. Choose an expression up to 63 characters. It can contain only lowercase letters, numbers and dashes, **and no spaces**. It can't start or end with a dash, or be entirely composed of numbers." - title: 'The title can be anything you want' + title: 'The title can be anything you want.' description: 'You site description that appears in search engines. Between 10 and 160 characters.' design: 'Select the design for your site. You can change it later. We add more designs from time to time!' licencia: 'Everything we publish has automatic copyright. This From a954b8ca427e296b5b6c237128b0067ddeab946b Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 12:23:43 -0300 Subject: [PATCH 263/699] =?UTF-8?q?ci:=20compilar=20assets=20tambi=C3=A9n?= =?UTF-8?q?=20en=20gitlab?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 .gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 00000000..41b504ac --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,33 @@ +image: "gitea.nulo.in/sutty/panel:3.14.10-2.7.8-panel.sutty.nl" +variables: + RAILS_ENV: "production" + LC_ALL: "C.UTF-8" +cache: + paths: + - "vendor/ruby" +assets: + stage: "assets" + rules: + - if: "$CI_COMMIT_BRANCH == panel.sutty.nl" + - if: "$CI_COMMIT_BRANCH" + changes: + compares_to: "refs/heads/rails" + paths: + - "package.json" + - "app/javascript/**/*" + - "app/assets/**/*" + before_script: + - "git config --global user.email \"${GIT_USER_EMAIL:-$GITLAB_USER_EMAIL}\"" + - "git config --global user.name \"${GIT_USER_NAME:-$GITLAB_USER_NAME}\"" + - "git remote set-url --push origin \"https://${GITLAB_USERNAME}:${GITLAB_TOKEN}@${CI_SERVER_HOST}/${CI_PROJECT_PATH}.git\"" + - "apk add python2 dotenv brotli" + - "mv config/credentials.yml.enc.ci config/credentials.yml.enc" + - "cp .env.example .env" + - "dotenv bundle install --path=vendor" + script: + - "dotenv RAILS_ENV=production bundle exec rails webpacker:clobber" + - "dotenv RAILS_ENV=production bundle exec rails assets:precompile" + - "dotenv RAILS_ENV=production bundle exec rails assets:clean" + after_script: + - "git add public && git commit -m \"ci: assets [skip ci]\"" + - "git push -o ci.skip" From b34f55dec9cf36c5f2bd6f86e4bbd23398c36c5c Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 12:24:11 -0300 Subject: [PATCH 264/699] chore: force ci --- app/javascript/packs/application.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/app/javascript/packs/application.js b/app/javascript/packs/application.js index 827d6a4b..492ca736 100644 --- a/app/javascript/packs/application.js +++ b/app/javascript/packs/application.js @@ -23,5 +23,3 @@ import 'chartkick/chart.js' Rails.start() Turbolinks.start() ActiveStorage.start() - -// force ci From f7ae92089014f7b8d221b51607289a79ee10435c Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 12:28:37 -0300 Subject: [PATCH 265/699] ci: typo --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 41b504ac..7c09d65f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -11,7 +11,7 @@ assets: - if: "$CI_COMMIT_BRANCH == panel.sutty.nl" - if: "$CI_COMMIT_BRANCH" changes: - compares_to: "refs/heads/rails" + compare_to: "refs/heads/rails" paths: - "package.json" - "app/javascript/**/*" From 9a8d3399f2520794d2f420404f41fce039d03a96 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 12:31:12 -0300 Subject: [PATCH 266/699] ci: comillas --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 7c09d65f..bd9a3903 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -8,7 +8,7 @@ cache: assets: stage: "assets" rules: - - if: "$CI_COMMIT_BRANCH == panel.sutty.nl" + - if: "$CI_COMMIT_BRANCH == \"panel.sutty.nl\"" - if: "$CI_COMMIT_BRANCH" changes: compare_to: "refs/heads/rails" From cf960c136068a489f3651f3c8b5d50e323d2351e Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 12:31:52 -0300 Subject: [PATCH 267/699] =?UTF-8?q?ci:=20estad=C3=ADo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index bd9a3903..f8994356 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -6,7 +6,7 @@ cache: paths: - "vendor/ruby" assets: - stage: "assets" + stage: "build" rules: - if: "$CI_COMMIT_BRANCH == \"panel.sutty.nl\"" - if: "$CI_COMMIT_BRANCH" From ffbac01086147ecc3e82589e137ac3990af1a678 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 12:39:26 -0300 Subject: [PATCH 268/699] ci: arreglos de git MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * correr yarn para actualizar el yarn.lock si quedó mal * commitear yarn.lock * no commitear si falla la compilación --- .gitlab-ci.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f8994356..ee5d6413 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -24,10 +24,12 @@ assets: - "mv config/credentials.yml.enc.ci config/credentials.yml.enc" - "cp .env.example .env" - "dotenv bundle install --path=vendor" + - "yarn" script: - "dotenv RAILS_ENV=production bundle exec rails webpacker:clobber" - "dotenv RAILS_ENV=production bundle exec rails assets:precompile" - "dotenv RAILS_ENV=production bundle exec rails assets:clean" + - "git checkout -B ${CI_COMMIT_BRANCH}" + - "git add yarn.lock public && git commit -m \"ci: assets [skip ci]\"" after_script: - - "git add public && git commit -m \"ci: assets [skip ci]\"" - "git push -o ci.skip" From 30fc654d966b00fe8da93238c4041de8c07832e9 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 12:48:21 -0300 Subject: [PATCH 269/699] ci: especificar la rama remota --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ee5d6413..839283d4 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -32,4 +32,4 @@ assets: - "git checkout -B ${CI_COMMIT_BRANCH}" - "git add yarn.lock public && git commit -m \"ci: assets [skip ci]\"" after_script: - - "git push -o ci.skip" + - "git push -o ci.skip -u origin ${CI_COMMIT_BRANCH}" From 7a0e0295eb851f497f3ce60c7b55f66ad8f17b96 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 12:50:45 -0300 Subject: [PATCH 270/699] ci: guardar los node_modules --- .gitlab-ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 839283d4..4fab70c4 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -5,6 +5,7 @@ variables: cache: paths: - "vendor/ruby" + - "node_modules" assets: stage: "build" rules: From 23001666e65d9177a12773781ae09860680a29b8 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 13:08:54 -0300 Subject: [PATCH 271/699] ci: autenticarse como la gitlab ci --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 4fab70c4..ed1c9971 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -20,7 +20,7 @@ assets: before_script: - "git config --global user.email \"${GIT_USER_EMAIL:-$GITLAB_USER_EMAIL}\"" - "git config --global user.name \"${GIT_USER_NAME:-$GITLAB_USER_NAME}\"" - - "git remote set-url --push origin \"https://${GITLAB_USERNAME}:${GITLAB_TOKEN}@${CI_SERVER_HOST}/${CI_PROJECT_PATH}.git\"" + - "git remote set-url --push origin \"https://gitlab-ci-token:${GITLAB_TOKEN}@${CI_SERVER_HOST}/${CI_PROJECT_PATH}.git\"" - "apk add python2 dotenv brotli" - "mv config/credentials.yml.enc.ci config/credentials.yml.enc" - "cp .env.example .env" From 284850ef39aad1e1d2b306067d274ecfc8beb108 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 13:17:30 -0300 Subject: [PATCH 272/699] ci: token --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ed1c9971..7b83217e 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -20,7 +20,7 @@ assets: before_script: - "git config --global user.email \"${GIT_USER_EMAIL:-$GITLAB_USER_EMAIL}\"" - "git config --global user.name \"${GIT_USER_NAME:-$GITLAB_USER_NAME}\"" - - "git remote set-url --push origin \"https://gitlab-ci-token:${GITLAB_TOKEN}@${CI_SERVER_HOST}/${CI_PROJECT_PATH}.git\"" + - "git remote set-url --push origin \"https://gitlab-ci-token:${CI_JOB_TOKEN}@${CI_SERVER_HOST}/${CI_PROJECT_PATH}.git\"" - "apk add python2 dotenv brotli" - "mv config/credentials.yml.enc.ci config/credentials.yml.enc" - "cp .env.example .env" From 60c624711937f6a1546362e94db3c97f0fd7dd68 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 13:24:59 -0300 Subject: [PATCH 273/699] chore: forzar la ci --- app/javascript/packs/application.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/javascript/packs/application.js b/app/javascript/packs/application.js index 492ca736..827d6a4b 100644 --- a/app/javascript/packs/application.js +++ b/app/javascript/packs/application.js @@ -23,3 +23,5 @@ import 'chartkick/chart.js' Rails.start() Turbolinks.start() ActiveStorage.start() + +// force ci From e34119510f976f10ad0680e989a742bdf55c0cf6 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Sat, 15 Apr 2023 16:30:48 +0000 Subject: [PATCH 274/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 18103be4..048af1d4 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4885aff8001347ab3a0d8008e7f8e7e0155cff09e540171036cf6b92ae3f33d6 +oid sha256:c214891cc7a209638eac20f9441dd761cc686297bb97c368ef4f445105cf355c size 14525 From 59d314a9564c2e1b5f486dc9e85127e596a991bf Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 13:38:44 -0300 Subject: [PATCH 275/699] ci: deshabilitar gitlab ci por ahora --- .gitlab-ci.yml | 36 ------------------------------------ 1 file changed, 36 deletions(-) delete mode 100644 .gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml deleted file mode 100644 index 7b83217e..00000000 --- a/.gitlab-ci.yml +++ /dev/null @@ -1,36 +0,0 @@ -image: "gitea.nulo.in/sutty/panel:3.14.10-2.7.8-panel.sutty.nl" -variables: - RAILS_ENV: "production" - LC_ALL: "C.UTF-8" -cache: - paths: - - "vendor/ruby" - - "node_modules" -assets: - stage: "build" - rules: - - if: "$CI_COMMIT_BRANCH == \"panel.sutty.nl\"" - - if: "$CI_COMMIT_BRANCH" - changes: - compare_to: "refs/heads/rails" - paths: - - "package.json" - - "app/javascript/**/*" - - "app/assets/**/*" - before_script: - - "git config --global user.email \"${GIT_USER_EMAIL:-$GITLAB_USER_EMAIL}\"" - - "git config --global user.name \"${GIT_USER_NAME:-$GITLAB_USER_NAME}\"" - - "git remote set-url --push origin \"https://gitlab-ci-token:${CI_JOB_TOKEN}@${CI_SERVER_HOST}/${CI_PROJECT_PATH}.git\"" - - "apk add python2 dotenv brotli" - - "mv config/credentials.yml.enc.ci config/credentials.yml.enc" - - "cp .env.example .env" - - "dotenv bundle install --path=vendor" - - "yarn" - script: - - "dotenv RAILS_ENV=production bundle exec rails webpacker:clobber" - - "dotenv RAILS_ENV=production bundle exec rails assets:precompile" - - "dotenv RAILS_ENV=production bundle exec rails assets:clean" - - "git checkout -B ${CI_COMMIT_BRANCH}" - - "git add yarn.lock public && git commit -m \"ci: assets [skip ci]\"" - after_script: - - "git push -o ci.skip -u origin ${CI_COMMIT_BRANCH}" From 25ae4b1c6b0214d524db81bb687b78b402ad3133 Mon Sep 17 00:00:00 2001 From: jazzari Date: Sat, 15 Apr 2023 12:13:27 -0300 Subject: [PATCH 276/699] fix: add puntuation to title in en.yml #13090 --- config/locales/en.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/config/locales/en.yml b/config/locales/en.yml index 3ddf681d..082854de 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -407,9 +407,9 @@ en: title: There were errors and we couldn't save your changes :( help: Please, look for the invalid fields to fix them help: - name: "The name of your site. It can only include numbers and letters." - title: 'The title can be anything you want' - description: 'You site description that appears in search engines. Between 50 and 160 characters.' + name: "This will be the host name for your site, ie. **example**.sutty.nl. Choose an expression up to 63 characters. It can contain only lowercase letters, numbers and dashes, **and no spaces**. It can't start or end with a dash, or be entirely composed of numbers." + title: 'The title can be anything you want.' + description: 'You site description that appears in search engines. Between 10 and 160 characters.' design: 'Select the design for your site. You can change it later. We add more designs from time to time!' licencia: 'Everything we publish has automatic copyright. This means nobody can use our works without explicit permission. By From 97d719f0d00ea5fc0c66f6649744aa289443d103 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Sat, 15 Apr 2023 18:33:42 +0000 Subject: [PATCH 277/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-575d9c3a7a181d77f95b.js | 3 --- public/packs/js/application-575d9c3a7a181d77f95b.js.br | 3 --- public/packs/js/application-575d9c3a7a181d77f95b.js.gz | 3 --- public/packs/js/application-575d9c3a7a181d77f95b.js.map | 3 --- public/packs/js/application-575d9c3a7a181d77f95b.js.map.br | 3 --- public/packs/js/application-575d9c3a7a181d77f95b.js.map.gz | 3 --- public/packs/js/application-e1193536c90a3a18c60d.js | 3 +++ ...SE.txt => application-e1193536c90a3a18c60d.js.LICENSE.txt} | 0 public/packs/js/application-e1193536c90a3a18c60d.js.br | 3 +++ public/packs/js/application-e1193536c90a3a18c60d.js.gz | 3 +++ public/packs/js/application-e1193536c90a3a18c60d.js.map | 3 +++ public/packs/js/application-e1193536c90a3a18c60d.js.map.br | 3 +++ public/packs/js/application-e1193536c90a3a18c60d.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 17 files changed, 24 insertions(+), 24 deletions(-) delete mode 100644 public/packs/js/application-575d9c3a7a181d77f95b.js delete mode 100644 public/packs/js/application-575d9c3a7a181d77f95b.js.br delete mode 100644 public/packs/js/application-575d9c3a7a181d77f95b.js.gz delete mode 100644 public/packs/js/application-575d9c3a7a181d77f95b.js.map delete mode 100644 public/packs/js/application-575d9c3a7a181d77f95b.js.map.br delete mode 100644 public/packs/js/application-575d9c3a7a181d77f95b.js.map.gz create mode 100644 public/packs/js/application-e1193536c90a3a18c60d.js rename public/packs/js/{application-575d9c3a7a181d77f95b.js.LICENSE.txt => application-e1193536c90a3a18c60d.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-e1193536c90a3a18c60d.js.br create mode 100644 public/packs/js/application-e1193536c90a3a18c60d.js.gz create mode 100644 public/packs/js/application-e1193536c90a3a18c60d.js.map create mode 100644 public/packs/js/application-e1193536c90a3a18c60d.js.map.br create mode 100644 public/packs/js/application-e1193536c90a3a18c60d.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 048af1d4..7314bdc5 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c214891cc7a209638eac20f9441dd761cc686297bb97c368ef4f445105cf355c +oid sha256:cb3ec5245351ee71c1e988243f9336890b2373fb28f00ce49f19fd183667d585 size 14525 diff --git a/public/packs/js/application-575d9c3a7a181d77f95b.js b/public/packs/js/application-575d9c3a7a181d77f95b.js deleted file mode 100644 index 9f4eded4..00000000 --- a/public/packs/js/application-575d9c3a7a181d77f95b.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fedabdb992f541d9f9cecca53ab595da08cf634314ebed3a3d493d430af161ca -size 1462651 diff --git a/public/packs/js/application-575d9c3a7a181d77f95b.js.br b/public/packs/js/application-575d9c3a7a181d77f95b.js.br deleted file mode 100644 index 5ffef7d2..00000000 --- a/public/packs/js/application-575d9c3a7a181d77f95b.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1bcbfe4a977bec671406fde5e4bbcc82d22a64b3af4e5772952338a5855b58aa -size 319930 diff --git a/public/packs/js/application-575d9c3a7a181d77f95b.js.gz b/public/packs/js/application-575d9c3a7a181d77f95b.js.gz deleted file mode 100644 index 94a8caa4..00000000 --- a/public/packs/js/application-575d9c3a7a181d77f95b.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:092eb6a51147003e2b3f7aebe4c67285612cf52944449ed8f891745f4568fc76 -size 424534 diff --git a/public/packs/js/application-575d9c3a7a181d77f95b.js.map b/public/packs/js/application-575d9c3a7a181d77f95b.js.map deleted file mode 100644 index aeaaa60e..00000000 --- a/public/packs/js/application-575d9c3a7a181d77f95b.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5b8672489f1cc7f7e0df008015e082807df8966a4ebe0a11d18a4707efb605c3 -size 5732325 diff --git a/public/packs/js/application-575d9c3a7a181d77f95b.js.map.br b/public/packs/js/application-575d9c3a7a181d77f95b.js.map.br deleted file mode 100644 index bf2d9e9f..00000000 --- a/public/packs/js/application-575d9c3a7a181d77f95b.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3b058c2f9ec082be1f95b21df94c5a35127467cfc7a8bf90694a681dc8a7bcb3 -size 1230414 diff --git a/public/packs/js/application-575d9c3a7a181d77f95b.js.map.gz b/public/packs/js/application-575d9c3a7a181d77f95b.js.map.gz deleted file mode 100644 index 5e814e8d..00000000 --- a/public/packs/js/application-575d9c3a7a181d77f95b.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e9bbc34830570e52d3f94a8eaf30515ba8a2487d0239a1af561e1b0b9b311570 -size 1520483 diff --git a/public/packs/js/application-e1193536c90a3a18c60d.js b/public/packs/js/application-e1193536c90a3a18c60d.js new file mode 100644 index 00000000..bbc35f08 --- /dev/null +++ b/public/packs/js/application-e1193536c90a3a18c60d.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca86afc3ed844907a7881d0d5f65d954971ee09f6d9dfb33e1b8f27c707fe7f8 +size 1462661 diff --git a/public/packs/js/application-575d9c3a7a181d77f95b.js.LICENSE.txt b/public/packs/js/application-e1193536c90a3a18c60d.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-575d9c3a7a181d77f95b.js.LICENSE.txt rename to public/packs/js/application-e1193536c90a3a18c60d.js.LICENSE.txt diff --git a/public/packs/js/application-e1193536c90a3a18c60d.js.br b/public/packs/js/application-e1193536c90a3a18c60d.js.br new file mode 100644 index 00000000..39be3571 --- /dev/null +++ b/public/packs/js/application-e1193536c90a3a18c60d.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a0c4a4bb303d6b6b93bd5492c73f48db6b087d7bec2b82c4d78479d9bb24e85 +size 320142 diff --git a/public/packs/js/application-e1193536c90a3a18c60d.js.gz b/public/packs/js/application-e1193536c90a3a18c60d.js.gz new file mode 100644 index 00000000..1db64519 --- /dev/null +++ b/public/packs/js/application-e1193536c90a3a18c60d.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1de8637ec3f928184735455aa85d08b15474ff17d4612bbddbc57c2d5b1ac57d +size 424540 diff --git a/public/packs/js/application-e1193536c90a3a18c60d.js.map b/public/packs/js/application-e1193536c90a3a18c60d.js.map new file mode 100644 index 00000000..4bf8dca9 --- /dev/null +++ b/public/packs/js/application-e1193536c90a3a18c60d.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00e8f38da378405d1a922d20bbfcea990262380e853e8a4d1ba049d741fd38e9 +size 5732335 diff --git a/public/packs/js/application-e1193536c90a3a18c60d.js.map.br b/public/packs/js/application-e1193536c90a3a18c60d.js.map.br new file mode 100644 index 00000000..f0e2f356 --- /dev/null +++ b/public/packs/js/application-e1193536c90a3a18c60d.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0c7f1ac1c03faf81f757689cf0b967f0f82f2e8f731c6f9a1ca468ec14088d8 +size 1229563 diff --git a/public/packs/js/application-e1193536c90a3a18c60d.js.map.gz b/public/packs/js/application-e1193536c90a3a18c60d.js.map.gz new file mode 100644 index 00000000..8a4a8635 --- /dev/null +++ b/public/packs/js/application-e1193536c90a3a18c60d.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0254d1b1163483a3d41a96c98707387fe0dbcbe7ce7f6a209a828633bdc62b95 +size 1520484 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 4be1d47b..b8b798da 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:89762bbe3de612055dbc5d521cf37fb3b2fd5aaabb463437ff8a12447866234b +oid sha256:077fcc6251e483dce8daf0fadc899ad54a22b94b35b790bd74ac07d6802b0dcd size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 28d1ba27..3fb8e31a 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6315d1d78ac1cf484902bfb374b996c7ad52d56e3996dcd4ca3aa17708e3b70a -size 319 +oid sha256:084fca231def51d87b2bb3ba1804b1095c965e0e0a551ee115d375eade9764b7 +size 322 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index c9e81c1e..64df33fc 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ac3ad2c805b6b42d524ee05b99cd185bbe7bdbf43ffa31f1575df5afb9d939ac -size 366 +oid sha256:da9205ac806115e49cb749eeb0a9a0a65a58795ff14a3472dc2d32dffafe205f +size 365 From ffe30cfc337b9da021dc1649e45e440aa40a1d32 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 16:39:05 -0300 Subject: [PATCH 278/699] =?UTF-8?q?fix:=20los=20botones=20siempre=20son=20?= =?UTF-8?q?de=20una=20sola=20l=C3=ADnea=20#13113?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/assets/stylesheets/application.scss | 1 + 1 file changed, 1 insertion(+) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index bba48558..4cdb0da4 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -20,6 +20,7 @@ $form-feedback-valid-color: $cyan; $form-feedback-invalid-color: $magenta; $form-feedback-icon-valid-color: $black; $component-active-bg: $magenta; +$btn-white-space: nowrap; $spacers: ( 2-plus: 0.75rem From 6ea79f2fec767192652a45d1f260571f30253ef2 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 16:39:31 -0300 Subject: [PATCH 279/699] fix: las etiquetas se cortan por los espacios si son muy largas --- app/assets/stylesheets/application.scss | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 4cdb0da4..857a6f91 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -226,6 +226,10 @@ svg { } } +.badge { + white-space: break-spaces; +} + .btn-sm { @extend .badge } From 92dce3cd283c081750f0364a65f6efa99cd1b9ae Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 16:40:01 -0300 Subject: [PATCH 280/699] fix: permitir que las migas sigan el ancho de pantalla --- app/views/layouts/_breadcrumb.haml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/views/layouts/_breadcrumb.haml b/app/views/layouts/_breadcrumb.haml index b1c42cb2..541be95b 100644 --- a/app/views/layouts/_breadcrumb.haml +++ b/app/views/layouts/_breadcrumb.haml @@ -1,9 +1,9 @@ -%nav.navbar +%nav.navbar.flex-nowrap %a.navbar-brand.d-none.d-sm-block{ href: '/' } = inline_svg_tag 'sutty.svg', class: 'black', aria: true, title: t('svg.sutty.title'), desc: t('svg.sutty.desc') - %nav{ aria: { label: t('.title') } } + %nav.flex-grow-1{ aria: { label: t('.title') } } %ol.breadcrumb.m-0.flex-wrap - breadcrumb_trail do |crumb| %li.breadcrumb-item{ class: crumb.current? ? 'active' : '' } From 89f66b9cc3c753aaab7d2ac4bb93f093cfe73dbc Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 16:54:07 -0300 Subject: [PATCH 281/699] fix: mostrar el foco fix: mostrar un borde al enfocar links en las migas --- app/views/layouts/_breadcrumb.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/layouts/_breadcrumb.haml b/app/views/layouts/_breadcrumb.haml index 541be95b..7612af11 100644 --- a/app/views/layouts/_breadcrumb.haml +++ b/app/views/layouts/_breadcrumb.haml @@ -10,7 +10,7 @@ - if crumb.current? %span.line-clamp-1{ aria: { current: 'page' } }= crumb.name - else - %span.line-clamp-1= link_to crumb.name, crumb.url + = link_to crumb.name, crumb.url, class: 'line-clamp-1' - if @current_usuarie || current_usuarie %ul.navbar-nav From 8807f54719b6ec7b488f4013be4f5d6552505323 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 16:57:42 -0300 Subject: [PATCH 282/699] fix: usar el color primary al dar foco a links --- app/assets/stylesheets/application.scss | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 857a6f91..ded83172 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -101,6 +101,10 @@ a { color: var(--color); } + &:focus { + outline: 1px solid var(--color); + } + &[target=_blank] { /* TODO: Convertir a base64 para no hacer peticiones extra */ &:after { From 1be894403ac1d0cbdf87917328d00c7570dfc417 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 17:02:49 -0300 Subject: [PATCH 283/699] fix: cambiar el orden en responsive --- app/views/layouts/_breadcrumb.haml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/views/layouts/_breadcrumb.haml b/app/views/layouts/_breadcrumb.haml index 7612af11..fd44326b 100644 --- a/app/views/layouts/_breadcrumb.haml +++ b/app/views/layouts/_breadcrumb.haml @@ -1,9 +1,9 @@ %nav.navbar.flex-nowrap - %a.navbar-brand.d-none.d-sm-block{ href: '/' } + %a.navbar-brand.order-0.d-none.d-sm-block{ href: '/' } = inline_svg_tag 'sutty.svg', class: 'black', aria: true, title: t('svg.sutty.title'), desc: t('svg.sutty.desc') - %nav.flex-grow-1{ aria: { label: t('.title') } } + %nav.flex-grow-1.order-2.order-md-1{ aria: { label: t('.title') } } %ol.breadcrumb.m-0.flex-wrap - breadcrumb_trail do |crumb| %li.breadcrumb-item{ class: crumb.current? ? 'active' : '' } @@ -13,7 +13,7 @@ = link_to crumb.name, crumb.url, class: 'line-clamp-1' - if @current_usuarie || current_usuarie - %ul.navbar-nav + %ul.navbar-nav.order-1.order-md-2 - if @site&.tienda? %li.nav-item = link_to t('.tienda'), @site.tienda_url, From 21af0bfc4f570f08086f7473f6990c087cca25e0 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 17:03:07 -0300 Subject: [PATCH 284/699] fix: mostrar el logo en responsive --- app/views/layouts/_breadcrumb.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/layouts/_breadcrumb.haml b/app/views/layouts/_breadcrumb.haml index fd44326b..2d202d48 100644 --- a/app/views/layouts/_breadcrumb.haml +++ b/app/views/layouts/_breadcrumb.haml @@ -1,5 +1,5 @@ %nav.navbar.flex-nowrap - %a.navbar-brand.order-0.d-none.d-sm-block{ href: '/' } + %a.navbar-brand.order-0{ href: '/' } = inline_svg_tag 'sutty.svg', class: 'black', aria: true, title: t('svg.sutty.title'), desc: t('svg.sutty.desc') From 3879244a1a9566cf138c5b5fca80001fe4c77505 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 17:03:27 -0300 Subject: [PATCH 285/699] fix: los links de idiomas son parte de la nav --- app/views/layouts/_breadcrumb.haml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/app/views/layouts/_breadcrumb.haml b/app/views/layouts/_breadcrumb.haml index 2d202d48..a9d231d1 100644 --- a/app/views/layouts/_breadcrumb.haml +++ b/app/views/layouts/_breadcrumb.haml @@ -12,8 +12,8 @@ - else = link_to crumb.name, crumb.url, class: 'line-clamp-1' - - if @current_usuarie || current_usuarie - %ul.navbar-nav.order-1.order-md-2 + %ul.navbar-nav.order-1.order-md-2 + - if @current_usuarie || current_usuarie - if @site&.tienda? %li.nav-item = link_to t('.tienda'), @site.tienda_url, @@ -22,8 +22,8 @@ %li.nav-item = link_to t('.logout'), main_app.destroy_usuarie_session_path, method: :delete, role: 'button', class: 'btn' - - else - - params.permit! - - I18n.available_locales.each do |locale| - - next if locale == I18n.locale - = link_to t(locale), params.to_h.merge(change_locale_to: locale) + - else + - params.permit! + - I18n.available_locales.each do |locale| + - next if locale == I18n.locale + %li.nav-item= link_to t(locale), params.to_h.merge(change_locale_to: locale) From b82fd37526906f0bba2e9c1bcbdc7e00c2fd3180 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 17:06:42 -0300 Subject: [PATCH 286/699] fix: no agregar contenedor de migas si no hay ninguna --- app/views/layouts/_breadcrumb.haml | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/app/views/layouts/_breadcrumb.haml b/app/views/layouts/_breadcrumb.haml index a9d231d1..9251ee36 100644 --- a/app/views/layouts/_breadcrumb.haml +++ b/app/views/layouts/_breadcrumb.haml @@ -3,14 +3,15 @@ = inline_svg_tag 'sutty.svg', class: 'black', aria: true, title: t('svg.sutty.title'), desc: t('svg.sutty.desc') - %nav.flex-grow-1.order-2.order-md-1{ aria: { label: t('.title') } } - %ol.breadcrumb.m-0.flex-wrap - - breadcrumb_trail do |crumb| - %li.breadcrumb-item{ class: crumb.current? ? 'active' : '' } - - if crumb.current? - %span.line-clamp-1{ aria: { current: 'page' } }= crumb.name - - else - = link_to crumb.name, crumb.url, class: 'line-clamp-1' + - if breadcrumbs? + %nav.flex-grow-1.order-2.order-md-1{ aria: { label: t('.title') } } + %ol.breadcrumb.m-0.flex-wrap + - breadcrumb_trail do |crumb| + %li.breadcrumb-item{ class: crumb.current? ? 'active' : '' } + - if crumb.current? + %span.line-clamp-1{ aria: { current: 'page' } }= crumb.name + - else + = link_to crumb.name, crumb.url, class: 'line-clamp-1' %ul.navbar-nav.order-1.order-md-2 - if @current_usuarie || current_usuarie From 11a9874afcfaaba643a0f690fa99eeba4e5f0490 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 17:25:46 -0300 Subject: [PATCH 287/699] =?UTF-8?q?fix:=20checkbox=20de=20bootstrap=20para?= =?UTF-8?q?=20recordar=20la=20sesi=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/bootstrap/_custom_checkbox_for_field.haml | 6 ++++++ app/views/devise/sessions/new.haml | 7 ++----- 2 files changed, 8 insertions(+), 5 deletions(-) create mode 100644 app/views/bootstrap/_custom_checkbox_for_field.haml diff --git a/app/views/bootstrap/_custom_checkbox_for_field.haml b/app/views/bootstrap/_custom_checkbox_for_field.haml new file mode 100644 index 00000000..cbbc0079 --- /dev/null +++ b/app/views/bootstrap/_custom_checkbox_for_field.haml @@ -0,0 +1,6 @@ +- content = t("activerecord.attributes.#{field.object_name}.#{name}") +- id = "#{field.object_name}_#{name}" +- name = "#{field.object_name}[#{name}]" + += render 'bootstrap/custom_checkbox', id: id, name: name, content: content, required: local_assigns[:required], value: "1" do + = yield diff --git a/app/views/devise/sessions/new.haml b/app/views/devise/sessions/new.haml index 9b396187..c35f04db 100644 --- a/app/views/devise/sessions/new.haml +++ b/app/views/devise/sessions/new.haml @@ -28,11 +28,8 @@ placeholder: t('login.password') - if devise_mapping.rememberable? .form-group - = f.check_box :remember_me, aria: { describedby: 'remember-for' } - = f.label :remember_me - %small.form-text.text-muted#remember-for - = t('login.remember_me', - remember_for: distance_of_time_in_words(Usuarie.remember_for)) + = render 'bootstrap/custom_checkbox_for_field', field: f, name: :remember_me do + = t('login.remember_me', remember_for: distance_of_time_in_words(Usuarie.remember_for)) .actions = f.submit t('.sign_in'), class: 'btn btn-lg btn-block' From 92b685b1690e59db3d1c7141b2a1ef3b4d5da2bc Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Sat, 15 Apr 2023 20:33:53 +0000 Subject: [PATCH 288/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- ...c20ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css | 3 +++ ...ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css.gz | 3 +++ ...8b7553e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css | 3 --- ...553e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css.gz | 3 --- 5 files changed, 7 insertions(+), 7 deletions(-) create mode 100644 public/assets/application-864acd532c20ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css create mode 100644 public/assets/application-864acd532c20ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css.gz delete mode 100644 public/assets/application-dd909f2708b7553e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css delete mode 100644 public/assets/application-dd909f2708b7553e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 7314bdc5..fe03b61a 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cb3ec5245351ee71c1e988243f9336890b2373fb28f00ce49f19fd183667d585 +oid sha256:36ffb348625521c926ba87f219d3d3ff6f63b5d39e4dcacb876118a138d381cf size 14525 diff --git a/public/assets/application-864acd532c20ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css b/public/assets/application-864acd532c20ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css new file mode 100644 index 00000000..ec791268 --- /dev/null +++ b/public/assets/application-864acd532c20ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f34bb38f76dedc0fe4459e63d3ea780d01b0587fdeb4a97bc16990ea70413422 +size 235660 diff --git a/public/assets/application-864acd532c20ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css.gz b/public/assets/application-864acd532c20ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css.gz new file mode 100644 index 00000000..60c6a7c5 --- /dev/null +++ b/public/assets/application-864acd532c20ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7871ab586361dffd957ab5efecc170369fcf8440f4e917d2b5299b798a658826 +size 32679 diff --git a/public/assets/application-dd909f2708b7553e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css b/public/assets/application-dd909f2708b7553e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css deleted file mode 100644 index 72667dc0..00000000 --- a/public/assets/application-dd909f2708b7553e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b0a36d2e815f3d908374cbde6bad62d93e6073d4510d47a3b5dcb07ac7abcb48 -size 235309 diff --git a/public/assets/application-dd909f2708b7553e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css.gz b/public/assets/application-dd909f2708b7553e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css.gz deleted file mode 100644 index 5a8916d0..00000000 --- a/public/assets/application-dd909f2708b7553e40232d887c02c6df81a546a1237414403adb724fa64a9bec.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ecc40bfa2e781de0482a15729cba7229b103165e93f3725182075cd772f4fe2a -size 32692 From b752ed34d83857fb32ed7f75549dd6290124b87d Mon Sep 17 00:00:00 2001 From: f Date: Sat, 15 Apr 2023 17:40:11 -0300 Subject: [PATCH 289/699] fix: cortar la nav en pantallas chicas --- app/views/layouts/_breadcrumb.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/layouts/_breadcrumb.haml b/app/views/layouts/_breadcrumb.haml index 9251ee36..384d1dd9 100644 --- a/app/views/layouts/_breadcrumb.haml +++ b/app/views/layouts/_breadcrumb.haml @@ -1,4 +1,4 @@ -%nav.navbar.flex-nowrap +%nav.navbar.flex-md-nowrap %a.navbar-brand.order-0{ href: '/' } = inline_svg_tag 'sutty.svg', class: 'black', aria: true, title: t('svg.sutty.title'), desc: t('svg.sutty.desc') From 7f5b862182ab88723c03e65bb5e6d71758d41829 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Sat, 15 Apr 2023 22:33:50 +0000 Subject: [PATCH 290/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- ...353e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css | 3 --- ...e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css.gz | 3 --- ...5f4a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css | 3 +++ ...a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css.gz | 3 +++ 5 files changed, 7 insertions(+), 7 deletions(-) delete mode 100644 public/assets/application-8b9d4eb76353e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css delete mode 100644 public/assets/application-8b9d4eb76353e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css.gz create mode 100644 public/assets/application-a6f8217fb5f4a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css create mode 100644 public/assets/application-a6f8217fb5f4a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index fe03b61a..673a7326 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:36ffb348625521c926ba87f219d3d3ff6f63b5d39e4dcacb876118a138d381cf +oid sha256:a5b7c455e1cec3f866679861437b237cc1550d392ddb2889fd1c3f13dae81f6b size 14525 diff --git a/public/assets/application-8b9d4eb76353e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css b/public/assets/application-8b9d4eb76353e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css deleted file mode 100644 index d319818b..00000000 --- a/public/assets/application-8b9d4eb76353e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e70eca1332677d4d2188c516e354414d8d3a8bdf30b1dfa1f6b1419364dca6ae -size 235429 diff --git a/public/assets/application-8b9d4eb76353e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css.gz b/public/assets/application-8b9d4eb76353e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css.gz deleted file mode 100644 index 71165ca2..00000000 --- a/public/assets/application-8b9d4eb76353e1af890bf303f898cbe5db9e6950bc910876f2376c3d6c65689c.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9f155ffcb05bcde4d1aa4b5a946f73670bebb2f3bea0fadef89c8b4918985d08 -size 32691 diff --git a/public/assets/application-a6f8217fb5f4a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css b/public/assets/application-a6f8217fb5f4a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css new file mode 100644 index 00000000..fbb7720b --- /dev/null +++ b/public/assets/application-a6f8217fb5f4a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5f8013393bb1699dfb49a55bcf87b40b5985c7f5b48674fddfa48d599468794 +size 235963 diff --git a/public/assets/application-a6f8217fb5f4a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css.gz b/public/assets/application-a6f8217fb5f4a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css.gz new file mode 100644 index 00000000..d1d56850 --- /dev/null +++ b/public/assets/application-a6f8217fb5f4a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f713cecafc913e418c4acdbc5748663c91dda6be0fa6b944614ee9d827f359d +size 32712 From 46a0cf6bf168560c17cd20e7b0381bdac5d7e300 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 9 Mar 2023 15:54:34 -0300 Subject: [PATCH 291/699] fix: mejorar la ayuda del nombre #9986 --- config/locales/es.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/locales/es.yml b/config/locales/es.yml index e973c715..9688a892 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -412,7 +412,7 @@ es: title: Hubo errores y no pudimos guardar tus cambios :( help: Por favor, busca los campos marcados como no válidos para resolverlos help: - name: 'El nombre de tu sitio que formará parte de la dirección (**ejemplo**.sutty.nl). Solo puede contener hasta 63 letras minúsculas, números y guiones, pero **sin espacios**. No puede empezar ni terminar con guión, ni estar compuesto enteramente por números.' + name: 'El nombre de tu sitio que formará parte de la dirección (**ejemplo**.sutty.nl). Solo puede contener hasta 63 letras minúsculas, números y guiones, **pero sin espacios**. No puede empezar ni terminar con guión, ni estar compuesto enteramente por números.' title: 'El título de tu sitio puede ser lo que quieras.' description: 'La descripción del sitio, que saldrá en buscadores. Entre 10 y 160 caracteres.' design: 'Elegí el diseño que va a tener tu sitio aquí. Podés cambiarlo luego. De tanto en tanto vamos sumando diseños nuevos.' From a61ea877166f0af67d9b9d69bc9489d110975842 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Mon, 17 Apr 2023 18:49:16 +0000 Subject: [PATCH 292/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- ...8bde7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css | 3 --- ...e7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css.gz | 3 --- ...b2fb318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css | 3 +++ ...b318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css.gz | 3 +++ 5 files changed, 7 insertions(+), 7 deletions(-) delete mode 100644 public/assets/application-c2ce850628bde7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css delete mode 100644 public/assets/application-c2ce850628bde7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css.gz create mode 100644 public/assets/application-de1e334dab2fb318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css create mode 100644 public/assets/application-de1e334dab2fb318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 673a7326..47e6fca9 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a5b7c455e1cec3f866679861437b237cc1550d392ddb2889fd1c3f13dae81f6b +oid sha256:ee2581b5e4ee4aad9195027346fe0fbdb7fd3f4eae31947e193b418d33c5bfd8 size 14525 diff --git a/public/assets/application-c2ce850628bde7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css b/public/assets/application-c2ce850628bde7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css deleted file mode 100644 index d1d65a7d..00000000 --- a/public/assets/application-c2ce850628bde7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:36553a3a1fa148c255d4b37145ae35c92b125e7272609f4e7174dad48e684ccb -size 235329 diff --git a/public/assets/application-c2ce850628bde7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css.gz b/public/assets/application-c2ce850628bde7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css.gz deleted file mode 100644 index f0c6259c..00000000 --- a/public/assets/application-c2ce850628bde7add715e0688d055161bd7096e1953ad6554b02d990253b309b.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:136984894578cacf94b9435219e966f2831f4c29401b64f737d8c598c1f6a020 -size 32656 diff --git a/public/assets/application-de1e334dab2fb318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css b/public/assets/application-de1e334dab2fb318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css new file mode 100644 index 00000000..ce830bab --- /dev/null +++ b/public/assets/application-de1e334dab2fb318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e801d58b89f3a3566e82cfc48aafc4fc14df69d86bc891c45c7059d03225dafd +size 235914 diff --git a/public/assets/application-de1e334dab2fb318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css.gz b/public/assets/application-de1e334dab2fb318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css.gz new file mode 100644 index 00000000..24786a6b --- /dev/null +++ b/public/assets/application-de1e334dab2fb318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36b2cb51e3eb934c7d01f5be0643e4e44408eae95aaae0d13cbedd9a78aee721 +size 32704 From 05bfc95db6170f8a6f00fc2f9ad5798660d40e34 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 17 Apr 2023 18:29:01 -0300 Subject: [PATCH 293/699] fix: establecer el color por defecto de los botones MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit si lo establecemos después de bootstrap, pisamos los colores de los botones --- app/assets/stylesheets/application.scss | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 5b9221d1..7e0c87cf 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -30,6 +30,11 @@ $sizes: ( "70ch": 70ch, ); +.btn { + background-color: var(--foreground); + color: var(--background); +} + @import "bootstrap"; @import "editor"; @@ -201,8 +206,6 @@ svg { } .btn { - background-color: var(--foreground); - color: var(--background); border: none; border-radius: 0; margin-right: 0.3rem; From a94eaceef58ad307f1ea58f5a90d9b858f23a90e Mon Sep 17 00:00:00 2001 From: f Date: Mon, 17 Apr 2023 18:30:21 -0300 Subject: [PATCH 294/699] feat: organizar layouts #13072 --- app/models/layout.rb | 7 ++++++ app/models/site.rb | 1 + app/models/site/layout_ordering.rb | 38 ++++++++++++++++++++++++++++++ 3 files changed, 46 insertions(+) create mode 100644 app/models/site/layout_ordering.rb diff --git a/app/models/layout.rb b/app/models/layout.rb index c70829fa..efca66ee 100644 --- a/app/models/layout.rb +++ b/app/models/layout.rb @@ -9,6 +9,13 @@ Layout = Struct.new(:site, :name, :meta, :metadata, keyword_init: true) do name.to_s end + # Obtiene todos los layouts (schemas) dependientes de este. + # + # @return [Array] + def schemas + @schemas ||= site.layouts.to_h.slice(*site.schema_organization[name]).values + end + def attributes @attributes ||= metadata.keys.map(&:to_sym) end diff --git a/app/models/site.rb b/app/models/site.rb index 1231a81d..4ae5e2a7 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -9,6 +9,7 @@ class Site < ApplicationRecord include Site::Api include Site::DeployDependencies include Site::BuildStats + include Site::LayoutOrdering include Tienda # Cifrar la llave privada que cifra y decifra campos ocultos. Sutty diff --git a/app/models/site/layout_ordering.rb b/app/models/site/layout_ordering.rb new file mode 100644 index 00000000..9fecbf21 --- /dev/null +++ b/app/models/site/layout_ordering.rb @@ -0,0 +1,38 @@ +# frozen_string_literal: true + +class Site + # Obtiene un listado de layouts (schemas) + module LayoutOrdering + extend ActiveSupport::Concern + + included do + + # Obtiene o genera un listado de layouts (schemas) con sus + # dependencias, para poder generar un árbol. + # + # Por defecto, si el sitio no lo soporta, se obtienen los layouts + # ordenados alfabéticamente por traducción. + # + # @return [Hash] + def schema_organization + @schema_organization ||= + begin + schema_organization = data.dig('schema', 'organization') + schema_organization&.symbolize_keys! + schema_organization&.transform_values! do |ary| + ary.map(&:to_sym) + end + + schema_organization || + begin + layouts = self.layouts.sort_by(&:humanized_name).map(&:name) + Hash[layouts.zip([].fill([], 0, layouts.size))] + end + end + end + + # TODO: Deprecar cuando renombremos layouts a schemas + alias layout_organization schema_organization + end + end +end From 264c52a53faac92e4e72caf06f545b4708234d8c Mon Sep 17 00:00:00 2001 From: f Date: Mon, 17 Apr 2023 18:31:51 -0300 Subject: [PATCH 295/699] =?UTF-8?q?feat:=20mostrar=20la=20lista=20de=20art?= =?UTF-8?q?=C3=ADculos=20organizada=20#13072?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/posts/index.haml | 16 ++++++---------- app/views/schemas/_add.haml | 1 + app/views/schemas/_filter.haml | 4 ++++ app/views/schemas/_row.haml | 12 ++++++++++++ config/locales/en.yml | 8 +++++--- config/locales/es.yml | 9 ++++++--- 6 files changed, 34 insertions(+), 16 deletions(-) create mode 100644 app/views/schemas/_add.haml create mode 100644 app/views/schemas/_filter.haml create mode 100644 app/views/schemas/_row.haml diff --git a/app/views/posts/index.haml b/app/views/posts/index.haml index 3497b0a4..d1f940fb 100644 --- a/app/views/posts/index.haml +++ b/app/views/posts/index.haml @@ -6,16 +6,12 @@ = render 'sites/status', site: @site %h3= t('posts.new') - %table.mb-3 - - @site.layouts.sort_by(&:humanized_name).each do |layout| - - next if layout.hidden? - %tr - %th= layout.humanized_name - %td.pl-3= link_to t('posts.add'), new_site_post_path(@site, layout: layout.value), class: 'btn btn-secondary btn-sm' - - if @filter_params[:layout] == layout.name.to_s - %td= link_to t('posts.remove_filter'), site_posts_path(@site, **@filter_params.merge(layout: nil)), class: 'btn btn-primary btn-sm' - - else - %td= link_to t('posts.filter'), site_posts_path(@site, **@filter_params.merge(layout: layout.value)), class: 'btn btn-secondary btn-sm' + %table.table.table-sm.mb-3 + %tbody + - @site.schema_organization.each do |schema, _| + - schema = @site.layouts[schema] + - next if schema.hidden? + = render 'schemas/row', site: @site, schema: schema, filter: @filter_params - if policy(@site_stat).index? = link_to t('stats.index.title'), site_stats_path(@site), class: 'btn' diff --git a/app/views/schemas/_add.haml b/app/views/schemas/_add.haml new file mode 100644 index 00000000..0131a6bb --- /dev/null +++ b/app/views/schemas/_add.haml @@ -0,0 +1 @@ += link_to t('.add'), new_site_post_path(site, layout: schema.value), class: 'btn btn-secondary btn-sm m-0' diff --git a/app/views/schemas/_filter.haml b/app/views/schemas/_filter.haml new file mode 100644 index 00000000..c422c5b8 --- /dev/null +++ b/app/views/schemas/_filter.haml @@ -0,0 +1,4 @@ +- if filter[:layout] == schema.name.to_s + = link_to t('.remove'), site_posts_path(site, **filter.merge(layout: nil)), class: 'btn btn-primary btn-sm m-0' +- else + = link_to t('.filter'), site_posts_path(site, **filter.merge(layout: schema.value)), class: 'btn btn-secondary btn-sm m-0' diff --git a/app/views/schemas/_row.haml b/app/views/schemas/_row.haml new file mode 100644 index 00000000..9a759fd9 --- /dev/null +++ b/app/views/schemas/_row.haml @@ -0,0 +1,12 @@ +%tr + %th{ scope: 'row' } + - if local_assigns[:parent_schema] + %span.text-muted — + = schema.humanized_name + %td.px-0= render 'schemas/add', **local_assigns + %td.px-0= render 'schemas/filter', **local_assigns + +-# XXX: Solo un nivel de recursividad +- unless local_assigns[:parent_schema] + - schema.schemas.each do |s| + = render 'schemas/row', schema: s, site: site, filter: filter, parent_schema: schema diff --git a/config/locales/en.yml b/config/locales/en.yml index c3e88d55..93a8ccd2 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -538,9 +538,6 @@ en: order: 'Order' content: 'Text' new: 'Post types' - add: 'Add' - filter: 'Filter' - remove_filter: 'Back' remove_filter_help: 'Remove the filter: %{filter}' categories: 'Everything' index: 'Posts' @@ -699,3 +696,8 @@ en: build_stats: index: title: "Publications" + schemas: + add: 'Add' + filter: + filter: 'Filter' + remove: 'Back' diff --git a/config/locales/es.yml b/config/locales/es.yml index 74258e6f..059f17e2 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -547,9 +547,6 @@ es: content: 'Cuerpo del artículo' categories: 'Todos' new: 'Tipos de artículos' - add: 'Agregar' - filter: 'Filtrar' - remove_filter: 'Volver' remove_filter_help: 'Quitar este filtro: %{filter}' index: 'Artículos' edit: 'Editar' @@ -707,3 +704,9 @@ es: build_stats: index: title: "Publicaciones" + schemas: + add: + add: 'Agregar' + filter: + filter: 'Filtrar' + remove: 'Volver' From 3c5b4406b14fb418c726a90fb7da658ebb6bc538 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Mon, 17 Apr 2023 21:44:38 +0000 Subject: [PATCH 296/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- ...840dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css | 3 +++ ...dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css.gz | 3 +++ ...c20ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css | 3 --- ...ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css.gz | 3 --- 5 files changed, 7 insertions(+), 7 deletions(-) create mode 100644 public/assets/application-2c12ab6ff840dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css create mode 100644 public/assets/application-2c12ab6ff840dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css.gz delete mode 100644 public/assets/application-864acd532c20ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css delete mode 100644 public/assets/application-864acd532c20ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 47e6fca9..831e47dc 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ee2581b5e4ee4aad9195027346fe0fbdb7fd3f4eae31947e193b418d33c5bfd8 +oid sha256:822bb25620310a9376077e13ced2a0974fb179487021796fb7c5625d0733404d size 14525 diff --git a/public/assets/application-2c12ab6ff840dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css b/public/assets/application-2c12ab6ff840dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css new file mode 100644 index 00000000..84d7fd8a --- /dev/null +++ b/public/assets/application-2c12ab6ff840dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5347b3c228c629384da313552cf9499549512f29b848fc661c29e19dc4d964c2 +size 236077 diff --git a/public/assets/application-2c12ab6ff840dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css.gz b/public/assets/application-2c12ab6ff840dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css.gz new file mode 100644 index 00000000..8ac0299a --- /dev/null +++ b/public/assets/application-2c12ab6ff840dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ca6bf4ab9cbbb9d7c184567260e21ffe82c72b5a860570d57710390a566e1f2 +size 32749 diff --git a/public/assets/application-864acd532c20ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css b/public/assets/application-864acd532c20ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css deleted file mode 100644 index ec791268..00000000 --- a/public/assets/application-864acd532c20ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f34bb38f76dedc0fe4459e63d3ea780d01b0587fdeb4a97bc16990ea70413422 -size 235660 diff --git a/public/assets/application-864acd532c20ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css.gz b/public/assets/application-864acd532c20ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css.gz deleted file mode 100644 index 60c6a7c5..00000000 --- a/public/assets/application-864acd532c20ff8de14d1f97022180d4899cb4b2eb20f22eb5e879a6ac2990f6.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7871ab586361dffd957ab5efecc170369fcf8440f4e917d2b5299b798a658826 -size 32679 From 0f09d8c9c89399102b2454d533c4632a38a0b140 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 17 Apr 2023 18:46:31 -0300 Subject: [PATCH 297/699] Revert "fix: establecer el color por defecto de los botones" This reverts commit 05bfc95db6170f8a6f00fc2f9ad5798660d40e34. --- app/assets/stylesheets/application.scss | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 7e0c87cf..5b9221d1 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -30,11 +30,6 @@ $sizes: ( "70ch": 70ch, ); -.btn { - background-color: var(--foreground); - color: var(--background); -} - @import "bootstrap"; @import "editor"; @@ -206,6 +201,8 @@ svg { } .btn { + background-color: var(--foreground); + color: var(--background); border: none; border-radius: 0; margin-right: 0.3rem; From 9aa5f7b826bffabda5a83eb510d25469339ccbe1 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Mon, 17 Apr 2023 21:54:08 +0000 Subject: [PATCH 298/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 831e47dc..1428464b 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:822bb25620310a9376077e13ced2a0974fb179487021796fb7c5625d0733404d +oid sha256:6d227762c66c3bbead9e159e086072f0300deaa69efe699a145f72fb33ad5daf size 14525 From fae254b91c8af38c7463ca62bd67b3c43d556643 Mon Sep 17 00:00:00 2001 From: jazzari Date: Tue, 18 Apr 2023 16:30:00 -0300 Subject: [PATCH 299/699] fix: set bootstrap font-bolder #13089 --- app/assets/stylesheets/application.scss | 1 + 1 file changed, 1 insertion(+) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index b7ec5256..3b43c426 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -20,6 +20,7 @@ $form-feedback-valid-color: $cyan; $form-feedback-invalid-color: $magenta; $form-feedback-icon-valid-color: $black; $component-active-bg: $magenta; +$font-weight-bolder: 700; $spacers: ( 2-plus: 0.75rem From fae945728c29f6a457f68af0bdeec46640d938ae Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Wed, 19 Apr 2023 14:00:51 +0000 Subject: [PATCH 300/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- ...14d9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css | 3 +++ ...9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css.gz | 3 +++ ...5f4a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css | 3 --- ...a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css.gz | 3 --- 5 files changed, 7 insertions(+), 7 deletions(-) create mode 100644 public/assets/application-21195aaec14d9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css create mode 100644 public/assets/application-21195aaec14d9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css.gz delete mode 100644 public/assets/application-a6f8217fb5f4a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css delete mode 100644 public/assets/application-a6f8217fb5f4a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 1428464b..856ea7bc 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6d227762c66c3bbead9e159e086072f0300deaa69efe699a145f72fb33ad5daf +oid sha256:92c380ea614036eacb713cdab569241e3156daa293d974dd976152c714a9c0d3 size 14525 diff --git a/public/assets/application-21195aaec14d9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css b/public/assets/application-21195aaec14d9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css new file mode 100644 index 00000000..ac244345 --- /dev/null +++ b/public/assets/application-21195aaec14d9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:acf5a2de364f4771d56ebd7a162e91d88944662450775c4ad35ae602d30da19d +size 235908 diff --git a/public/assets/application-21195aaec14d9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css.gz b/public/assets/application-21195aaec14d9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css.gz new file mode 100644 index 00000000..6ae7ce54 --- /dev/null +++ b/public/assets/application-21195aaec14d9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c46d6d95bd1c5ad9a26c637fc3057369c817f4aa9b419dd9cb181805cb2d5a08 +size 32701 diff --git a/public/assets/application-a6f8217fb5f4a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css b/public/assets/application-a6f8217fb5f4a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css deleted file mode 100644 index fbb7720b..00000000 --- a/public/assets/application-a6f8217fb5f4a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f5f8013393bb1699dfb49a55bcf87b40b5985c7f5b48674fddfa48d599468794 -size 235963 diff --git a/public/assets/application-a6f8217fb5f4a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css.gz b/public/assets/application-a6f8217fb5f4a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css.gz deleted file mode 100644 index d1d56850..00000000 --- a/public/assets/application-a6f8217fb5f4a22d46fbde552514f9c6a894fda768cc0ae1b6fea54e2ca47e7c.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4f713cecafc913e418c4acdbc5748663c91dda6be0fa6b944614ee9d827f359d -size 32712 From 5dadf64422136b86e2701fd0c9a920030d40653c Mon Sep 17 00:00:00 2001 From: f Date: Wed, 19 Apr 2023 14:56:20 -0300 Subject: [PATCH 301/699] fix: los subdominios para los sitios vienen de un certificado wildcard #13159 --- app/controllers/api/v1/sites_controller.rb | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/app/controllers/api/v1/sites_controller.rb b/app/controllers/api/v1/sites_controller.rb index ae64cf74..185d0b24 100644 --- a/app/controllers/api/v1/sites_controller.rb +++ b/app/controllers/api/v1/sites_controller.rb @@ -9,7 +9,7 @@ module Api # Lista de nombres de dominios a emitir certificados def index - render json: sites_names + alternative_names + api_names + www_names + render json: alternative_names + api_names + www_names end private @@ -18,13 +18,6 @@ module Api name.end_with?('.') ? name[0..-2] : "#{name}.#{Site.domain}" end - # Nombres de los sitios - def sites_names - Site.all.order(:name).pluck(:name).map do |name| - canonicalize name - end - end - # Dominios alternativos def alternative_names (DeployAlternativeDomain.all.map(&:hostname) + DeployLocalizedDomain.all.map(&:hostname)).map do |name| From 0dbcb8518095ea151f798f8fbeda3bf4164dffa8 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 19 Apr 2023 14:56:56 -0300 Subject: [PATCH 302/699] fix: ignorar los subdominios en los dominios alternativos #13159 --- app/controllers/api/v1/sites_controller.rb | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/app/controllers/api/v1/sites_controller.rb b/app/controllers/api/v1/sites_controller.rb index 185d0b24..05abc38a 100644 --- a/app/controllers/api/v1/sites_controller.rb +++ b/app/controllers/api/v1/sites_controller.rb @@ -18,10 +18,16 @@ module Api name.end_with?('.') ? name[0..-2] : "#{name}.#{Site.domain}" end + def subdomain?(name) + name.end_with? ".#{Site.domain}" + end + # Dominios alternativos def alternative_names (DeployAlternativeDomain.all.map(&:hostname) + DeployLocalizedDomain.all.map(&:hostname)).map do |name| canonicalize name + end.reject do |name| + subdomain? name end end @@ -34,6 +40,8 @@ module Api .or(Site.where(colaboracion_anonima: true)) .select("'api.' || name as name").map(&:name).map do |name| canonicalize name + end.reject do |name| + subdomain? name end end From 30920529ab67738e327da3c39bfb3188037382a2 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 20 Apr 2023 18:11:43 -0300 Subject: [PATCH 303/699] feat: avisar que hay que publicar al cambiar la configuracion #13114 --- app/controllers/sites_controller.rb | 1 + app/views/layouts/_flash.haml | 2 +- config/locales/en.yml | 2 ++ config/locales/es.yml | 2 ++ 4 files changed, 6 insertions(+), 1 deletion(-) diff --git a/app/controllers/sites_controller.rb b/app/controllers/sites_controller.rb index 63865e44..17287eb0 100644 --- a/app/controllers/sites_controller.rb +++ b/app/controllers/sites_controller.rb @@ -57,6 +57,7 @@ class SitesController < ApplicationController usuarie: current_usuarie) if service.update.valid? + flash[:notice] = I18n.t('sites.update.post') redirect_to site_posts_path(site, locale: site.default_locale) else render 'edit' diff --git a/app/views/layouts/_flash.haml b/app/views/layouts/_flash.haml index 7bd7ec0b..2d65ff78 100644 --- a/app/views/layouts/_flash.haml +++ b/app/views/layouts/_flash.haml @@ -1,4 +1,4 @@ - flash.each do |type, message| - unless type == 'js' = render 'bootstrap/alert' do - = message + = sanitize_markdown message, tags: %w[a strong em] diff --git a/config/locales/en.yml b/config/locales/en.yml index a39758bb..099f304d 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -401,6 +401,8 @@ en: title: 'Edit %{site}' submit: 'Save changes' btn: 'Configuration' + update: + post: "Your changes have been saved. **If you enabled a publication method, don't forget to publish changes.**" form: errors: title: There were errors and we couldn't save your changes :( diff --git a/config/locales/es.yml b/config/locales/es.yml index a52519f7..bf2d8b93 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -407,6 +407,8 @@ es: title: 'Editar %{site}' submit: 'Guardar cambios' btn: 'Configuración' + update: + post: "Tus cambios han sido guardados. **Si agregaste un método de publicación, no te olvides de publicar cambios.**" form: errors: title: Hubo errores y no pudimos guardar tus cambios :( From f45f500bb2ba3dbff0238de30bf398199a2db5c8 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 20 Apr 2023 18:14:48 -0300 Subject: [PATCH 304/699] =?UTF-8?q?fix:=20vincular=20a=20saber=20m=C3=A1s?= =?UTF-8?q?=20#10449?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/locales/en.yml | 2 +- config/locales/es.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/config/locales/en.yml b/config/locales/en.yml index 099f304d..46f64ee9 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -301,7 +301,7 @@ en: storage network may continue retaining copies of the data indefinitely. - [Learn more](https://ffdweb.org/building-distributed-press-a-publishing-tool-for-the-decentralized-web/) + [Learn more](https://sutty.nl/learn-more-about-publish-to-dweb-functionality/) stats: index: title: Statistics diff --git a/config/locales/es.yml b/config/locales/es.yml index bf2d8b93..81c0b463 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -306,7 +306,7 @@ es: nodos en la red de almacenamiento distribuida puedan retener copias de tu contenido indefinidamente. - [Saber más (en inglés)](https://ffdweb.org/building-distributed-press-a-publishing-tool-for-the-decentralized-web/) + [Saber más](https://sutty.nl/saber-mas-sobre-publicar-a-la-web-distribuida/) stats: index: title: Estadísticas From b9a609d07a5b29b50e53ec284ceb2147ad9c4b0c Mon Sep 17 00:00:00 2001 From: f Date: Thu, 20 Apr 2023 18:17:41 -0300 Subject: [PATCH 305/699] =?UTF-8?q?fix:=20usar=20guionado=20en=20t=C3=ADtu?= =?UTF-8?q?lo=20y=20descripci=C3=B3n=20#13160?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/assets/stylesheets/application.scss | 1 + app/views/posts/index.haml | 6 ++++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index fffa0489..f72e741a 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -386,6 +386,7 @@ $bezier: cubic-bezier(0.75, 0, 0.25, 1); } .word-break-all { word-break: break-all !important; } +.hyphens { hyphens: auto; } /* * Modificadores de Bootstrap que no tienen versión responsive. diff --git a/app/views/posts/index.haml b/app/views/posts/index.haml index 3c2f8a08..aad4be9e 100644 --- a/app/views/posts/index.haml +++ b/app/views/posts/index.haml @@ -1,7 +1,9 @@ %main.row %aside.menu.col-md-3 - %h1= @site.title - %p.lead= @site.description + .hyphens{ lang: @site.default_locale } + %h1= @site.title + %p.lead= @site.description + - cache_if @usuarie, [@site, I18n.locale] do = render 'sites/status', site: @site From 282501c845850b81b9662fd6a9148f464d76e68e Mon Sep 17 00:00:00 2001 From: f Date: Thu, 20 Apr 2023 18:22:00 -0300 Subject: [PATCH 306/699] feat: indicar que se puede publicar el sitio #13178 --- app/models/site/build_stats.rb | 7 +++++++ app/views/sites/_status.haml | 2 ++ config/locales/en.yml | 1 + config/locales/es.yml | 1 + 4 files changed, 11 insertions(+) diff --git a/app/models/site/build_stats.rb b/app/models/site/build_stats.rb index 6eebcc84..64e689b6 100644 --- a/app/models/site/build_stats.rb +++ b/app/models/site/build_stats.rb @@ -40,6 +40,13 @@ class Site def not_published_yet? build_stats.jekyll.where(status: true).count.zero? end + + # Hubo cambios desde la última publicación? + # + # @return [Boolean] + def awaiting_publication? + updated_at > (build_stats.jekyll.where(status: true).last&.created_at || updated_at) + end end end end diff --git a/app/views/sites/_status.haml b/app/views/sites/_status.haml index 4cf480df..425b0471 100644 --- a/app/views/sites/_status.haml +++ b/app/views/sites/_status.haml @@ -1,6 +1,8 @@ - link = nil - if site.not_published_yet? - message = t('.not_published_yet') +- elsif site.awaiting_publication? + - message = t('.awaiting_publication') - if site.building? - if site.average_publication_time_calculable? - average_building_time = site.average_publication_time diff --git a/config/locales/en.yml b/config/locales/en.yml index 46f64ee9..41db7ba9 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -364,6 +364,7 @@ en: building: "Your site is building, refresh this page in ." not_published_yet: "Your site is being published for the first time, please wait up to 1 minute..." available: "Your site is available! Click here to find all the different ways to visit it." + awaiting_publication: "There are unpublished changes. Click the button below and wait a moment to find them on your site." index: title: 'My Sites' pull: 'Upgrade' diff --git a/config/locales/es.yml b/config/locales/es.yml index 81c0b463..f53b6103 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -369,6 +369,7 @@ es: building: "Tu sitio se está publicando, recargá esta página en ." not_published_yet: "Tu sitio se está publicando por primera vez, por favor espera hasta un minuto..." available: "¡Tu sitio está disponible! Cliqueá aquí para encontrar todas las formas en que podés visitarlo." + awaiting_publication: "Hay cambios sin publicar, cliqueá el botón debajo y espera un momento para encontrarlos en tu sitio." index: title: 'Mis sitios' pull: 'Actualizar' From 48a6e3df8f2043562fca6d531916cf52e56eefaa Mon Sep 17 00:00:00 2001 From: f Date: Thu, 20 Apr 2023 18:22:21 -0300 Subject: [PATCH 307/699] fix: poder ver los mensajes en el orden correcto --- app/views/sites/_status.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/sites/_status.haml b/app/views/sites/_status.haml index 425b0471..6a610e73 100644 --- a/app/views/sites/_status.haml +++ b/app/views/sites/_status.haml @@ -3,7 +3,7 @@ - message = t('.not_published_yet') - elsif site.awaiting_publication? - message = t('.awaiting_publication') -- if site.building? +- elsif site.building? - if site.average_publication_time_calculable? - average_building_time = site.average_publication_time - elsif !site.similar_sites? From 0b74022f030d3af9fc44eb6a94db0a3024cac6dd Mon Sep 17 00:00:00 2001 From: f Date: Thu, 20 Apr 2023 18:23:58 -0300 Subject: [PATCH 308/699] fix: estandarizar las columnas #13179 --- app/views/build_stats/index.haml | 2 +- app/views/collaborations/collaborate.haml | 4 ++-- app/views/devise/confirmations/new.haml | 2 +- app/views/devise/invitations/edit.haml | 2 +- app/views/devise/invitations/new.haml | 2 +- app/views/devise/passwords/edit.haml | 2 +- app/views/devise/passwords/new.haml | 2 +- app/views/devise/registrations/edit.haml | 2 +- app/views/devise/registrations/new.haml | 2 +- app/views/devise/sessions/new.haml | 2 +- app/views/devise/unlocks/new.haml | 2 +- app/views/posts/edit.haml | 2 +- app/views/posts/index.haml | 2 +- app/views/posts/new.haml | 2 +- app/views/posts/show.haml | 2 +- app/views/sites/edit.haml | 2 +- app/views/sites/fetch.haml | 6 +++--- app/views/sites/index.haml | 2 +- app/views/sites/new.haml | 2 +- app/views/stats/index.haml | 2 +- app/views/usuaries/index.haml | 2 +- app/views/usuaries/invite.haml | 2 +- 22 files changed, 25 insertions(+), 25 deletions(-) diff --git a/app/views/build_stats/index.haml b/app/views/build_stats/index.haml index 27dc20d1..20c9c97e 100644 --- a/app/views/build_stats/index.haml +++ b/app/views/build_stats/index.haml @@ -1,5 +1,5 @@ %main.row - %aside.menu.col-md-3 + %aside.menu.col-12.col-lg-3 %h1= @site.title %p.lead= @site.description .col diff --git a/app/views/collaborations/collaborate.haml b/app/views/collaborations/collaborate.haml index 4d43ad7e..9daad84d 100644 --- a/app/views/collaborations/collaborate.haml +++ b/app/views/collaborations/collaborate.haml @@ -1,10 +1,10 @@ .row.align-items-center.justify-content-center.full-height - .col-md-10.align-self-center + .col-12.col-lg-10.align-self-center - welcome = @site.config.dig('welcome', 'message') || t('.welcome', site: @site.hostname) = sanitize_markdown welcome - .col-md-6.align-self-center + .col-12.col-lg-6.align-self-center -# Copiado y pegado de app/views/devise/registrations/new.haml - resource = resource_name = @invitade = form_for(resource, as: resource_name, diff --git a/app/views/devise/confirmations/new.haml b/app/views/devise/confirmations/new.haml index bc2f77bb..9e17fe0e 100644 --- a/app/views/devise/confirmations/new.haml +++ b/app/views/devise/confirmations/new.haml @@ -4,7 +4,7 @@ = render 'devise/shared/error_messages', resource: resource .row.align-items-center.justify-content-center.full-height - .col-md-4.align-self-center + .col-12.col-lg-5.align-self-center .sr-only %h2= t('.resend_confirmation_instructions') diff --git a/app/views/devise/invitations/edit.haml b/app/views/devise/invitations/edit.haml index ed4980ef..94050214 100644 --- a/app/views/devise/invitations/edit.haml +++ b/app/views/devise/invitations/edit.haml @@ -4,7 +4,7 @@ = render 'devise/shared/error_messages', resource: resource .row.align-items-center.justify-content-center.full-height - .col-md-5.align-self-center + .col-12.col-lg-5.align-self-center %h2= t 'devise.invitations.edit.header' = form_for(resource, as: resource_name, diff --git a/app/views/devise/invitations/new.haml b/app/views/devise/invitations/new.haml index 4ebb8fa7..b6e6f4c4 100644 --- a/app/views/devise/invitations/new.haml +++ b/app/views/devise/invitations/new.haml @@ -4,7 +4,7 @@ = render 'devise/shared/error_messages', resource: resource .row.align-items-center.justify-content-center.full-height - .col-md-5.align-self-center + .col-12.col-lg-5.align-self-center %h2= t 'devise.invitations.new.header' = form_for(resource, as: resource_name, diff --git a/app/views/devise/passwords/edit.haml b/app/views/devise/passwords/edit.haml index 3a8843c0..597bdde1 100644 --- a/app/views/devise/passwords/edit.haml +++ b/app/views/devise/passwords/edit.haml @@ -4,7 +4,7 @@ = render 'devise/shared/error_messages', resource: resource .row.align-items-center.justify-content-center.full-height - .col-md-5.align-self-center + .col-12.col-lg-5.align-self-center .sr-only %h2= t('.change_your_password') %p= t('.help') diff --git a/app/views/devise/passwords/new.haml b/app/views/devise/passwords/new.haml index 08dd8d2e..de422f57 100644 --- a/app/views/devise/passwords/new.haml +++ b/app/views/devise/passwords/new.haml @@ -4,7 +4,7 @@ = render 'devise/shared/error_messages', resource: resource .row.align-items-center.justify-content-center.full-height - .col-md-5.align-self-center + .col-12.col-lg-5.align-self-center .sr-only %h2= t('.forgot_your_password') %p= t('.help') diff --git a/app/views/devise/registrations/edit.haml b/app/views/devise/registrations/edit.haml index 92699ab8..f87921a7 100644 --- a/app/views/devise/registrations/edit.haml +++ b/app/views/devise/registrations/edit.haml @@ -6,7 +6,7 @@ = render 'devise/shared/error_messages', resource: resource .row.align-items-center.justify-content-center.full-height - .col-md-6.align-self-center + .col-12.col-lg-6.align-self-center %h2= t('.title') = form_for(resource, as: resource_name, diff --git a/app/views/devise/registrations/new.haml b/app/views/devise/registrations/new.haml index 26fc8e18..3fb22ca6 100644 --- a/app/views/devise/registrations/new.haml +++ b/app/views/devise/registrations/new.haml @@ -4,7 +4,7 @@ = render 'devise/shared/error_messages', resource: resource .row.align-items-center.justify-content-center.full-height - .col-md-6.align-self-center + .col-12.col-lg-6.align-self-center %h2= t('.sign_up') %p= t('.help') diff --git a/app/views/devise/sessions/new.haml b/app/views/devise/sessions/new.haml index c35f04db..9d6c7a02 100644 --- a/app/views/devise/sessions/new.haml +++ b/app/views/devise/sessions/new.haml @@ -2,7 +2,7 @@ - 'black-bg' .row.align-items-center.justify-content-center.full-height - .col-md-5.align-self-center + .col-12.col-lg-5.align-self-center .sr-only %h2= t('.sign_in') %p= t('.help') diff --git a/app/views/devise/unlocks/new.haml b/app/views/devise/unlocks/new.haml index 09468a52..4d9001ca 100644 --- a/app/views/devise/unlocks/new.haml +++ b/app/views/devise/unlocks/new.haml @@ -4,7 +4,7 @@ = render 'devise/shared/error_messages', resource: resource .row.align-items-center.justify-content-center.full-height - .col-md-5.align-self-center + .col-12.col-lg-5.align-self-center .sr-only %h2= t('.resend_unlock_instructions') %p= t('.help') diff --git a/app/views/posts/edit.haml b/app/views/posts/edit.haml index 6ec252fe..d03e08c7 100644 --- a/app/views/posts/edit.haml +++ b/app/views/posts/edit.haml @@ -1,3 +1,3 @@ .row.justify-content-center - .col-md-8 + .col-12.col-lg-8 = render 'posts/form', site: @site, post: @post diff --git a/app/views/posts/index.haml b/app/views/posts/index.haml index aad4be9e..db69871b 100644 --- a/app/views/posts/index.haml +++ b/app/views/posts/index.haml @@ -1,5 +1,5 @@ %main.row - %aside.menu.col-md-3 + %aside.menu.col-lg-3 .hyphens{ lang: @site.default_locale } %h1= @site.title %p.lead= @site.description diff --git a/app/views/posts/new.haml b/app/views/posts/new.haml index 6ec252fe..d03e08c7 100644 --- a/app/views/posts/new.haml +++ b/app/views/posts/new.haml @@ -1,3 +1,3 @@ .row.justify-content-center - .col-md-8 + .col-12.col-lg-8 = render 'posts/form', site: @site, post: @post diff --git a/app/views/posts/show.haml b/app/views/posts/show.haml index 068a6adf..8b68c62a 100644 --- a/app/views/posts/show.haml +++ b/app/views/posts/show.haml @@ -1,6 +1,6 @@ - dir = @site.data.dig(params[:locale], 'dir') .row.justify-content-center - .col-md-8 + .col-12.col-lg-8 %article.content.table-responsive-md = link_to t('posts.edit'), edit_site_post_path(@site, @post.id), diff --git a/app/views/sites/edit.haml b/app/views/sites/edit.haml index 4ae7308d..2013c6f6 100644 --- a/app/views/sites/edit.haml +++ b/app/views/sites/edit.haml @@ -1,5 +1,5 @@ .row.justify-content-center - .col-md-8 + .col-12.col-lg-8 %h1= t('.title', site: @site.name) = render 'form', site: @site, submit: t('.submit') diff --git a/app/views/sites/fetch.haml b/app/views/sites/fetch.haml index f5d049c8..51e0aa74 100644 --- a/app/views/sites/fetch.haml +++ b/app/views/sites/fetch.haml @@ -1,5 +1,5 @@ .row.justify-content-center - .col-md-8#pull + .col-12.col-lg-8#pull %h1= t('.title') %p.lead= sanitize_markdown t('.help.fetch'), tags: %w[em strong a] @@ -10,7 +10,7 @@ - @commits.each do |commit| .row.justify-content-center - .col-md-8{ id: commit.oid } + .col-12.col-lg-8{ id: commit.oid } %h1= commit.summary %p.lead= render 'layouts/time', time: commit.time @@ -25,6 +25,6 @@ - unless @commits.empty? .row.justify-content-center - .col-md-8 + .col-12.col-lg-8 = link_to t('.merge.request'), site_pull_path(@site), method: 'post', class: 'btn btn-lg' diff --git a/app/views/sites/index.haml b/app/views/sites/index.haml index b7231292..dfd33c6c 100644 --- a/app/views/sites/index.haml +++ b/app/views/sites/index.haml @@ -1,5 +1,5 @@ %main.row - %aside.col-md-3 + %aside.col-12.col-lg-3 %h1= t('.title') %p.lead= t('.help') - if policy(Site).new? diff --git a/app/views/sites/new.haml b/app/views/sites/new.haml index 68c17882..23ee8b40 100644 --- a/app/views/sites/new.haml +++ b/app/views/sites/new.haml @@ -1,5 +1,5 @@ .row.justify-content-center - .col-md-8 + .col-12.col-lg-8 %h1= t('.title') %p.lead= t('.help') diff --git a/app/views/stats/index.haml b/app/views/stats/index.haml index 88e86aa3..d3a11ffe 100644 --- a/app/views/stats/index.haml +++ b/app/views/stats/index.haml @@ -38,7 +38,7 @@ - if @normalized_urls.present? = line_chart site_stats_uris_path(urls: @normalized_urls, **@chart_params), **@chart_options - .row.mb-5.row-cols-1.row-cols-md-2 + .row.mb-5.row-cols-1.row-cols-lg-2 - @columns.each_pair do |column, values| - next if values.blank? .col.mb-5 diff --git a/app/views/usuaries/index.haml b/app/views/usuaries/index.haml index 124fb04b..edb9ad19 100644 --- a/app/views/usuaries/index.haml +++ b/app/views/usuaries/index.haml @@ -1,5 +1,5 @@ .row.justify-content-center - .col.col-md-8 + .col.col-lg-8 %h1= t('.title') -# Una tabla de usuaries y otra de invitades, con acciones diff --git a/app/views/usuaries/invite.haml b/app/views/usuaries/invite.haml index 26eb5039..4f4412ad 100644 --- a/app/views/usuaries/invite.haml +++ b/app/views/usuaries/invite.haml @@ -1,7 +1,7 @@ - invite_as = t("usuaries.invite_as.#{params[:invite_as]}") .row.justify-content-center - .col.col-md-8 + .col.col-lg-8 %h1= t('.title', invite_as: invite_as) = form_with url: site_usuaries_invite_path(@site), local: true do |f| From 85c7dc6492fef8a6c849791d6d4c8461da1d5c3c Mon Sep 17 00:00:00 2001 From: f Date: Thu, 20 Apr 2023 18:24:49 -0300 Subject: [PATCH 309/699] =?UTF-8?q?fix:=20sin=20espacio=20en=20la=20barra?= =?UTF-8?q?=20de=20navegaci=C3=B3n=20#13179?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/layouts/_breadcrumb.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/layouts/_breadcrumb.haml b/app/views/layouts/_breadcrumb.haml index d454a057..07022c16 100644 --- a/app/views/layouts/_breadcrumb.haml +++ b/app/views/layouts/_breadcrumb.haml @@ -1,4 +1,4 @@ -%nav.navbar.flex-nowrap +%nav.navbar.flex-nowrap.px-0 %a.navbar-brand.order-0{ href: '/' } = inline_svg_tag 'sutty.svg', class: 'black', aria: true, title: t('svg.sutty.title'), desc: t('svg.sutty.desc') From 44f37bef99265877b3dd2b8e538ad01096715712 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 20 Apr 2023 18:25:47 -0300 Subject: [PATCH 310/699] =?UTF-8?q?fix:=20darle=20el=20mismo=20espacio=20v?= =?UTF-8?q?ertical=20al=20bot=C3=B3n=20de=20publicaci=C3=B3n=20#13179?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/posts/index.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/posts/index.haml b/app/views/posts/index.haml index db69871b..b1049d05 100644 --- a/app/views/posts/index.haml +++ b/app/views/posts/index.haml @@ -7,7 +7,7 @@ - cache_if @usuarie, [@site, I18n.locale] do = render 'sites/status', site: @site - = render 'sites/build', site: @site, class: 'btn-block' + = render 'sites/build', site: @site, class: 'btn-block mb-3' %h3= t('posts.new') %table.table.table-sm.mb-3 From 47ffb7ebcafa79452141241d4b55f04135312100 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 20 Apr 2023 18:26:25 -0300 Subject: [PATCH 311/699] =?UTF-8?q?fix:=20mostrar=20los=20m=C3=A9todos=20d?= =?UTF-8?q?e=20publicaci=C3=B3n=20ordenados=20#13180?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/sites/_form.haml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/app/views/sites/_form.haml b/app/views/sites/_form.haml index 69997ffa..13a948a0 100644 --- a/app/views/sites/_form.haml +++ b/app/views/sites/_form.haml @@ -157,9 +157,10 @@ %h2= t('.deploys.title') %p.lead= t('.help.deploys') - = f.fields_for :deploys do |deploy| - = render "deploys/#{deploy.object.type.underscore}", - deploy: deploy, site: site + - site.deployment_list.each do |deploy| + = f.fields_for :deploys, deploy do |deploy_fields| + = render "deploys/#{deploy.type.underscore}", + deploy: deploy_fields, site: site .form-group = f.submit submit, class: 'btn btn-lg btn-block' From 7c6f3ca8b4b9b69f77d9479bec8cd075298fcb48 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 20 Apr 2023 18:30:10 -0300 Subject: [PATCH 312/699] fix: solo validar el host de archivo subido si estamos validando hosts #13181 --- app/models/metadata_content.rb | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/app/models/metadata_content.rb b/app/models/metadata_content.rb index 761518e8..30b0bb82 100644 --- a/app/models/metadata_content.rb +++ b/app/models/metadata_content.rb @@ -56,8 +56,13 @@ class MetadataContent < MetadataTemplate uri = URI element['src'] - # No permitimos recursos externos - raise URI::Error unless Rails.application.config.hosts.include?(uri.hostname) + # No permitimos recursos externos, solo si sabemos cuales son + # los recursos locales + if Rails.application.config.hosts.present? + unless Rails.application.config.hosts.include?(uri.hostname) + raise URI::Error + end + end element['src'] = convert_src_to_internal_path uri From afabbaf1b0de936de84f493a07509c0869b91bf2 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 20 Apr 2023 18:40:54 -0300 Subject: [PATCH 313/699] chore: force ci --- app/assets/stylesheets/application.scss | 2 -- 1 file changed, 2 deletions(-) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index f72e741a..9e5dc1e6 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -564,5 +564,3 @@ $bezier: cubic-bezier(0.75, 0, 0.25, 1); } } } - -// force ci From cb4bf9b9f22ceef4e7e436343ea7e95d2ac25869 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Thu, 20 Apr 2023 21:46:50 +0000 Subject: [PATCH 314/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- ...840dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css | 3 --- ...dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css.gz | 3 --- ...db9ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css | 3 +++ ...ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css.gz | 3 +++ 5 files changed, 7 insertions(+), 7 deletions(-) delete mode 100644 public/assets/application-2c12ab6ff840dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css delete mode 100644 public/assets/application-2c12ab6ff840dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css.gz create mode 100644 public/assets/application-b1906dfc8db9ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css create mode 100644 public/assets/application-b1906dfc8db9ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 856ea7bc..3fc2e448 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:92c380ea614036eacb713cdab569241e3156daa293d974dd976152c714a9c0d3 +oid sha256:d388c1675a77c22f0713c3b7de88598967e7f3b7c3be847ff70f65a80d6d44f9 size 14525 diff --git a/public/assets/application-2c12ab6ff840dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css b/public/assets/application-2c12ab6ff840dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css deleted file mode 100644 index 84d7fd8a..00000000 --- a/public/assets/application-2c12ab6ff840dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5347b3c228c629384da313552cf9499549512f29b848fc661c29e19dc4d964c2 -size 236077 diff --git a/public/assets/application-2c12ab6ff840dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css.gz b/public/assets/application-2c12ab6ff840dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css.gz deleted file mode 100644 index 8ac0299a..00000000 --- a/public/assets/application-2c12ab6ff840dcb05c6f3bdcb0e3835798cd2fdf0afb7a34deb893981e45adfa.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5ca6bf4ab9cbbb9d7c184567260e21ffe82c72b5a860570d57710390a566e1f2 -size 32749 diff --git a/public/assets/application-b1906dfc8db9ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css b/public/assets/application-b1906dfc8db9ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css new file mode 100644 index 00000000..701eed54 --- /dev/null +++ b/public/assets/application-b1906dfc8db9ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e341ea5cc9c00ad1f340c6033404b207ed0e47f9b0a5ace1899c44325f19e7a3 +size 235951 diff --git a/public/assets/application-b1906dfc8db9ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css.gz b/public/assets/application-b1906dfc8db9ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css.gz new file mode 100644 index 00000000..b498dbd2 --- /dev/null +++ b/public/assets/application-b1906dfc8db9ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7d731a73bcce53aa0ee786606c4493a0442b7c1e19f3225321b01376073245d +size 32720 From a18ce05666aa079add46e51213a75dbb3d8da0ee Mon Sep 17 00:00:00 2001 From: f Date: Thu, 20 Apr 2023 21:01:16 -0300 Subject: [PATCH 315/699] =?UTF-8?q?fix:=20no=20decir=20que=20hay=20cambios?= =?UTF-8?q?=20mientras=20se=20est=C3=A1=20compilando?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/site/build_stats.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/site/build_stats.rb b/app/models/site/build_stats.rb index 64e689b6..d5b0c1ad 100644 --- a/app/models/site/build_stats.rb +++ b/app/models/site/build_stats.rb @@ -45,7 +45,7 @@ class Site # # @return [Boolean] def awaiting_publication? - updated_at > (build_stats.jekyll.where(status: true).last&.created_at || updated_at) + waiting? && updated_at > (build_stats.jekyll.where(status: true).last&.created_at || updated_at) end end end From 591b88d2f367ba4833d586d2f32830e0c74e9acc Mon Sep 17 00:00:00 2001 From: f Date: Thu, 20 Apr 2023 21:14:12 -0300 Subject: [PATCH 316/699] fix: usar los posts indexados para obtener la diferencia --- app/models/site/build_stats.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/site/build_stats.rb b/app/models/site/build_stats.rb index d5b0c1ad..d5461bcf 100644 --- a/app/models/site/build_stats.rb +++ b/app/models/site/build_stats.rb @@ -45,7 +45,7 @@ class Site # # @return [Boolean] def awaiting_publication? - waiting? && updated_at > (build_stats.jekyll.where(status: true).last&.created_at || updated_at) + waiting? && updated_at >= (indexed_posts.order(updated_at: :desc).select(:created_at).first&.created_at || 1.second.ago) end end end From e4293184d2e2f68d7b38e117c188717b1d50d89f Mon Sep 17 00:00:00 2001 From: f Date: Thu, 20 Apr 2023 21:16:12 -0300 Subject: [PATCH 317/699] fixup! fix: usar los posts indexados para obtener la diferencia --- app/models/site/build_stats.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/site/build_stats.rb b/app/models/site/build_stats.rb index d5461bcf..63761bae 100644 --- a/app/models/site/build_stats.rb +++ b/app/models/site/build_stats.rb @@ -45,7 +45,7 @@ class Site # # @return [Boolean] def awaiting_publication? - waiting? && updated_at >= (indexed_posts.order(updated_at: :desc).select(:created_at).first&.created_at || 1.second.ago) + waiting? && updated_at >= (indexed_posts.order(updated_at: :desc).select(:updated_at).first&.updated_at || 1.second.ago) end end end From 28375a0f4e72d3052d47da00d018da9d73b03d79 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 21 Apr 2023 12:10:03 -0300 Subject: [PATCH 318/699] =?UTF-8?q?fix:=20detectar=20si=20el=20sitio=20o?= =?UTF-8?q?=20los=20art=C3=ADculos=20fueron=20modificados=20luego=20de=20p?= =?UTF-8?q?ublicar?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/site/build_stats.rb | 41 ++++++++++++++++++++++++++++++++-- 1 file changed, 39 insertions(+), 2 deletions(-) diff --git a/app/models/site/build_stats.rb b/app/models/site/build_stats.rb index 63761bae..23931140 100644 --- a/app/models/site/build_stats.rb +++ b/app/models/site/build_stats.rb @@ -41,11 +41,48 @@ class Site build_stats.jekyll.where(status: true).count.zero? end - # Hubo cambios desde la última publicación? + # Cambios posibles luego de la última publicación exitosa: + # + # * Artículos modificados + # * Configuración modificada + # * Métodos de publicación añadidos # # @return [Boolean] def awaiting_publication? - waiting? && updated_at >= (indexed_posts.order(updated_at: :desc).select(:updated_at).first&.updated_at || 1.second.ago) + waiting? && (post_publication_pending? || configuration_publication_pending?) + end + + # Se modificaron artículos después de publicar el sitio por última + # vez + # + # @return [Boolean] + def post_publication_pending? + last_indexed_post_time > last_publication_time + end + + # Se modificó el sitio después de publicarlo por última vez + # + # @return [Boolean] + def configuration_publication_pending? + updated_at > last_publication_time + end + + private + + # Encuentra el último artículo modificado. Si no hay ninguno, + # devuelve la fecha de modificación del sitio. + # + # @return [Time] + def last_indexed_post_time + indexed_posts.order(updated_at: :desc).select(:updated_at).first&.updated_at || updated_at + end + + # Encuentra la fecha de última publicación exitosa, si no hay + # ninguno, devuelve la fecha de modificación del sitio. + # + # @return [Time] + def last_publication_time + build_stats.jekyll.where(status: true).order(created_at: :desc).select(:created_at).first&.created_at || updated_at end end end From 49f19b59ab37895c6983adad62dbdc086f2d83d9 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 21 Apr 2023 12:15:22 -0300 Subject: [PATCH 319/699] =?UTF-8?q?fix:=20detectar=20cambios=20de=20config?= =?UTF-8?q?uraci=C3=B3n=20por=20separado?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/site/build_stats.rb | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/app/models/site/build_stats.rb b/app/models/site/build_stats.rb index 23931140..40ace36f 100644 --- a/app/models/site/build_stats.rb +++ b/app/models/site/build_stats.rb @@ -49,7 +49,7 @@ class Site # # @return [Boolean] def awaiting_publication? - waiting? && (post_publication_pending? || configuration_publication_pending?) + waiting? && (post_publication_pending? || deploy_pending? || configuration_pending?) end # Se modificaron artículos después de publicar el sitio por última @@ -63,20 +63,35 @@ class Site # Se modificó el sitio después de publicarlo por última vez # # @return [Boolean] - def configuration_publication_pending? - updated_at > last_publication_time + def deploy_pending? + last_deploy_time > last_publication_time + end + + # Se modificó la configuración del sitio + # + # @return [Boolean] + def configuration_pending? + File.mtime(config.path) > last_publication_time end private - # Encuentra el último artículo modificado. Si no hay ninguno, - # devuelve la fecha de modificación del sitio. + # Encuentra la fecha del último artículo modificado. Si no hay + # ninguno, devuelve la fecha de modificación del sitio. # # @return [Time] def last_indexed_post_time indexed_posts.order(updated_at: :desc).select(:updated_at).first&.updated_at || updated_at end + # Encuentra la fecha de última modificación de los métodos de + # publicación. + # + # @return [Time] + def last_deploy_time + deploys.order(updated_at: :desc).select(:updated_at).first&.updated_at || updated_at + end + # Encuentra la fecha de última publicación exitosa, si no hay # ninguno, devuelve la fecha de modificación del sitio. # From 285539842fe9c9dca8067a06dd0e0f0da53c44ec Mon Sep 17 00:00:00 2001 From: f Date: Fri, 21 Apr 2023 12:18:06 -0300 Subject: [PATCH 320/699] =?UTF-8?q?fixup!=20fix:=20detectar=20cambios=20de?= =?UTF-8?q?=20configuraci=C3=B3n=20por=20separado?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/site/build_stats.rb | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/app/models/site/build_stats.rb b/app/models/site/build_stats.rb index 40ace36f..0d1d5a57 100644 --- a/app/models/site/build_stats.rb +++ b/app/models/site/build_stats.rb @@ -49,14 +49,14 @@ class Site # # @return [Boolean] def awaiting_publication? - waiting? && (post_publication_pending? || deploy_pending? || configuration_pending?) + waiting? && (post_pending? || deploy_pending? || configuration_pending?) end # Se modificaron artículos después de publicar el sitio por última # vez # # @return [Boolean] - def post_publication_pending? + def post_pending? last_indexed_post_time > last_publication_time end @@ -71,7 +71,7 @@ class Site # # @return [Boolean] def configuration_pending? - File.mtime(config.path) > last_publication_time + last_configuration_time > last_publication_time end private @@ -99,6 +99,13 @@ class Site def last_publication_time build_stats.jekyll.where(status: true).order(created_at: :desc).select(:created_at).first&.created_at || updated_at end + + # Fecha de última modificación de la configuración + # + # @return [Time] + def last_configuration_time + File.mtime(config.path) + end end end end From f84a92f85e1f29b7efa61e4ad3a5aa63fefa7448 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Fri, 21 Apr 2023 15:44:44 +0000 Subject: [PATCH 321/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- ...3002071cf20cb0e57e4f771c70fa5a843d587b8fc6a77a4a5df4ae1.css | 3 +++ ...2071cf20cb0e57e4f771c70fa5a843d587b8fc6a77a4a5df4ae1.css.gz | 3 +++ ...b2fb318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css | 3 --- ...b318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css.gz | 3 --- 5 files changed, 7 insertions(+), 7 deletions(-) create mode 100644 public/assets/application-ae222afd03002071cf20cb0e57e4f771c70fa5a843d587b8fc6a77a4a5df4ae1.css create mode 100644 public/assets/application-ae222afd03002071cf20cb0e57e4f771c70fa5a843d587b8fc6a77a4a5df4ae1.css.gz delete mode 100644 public/assets/application-de1e334dab2fb318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css delete mode 100644 public/assets/application-de1e334dab2fb318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 3fc2e448..7e702aa6 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d388c1675a77c22f0713c3b7de88598967e7f3b7c3be847ff70f65a80d6d44f9 +oid sha256:4cf127bfc3c98b03028a162e15a2f614c44feac168b5b1f7ecd0335431a54496 size 14525 diff --git a/public/assets/application-ae222afd03002071cf20cb0e57e4f771c70fa5a843d587b8fc6a77a4a5df4ae1.css b/public/assets/application-ae222afd03002071cf20cb0e57e4f771c70fa5a843d587b8fc6a77a4a5df4ae1.css new file mode 100644 index 00000000..63680ee3 --- /dev/null +++ b/public/assets/application-ae222afd03002071cf20cb0e57e4f771c70fa5a843d587b8fc6a77a4a5df4ae1.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:930c5b3d6b7bfc046c58a6881480c8b319048ceeb08dad76e30c2d5f95fd584c +size 236114 diff --git a/public/assets/application-ae222afd03002071cf20cb0e57e4f771c70fa5a843d587b8fc6a77a4a5df4ae1.css.gz b/public/assets/application-ae222afd03002071cf20cb0e57e4f771c70fa5a843d587b8fc6a77a4a5df4ae1.css.gz new file mode 100644 index 00000000..e4e1f350 --- /dev/null +++ b/public/assets/application-ae222afd03002071cf20cb0e57e4f771c70fa5a843d587b8fc6a77a4a5df4ae1.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ca4d3bf8237878a9ae25e2a85cf7f15f608b911c8551c380c6374c208e10037 +size 32763 diff --git a/public/assets/application-de1e334dab2fb318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css b/public/assets/application-de1e334dab2fb318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css deleted file mode 100644 index ce830bab..00000000 --- a/public/assets/application-de1e334dab2fb318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e801d58b89f3a3566e82cfc48aafc4fc14df69d86bc891c45c7059d03225dafd -size 235914 diff --git a/public/assets/application-de1e334dab2fb318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css.gz b/public/assets/application-de1e334dab2fb318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css.gz deleted file mode 100644 index 24786a6b..00000000 --- a/public/assets/application-de1e334dab2fb318b7324453c6727b96c6efa52862107338e5ee8185dc6eb7d3.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:36b2cb51e3eb934c7d01f5be0643e4e44408eae95aaae0d13cbedd9a78aee721 -size 32704 From 67ffba83f6bc06ae50ce9a29736d76a4deb66d18 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 21 Apr 2023 14:53:37 -0300 Subject: [PATCH 322/699] Revert "fix: establecer el color por defecto de los botones" This reverts commit 05bfc95db6170f8a6f00fc2f9ad5798660d40e34. --- app/assets/stylesheets/application.scss | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 64b75712..9e5dc1e6 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -31,11 +31,6 @@ $sizes: ( "70ch": 70ch, ); -.btn { - background-color: var(--foreground); - color: var(--background); -} - @import "bootstrap"; @import "editor"; @@ -207,6 +202,8 @@ svg { } .btn { + background-color: var(--foreground); + color: var(--background); border: none; border-radius: 0; margin-right: 0.3rem; From 8c0237afc54e82f610c4e7b2a0cb99b652d45812 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Fri, 21 Apr 2023 17:59:44 +0000 Subject: [PATCH 323/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 7e702aa6..3c0c3cba 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4cf127bfc3c98b03028a162e15a2f614c44feac168b5b1f7ecd0335431a54496 +oid sha256:ffbc2231c45cbdbc85a4613c3055f0fd41baba2b7f0843ae30dee519bd74c59f size 14525 From 54a3619e6a4fb1f7ea4967eb85453b46129b09cb Mon Sep 17 00:00:00 2001 From: f Date: Sat, 22 Apr 2023 19:56:24 -0300 Subject: [PATCH 324/699] Revert "fix: deshabilitar el modo oscuro #12994" This reverts commit e504501678096249dea3f170ccede64c7f191cd2. --- app/assets/stylesheets/application.scss | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 9e5dc1e6..2a93444a 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -48,6 +48,14 @@ $sizes: ( --color: #{$magenta}; } +@media (prefers-color-scheme: dark) { + :root { + --foreground: #{$white}; + --background: #{$black}; + --color: #{$cyan}; + } +} + // TODO: Encontrar la forma de generar esto desde los locales de Rails $custom-file-text: ( en: 'Browse', From 9cc0ca237aa2eac9aed3dedbcce7e8125df89054 Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Sat, 22 Apr 2023 23:02:51 +0000 Subject: [PATCH 325/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- ...14d9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css | 3 --- ...9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css.gz | 3 --- ...762d0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css | 3 +++ ...d0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css.gz | 3 +++ 5 files changed, 7 insertions(+), 7 deletions(-) delete mode 100644 public/assets/application-21195aaec14d9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css delete mode 100644 public/assets/application-21195aaec14d9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css.gz create mode 100644 public/assets/application-bf587b120762d0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css create mode 100644 public/assets/application-bf587b120762d0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 3c0c3cba..334f2061 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ffbc2231c45cbdbc85a4613c3055f0fd41baba2b7f0843ae30dee519bd74c59f +oid sha256:d55c7c6d6e6dc32fa980ab8752d37041e1f36158d319a89fee78cf073042805a size 14525 diff --git a/public/assets/application-21195aaec14d9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css b/public/assets/application-21195aaec14d9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css deleted file mode 100644 index ac244345..00000000 --- a/public/assets/application-21195aaec14d9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:acf5a2de364f4771d56ebd7a162e91d88944662450775c4ad35ae602d30da19d -size 235908 diff --git a/public/assets/application-21195aaec14d9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css.gz b/public/assets/application-21195aaec14d9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css.gz deleted file mode 100644 index 6ae7ce54..00000000 --- a/public/assets/application-21195aaec14d9c189603768dac1b0afd4ff43bf80d171a8490a1bfe1739485f1.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c46d6d95bd1c5ad9a26c637fc3057369c817f4aa9b419dd9cb181805cb2d5a08 -size 32701 diff --git a/public/assets/application-bf587b120762d0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css b/public/assets/application-bf587b120762d0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css new file mode 100644 index 00000000..a3e7b5d3 --- /dev/null +++ b/public/assets/application-bf587b120762d0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c5f8a91f8c54f53251449658b86be3ec6b3413e62df65fbe2b3a345bd523585 +size 236051 diff --git a/public/assets/application-bf587b120762d0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css.gz b/public/assets/application-bf587b120762d0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css.gz new file mode 100644 index 00000000..b7cc9a34 --- /dev/null +++ b/public/assets/application-bf587b120762d0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b03cf49aab868da9abbb8e105f5af74dc259756d31793386281a7dde7c93937 +size 32754 From 07145aad79c439d3da2d6a57f09928ea21508835 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 24 Apr 2023 14:46:56 -0300 Subject: [PATCH 326/699] fix: no sincronizar los sitios de testeo --- app/services/site_service.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 75e86fb4..43d1390d 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -15,7 +15,8 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do add_role temporal: false, rol: 'usuarie' site.deploys.build type: 'DeployLocal' - sync_nodes + # Los sitios de testing no se sincronizan + sync_nodes unless site.name.end_with? '.testing' I18n.with_locale(usuarie.lang.to_sym || I18n.default_locale) do # No se puede llamar a site.config antes de save porque el sitio From e33b53f5e6c60ccfcae92c9f22ebc41cc4b53a4d Mon Sep 17 00:00:00 2001 From: f Date: Mon, 24 Apr 2023 14:47:16 -0300 Subject: [PATCH 327/699] fix: merge fallido --- app/services/site_service.rb | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 43d1390d..47b545c1 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -222,18 +222,6 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do private - def with_all_locales(&block) - site.locales.each do |locale| - next unless I18n.available_locales.include? locale - - Mobility.with_locale(locale) do - yield locale - end - end - end - - private - def with_all_locales(&block) site.locales.map do |locale| next unless I18n.available_locales.include? locale From 9ce7e1dd162a1470b3383fa22c746325bb033a75 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 25 Apr 2023 13:31:58 -0300 Subject: [PATCH 328/699] fix: typo --- config/locales/en.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/locales/en.yml b/config/locales/en.yml index 5b65f42e..88567471 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -304,7 +304,7 @@ en: storage network may continue retaining copies of the data indefinitely. - [Learn more](https://sutty.nl/learn-more-about-publish-to-dweb-functionality/) + [Learn more](https://sutty.nl/en/learn-more-about-publish-to-dweb-functionality/) stats: index: title: Statistics From 1ec09a0b5d5b6dd5589d99aa3da6c1d93e38b830 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 13 May 2023 15:56:39 -0300 Subject: [PATCH 329/699] fix: poder informar errores con archivos subidos #13427 --- app/jobs/gitlab_notifier_job.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/jobs/gitlab_notifier_job.rb b/app/jobs/gitlab_notifier_job.rb index 7308a4ef..308adfc7 100644 --- a/app/jobs/gitlab_notifier_job.rb +++ b/app/jobs/gitlab_notifier_job.rb @@ -30,7 +30,7 @@ class GitlabNotifierJob < ApplicationJob count: 1, issue: @issue['iid'], user_agents: [user_agent].compact, - params: [request&.filtered_parameters].compact, + params: request&.filtered_parameters&.as_json, urls: [url].compact } end @@ -192,7 +192,7 @@ class GitlabNotifierJob < ApplicationJob ``` #{request.request_method} #{url} - #{pp request.filtered_parameters} + #{pp request.filtered_parameters.as_json} ``` REQUEST From d5c6934b83bf125f965691aa6560d09d2a640d62 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 13 May 2023 16:08:21 -0300 Subject: [PATCH 330/699] fix: ignorar posts #13428 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit versiones de jekyll-locales menores a 0.2 dejan symlinks rotos en lugar de la colección _posts. con esto ignoramos la colección del todo, porque solo usamos las que están en idiomas. sutty obliga efectivamente a todos los sitios jekyll a usar jekyll-locales o al menos colocar los posts en un directorio de idiomas. una salvedad sería agregar esto en la configuración: ```yaml locales: - "posts" ``` --- config/initializers/core_extensions.rb | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/config/initializers/core_extensions.rb b/config/initializers/core_extensions.rb index 1516a43a..abbdfda1 100644 --- a/config/initializers/core_extensions.rb +++ b/config/initializers/core_extensions.rb @@ -37,6 +37,19 @@ end # # TODO: Aplicar monkey patches en otro lado... module Jekyll + Configuration.class_eval do + # No agregar colecciones por defecto, solo las que digamos en base a + # los idiomas. Esto remueve la colección "posts". + # + # Las colecciones de idiomas son agregadas por Site. + # + # @see Site#configuration + # @return [Jekyll::Configuration] + def add_default_collections + self + end + end + Site.class_eval do def configure_theme self.theme = nil From 491b5f0b3af04db757c974cd3ae8482a59b28139 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 13 May 2023 17:31:40 -0300 Subject: [PATCH 331/699] fix: leer los archivos de datos correctamente #13428 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit los archivos de datos se leen con rutas relativas, lo que puede mezclar el cwd en usos concurrentes. depreca la dependencia en jekyll-data además! --- Gemfile | 1 - Gemfile.lock | 3 -- .../jekyll/readers/data_reader_decorator.rb | 36 +++++++++++++++++++ app/models/site.rb | 4 +-- config/initializers/core_extensions.rb | 34 +++++++++++------- 5 files changed, 58 insertions(+), 20 deletions(-) create mode 100644 app/lib/jekyll/readers/data_reader_decorator.rb diff --git a/Gemfile b/Gemfile index 5b086971..ac81b570 100644 --- a/Gemfile +++ b/Gemfile @@ -58,7 +58,6 @@ gem 'inline_svg' gem 'httparty' gem 'safe_yaml' gem 'jekyll', '~> 4.2.0' -gem 'jekyll-data' gem 'jekyll-commonmark' gem 'jekyll-images' gem 'jekyll-include-cache' diff --git a/Gemfile.lock b/Gemfile.lock index 2e741f0b..74e4775f 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -276,8 +276,6 @@ GEM terminal-table (~> 2.0) jekyll-commonmark (1.4.0) commonmarker (~> 0.22) - jekyll-data (1.1.2) - jekyll (>= 3.3, < 5.0.0) jekyll-images (0.4.0) jekyll (~> 4) ruby-filemagic (~> 0.7) @@ -591,7 +589,6 @@ DEPENDENCIES jbuilder (~> 2.5) jekyll (~> 4.2.0) jekyll-commonmark - jekyll-data jekyll-images jekyll-include-cache kaminari diff --git a/app/lib/jekyll/readers/data_reader_decorator.rb b/app/lib/jekyll/readers/data_reader_decorator.rb new file mode 100644 index 00000000..9fed7ac7 --- /dev/null +++ b/app/lib/jekyll/readers/data_reader_decorator.rb @@ -0,0 +1,36 @@ +# frozen_string_literal: true + +module Jekyll + module Readers + # Permite leer datos utilizando rutas absolutas. + # + # {Jekyll::DataReader} usa {Dir.chdir} con rutas relativas, lo que + # en nuestro uso provoca confusiones en el lector de datos. + # + # Con este módulo, podemos leer todos los archivos usando rutas + # absolutas, lo que nos permite reemplazar jekyll-data, que agregaba + # código duplicado. + module DataReaderDecorator + extend ActiveSupport::Concern + + included do + def read_data_to(dir, data) + return unless File.directory?(dir) && !@entry_filter.symlink?(dir) + + Dir.glob(File.join(dir, '*')).each do |path| + next if @entry_filter.symlink?(path) + + entry = Pathname.new(path).relative_path_from(dir).to_s + + if File.directory?(path) + read_data_to(path, data[sanitize_filename(entry)] = {}) + else + key = sanitize_filename(File.basename(entry, ".*")) + data[key] = read_data_file(path) + end + end + end + end + end + end +end diff --git a/app/models/site.rb b/app/models/site.rb index 4ae5e2a7..eb637dc9 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -375,9 +375,7 @@ class Site < ApplicationRecord begin install_gems - Jekyll::Site.new(configuration).tap do |site| - site.reader = JekyllData::Reader.new(site) if site.theme - end + Jekyll::Site.new(configuration) end end diff --git a/config/initializers/core_extensions.rb b/config/initializers/core_extensions.rb index abbdfda1..861491ae 100644 --- a/config/initializers/core_extensions.rb +++ b/config/initializers/core_extensions.rb @@ -2,6 +2,7 @@ String.include CoreExtensions::String::StripTags Jekyll::Document.include CoreExtensions::Jekyll::Document::Path +Jekyll::DataReader.include Jekyll::Readers::DataReaderDecorator # Definir tags de Liquid que provienen de complementos para que siempre # devuelvan contenido vacío. @@ -70,9 +71,27 @@ module Jekyll # No necesitamos los archivos estáticos def retrieve_static_files(_, _); end - # Solo lee los datos + # Solo lee los datos, desde la plantilla y luego desde el sitio, + # usando rutas absolutas, para evitar el uso confuso de Dir.chdir. + # + # Reemplaza jekyll-data también! + # + # @return [Hash] def read_data - @site.data = DataReader.new(site).read(site.config['data_dir']) + @site.data = + begin + reader = DataReader.new(site) + theme_dir = site.in_theme_dir('_data') + data_dir = site.in_source_dir(site.config['data_dir']) + + if theme_dir + reader.read_data_to(theme_dir, reader.content) + reader.read_data_to(data_dir, reader.content) + reader.content + else + reader.read data_dir + end + end end # Lee los layouts @@ -174,14 +193,3 @@ module PgSearch end end end - -# JekyllData::Reader del plugin jekyll-data modifica Jekyll::Site#reader -# para también leer los datos que vienen en el theme. -module JekyllData - Reader.class_eval do - def read_data - super - read_theme_data - end - end -end From b50cca1d757d53e594e9c0643daeea3bf1d94bd2 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 13 May 2023 17:38:39 -0300 Subject: [PATCH 332/699] fix: deprecar Site#run_in_path #13428 ya no es necesario y Dir.chdir no es concurrente, con lo que nos ahorramos posibles bugs. --- app/models/site.rb | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/app/models/site.rb b/app/models/site.rb index eb637dc9..c6a57830 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -212,10 +212,8 @@ class Site < ApplicationRecord # Trae los datos del directorio _data dentro del sitio def data unless jekyll.data.present? - run_in_path do - jekyll.reader.read_data - jekyll.data['layouts'] ||= {} - end + jekyll.reader.read_data + jekyll.data['layouts'] ||= {} end jekyll.data @@ -225,9 +223,7 @@ class Site < ApplicationRecord # colecciones. def collections unless @read - run_in_path do - jekyll.reader.read_collections - end + jekyll.reader.read_collections @read = true end @@ -322,9 +318,7 @@ class Site < ApplicationRecord # # @return [Hash] def theme_layouts - run_in_path do - jekyll.reader.read_layouts - end + jekyll.reader.read_layouts end # Trae todos los valores disponibles para un campo @@ -550,10 +544,6 @@ class Site < ApplicationRecord I18n.t('activerecord.errors.models.site.attributes.design_id.layout_incompatible.error')) end - def run_in_path(&block) - Dir.chdir path, &block - end - # Instala las gemas cuando es necesario: # # * El sitio existe From 907f9b8bc699e36a14282ab85b5bbc1aa92df0df Mon Sep 17 00:00:00 2001 From: f Date: Sat, 13 May 2023 17:41:00 -0300 Subject: [PATCH 333/699] BREAKING CHANGE: deprecar Deploy#gems_dir por Site#bundle_path #13428 --- app/models/deploy.rb | 5 ----- app/models/deploy_local.rb | 4 ++-- app/models/site.rb | 5 +++++ 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/app/models/deploy.rb b/app/models/deploy.rb index a92708c0..573fe2f0 100644 --- a/app/models/deploy.rb +++ b/app/models/deploy.rb @@ -50,11 +50,6 @@ class Deploy < ApplicationRecord site.path end - # XXX: Ver DeployLocal#bundle - def gems_dir - @gems_dir ||= Rails.root.join('_storage', 'gems', site.name) - end - # Corre un comando, lo registra en la base de datos y devuelve el # estado. # diff --git a/app/models/deploy_local.rb b/app/models/deploy_local.rb index d3d81d9a..ec583bb0 100644 --- a/app/models/deploy_local.rb +++ b/app/models/deploy_local.rb @@ -55,7 +55,7 @@ class DeployLocal < Deploy # # @return [nil] def cleanup! - FileUtils.rm_rf(gems_dir) + FileUtils.rm_rf(site.bundle_path) FileUtils.rm_rf(yarn_cache_dir) FileUtils.rm_rf(File.join(site.path, 'node_modules')) FileUtils.rm_rf(File.join(site.path, '.sass-cache')) @@ -141,7 +141,7 @@ class DeployLocal < Deploy # XXX: Desde que ya no compartimos el directorio de gemas, tenemos # que hacer limpieza después de instalar. - run %(bundle install --deployment --no-cache --path="#{gems_dir}" --clean --without test development), output: output + run %(bundle install --deployment --no-cache --path="#{site.bundle_path}" --clean --without test development), output: output end def jekyll_build(output: false) diff --git a/app/models/site.rb b/app/models/site.rb index c6a57830..eda37905 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -453,6 +453,11 @@ class Site < ApplicationRecord @docs = nil end + # @return [Pathname] + def bundle_path + @bundle_path ||= Rails.root.join('_storage', 'gems', name) + end + private # Asegurarse que el sitio tenga una llave privada From 779da676fc39d7b33e98cafdb971108821228cd8 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 13 May 2023 17:42:14 -0300 Subject: [PATCH 334/699] fix: no usar :send #13428 --- app/models/deploy_local.rb | 24 ++++++++++++------------ app/models/site.rb | 5 +++-- 2 files changed, 15 insertions(+), 14 deletions(-) diff --git a/app/models/deploy_local.rb b/app/models/deploy_local.rb index ec583bb0..b5a15cfe 100644 --- a/app/models/deploy_local.rb +++ b/app/models/deploy_local.rb @@ -7,6 +7,18 @@ class DeployLocal < Deploy before_destroy :remove_destination! + def git_lfs(output: false) + run %(git lfs fetch), output: output + run %(git lfs checkout), output: output + end + + def bundle(output: false) + # XXX: Desde que ya no compartimos el directorio de gemas, tenemos + # que hacer limpieza después de instalar. + + run %(bundle install --deployment --no-cache --path="#{site.bundle_path}" --clean --without test development), output: output + end + # Realizamos la construcción del sitio usando Jekyll y un entorno # limpio para no pasarle secretos # @@ -121,11 +133,6 @@ class DeployLocal < Deploy run 'pnpm install --production', output: output end - def git_lfs(output: false) - run %(git lfs fetch), output: output - run %(git lfs checkout), output: output - end - def gem(output: false) run %(gem install bundler --no-document), output: output end @@ -137,13 +144,6 @@ class DeployLocal < Deploy run 'yarn install --production', output: output end - def bundle(output: false) - # XXX: Desde que ya no compartimos el directorio de gemas, tenemos - # que hacer limpieza después de instalar. - - run %(bundle install --deployment --no-cache --path="#{site.bundle_path}" --clean --without test development), output: output - end - def jekyll_build(output: false) run %(bundle exec jekyll build --trace --profile --destination "#{escaped_destination}"), output: output end diff --git a/app/models/site.rb b/app/models/site.rb index eda37905..cd2385c5 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -558,10 +558,11 @@ class Site < ApplicationRecord def install_gems return unless persisted? - deploys.find_by_type('DeployLocal').send(:git_lfs) + deploy_local = deploys.find_by_type('DeployLocal') + deploy_local.git_lfs if !gem_dir? || gemfile_updated? || gemfile_lock_updated? - deploys.find_by_type('DeployLocal').send(:bundle) + deploy_local.bundle touch end end From 7ec98dadefec8b956fd7c8a70f0f0428bb7f8e7d Mon Sep 17 00:00:00 2001 From: f Date: Sat, 13 May 2023 17:42:37 -0300 Subject: [PATCH 335/699] =?UTF-8?q?fix:=20en=20algunos=20casos=20el=20dire?= =?UTF-8?q?ctorio=20exist=C3=ADa=20aunque=20vac=C3=ADo=20#13428?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/site.rb | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/app/models/site.rb b/app/models/site.rb index cd2385c5..04505f49 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -561,15 +561,25 @@ class Site < ApplicationRecord deploy_local = deploys.find_by_type('DeployLocal') deploy_local.git_lfs - if !gem_dir? || gemfile_updated? || gemfile_lock_updated? + if !gems_installed? || gemfile_updated? || gemfile_lock_updated? deploy_local.bundle touch end end + def gem_path + @gem_path ||= + begin + ruby_version = Gem::Version.new(RUBY_VERSION) + ruby_version.canonical_segments[2] = 0 + + bundle_path.join('ruby', ruby_version.canonical_segments.join('.')) + end + end + # Detecta si el repositorio de gemas existe - def gem_dir? - Rails.root.join('_storage', 'gems', name).directory? + def gems_installed? + gem_path.directory? && !gem_path.empty? end # Detecta si el Gemfile fue modificado From a8f93b29e1e154a082be747e67a15f51c0ff1dd5 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 13 May 2023 17:43:02 -0300 Subject: [PATCH 336/699] fix: no fallar si no existe el Gemfile.lock #13428 --- app/models/site.rb | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/app/models/site.rb b/app/models/site.rb index 04505f49..a67b3b5b 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -587,8 +587,15 @@ class Site < ApplicationRecord updated_at < File.mtime(File.join(path, 'Gemfile')) end + # @return [String] + def gemfile_lock_path + @gemfile_lock_path ||= File.join(path, 'Gemfile.lock') + end + # Detecta si el Gemfile.lock fue modificado def gemfile_lock_updated? - updated_at < File.mtime(File.join(path, 'Gemfile.lock')) + return false unless File.exist? gemfile_lock_path + + updated_at < File.mtime(gemfile_lock_path) end end From a4fd8bcc8537653146448275580e00976eaf9b86 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 13 May 2023 17:48:06 -0300 Subject: [PATCH 337/699] fix: permite instalar gemas por primera vez #13428 --- app/models/deploy_local.rb | 2 +- app/models/site.rb | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/app/models/deploy_local.rb b/app/models/deploy_local.rb index b5a15cfe..4f8744f3 100644 --- a/app/models/deploy_local.rb +++ b/app/models/deploy_local.rb @@ -16,7 +16,7 @@ class DeployLocal < Deploy # XXX: Desde que ya no compartimos el directorio de gemas, tenemos # que hacer limpieza después de instalar. - run %(bundle install --deployment --no-cache --path="#{site.bundle_path}" --clean --without test development), output: output + run %(bundle install #{'--deployment' if site.gemfile_lock_path?} --no-cache --path="#{site.bundle_path}" --clean --without test development), output: output end # Realizamos la construcción del sitio usando Jekyll y un entorno diff --git a/app/models/site.rb b/app/models/site.rb index a67b3b5b..b0edc08b 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -458,6 +458,10 @@ class Site < ApplicationRecord @bundle_path ||= Rails.root.join('_storage', 'gems', name) end + def gemfile_lock_path? + File.exist? gemfile_lock_path + end + private # Asegurarse que el sitio tenga una llave privada @@ -594,7 +598,7 @@ class Site < ApplicationRecord # Detecta si el Gemfile.lock fue modificado def gemfile_lock_updated? - return false unless File.exist? gemfile_lock_path + return false unless gemfile_lock_path? updated_at < File.mtime(gemfile_lock_path) end From 5b562643dd7201afd8af5f7589ba3ab7f1d832c1 Mon Sep 17 00:00:00 2001 From: Sutty Date: Tue, 16 May 2023 16:19:00 +0000 Subject: [PATCH 338/699] fix: dump production schema --- db/schema.rb | 258 +++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 239 insertions(+), 19 deletions(-) diff --git a/db/schema.rb b/db/schema.rb index fd82d447..a898b0e8 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -10,14 +10,15 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema.define(version: 2023_04_15_153231) do +ActiveRecord::Schema.define(version: 2023_04_24_174544) do # These are extensions that must be enabled in order to support this database + enable_extension "dblink" enable_extension "pg_trgm" enable_extension "pgcrypto" enable_extension "plpgsql" - create_table "access_logs", id: :uuid, default: nil, force: :cascade do |t| + create_table "access_logs", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| t.string "host" t.float "msec" t.string "server_protocol" @@ -65,6 +66,13 @@ ActiveRecord::Schema.define(version: 2023_04_15_153231) do t.boolean "crawler", default: false t.string "http_referer" t.datetime "created_at", precision: 6 + t.string "request_uri", default: "" + t.decimal "datacenter_co2" + t.decimal "network_co2" + t.decimal "consumer_device_co2" + t.decimal "production_co2" + t.decimal "total_co2" + t.string "node" t.index ["geoip2_data_city_name"], name: "index_access_logs_on_geoip2_data_city_name" t.index ["geoip2_data_country_name"], name: "index_access_logs_on_geoip2_data_country_name" t.index ["host"], name: "index_access_logs_on_host" @@ -78,7 +86,7 @@ ActiveRecord::Schema.define(version: 2023_04_15_153231) do t.string "name", null: false t.text "body" t.string "record_type", null: false - t.bigint "record_id", null: false + t.integer "record_id", null: false t.datetime "created_at", precision: 6, null: false t.datetime "updated_at", precision: 6, null: false t.index ["record_type", "record_id", "name"], name: "index_action_text_rich_texts_uniqueness", unique: true @@ -87,8 +95,8 @@ ActiveRecord::Schema.define(version: 2023_04_15_153231) do create_table "active_storage_attachments", force: :cascade do |t| t.string "name", null: false t.string "record_type", null: false - t.bigint "record_id", null: false - t.bigint "blob_id", null: false + t.integer "record_id", null: false + t.integer "blob_id", null: false t.datetime "created_at", null: false t.index ["blob_id"], name: "index_active_storage_attachments_on_blob_id" t.index ["record_type", "record_id", "name", "blob_id"], name: "index_active_storage_attachments_uniqueness", unique: true @@ -103,7 +111,7 @@ ActiveRecord::Schema.define(version: 2023_04_15_153231) do t.string "checksum", null: false t.datetime "created_at", null: false t.string "service_name", null: false - t.index ["key"], name: "index_active_storage_blobs_on_key", unique: true + t.index ["key", "service_name"], name: "index_active_storage_blobs_on_key_and_service_name", unique: true end create_table "active_storage_variant_records", force: :cascade do |t| @@ -170,7 +178,7 @@ ActiveRecord::Schema.define(version: 2023_04_15_153231) do create_table "build_stats", force: :cascade do |t| t.datetime "created_at", null: false t.datetime "updated_at", null: false - t.bigint "deploy_id" + t.integer "deploy_id" t.bigint "bytes" t.float "seconds" t.string "action", null: false @@ -179,7 +187,15 @@ ActiveRecord::Schema.define(version: 2023_04_15_153231) do t.index ["deploy_id"], name: "index_build_stats_on_deploy_id" end - create_table "csp_reports", id: :uuid, default: nil, force: :cascade do |t| + create_table "codes_of_conduct", force: :cascade do |t| + t.datetime "created_at", precision: 6, null: false + t.datetime "updated_at", precision: 6, null: false + t.string "title" + t.text "description" + t.text "content" + end + + create_table "csp_reports", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| t.datetime "created_at", precision: 6, null: false t.datetime "updated_at", precision: 6, null: false t.string "disposition" @@ -199,7 +215,7 @@ ActiveRecord::Schema.define(version: 2023_04_15_153231) do create_table "deploys", force: :cascade do |t| t.datetime "created_at", null: false t.datetime "updated_at", null: false - t.bigint "site_id" + t.integer "site_id" t.string "type" t.text "values" t.index ["site_id"], name: "index_deploys_on_site_id" @@ -218,9 +234,19 @@ ActiveRecord::Schema.define(version: 2023_04_15_153231) do t.text "credits" t.string "designer_url" t.integer "priority" + t.index ["gem"], name: "index_designs_on_gem", unique: true + t.index ["name"], name: "index_designs_on_name", unique: true end - create_table "indexed_posts", id: :uuid, default: -> { "gen_random_uuid()" }, force: :cascade do |t| + create_table "distributed_press_publishers", force: :cascade do |t| + t.datetime "created_at", precision: 6, null: false + t.datetime "updated_at", precision: 6, null: false + t.string "instance" + t.text "token_ciphertext", null: false + t.datetime "expires_at" + end + + create_table "indexed_posts", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| t.bigint "site_id" t.datetime "created_at", precision: 6, null: false t.datetime "updated_at", precision: 6, null: false @@ -233,6 +259,7 @@ ActiveRecord::Schema.define(version: 2023_04_15_153231) do t.tsvector "indexed_content" t.integer "order", default: 0 t.string "dictionary" + t.uuid "post_id" t.index ["front_matter"], name: "index_indexed_posts_on_front_matter", using: :gin t.index ["indexed_content"], name: "index_indexed_posts_on_indexed_content", using: :gin t.index ["layout"], name: "index_indexed_posts_on_layout" @@ -248,6 +275,8 @@ ActiveRecord::Schema.define(version: 2023_04_15_153231) do t.text "deed" t.string "url" t.string "icons" + t.string "short_description" + t.index ["name"], name: "index_licencias_on_name", unique: true end create_table "log_entries", force: :cascade do |t| @@ -273,7 +302,7 @@ ActiveRecord::Schema.define(version: 2023_04_15_153231) do t.string "key", null: false t.string "value" t.string "translatable_type" - t.bigint "translatable_id" + t.integer "translatable_id" t.datetime "created_at", null: false t.datetime "updated_at", null: false t.index ["translatable_id", "translatable_type", "key"], name: "index_mobility_string_translations_on_translatable_attribute" @@ -286,18 +315,68 @@ ActiveRecord::Schema.define(version: 2023_04_15_153231) do t.string "key", null: false t.text "value" t.string "translatable_type" - t.bigint "translatable_id" + t.integer "translatable_id" t.datetime "created_at", null: false t.datetime "updated_at", null: false t.index ["translatable_id", "translatable_type", "key"], name: "index_mobility_text_translations_on_translatable_attribute" t.index ["translatable_id", "translatable_type", "locale", "key"], name: "index_mobility_text_translations_on_keys", unique: true end + create_table "privacy_policies", force: :cascade do |t| + t.datetime "created_at", precision: 6, null: false + t.datetime "updated_at", precision: 6, null: false + t.string "title" + t.text "description" + t.text "content" + end + + create_table "que_jobs", comment: "7", force: :cascade do |t| + t.integer "priority", limit: 2, default: 100, null: false + t.datetime "run_at", default: -> { "now()" }, null: false + t.text "job_class", null: false + t.integer "error_count", default: 0, null: false + t.text "last_error_message" + t.text "queue", default: "default", null: false + t.text "last_error_backtrace" + t.datetime "finished_at" + t.datetime "expired_at" + t.jsonb "args", default: [], null: false + t.jsonb "data", default: {}, null: false + t.integer "job_schema_version", null: false + t.jsonb "kwargs", default: {}, null: false + t.index ["args"], name: "que_jobs_args_gin_idx", opclass: :jsonb_path_ops, using: :gin + t.index ["data"], name: "que_jobs_data_gin_idx", opclass: :jsonb_path_ops, using: :gin + t.index ["job_schema_version", "queue", "priority", "run_at", "id"], name: "que_poll_idx", where: "((finished_at IS NULL) AND (expired_at IS NULL))" + t.index ["kwargs"], name: "que_jobs_kwargs_gin_idx", opclass: :jsonb_path_ops, using: :gin + t.check_constraint "(char_length(last_error_message) <= 500) AND (char_length(last_error_backtrace) <= 10000)", name: "error_length" + t.check_constraint "(jsonb_typeof(data) = 'object'::text) AND ((NOT (data ? 'tags'::text)) OR ((jsonb_typeof((data -> 'tags'::text)) = 'array'::text) AND (jsonb_array_length((data -> 'tags'::text)) <= 5) AND que_validate_tags((data -> 'tags'::text))))", name: "valid_data" + t.check_constraint "char_length(queue) <= 100", name: "queue_length" + t.check_constraint "jsonb_typeof(args) = 'array'::text", name: "valid_args" + t.check_constraint nil, name: "job_class_length" + end + + create_table "que_lockers", primary_key: "pid", id: :integer, default: nil, force: :cascade do |t| + t.integer "worker_count", null: false + t.integer "worker_priorities", null: false, array: true + t.integer "ruby_pid", null: false + t.text "ruby_hostname", null: false + t.text "queues", null: false, array: true + t.boolean "listening", null: false + t.integer "job_schema_version", default: 1 + t.check_constraint "(array_ndims(queues) = 1) AND (array_length(queues, 1) IS NOT NULL)", name: "valid_queues" + t.check_constraint "(array_ndims(worker_priorities) = 1) AND (array_length(worker_priorities, 1) IS NOT NULL)", name: "valid_worker_priorities" + end + + create_table "que_values", primary_key: "key", id: :text, force: :cascade do |t| + t.jsonb "value", default: {}, null: false + t.check_constraint "jsonb_typeof(value) = 'object'::text", name: "valid_value" + end + create_table "roles", force: :cascade do |t| t.datetime "created_at", null: false t.datetime "updated_at", null: false - t.bigint "site_id" - t.bigint "usuarie_id" + t.integer "site_id" + t.integer "usuarie_id" t.string "rol" t.boolean "temporal" t.index ["site_id", "usuarie_id"], name: "index_roles_on_site_id_and_usuarie_id", unique: true @@ -318,8 +397,8 @@ ActiveRecord::Schema.define(version: 2023_04_15_153231) do t.datetime "created_at", null: false t.datetime "updated_at", null: false t.string "name" - t.bigint "design_id" - t.bigint "licencia_id" + t.integer "design_id" + t.integer "licencia_id" t.string "status", default: "waiting" t.text "description" t.string "title" @@ -330,6 +409,7 @@ ActiveRecord::Schema.define(version: 2023_04_15_153231) do t.string "tienda_api_key_ciphertext", default: "" t.string "tienda_url", default: "" t.string "api_key_ciphertext" + t.string "slugify_mode", default: "default" t.index ["design_id"], name: "index_sites_on_design_id" t.index ["licencia_id"], name: "index_sites_on_licencia_id" t.index ["name"], name: "index_sites_on_name", unique: true @@ -359,28 +439,168 @@ ActiveRecord::Schema.define(version: 2023_04_15_153231) do t.integer "failed_attempts", default: 0, null: false t.string "unlock_token" t.datetime "locked_at" - t.boolean "acepta_politicas_de_privacidad", default: false t.string "invitation_token" t.datetime "invitation_created_at" t.datetime "invitation_sent_at" t.datetime "invitation_accepted_at" t.integer "invitation_limit" t.string "invited_by_type" - t.bigint "invited_by_id" + t.integer "invited_by_id" t.integer "invitations_count", default: 0 t.string "lang", default: "es" + t.datetime "privacy_policy_accepted_at" + t.datetime "terms_of_service_accepted_at" + t.datetime "code_of_conduct_accepted_at" + t.datetime "available_for_feedback_accepted_at" t.index ["confirmation_token"], name: "index_usuaries_on_confirmation_token", unique: true t.index ["email"], name: "index_usuaries_on_email", unique: true t.index ["invitation_token"], name: "index_usuaries_on_invitation_token", unique: true t.index ["invitations_count"], name: "index_usuaries_on_invitations_count" t.index ["invited_by_id"], name: "index_usuaries_on_invited_by_id" - t.index ["invited_by_type", "invited_by_id"], name: "index_usuaries_on_invited_by" + t.index ["invited_by_type", "invited_by_id"], name: "index_usuaries_on_invited_by_type_and_invited_by_id" t.index ["reset_password_token"], name: "index_usuaries_on_reset_password_token", unique: true t.index ["unlock_token"], name: "index_usuaries_on_unlock_token", unique: true end add_foreign_key "active_storage_attachments", "active_storage_blobs", column: "blob_id" add_foreign_key "active_storage_variant_records", "active_storage_blobs", column: "blob_id" + # no candidate create_trigger statement could be found, creating an adapter-specific one + execute(<<-SQL) +CREATE OR REPLACE FUNCTION public.que_job_notify() + RETURNS trigger + LANGUAGE plpgsql +AS $function$ + DECLARE + locker_pid integer; + sort_key json; + BEGIN + -- Don't do anything if the job is scheduled for a future time. + IF NEW.run_at IS NOT NULL AND NEW.run_at > now() THEN + RETURN null; + END IF; + + -- Pick a locker to notify of the job's insertion, weighted by their number + -- of workers. Should bounce pseudorandomly between lockers on each + -- invocation, hence the md5-ordering, but still touch each one equally, + -- hence the modulo using the job_id. + SELECT pid + INTO locker_pid + FROM ( + SELECT *, last_value(row_number) OVER () + 1 AS count + FROM ( + SELECT *, row_number() OVER () - 1 AS row_number + FROM ( + SELECT * + FROM public.que_lockers ql, generate_series(1, ql.worker_count) AS id + WHERE + listening AND + queues @> ARRAY[NEW.queue] AND + ql.job_schema_version = NEW.job_schema_version + ORDER BY md5(pid::text || id::text) + ) t1 + ) t2 + ) t3 + WHERE NEW.id % count = row_number; + + IF locker_pid IS NOT NULL THEN + -- There's a size limit to what can be broadcast via LISTEN/NOTIFY, so + -- rather than throw errors when someone enqueues a big job, just + -- broadcast the most pertinent information, and let the locker query for + -- the record after it's taken the lock. The worker will have to hit the + -- DB in order to make sure the job is still visible anyway. + SELECT row_to_json(t) + INTO sort_key + FROM ( + SELECT + 'job_available' AS message_type, + NEW.queue AS queue, + NEW.priority AS priority, + NEW.id AS id, + -- Make sure we output timestamps as UTC ISO 8601 + to_char(NEW.run_at AT TIME ZONE 'UTC', 'YYYY-MM-DD"T"HH24:MI:SS.US"Z"') AS run_at + ) t; + + PERFORM pg_notify('que_listener_' || locker_pid::text, sort_key::text); + END IF; + + RETURN null; + END +$function$ + SQL + + # no candidate create_trigger statement could be found, creating an adapter-specific one + execute("CREATE TRIGGER que_job_notify AFTER INSERT ON \"que_jobs\" FOR EACH ROW WHEN (NOT COALESCE(current_setting('que.skip_notify'::text, true), ''::text) = 'true'::text) EXECUTE FUNCTION que_job_notify()") + + # no candidate create_trigger statement could be found, creating an adapter-specific one + execute(<<-SQL) +CREATE OR REPLACE FUNCTION public.que_state_notify() + RETURNS trigger + LANGUAGE plpgsql +AS $function$ + DECLARE + row record; + message json; + previous_state text; + current_state text; + BEGIN + IF TG_OP = 'INSERT' THEN + previous_state := 'nonexistent'; + current_state := public.que_determine_job_state(NEW); + row := NEW; + ELSIF TG_OP = 'DELETE' THEN + previous_state := public.que_determine_job_state(OLD); + current_state := 'nonexistent'; + row := OLD; + ELSIF TG_OP = 'UPDATE' THEN + previous_state := public.que_determine_job_state(OLD); + current_state := public.que_determine_job_state(NEW); + + -- If the state didn't change, short-circuit. + IF previous_state = current_state THEN + RETURN null; + END IF; + + row := NEW; + ELSE + RAISE EXCEPTION 'Unrecognized TG_OP: %', TG_OP; + END IF; + + SELECT row_to_json(t) + INTO message + FROM ( + SELECT + 'job_change' AS message_type, + row.id AS id, + row.queue AS queue, + + coalesce(row.data->'tags', '[]'::jsonb) AS tags, + + to_char(row.run_at AT TIME ZONE 'UTC', 'YYYY-MM-DD"T"HH24:MI:SS.US"Z"') AS run_at, + to_char(now() AT TIME ZONE 'UTC', 'YYYY-MM-DD"T"HH24:MI:SS.US"Z"') AS time, + + CASE row.job_class + WHEN 'ActiveJob::QueueAdapters::QueAdapter::JobWrapper' THEN + coalesce( + row.args->0->>'job_class', + 'ActiveJob::QueueAdapters::QueAdapter::JobWrapper' + ) + ELSE + row.job_class + END AS job_class, + + previous_state AS previous_state, + current_state AS current_state + ) t; + + PERFORM pg_notify('que_state', message::text); + + RETURN null; + END +$function$ + SQL + + # no candidate create_trigger statement could be found, creating an adapter-specific one + execute("CREATE TRIGGER que_state_notify AFTER INSERT OR DELETE OR UPDATE ON \"que_jobs\" FOR EACH ROW WHEN (NOT COALESCE(current_setting('que.skip_notify'::text, true), ''::text) = 'true'::text) EXECUTE FUNCTION que_state_notify()") create_trigger("indexed_posts_before_insert_update_row_tr", :compatibility => 1). on("indexed_posts"). From 165594a7ee88eb6d99d234567a14356ae26973f1 Mon Sep 17 00:00:00 2001 From: Sutty Date: Tue, 16 May 2023 16:38:49 +0000 Subject: [PATCH 339/699] =?UTF-8?q?fix:=20dump=20de=20producci=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/application.rb | 2 + db/schema.rb | 620 ----------- db/structure.sql | 2267 +++++++++++++++++++++++++++++++++++++++++ 3 files changed, 2269 insertions(+), 620 deletions(-) delete mode 100644 db/schema.rb create mode 100644 db/structure.sql diff --git a/config/application.rb b/config/application.rb index 173bfc19..e526e204 100644 --- a/config/application.rb +++ b/config/application.rb @@ -45,6 +45,8 @@ module Sutty config.active_storage.queues.purge = :default config.active_job.queue_adapter = :que + config.active_record.schema_format = :sql + config.to_prepare do Dir.glob(File.join(File.dirname(__FILE__), '..', 'app', '**', '*_decorator.rb')).sort.each do |c| Rails.configuration.cache_classes ? require(c) : load(c) diff --git a/db/schema.rb b/db/schema.rb deleted file mode 100644 index a898b0e8..00000000 --- a/db/schema.rb +++ /dev/null @@ -1,620 +0,0 @@ -# This file is auto-generated from the current state of the database. Instead -# of editing this file, please use the migrations feature of Active Record to -# incrementally modify your database, and then regenerate this schema definition. -# -# This file is the source Rails uses to define your schema when running `bin/rails -# db:schema:load`. When creating a new database, `bin/rails db:schema:load` tends to -# be faster and is potentially less error prone than running all of your -# migrations from scratch. Old migrations may fail to apply correctly if those -# migrations use external dependencies or application code. -# -# It's strongly recommended that you check this file into your version control system. - -ActiveRecord::Schema.define(version: 2023_04_24_174544) do - - # These are extensions that must be enabled in order to support this database - enable_extension "dblink" - enable_extension "pg_trgm" - enable_extension "pgcrypto" - enable_extension "plpgsql" - - create_table "access_logs", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| - t.string "host" - t.float "msec" - t.string "server_protocol" - t.string "request_method" - t.string "request_completion" - t.string "uri" - t.string "query_string" - t.integer "status" - t.string "sent_http_content_type" - t.string "sent_http_content_encoding" - t.string "sent_http_etag" - t.string "sent_http_last_modified" - t.string "http_accept" - t.string "http_accept_encoding" - t.string "http_accept_language" - t.string "http_pragma" - t.string "http_cache_control" - t.string "http_if_none_match" - t.string "http_dnt" - t.string "http_user_agent" - t.string "http_origin" - t.float "request_time" - t.integer "bytes_sent" - t.integer "body_bytes_sent" - t.integer "request_length" - t.string "http_connection" - t.string "pipe" - t.integer "connection_requests" - t.string "geoip2_data_country_name" - t.string "geoip2_data_city_name" - t.string "ssl_server_name" - t.string "ssl_protocol" - t.string "ssl_early_data" - t.string "ssl_session_reused" - t.string "ssl_curves" - t.string "ssl_ciphers" - t.string "ssl_cipher" - t.string "sent_http_x_xss_protection" - t.string "sent_http_x_frame_options" - t.string "sent_http_x_content_type_options" - t.string "sent_http_strict_transport_security" - t.string "nginx_version" - t.integer "pid" - t.string "remote_user" - t.boolean "crawler", default: false - t.string "http_referer" - t.datetime "created_at", precision: 6 - t.string "request_uri", default: "" - t.decimal "datacenter_co2" - t.decimal "network_co2" - t.decimal "consumer_device_co2" - t.decimal "production_co2" - t.decimal "total_co2" - t.string "node" - t.index ["geoip2_data_city_name"], name: "index_access_logs_on_geoip2_data_city_name" - t.index ["geoip2_data_country_name"], name: "index_access_logs_on_geoip2_data_country_name" - t.index ["host"], name: "index_access_logs_on_host" - t.index ["http_origin"], name: "index_access_logs_on_http_origin" - t.index ["http_user_agent"], name: "index_access_logs_on_http_user_agent" - t.index ["status"], name: "index_access_logs_on_status" - t.index ["uri"], name: "index_access_logs_on_uri" - end - - create_table "action_text_rich_texts", force: :cascade do |t| - t.string "name", null: false - t.text "body" - t.string "record_type", null: false - t.integer "record_id", null: false - t.datetime "created_at", precision: 6, null: false - t.datetime "updated_at", precision: 6, null: false - t.index ["record_type", "record_id", "name"], name: "index_action_text_rich_texts_uniqueness", unique: true - end - - create_table "active_storage_attachments", force: :cascade do |t| - t.string "name", null: false - t.string "record_type", null: false - t.integer "record_id", null: false - t.integer "blob_id", null: false - t.datetime "created_at", null: false - t.index ["blob_id"], name: "index_active_storage_attachments_on_blob_id" - t.index ["record_type", "record_id", "name", "blob_id"], name: "index_active_storage_attachments_uniqueness", unique: true - end - - create_table "active_storage_blobs", force: :cascade do |t| - t.string "key", null: false - t.string "filename", null: false - t.string "content_type" - t.text "metadata" - t.bigint "byte_size", null: false - t.string "checksum", null: false - t.datetime "created_at", null: false - t.string "service_name", null: false - t.index ["key", "service_name"], name: "index_active_storage_blobs_on_key_and_service_name", unique: true - end - - create_table "active_storage_variant_records", force: :cascade do |t| - t.bigint "blob_id", null: false - t.string "variation_digest", null: false - t.index ["blob_id", "variation_digest"], name: "index_active_storage_variant_records_uniqueness", unique: true - end - - create_table "blazer_audits", force: :cascade do |t| - t.bigint "user_id" - t.bigint "query_id" - t.text "statement" - t.string "data_source" - t.datetime "created_at" - t.index ["query_id"], name: "index_blazer_audits_on_query_id" - t.index ["user_id"], name: "index_blazer_audits_on_user_id" - end - - create_table "blazer_checks", force: :cascade do |t| - t.bigint "creator_id" - t.bigint "query_id" - t.string "state" - t.string "schedule" - t.text "emails" - t.text "slack_channels" - t.string "check_type" - t.text "message" - t.datetime "last_run_at" - t.datetime "created_at", precision: 6, null: false - t.datetime "updated_at", precision: 6, null: false - t.index ["creator_id"], name: "index_blazer_checks_on_creator_id" - t.index ["query_id"], name: "index_blazer_checks_on_query_id" - end - - create_table "blazer_dashboard_queries", force: :cascade do |t| - t.bigint "dashboard_id" - t.bigint "query_id" - t.integer "position" - t.datetime "created_at", precision: 6, null: false - t.datetime "updated_at", precision: 6, null: false - t.index ["dashboard_id"], name: "index_blazer_dashboard_queries_on_dashboard_id" - t.index ["query_id"], name: "index_blazer_dashboard_queries_on_query_id" - end - - create_table "blazer_dashboards", force: :cascade do |t| - t.bigint "creator_id" - t.text "name" - t.datetime "created_at", precision: 6, null: false - t.datetime "updated_at", precision: 6, null: false - t.index ["creator_id"], name: "index_blazer_dashboards_on_creator_id" - end - - create_table "blazer_queries", force: :cascade do |t| - t.bigint "creator_id" - t.string "name" - t.text "description" - t.text "statement" - t.string "data_source" - t.datetime "created_at", precision: 6, null: false - t.datetime "updated_at", precision: 6, null: false - t.index ["creator_id"], name: "index_blazer_queries_on_creator_id" - end - - create_table "build_stats", force: :cascade do |t| - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.integer "deploy_id" - t.bigint "bytes" - t.float "seconds" - t.string "action", null: false - t.text "log" - t.boolean "status", default: false - t.index ["deploy_id"], name: "index_build_stats_on_deploy_id" - end - - create_table "codes_of_conduct", force: :cascade do |t| - t.datetime "created_at", precision: 6, null: false - t.datetime "updated_at", precision: 6, null: false - t.string "title" - t.text "description" - t.text "content" - end - - create_table "csp_reports", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| - t.datetime "created_at", precision: 6, null: false - t.datetime "updated_at", precision: 6, null: false - t.string "disposition" - t.string "referrer" - t.string "blocked_uri" - t.string "document_uri" - t.string "effective_directive" - t.string "original_policy" - t.string "script_sample" - t.string "status_code" - t.string "violated_directive" - t.integer "column_number" - t.integer "line_number" - t.string "source_file" - end - - create_table "deploys", force: :cascade do |t| - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.integer "site_id" - t.string "type" - t.text "values" - t.index ["site_id"], name: "index_deploys_on_site_id" - t.index ["type"], name: "index_deploys_on_type" - end - - create_table "designs", force: :cascade do |t| - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.string "name" - t.text "description" - t.string "gem" - t.string "url" - t.string "license" - t.boolean "disabled", default: false - t.text "credits" - t.string "designer_url" - t.integer "priority" - t.index ["gem"], name: "index_designs_on_gem", unique: true - t.index ["name"], name: "index_designs_on_name", unique: true - end - - create_table "distributed_press_publishers", force: :cascade do |t| - t.datetime "created_at", precision: 6, null: false - t.datetime "updated_at", precision: 6, null: false - t.string "instance" - t.text "token_ciphertext", null: false - t.datetime "expires_at" - end - - create_table "indexed_posts", id: :uuid, default: -> { "public.gen_random_uuid()" }, force: :cascade do |t| - t.bigint "site_id" - t.datetime "created_at", precision: 6, null: false - t.datetime "updated_at", precision: 6, null: false - t.string "locale", default: "simple" - t.string "layout", null: false - t.string "path", null: false - t.string "title", default: "" - t.jsonb "front_matter", default: "{}" - t.string "content", default: "" - t.tsvector "indexed_content" - t.integer "order", default: 0 - t.string "dictionary" - t.uuid "post_id" - t.index ["front_matter"], name: "index_indexed_posts_on_front_matter", using: :gin - t.index ["indexed_content"], name: "index_indexed_posts_on_indexed_content", using: :gin - t.index ["layout"], name: "index_indexed_posts_on_layout" - t.index ["locale"], name: "index_indexed_posts_on_locale" - t.index ["site_id"], name: "index_indexed_posts_on_site_id" - end - - create_table "licencias", force: :cascade do |t| - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.string "name" - t.text "description" - t.text "deed" - t.string "url" - t.string "icons" - t.string "short_description" - t.index ["name"], name: "index_licencias_on_name", unique: true - end - - create_table "log_entries", force: :cascade do |t| - t.datetime "created_at", precision: 6, null: false - t.datetime "updated_at", precision: 6, null: false - t.bigint "site_id" - t.text "text" - t.boolean "sent", default: false - t.index ["site_id"], name: "index_log_entries_on_site_id" - end - - create_table "maintenances", force: :cascade do |t| - t.datetime "created_at", precision: 6, null: false - t.datetime "updated_at", precision: 6, null: false - t.text "message" - t.datetime "estimated_from" - t.datetime "estimated_to" - t.boolean "are_we_back", default: false - end - - create_table "mobility_string_translations", force: :cascade do |t| - t.string "locale", null: false - t.string "key", null: false - t.string "value" - t.string "translatable_type" - t.integer "translatable_id" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.index ["translatable_id", "translatable_type", "key"], name: "index_mobility_string_translations_on_translatable_attribute" - t.index ["translatable_id", "translatable_type", "locale", "key"], name: "index_mobility_string_translations_on_keys", unique: true - t.index ["translatable_type", "key", "value", "locale"], name: "index_mobility_string_translations_on_query_keys" - end - - create_table "mobility_text_translations", force: :cascade do |t| - t.string "locale", null: false - t.string "key", null: false - t.text "value" - t.string "translatable_type" - t.integer "translatable_id" - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.index ["translatable_id", "translatable_type", "key"], name: "index_mobility_text_translations_on_translatable_attribute" - t.index ["translatable_id", "translatable_type", "locale", "key"], name: "index_mobility_text_translations_on_keys", unique: true - end - - create_table "privacy_policies", force: :cascade do |t| - t.datetime "created_at", precision: 6, null: false - t.datetime "updated_at", precision: 6, null: false - t.string "title" - t.text "description" - t.text "content" - end - - create_table "que_jobs", comment: "7", force: :cascade do |t| - t.integer "priority", limit: 2, default: 100, null: false - t.datetime "run_at", default: -> { "now()" }, null: false - t.text "job_class", null: false - t.integer "error_count", default: 0, null: false - t.text "last_error_message" - t.text "queue", default: "default", null: false - t.text "last_error_backtrace" - t.datetime "finished_at" - t.datetime "expired_at" - t.jsonb "args", default: [], null: false - t.jsonb "data", default: {}, null: false - t.integer "job_schema_version", null: false - t.jsonb "kwargs", default: {}, null: false - t.index ["args"], name: "que_jobs_args_gin_idx", opclass: :jsonb_path_ops, using: :gin - t.index ["data"], name: "que_jobs_data_gin_idx", opclass: :jsonb_path_ops, using: :gin - t.index ["job_schema_version", "queue", "priority", "run_at", "id"], name: "que_poll_idx", where: "((finished_at IS NULL) AND (expired_at IS NULL))" - t.index ["kwargs"], name: "que_jobs_kwargs_gin_idx", opclass: :jsonb_path_ops, using: :gin - t.check_constraint "(char_length(last_error_message) <= 500) AND (char_length(last_error_backtrace) <= 10000)", name: "error_length" - t.check_constraint "(jsonb_typeof(data) = 'object'::text) AND ((NOT (data ? 'tags'::text)) OR ((jsonb_typeof((data -> 'tags'::text)) = 'array'::text) AND (jsonb_array_length((data -> 'tags'::text)) <= 5) AND que_validate_tags((data -> 'tags'::text))))", name: "valid_data" - t.check_constraint "char_length(queue) <= 100", name: "queue_length" - t.check_constraint "jsonb_typeof(args) = 'array'::text", name: "valid_args" - t.check_constraint nil, name: "job_class_length" - end - - create_table "que_lockers", primary_key: "pid", id: :integer, default: nil, force: :cascade do |t| - t.integer "worker_count", null: false - t.integer "worker_priorities", null: false, array: true - t.integer "ruby_pid", null: false - t.text "ruby_hostname", null: false - t.text "queues", null: false, array: true - t.boolean "listening", null: false - t.integer "job_schema_version", default: 1 - t.check_constraint "(array_ndims(queues) = 1) AND (array_length(queues, 1) IS NOT NULL)", name: "valid_queues" - t.check_constraint "(array_ndims(worker_priorities) = 1) AND (array_length(worker_priorities, 1) IS NOT NULL)", name: "valid_worker_priorities" - end - - create_table "que_values", primary_key: "key", id: :text, force: :cascade do |t| - t.jsonb "value", default: {}, null: false - t.check_constraint "jsonb_typeof(value) = 'object'::text", name: "valid_value" - end - - create_table "roles", force: :cascade do |t| - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.integer "site_id" - t.integer "usuarie_id" - t.string "rol" - t.boolean "temporal" - t.index ["site_id", "usuarie_id"], name: "index_roles_on_site_id_and_usuarie_id", unique: true - t.index ["site_id"], name: "index_roles_on_site_id" - t.index ["usuarie_id"], name: "index_roles_on_usuarie_id" - end - - create_table "rollups", force: :cascade do |t| - t.string "name", null: false - t.string "interval", null: false - t.datetime "time", null: false - t.jsonb "dimensions", default: {}, null: false - t.float "value" - t.index ["name", "interval", "time", "dimensions"], name: "index_rollups_on_name_and_interval_and_time_and_dimensions", unique: true - end - - create_table "sites", force: :cascade do |t| - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.string "name" - t.integer "design_id" - t.integer "licencia_id" - t.string "status", default: "waiting" - t.text "description" - t.string "title" - t.boolean "colaboracion_anonima", default: false - t.boolean "contact", default: false - t.string "private_key_ciphertext" - t.boolean "acepta_invitades", default: false - t.string "tienda_api_key_ciphertext", default: "" - t.string "tienda_url", default: "" - t.string "api_key_ciphertext" - t.string "slugify_mode", default: "default" - t.index ["design_id"], name: "index_sites_on_design_id" - t.index ["licencia_id"], name: "index_sites_on_licencia_id" - t.index ["name"], name: "index_sites_on_name", unique: true - end - - create_table "stats", force: :cascade do |t| - t.datetime "created_at", precision: 6, null: false - t.datetime "updated_at", precision: 6, null: false - t.bigint "site_id" - t.string "name", null: false - t.index ["name"], name: "index_stats_on_name", using: :hash - t.index ["site_id"], name: "index_stats_on_site_id" - end - - create_table "usuaries", force: :cascade do |t| - t.datetime "created_at", null: false - t.datetime "updated_at", null: false - t.string "email", default: "", null: false - t.string "encrypted_password", default: "", null: false - t.string "reset_password_token" - t.datetime "reset_password_sent_at" - t.datetime "remember_created_at" - t.string "confirmation_token" - t.datetime "confirmed_at" - t.datetime "confirmation_sent_at" - t.string "unconfirmed_email" - t.integer "failed_attempts", default: 0, null: false - t.string "unlock_token" - t.datetime "locked_at" - t.string "invitation_token" - t.datetime "invitation_created_at" - t.datetime "invitation_sent_at" - t.datetime "invitation_accepted_at" - t.integer "invitation_limit" - t.string "invited_by_type" - t.integer "invited_by_id" - t.integer "invitations_count", default: 0 - t.string "lang", default: "es" - t.datetime "privacy_policy_accepted_at" - t.datetime "terms_of_service_accepted_at" - t.datetime "code_of_conduct_accepted_at" - t.datetime "available_for_feedback_accepted_at" - t.index ["confirmation_token"], name: "index_usuaries_on_confirmation_token", unique: true - t.index ["email"], name: "index_usuaries_on_email", unique: true - t.index ["invitation_token"], name: "index_usuaries_on_invitation_token", unique: true - t.index ["invitations_count"], name: "index_usuaries_on_invitations_count" - t.index ["invited_by_id"], name: "index_usuaries_on_invited_by_id" - t.index ["invited_by_type", "invited_by_id"], name: "index_usuaries_on_invited_by_type_and_invited_by_id" - t.index ["reset_password_token"], name: "index_usuaries_on_reset_password_token", unique: true - t.index ["unlock_token"], name: "index_usuaries_on_unlock_token", unique: true - end - - add_foreign_key "active_storage_attachments", "active_storage_blobs", column: "blob_id" - add_foreign_key "active_storage_variant_records", "active_storage_blobs", column: "blob_id" - # no candidate create_trigger statement could be found, creating an adapter-specific one - execute(<<-SQL) -CREATE OR REPLACE FUNCTION public.que_job_notify() - RETURNS trigger - LANGUAGE plpgsql -AS $function$ - DECLARE - locker_pid integer; - sort_key json; - BEGIN - -- Don't do anything if the job is scheduled for a future time. - IF NEW.run_at IS NOT NULL AND NEW.run_at > now() THEN - RETURN null; - END IF; - - -- Pick a locker to notify of the job's insertion, weighted by their number - -- of workers. Should bounce pseudorandomly between lockers on each - -- invocation, hence the md5-ordering, but still touch each one equally, - -- hence the modulo using the job_id. - SELECT pid - INTO locker_pid - FROM ( - SELECT *, last_value(row_number) OVER () + 1 AS count - FROM ( - SELECT *, row_number() OVER () - 1 AS row_number - FROM ( - SELECT * - FROM public.que_lockers ql, generate_series(1, ql.worker_count) AS id - WHERE - listening AND - queues @> ARRAY[NEW.queue] AND - ql.job_schema_version = NEW.job_schema_version - ORDER BY md5(pid::text || id::text) - ) t1 - ) t2 - ) t3 - WHERE NEW.id % count = row_number; - - IF locker_pid IS NOT NULL THEN - -- There's a size limit to what can be broadcast via LISTEN/NOTIFY, so - -- rather than throw errors when someone enqueues a big job, just - -- broadcast the most pertinent information, and let the locker query for - -- the record after it's taken the lock. The worker will have to hit the - -- DB in order to make sure the job is still visible anyway. - SELECT row_to_json(t) - INTO sort_key - FROM ( - SELECT - 'job_available' AS message_type, - NEW.queue AS queue, - NEW.priority AS priority, - NEW.id AS id, - -- Make sure we output timestamps as UTC ISO 8601 - to_char(NEW.run_at AT TIME ZONE 'UTC', 'YYYY-MM-DD"T"HH24:MI:SS.US"Z"') AS run_at - ) t; - - PERFORM pg_notify('que_listener_' || locker_pid::text, sort_key::text); - END IF; - - RETURN null; - END -$function$ - SQL - - # no candidate create_trigger statement could be found, creating an adapter-specific one - execute("CREATE TRIGGER que_job_notify AFTER INSERT ON \"que_jobs\" FOR EACH ROW WHEN (NOT COALESCE(current_setting('que.skip_notify'::text, true), ''::text) = 'true'::text) EXECUTE FUNCTION que_job_notify()") - - # no candidate create_trigger statement could be found, creating an adapter-specific one - execute(<<-SQL) -CREATE OR REPLACE FUNCTION public.que_state_notify() - RETURNS trigger - LANGUAGE plpgsql -AS $function$ - DECLARE - row record; - message json; - previous_state text; - current_state text; - BEGIN - IF TG_OP = 'INSERT' THEN - previous_state := 'nonexistent'; - current_state := public.que_determine_job_state(NEW); - row := NEW; - ELSIF TG_OP = 'DELETE' THEN - previous_state := public.que_determine_job_state(OLD); - current_state := 'nonexistent'; - row := OLD; - ELSIF TG_OP = 'UPDATE' THEN - previous_state := public.que_determine_job_state(OLD); - current_state := public.que_determine_job_state(NEW); - - -- If the state didn't change, short-circuit. - IF previous_state = current_state THEN - RETURN null; - END IF; - - row := NEW; - ELSE - RAISE EXCEPTION 'Unrecognized TG_OP: %', TG_OP; - END IF; - - SELECT row_to_json(t) - INTO message - FROM ( - SELECT - 'job_change' AS message_type, - row.id AS id, - row.queue AS queue, - - coalesce(row.data->'tags', '[]'::jsonb) AS tags, - - to_char(row.run_at AT TIME ZONE 'UTC', 'YYYY-MM-DD"T"HH24:MI:SS.US"Z"') AS run_at, - to_char(now() AT TIME ZONE 'UTC', 'YYYY-MM-DD"T"HH24:MI:SS.US"Z"') AS time, - - CASE row.job_class - WHEN 'ActiveJob::QueueAdapters::QueAdapter::JobWrapper' THEN - coalesce( - row.args->0->>'job_class', - 'ActiveJob::QueueAdapters::QueAdapter::JobWrapper' - ) - ELSE - row.job_class - END AS job_class, - - previous_state AS previous_state, - current_state AS current_state - ) t; - - PERFORM pg_notify('que_state', message::text); - - RETURN null; - END -$function$ - SQL - - # no candidate create_trigger statement could be found, creating an adapter-specific one - execute("CREATE TRIGGER que_state_notify AFTER INSERT OR DELETE OR UPDATE ON \"que_jobs\" FOR EACH ROW WHEN (NOT COALESCE(current_setting('que.skip_notify'::text, true), ''::text) = 'true'::text) EXECUTE FUNCTION que_state_notify()") - - create_trigger("indexed_posts_before_insert_update_row_tr", :compatibility => 1). - on("indexed_posts"). - before(:insert, :update) do - <<-SQL_ACTIONS -new.indexed_content := to_tsvector(('pg_catalog.' || new.dictionary)::regconfig, coalesce(new.title, '') || ' -' || coalesce(new.content,'')); - SQL_ACTIONS - end - - create_trigger("access_logs_before_insert_row_tr", :compatibility => 1). - on("access_logs"). - before(:insert) do - "new.created_at := to_timestamp(new.msec);" - end - -end diff --git a/db/structure.sql b/db/structure.sql new file mode 100644 index 00000000..e50ae337 --- /dev/null +++ b/db/structure.sql @@ -0,0 +1,2267 @@ +-- +-- PostgreSQL database dump +-- + +-- Dumped from database version 15.2 +-- Dumped by pg_dump version 15.2 + +SET statement_timeout = 0; +SET lock_timeout = 0; +SET idle_in_transaction_session_timeout = 0; +SET client_encoding = 'UTF8'; +SET standard_conforming_strings = on; +SELECT pg_catalog.set_config('search_path', '', false); +SET check_function_bodies = false; +SET xmloption = content; +SET client_min_messages = warning; +SET row_security = off; + +-- +-- Name: public; Type: SCHEMA; Schema: -; Owner: - +-- + +-- *not* creating schema, since initdb creates it + + +-- +-- Name: dblink; Type: EXTENSION; Schema: -; Owner: - +-- + +CREATE EXTENSION IF NOT EXISTS dblink WITH SCHEMA public; + + +-- +-- Name: EXTENSION dblink; Type: COMMENT; Schema: -; Owner: - +-- + +COMMENT ON EXTENSION dblink IS 'connect to other PostgreSQL databases from within a database'; + + +-- +-- Name: pg_trgm; Type: EXTENSION; Schema: -; Owner: - +-- + +CREATE EXTENSION IF NOT EXISTS pg_trgm WITH SCHEMA public; + + +-- +-- Name: EXTENSION pg_trgm; Type: COMMENT; Schema: -; Owner: - +-- + +COMMENT ON EXTENSION pg_trgm IS 'text similarity measurement and index searching based on trigrams'; + + +-- +-- Name: pgcrypto; Type: EXTENSION; Schema: -; Owner: - +-- + +CREATE EXTENSION IF NOT EXISTS pgcrypto WITH SCHEMA public; + + +-- +-- Name: EXTENSION pgcrypto; Type: COMMENT; Schema: -; Owner: - +-- + +COMMENT ON EXTENSION pgcrypto IS 'cryptographic functions'; + + +-- +-- Name: que_validate_tags(jsonb); Type: FUNCTION; Schema: public; Owner: - +-- + +CREATE FUNCTION public.que_validate_tags(tags_array jsonb) RETURNS boolean + LANGUAGE sql + AS $$ + SELECT bool_and( + jsonb_typeof(value) = 'string' + AND + char_length(value::text) <= 100 + ) + FROM jsonb_array_elements(tags_array) +$$; + + +SET default_tablespace = ''; + +SET default_table_access_method = heap; + +-- +-- Name: que_jobs; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.que_jobs ( + priority smallint DEFAULT 100 NOT NULL, + run_at timestamp with time zone DEFAULT now() NOT NULL, + id bigint NOT NULL, + job_class text NOT NULL, + error_count integer DEFAULT 0 NOT NULL, + last_error_message text, + queue text DEFAULT 'default'::text NOT NULL, + last_error_backtrace text, + finished_at timestamp with time zone, + expired_at timestamp with time zone, + args jsonb DEFAULT '[]'::jsonb NOT NULL, + data jsonb DEFAULT '{}'::jsonb NOT NULL, + job_schema_version integer NOT NULL, + kwargs jsonb DEFAULT '{}'::jsonb NOT NULL, + CONSTRAINT error_length CHECK (((char_length(last_error_message) <= 500) AND (char_length(last_error_backtrace) <= 10000))), + CONSTRAINT job_class_length CHECK ((char_length( +CASE job_class + WHEN 'ActiveJob::QueueAdapters::QueAdapter::JobWrapper'::text THEN ((args -> 0) ->> 'job_class'::text) + ELSE job_class +END) <= 200)), + CONSTRAINT queue_length CHECK ((char_length(queue) <= 100)), + CONSTRAINT valid_args CHECK ((jsonb_typeof(args) = 'array'::text)), + CONSTRAINT valid_data CHECK (((jsonb_typeof(data) = 'object'::text) AND ((NOT (data ? 'tags'::text)) OR ((jsonb_typeof((data -> 'tags'::text)) = 'array'::text) AND (jsonb_array_length((data -> 'tags'::text)) <= 5) AND public.que_validate_tags((data -> 'tags'::text)))))) +) +WITH (fillfactor='90'); + + +-- +-- Name: TABLE que_jobs; Type: COMMENT; Schema: public; Owner: - +-- + +COMMENT ON TABLE public.que_jobs IS '7'; + + +-- +-- Name: access_logs_before_insert_row_tr(); Type: FUNCTION; Schema: public; Owner: - +-- + +CREATE FUNCTION public.access_logs_before_insert_row_tr() RETURNS trigger + LANGUAGE plpgsql + AS $$ +BEGIN + new.created_at := to_timestamp(new.msec); + RETURN NEW; +END; +$$; + + +-- +-- Name: indexed_posts_before_insert_update_row_tr(); Type: FUNCTION; Schema: public; Owner: - +-- + +CREATE FUNCTION public.indexed_posts_before_insert_update_row_tr() RETURNS trigger + LANGUAGE plpgsql + AS $$ +BEGIN + new.indexed_content := to_tsvector(('pg_catalog.' || new.dictionary)::regconfig, coalesce(new.title, '') || ' + ' || coalesce(new.content,'')); + RETURN NEW; +END; +$$; + + +-- +-- Name: que_determine_job_state(public.que_jobs); Type: FUNCTION; Schema: public; Owner: - +-- + +CREATE FUNCTION public.que_determine_job_state(job public.que_jobs) RETURNS text + LANGUAGE sql + AS $$ + SELECT + CASE + WHEN job.expired_at IS NOT NULL THEN 'expired' + WHEN job.finished_at IS NOT NULL THEN 'finished' + WHEN job.error_count > 0 THEN 'errored' + WHEN job.run_at > CURRENT_TIMESTAMP THEN 'scheduled' + ELSE 'ready' + END +$$; + + +-- +-- Name: que_job_notify(); Type: FUNCTION; Schema: public; Owner: - +-- + +CREATE FUNCTION public.que_job_notify() RETURNS trigger + LANGUAGE plpgsql + AS $$ + DECLARE + locker_pid integer; + sort_key json; + BEGIN + -- Don't do anything if the job is scheduled for a future time. + IF NEW.run_at IS NOT NULL AND NEW.run_at > now() THEN + RETURN null; + END IF; + + -- Pick a locker to notify of the job's insertion, weighted by their number + -- of workers. Should bounce pseudorandomly between lockers on each + -- invocation, hence the md5-ordering, but still touch each one equally, + -- hence the modulo using the job_id. + SELECT pid + INTO locker_pid + FROM ( + SELECT *, last_value(row_number) OVER () + 1 AS count + FROM ( + SELECT *, row_number() OVER () - 1 AS row_number + FROM ( + SELECT * + FROM public.que_lockers ql, generate_series(1, ql.worker_count) AS id + WHERE + listening AND + queues @> ARRAY[NEW.queue] AND + ql.job_schema_version = NEW.job_schema_version + ORDER BY md5(pid::text || id::text) + ) t1 + ) t2 + ) t3 + WHERE NEW.id % count = row_number; + + IF locker_pid IS NOT NULL THEN + -- There's a size limit to what can be broadcast via LISTEN/NOTIFY, so + -- rather than throw errors when someone enqueues a big job, just + -- broadcast the most pertinent information, and let the locker query for + -- the record after it's taken the lock. The worker will have to hit the + -- DB in order to make sure the job is still visible anyway. + SELECT row_to_json(t) + INTO sort_key + FROM ( + SELECT + 'job_available' AS message_type, + NEW.queue AS queue, + NEW.priority AS priority, + NEW.id AS id, + -- Make sure we output timestamps as UTC ISO 8601 + to_char(NEW.run_at AT TIME ZONE 'UTC', 'YYYY-MM-DD"T"HH24:MI:SS.US"Z"') AS run_at + ) t; + + PERFORM pg_notify('que_listener_' || locker_pid::text, sort_key::text); + END IF; + + RETURN null; + END +$$; + + +-- +-- Name: que_state_notify(); Type: FUNCTION; Schema: public; Owner: - +-- + +CREATE FUNCTION public.que_state_notify() RETURNS trigger + LANGUAGE plpgsql + AS $$ + DECLARE + row record; + message json; + previous_state text; + current_state text; + BEGIN + IF TG_OP = 'INSERT' THEN + previous_state := 'nonexistent'; + current_state := public.que_determine_job_state(NEW); + row := NEW; + ELSIF TG_OP = 'DELETE' THEN + previous_state := public.que_determine_job_state(OLD); + current_state := 'nonexistent'; + row := OLD; + ELSIF TG_OP = 'UPDATE' THEN + previous_state := public.que_determine_job_state(OLD); + current_state := public.que_determine_job_state(NEW); + + -- If the state didn't change, short-circuit. + IF previous_state = current_state THEN + RETURN null; + END IF; + + row := NEW; + ELSE + RAISE EXCEPTION 'Unrecognized TG_OP: %', TG_OP; + END IF; + + SELECT row_to_json(t) + INTO message + FROM ( + SELECT + 'job_change' AS message_type, + row.id AS id, + row.queue AS queue, + + coalesce(row.data->'tags', '[]'::jsonb) AS tags, + + to_char(row.run_at AT TIME ZONE 'UTC', 'YYYY-MM-DD"T"HH24:MI:SS.US"Z"') AS run_at, + to_char(now() AT TIME ZONE 'UTC', 'YYYY-MM-DD"T"HH24:MI:SS.US"Z"') AS time, + + CASE row.job_class + WHEN 'ActiveJob::QueueAdapters::QueAdapter::JobWrapper' THEN + coalesce( + row.args->0->>'job_class', + 'ActiveJob::QueueAdapters::QueAdapter::JobWrapper' + ) + ELSE + row.job_class + END AS job_class, + + previous_state AS previous_state, + current_state AS current_state + ) t; + + PERFORM pg_notify('que_state', message::text); + + RETURN null; + END +$$; + + +-- +-- Name: access_logs; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.access_logs ( + id uuid DEFAULT public.gen_random_uuid() NOT NULL, + host character varying, + msec double precision, + server_protocol character varying, + request_method character varying, + request_completion character varying, + uri character varying, + query_string character varying, + status integer, + sent_http_content_type character varying, + sent_http_content_encoding character varying, + sent_http_etag character varying, + sent_http_last_modified character varying, + http_accept character varying, + http_accept_encoding character varying, + http_accept_language character varying, + http_pragma character varying, + http_cache_control character varying, + http_if_none_match character varying, + http_dnt character varying, + http_user_agent character varying, + http_origin character varying, + request_time double precision, + bytes_sent integer, + body_bytes_sent integer, + request_length integer, + http_connection character varying, + pipe character varying, + connection_requests integer, + geoip2_data_country_name character varying, + geoip2_data_city_name character varying, + ssl_server_name character varying, + ssl_protocol character varying, + ssl_early_data character varying, + ssl_session_reused character varying, + ssl_curves character varying, + ssl_ciphers character varying, + ssl_cipher character varying, + sent_http_x_xss_protection character varying, + sent_http_x_frame_options character varying, + sent_http_x_content_type_options character varying, + sent_http_strict_transport_security character varying, + nginx_version character varying, + pid integer, + remote_user character varying, + crawler boolean DEFAULT false, + http_referer character varying, + created_at timestamp(6) without time zone, + request_uri character varying DEFAULT ''::character varying, + datacenter_co2 numeric, + network_co2 numeric, + consumer_device_co2 numeric, + production_co2 numeric, + total_co2 numeric, + node character varying +); + + +-- +-- Name: action_text_rich_texts; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.action_text_rich_texts ( + id bigint NOT NULL, + name character varying NOT NULL, + body text, + record_type character varying NOT NULL, + record_id integer NOT NULL, + created_at timestamp(6) without time zone NOT NULL, + updated_at timestamp(6) without time zone NOT NULL +); + + +-- +-- Name: action_text_rich_texts_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.action_text_rich_texts_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: action_text_rich_texts_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.action_text_rich_texts_id_seq OWNED BY public.action_text_rich_texts.id; + + +-- +-- Name: active_storage_attachments; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.active_storage_attachments ( + id bigint NOT NULL, + name character varying NOT NULL, + record_type character varying NOT NULL, + record_id integer NOT NULL, + blob_id integer NOT NULL, + created_at timestamp without time zone NOT NULL +); + + +-- +-- Name: active_storage_attachments_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.active_storage_attachments_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: active_storage_attachments_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.active_storage_attachments_id_seq OWNED BY public.active_storage_attachments.id; + + +-- +-- Name: active_storage_blobs; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.active_storage_blobs ( + id bigint NOT NULL, + key character varying NOT NULL, + filename character varying NOT NULL, + content_type character varying, + metadata text, + byte_size bigint NOT NULL, + checksum character varying NOT NULL, + created_at timestamp without time zone NOT NULL, + service_name character varying NOT NULL +); + + +-- +-- Name: active_storage_blobs_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.active_storage_blobs_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: active_storage_blobs_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.active_storage_blobs_id_seq OWNED BY public.active_storage_blobs.id; + + +-- +-- Name: active_storage_variant_records; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.active_storage_variant_records ( + id bigint NOT NULL, + blob_id bigint NOT NULL, + variation_digest character varying NOT NULL +); + + +-- +-- Name: active_storage_variant_records_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.active_storage_variant_records_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: active_storage_variant_records_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.active_storage_variant_records_id_seq OWNED BY public.active_storage_variant_records.id; + + +-- +-- Name: ar_internal_metadata; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.ar_internal_metadata ( + key character varying NOT NULL, + value character varying, + created_at timestamp(6) without time zone NOT NULL, + updated_at timestamp(6) without time zone NOT NULL +); + + +-- +-- Name: blazer_audits; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.blazer_audits ( + id bigint NOT NULL, + user_id bigint, + query_id bigint, + statement text, + data_source character varying, + created_at timestamp without time zone +); + + +-- +-- Name: blazer_audits_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.blazer_audits_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: blazer_audits_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.blazer_audits_id_seq OWNED BY public.blazer_audits.id; + + +-- +-- Name: blazer_checks; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.blazer_checks ( + id bigint NOT NULL, + creator_id bigint, + query_id bigint, + state character varying, + schedule character varying, + emails text, + slack_channels text, + check_type character varying, + message text, + last_run_at timestamp without time zone, + created_at timestamp(6) without time zone NOT NULL, + updated_at timestamp(6) without time zone NOT NULL +); + + +-- +-- Name: blazer_checks_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.blazer_checks_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: blazer_checks_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.blazer_checks_id_seq OWNED BY public.blazer_checks.id; + + +-- +-- Name: blazer_dashboard_queries; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.blazer_dashboard_queries ( + id bigint NOT NULL, + dashboard_id bigint, + query_id bigint, + "position" integer, + created_at timestamp(6) without time zone NOT NULL, + updated_at timestamp(6) without time zone NOT NULL +); + + +-- +-- Name: blazer_dashboard_queries_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.blazer_dashboard_queries_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: blazer_dashboard_queries_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.blazer_dashboard_queries_id_seq OWNED BY public.blazer_dashboard_queries.id; + + +-- +-- Name: blazer_dashboards; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.blazer_dashboards ( + id bigint NOT NULL, + creator_id bigint, + name text, + created_at timestamp(6) without time zone NOT NULL, + updated_at timestamp(6) without time zone NOT NULL +); + + +-- +-- Name: blazer_dashboards_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.blazer_dashboards_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: blazer_dashboards_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.blazer_dashboards_id_seq OWNED BY public.blazer_dashboards.id; + + +-- +-- Name: blazer_queries; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.blazer_queries ( + id bigint NOT NULL, + creator_id bigint, + name character varying, + description text, + statement text, + data_source character varying, + created_at timestamp(6) without time zone NOT NULL, + updated_at timestamp(6) without time zone NOT NULL +); + + +-- +-- Name: blazer_queries_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.blazer_queries_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: blazer_queries_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.blazer_queries_id_seq OWNED BY public.blazer_queries.id; + + +-- +-- Name: build_stats; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.build_stats ( + id bigint NOT NULL, + created_at timestamp without time zone NOT NULL, + updated_at timestamp without time zone NOT NULL, + deploy_id integer, + bytes bigint, + seconds double precision, + action character varying NOT NULL, + log text, + status boolean DEFAULT false +); + + +-- +-- Name: build_stats_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.build_stats_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: build_stats_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.build_stats_id_seq OWNED BY public.build_stats.id; + + +-- +-- Name: codes_of_conduct; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.codes_of_conduct ( + id bigint NOT NULL, + created_at timestamp(6) without time zone NOT NULL, + updated_at timestamp(6) without time zone NOT NULL, + title character varying, + description text, + content text +); + + +-- +-- Name: codes_of_conduct_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.codes_of_conduct_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: codes_of_conduct_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.codes_of_conduct_id_seq OWNED BY public.codes_of_conduct.id; + + +-- +-- Name: csp_reports; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.csp_reports ( + id uuid DEFAULT public.gen_random_uuid() NOT NULL, + created_at timestamp(6) without time zone NOT NULL, + updated_at timestamp(6) without time zone NOT NULL, + disposition character varying, + referrer character varying, + blocked_uri character varying, + document_uri character varying, + effective_directive character varying, + original_policy character varying, + script_sample character varying, + status_code character varying, + violated_directive character varying, + column_number integer, + line_number integer, + source_file character varying +); + + +-- +-- Name: deploys; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.deploys ( + id bigint NOT NULL, + created_at timestamp without time zone NOT NULL, + updated_at timestamp without time zone NOT NULL, + site_id integer, + type character varying, + "values" text +); + + +-- +-- Name: deploys_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.deploys_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: deploys_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.deploys_id_seq OWNED BY public.deploys.id; + + +-- +-- Name: designs; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.designs ( + id bigint NOT NULL, + created_at timestamp without time zone NOT NULL, + updated_at timestamp without time zone NOT NULL, + name character varying, + description text, + gem character varying, + url character varying, + license character varying, + disabled boolean DEFAULT false, + credits text, + designer_url character varying, + priority integer +); + + +-- +-- Name: designs_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.designs_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: designs_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.designs_id_seq OWNED BY public.designs.id; + + +-- +-- Name: distributed_press_publishers; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.distributed_press_publishers ( + id bigint NOT NULL, + created_at timestamp(6) without time zone NOT NULL, + updated_at timestamp(6) without time zone NOT NULL, + instance character varying, + token_ciphertext text NOT NULL, + expires_at timestamp without time zone +); + + +-- +-- Name: distributed_press_publishers_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.distributed_press_publishers_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: distributed_press_publishers_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.distributed_press_publishers_id_seq OWNED BY public.distributed_press_publishers.id; + + +-- +-- Name: indexed_posts; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.indexed_posts ( + id uuid DEFAULT public.gen_random_uuid() NOT NULL, + site_id bigint, + created_at timestamp(6) without time zone NOT NULL, + updated_at timestamp(6) without time zone NOT NULL, + locale character varying DEFAULT 'simple'::character varying, + layout character varying NOT NULL, + path character varying NOT NULL, + title character varying DEFAULT ''::character varying, + front_matter jsonb DEFAULT '"{}"'::jsonb, + content character varying DEFAULT ''::character varying, + indexed_content tsvector, + "order" integer DEFAULT 0, + dictionary character varying, + post_id uuid +); + + +-- +-- Name: licencias; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.licencias ( + id bigint NOT NULL, + created_at timestamp without time zone NOT NULL, + updated_at timestamp without time zone NOT NULL, + name character varying, + description text, + deed text, + url character varying, + icons character varying, + short_description character varying +); + + +-- +-- Name: licencias_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.licencias_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: licencias_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.licencias_id_seq OWNED BY public.licencias.id; + + +-- +-- Name: log_entries; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.log_entries ( + id bigint NOT NULL, + created_at timestamp(6) without time zone NOT NULL, + updated_at timestamp(6) without time zone NOT NULL, + site_id bigint, + text text, + sent boolean DEFAULT false +); + + +-- +-- Name: log_entries_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.log_entries_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: log_entries_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.log_entries_id_seq OWNED BY public.log_entries.id; + + +-- +-- Name: maintenances; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.maintenances ( + id bigint NOT NULL, + created_at timestamp(6) without time zone NOT NULL, + updated_at timestamp(6) without time zone NOT NULL, + message text, + estimated_from timestamp without time zone, + estimated_to timestamp without time zone, + are_we_back boolean DEFAULT false +); + + +-- +-- Name: maintenances_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.maintenances_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: maintenances_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.maintenances_id_seq OWNED BY public.maintenances.id; + + +-- +-- Name: mobility_string_translations; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.mobility_string_translations ( + id bigint NOT NULL, + locale character varying NOT NULL, + key character varying NOT NULL, + value character varying, + translatable_type character varying, + translatable_id integer, + created_at timestamp without time zone NOT NULL, + updated_at timestamp without time zone NOT NULL +); + + +-- +-- Name: mobility_string_translations_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.mobility_string_translations_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: mobility_string_translations_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.mobility_string_translations_id_seq OWNED BY public.mobility_string_translations.id; + + +-- +-- Name: mobility_text_translations; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.mobility_text_translations ( + id bigint NOT NULL, + locale character varying NOT NULL, + key character varying NOT NULL, + value text, + translatable_type character varying, + translatable_id integer, + created_at timestamp without time zone NOT NULL, + updated_at timestamp without time zone NOT NULL +); + + +-- +-- Name: mobility_text_translations_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.mobility_text_translations_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: mobility_text_translations_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.mobility_text_translations_id_seq OWNED BY public.mobility_text_translations.id; + + +-- +-- Name: privacy_policies; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.privacy_policies ( + id bigint NOT NULL, + created_at timestamp(6) without time zone NOT NULL, + updated_at timestamp(6) without time zone NOT NULL, + title character varying, + description text, + content text +); + + +-- +-- Name: privacy_policies_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.privacy_policies_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: privacy_policies_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.privacy_policies_id_seq OWNED BY public.privacy_policies.id; + + +-- +-- Name: que_jobs_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.que_jobs_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: que_jobs_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.que_jobs_id_seq OWNED BY public.que_jobs.id; + + +-- +-- Name: que_lockers; Type: TABLE; Schema: public; Owner: - +-- + +CREATE UNLOGGED TABLE public.que_lockers ( + pid integer NOT NULL, + worker_count integer NOT NULL, + worker_priorities integer[] NOT NULL, + ruby_pid integer NOT NULL, + ruby_hostname text NOT NULL, + queues text[] NOT NULL, + listening boolean NOT NULL, + job_schema_version integer DEFAULT 1, + CONSTRAINT valid_queues CHECK (((array_ndims(queues) = 1) AND (array_length(queues, 1) IS NOT NULL))), + CONSTRAINT valid_worker_priorities CHECK (((array_ndims(worker_priorities) = 1) AND (array_length(worker_priorities, 1) IS NOT NULL))) +); + + +-- +-- Name: que_values; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.que_values ( + key text NOT NULL, + value jsonb DEFAULT '{}'::jsonb NOT NULL, + CONSTRAINT valid_value CHECK ((jsonb_typeof(value) = 'object'::text)) +) +WITH (fillfactor='90'); + + +-- +-- Name: roles; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.roles ( + id bigint NOT NULL, + created_at timestamp without time zone NOT NULL, + updated_at timestamp without time zone NOT NULL, + site_id integer, + usuarie_id integer, + rol character varying, + temporal boolean +); + + +-- +-- Name: roles_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.roles_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: roles_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.roles_id_seq OWNED BY public.roles.id; + + +-- +-- Name: rollups; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.rollups ( + id bigint NOT NULL, + name character varying NOT NULL, + "interval" character varying NOT NULL, + "time" timestamp without time zone NOT NULL, + dimensions jsonb DEFAULT '{}'::jsonb NOT NULL, + value double precision +); + + +-- +-- Name: rollups_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.rollups_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: rollups_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.rollups_id_seq OWNED BY public.rollups.id; + + +-- +-- Name: schema_migrations; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.schema_migrations ( + version character varying NOT NULL +); + + +-- +-- Name: sites; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.sites ( + id bigint NOT NULL, + created_at timestamp without time zone NOT NULL, + updated_at timestamp without time zone NOT NULL, + name character varying, + design_id integer, + licencia_id integer, + status character varying DEFAULT 'waiting'::character varying, + description text, + title character varying, + colaboracion_anonima boolean DEFAULT false, + contact boolean DEFAULT false, + private_key_ciphertext character varying, + acepta_invitades boolean DEFAULT false, + tienda_api_key_ciphertext character varying DEFAULT ''::character varying, + tienda_url character varying DEFAULT ''::character varying, + api_key_ciphertext character varying, + slugify_mode character varying DEFAULT 'default'::character varying +); + + +-- +-- Name: sites_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.sites_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: sites_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.sites_id_seq OWNED BY public.sites.id; + + +-- +-- Name: stats; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.stats ( + id bigint NOT NULL, + created_at timestamp(6) without time zone NOT NULL, + updated_at timestamp(6) without time zone NOT NULL, + site_id bigint, + name character varying NOT NULL +); + + +-- +-- Name: stats_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.stats_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: stats_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.stats_id_seq OWNED BY public.stats.id; + + +-- +-- Name: usuaries; Type: TABLE; Schema: public; Owner: - +-- + +CREATE TABLE public.usuaries ( + id bigint NOT NULL, + created_at timestamp without time zone NOT NULL, + updated_at timestamp without time zone NOT NULL, + email character varying DEFAULT ''::character varying NOT NULL, + encrypted_password character varying DEFAULT ''::character varying NOT NULL, + reset_password_token character varying, + reset_password_sent_at timestamp without time zone, + remember_created_at timestamp without time zone, + confirmation_token character varying, + confirmed_at timestamp without time zone, + confirmation_sent_at timestamp without time zone, + unconfirmed_email character varying, + failed_attempts integer DEFAULT 0 NOT NULL, + unlock_token character varying, + locked_at timestamp without time zone, + invitation_token character varying, + invitation_created_at timestamp without time zone, + invitation_sent_at timestamp without time zone, + invitation_accepted_at timestamp without time zone, + invitation_limit integer, + invited_by_type character varying, + invited_by_id integer, + invitations_count integer DEFAULT 0, + lang character varying DEFAULT 'es'::character varying, + privacy_policy_accepted_at timestamp without time zone, + terms_of_service_accepted_at timestamp without time zone, + code_of_conduct_accepted_at timestamp without time zone, + available_for_feedback_accepted_at timestamp without time zone +); + + +-- +-- Name: usuaries_id_seq; Type: SEQUENCE; Schema: public; Owner: - +-- + +CREATE SEQUENCE public.usuaries_id_seq + START WITH 1 + INCREMENT BY 1 + NO MINVALUE + NO MAXVALUE + CACHE 1; + + +-- +-- Name: usuaries_id_seq; Type: SEQUENCE OWNED BY; Schema: public; Owner: - +-- + +ALTER SEQUENCE public.usuaries_id_seq OWNED BY public.usuaries.id; + + +-- +-- Name: action_text_rich_texts id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.action_text_rich_texts ALTER COLUMN id SET DEFAULT nextval('public.action_text_rich_texts_id_seq'::regclass); + + +-- +-- Name: active_storage_attachments id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.active_storage_attachments ALTER COLUMN id SET DEFAULT nextval('public.active_storage_attachments_id_seq'::regclass); + + +-- +-- Name: active_storage_blobs id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.active_storage_blobs ALTER COLUMN id SET DEFAULT nextval('public.active_storage_blobs_id_seq'::regclass); + + +-- +-- Name: active_storage_variant_records id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.active_storage_variant_records ALTER COLUMN id SET DEFAULT nextval('public.active_storage_variant_records_id_seq'::regclass); + + +-- +-- Name: blazer_audits id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.blazer_audits ALTER COLUMN id SET DEFAULT nextval('public.blazer_audits_id_seq'::regclass); + + +-- +-- Name: blazer_checks id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.blazer_checks ALTER COLUMN id SET DEFAULT nextval('public.blazer_checks_id_seq'::regclass); + + +-- +-- Name: blazer_dashboard_queries id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.blazer_dashboard_queries ALTER COLUMN id SET DEFAULT nextval('public.blazer_dashboard_queries_id_seq'::regclass); + + +-- +-- Name: blazer_dashboards id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.blazer_dashboards ALTER COLUMN id SET DEFAULT nextval('public.blazer_dashboards_id_seq'::regclass); + + +-- +-- Name: blazer_queries id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.blazer_queries ALTER COLUMN id SET DEFAULT nextval('public.blazer_queries_id_seq'::regclass); + + +-- +-- Name: build_stats id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.build_stats ALTER COLUMN id SET DEFAULT nextval('public.build_stats_id_seq'::regclass); + + +-- +-- Name: codes_of_conduct id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.codes_of_conduct ALTER COLUMN id SET DEFAULT nextval('public.codes_of_conduct_id_seq'::regclass); + + +-- +-- Name: deploys id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.deploys ALTER COLUMN id SET DEFAULT nextval('public.deploys_id_seq'::regclass); + + +-- +-- Name: designs id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.designs ALTER COLUMN id SET DEFAULT nextval('public.designs_id_seq'::regclass); + + +-- +-- Name: distributed_press_publishers id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.distributed_press_publishers ALTER COLUMN id SET DEFAULT nextval('public.distributed_press_publishers_id_seq'::regclass); + + +-- +-- Name: licencias id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.licencias ALTER COLUMN id SET DEFAULT nextval('public.licencias_id_seq'::regclass); + + +-- +-- Name: log_entries id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.log_entries ALTER COLUMN id SET DEFAULT nextval('public.log_entries_id_seq'::regclass); + + +-- +-- Name: maintenances id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.maintenances ALTER COLUMN id SET DEFAULT nextval('public.maintenances_id_seq'::regclass); + + +-- +-- Name: mobility_string_translations id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.mobility_string_translations ALTER COLUMN id SET DEFAULT nextval('public.mobility_string_translations_id_seq'::regclass); + + +-- +-- Name: mobility_text_translations id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.mobility_text_translations ALTER COLUMN id SET DEFAULT nextval('public.mobility_text_translations_id_seq'::regclass); + + +-- +-- Name: privacy_policies id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.privacy_policies ALTER COLUMN id SET DEFAULT nextval('public.privacy_policies_id_seq'::regclass); + + +-- +-- Name: que_jobs id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.que_jobs ALTER COLUMN id SET DEFAULT nextval('public.que_jobs_id_seq'::regclass); + + +-- +-- Name: roles id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.roles ALTER COLUMN id SET DEFAULT nextval('public.roles_id_seq'::regclass); + + +-- +-- Name: rollups id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.rollups ALTER COLUMN id SET DEFAULT nextval('public.rollups_id_seq'::regclass); + + +-- +-- Name: sites id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.sites ALTER COLUMN id SET DEFAULT nextval('public.sites_id_seq'::regclass); + + +-- +-- Name: stats id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.stats ALTER COLUMN id SET DEFAULT nextval('public.stats_id_seq'::regclass); + + +-- +-- Name: usuaries id; Type: DEFAULT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.usuaries ALTER COLUMN id SET DEFAULT nextval('public.usuaries_id_seq'::regclass); + + +-- +-- Name: access_logs access_logs_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.access_logs + ADD CONSTRAINT access_logs_pkey PRIMARY KEY (id); + + +-- +-- Name: action_text_rich_texts action_text_rich_texts_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.action_text_rich_texts + ADD CONSTRAINT action_text_rich_texts_pkey PRIMARY KEY (id); + + +-- +-- Name: active_storage_attachments active_storage_attachments_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.active_storage_attachments + ADD CONSTRAINT active_storage_attachments_pkey PRIMARY KEY (id); + + +-- +-- Name: active_storage_blobs active_storage_blobs_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.active_storage_blobs + ADD CONSTRAINT active_storage_blobs_pkey PRIMARY KEY (id); + + +-- +-- Name: active_storage_variant_records active_storage_variant_records_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.active_storage_variant_records + ADD CONSTRAINT active_storage_variant_records_pkey PRIMARY KEY (id); + + +-- +-- Name: blazer_audits blazer_audits_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.blazer_audits + ADD CONSTRAINT blazer_audits_pkey PRIMARY KEY (id); + + +-- +-- Name: blazer_checks blazer_checks_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.blazer_checks + ADD CONSTRAINT blazer_checks_pkey PRIMARY KEY (id); + + +-- +-- Name: blazer_dashboard_queries blazer_dashboard_queries_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.blazer_dashboard_queries + ADD CONSTRAINT blazer_dashboard_queries_pkey PRIMARY KEY (id); + + +-- +-- Name: blazer_dashboards blazer_dashboards_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.blazer_dashboards + ADD CONSTRAINT blazer_dashboards_pkey PRIMARY KEY (id); + + +-- +-- Name: blazer_queries blazer_queries_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.blazer_queries + ADD CONSTRAINT blazer_queries_pkey PRIMARY KEY (id); + + +-- +-- Name: build_stats build_stats_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.build_stats + ADD CONSTRAINT build_stats_pkey PRIMARY KEY (id); + + +-- +-- Name: codes_of_conduct codes_of_conduct_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.codes_of_conduct + ADD CONSTRAINT codes_of_conduct_pkey PRIMARY KEY (id); + + +-- +-- Name: csp_reports csp_reports_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.csp_reports + ADD CONSTRAINT csp_reports_pkey PRIMARY KEY (id); + + +-- +-- Name: deploys deploys_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.deploys + ADD CONSTRAINT deploys_pkey PRIMARY KEY (id); + + +-- +-- Name: designs designs_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.designs + ADD CONSTRAINT designs_pkey PRIMARY KEY (id); + + +-- +-- Name: distributed_press_publishers distributed_press_publishers_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.distributed_press_publishers + ADD CONSTRAINT distributed_press_publishers_pkey PRIMARY KEY (id); + + +-- +-- Name: indexed_posts indexed_posts_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.indexed_posts + ADD CONSTRAINT indexed_posts_pkey PRIMARY KEY (id); + + +-- +-- Name: licencias licencias_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.licencias + ADD CONSTRAINT licencias_pkey PRIMARY KEY (id); + + +-- +-- Name: log_entries log_entries_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.log_entries + ADD CONSTRAINT log_entries_pkey PRIMARY KEY (id); + + +-- +-- Name: maintenances maintenances_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.maintenances + ADD CONSTRAINT maintenances_pkey PRIMARY KEY (id); + + +-- +-- Name: mobility_string_translations mobility_string_translations_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.mobility_string_translations + ADD CONSTRAINT mobility_string_translations_pkey PRIMARY KEY (id); + + +-- +-- Name: mobility_text_translations mobility_text_translations_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.mobility_text_translations + ADD CONSTRAINT mobility_text_translations_pkey PRIMARY KEY (id); + + +-- +-- Name: privacy_policies privacy_policies_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.privacy_policies + ADD CONSTRAINT privacy_policies_pkey PRIMARY KEY (id); + + +-- +-- Name: que_jobs que_jobs_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.que_jobs + ADD CONSTRAINT que_jobs_pkey PRIMARY KEY (id); + + +-- +-- Name: que_lockers que_lockers_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.que_lockers + ADD CONSTRAINT que_lockers_pkey PRIMARY KEY (pid); + + +-- +-- Name: que_values que_values_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.que_values + ADD CONSTRAINT que_values_pkey PRIMARY KEY (key); + + +-- +-- Name: roles roles_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.roles + ADD CONSTRAINT roles_pkey PRIMARY KEY (id); + + +-- +-- Name: rollups rollups_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.rollups + ADD CONSTRAINT rollups_pkey PRIMARY KEY (id); + + +-- +-- Name: schema_migrations schema_migrations_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.schema_migrations + ADD CONSTRAINT schema_migrations_pkey PRIMARY KEY (version); + + +-- +-- Name: sites sites_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.sites + ADD CONSTRAINT sites_pkey PRIMARY KEY (id); + + +-- +-- Name: stats stats_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.stats + ADD CONSTRAINT stats_pkey PRIMARY KEY (id); + + +-- +-- Name: usuaries usuaries_pkey; Type: CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.usuaries + ADD CONSTRAINT usuaries_pkey PRIMARY KEY (id); + + +-- +-- Name: index_access_logs_on_geoip2_data_city_name; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_access_logs_on_geoip2_data_city_name ON public.access_logs USING btree (geoip2_data_city_name); + + +-- +-- Name: index_access_logs_on_geoip2_data_country_name; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_access_logs_on_geoip2_data_country_name ON public.access_logs USING btree (geoip2_data_country_name); + + +-- +-- Name: index_access_logs_on_host; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_access_logs_on_host ON public.access_logs USING btree (host); + + +-- +-- Name: index_access_logs_on_http_origin; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_access_logs_on_http_origin ON public.access_logs USING btree (http_origin); + + +-- +-- Name: index_access_logs_on_http_user_agent; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_access_logs_on_http_user_agent ON public.access_logs USING btree (http_user_agent); + + +-- +-- Name: index_access_logs_on_status; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_access_logs_on_status ON public.access_logs USING btree (status); + + +-- +-- Name: index_access_logs_on_uri; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_access_logs_on_uri ON public.access_logs USING btree (uri); + + +-- +-- Name: index_action_text_rich_texts_uniqueness; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_action_text_rich_texts_uniqueness ON public.action_text_rich_texts USING btree (record_type, record_id, name); + + +-- +-- Name: index_active_storage_attachments_on_blob_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_active_storage_attachments_on_blob_id ON public.active_storage_attachments USING btree (blob_id); + + +-- +-- Name: index_active_storage_attachments_uniqueness; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_active_storage_attachments_uniqueness ON public.active_storage_attachments USING btree (record_type, record_id, name, blob_id); + + +-- +-- Name: index_active_storage_blobs_on_key_and_service_name; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_active_storage_blobs_on_key_and_service_name ON public.active_storage_blobs USING btree (key, service_name); + + +-- +-- Name: index_active_storage_variant_records_uniqueness; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_active_storage_variant_records_uniqueness ON public.active_storage_variant_records USING btree (blob_id, variation_digest); + + +-- +-- Name: index_blazer_audits_on_query_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_blazer_audits_on_query_id ON public.blazer_audits USING btree (query_id); + + +-- +-- Name: index_blazer_audits_on_user_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_blazer_audits_on_user_id ON public.blazer_audits USING btree (user_id); + + +-- +-- Name: index_blazer_checks_on_creator_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_blazer_checks_on_creator_id ON public.blazer_checks USING btree (creator_id); + + +-- +-- Name: index_blazer_checks_on_query_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_blazer_checks_on_query_id ON public.blazer_checks USING btree (query_id); + + +-- +-- Name: index_blazer_dashboard_queries_on_dashboard_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_blazer_dashboard_queries_on_dashboard_id ON public.blazer_dashboard_queries USING btree (dashboard_id); + + +-- +-- Name: index_blazer_dashboard_queries_on_query_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_blazer_dashboard_queries_on_query_id ON public.blazer_dashboard_queries USING btree (query_id); + + +-- +-- Name: index_blazer_dashboards_on_creator_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_blazer_dashboards_on_creator_id ON public.blazer_dashboards USING btree (creator_id); + + +-- +-- Name: index_blazer_queries_on_creator_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_blazer_queries_on_creator_id ON public.blazer_queries USING btree (creator_id); + + +-- +-- Name: index_build_stats_on_deploy_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_build_stats_on_deploy_id ON public.build_stats USING btree (deploy_id); + + +-- +-- Name: index_deploys_on_site_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_deploys_on_site_id ON public.deploys USING btree (site_id); + + +-- +-- Name: index_deploys_on_type; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_deploys_on_type ON public.deploys USING btree (type); + + +-- +-- Name: index_designs_on_gem; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_designs_on_gem ON public.designs USING btree (gem); + + +-- +-- Name: index_designs_on_name; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_designs_on_name ON public.designs USING btree (name); + + +-- +-- Name: index_indexed_posts_on_front_matter; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_indexed_posts_on_front_matter ON public.indexed_posts USING gin (front_matter); + + +-- +-- Name: index_indexed_posts_on_indexed_content; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_indexed_posts_on_indexed_content ON public.indexed_posts USING gin (indexed_content); + + +-- +-- Name: index_indexed_posts_on_layout; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_indexed_posts_on_layout ON public.indexed_posts USING btree (layout); + + +-- +-- Name: index_indexed_posts_on_locale; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_indexed_posts_on_locale ON public.indexed_posts USING btree (locale); + + +-- +-- Name: index_indexed_posts_on_site_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_indexed_posts_on_site_id ON public.indexed_posts USING btree (site_id); + + +-- +-- Name: index_licencias_on_name; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_licencias_on_name ON public.licencias USING btree (name); + + +-- +-- Name: index_log_entries_on_site_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_log_entries_on_site_id ON public.log_entries USING btree (site_id); + + +-- +-- Name: index_mobility_string_translations_on_keys; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_mobility_string_translations_on_keys ON public.mobility_string_translations USING btree (translatable_id, translatable_type, locale, key); + + +-- +-- Name: index_mobility_string_translations_on_query_keys; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_mobility_string_translations_on_query_keys ON public.mobility_string_translations USING btree (translatable_type, key, value, locale); + + +-- +-- Name: index_mobility_string_translations_on_translatable_attribute; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_mobility_string_translations_on_translatable_attribute ON public.mobility_string_translations USING btree (translatable_id, translatable_type, key); + + +-- +-- Name: index_mobility_text_translations_on_keys; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_mobility_text_translations_on_keys ON public.mobility_text_translations USING btree (translatable_id, translatable_type, locale, key); + + +-- +-- Name: index_mobility_text_translations_on_translatable_attribute; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_mobility_text_translations_on_translatable_attribute ON public.mobility_text_translations USING btree (translatable_id, translatable_type, key); + + +-- +-- Name: index_roles_on_site_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_roles_on_site_id ON public.roles USING btree (site_id); + + +-- +-- Name: index_roles_on_site_id_and_usuarie_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_roles_on_site_id_and_usuarie_id ON public.roles USING btree (site_id, usuarie_id); + + +-- +-- Name: index_roles_on_usuarie_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_roles_on_usuarie_id ON public.roles USING btree (usuarie_id); + + +-- +-- Name: index_rollups_on_name_and_interval_and_time_and_dimensions; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_rollups_on_name_and_interval_and_time_and_dimensions ON public.rollups USING btree (name, "interval", "time", dimensions); + + +-- +-- Name: index_sites_on_design_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_sites_on_design_id ON public.sites USING btree (design_id); + + +-- +-- Name: index_sites_on_licencia_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_sites_on_licencia_id ON public.sites USING btree (licencia_id); + + +-- +-- Name: index_sites_on_name; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_sites_on_name ON public.sites USING btree (name); + + +-- +-- Name: index_stats_on_name; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_stats_on_name ON public.stats USING hash (name); + + +-- +-- Name: index_stats_on_site_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_stats_on_site_id ON public.stats USING btree (site_id); + + +-- +-- Name: index_usuaries_on_confirmation_token; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_usuaries_on_confirmation_token ON public.usuaries USING btree (confirmation_token); + + +-- +-- Name: index_usuaries_on_email; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_usuaries_on_email ON public.usuaries USING btree (email); + + +-- +-- Name: index_usuaries_on_invitation_token; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_usuaries_on_invitation_token ON public.usuaries USING btree (invitation_token); + + +-- +-- Name: index_usuaries_on_invitations_count; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_usuaries_on_invitations_count ON public.usuaries USING btree (invitations_count); + + +-- +-- Name: index_usuaries_on_invited_by_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_usuaries_on_invited_by_id ON public.usuaries USING btree (invited_by_id); + + +-- +-- Name: index_usuaries_on_invited_by_type_and_invited_by_id; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX index_usuaries_on_invited_by_type_and_invited_by_id ON public.usuaries USING btree (invited_by_type, invited_by_id); + + +-- +-- Name: index_usuaries_on_reset_password_token; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_usuaries_on_reset_password_token ON public.usuaries USING btree (reset_password_token); + + +-- +-- Name: index_usuaries_on_unlock_token; Type: INDEX; Schema: public; Owner: - +-- + +CREATE UNIQUE INDEX index_usuaries_on_unlock_token ON public.usuaries USING btree (unlock_token); + + +-- +-- Name: que_jobs_args_gin_idx; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX que_jobs_args_gin_idx ON public.que_jobs USING gin (args jsonb_path_ops); + + +-- +-- Name: que_jobs_data_gin_idx; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX que_jobs_data_gin_idx ON public.que_jobs USING gin (data jsonb_path_ops); + + +-- +-- Name: que_jobs_kwargs_gin_idx; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX que_jobs_kwargs_gin_idx ON public.que_jobs USING gin (kwargs jsonb_path_ops); + + +-- +-- Name: que_poll_idx; Type: INDEX; Schema: public; Owner: - +-- + +CREATE INDEX que_poll_idx ON public.que_jobs USING btree (job_schema_version, queue, priority, run_at, id) WHERE ((finished_at IS NULL) AND (expired_at IS NULL)); + + +-- +-- Name: access_logs access_logs_before_insert_row_tr; Type: TRIGGER; Schema: public; Owner: - +-- + +CREATE TRIGGER access_logs_before_insert_row_tr BEFORE INSERT ON public.access_logs FOR EACH ROW EXECUTE FUNCTION public.access_logs_before_insert_row_tr(); + + +-- +-- Name: indexed_posts indexed_posts_before_insert_update_row_tr; Type: TRIGGER; Schema: public; Owner: - +-- + +CREATE TRIGGER indexed_posts_before_insert_update_row_tr BEFORE INSERT OR UPDATE ON public.indexed_posts FOR EACH ROW EXECUTE FUNCTION public.indexed_posts_before_insert_update_row_tr(); + + +-- +-- Name: que_jobs que_job_notify; Type: TRIGGER; Schema: public; Owner: - +-- + +CREATE TRIGGER que_job_notify AFTER INSERT ON public.que_jobs FOR EACH ROW WHEN ((NOT (COALESCE(current_setting('que.skip_notify'::text, true), ''::text) = 'true'::text))) EXECUTE FUNCTION public.que_job_notify(); + + +-- +-- Name: que_jobs que_state_notify; Type: TRIGGER; Schema: public; Owner: - +-- + +CREATE TRIGGER que_state_notify AFTER INSERT OR DELETE OR UPDATE ON public.que_jobs FOR EACH ROW WHEN ((NOT (COALESCE(current_setting('que.skip_notify'::text, true), ''::text) = 'true'::text))) EXECUTE FUNCTION public.que_state_notify(); + + +-- +-- Name: active_storage_variant_records fk_rails_993965df05; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.active_storage_variant_records + ADD CONSTRAINT fk_rails_993965df05 FOREIGN KEY (blob_id) REFERENCES public.active_storage_blobs(id); + + +-- +-- Name: active_storage_attachments fk_rails_c3b3935057; Type: FK CONSTRAINT; Schema: public; Owner: - +-- + +ALTER TABLE ONLY public.active_storage_attachments + ADD CONSTRAINT fk_rails_c3b3935057 FOREIGN KEY (blob_id) REFERENCES public.active_storage_blobs(id); + + +-- +-- Name: publisher; Type: PUBLICATION; Schema: -; Owner: - +-- + +CREATE PUBLICATION publisher FOR ALL TABLES WITH (publish = 'insert, update, delete, truncate'); + + +-- +-- PostgreSQL database dump complete +-- + From 4f77a31def6ca5ddb7c09b1e0bbcb1c8efcbd87e Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Tue, 23 May 2023 21:40:50 +0000 Subject: [PATCH 340/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/css/application-6c9ed06e.css | 3 --- public/packs/css/application-6c9ed06e.css.br | 3 --- public/packs/css/application-6c9ed06e.css.gz | 3 --- public/packs/css/application-bb1478c7.css | 3 +++ public/packs/css/application-bb1478c7.css.br | 3 +++ public/packs/css/application-bb1478c7.css.gz | 3 +++ public/packs/js/application-2b215667e3e17da17319.js | 3 +++ .../packs/js/application-2b215667e3e17da17319.js.LICENSE.txt | 3 +++ public/packs/js/application-2b215667e3e17da17319.js.br | 3 +++ public/packs/js/application-2b215667e3e17da17319.js.gz | 3 +++ public/packs/js/application-2b215667e3e17da17319.js.map | 3 +++ public/packs/js/application-2b215667e3e17da17319.js.map.br | 3 +++ public/packs/js/application-2b215667e3e17da17319.js.map.gz | 3 +++ public/packs/js/application-e1193536c90a3a18c60d.js | 3 --- .../packs/js/application-e1193536c90a3a18c60d.js.LICENSE.txt | 3 --- public/packs/js/application-e1193536c90a3a18c60d.js.br | 3 --- public/packs/js/application-e1193536c90a3a18c60d.js.gz | 3 --- public/packs/js/application-e1193536c90a3a18c60d.js.map | 3 --- public/packs/js/application-e1193536c90a3a18c60d.js.map.br | 3 --- public/packs/js/application-e1193536c90a3a18c60d.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 24 files changed, 36 insertions(+), 36 deletions(-) delete mode 100644 public/packs/css/application-6c9ed06e.css delete mode 100644 public/packs/css/application-6c9ed06e.css.br delete mode 100644 public/packs/css/application-6c9ed06e.css.gz create mode 100644 public/packs/css/application-bb1478c7.css create mode 100644 public/packs/css/application-bb1478c7.css.br create mode 100644 public/packs/css/application-bb1478c7.css.gz create mode 100644 public/packs/js/application-2b215667e3e17da17319.js create mode 100644 public/packs/js/application-2b215667e3e17da17319.js.LICENSE.txt create mode 100644 public/packs/js/application-2b215667e3e17da17319.js.br create mode 100644 public/packs/js/application-2b215667e3e17da17319.js.gz create mode 100644 public/packs/js/application-2b215667e3e17da17319.js.map create mode 100644 public/packs/js/application-2b215667e3e17da17319.js.map.br create mode 100644 public/packs/js/application-2b215667e3e17da17319.js.map.gz delete mode 100644 public/packs/js/application-e1193536c90a3a18c60d.js delete mode 100644 public/packs/js/application-e1193536c90a3a18c60d.js.LICENSE.txt delete mode 100644 public/packs/js/application-e1193536c90a3a18c60d.js.br delete mode 100644 public/packs/js/application-e1193536c90a3a18c60d.js.gz delete mode 100644 public/packs/js/application-e1193536c90a3a18c60d.js.map delete mode 100644 public/packs/js/application-e1193536c90a3a18c60d.js.map.br delete mode 100644 public/packs/js/application-e1193536c90a3a18c60d.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 334f2061..cb0f2e54 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d55c7c6d6e6dc32fa980ab8752d37041e1f36158d319a89fee78cf073042805a +oid sha256:fbaf2d91e43502cd5f0dbb0d2b21bf428d6b610f5de073736213d40f3c1ab2d9 size 14525 diff --git a/public/packs/css/application-6c9ed06e.css b/public/packs/css/application-6c9ed06e.css deleted file mode 100644 index 7ecd1b5c..00000000 --- a/public/packs/css/application-6c9ed06e.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:863e9a1c3924c26753de078209212ee8711c2fd66daab197437a1b5f5f87dcd1 -size 48959 diff --git a/public/packs/css/application-6c9ed06e.css.br b/public/packs/css/application-6c9ed06e.css.br deleted file mode 100644 index 300518dc..00000000 --- a/public/packs/css/application-6c9ed06e.css.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:83b701c14f54256da97dbe1897ce148b6e2a42da6b40f282afa57b73f0780010 -size 9951 diff --git a/public/packs/css/application-6c9ed06e.css.gz b/public/packs/css/application-6c9ed06e.css.gz deleted file mode 100644 index 60e8092f..00000000 --- a/public/packs/css/application-6c9ed06e.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8073858fa59b475b9c46a2bad2baa29fe9dacb74f165ce1f270c044117ccc43c -size 12276 diff --git a/public/packs/css/application-bb1478c7.css b/public/packs/css/application-bb1478c7.css new file mode 100644 index 00000000..00ee9254 --- /dev/null +++ b/public/packs/css/application-bb1478c7.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8fd3bb412b63723fe63fa107ffac78bd6396487ccd69e4ea6d098848739a075d +size 49279 diff --git a/public/packs/css/application-bb1478c7.css.br b/public/packs/css/application-bb1478c7.css.br new file mode 100644 index 00000000..0b1db25e --- /dev/null +++ b/public/packs/css/application-bb1478c7.css.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:243e15e5a405fd51203d0fe34119c018691da4bfdd00be0cf26aa3e2abb5634d +size 10005 diff --git a/public/packs/css/application-bb1478c7.css.gz b/public/packs/css/application-bb1478c7.css.gz new file mode 100644 index 00000000..7cadc76e --- /dev/null +++ b/public/packs/css/application-bb1478c7.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3d0b479d7ebdc77c8ef3549085248c2b668a61fea1a1e3700bc918fe505c4ff +size 12351 diff --git a/public/packs/js/application-2b215667e3e17da17319.js b/public/packs/js/application-2b215667e3e17da17319.js new file mode 100644 index 00000000..23e9e0c9 --- /dev/null +++ b/public/packs/js/application-2b215667e3e17da17319.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c352deb5369f8336dde2cf3d9efbd9ee9ba7bbde2f7eed77fa5ea7434c1bc862 +size 1492169 diff --git a/public/packs/js/application-2b215667e3e17da17319.js.LICENSE.txt b/public/packs/js/application-2b215667e3e17da17319.js.LICENSE.txt new file mode 100644 index 00000000..979d1ab9 --- /dev/null +++ b/public/packs/js/application-2b215667e3e17da17319.js.LICENSE.txt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3b9ae1697c4b8a404afe77afe035de28b7f4880e9f52caac82620bb8d8ed495 +size 854 diff --git a/public/packs/js/application-2b215667e3e17da17319.js.br b/public/packs/js/application-2b215667e3e17da17319.js.br new file mode 100644 index 00000000..18d8fb40 --- /dev/null +++ b/public/packs/js/application-2b215667e3e17da17319.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0608697d549a4630a308be36b6f973577703fe6f5755a307e1e6b65651acd9d0 +size 326865 diff --git a/public/packs/js/application-2b215667e3e17da17319.js.gz b/public/packs/js/application-2b215667e3e17da17319.js.gz new file mode 100644 index 00000000..7caa9b05 --- /dev/null +++ b/public/packs/js/application-2b215667e3e17da17319.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3301cd4419a5c2b21407a9ef47c8e4113d330f4893a6f839482d0f8cda27d33e +size 433114 diff --git a/public/packs/js/application-2b215667e3e17da17319.js.map b/public/packs/js/application-2b215667e3e17da17319.js.map new file mode 100644 index 00000000..cb3c48af --- /dev/null +++ b/public/packs/js/application-2b215667e3e17da17319.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7acbe6067c273e467c8fa02821f3b9c86123720ec9a2d8a299528fa123feedac +size 5850825 diff --git a/public/packs/js/application-2b215667e3e17da17319.js.map.br b/public/packs/js/application-2b215667e3e17da17319.js.map.br new file mode 100644 index 00000000..61cf141f --- /dev/null +++ b/public/packs/js/application-2b215667e3e17da17319.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c633100040469c9aeed40fa385857760e9fe142440fa61e68a4d2cfa471240d8 +size 1255095 diff --git a/public/packs/js/application-2b215667e3e17da17319.js.map.gz b/public/packs/js/application-2b215667e3e17da17319.js.map.gz new file mode 100644 index 00000000..2ba5f4dc --- /dev/null +++ b/public/packs/js/application-2b215667e3e17da17319.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:020b896a39ce337ea70bfdd41a30b6086f55a39451522dba7309fef297ca96d4 +size 1551413 diff --git a/public/packs/js/application-e1193536c90a3a18c60d.js b/public/packs/js/application-e1193536c90a3a18c60d.js deleted file mode 100644 index bbc35f08..00000000 --- a/public/packs/js/application-e1193536c90a3a18c60d.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ca86afc3ed844907a7881d0d5f65d954971ee09f6d9dfb33e1b8f27c707fe7f8 -size 1462661 diff --git a/public/packs/js/application-e1193536c90a3a18c60d.js.LICENSE.txt b/public/packs/js/application-e1193536c90a3a18c60d.js.LICENSE.txt deleted file mode 100644 index 89f0cf4f..00000000 --- a/public/packs/js/application-e1193536c90a3a18c60d.js.LICENSE.txt +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a016dd85be9a400040f4440d2ce1a94524f6e885a3d0e1f2422b46c2397df38f -size 629 diff --git a/public/packs/js/application-e1193536c90a3a18c60d.js.br b/public/packs/js/application-e1193536c90a3a18c60d.js.br deleted file mode 100644 index 39be3571..00000000 --- a/public/packs/js/application-e1193536c90a3a18c60d.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1a0c4a4bb303d6b6b93bd5492c73f48db6b087d7bec2b82c4d78479d9bb24e85 -size 320142 diff --git a/public/packs/js/application-e1193536c90a3a18c60d.js.gz b/public/packs/js/application-e1193536c90a3a18c60d.js.gz deleted file mode 100644 index 1db64519..00000000 --- a/public/packs/js/application-e1193536c90a3a18c60d.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1de8637ec3f928184735455aa85d08b15474ff17d4612bbddbc57c2d5b1ac57d -size 424540 diff --git a/public/packs/js/application-e1193536c90a3a18c60d.js.map b/public/packs/js/application-e1193536c90a3a18c60d.js.map deleted file mode 100644 index 4bf8dca9..00000000 --- a/public/packs/js/application-e1193536c90a3a18c60d.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:00e8f38da378405d1a922d20bbfcea990262380e853e8a4d1ba049d741fd38e9 -size 5732335 diff --git a/public/packs/js/application-e1193536c90a3a18c60d.js.map.br b/public/packs/js/application-e1193536c90a3a18c60d.js.map.br deleted file mode 100644 index f0e2f356..00000000 --- a/public/packs/js/application-e1193536c90a3a18c60d.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d0c7f1ac1c03faf81f757689cf0b967f0f82f2e8f731c6f9a1ca468ec14088d8 -size 1229563 diff --git a/public/packs/js/application-e1193536c90a3a18c60d.js.map.gz b/public/packs/js/application-e1193536c90a3a18c60d.js.map.gz deleted file mode 100644 index 8a4a8635..00000000 --- a/public/packs/js/application-e1193536c90a3a18c60d.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0254d1b1163483a3d41a96c98707387fe0dbcbe7ce7f6a209a828633bdc62b95 -size 1520484 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index b8b798da..68929de3 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:077fcc6251e483dce8daf0fadc899ad54a22b94b35b790bd74ac07d6802b0dcd +oid sha256:bc1f8623a04f5a6420d2e451922022741e38a614dbf7d45cf0856307aa97e9bd size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 3fb8e31a..9e9d33d5 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:084fca231def51d87b2bb3ba1804b1095c965e0e0a551ee115d375eade9764b7 -size 322 +oid sha256:ca37abf171a16ad3b3afd2a85e957718ee4fe48904ad85a89051f2e29e469223 +size 321 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 64df33fc..221de9d2 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:da9205ac806115e49cb749eeb0a9a0a65a58795ff14a3472dc2d32dffafe205f -size 365 +oid sha256:36bcacf113011fc89fd9e9da3eb4a0f03b70425efade01df7124041259256410 +size 367 From af809b0825326c14f86310909885f21e5c9c3ae0 Mon Sep 17 00:00:00 2001 From: jazzari Date: Mon, 12 Jun 2023 11:20:26 -0300 Subject: [PATCH 341/699] fix: add try catch to application.js so can notify js errors with the console #13578 --- app/javascript/packs/application.js | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/app/javascript/packs/application.js b/app/javascript/packs/application.js index 827d6a4b..cfc0d5d5 100644 --- a/app/javascript/packs/application.js +++ b/app/javascript/packs/application.js @@ -2,11 +2,21 @@ import { Notifier } from '@airbrake/browser' -window.airbrake = new Notifier({ - projectId: window.env.AIRBRAKE_SITE_ID, - projectKey: window.env.AIRBRAKE_API_KEY, - host: window.env.PANEL_URL -}) +try { + window.airbrake = new Notifier({ + projectId: window.env.AIRBRAKE_PROJECT_ID, + projectKey: window.env.AIRBRAKE_PROJECT_KEY, + host: window.env.PANEL_URL + }); + + console.originalError = console.error; + console.error = (...e) => { + window.airbrake.notify(e.join(" ")); + return console.originalError(...e); + }; +} catch(e) { + console.error(e); +} import 'core-js/stable' import 'regenerator-runtime/runtime' From f9b431f016c69b963d34950472292a09bb368c8a Mon Sep 17 00:00:00 2001 From: Woodpecker Date: Mon, 12 Jun 2023 21:35:25 +0000 Subject: [PATCH 342/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-17c8ec1abff8d9ee68fc.js | 3 +++ ...SE.txt => application-17c8ec1abff8d9ee68fc.js.LICENSE.txt} | 0 public/packs/js/application-17c8ec1abff8d9ee68fc.js.br | 3 +++ public/packs/js/application-17c8ec1abff8d9ee68fc.js.gz | 3 +++ public/packs/js/application-17c8ec1abff8d9ee68fc.js.map | 3 +++ public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.br | 3 +++ public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.gz | 3 +++ public/packs/js/application-2b215667e3e17da17319.js | 3 --- public/packs/js/application-2b215667e3e17da17319.js.br | 3 --- public/packs/js/application-2b215667e3e17da17319.js.gz | 3 --- public/packs/js/application-2b215667e3e17da17319.js.map | 3 --- public/packs/js/application-2b215667e3e17da17319.js.map.br | 3 --- public/packs/js/application-2b215667e3e17da17319.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 17 files changed, 24 insertions(+), 24 deletions(-) create mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js rename public/packs/js/{application-2b215667e3e17da17319.js.LICENSE.txt => application-17c8ec1abff8d9ee68fc.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js.br create mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js.gz create mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js.map create mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.br create mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.gz delete mode 100644 public/packs/js/application-2b215667e3e17da17319.js delete mode 100644 public/packs/js/application-2b215667e3e17da17319.js.br delete mode 100644 public/packs/js/application-2b215667e3e17da17319.js.gz delete mode 100644 public/packs/js/application-2b215667e3e17da17319.js.map delete mode 100644 public/packs/js/application-2b215667e3e17da17319.js.map.br delete mode 100644 public/packs/js/application-2b215667e3e17da17319.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index cb0f2e54..6d1b664d 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:fbaf2d91e43502cd5f0dbb0d2b21bf428d6b610f5de073736213d40f3c1ab2d9 +oid sha256:e0bd21756fd55d772a0d310db827bd41b2d1fbdd6d6924ad212803ed33971725 size 14525 diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js b/public/packs/js/application-17c8ec1abff8d9ee68fc.js new file mode 100644 index 00000000..37480493 --- /dev/null +++ b/public/packs/js/application-17c8ec1abff8d9ee68fc.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11cb44a373f826146b847520f0dd20a7549d4fac1c5a90d1deac260b421e5c68 +size 1492424 diff --git a/public/packs/js/application-2b215667e3e17da17319.js.LICENSE.txt b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-2b215667e3e17da17319.js.LICENSE.txt rename to public/packs/js/application-17c8ec1abff8d9ee68fc.js.LICENSE.txt diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.br b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.br new file mode 100644 index 00000000..b357cdd6 --- /dev/null +++ b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48ccffc31d33c10d77f4ae691a26b64c1398fe4ec86071ba01430a4bfbdc3c00 +size 326998 diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.gz b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.gz new file mode 100644 index 00000000..f3d19ecd --- /dev/null +++ b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4634538d756c8168c99dc53f33a593a99efd7f4e183ca2d4203883136e72ba2 +size 433218 diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map new file mode 100644 index 00000000..922e5404 --- /dev/null +++ b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a46d673b967335af347b2d5418e29f0a88a67d851339ed32c6468ab0db29025 +size 5851293 diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.br b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.br new file mode 100644 index 00000000..37c0f5fd --- /dev/null +++ b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba89e39620d2992e2778804b1b68cf134c5b5c51b5530780ed6aeb24b5eeef26 +size 1255087 diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.gz b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.gz new file mode 100644 index 00000000..120beedf --- /dev/null +++ b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7926e560d43796d95f9635a7c57f7c8efcc162e1d1eb46798e41ccea3f90b2f4 +size 1551597 diff --git a/public/packs/js/application-2b215667e3e17da17319.js b/public/packs/js/application-2b215667e3e17da17319.js deleted file mode 100644 index 23e9e0c9..00000000 --- a/public/packs/js/application-2b215667e3e17da17319.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c352deb5369f8336dde2cf3d9efbd9ee9ba7bbde2f7eed77fa5ea7434c1bc862 -size 1492169 diff --git a/public/packs/js/application-2b215667e3e17da17319.js.br b/public/packs/js/application-2b215667e3e17da17319.js.br deleted file mode 100644 index 18d8fb40..00000000 --- a/public/packs/js/application-2b215667e3e17da17319.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0608697d549a4630a308be36b6f973577703fe6f5755a307e1e6b65651acd9d0 -size 326865 diff --git a/public/packs/js/application-2b215667e3e17da17319.js.gz b/public/packs/js/application-2b215667e3e17da17319.js.gz deleted file mode 100644 index 7caa9b05..00000000 --- a/public/packs/js/application-2b215667e3e17da17319.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3301cd4419a5c2b21407a9ef47c8e4113d330f4893a6f839482d0f8cda27d33e -size 433114 diff --git a/public/packs/js/application-2b215667e3e17da17319.js.map b/public/packs/js/application-2b215667e3e17da17319.js.map deleted file mode 100644 index cb3c48af..00000000 --- a/public/packs/js/application-2b215667e3e17da17319.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7acbe6067c273e467c8fa02821f3b9c86123720ec9a2d8a299528fa123feedac -size 5850825 diff --git a/public/packs/js/application-2b215667e3e17da17319.js.map.br b/public/packs/js/application-2b215667e3e17da17319.js.map.br deleted file mode 100644 index 61cf141f..00000000 --- a/public/packs/js/application-2b215667e3e17da17319.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c633100040469c9aeed40fa385857760e9fe142440fa61e68a4d2cfa471240d8 -size 1255095 diff --git a/public/packs/js/application-2b215667e3e17da17319.js.map.gz b/public/packs/js/application-2b215667e3e17da17319.js.map.gz deleted file mode 100644 index 2ba5f4dc..00000000 --- a/public/packs/js/application-2b215667e3e17da17319.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:020b896a39ce337ea70bfdd41a30b6086f55a39451522dba7309fef297ca96d4 -size 1551413 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 68929de3..6949dfb1 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:bc1f8623a04f5a6420d2e451922022741e38a614dbf7d45cf0856307aa97e9bd +oid sha256:a8b7d82687e0f68f4e2705ad8bea08ff7ebe1e998bd0f30fe82220ec6dc2edba size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 9e9d33d5..a409c567 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ca37abf171a16ad3b3afd2a85e957718ee4fe48904ad85a89051f2e29e469223 -size 321 +oid sha256:edb90be614388b1b288316fd44a7510e88e7705fee4a7abc99dd539e415b79ac +size 320 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 221de9d2..1646ab13 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:36bcacf113011fc89fd9e9da3eb4a0f03b70425efade01df7124041259256410 -size 367 +oid sha256:c82218f8743a4bdf1bc369bbd2df346bc90a4e62e08cadebd62efe3d01603a25 +size 365 From e15d334b2259ea311e356cde73cb947a28397865 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 14 Jun 2023 13:33:47 -0300 Subject: [PATCH 343/699] fix: soporte para ruby 3.1 #9357 closes #13603 --- app/lib/exception_notifier/gitlab_notifier.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/lib/exception_notifier/gitlab_notifier.rb b/app/lib/exception_notifier/gitlab_notifier.rb index 8152bb62..947e4e44 100644 --- a/app/lib/exception_notifier/gitlab_notifier.rb +++ b/app/lib/exception_notifier/gitlab_notifier.rb @@ -8,9 +8,9 @@ module ExceptionNotifier # Recibe la excepción y empieza la tarea de notificación en segundo # plano. # - # @param [Exception] - # @param [Hash] - def call(exception, **options) + # @param :exception [Exception] + # @param :options [Hash] + def call(exception, options, &block) case exception when BacktraceJob::BacktraceException GitlabNotifierJob.perform_later(exception, **options) From 12dd37325c0e12ff1976185123dae0ee37914b10 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 15 Jun 2023 13:45:31 -0300 Subject: [PATCH 344/699] fixup! Merge branch 'issue-13612' into 17.3.alpine.panel.sutty.nl --- app/models/deploy_local.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/deploy_local.rb b/app/models/deploy_local.rb index b7017018..9d87a6cb 100644 --- a/app/models/deploy_local.rb +++ b/app/models/deploy_local.rb @@ -15,7 +15,7 @@ class DeployLocal < Deploy def bundle(output: false) run %(bundle config set --local clean 'true'), output: output run %(bundle config set --local deployment 'true'), output: output if site.gemfile_lock_path? - run %(bundle config set --local path '#{gems_dir}'), output: output + run %(bundle config set --local path '#{site.bundle_path}'), output: output run %(bundle config set --local without 'test development'), output: output run %(bundle config set --local cache_all 'false'), output: output run %(bundle install), output: output From c17cd0ac274eac564bb5ee8735cee23dacdf8d34 Mon Sep 17 00:00:00 2001 From: jazzari Date: Fri, 18 Aug 2023 17:37:40 -0300 Subject: [PATCH 345/699] feat: add boolean method for automatic publications #13244 --- app/models/site.rb | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/app/models/site.rb b/app/models/site.rb index 24644b9c..d5b4c6cb 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -2,7 +2,9 @@ # Un sitio es un directorio dentro del directorio de sitios de cada # Usuaria -class Site < ApplicationRecord +class def create_njalla_records? + !site.name.end_with?('.') +end < ApplicationRecord include FriendlyId include Site::Forms include Site::FindAndReplace @@ -461,6 +463,11 @@ class Site < ApplicationRecord @docs = nil end + # @return [Boolean] + def automatic_publication? + @auto_publ = false + end + private # Asegurarse que el sitio tenga una llave privada From 8d736f8ac31420293857f6ed81fe17290476686a Mon Sep 17 00:00:00 2001 From: jazzari Date: Tue, 22 Aug 2023 12:41:02 -0300 Subject: [PATCH 346/699] Revert "feat: add boolean method for automatic publications #13244" This reverts commit c17cd0ac274eac564bb5ee8735cee23dacdf8d34. --- app/models/site.rb | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/app/models/site.rb b/app/models/site.rb index d5b4c6cb..24644b9c 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -2,9 +2,7 @@ # Un sitio es un directorio dentro del directorio de sitios de cada # Usuaria -class def create_njalla_records? - !site.name.end_with?('.') -end < ApplicationRecord +class Site < ApplicationRecord include FriendlyId include Site::Forms include Site::FindAndReplace @@ -463,11 +461,6 @@ end < ApplicationRecord @docs = nil end - # @return [Boolean] - def automatic_publication? - @auto_publ = false - end - private # Asegurarse que el sitio tenga una llave privada From 1ec4740b89c94558a22302bd6474638f39913a7b Mon Sep 17 00:00:00 2001 From: jazzari Date: Tue, 22 Aug 2023 13:58:10 -0300 Subject: [PATCH 347/699] feat: add boolean autopublish to sites model #13244 --- db/migrate/20230822165038_add_autopublish_to_sites.rb | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 db/migrate/20230822165038_add_autopublish_to_sites.rb diff --git a/db/migrate/20230822165038_add_autopublish_to_sites.rb b/db/migrate/20230822165038_add_autopublish_to_sites.rb new file mode 100644 index 00000000..dc68025e --- /dev/null +++ b/db/migrate/20230822165038_add_autopublish_to_sites.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +# Agrega posibilidad de autopublicación del sitio +class AddAutopublishToSites < ActiveRecord::Migration[6.1] + def change + add_column :sites, :autopublish, :boolean, default: false + end +end From fa7689a53123d9e4d93cdebd1306f9b0b4426dd9 Mon Sep 17 00:00:00 2001 From: jazzari Date: Tue, 22 Aug 2023 18:20:46 -0300 Subject: [PATCH 348/699] fix: fix auto_publish name in site #13244 --- db/migrate/20230822165038_add_autopublish_to_sites.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/db/migrate/20230822165038_add_autopublish_to_sites.rb b/db/migrate/20230822165038_add_autopublish_to_sites.rb index dc68025e..2f89e9d2 100644 --- a/db/migrate/20230822165038_add_autopublish_to_sites.rb +++ b/db/migrate/20230822165038_add_autopublish_to_sites.rb @@ -3,6 +3,6 @@ # Agrega posibilidad de autopublicación del sitio class AddAutopublishToSites < ActiveRecord::Migration[6.1] def change - add_column :sites, :autopublish, :boolean, default: false + add_column :sites, :auto_publish, :boolean, default: false end end From d96de873a719b5d6d1645f42f702b492ea4142bb Mon Sep 17 00:00:00 2001 From: f Date: Tue, 29 Aug 2023 17:43:19 -0300 Subject: [PATCH 349/699] feat: almacenar la llave privada --- app/models/site.rb | 1 + app/models/site/social_distributed_press.rb | 12 ++++++++++++ ...204127_add_private_key_pem_ciphertext_to_sites.rb | 9 +++++++++ 3 files changed, 22 insertions(+) create mode 100644 app/models/site/social_distributed_press.rb create mode 100644 db/migrate/20230829204127_add_private_key_pem_ciphertext_to_sites.rb diff --git a/app/models/site.rb b/app/models/site.rb index 24644b9c..9ec21561 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -10,6 +10,7 @@ class Site < ApplicationRecord include Site::DeployDependencies include Site::BuildStats include Site::LayoutOrdering + include Site::SocialDistributedPress include Tienda # Cifrar la llave privada que cifra y decifra campos ocultos. Sutty diff --git a/app/models/site/social_distributed_press.rb b/app/models/site/social_distributed_press.rb new file mode 100644 index 00000000..9d283103 --- /dev/null +++ b/app/models/site/social_distributed_press.rb @@ -0,0 +1,12 @@ +# frozen_string_literal: true + +class Site + # Agrega soporte para Social Distributed Press en los sitios + module SocialDistributedPress + extend ActiveSupport::Concern + + included do + encrypts :private_key_pem + end + end +end diff --git a/db/migrate/20230829204127_add_private_key_pem_ciphertext_to_sites.rb b/db/migrate/20230829204127_add_private_key_pem_ciphertext_to_sites.rb new file mode 100644 index 00000000..9f26f21a --- /dev/null +++ b/db/migrate/20230829204127_add_private_key_pem_ciphertext_to_sites.rb @@ -0,0 +1,9 @@ +# frozen_string_literal: true + +# Almacena las llaves privadas de cada sitio +class AddPrivateKeyPemCiphertextToSites < ActiveRecord::Migration[6.1] + # Agrega la columna cifrada + def change + add_column :sites, :private_key_pem_ciphertext, :text + end +end From 99f8947c43a1debad41c5e18750d39b160ffe182 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 29 Aug 2023 17:49:25 -0300 Subject: [PATCH 350/699] feat: generar la llave privada #14169 --- app/models/site/social_distributed_press.rb | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/app/models/site/social_distributed_press.rb b/app/models/site/social_distributed_press.rb index 9d283103..5d469f03 100644 --- a/app/models/site/social_distributed_press.rb +++ b/app/models/site/social_distributed_press.rb @@ -7,6 +7,17 @@ class Site included do encrypts :private_key_pem + + before_save :generate_private_key_pem!, unless: :private_key_pem? + + private + + # Genera la llave privada y la almacena + # + # @return [nil] + def generate_private_key_pem! + self.private_key_pem ||= DistributedPress::V1::Social::Client.new(public_key_url: nil, key_size: 2048).private_key.export + end end end end From f266de8bedecfbf775ae9516ae987f37adec2db7 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 29 Aug 2023 18:26:03 -0300 Subject: [PATCH 351/699] feat: correr un comando obteniendo la llave dentro de un archivo temporal --- app/models/deploy.rb | 15 +++++++++++++++ app/models/deploy_local.rb | 6 +++++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/app/models/deploy.rb b/app/models/deploy.rb index a92708c0..77e5b8d8 100644 --- a/app/models/deploy.rb +++ b/app/models/deploy.rb @@ -109,6 +109,21 @@ class Deploy < ApplicationRecord private + # Escribe el contenido en un archivo temporal y ejecuta el bloque + # provisto con el archivo como parámetro + # + # @param :content [String] + def with_tempfile(content, &block) + Tempfile.create(SecureRandom.hex) do |file| + file.write content.to_s + file.rewind + file.close + + # @yieldparam :file [File] + yield file + end + end + # @param [String] # @return [String] def readable_cmd(cmd) diff --git a/app/models/deploy_local.rb b/app/models/deploy_local.rb index 75ea8b1c..e66bb003 100644 --- a/app/models/deploy_local.rb +++ b/app/models/deploy_local.rb @@ -141,8 +141,12 @@ class DeployLocal < Deploy run %(bundle install --deployment --no-cache --path="#{gems_dir}" --clean --without test development), output: output end + # TODO: Esto significa que todos los sitios van a tener activity pub + # activado def jekyll_build(output: false) - run %(bundle exec jekyll build --trace --profile --destination "#{escaped_destination}"), output: output + with_tempfile(site.private_key_pem) do |file| + run %(bundle exec jekyll build --trace --profile --key #{file.path} --destination "#{escaped_destination}"), output: output + end end # no debería haber espacios ni caracteres especiales, pero por si From 53aa3886eafeb0778e8bbb8dd92a120aa0a16f72 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 30 Aug 2023 10:47:08 -0300 Subject: [PATCH 352/699] feat: habilitar/deshabilitar activity pub --- .../_deploy_social_distributed_press.haml | 21 +++++++++++++++++++ config/locales/en.yml | 12 +++++++++++ config/locales/es.yml | 12 +++++++++++ 3 files changed, 45 insertions(+) create mode 100644 app/views/deploy_mailer/_deploy_social_distributed_press.haml diff --git a/app/views/deploy_mailer/_deploy_social_distributed_press.haml b/app/views/deploy_mailer/_deploy_social_distributed_press.haml new file mode 100644 index 00000000..5c73b262 --- /dev/null +++ b/app/views/deploy_mailer/_deploy_social_distributed_press.haml @@ -0,0 +1,21 @@ +-# Publicar a la web distribuida + +.row + .col + = deploy.hidden_field :id + = deploy.hidden_field :type + .custom-control.custom-switch + -# + El checkbox invierte la lógica de destrucción porque queremos + crear el deploy si está activado y destruirlo si está + desactivado. + = deploy.check_box :_destroy, + { checked: deploy.object.persisted?, class: 'custom-control-input' }, + '0', '1' + = deploy.label :_destroy, class: 'custom-control-label' do + %h3= t('.title') + = sanitize_markdown t('.help'), + tags: %w[p strong em a] + + +%hr/ diff --git a/config/locales/en.yml b/config/locales/en.yml index 5f97a8b9..0dad2e68 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -123,6 +123,10 @@ en: title: Distributed Web success: Success! error: Error + deploy_social_distributed_press: + title: Fediverse + success: Success! + error: Error deploy_reindex: title: Reindex success: Success! @@ -307,6 +311,14 @@ en: indefinitely. [Learn more](https://sutty.nl/learn-more-about-publish-to-dweb-functionality/) + deploy_social_distributed_press: + title: 'Publish on the Fediverse' + help: | + By using the ActivityPub protocol, people on the Fediverse + ([Mastodon](https://joinmastodon.org/servers), + [Pixelfed](https://pixelfed.social/site/about), and + [others](https://fediverse.party/)) can follow your site, + receive news and interact with them. stats: index: title: Statistics diff --git a/config/locales/es.yml b/config/locales/es.yml index 9e0b8945..d899b99c 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -123,6 +123,10 @@ es: title: Web distribuida success: ¡Éxito! error: Hubo un error + deploy_social_distributed_press: + title: Fediverso + success: ¡Éxito! + error: Hubo un error deploy_reindex: title: Reindexación success: ¡Éxito! @@ -312,6 +316,14 @@ es: copias de tu contenido indefinidamente. [Saber más](https://sutty.nl/saber-mas-sobre-publicar-a-la-web-distribuida/) + deploy_social_distributed_press: + title: 'Publicar al Fediverso' + help: | + Utilizando el protocolo ActivityPub, otras personas en el + Fediverso ([Mastodon](https://joinmastodon.org/servers), + [Pixelfed](https://pixelfed.social/site/about) y + [otros](https://fediverse.party/)) pueden seguir a tu sitio, + recibir novedades e interactuar con ellas. stats: index: title: Estadísticas From 66d567733fd4fd13a7039997062836f048a9afe3 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 30 Aug 2023 10:47:27 -0300 Subject: [PATCH 353/699] =?UTF-8?q?fix:=20generar=20todos=20los=20deploys?= =?UTF-8?q?=20autom=C3=A1ticamente?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/site.rb | 4 ---- app/services/site_service.rb | 5 ++--- 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/app/models/site.rb b/app/models/site.rb index 9ec21561..961831d5 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -19,10 +19,6 @@ class Site < ApplicationRecord # protege de acceso al panel de Sutty! encrypts :private_key - # TODO: Hacer que los diferentes tipos de deploy se auto registren - # @see app/services/site_service.rb - DEPLOYS = %i[local private www zip hidden_service distributed_press].freeze - validates :name, uniqueness: true, hostname: { allow_root_label: true } diff --git a/app/services/site_service.rb b/app/services/site_service.rb index b1df3d10..5bd89888 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -54,9 +54,8 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do # Genera los Deploy necesarios para el sitio a menos que ya los tenga. def build_deploys - Site::DEPLOYS.map { |deploy| "Deploy#{deploy.to_s.camelcase}" } - .each do |deploy| - next if site.deploys.find_by type: deploy + Deploy.subclasses.each do |deploy| + next if site.deploys.find_by type: deploy.name site.deploys.build type: deploy end From 8ed88a31831c43557a71ec3a5d450a3bb9b307cf Mon Sep 17 00:00:00 2001 From: f Date: Wed, 30 Aug 2023 10:58:52 -0300 Subject: [PATCH 354/699] =?UTF-8?q?feat:=20los=20deploys=20pueden=20pasar?= =?UTF-8?q?=20opciones=20de=20compilaci=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/deploy.rb | 5 ++++ app/models/deploy_local.rb | 16 ++++++++++--- app/models/deploy_social_distributed_press.rb | 24 +++++++++++++++++++ 3 files changed, 42 insertions(+), 3 deletions(-) create mode 100644 app/models/deploy_social_distributed_press.rb diff --git a/app/models/deploy.rb b/app/models/deploy.rb index 77e5b8d8..abf5591f 100644 --- a/app/models/deploy.rb +++ b/app/models/deploy.rb @@ -100,6 +100,11 @@ class Deploy < ApplicationRecord @local_env ||= {} end + # Devuelve opciones para jekyll build + # + # @return [String,nil] + def flags_for_build(**args); end + # Trae todas las dependencias # # @return [Array] diff --git a/app/models/deploy_local.rb b/app/models/deploy_local.rb index e66bb003..9228581f 100644 --- a/app/models/deploy_local.rb +++ b/app/models/deploy_local.rb @@ -141,11 +141,11 @@ class DeployLocal < Deploy run %(bundle install --deployment --no-cache --path="#{gems_dir}" --clean --without test development), output: output end - # TODO: Esto significa que todos los sitios van a tener activity pub - # activado def jekyll_build(output: false) with_tempfile(site.private_key_pem) do |file| - run %(bundle exec jekyll build --trace --profile --key #{file.path} --destination "#{escaped_destination}"), output: output + flags = extra_flags(private_key: file) + + run %(bundle exec jekyll build --trace --profile #{flags} --destination "#{escaped_destination}"), output: output end end @@ -173,4 +173,14 @@ class DeployLocal < Deploy end end end + + # Genera opciones extra desde los otros deploys + # + # @param :args [Hash] + # @return [String] + def extra_flags(**args) + non_local_deploys.map do |deploy| + deploy.flags_for_build(**args) + end.compact.join(' ') + end end diff --git a/app/models/deploy_social_distributed_press.rb b/app/models/deploy_social_distributed_press.rb new file mode 100644 index 00000000..47464ea9 --- /dev/null +++ b/app/models/deploy_social_distributed_press.rb @@ -0,0 +1,24 @@ +# frozen_string_literal: true + +require 'distributed_press/v1/social/client' + +# Publicar novedades al Fediverso +class DeploySocialDistributedPress < Deploy + # Solo luego de publicar remotamente + DEPENDENCIES = %i[deploy_distributed_press deploy_rsync deploy_full_rsync] + + # Envía las notificaciones + def deploy(output: false) + with_tempfile(site.private_key_pem) do |file| + run %(bundle exec jekyll notify --trace --key #{file.path} --destination "#{escaped_destination}"), output: output + end + end + + # Genera la opción de llave privada para jekyll build + # + # @params :args [Hash] + # @return [String] + def flags_for_build(**args) + "--key #{Shellwords.escape args[:private_key].path}" + end +end From 3cf29ebd5208fc8341b282f7eb5964abd98a9768 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 30 Aug 2023 11:09:08 -0300 Subject: [PATCH 355/699] =?UTF-8?q?feat:=20m=C3=A9todos=20de=20deploy?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/deploy_social_distributed_press.rb | 33 ++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/app/models/deploy_social_distributed_press.rb b/app/models/deploy_social_distributed_press.rb index 47464ea9..db555ab7 100644 --- a/app/models/deploy_social_distributed_press.rb +++ b/app/models/deploy_social_distributed_press.rb @@ -10,10 +10,41 @@ class DeploySocialDistributedPress < Deploy # Envía las notificaciones def deploy(output: false) with_tempfile(site.private_key_pem) do |file| - run %(bundle exec jekyll notify --trace --key #{file.path} --destination "#{escaped_destination}"), output: output + key = Shellwords.escape file.path + dest = Shellwords.escape destination + + run %(bundle exec jekyll notify --trace --key #{key} --destination "#{dest}"), output: output end end + # Igual que DeployLocal + # + # @return [String] + def destination + File.join(Rails.root, '_deploy', site.hostname) + end + + # Solo uno + # + # @return [Integer] + def limit + 1 + end + + # Espacio ocupado, pero no podemos calcularlo + # + # @return [Integer] + def size + 0 + end + + # El perfil de actor + # + # @return [String,nil] + def url + site.data.dig('activity_pub', 'actor') + end + # Genera la opción de llave privada para jekyll build # # @params :args [Hash] From 0606a0784918382897f49b551436950ccb4aaa15 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 30 Aug 2023 11:13:49 -0300 Subject: [PATCH 356/699] fix: actualizar la gema --- Gemfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Gemfile b/Gemfile index dd880219..5ccee727 100644 --- a/Gemfile +++ b/Gemfile @@ -39,7 +39,7 @@ gem 'commonmarker' gem 'devise' gem 'devise-i18n' gem 'devise_invitable' -gem 'distributed-press-api-client', '~> 0.2.3' +gem 'distributed-press-api-client', '~> 0.3.0rc0' gem 'njalla-api-client', '~> 0.2.0' gem 'email_address', git: 'https://github.com/fauno/email_address', branch: 'i18n' gem 'exception_notification' From 300ce15d27dae90a3653adde5a511acc999b32c3 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 30 Aug 2023 15:33:48 -0300 Subject: [PATCH 357/699] =?UTF-8?q?fix:=20mover=20m=C3=A9todos=20a=20deplo?= =?UTF-8?q?y?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/deploy.rb | 36 ++++++++++++++++++++++++++++++++++++ app/models/deploy_local.rb | 36 ------------------------------------ 2 files changed, 36 insertions(+), 36 deletions(-) diff --git a/app/models/deploy.rb b/app/models/deploy.rb index abf5591f..c01a378f 100644 --- a/app/models/deploy.rb +++ b/app/models/deploy.rb @@ -55,6 +55,28 @@ class Deploy < ApplicationRecord @gems_dir ||= Rails.root.join('_storage', 'gems', site.name) end + # Un entorno que solo tiene lo que necesitamos + # + # @return [Hash] + def env + # XXX: This doesn't support Windows paths :B + paths = [File.dirname(`which bundle`), '/usr/local/bin', '/usr/bin', '/bin'] + + # Las variables de entorno extra no pueden superponerse al local. + extra_env.merge({ + 'HOME' => home_dir, + 'PATH' => paths.join(':'), + 'SPREE_API_KEY' => site.tienda_api_key, + 'SPREE_URL' => site.tienda_url, + 'AIRBRAKE_PROJECT_ID' => site.id.to_s, + 'AIRBRAKE_PROJECT_KEY' => site.airbrake_api_key, + 'JEKYLL_ENV' => Rails.env, + 'LANG' => ENV['LANG'], + 'YARN_CACHE_FOLDER' => yarn_cache_dir, + 'GEMS_SOURCE' => ENV['GEMS_SOURCE'] + }) + end + # Corre un comando, lo registra en la base de datos y devuelve el # estado. # @@ -142,4 +164,18 @@ class Deploy < ApplicationRecord def non_local_deploys @non_local_deploys ||= site.deploys.where.not(type: 'DeployLocal') end + + # Consigue todas las variables de entorno configuradas por otros + # deploys. + # + # @deprecated Solo tenía sentido para Distributed Press v0 + # @return [Hash] + def extra_env + @extra_env ||= + non_local_deploys.reduce({}) do |extra_env, deploy| + extra_env.tap do |e| + e.merge! deploy.local_env + end + end + end end diff --git a/app/models/deploy_local.rb b/app/models/deploy_local.rb index 9228581f..edf85bf5 100644 --- a/app/models/deploy_local.rb +++ b/app/models/deploy_local.rb @@ -68,28 +68,6 @@ class DeployLocal < Deploy FileUtils.mkdir_p destination end - # Un entorno que solo tiene lo que necesitamos - # - # @return [Hash] - def env - # XXX: This doesn't support Windows paths :B - paths = [File.dirname(`which bundle`), '/usr/local/bin', '/usr/bin', '/bin'] - - # Las variables de entorno extra no pueden superponerse al local. - extra_env.merge({ - 'HOME' => home_dir, - 'PATH' => paths.join(':'), - 'SPREE_API_KEY' => site.tienda_api_key, - 'SPREE_URL' => site.tienda_url, - 'AIRBRAKE_PROJECT_ID' => site.id.to_s, - 'AIRBRAKE_PROJECT_KEY' => site.airbrake_api_key, - 'JEKYLL_ENV' => Rails.env, - 'LANG' => ENV['LANG'], - 'YARN_CACHE_FOLDER' => yarn_cache_dir, - 'GEMS_SOURCE' => ENV['GEMS_SOURCE'] - }) - end - def yarn_cache_dir Rails.root.join('_yarn_cache').to_s end @@ -160,20 +138,6 @@ class DeployLocal < Deploy FileUtils.rm_rf destination end - # Consigue todas las variables de entorno configuradas por otros - # deploys. - # - # @deprecated Solo tenía sentido para Distributed Press v0 - # @return [Hash] - def extra_env - @extra_env ||= - non_local_deploys.reduce({}) do |extra_env, deploy| - extra_env.tap do |e| - e.merge! deploy.local_env - end - end - end - # Genera opciones extra desde los otros deploys # # @param :args [Hash] From 368a4e08482b5fbb803a1129a2930a38da65def6 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 30 Aug 2023 16:40:33 -0300 Subject: [PATCH 358/699] fix: recolectar variables de entorno --- app/models/deploy.rb | 17 ++--------------- app/models/deploy_local.rb | 16 +++++++++++++++- 2 files changed, 17 insertions(+), 16 deletions(-) diff --git a/app/models/deploy.rb b/app/models/deploy.rb index c01a378f..55ec46f6 100644 --- a/app/models/deploy.rb +++ b/app/models/deploy.rb @@ -66,14 +66,8 @@ class Deploy < ApplicationRecord extra_env.merge({ 'HOME' => home_dir, 'PATH' => paths.join(':'), - 'SPREE_API_KEY' => site.tienda_api_key, - 'SPREE_URL' => site.tienda_url, - 'AIRBRAKE_PROJECT_ID' => site.id.to_s, - 'AIRBRAKE_PROJECT_KEY' => site.airbrake_api_key, 'JEKYLL_ENV' => Rails.env, 'LANG' => ENV['LANG'], - 'YARN_CACHE_FOLDER' => yarn_cache_dir, - 'GEMS_SOURCE' => ENV['GEMS_SOURCE'] }) end @@ -161,21 +155,14 @@ class Deploy < ApplicationRecord @deploy_local ||= site.deploys.find_by(type: 'DeployLocal') end - def non_local_deploys - @non_local_deploys ||= site.deploys.where.not(type: 'DeployLocal') - end - # Consigue todas las variables de entorno configuradas por otros # deploys. # - # @deprecated Solo tenía sentido para Distributed Press v0 # @return [Hash] def extra_env @extra_env ||= - non_local_deploys.reduce({}) do |extra_env, deploy| - extra_env.tap do |e| - e.merge! deploy.local_env - end + site.deployment_list.reduce({}) do |extra, deploy| + extra.merge deploy.local_env end end end diff --git a/app/models/deploy_local.rb b/app/models/deploy_local.rb index edf85bf5..0bb3958f 100644 --- a/app/models/deploy_local.rb +++ b/app/models/deploy_local.rb @@ -62,6 +62,20 @@ class DeployLocal < Deploy FileUtils.rm_rf(File.join(site.path, '.jekyll-cache')) end + # Opciones necesarias para la compilación del sitio + # + # @return [Hash] + def local_env + @local_env ||= { + 'SPREE_API_KEY' => site.tienda_api_key, + 'SPREE_URL' => site.tienda_url, + 'AIRBRAKE_PROJECT_ID' => site.id.to_s, + 'AIRBRAKE_PROJECT_KEY' => site.airbrake_api_key, + 'YARN_CACHE_FOLDER' => yarn_cache_dir, + 'GEMS_SOURCE' => ENV['GEMS_SOURCE'] + } + end + private def mkdir @@ -143,7 +157,7 @@ class DeployLocal < Deploy # @param :args [Hash] # @return [String] def extra_flags(**args) - non_local_deploys.map do |deploy| + site.deployment_list.map do |deploy| deploy.flags_for_build(**args) end.compact.join(' ') end From ed87eb94e16b1c9453f17091cf68270d39704cf1 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 30 Aug 2023 16:41:01 -0300 Subject: [PATCH 359/699] fixup! fix: actualizar la gema --- Gemfile.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index f71053d7..6c3dae96 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -153,7 +153,7 @@ GEM devise_invitable (2.0.8) actionmailer (>= 5.0) devise (>= 4.6) - distributed-press-api-client (0.2.4) + distributed-press-api-client (0.3.0rc0) addressable (~> 2.3, >= 2.3.0) climate_control dry-schema @@ -595,7 +595,7 @@ DEPENDENCIES devise devise-i18n devise_invitable - distributed-press-api-client (~> 0.2.3) + distributed-press-api-client (~> 0.3.0rc0) dotenv-rails down ed25519 From 96b2f8220b2cee100018580c780ba78cf5fe59ce Mon Sep 17 00:00:00 2001 From: f Date: Wed, 30 Aug 2023 17:17:04 -0300 Subject: [PATCH 360/699] fix: poder asignar valor por defecto a los campos boolean --- app/models/metadata_boolean.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/models/metadata_boolean.rb b/app/models/metadata_boolean.rb index 90c002a7..9932c6fd 100644 --- a/app/models/metadata_boolean.rb +++ b/app/models/metadata_boolean.rb @@ -4,8 +4,12 @@ # # Esto es increíblemente difícil de lograr que salga bien! class MetadataBoolean < MetadataTemplate + # El valor por defecto es una versión booleana de lo que diga (o no + # diga) el esquema + # + # @return [Boolean] def default_value - false + !!super end # Los checkboxes son especiales porque la especificación de HTML From f23c58593349ae7a65e3a28ade51eef1aa034d90 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 31 Aug 2023 09:43:12 -0300 Subject: [PATCH 361/699] fixup! feat: habilitar/deshabilitar activity pub --- .../_deploy_social_distributed_press.haml | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename app/views/{deploy_mailer => deploys}/_deploy_social_distributed_press.haml (100%) diff --git a/app/views/deploy_mailer/_deploy_social_distributed_press.haml b/app/views/deploys/_deploy_social_distributed_press.haml similarity index 100% rename from app/views/deploy_mailer/_deploy_social_distributed_press.haml rename to app/views/deploys/_deploy_social_distributed_press.haml From 2c979bd690a98d2516eca8dc87d225ab3b25b501 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 12 Sep 2023 14:49:17 -0300 Subject: [PATCH 362/699] fix: no compartir la misma instancia --- app/models/post.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/post.rb b/app/models/post.rb index f31c33b6..36a0b02e 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -267,7 +267,7 @@ class Post # Y que no se procese liquid yaml['liquid'] = false yaml['usuaries'] = usuaries.map(&:id).uniq - yaml['created_at'] ||= modified_at + yaml['created_at'] ||= modified_at.dup yaml['last_modified_at'] = modified_at "#{yaml.to_yaml}---\n\n#{body}" From e001d5762f5220147ab56e256f2f312bbef2dd74 Mon Sep 17 00:00:00 2001 From: Sutty Date: Thu, 21 Sep 2023 16:06:03 +0000 Subject: [PATCH 363/699] fix: merge error --- app/models/site.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/site.rb b/app/models/site.rb index 504e4c9d..c9d8d47a 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -477,7 +477,7 @@ class Site < ApplicationRecord def clone_skel! return if jekyll? - Rugged::Repository.clone_at(ENV['SKEL_SUTTY'], path, checkout_branch: design.gem + Rugged::Repository.clone_at(ENV['SKEL_SUTTY'], path, checkout_branch: design.gem) # Necesita un bloque repository.rugged.remotes.rename('origin', 'upstream') {} From 331dc7f60760c16246e1885aefdb9dc4b950c965 Mon Sep 17 00:00:00 2001 From: jazzari Date: Mon, 2 Oct 2023 15:40:44 -0300 Subject: [PATCH 364/699] feat: creado modulo BaseService para opcion de auto_publicacion #13244 --- app/services/base_service.rb | 5 +++++ app/services/post_service.rb | 2 ++ app/services/site_service.rb | 2 ++ 3 files changed, 9 insertions(+) create mode 100644 app/services/base_service.rb diff --git a/app/services/base_service.rb b/app/services/base_service.rb new file mode 100644 index 00000000..2b46c415 --- /dev/null +++ b/app/services/base_service.rb @@ -0,0 +1,5 @@ +module BaseService + def auto_publish! + DeployJob.perform_later site if site.auto_publish? + end +end diff --git a/app/services/post_service.rb b/app/services/post_service.rb index dda7992d..b1863fbe 100644 --- a/app/services/post_service.rb +++ b/app/services/post_service.rb @@ -3,6 +3,8 @@ # Este servicio se encarga de crear artículos y guardarlos en git, # asignándoselos a une usuarie PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do + include BaseService + # Crea un artículo nuevo # # @return Post diff --git a/app/services/site_service.rb b/app/services/site_service.rb index b1df3d10..b446e527 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -3,6 +3,8 @@ # Se encargar de guardar cambios en sitios # TODO: Implementar rollback en la configuración SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do + include BaseService + def deploy site.enqueue! DeployJob.perform_later site.id From e175863081b8c9be8b869340152f931c419298c4 Mon Sep 17 00:00:00 2001 From: jazzari Date: Mon, 2 Oct 2023 15:51:35 -0300 Subject: [PATCH 365/699] fix: agregado parentesis en parametro DeployJob #13244 --- app/services/base_service.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/services/base_service.rb b/app/services/base_service.rb index 2b46c415..a7aed5f4 100644 --- a/app/services/base_service.rb +++ b/app/services/base_service.rb @@ -1,5 +1,5 @@ module BaseService def auto_publish! - DeployJob.perform_later site if site.auto_publish? + DeployJob.perform_later(site.id) if site.auto_publish? end end From ddff6c71d7843cf2eaa1e12003930eb65d27ef20 Mon Sep 17 00:00:00 2001 From: jazzari Date: Thu, 5 Oct 2023 17:13:47 -0300 Subject: [PATCH 366/699] =?UTF-8?q?fix:=20corregida=20identaci=C3=B3n=20#1?= =?UTF-8?q?3077?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/site.rb | 9 +-------- app/services/site_service.rb | 9 +++++++++ 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/app/models/site.rb b/app/models/site.rb index a8c5e376..89dd5ca8 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -54,8 +54,7 @@ class Site < ApplicationRecord before_create :clone_skel! # Elimina el directorio al destruir un sitio before_destroy :remove_directories! - # Cambiar el nombre del directorio - before_update :update_name! + before_save :add_private_key_if_missing! # Guardar la configuración si hubo cambios after_save :sync_attributes_with_config! @@ -485,12 +484,6 @@ class Site < ApplicationRecord FileUtils.rm_rf path end - def update_name! - return unless name_changed? - - FileUtils.mv path_was, path - reload_jekyll! - end # Sincroniza algunos atributos del sitio con su configuración y # guarda los cambios diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 7022244c..3a803972 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -87,6 +87,15 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do result.present? end + def rename(name) + Site.transaction do + site.name = name + FileUtils.mv site.path_was, site.path(name: name) + ActiveStorage::Blob.where(service_name: site.name_was).update_all(service_name: site.name) + site.save + end + end + private # Guarda los cambios de la configuración en el repositorio git From 5fbb276f719a80839abc9afcba2c14c9a2a63905 Mon Sep 17 00:00:00 2001 From: jazzari Date: Thu, 5 Oct 2023 17:19:41 -0300 Subject: [PATCH 367/699] fix: arreglada indentacion #13077 --- app/services/site_service.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 3a803972..5522245a 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -95,7 +95,7 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do site.save end end - + private # Guarda los cambios de la configuración en el repositorio git From 1675e32fe84556afdc45bea9837a1773623c1f4b Mon Sep 17 00:00:00 2001 From: jazzari Date: Mon, 9 Oct 2023 15:50:25 -0300 Subject: [PATCH 368/699] =?UTF-8?q?fix:=20agregado=20bloque=20de=20excepci?= =?UTF-8?q?=C3=B3n=20en=20metodo=20rename=20#13077?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/services/site_service.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 5522245a..90a4a339 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -90,9 +90,13 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do def rename(name) Site.transaction do site.name = name - FileUtils.mv site.path_was, site.path(name: name) + raise ActiveRecord::Rollback if File.exists?(name) + FileUtils.mv site.path_was, site.path unless File.exists?(name) ActiveStorage::Blob.where(service_name: site.name_was).update_all(service_name: site.name) site.save + rescue StandardError + FileUtils.mv site.path, site.path_was if File.exists?(name) + raise end end From 919b015daf355a572d0824bc7132dde1ed1e1536 Mon Sep 17 00:00:00 2001 From: jazzari Date: Thu, 12 Oct 2023 18:23:10 -0300 Subject: [PATCH 369/699] fix: modificado base_service a autopublishconcern #13244 --- app/services/base_service.rb | 5 ----- app/services/concerns/autopublish.rb | 10 ++++++++++ app/services/post_service.rb | 8 +++++--- 3 files changed, 15 insertions(+), 8 deletions(-) delete mode 100644 app/services/base_service.rb create mode 100644 app/services/concerns/autopublish.rb diff --git a/app/services/base_service.rb b/app/services/base_service.rb deleted file mode 100644 index a7aed5f4..00000000 --- a/app/services/base_service.rb +++ /dev/null @@ -1,5 +0,0 @@ -module BaseService - def auto_publish! - DeployJob.perform_later(site.id) if site.auto_publish? - end -end diff --git a/app/services/concerns/autopublish.rb b/app/services/concerns/autopublish.rb new file mode 100644 index 00000000..6b5a8cd3 --- /dev/null +++ b/app/services/concerns/autopublish.rb @@ -0,0 +1,10 @@ +# frozen_string_literal: true + + +module AutoPublishConcern + extend ActiveSupport::Concern + + def auto_publish! + DeployJob.perform_later(site.id) if site.auto_publish? + end +end diff --git a/app/services/post_service.rb b/app/services/post_service.rb index b1863fbe..5f7167ea 100644 --- a/app/services/post_service.rb +++ b/app/services/post_service.rb @@ -3,8 +3,7 @@ # Este servicio se encarga de crear artículos y guardarlos en git, # asignándoselos a une usuarie PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do - include BaseService - + # Crea un artículo nuevo # # @return Post @@ -25,12 +24,13 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do # Devolver el post aunque no se haya salvado para poder rescatar los # errores post + include AutoPublishConcern end # Crear un post anónimo, con opciones más limitadas. No usamos post. def create_anonymous # XXX: Confiamos en el parámetro de idioma porque estamos - # verificándolos en Site#posts + # verificándolos extend ActiveSupport::Concernn Site#posts self.post = site.posts(lang: locale) .build(layout: layout) # Los artículos anónimos siempre son borradores @@ -38,6 +38,7 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do commit(action: :created, add: [post.path.absolute]) if post.update(anon_post_params) post + include AutoPublishConcern end def update @@ -59,6 +60,7 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do # Devolver el post aunque no se haya salvado para poder rescatar los # errores post + include AutoPublishConcern end def destroy From 7e0ab59ffa5d2b53239f18cee6324c14bd57918e Mon Sep 17 00:00:00 2001 From: jazzari Date: Tue, 17 Oct 2023 14:36:34 -0300 Subject: [PATCH 370/699] fix: arreglado rescue que devuelve el repositorio a su estado original #13077 --- app/services/site_service.rb | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 90a4a339..532d48ac 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -88,14 +88,16 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do end def rename(name) + moved = false Site.transaction do + raise ActiveRecord::Rollback if site.path site.name = name - raise ActiveRecord::Rollback if File.exists?(name) - FileUtils.mv site.path_was, site.path unless File.exists?(name) + FileUtils.mv (site.path_was, site.path) unless File.exists?(name) ActiveStorage::Blob.where(service_name: site.name_was).update_all(service_name: site.name) site.save + moved = true rescue StandardError - FileUtils.mv site.path, site.path_was if File.exists?(name) + FileUtils.mv (site.path, site.path_was) if moved raise end end From 0ab0b143f39ebe324a7369b923aea02531455a0c Mon Sep 17 00:00:00 2001 From: jazzari Date: Tue, 17 Oct 2023 15:30:37 -0300 Subject: [PATCH 371/699] fix: corregida llamada a auto_publish! #13244 --- app/services/concerns/autopublish.rb | 6 ++++-- app/services/post_service.rb | 7 ++++--- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/app/services/concerns/autopublish.rb b/app/services/concerns/autopublish.rb index 6b5a8cd3..81f81aad 100644 --- a/app/services/concerns/autopublish.rb +++ b/app/services/concerns/autopublish.rb @@ -4,7 +4,9 @@ module AutoPublishConcern extend ActiveSupport::Concern - def auto_publish! - DeployJob.perform_later(site.id) if site.auto_publish? + included do + def auto_publish! + DeployJob.perform_later(site.id) if site.auto_publish? + end end end diff --git a/app/services/post_service.rb b/app/services/post_service.rb index 5f7167ea..e9305c34 100644 --- a/app/services/post_service.rb +++ b/app/services/post_service.rb @@ -3,6 +3,7 @@ # Este servicio se encarga de crear artículos y guardarlos en git, # asignándoselos a une usuarie PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do + include AutoPublishConcern # Crea un artículo nuevo # @@ -24,7 +25,7 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do # Devolver el post aunque no se haya salvado para poder rescatar los # errores post - include AutoPublishConcern + auto_publish! end # Crear un post anónimo, con opciones más limitadas. No usamos post. @@ -38,7 +39,7 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do commit(action: :created, add: [post.path.absolute]) if post.update(anon_post_params) post - include AutoPublishConcern + auto_publish! end def update @@ -60,7 +61,7 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do # Devolver el post aunque no se haya salvado para poder rescatar los # errores post - include AutoPublishConcern + auto_publish! end def destroy From 097db453e419125f59dc30b53a1749a56a2921c8 Mon Sep 17 00:00:00 2001 From: Sutty Date: Thu, 19 Oct 2023 15:08:10 +0000 Subject: [PATCH 372/699] fix: schema dump --- db/structure.sql | 34 +++++++++++++++++++++++++++++++--- 1 file changed, 31 insertions(+), 3 deletions(-) diff --git a/db/structure.sql b/db/structure.sql index e0d8f710..20c552a1 100644 --- a/db/structure.sql +++ b/db/structure.sql @@ -16,6 +16,20 @@ SET row_security = off; -- *not* creating schema, since initdb creates it +-- +-- Name: dblink; Type: EXTENSION; Schema: -; Owner: - +-- + +CREATE EXTENSION IF NOT EXISTS dblink WITH SCHEMA public; + + +-- +-- Name: EXTENSION dblink; Type: COMMENT; Schema: -; Owner: - +-- + +COMMENT ON EXTENSION dblink IS 'connect to other PostgreSQL databases from within a database'; + + -- -- Name: pg_trgm; Type: EXTENSION; Schema: -; Owner: - -- @@ -1149,7 +1163,8 @@ CREATE TABLE public.roles ( site_id integer, usuarie_id integer, rol character varying, - temporal boolean + temporal boolean, + token character varying ); @@ -1236,7 +1251,9 @@ CREATE TABLE public.sites ( tienda_url character varying DEFAULT ''::character varying, api_key_ciphertext character varying, slugify_mode character varying DEFAULT 'default'::character varying, - pagination boolean DEFAULT false + pagination boolean DEFAULT false, + private_key_pem_ciphertext text, + last_indexed_commit character varying ); @@ -2234,6 +2251,13 @@ ALTER TABLE ONLY public.active_storage_attachments ADD CONSTRAINT fk_rails_c3b3935057 FOREIGN KEY (blob_id) REFERENCES public.active_storage_blobs(id); +-- +-- Name: publisher; Type: PUBLICATION; Schema: -; Owner: - +-- + +CREATE PUBLICATION publisher FOR ALL TABLES WITH (publish = 'insert, update, delete, truncate'); + + -- -- PostgreSQL database dump complete -- @@ -2318,6 +2342,10 @@ INSERT INTO "schema_migrations" (version) VALUES ('20230421182627'), ('20230424174544'), ('20230519143500'), -('20230524190240'); +('20230524190240'), +('20230731195050'), +('20230829204127'), +('20230921155401'), +('20230927153926'); From 9ec0dc87a9426a3a101416e5044b40d8e274f08e Mon Sep 17 00:00:00 2001 From: f Date: Tue, 31 Oct 2023 13:53:45 -0300 Subject: [PATCH 373/699] fix: hacer un merge cuando hay cambios #14533 --- app/jobs/git_pull_job.rb | 6 +++++- app/models/site/repository.rb | 9 +++++---- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/app/jobs/git_pull_job.rb b/app/jobs/git_pull_job.rb index dc4a285c..c7063650 100644 --- a/app/jobs/git_pull_job.rb +++ b/app/jobs/git_pull_job.rb @@ -8,6 +8,10 @@ class GitPullJob < ApplicationJob # @param :message [String] # @return [nil] def perform(site, usuarie, message) - site.repository.merge(usuarie, message) if site.repository.fetch&.positive? + site.repository.fetch + + return if site.repository.up_to_date? + + site.repository.merge(usuarie, message) end end \ No newline at end of file diff --git a/app/models/site/repository.rb b/app/models/site/repository.rb index acbf6553..17ee0792 100644 --- a/app/models/site/repository.rb +++ b/app/models/site/repository.rb @@ -111,10 +111,11 @@ class Site walker.each.to_a end - # Hay commits sin aplicar? - def needs_pull? - fetch - !commits.empty? + # Detecta si hay que hacer un pull o no + # + # @return [Boolean] + def up_to_date? + rugged.merge_analysis(remote_head_commit).include?(:up_to_date) end # Guarda los cambios en git From f00d6c6d45425dd2c98c7df5ce1cc2444bd8b20a Mon Sep 17 00:00:00 2001 From: f Date: Tue, 31 Oct 2023 13:54:19 -0300 Subject: [PATCH 374/699] feat: hacer fast forward si no hay cambios locales #14533 --- app/jobs/git_pull_job.rb | 27 +++++++++++++++++---------- app/models/site/repository.rb | 32 ++++++++++++++++++++++++++++---- 2 files changed, 45 insertions(+), 14 deletions(-) diff --git a/app/jobs/git_pull_job.rb b/app/jobs/git_pull_job.rb index c7063650..77f75ba9 100644 --- a/app/jobs/git_pull_job.rb +++ b/app/jobs/git_pull_job.rb @@ -1,17 +1,24 @@ # frozen_string_literal: true -# Permite traer los cambios desde webhooks - +# Permite traer los cambios desde el repositorio remoto class GitPullJob < ApplicationJob - # @param :site [Site] - # @param :usuarie [Usuarie] - # @param :message [String] - # @return [nil] - def perform(site, usuarie, message) - site.repository.fetch + # @param :site [Site] + # @param :usuarie [Usuarie] + # @param :message [String] + # @return [nil] + def perform(site, usuarie, message) + site.repository.fetch - return if site.repository.up_to_date? + return if site.repository.up_to_date? + if site.repository.fast_forward? + site.repository.fast_forward! + else site.repository.merge(usuarie, message) end -end \ No newline at end of file + + git_lfs_checkout + + nil + end +end diff --git a/app/models/site/repository.rb b/app/models/site/repository.rb index 17ee0792..e77aded9 100644 --- a/app/models/site/repository.rb +++ b/app/models/site/repository.rb @@ -75,13 +75,18 @@ class Site # Forzamos el checkout para mover el HEAD al último commit y # escribir los cambios rugged.checkout 'HEAD', strategy: :force - - git_sh("git", "lfs", "fetch", "origin", default_branch) - # reemplaza los pointers por los archivos correspondientes - git_sh("git", "lfs", "checkout") + commit end + # Trae todos los archivos desde LFS + # + # @return [Boolean] + def git_lfs_checkout + git_sh('git', 'lfs', 'fetch', 'origin', default_branch) + git_sh('git', 'lfs', 'checkout') + end + # El último commit # # @return [Rugged::Commit] @@ -118,6 +123,25 @@ class Site rugged.merge_analysis(remote_head_commit).include?(:up_to_date) end + # Detecta si es posible adelantar la historia local a la remota o + # necesitamos un merge + # + # @return [Boolean] + def fast_forward? + rugged.merge_analysis(remote_head_commit).include?(:fastforward) + end + + # Mueve la historia local a la remota + # + # @see {https://stackoverflow.com/a/27077322} + # @return [nil] + def fast_forward! + rugged.checkout_tree(remote_head_commit) + rugged.references.update(rugged.head.resolve, remote_head_commit.oid) + + nil + end + # Guarda los cambios en git # # @param :add [Array] Archivos a agregar From 6ef83624a174ebf0bdc3548b7116932b34da9e69 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 31 Oct 2023 13:59:11 -0300 Subject: [PATCH 375/699] =?UTF-8?q?fix:=20era=20un=20m=C3=A9todo=20del=20s?= =?UTF-8?q?itio?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/jobs/git_pull_job.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/jobs/git_pull_job.rb b/app/jobs/git_pull_job.rb index 77f75ba9..49784f50 100644 --- a/app/jobs/git_pull_job.rb +++ b/app/jobs/git_pull_job.rb @@ -17,7 +17,7 @@ class GitPullJob < ApplicationJob site.repository.merge(usuarie, message) end - git_lfs_checkout + site.git_lfs_checkout nil end From 3193d72486bb37b95250c7180bf5ebfacd2f4ddf Mon Sep 17 00:00:00 2001 From: f Date: Tue, 31 Oct 2023 13:59:59 -0300 Subject: [PATCH 376/699] fix: era un metodo del repositorio! --- app/jobs/git_pull_job.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/jobs/git_pull_job.rb b/app/jobs/git_pull_job.rb index 49784f50..271ad91a 100644 --- a/app/jobs/git_pull_job.rb +++ b/app/jobs/git_pull_job.rb @@ -17,7 +17,7 @@ class GitPullJob < ApplicationJob site.repository.merge(usuarie, message) end - site.git_lfs_checkout + site.repository.git_lfs_checkout nil end From 63884a89150e55df0af122654ff27f9dfbeeaea3 Mon Sep 17 00:00:00 2001 From: jazzari Date: Tue, 14 Nov 2023 16:05:19 +0100 Subject: [PATCH 377/699] merge WIP --- app/services/site_service.rb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 532d48ac..d7112321 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -88,6 +88,7 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do end def rename(name) + moved = false moved = false Site.transaction do raise ActiveRecord::Rollback if site.path @@ -96,6 +97,7 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do ActiveStorage::Blob.where(service_name: site.name_was).update_all(service_name: site.name) site.save moved = true + moved = true rescue StandardError FileUtils.mv (site.path, site.path_was) if moved raise From 0071ab7328fb6c329315f29cb4787bded6b2aa75 Mon Sep 17 00:00:00 2001 From: jazzari Date: Tue, 14 Nov 2023 16:12:15 +0100 Subject: [PATCH 378/699] fix: modificado metodo rename en site_service.rb #13077 --- app/services/site_service.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index d7112321..994b16d8 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -89,7 +89,7 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do def rename(name) moved = false - moved = false + Site.transaction do raise ActiveRecord::Rollback if site.path site.name = name @@ -97,7 +97,7 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do ActiveStorage::Blob.where(service_name: site.name_was).update_all(service_name: site.name) site.save moved = true - moved = true + rescue StandardError FileUtils.mv (site.path, site.path_was) if moved raise From 76e2fd8f6072babcb05facc9d5741e3283b9c6c7 Mon Sep 17 00:00:00 2001 From: jazzari Date: Tue, 21 Nov 2023 13:59:02 +0100 Subject: [PATCH 379/699] fix: corregida condicion en metodo Rename en site_service.rb #13077 --- app/services/site_service.rb | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 994b16d8..8cb012a0 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -89,15 +89,13 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do def rename(name) moved = false + site.name = name Site.transaction do - raise ActiveRecord::Rollback if site.path - site.name = name - FileUtils.mv (site.path_was, site.path) unless File.exists?(name) + raise ActiveRecord::Rollback if (site.path == site.path_was) ActiveStorage::Blob.where(service_name: site.name_was).update_all(service_name: site.name) site.save moved = true - rescue StandardError FileUtils.mv (site.path, site.path_was) if moved raise From b658ecc3748910eafc137c09c74c20ac6f83e84d Mon Sep 17 00:00:00 2001 From: jazzari Date: Tue, 21 Nov 2023 16:45:20 +0100 Subject: [PATCH 380/699] fix: corregido metodo rename #13077 --- app/services/site_service.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 8cb012a0..f7cfd668 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -88,11 +88,13 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do end def rename(name) + return if name == site.name moved = false site.name = name Site.transaction do - raise ActiveRecord::Rollback if (site.path == site.path_was) + raise ActiveRecord::Rollback if site.path + FileUtils.mv (site.path_was, site.path) ActiveStorage::Blob.where(service_name: site.name_was).update_all(service_name: site.name) site.save moved = true From 49106874b0f06a55b14487e6d7be9b34f346cc16 Mon Sep 17 00:00:00 2001 From: jazzari Date: Wed, 22 Nov 2023 14:17:57 +0100 Subject: [PATCH 381/699] fix: corregido metodo Rename en site_service.rb #13077 --- app/services/site_service.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index f7cfd668..51146b13 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -93,7 +93,7 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do site.name = name Site.transaction do - raise ActiveRecord::Rollback if site.path + raise ActiveRecord::Rollback if File.exists?(site.path) FileUtils.mv (site.path_was, site.path) ActiveStorage::Blob.where(service_name: site.name_was).update_all(service_name: site.name) site.save From a1daa759ecaaa0f1dd27b1ed4caa35aff972d0eb Mon Sep 17 00:00:00 2001 From: jazzari Date: Wed, 22 Nov 2023 17:12:15 +0100 Subject: [PATCH 382/699] fix: movido boolean en metodo Rename #13077 --- app/services/site_service.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 51146b13..7e1bef6b 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -95,9 +95,9 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do Site.transaction do raise ActiveRecord::Rollback if File.exists?(site.path) FileUtils.mv (site.path_was, site.path) + moved = true ActiveStorage::Blob.where(service_name: site.name_was).update_all(service_name: site.name) site.save - moved = true rescue StandardError FileUtils.mv (site.path, site.path_was) if moved raise From c5da02cf3edb20567674bcf697fcd524bc19f182 Mon Sep 17 00:00:00 2001 From: fauno Date: Thu, 30 Nov 2023 16:39:25 +0000 Subject: [PATCH 383/699] ci: assets [skip ci] (cherry picked from commit 2a6a25a9cd4ee0e230c41f46f5114a278e232a45) --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/css/application-bb1478c7.css | 3 --- public/packs/css/application-bb1478c7.css.br | 3 --- public/packs/css/application-bb1478c7.css.gz | 3 --- public/packs/js/application-17c8ec1abff8d9ee68fc.js | 3 --- .../packs/js/application-17c8ec1abff8d9ee68fc.js.LICENSE.txt | 3 --- public/packs/js/application-17c8ec1abff8d9ee68fc.js.br | 3 --- public/packs/js/application-17c8ec1abff8d9ee68fc.js.gz | 3 --- public/packs/js/application-17c8ec1abff8d9ee68fc.js.map | 3 --- public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.br | 3 --- public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.gz | 3 --- public/packs/manifest.json | 3 --- public/packs/manifest.json.br | 3 --- public/packs/manifest.json.gz | 3 --- public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff | 3 --- public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 | 3 --- public/packs/media/fonts/forkawesome-webfont-86541105.svg | 3 --- public/packs/media/fonts/forkawesome-webfont-86541105.svg.br | 3 --- public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz | 3 --- public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot | 3 --- public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br | 3 --- public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz | 3 --- public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf | 3 --- public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br | 3 --- public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz | 3 --- public/packs/media/images/layers-2x-8f2c4d11.png | 3 --- public/packs/media/images/layers-416d9136.png | 3 --- public/packs/media/images/marker-icon-2b3e1faf.png | 3 --- public/packs/media/images/marker-icon-2x-680f69f3.png | 3 --- public/packs/media/images/marker-shadow-a0c6cc14.png | 3 --- 30 files changed, 1 insertion(+), 88 deletions(-) delete mode 100644 public/packs/css/application-bb1478c7.css delete mode 100644 public/packs/css/application-bb1478c7.css.br delete mode 100644 public/packs/css/application-bb1478c7.css.gz delete mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js delete mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js.LICENSE.txt delete mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js.br delete mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js.gz delete mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js.map delete mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.br delete mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.gz delete mode 100644 public/packs/manifest.json delete mode 100644 public/packs/manifest.json.br delete mode 100644 public/packs/manifest.json.gz delete mode 100644 public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff delete mode 100644 public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 delete mode 100644 public/packs/media/fonts/forkawesome-webfont-86541105.svg delete mode 100644 public/packs/media/fonts/forkawesome-webfont-86541105.svg.br delete mode 100644 public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz delete mode 100644 public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot delete mode 100644 public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br delete mode 100644 public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz delete mode 100644 public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf delete mode 100644 public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br delete mode 100644 public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz delete mode 100644 public/packs/media/images/layers-2x-8f2c4d11.png delete mode 100644 public/packs/media/images/layers-416d9136.png delete mode 100644 public/packs/media/images/marker-icon-2b3e1faf.png delete mode 100644 public/packs/media/images/marker-icon-2x-680f69f3.png delete mode 100644 public/packs/media/images/marker-shadow-a0c6cc14.png diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 6d1b664d..9da8ba55 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e0bd21756fd55d772a0d310db827bd41b2d1fbdd6d6924ad212803ed33971725 +oid sha256:0be27a81c40641903cee5772ab6ff0064db2ce35438c58b264fa1c0accb9073c size 14525 diff --git a/public/packs/css/application-bb1478c7.css b/public/packs/css/application-bb1478c7.css deleted file mode 100644 index 00ee9254..00000000 --- a/public/packs/css/application-bb1478c7.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8fd3bb412b63723fe63fa107ffac78bd6396487ccd69e4ea6d098848739a075d -size 49279 diff --git a/public/packs/css/application-bb1478c7.css.br b/public/packs/css/application-bb1478c7.css.br deleted file mode 100644 index 0b1db25e..00000000 --- a/public/packs/css/application-bb1478c7.css.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:243e15e5a405fd51203d0fe34119c018691da4bfdd00be0cf26aa3e2abb5634d -size 10005 diff --git a/public/packs/css/application-bb1478c7.css.gz b/public/packs/css/application-bb1478c7.css.gz deleted file mode 100644 index 7cadc76e..00000000 --- a/public/packs/css/application-bb1478c7.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a3d0b479d7ebdc77c8ef3549085248c2b668a61fea1a1e3700bc918fe505c4ff -size 12351 diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js b/public/packs/js/application-17c8ec1abff8d9ee68fc.js deleted file mode 100644 index 37480493..00000000 --- a/public/packs/js/application-17c8ec1abff8d9ee68fc.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:11cb44a373f826146b847520f0dd20a7549d4fac1c5a90d1deac260b421e5c68 -size 1492424 diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.LICENSE.txt b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.LICENSE.txt deleted file mode 100644 index 979d1ab9..00000000 --- a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.LICENSE.txt +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c3b9ae1697c4b8a404afe77afe035de28b7f4880e9f52caac82620bb8d8ed495 -size 854 diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.br b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.br deleted file mode 100644 index b357cdd6..00000000 --- a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:48ccffc31d33c10d77f4ae691a26b64c1398fe4ec86071ba01430a4bfbdc3c00 -size 326998 diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.gz b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.gz deleted file mode 100644 index f3d19ecd..00000000 --- a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f4634538d756c8168c99dc53f33a593a99efd7f4e183ca2d4203883136e72ba2 -size 433218 diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map deleted file mode 100644 index 922e5404..00000000 --- a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1a46d673b967335af347b2d5418e29f0a88a67d851339ed32c6468ab0db29025 -size 5851293 diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.br b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.br deleted file mode 100644 index 37c0f5fd..00000000 --- a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ba89e39620d2992e2778804b1b68cf134c5b5c51b5530780ed6aeb24b5eeef26 -size 1255087 diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.gz b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.gz deleted file mode 100644 index 120beedf..00000000 --- a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7926e560d43796d95f9635a7c57f7c8efcc162e1d1eb46798e41ccea3f90b2f4 -size 1551597 diff --git a/public/packs/manifest.json b/public/packs/manifest.json deleted file mode 100644 index 6949dfb1..00000000 --- a/public/packs/manifest.json +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a8b7d82687e0f68f4e2705ad8bea08ff7ebe1e998bd0f30fe82220ec6dc2edba -size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br deleted file mode 100644 index a409c567..00000000 --- a/public/packs/manifest.json.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:edb90be614388b1b288316fd44a7510e88e7705fee4a7abc99dd539e415b79ac -size 320 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz deleted file mode 100644 index 1646ab13..00000000 --- a/public/packs/manifest.json.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c82218f8743a4bdf1bc369bbd2df346bc90a4e62e08cadebd62efe3d01603a25 -size 365 diff --git a/public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff b/public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff deleted file mode 100644 index 8925c5d3..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:53ab31062cf740aa76615d2c98aea80b177845d7ed95de45889b3824b0e1597c -size 115148 diff --git a/public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 b/public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 deleted file mode 100644 index 52865bdb..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:84422de97eb1cf27bcb9bca4f3fbb18f3ebc711647b09c68292f5f43c89d5064 -size 91624 diff --git a/public/packs/media/fonts/forkawesome-webfont-86541105.svg b/public/packs/media/fonts/forkawesome-webfont-86541105.svg deleted file mode 100644 index af45aadc..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-86541105.svg +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:505e7f9fe61ba6d17d8514b5d0c3a75166dab1b57527e2d3a3baf2047624ba93 -size 480784 diff --git a/public/packs/media/fonts/forkawesome-webfont-86541105.svg.br b/public/packs/media/fonts/forkawesome-webfont-86541105.svg.br deleted file mode 100644 index 827ed0bc..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-86541105.svg.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4df44c3056ab68d2e1cf1970189876295b62db1640e6ed885c78d8c46f94e66f -size 126249 diff --git a/public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz b/public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz deleted file mode 100644 index 0676bab5..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:49664085aa6a37335724f0288531562f352e81d10fdfeadd4a8ed0764eae2f50 -size 160947 diff --git a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot deleted file mode 100644 index 37e93df5..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0d96fdd7d6854cf875ce3090e017b0078ae2f7e923763bcbb90748a01c6fb7fd -size 188946 diff --git a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br deleted file mode 100644 index 01f63da2..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:36cb46345792080af5dbe8bd742dc632a3821276fff76e57877c93c0e8afb00a -size 107072 diff --git a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz deleted file mode 100644 index 5bb32cdc..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:413b68fbd4bc71d5aa98410c6f8048f971b55e7d824180d0fab665cc55c3d9a3 -size 115772 diff --git a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf deleted file mode 100644 index e6380d0e..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3e4beb40f0cc19ec55f2ab741d42e806fc6155ccf6e40e50965196c0bcc6aba4 -size 188756 diff --git a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br deleted file mode 100644 index c35abc27..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:de3e4f20e5341214cc1292a61d0f49d833187e862fb1fbfeb746d25f0465ee6b -size 106884 diff --git a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz deleted file mode 100644 index 44d9de5a..00000000 --- a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:26c357b09eb784753afcd35a1aa47fe65378a52c95db0496e98dfb999c9ab1b8 -size 115685 diff --git a/public/packs/media/images/layers-2x-8f2c4d11.png b/public/packs/media/images/layers-2x-8f2c4d11.png deleted file mode 100644 index d3cf7e52..00000000 --- a/public/packs/media/images/layers-2x-8f2c4d11.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:066daca850d8ffbef007af00b06eac0015728dee279c51f3cb6c716df7c42edf -size 1259 diff --git a/public/packs/media/images/layers-416d9136.png b/public/packs/media/images/layers-416d9136.png deleted file mode 100644 index 7b44754c..00000000 --- a/public/packs/media/images/layers-416d9136.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1dbbe9d028e292f36fcba8f8b3a28d5e8932754fc2215b9ac69e4cdecf5107c6 -size 696 diff --git a/public/packs/media/images/marker-icon-2b3e1faf.png b/public/packs/media/images/marker-icon-2b3e1faf.png deleted file mode 100644 index b1789c76..00000000 --- a/public/packs/media/images/marker-icon-2b3e1faf.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:574c3a5cca85f4114085b6841596d62f00d7c892c7b03f28cbfa301deb1dc437 -size 1466 diff --git a/public/packs/media/images/marker-icon-2x-680f69f3.png b/public/packs/media/images/marker-icon-2x-680f69f3.png deleted file mode 100644 index 09e8445f..00000000 --- a/public/packs/media/images/marker-icon-2x-680f69f3.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:00179c4c1ee830d3a108412ae0d294f55776cfeb085c60129a39aa6fc4ae2528 -size 2464 diff --git a/public/packs/media/images/marker-shadow-a0c6cc14.png b/public/packs/media/images/marker-shadow-a0c6cc14.png deleted file mode 100644 index dc111216..00000000 --- a/public/packs/media/images/marker-shadow-a0c6cc14.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:264f5c640339f042dd729062cfc04c17f8ea0f29882b538e3848ed8f10edb4da -size 618 From 024b8054c3cf9e43110fc68be16f5603f2804860 Mon Sep 17 00:00:00 2001 From: Sutty Date: Thu, 30 Nov 2023 16:45:49 +0000 Subject: [PATCH 384/699] Revert "ci: assets [skip ci]" This reverts commit c5da02cf3edb20567674bcf697fcd524bc19f182. --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/css/application-bb1478c7.css | 3 +++ public/packs/css/application-bb1478c7.css.br | 3 +++ public/packs/css/application-bb1478c7.css.gz | 3 +++ public/packs/js/application-17c8ec1abff8d9ee68fc.js | 3 +++ .../packs/js/application-17c8ec1abff8d9ee68fc.js.LICENSE.txt | 3 +++ public/packs/js/application-17c8ec1abff8d9ee68fc.js.br | 3 +++ public/packs/js/application-17c8ec1abff8d9ee68fc.js.gz | 3 +++ public/packs/js/application-17c8ec1abff8d9ee68fc.js.map | 3 +++ public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.br | 3 +++ public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.gz | 3 +++ public/packs/manifest.json | 3 +++ public/packs/manifest.json.br | 3 +++ public/packs/manifest.json.gz | 3 +++ public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff | 3 +++ public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 | 3 +++ public/packs/media/fonts/forkawesome-webfont-86541105.svg | 3 +++ public/packs/media/fonts/forkawesome-webfont-86541105.svg.br | 3 +++ public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz | 3 +++ public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot | 3 +++ public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br | 3 +++ public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz | 3 +++ public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf | 3 +++ public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br | 3 +++ public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz | 3 +++ public/packs/media/images/layers-2x-8f2c4d11.png | 3 +++ public/packs/media/images/layers-416d9136.png | 3 +++ public/packs/media/images/marker-icon-2b3e1faf.png | 3 +++ public/packs/media/images/marker-icon-2x-680f69f3.png | 3 +++ public/packs/media/images/marker-shadow-a0c6cc14.png | 3 +++ 30 files changed, 88 insertions(+), 1 deletion(-) create mode 100644 public/packs/css/application-bb1478c7.css create mode 100644 public/packs/css/application-bb1478c7.css.br create mode 100644 public/packs/css/application-bb1478c7.css.gz create mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js create mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js.LICENSE.txt create mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js.br create mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js.gz create mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js.map create mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.br create mode 100644 public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.gz create mode 100644 public/packs/manifest.json create mode 100644 public/packs/manifest.json.br create mode 100644 public/packs/manifest.json.gz create mode 100644 public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff create mode 100644 public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 create mode 100644 public/packs/media/fonts/forkawesome-webfont-86541105.svg create mode 100644 public/packs/media/fonts/forkawesome-webfont-86541105.svg.br create mode 100644 public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz create mode 100644 public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot create mode 100644 public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br create mode 100644 public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz create mode 100644 public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf create mode 100644 public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br create mode 100644 public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz create mode 100644 public/packs/media/images/layers-2x-8f2c4d11.png create mode 100644 public/packs/media/images/layers-416d9136.png create mode 100644 public/packs/media/images/marker-icon-2b3e1faf.png create mode 100644 public/packs/media/images/marker-icon-2x-680f69f3.png create mode 100644 public/packs/media/images/marker-shadow-a0c6cc14.png diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 9da8ba55..6d1b664d 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0be27a81c40641903cee5772ab6ff0064db2ce35438c58b264fa1c0accb9073c +oid sha256:e0bd21756fd55d772a0d310db827bd41b2d1fbdd6d6924ad212803ed33971725 size 14525 diff --git a/public/packs/css/application-bb1478c7.css b/public/packs/css/application-bb1478c7.css new file mode 100644 index 00000000..00ee9254 --- /dev/null +++ b/public/packs/css/application-bb1478c7.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8fd3bb412b63723fe63fa107ffac78bd6396487ccd69e4ea6d098848739a075d +size 49279 diff --git a/public/packs/css/application-bb1478c7.css.br b/public/packs/css/application-bb1478c7.css.br new file mode 100644 index 00000000..0b1db25e --- /dev/null +++ b/public/packs/css/application-bb1478c7.css.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:243e15e5a405fd51203d0fe34119c018691da4bfdd00be0cf26aa3e2abb5634d +size 10005 diff --git a/public/packs/css/application-bb1478c7.css.gz b/public/packs/css/application-bb1478c7.css.gz new file mode 100644 index 00000000..7cadc76e --- /dev/null +++ b/public/packs/css/application-bb1478c7.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3d0b479d7ebdc77c8ef3549085248c2b668a61fea1a1e3700bc918fe505c4ff +size 12351 diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js b/public/packs/js/application-17c8ec1abff8d9ee68fc.js new file mode 100644 index 00000000..37480493 --- /dev/null +++ b/public/packs/js/application-17c8ec1abff8d9ee68fc.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11cb44a373f826146b847520f0dd20a7549d4fac1c5a90d1deac260b421e5c68 +size 1492424 diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.LICENSE.txt b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.LICENSE.txt new file mode 100644 index 00000000..979d1ab9 --- /dev/null +++ b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.LICENSE.txt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3b9ae1697c4b8a404afe77afe035de28b7f4880e9f52caac82620bb8d8ed495 +size 854 diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.br b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.br new file mode 100644 index 00000000..b357cdd6 --- /dev/null +++ b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48ccffc31d33c10d77f4ae691a26b64c1398fe4ec86071ba01430a4bfbdc3c00 +size 326998 diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.gz b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.gz new file mode 100644 index 00000000..f3d19ecd --- /dev/null +++ b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4634538d756c8168c99dc53f33a593a99efd7f4e183ca2d4203883136e72ba2 +size 433218 diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map new file mode 100644 index 00000000..922e5404 --- /dev/null +++ b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a46d673b967335af347b2d5418e29f0a88a67d851339ed32c6468ab0db29025 +size 5851293 diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.br b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.br new file mode 100644 index 00000000..37c0f5fd --- /dev/null +++ b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba89e39620d2992e2778804b1b68cf134c5b5c51b5530780ed6aeb24b5eeef26 +size 1255087 diff --git a/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.gz b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.gz new file mode 100644 index 00000000..120beedf --- /dev/null +++ b/public/packs/js/application-17c8ec1abff8d9ee68fc.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7926e560d43796d95f9635a7c57f7c8efcc162e1d1eb46798e41ccea3f90b2f4 +size 1551597 diff --git a/public/packs/manifest.json b/public/packs/manifest.json new file mode 100644 index 00000000..6949dfb1 --- /dev/null +++ b/public/packs/manifest.json @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8b7d82687e0f68f4e2705ad8bea08ff7ebe1e998bd0f30fe82220ec6dc2edba +size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br new file mode 100644 index 00000000..a409c567 --- /dev/null +++ b/public/packs/manifest.json.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:edb90be614388b1b288316fd44a7510e88e7705fee4a7abc99dd539e415b79ac +size 320 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz new file mode 100644 index 00000000..1646ab13 --- /dev/null +++ b/public/packs/manifest.json.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c82218f8743a4bdf1bc369bbd2df346bc90a4e62e08cadebd62efe3d01603a25 +size 365 diff --git a/public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff b/public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff new file mode 100644 index 00000000..8925c5d3 --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-2dfb5f36.woff @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53ab31062cf740aa76615d2c98aea80b177845d7ed95de45889b3824b0e1597c +size 115148 diff --git a/public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 b/public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 new file mode 100644 index 00000000..52865bdb --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-7c20758e.woff2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84422de97eb1cf27bcb9bca4f3fbb18f3ebc711647b09c68292f5f43c89d5064 +size 91624 diff --git a/public/packs/media/fonts/forkawesome-webfont-86541105.svg b/public/packs/media/fonts/forkawesome-webfont-86541105.svg new file mode 100644 index 00000000..af45aadc --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-86541105.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:505e7f9fe61ba6d17d8514b5d0c3a75166dab1b57527e2d3a3baf2047624ba93 +size 480784 diff --git a/public/packs/media/fonts/forkawesome-webfont-86541105.svg.br b/public/packs/media/fonts/forkawesome-webfont-86541105.svg.br new file mode 100644 index 00000000..827ed0bc --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-86541105.svg.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4df44c3056ab68d2e1cf1970189876295b62db1640e6ed885c78d8c46f94e66f +size 126249 diff --git a/public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz b/public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz new file mode 100644 index 00000000..0676bab5 --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-86541105.svg.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49664085aa6a37335724f0288531562f352e81d10fdfeadd4a8ed0764eae2f50 +size 160947 diff --git a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot new file mode 100644 index 00000000..37e93df5 --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d96fdd7d6854cf875ce3090e017b0078ae2f7e923763bcbb90748a01c6fb7fd +size 188946 diff --git a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br new file mode 100644 index 00000000..01f63da2 --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36cb46345792080af5dbe8bd742dc632a3821276fff76e57877c93c0e8afb00a +size 107072 diff --git a/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz new file mode 100644 index 00000000..5bb32cdc --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-e182ad6d.eot.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:413b68fbd4bc71d5aa98410c6f8048f971b55e7d824180d0fab665cc55c3d9a3 +size 115772 diff --git a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf new file mode 100644 index 00000000..e6380d0e --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e4beb40f0cc19ec55f2ab741d42e806fc6155ccf6e40e50965196c0bcc6aba4 +size 188756 diff --git a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br new file mode 100644 index 00000000..c35abc27 --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de3e4f20e5341214cc1292a61d0f49d833187e862fb1fbfeb746d25f0465ee6b +size 106884 diff --git a/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz new file mode 100644 index 00000000..44d9de5a --- /dev/null +++ b/public/packs/media/fonts/forkawesome-webfont-ee4d8bfd.ttf.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26c357b09eb784753afcd35a1aa47fe65378a52c95db0496e98dfb999c9ab1b8 +size 115685 diff --git a/public/packs/media/images/layers-2x-8f2c4d11.png b/public/packs/media/images/layers-2x-8f2c4d11.png new file mode 100644 index 00000000..d3cf7e52 --- /dev/null +++ b/public/packs/media/images/layers-2x-8f2c4d11.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:066daca850d8ffbef007af00b06eac0015728dee279c51f3cb6c716df7c42edf +size 1259 diff --git a/public/packs/media/images/layers-416d9136.png b/public/packs/media/images/layers-416d9136.png new file mode 100644 index 00000000..7b44754c --- /dev/null +++ b/public/packs/media/images/layers-416d9136.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1dbbe9d028e292f36fcba8f8b3a28d5e8932754fc2215b9ac69e4cdecf5107c6 +size 696 diff --git a/public/packs/media/images/marker-icon-2b3e1faf.png b/public/packs/media/images/marker-icon-2b3e1faf.png new file mode 100644 index 00000000..b1789c76 --- /dev/null +++ b/public/packs/media/images/marker-icon-2b3e1faf.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:574c3a5cca85f4114085b6841596d62f00d7c892c7b03f28cbfa301deb1dc437 +size 1466 diff --git a/public/packs/media/images/marker-icon-2x-680f69f3.png b/public/packs/media/images/marker-icon-2x-680f69f3.png new file mode 100644 index 00000000..09e8445f --- /dev/null +++ b/public/packs/media/images/marker-icon-2x-680f69f3.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00179c4c1ee830d3a108412ae0d294f55776cfeb085c60129a39aa6fc4ae2528 +size 2464 diff --git a/public/packs/media/images/marker-shadow-a0c6cc14.png b/public/packs/media/images/marker-shadow-a0c6cc14.png new file mode 100644 index 00000000..dc111216 --- /dev/null +++ b/public/packs/media/images/marker-shadow-a0c6cc14.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:264f5c640339f042dd729062cfc04c17f8ea0f29882b538e3848ed8f10edb4da +size 618 From c787c1db87a84b50fa8df03694f2d9251d9152e7 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 9 Jan 2024 18:27:02 -0300 Subject: [PATCH 385/699] fix: limitar el nombre del archivo #14946 (cherry picked from commit ee7d1599e896f82accac69288edc6ff450a53c83) --- app/models/metadata_path.rb | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/app/models/metadata_path.rb b/app/models/metadata_path.rb index 95fc7dbb..17085e07 100644 --- a/app/models/metadata_path.rb +++ b/app/models/metadata_path.rb @@ -6,7 +6,7 @@ class MetadataPath < MetadataTemplate # # @return [String] def default_value - File.join(site.path, "_#{lang}", "#{date}-#{slug}#{ext}") + File.join(site.path, "_#{lang}", "#{limited_name}#{ext}") end # La ruta del archivo según Jekyll @@ -46,4 +46,12 @@ class MetadataPath < MetadataTemplate def date post.date.value.strftime('%F') end + + # Limita el nombre de archivo a 255 bytes, de forma que siempre + # podemos guardarlo + # + # @return [String] + def limited_name + "#{date}-#{slug}".mb_chars.limit(255 - ext.length) + end end From d3e5324687056aaf781994a84d5dba90c9748e98 Mon Sep 17 00:00:00 2001 From: jazzari Date: Wed, 10 Jan 2024 15:40:40 -0300 Subject: [PATCH 386/699] fix: corregido nombre de archivo auto_publish_concern.rb #13244 --- .../concerns/{autopublish.rb => auto_publish_concern.rb} | 0 app/services/site_service.rb | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename app/services/concerns/{autopublish.rb => auto_publish_concern.rb} (100%) diff --git a/app/services/concerns/autopublish.rb b/app/services/concerns/auto_publish_concern.rb similarity index 100% rename from app/services/concerns/autopublish.rb rename to app/services/concerns/auto_publish_concern.rb diff --git a/app/services/site_service.rb b/app/services/site_service.rb index b446e527..4c83a6dd 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -3,7 +3,7 @@ # Se encargar de guardar cambios en sitios # TODO: Implementar rollback en la configuración SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do - include BaseService + include AutoPublishConcern def deploy site.enqueue! From 682735db19ca1355a950a55104e469e1055fd772 Mon Sep 17 00:00:00 2001 From: jazzari Date: Wed, 10 Jan 2024 15:51:28 -0300 Subject: [PATCH 387/699] fix: corregido espacio extra en linea 102 #13077 --- app/services/site_service.rb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 7e1bef6b..6f2bd96b 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -97,9 +97,9 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do FileUtils.mv (site.path_was, site.path) moved = true ActiveStorage::Blob.where(service_name: site.name_was).update_all(service_name: site.name) - site.save + site.save rescue StandardError - FileUtils.mv (site.path, site.path_was) if moved + FileUtils.mv(site.path, site.path_was) if moved raise end end From d4c23e34067ad771f48f31cbec6259a42d49498c Mon Sep 17 00:00:00 2001 From: f Date: Thu, 11 Jan 2024 16:52:24 -0300 Subject: [PATCH 388/699] fix: eliminar los guiones bajos al principio del nombre de archivo #14953 porque jekyll los toma como archivos ocultos (cherry picked from commit 5aef69cd940e05cadc365bed4af835cd7e82a78e) --- .../active_storage/direct_uploads_controller_decorator.rb | 2 +- app/lib/action_dispatch/http/uploaded_file_decorator.rb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/controllers/active_storage/direct_uploads_controller_decorator.rb b/app/controllers/active_storage/direct_uploads_controller_decorator.rb index c62dae2a..5ac58ecf 100644 --- a/app/controllers/active_storage/direct_uploads_controller_decorator.rb +++ b/app/controllers/active_storage/direct_uploads_controller_decorator.rb @@ -19,7 +19,7 @@ module ActiveStorage # stack. def blob_args params.require(:blob).permit(:filename, :byte_size, :checksum, :content_type, metadata: {}).to_h.symbolize_keys.tap do |ba| - ba[:filename] = ba[:filename].unicode_normalize + ba[:filename] = ba[:filename].unicode_normalize.sub(/\A_+/, '') end end end diff --git a/app/lib/action_dispatch/http/uploaded_file_decorator.rb b/app/lib/action_dispatch/http/uploaded_file_decorator.rb index 0bdebdc0..7b28a0db 100644 --- a/app/lib/action_dispatch/http/uploaded_file_decorator.rb +++ b/app/lib/action_dispatch/http/uploaded_file_decorator.rb @@ -11,7 +11,7 @@ module ActionDispatch # Devolver el nombre de archivo con caracteres unicode # normalizados def original_filename - @original_filename.unicode_normalize + @original_filename.unicode_normalize.sub(/\A_+/, '') end end end From cf1df71d4043c425a83d4176206c953b7626cbc8 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 11 Jan 2024 18:13:52 -0300 Subject: [PATCH 389/699] =?UTF-8?q?fix:=20especificar=20qu=C3=A9=20paramet?= =?UTF-8?q?ros=20de=20airbrake=20permitimos=20#14956?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit (cherry picked from commit c22276f74f9de7fa8fa69d42db2e32b1455b6b1d) --- app/controllers/api/v1/notices_controller.rb | 38 ++++++++++++++++++-- 1 file changed, 35 insertions(+), 3 deletions(-) diff --git a/app/controllers/api/v1/notices_controller.rb b/app/controllers/api/v1/notices_controller.rb index 3d74a48f..8f384f1a 100644 --- a/app/controllers/api/v1/notices_controller.rb +++ b/app/controllers/api/v1/notices_controller.rb @@ -9,10 +9,10 @@ module Api # Generar un stacktrace en segundo plano y enviarlo por correo # solo si la API key es verificable. Del otro lado siempre # respondemos con lo mismo. - def create + def create if (site&.airbrake_valid? airbrake_token) && !detected_device.bot? BacktraceJob.perform_later site_id: params[:site_id], - params: airbrake_params.to_h + params: airbrake_params.to_h end render status: 201, json: { id: 1, url: '' } @@ -23,7 +23,39 @@ module Api # XXX: Por alguna razón Airbrake envía los datos con Content-Type: # text/plain. def airbrake_params - @airbrake_params ||= params.merge!(FastJsonparser.parse(request.raw_post) || {}).permit! + @airbrake_params ||= + params.merge!(FastJsonparser.parse(request.raw_post) || {}) + .permit( + { + errors: [ + :type, + :message, + { backtrace: %i[file line column function] } + ] + }, + { + context: [ + :url, + :language, + :severity, + :userAgent, + :windowError, + :rootDirectory, + { + history: [ + :date, + :type, + :severity, + :target, + :method, + :duration, + :statusCode, + { arguments: [] } + ] + } + ] + } + ) end def site From 0451d74eb6745ee48422134c239714dce32e09be Mon Sep 17 00:00:00 2001 From: f Date: Thu, 22 Feb 2024 17:29:04 -0300 Subject: [PATCH 390/699] fix: btn --- app/views/posts/index.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/posts/index.haml b/app/views/posts/index.haml index 61028eb1..b371192a 100644 --- a/app/views/posts/index.haml +++ b/app/views/posts/index.haml @@ -82,7 +82,7 @@ .d-flex.flex-row.justify-content-between %div - if reorder_allowed - = submit_tag t('posts.reorder.submit'), class: 'btn' + = submit_tag t('posts.reorder.submit'), class: 'btn btn-secondary' %button.btn.btn-secondary{ data: { action: 'reorder#unselect' } } = t('posts.reorder.unselect') %span.badge{ data: { target: 'reorder.counter' } } 0 From 0ed463820e47ca224aeaf401b12848f84fb49425 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 22 Feb 2024 17:31:10 -0300 Subject: [PATCH 391/699] ci: assets --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- .../.sprockets-manifest-c6294bb290dcb7473076f4de99ce9c00.json | 3 --- ...289957de41530f1a6c63720c6980e71b85b2b73698ee2ad85e39788.css | 3 +++ ...957de41530f1a6c63720c6980e71b85b2b73698ee2ad85e39788.css.gz | 3 +++ ...db9ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css | 3 --- ...ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css.gz | 3 --- 6 files changed, 7 insertions(+), 10 deletions(-) delete mode 100644 public/assets/.sprockets-manifest-c6294bb290dcb7473076f4de99ce9c00.json create mode 100644 public/assets/application-20ccc989c289957de41530f1a6c63720c6980e71b85b2b73698ee2ad85e39788.css create mode 100644 public/assets/application-20ccc989c289957de41530f1a6c63720c6980e71b85b2b73698ee2ad85e39788.css.gz delete mode 100644 public/assets/application-b1906dfc8db9ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css delete mode 100644 public/assets/application-b1906dfc8db9ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 414ed964..4d14a3ae 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f9d586283c17db1df3e1c36286b973a64a38e4663686ee034b388e2682a63dc6 +oid sha256:d13b9bdec29a674c105944271d94bc7bff67e416cb452c8962d7990b2365dddc size 14818 diff --git a/public/assets/.sprockets-manifest-c6294bb290dcb7473076f4de99ce9c00.json b/public/assets/.sprockets-manifest-c6294bb290dcb7473076f4de99ce9c00.json deleted file mode 100644 index ecd1aee3..00000000 --- a/public/assets/.sprockets-manifest-c6294bb290dcb7473076f4de99ce9c00.json +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:53b13d54381374696503351fd6661242b1e22ea6f2078678bc560dfcfb701c8a -size 10242 diff --git a/public/assets/application-20ccc989c289957de41530f1a6c63720c6980e71b85b2b73698ee2ad85e39788.css b/public/assets/application-20ccc989c289957de41530f1a6c63720c6980e71b85b2b73698ee2ad85e39788.css new file mode 100644 index 00000000..109c05a1 --- /dev/null +++ b/public/assets/application-20ccc989c289957de41530f1a6c63720c6980e71b85b2b73698ee2ad85e39788.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c7d185f6b9de802352ba5905ed3becdf8248e231484006e3ed3efabbd15e9b6 +size 236932 diff --git a/public/assets/application-20ccc989c289957de41530f1a6c63720c6980e71b85b2b73698ee2ad85e39788.css.gz b/public/assets/application-20ccc989c289957de41530f1a6c63720c6980e71b85b2b73698ee2ad85e39788.css.gz new file mode 100644 index 00000000..e1f69469 --- /dev/null +++ b/public/assets/application-20ccc989c289957de41530f1a6c63720c6980e71b85b2b73698ee2ad85e39788.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d85bfc90e555d5a4d45424fe6b7c0b55baa560d4eb1db9ec0fe678d8dc126f7d +size 32753 diff --git a/public/assets/application-b1906dfc8db9ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css b/public/assets/application-b1906dfc8db9ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css deleted file mode 100644 index 701eed54..00000000 --- a/public/assets/application-b1906dfc8db9ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e341ea5cc9c00ad1f340c6033404b207ed0e47f9b0a5ace1899c44325f19e7a3 -size 235951 diff --git a/public/assets/application-b1906dfc8db9ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css.gz b/public/assets/application-b1906dfc8db9ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css.gz deleted file mode 100644 index b498dbd2..00000000 --- a/public/assets/application-b1906dfc8db9ca20e901841c12b7d1df8090a2ea1af3befab4fb333cc25972d5.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e7d731a73bcce53aa0ee786606c4493a0442b7c1e19f3225321b01376073245d -size 32720 From cba395473c28587c7cfcc25c4797eb6084f63173 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 28 Feb 2024 12:05:09 -0300 Subject: [PATCH 392/699] feat: asignar rol a deploys al crear o modificar el sitio (cherry picked from commit dc82b8cef2ee014898128a8916b75c5358d9646d) --- app/services/site_service.rb | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index eeef0b3f..d8f1f379 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -26,6 +26,8 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do # que no haya estados intermedios. site.locales = [usuarie.lang] + add_role_to_deploys! + site.save && site.config.write && commit_config(action: :create) && @@ -43,7 +45,10 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do # Actualiza el sitio y guarda los cambios en la configuración def update I18n.with_locale(usuarie&.lang&.to_sym || I18n.default_locale) do - site.update(params) && + site.assign_attributes(params) + add_role_to_deploys! + + site.save && site.config.write && commit_config(action: :update) && site.reset.nil? && @@ -241,6 +246,17 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do private + # Asignar un rol a cada deploy si no lo tenía ya + def add_role_to_deploys! + site.deploys.each do |deploy| + deploy.rol ||= current_role + end + end + + def current_role + @current_role ||= usuarie.rol_for_site(site) + end + def with_all_locales(&block) site.locales.map do |locale| next unless I18n.available_locales.include? locale From d0bd90ab4e8b1d01d9de4042dc1900dbe4876663 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 28 Feb 2024 15:01:36 -0300 Subject: [PATCH 393/699] =?UTF-8?q?fix:=20el=20rol=20todav=C3=ADa=20no=20e?= =?UTF-8?q?st=C3=A1=20guardado?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit (cherry picked from commit ee10e170ec6b8c6f939173ee647f874d4770bc3b) --- app/services/site_service.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index d8f1f379..57a4ee59 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -13,7 +13,7 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do def create self.site = Site.new params - add_role temporal: false, rol: 'usuarie' + role = add_role temporal: false, rol: 'usuarie' site.deploys.build type: 'DeployLocal' # Los sitios de testing no se sincronizan sync_nodes unless site.name.end_with? '.testing' @@ -26,7 +26,7 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do # que no haya estados intermedios. site.locales = [usuarie.lang] - add_role_to_deploys! + add_role_to_deploys! role site.save && site.config.write && @@ -247,9 +247,9 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do private # Asignar un rol a cada deploy si no lo tenía ya - def add_role_to_deploys! + def add_role_to_deploys!(role = current_role) site.deploys.each do |deploy| - deploy.rol ||= current_role + deploy.rol ||= role end end From 37511ad3e51a3e3be6efb3a0e05850ab38fbb831 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 28 Feb 2024 15:04:52 -0300 Subject: [PATCH 394/699] fix: generar un rol dentro del sitio (cherry picked from commit 670d6063e56922b3a8f8debdbd45fd823c34e38a) --- app/services/site_service.rb | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 57a4ee59..d38a4e9a 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -13,7 +13,7 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do def create self.site = Site.new params - role = add_role temporal: false, rol: 'usuarie' + role = site.roles.build(usuarie: usuarie, temporal: false, rol: 'usuarie') site.deploys.build type: 'DeployLocal' # Los sitios de testing no se sincronizan sync_nodes unless site.name.end_with? '.testing' @@ -123,11 +123,6 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do GitPushJob.perform_later(site) end - def add_role(temporal: true, rol: 'invitade') - site.roles << Rol.new(site: site, usuarie: usuarie, - temporal: temporal, rol: rol) - end - # Crea la licencia del sitio para cada locale disponible en el sitio # # @return [Boolean] From 48defa9058a5b8980ad89c7e53afffd63416ca83 Mon Sep 17 00:00:00 2001 From: Sutty Date: Wed, 6 Mar 2024 15:30:50 +0000 Subject: [PATCH 395/699] =?UTF-8?q?fix:=20no=20cambiar=20el=20hostname=20s?= =?UTF-8?q?i=20se=20lo=20asign=C3=B3=20manualmente?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/deploy_distributed_press.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/deploy_distributed_press.rb b/app/models/deploy_distributed_press.rb index addb817d..bc89a8b6 100644 --- a/app/models/deploy_distributed_press.rb +++ b/app/models/deploy_distributed_press.rb @@ -130,7 +130,7 @@ class DeployDistributedPress < Deploy # # @return [nil] def create_remote_site! - self.hostname = site.hostname + self.hostname ||= site.hostname created_site = site_client.create(create_site) From 6ea20a4d55ed6b52bc7321e2f0f18e851c97aa45 Mon Sep 17 00:00:00 2001 From: Sutty Date: Wed, 6 Mar 2024 15:31:40 +0000 Subject: [PATCH 396/699] =?UTF-8?q?fix:=20gitlab=20solo=20acepta=20200=20c?= =?UTF-8?q?aracteres=20en=20el=20t=C3=ADtulo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/jobs/gitlab_notifier_job.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/jobs/gitlab_notifier_job.rb b/app/jobs/gitlab_notifier_job.rb index 308adfc7..77e865a3 100644 --- a/app/jobs/gitlab_notifier_job.rb +++ b/app/jobs/gitlab_notifier_job.rb @@ -105,7 +105,7 @@ class GitlabNotifierJob < ApplicationJob def title @title ||= ''.dup.tap do |t| t << "[#{exception.class}] " unless javascript? - t << exception.message + t << exception.message[0..200] t << " [#{issue_data[:count]}]" end end From 156079b1cbca1d7787e7279d37298dec2d330e22 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 6 Mar 2024 13:49:07 -0300 Subject: [PATCH 397/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 4 ++-- ...5b4444349f4c0175aa88fb76292284e1c68bfc4724151ceaf5113a.css | 3 +++ ...444349f4c0175aa88fb76292284e1c68bfc4724151ceaf5113a.css.gz | 3 +++ ...62d0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css | 3 --- ...0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css.gz | 3 --- ...25b766eda449e80715f9e51238c5defc9e38e60f02c31e11207839.css | 3 +++ ...766eda449e80715f9e51238c5defc9e38e60f02c31e11207839.css.gz | 3 +++ public/packs/js/application-886df482a133d55527f8.js | 3 --- public/packs/js/application-886df482a133d55527f8.js.br | 3 --- public/packs/js/application-886df482a133d55527f8.js.gz | 3 --- public/packs/js/application-886df482a133d55527f8.js.map | 3 --- public/packs/js/application-886df482a133d55527f8.js.map.br | 3 --- public/packs/js/application-886df482a133d55527f8.js.map.gz | 3 --- public/packs/js/application-eff7e393ce95ecf9b900.js | 3 +++ ...SE.txt => application-eff7e393ce95ecf9b900.js.LICENSE.txt} | 0 public/packs/js/application-eff7e393ce95ecf9b900.js.br | 3 +++ public/packs/js/application-eff7e393ce95ecf9b900.js.gz | 3 +++ public/packs/js/application-eff7e393ce95ecf9b900.js.map | 3 +++ public/packs/js/application-eff7e393ce95ecf9b900.js.map.br | 3 +++ public/packs/js/application-eff7e393ce95ecf9b900.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 2 +- 23 files changed, 36 insertions(+), 30 deletions(-) create mode 100644 public/assets/application-5c98ae5b7e5b4444349f4c0175aa88fb76292284e1c68bfc4724151ceaf5113a.css create mode 100644 public/assets/application-5c98ae5b7e5b4444349f4c0175aa88fb76292284e1c68bfc4724151ceaf5113a.css.gz delete mode 100644 public/assets/application-bf587b120762d0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css delete mode 100644 public/assets/application-bf587b120762d0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css.gz create mode 100644 public/assets/dark-591813c5ed25b766eda449e80715f9e51238c5defc9e38e60f02c31e11207839.css create mode 100644 public/assets/dark-591813c5ed25b766eda449e80715f9e51238c5defc9e38e60f02c31e11207839.css.gz delete mode 100644 public/packs/js/application-886df482a133d55527f8.js delete mode 100644 public/packs/js/application-886df482a133d55527f8.js.br delete mode 100644 public/packs/js/application-886df482a133d55527f8.js.gz delete mode 100644 public/packs/js/application-886df482a133d55527f8.js.map delete mode 100644 public/packs/js/application-886df482a133d55527f8.js.map.br delete mode 100644 public/packs/js/application-886df482a133d55527f8.js.map.gz create mode 100644 public/packs/js/application-eff7e393ce95ecf9b900.js rename public/packs/js/{application-886df482a133d55527f8.js.LICENSE.txt => application-eff7e393ce95ecf9b900.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-eff7e393ce95ecf9b900.js.br create mode 100644 public/packs/js/application-eff7e393ce95ecf9b900.js.gz create mode 100644 public/packs/js/application-eff7e393ce95ecf9b900.js.map create mode 100644 public/packs/js/application-eff7e393ce95ecf9b900.js.map.br create mode 100644 public/packs/js/application-eff7e393ce95ecf9b900.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 4d14a3ae..247f6c56 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d13b9bdec29a674c105944271d94bc7bff67e416cb452c8962d7990b2365dddc -size 14818 +oid sha256:1fb42e911e5a7b4fed24660e36b1702ff6995aaa506e6da6a9df0078251e34d7 +size 15111 diff --git a/public/assets/application-5c98ae5b7e5b4444349f4c0175aa88fb76292284e1c68bfc4724151ceaf5113a.css b/public/assets/application-5c98ae5b7e5b4444349f4c0175aa88fb76292284e1c68bfc4724151ceaf5113a.css new file mode 100644 index 00000000..1945b981 --- /dev/null +++ b/public/assets/application-5c98ae5b7e5b4444349f4c0175aa88fb76292284e1c68bfc4724151ceaf5113a.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84981ad08b14786d825a89f6de709c8951b403f7dd5f5fa88f6a77e16760f284 +size 237180 diff --git a/public/assets/application-5c98ae5b7e5b4444349f4c0175aa88fb76292284e1c68bfc4724151ceaf5113a.css.gz b/public/assets/application-5c98ae5b7e5b4444349f4c0175aa88fb76292284e1c68bfc4724151ceaf5113a.css.gz new file mode 100644 index 00000000..01e72c45 --- /dev/null +++ b/public/assets/application-5c98ae5b7e5b4444349f4c0175aa88fb76292284e1c68bfc4724151ceaf5113a.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3df707f1055c66159e723d71cbfa6d501df539538a27e9fc63e789ff7df11e39 +size 32845 diff --git a/public/assets/application-bf587b120762d0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css b/public/assets/application-bf587b120762d0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css deleted file mode 100644 index a3e7b5d3..00000000 --- a/public/assets/application-bf587b120762d0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3c5f8a91f8c54f53251449658b86be3ec6b3413e62df65fbe2b3a345bd523585 -size 236051 diff --git a/public/assets/application-bf587b120762d0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css.gz b/public/assets/application-bf587b120762d0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css.gz deleted file mode 100644 index b7cc9a34..00000000 --- a/public/assets/application-bf587b120762d0e1dddd67798890b5d321b4c04051d5de02fe65c7469ef9c28a.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2b03cf49aab868da9abbb8e105f5af74dc259756d31793386281a7dde7c93937 -size 32754 diff --git a/public/assets/dark-591813c5ed25b766eda449e80715f9e51238c5defc9e38e60f02c31e11207839.css b/public/assets/dark-591813c5ed25b766eda449e80715f9e51238c5defc9e38e60f02c31e11207839.css new file mode 100644 index 00000000..ec99e712 --- /dev/null +++ b/public/assets/dark-591813c5ed25b766eda449e80715f9e51238c5defc9e38e60f02c31e11207839.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df567b9eefa4ec9a50433a8e572abc260ed033b21bf7befd0ad52822270c28b6 +size 312 diff --git a/public/assets/dark-591813c5ed25b766eda449e80715f9e51238c5defc9e38e60f02c31e11207839.css.gz b/public/assets/dark-591813c5ed25b766eda449e80715f9e51238c5defc9e38e60f02c31e11207839.css.gz new file mode 100644 index 00000000..f384cf5a --- /dev/null +++ b/public/assets/dark-591813c5ed25b766eda449e80715f9e51238c5defc9e38e60f02c31e11207839.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:771de7cf116906bf574d88d9138a236e4725dfdcc8a007d8a02573b3661528ed +size 162 diff --git a/public/packs/js/application-886df482a133d55527f8.js b/public/packs/js/application-886df482a133d55527f8.js deleted file mode 100644 index ed76fc79..00000000 --- a/public/packs/js/application-886df482a133d55527f8.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2252ec5b0a709ccc33511a5b28723964791f1f618a6ad294e075b6c72840db25 -size 1516360 diff --git a/public/packs/js/application-886df482a133d55527f8.js.br b/public/packs/js/application-886df482a133d55527f8.js.br deleted file mode 100644 index 346ffcda..00000000 --- a/public/packs/js/application-886df482a133d55527f8.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d0fa88fa553f73bc2102864f6954a4f474e184f200b441f131fad9747559f0cd -size 333267 diff --git a/public/packs/js/application-886df482a133d55527f8.js.gz b/public/packs/js/application-886df482a133d55527f8.js.gz deleted file mode 100644 index 40687a33..00000000 --- a/public/packs/js/application-886df482a133d55527f8.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:211d9791a9c91e3e83c574c8c689cf62e507cd95587ba8d3cf925232acfb4482 -size 441098 diff --git a/public/packs/js/application-886df482a133d55527f8.js.map b/public/packs/js/application-886df482a133d55527f8.js.map deleted file mode 100644 index 9e20b3ed..00000000 --- a/public/packs/js/application-886df482a133d55527f8.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c57b761842347f6f8d76fcaec5d297a93882d88e49be65088166f446c3dbed5a -size 5988215 diff --git a/public/packs/js/application-886df482a133d55527f8.js.map.br b/public/packs/js/application-886df482a133d55527f8.js.map.br deleted file mode 100644 index 490b78d2..00000000 --- a/public/packs/js/application-886df482a133d55527f8.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:33f257673c4ababb6bef1a67f59cb5384ee053990d23cac18cc725a708073778 -size 1278959 diff --git a/public/packs/js/application-886df482a133d55527f8.js.map.gz b/public/packs/js/application-886df482a133d55527f8.js.map.gz deleted file mode 100644 index 9ded6964..00000000 --- a/public/packs/js/application-886df482a133d55527f8.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:938b2b5cfbe8bc2f88977706c840e11ecc71cf7f86cd0e974e90629a713e6dad -size 1583987 diff --git a/public/packs/js/application-eff7e393ce95ecf9b900.js b/public/packs/js/application-eff7e393ce95ecf9b900.js new file mode 100644 index 00000000..913f7ed6 --- /dev/null +++ b/public/packs/js/application-eff7e393ce95ecf9b900.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3440b36c5db64c1084ff4984ad0ff0e440f9e7f96ef6c1a6d23dd46fcc4fc34 +size 1523013 diff --git a/public/packs/js/application-886df482a133d55527f8.js.LICENSE.txt b/public/packs/js/application-eff7e393ce95ecf9b900.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-886df482a133d55527f8.js.LICENSE.txt rename to public/packs/js/application-eff7e393ce95ecf9b900.js.LICENSE.txt diff --git a/public/packs/js/application-eff7e393ce95ecf9b900.js.br b/public/packs/js/application-eff7e393ce95ecf9b900.js.br new file mode 100644 index 00000000..c98d3dd6 --- /dev/null +++ b/public/packs/js/application-eff7e393ce95ecf9b900.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b13ef3d5e0792eb59d5e63d224fb20f37952eeca26223bd3d523d3adc18de9fc +size 333769 diff --git a/public/packs/js/application-eff7e393ce95ecf9b900.js.gz b/public/packs/js/application-eff7e393ce95ecf9b900.js.gz new file mode 100644 index 00000000..f9cf565f --- /dev/null +++ b/public/packs/js/application-eff7e393ce95ecf9b900.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0602a43649ddafbebd01d991451f7ef6b1ce5d2d33a58a60fb8ace6935f0d47 +size 441624 diff --git a/public/packs/js/application-eff7e393ce95ecf9b900.js.map b/public/packs/js/application-eff7e393ce95ecf9b900.js.map new file mode 100644 index 00000000..522d68e2 --- /dev/null +++ b/public/packs/js/application-eff7e393ce95ecf9b900.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f76a22d1218344755aad1b6feaaff4027cdcf8dc8a36e40057039fbce1191535 +size 5993093 diff --git a/public/packs/js/application-eff7e393ce95ecf9b900.js.map.br b/public/packs/js/application-eff7e393ce95ecf9b900.js.map.br new file mode 100644 index 00000000..59e88021 --- /dev/null +++ b/public/packs/js/application-eff7e393ce95ecf9b900.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed1577e4439cfa1a829d2ebfa90a242a35c0f6b3552aa7c157c7aba416e1ea4c +size 1281600 diff --git a/public/packs/js/application-eff7e393ce95ecf9b900.js.map.gz b/public/packs/js/application-eff7e393ce95ecf9b900.js.map.gz new file mode 100644 index 00000000..6fd917d3 --- /dev/null +++ b/public/packs/js/application-eff7e393ce95ecf9b900.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc349e2e206c9ab8c809f5b3c65408abe4366b1d4b9d9fd4e12e02f9eb313978 +size 1585028 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 4109d5df..2dcf2333 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7198b7e0061bdb7f3b844ddeb3d10c97b410bc653fb8634e540dd82d27eb22d6 +oid sha256:75288aa35e3342e83e5afeb0e324f251b19259954163412c2b259183d1be2bb8 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 6d85ce3e..d182a62b 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:55a30ed30ae4b527a6d20f567b9afe5a1c11af8e64f66ed037bc0d14cf190088 -size 319 +oid sha256:30acde91e7a69507c9297823826161ada92641837b5df30edb50f3900ae3718a +size 320 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 96d59963..46da36ce 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e75a152cd8dcd1a048e8a9a36fc02053a676886b684806dde9c402dfd66ae567 +oid sha256:e3b87c3e6311e1f3d15ecd5b88d15e1f87b6bd582f3a29f91a38901e323ee48b size 365 From ff84423891cff5a6398a791aeb1315f5395efd27 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 7 Mar 2024 16:38:26 -0300 Subject: [PATCH 398/699] =?UTF-8?q?fix:=20el=20m=C3=A9todo=20es=20p=C3=BAb?= =?UTF-8?q?lico?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit (cherry picked from commit 453798dcc7b33cd32a27e358eef5b9cf0acf2434) --- app/models/site/repository.rb | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/app/models/site/repository.rb b/app/models/site/repository.rb index eeca72c4..d41e76f5 100644 --- a/app/models/site/repository.rb +++ b/app/models/site/repository.rb @@ -194,6 +194,12 @@ class Site git_sh('git', 'lfs', 'push', remote.name, default_branch) end + # Hace limpieza de LFS + def lfs_cleanup + git_sh("git", "lfs", "prune") + git_sh("git", "lfs", "dedup") + end + private # @deprecated @@ -260,10 +266,5 @@ class Site r&.success? end - - def lfs_cleanup - git_sh("git", "lfs", "prune") - git_sh("git", "lfs", "dedup") - end end end From 643641b763b33493d0d2c724b8e86031aef61c86 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 21 Mar 2024 18:23:02 -0300 Subject: [PATCH 399/699] build: assets --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- ...e55aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css | 3 +++ ...aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css.gz | 3 +++ ...0f1ddba4b6d570ac1bc4318f0e84d522fe2c02eb6fbb594ece6f7a5.css | 3 --- ...ddba4b6d570ac1bc4318f0e84d522fe2c02eb6fbb594ece6f7a5.css.gz | 3 --- 5 files changed, 7 insertions(+), 7 deletions(-) create mode 100644 public/assets/application-df0385d47e55aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css create mode 100644 public/assets/application-df0385d47e55aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css.gz delete mode 100644 public/assets/application-e103c526f0f1ddba4b6d570ac1bc4318f0e84d522fe2c02eb6fbb594ece6f7a5.css delete mode 100644 public/assets/application-e103c526f0f1ddba4b6d570ac1bc4318f0e84d522fe2c02eb6fbb594ece6f7a5.css.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 247f6c56..416af292 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1fb42e911e5a7b4fed24660e36b1702ff6995aaa506e6da6a9df0078251e34d7 +oid sha256:37a80248d53c089ef603dbf365c2d3c5281a23d72843f270f4b198ed29fb77bc size 15111 diff --git a/public/assets/application-df0385d47e55aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css b/public/assets/application-df0385d47e55aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css new file mode 100644 index 00000000..35f61aec --- /dev/null +++ b/public/assets/application-df0385d47e55aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9a0b60c18452d62be9bb14d88398124b4edee2aa76d4bb6c529b18042b62ca7 +size 238837 diff --git a/public/assets/application-df0385d47e55aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css.gz b/public/assets/application-df0385d47e55aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css.gz new file mode 100644 index 00000000..66470122 --- /dev/null +++ b/public/assets/application-df0385d47e55aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a72678068488f0074c34beea6297b0663e74fba1147dbd664fbc6d688cd4b814 +size 33071 diff --git a/public/assets/application-e103c526f0f1ddba4b6d570ac1bc4318f0e84d522fe2c02eb6fbb594ece6f7a5.css b/public/assets/application-e103c526f0f1ddba4b6d570ac1bc4318f0e84d522fe2c02eb6fbb594ece6f7a5.css deleted file mode 100644 index c79ec1f0..00000000 --- a/public/assets/application-e103c526f0f1ddba4b6d570ac1bc4318f0e84d522fe2c02eb6fbb594ece6f7a5.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ba248b242410bc53b4f4ad49b40a6e80f27c1c1586465e3cebf6ff085ec9ba51 -size 236004 diff --git a/public/assets/application-e103c526f0f1ddba4b6d570ac1bc4318f0e84d522fe2c02eb6fbb594ece6f7a5.css.gz b/public/assets/application-e103c526f0f1ddba4b6d570ac1bc4318f0e84d522fe2c02eb6fbb594ece6f7a5.css.gz deleted file mode 100644 index ab063359..00000000 --- a/public/assets/application-e103c526f0f1ddba4b6d570ac1bc4318f0e84d522fe2c02eb6fbb594ece6f7a5.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:24baa40e59b12846a5f48ca19176e606fa5fa9b6ef58f3a6e45a22c0a88b6d68 -size 32740 From 19d9c0b6c959cbccb56eda2b899a8e89f8f1c44d Mon Sep 17 00:00:00 2001 From: f Date: Fri, 22 Mar 2024 18:50:14 -0300 Subject: [PATCH 400/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 4 ++-- public/packs/js/application-8ce9779d857bfff53532.js | 3 +++ ...SE.txt => application-8ce9779d857bfff53532.js.LICENSE.txt} | 0 public/packs/js/application-8ce9779d857bfff53532.js.br | 3 +++ public/packs/js/application-8ce9779d857bfff53532.js.gz | 3 +++ public/packs/js/application-8ce9779d857bfff53532.js.map | 3 +++ public/packs/js/application-8ce9779d857bfff53532.js.map.br | 3 +++ public/packs/js/application-8ce9779d857bfff53532.js.map.gz | 3 +++ public/packs/js/application-eff7e393ce95ecf9b900.js | 3 --- public/packs/js/application-eff7e393ce95ecf9b900.js.br | 3 --- public/packs/js/application-eff7e393ce95ecf9b900.js.gz | 3 --- public/packs/js/application-eff7e393ce95ecf9b900.js.map | 3 --- public/packs/js/application-eff7e393ce95ecf9b900.js.map.br | 3 --- public/packs/js/application-eff7e393ce95ecf9b900.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 2 +- public/packs/manifest.json.gz | 2 +- 17 files changed, 23 insertions(+), 23 deletions(-) create mode 100644 public/packs/js/application-8ce9779d857bfff53532.js rename public/packs/js/{application-eff7e393ce95ecf9b900.js.LICENSE.txt => application-8ce9779d857bfff53532.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-8ce9779d857bfff53532.js.br create mode 100644 public/packs/js/application-8ce9779d857bfff53532.js.gz create mode 100644 public/packs/js/application-8ce9779d857bfff53532.js.map create mode 100644 public/packs/js/application-8ce9779d857bfff53532.js.map.br create mode 100644 public/packs/js/application-8ce9779d857bfff53532.js.map.gz delete mode 100644 public/packs/js/application-eff7e393ce95ecf9b900.js delete mode 100644 public/packs/js/application-eff7e393ce95ecf9b900.js.br delete mode 100644 public/packs/js/application-eff7e393ce95ecf9b900.js.gz delete mode 100644 public/packs/js/application-eff7e393ce95ecf9b900.js.map delete mode 100644 public/packs/js/application-eff7e393ce95ecf9b900.js.map.br delete mode 100644 public/packs/js/application-eff7e393ce95ecf9b900.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 416af292..45b7c422 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:37a80248d53c089ef603dbf365c2d3c5281a23d72843f270f4b198ed29fb77bc -size 15111 +oid sha256:d15ecdd304bac8be507dbba7a3d0aa522e7b6f0e7d6a357df4d3a8d828b618c2 +size 10243 diff --git a/public/packs/js/application-8ce9779d857bfff53532.js b/public/packs/js/application-8ce9779d857bfff53532.js new file mode 100644 index 00000000..134f014c --- /dev/null +++ b/public/packs/js/application-8ce9779d857bfff53532.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:632234e427da97d723efe4061b3f432aade159b51949167abeca34826bcff5ea +size 1581325 diff --git a/public/packs/js/application-eff7e393ce95ecf9b900.js.LICENSE.txt b/public/packs/js/application-8ce9779d857bfff53532.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-eff7e393ce95ecf9b900.js.LICENSE.txt rename to public/packs/js/application-8ce9779d857bfff53532.js.LICENSE.txt diff --git a/public/packs/js/application-8ce9779d857bfff53532.js.br b/public/packs/js/application-8ce9779d857bfff53532.js.br new file mode 100644 index 00000000..610a9646 --- /dev/null +++ b/public/packs/js/application-8ce9779d857bfff53532.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ac34b76ab95f467a2ffb3c8689266f7706ca00172d130302386ee08b22dede2 +size 347614 diff --git a/public/packs/js/application-8ce9779d857bfff53532.js.gz b/public/packs/js/application-8ce9779d857bfff53532.js.gz new file mode 100644 index 00000000..5886b434 --- /dev/null +++ b/public/packs/js/application-8ce9779d857bfff53532.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:73c9f3bd667a29d7026309e5d31ab91e45b9e10e186d9b8abfa3e3a12ff3bf0c +size 458426 diff --git a/public/packs/js/application-8ce9779d857bfff53532.js.map b/public/packs/js/application-8ce9779d857bfff53532.js.map new file mode 100644 index 00000000..e6c66405 --- /dev/null +++ b/public/packs/js/application-8ce9779d857bfff53532.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2bb17fb9d66535cf55c84efb3c56242050c1e7bc168f44b3ff496df9fe0beb67 +size 6205529 diff --git a/public/packs/js/application-8ce9779d857bfff53532.js.map.br b/public/packs/js/application-8ce9779d857bfff53532.js.map.br new file mode 100644 index 00000000..5eeaead6 --- /dev/null +++ b/public/packs/js/application-8ce9779d857bfff53532.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0598c9fd4ddf8878e5ed6ee980ac35586b305eb9b359605d713283bfbeb19b68 +size 1328792 diff --git a/public/packs/js/application-8ce9779d857bfff53532.js.map.gz b/public/packs/js/application-8ce9779d857bfff53532.js.map.gz new file mode 100644 index 00000000..48ae8089 --- /dev/null +++ b/public/packs/js/application-8ce9779d857bfff53532.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9a2ba478f9e5abf2712b9b68a9994f668acb52006aac34189a813b67f4be657 +size 1640525 diff --git a/public/packs/js/application-eff7e393ce95ecf9b900.js b/public/packs/js/application-eff7e393ce95ecf9b900.js deleted file mode 100644 index 913f7ed6..00000000 --- a/public/packs/js/application-eff7e393ce95ecf9b900.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e3440b36c5db64c1084ff4984ad0ff0e440f9e7f96ef6c1a6d23dd46fcc4fc34 -size 1523013 diff --git a/public/packs/js/application-eff7e393ce95ecf9b900.js.br b/public/packs/js/application-eff7e393ce95ecf9b900.js.br deleted file mode 100644 index c98d3dd6..00000000 --- a/public/packs/js/application-eff7e393ce95ecf9b900.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b13ef3d5e0792eb59d5e63d224fb20f37952eeca26223bd3d523d3adc18de9fc -size 333769 diff --git a/public/packs/js/application-eff7e393ce95ecf9b900.js.gz b/public/packs/js/application-eff7e393ce95ecf9b900.js.gz deleted file mode 100644 index f9cf565f..00000000 --- a/public/packs/js/application-eff7e393ce95ecf9b900.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a0602a43649ddafbebd01d991451f7ef6b1ce5d2d33a58a60fb8ace6935f0d47 -size 441624 diff --git a/public/packs/js/application-eff7e393ce95ecf9b900.js.map b/public/packs/js/application-eff7e393ce95ecf9b900.js.map deleted file mode 100644 index 522d68e2..00000000 --- a/public/packs/js/application-eff7e393ce95ecf9b900.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f76a22d1218344755aad1b6feaaff4027cdcf8dc8a36e40057039fbce1191535 -size 5993093 diff --git a/public/packs/js/application-eff7e393ce95ecf9b900.js.map.br b/public/packs/js/application-eff7e393ce95ecf9b900.js.map.br deleted file mode 100644 index 59e88021..00000000 --- a/public/packs/js/application-eff7e393ce95ecf9b900.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ed1577e4439cfa1a829d2ebfa90a242a35c0f6b3552aa7c157c7aba416e1ea4c -size 1281600 diff --git a/public/packs/js/application-eff7e393ce95ecf9b900.js.map.gz b/public/packs/js/application-eff7e393ce95ecf9b900.js.map.gz deleted file mode 100644 index 6fd917d3..00000000 --- a/public/packs/js/application-eff7e393ce95ecf9b900.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:cc349e2e206c9ab8c809f5b3c65408abe4366b1d4b9d9fd4e12e02f9eb313978 -size 1585028 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 2dcf2333..189f4782 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:75288aa35e3342e83e5afeb0e324f251b19259954163412c2b259183d1be2bb8 +oid sha256:1a206bab3fa22fb96428b3c46685fa61a059f9db62e3df47037537cd68782c1f size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index d182a62b..7222d4cd 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:30acde91e7a69507c9297823826161ada92641837b5df30edb50f3900ae3718a +oid sha256:923d3edcf9cd76e822ca27c1eafcbdaa8b3f1ed47d25ace25e19b6c416d958f5 size 320 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 46da36ce..bc4ea39d 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e3b87c3e6311e1f3d15ecd5b88d15e1f87b6bd582f3a29f91a38901e323ee48b +oid sha256:a73c5c3f9d5bbecd9a63d4088c029ea835becbd0a6496b7a6f6ca6505d2095c5 size 365 From 6a4c7b35a6650b25b642f00f5f1943fa52bb688e Mon Sep 17 00:00:00 2001 From: f Date: Mon, 25 Mar 2024 15:39:21 -0300 Subject: [PATCH 401/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-59000072ac88ea7cfdf0.js | 3 +++ .../packs/js/application-59000072ac88ea7cfdf0.js.LICENSE.txt | 3 +++ public/packs/js/application-59000072ac88ea7cfdf0.js.br | 3 +++ public/packs/js/application-59000072ac88ea7cfdf0.js.gz | 3 +++ public/packs/js/application-59000072ac88ea7cfdf0.js.map | 3 +++ public/packs/js/application-59000072ac88ea7cfdf0.js.map.br | 3 +++ public/packs/js/application-59000072ac88ea7cfdf0.js.map.gz | 3 +++ public/packs/js/application-8ce9779d857bfff53532.js | 3 --- .../packs/js/application-8ce9779d857bfff53532.js.LICENSE.txt | 3 --- public/packs/js/application-8ce9779d857bfff53532.js.br | 3 --- public/packs/js/application-8ce9779d857bfff53532.js.gz | 3 --- public/packs/js/application-8ce9779d857bfff53532.js.map | 3 --- public/packs/js/application-8ce9779d857bfff53532.js.map.br | 3 --- public/packs/js/application-8ce9779d857bfff53532.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 2 +- public/packs/manifest.json.gz | 2 +- 18 files changed, 25 insertions(+), 25 deletions(-) create mode 100644 public/packs/js/application-59000072ac88ea7cfdf0.js create mode 100644 public/packs/js/application-59000072ac88ea7cfdf0.js.LICENSE.txt create mode 100644 public/packs/js/application-59000072ac88ea7cfdf0.js.br create mode 100644 public/packs/js/application-59000072ac88ea7cfdf0.js.gz create mode 100644 public/packs/js/application-59000072ac88ea7cfdf0.js.map create mode 100644 public/packs/js/application-59000072ac88ea7cfdf0.js.map.br create mode 100644 public/packs/js/application-59000072ac88ea7cfdf0.js.map.gz delete mode 100644 public/packs/js/application-8ce9779d857bfff53532.js delete mode 100644 public/packs/js/application-8ce9779d857bfff53532.js.LICENSE.txt delete mode 100644 public/packs/js/application-8ce9779d857bfff53532.js.br delete mode 100644 public/packs/js/application-8ce9779d857bfff53532.js.gz delete mode 100644 public/packs/js/application-8ce9779d857bfff53532.js.map delete mode 100644 public/packs/js/application-8ce9779d857bfff53532.js.map.br delete mode 100644 public/packs/js/application-8ce9779d857bfff53532.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 45b7c422..01faf5f2 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d15ecdd304bac8be507dbba7a3d0aa522e7b6f0e7d6a357df4d3a8d828b618c2 +oid sha256:9f830e40700ddb47b0043c2c581794208fea4c9dc11727d541670debcfd7c2c9 size 10243 diff --git a/public/packs/js/application-59000072ac88ea7cfdf0.js b/public/packs/js/application-59000072ac88ea7cfdf0.js new file mode 100644 index 00000000..85e8bc48 --- /dev/null +++ b/public/packs/js/application-59000072ac88ea7cfdf0.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e3c7df40169eed5d4f2c2adffb8ebba8e727ee8703592deb60022c6df0fd441 +size 1585043 diff --git a/public/packs/js/application-59000072ac88ea7cfdf0.js.LICENSE.txt b/public/packs/js/application-59000072ac88ea7cfdf0.js.LICENSE.txt new file mode 100644 index 00000000..dfe27ce7 --- /dev/null +++ b/public/packs/js/application-59000072ac88ea7cfdf0.js.LICENSE.txt @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7073b760337ff91f74933ece915ce12f8653f990f607a0925cc002dd610fa0f9 +size 1097 diff --git a/public/packs/js/application-59000072ac88ea7cfdf0.js.br b/public/packs/js/application-59000072ac88ea7cfdf0.js.br new file mode 100644 index 00000000..976f61bb --- /dev/null +++ b/public/packs/js/application-59000072ac88ea7cfdf0.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1c767c98f29763e57d44dead8ab2e447791805755e28a1f494a2c27058a67a6 +size 348307 diff --git a/public/packs/js/application-59000072ac88ea7cfdf0.js.gz b/public/packs/js/application-59000072ac88ea7cfdf0.js.gz new file mode 100644 index 00000000..4cda8f05 --- /dev/null +++ b/public/packs/js/application-59000072ac88ea7cfdf0.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0bd21d85066920bc13ff25dd26d3a72cedbb7b70427597cdddcc0f993a8382a3 +size 459013 diff --git a/public/packs/js/application-59000072ac88ea7cfdf0.js.map b/public/packs/js/application-59000072ac88ea7cfdf0.js.map new file mode 100644 index 00000000..677b00fd --- /dev/null +++ b/public/packs/js/application-59000072ac88ea7cfdf0.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dba672cc8f6249baae8699f7e86d20bfb7debf94a23603c7cddd5fce828f1240 +size 6214044 diff --git a/public/packs/js/application-59000072ac88ea7cfdf0.js.map.br b/public/packs/js/application-59000072ac88ea7cfdf0.js.map.br new file mode 100644 index 00000000..f9d1486b --- /dev/null +++ b/public/packs/js/application-59000072ac88ea7cfdf0.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fab14fd46a3cf22aad2c5e357018077b0b74edd3a413a7623452d3fc72bdb6b +size 1330633 diff --git a/public/packs/js/application-59000072ac88ea7cfdf0.js.map.gz b/public/packs/js/application-59000072ac88ea7cfdf0.js.map.gz new file mode 100644 index 00000000..7e37de87 --- /dev/null +++ b/public/packs/js/application-59000072ac88ea7cfdf0.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea0ff80c7f27a28e2dacd239f5f93d6c79b5b3a4096105fbc8822db245ced82e +size 1643234 diff --git a/public/packs/js/application-8ce9779d857bfff53532.js b/public/packs/js/application-8ce9779d857bfff53532.js deleted file mode 100644 index 134f014c..00000000 --- a/public/packs/js/application-8ce9779d857bfff53532.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:632234e427da97d723efe4061b3f432aade159b51949167abeca34826bcff5ea -size 1581325 diff --git a/public/packs/js/application-8ce9779d857bfff53532.js.LICENSE.txt b/public/packs/js/application-8ce9779d857bfff53532.js.LICENSE.txt deleted file mode 100644 index 979d1ab9..00000000 --- a/public/packs/js/application-8ce9779d857bfff53532.js.LICENSE.txt +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c3b9ae1697c4b8a404afe77afe035de28b7f4880e9f52caac82620bb8d8ed495 -size 854 diff --git a/public/packs/js/application-8ce9779d857bfff53532.js.br b/public/packs/js/application-8ce9779d857bfff53532.js.br deleted file mode 100644 index 610a9646..00000000 --- a/public/packs/js/application-8ce9779d857bfff53532.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2ac34b76ab95f467a2ffb3c8689266f7706ca00172d130302386ee08b22dede2 -size 347614 diff --git a/public/packs/js/application-8ce9779d857bfff53532.js.gz b/public/packs/js/application-8ce9779d857bfff53532.js.gz deleted file mode 100644 index 5886b434..00000000 --- a/public/packs/js/application-8ce9779d857bfff53532.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:73c9f3bd667a29d7026309e5d31ab91e45b9e10e186d9b8abfa3e3a12ff3bf0c -size 458426 diff --git a/public/packs/js/application-8ce9779d857bfff53532.js.map b/public/packs/js/application-8ce9779d857bfff53532.js.map deleted file mode 100644 index e6c66405..00000000 --- a/public/packs/js/application-8ce9779d857bfff53532.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2bb17fb9d66535cf55c84efb3c56242050c1e7bc168f44b3ff496df9fe0beb67 -size 6205529 diff --git a/public/packs/js/application-8ce9779d857bfff53532.js.map.br b/public/packs/js/application-8ce9779d857bfff53532.js.map.br deleted file mode 100644 index 5eeaead6..00000000 --- a/public/packs/js/application-8ce9779d857bfff53532.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0598c9fd4ddf8878e5ed6ee980ac35586b305eb9b359605d713283bfbeb19b68 -size 1328792 diff --git a/public/packs/js/application-8ce9779d857bfff53532.js.map.gz b/public/packs/js/application-8ce9779d857bfff53532.js.map.gz deleted file mode 100644 index 48ae8089..00000000 --- a/public/packs/js/application-8ce9779d857bfff53532.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b9a2ba478f9e5abf2712b9b68a9994f668acb52006aac34189a813b67f4be657 -size 1640525 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 189f4782..a4f31bf2 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1a206bab3fa22fb96428b3c46685fa61a059f9db62e3df47037537cd68782c1f +oid sha256:1539afb4cbd30b30ae94a220fd843b2d9cbdbc16acaaaa37728a65393179c3ca size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 7222d4cd..82a0f36c 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:923d3edcf9cd76e822ca27c1eafcbdaa8b3f1ed47d25ace25e19b6c416d958f5 +oid sha256:81c0efe3055c75fe72e669f1adbacae976854a45ad775a95bb29b3bb6b1c91bf size 320 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index bc4ea39d..e64e01ac 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a73c5c3f9d5bbecd9a63d4088c029ea835becbd0a6496b7a6f6ca6505d2095c5 +oid sha256:4c2b4208ae455ce6efe90a63864e2d3e62bbae515dd4b0073c10c97ca23a4bcf size 365 From 5133eb102234b4f5fb323b39a20f7173dc9cfc4f Mon Sep 17 00:00:00 2001 From: f Date: Tue, 26 Mar 2024 12:43:58 -0300 Subject: [PATCH 402/699] fix: error de sintaxis --- app/services/site_service.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 934a73f4..d148185a 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -95,7 +95,7 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do Site.transaction do raise ActiveRecord::Rollback if File.exists?(site.path) - FileUtils.mv (site.path_was, site.path) + FileUtils.mv(site.path_was, site.path) moved = true ActiveStorage::Blob.where(service_name: site.name_was).update_all(service_name: site.name) site.save From ad7f55adf73a1fb0c27ed8473d982e7c0e2d3fba Mon Sep 17 00:00:00 2001 From: f Date: Tue, 26 Mar 2024 12:44:07 -0300 Subject: [PATCH 403/699] chore: rubocop --- app/services/site_service.rb | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/app/services/site_service.rb b/app/services/site_service.rb index d148185a..8c0a6833 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -89,19 +89,21 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do end def rename(name) - return if name == site.name + return if name == site.name + moved = false - site.name = name + site.name = name Site.transaction do - raise ActiveRecord::Rollback if File.exists?(site.path) + raise ActiveRecord::Rollback if File.exist?(site.path) + FileUtils.mv(site.path_was, site.path) moved = true ActiveStorage::Blob.where(service_name: site.name_was).update_all(service_name: site.name) site.save - rescue StandardError - FileUtils.mv(site.path, site.path_was) if moved - raise + rescue StandardError + FileUtils.mv(site.path, site.path_was) if moved + raise end end @@ -239,9 +241,7 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do end end - private - - def with_all_locales(&block) + def with_all_locales site.locales.map do |locale| next unless I18n.available_locales.include? locale From 729160f886151c29dc33afb82ec99d6d05f3d61c Mon Sep 17 00:00:00 2001 From: f Date: Wed, 10 Apr 2024 13:00:37 -0300 Subject: [PATCH 404/699] ci: js --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-59000072ac88ea7cfdf0.js | 3 --- public/packs/js/application-59000072ac88ea7cfdf0.js.br | 3 --- public/packs/js/application-59000072ac88ea7cfdf0.js.gz | 3 --- public/packs/js/application-59000072ac88ea7cfdf0.js.map | 3 --- public/packs/js/application-59000072ac88ea7cfdf0.js.map.br | 3 --- public/packs/js/application-59000072ac88ea7cfdf0.js.map.gz | 3 --- public/packs/js/application-64320f2d97165dadc783.js | 3 +++ ...SE.txt => application-64320f2d97165dadc783.js.LICENSE.txt} | 0 public/packs/js/application-64320f2d97165dadc783.js.br | 3 +++ public/packs/js/application-64320f2d97165dadc783.js.gz | 3 +++ public/packs/js/application-64320f2d97165dadc783.js.map | 3 +++ public/packs/js/application-64320f2d97165dadc783.js.map.br | 3 +++ public/packs/js/application-64320f2d97165dadc783.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 2 +- 17 files changed, 23 insertions(+), 23 deletions(-) delete mode 100644 public/packs/js/application-59000072ac88ea7cfdf0.js delete mode 100644 public/packs/js/application-59000072ac88ea7cfdf0.js.br delete mode 100644 public/packs/js/application-59000072ac88ea7cfdf0.js.gz delete mode 100644 public/packs/js/application-59000072ac88ea7cfdf0.js.map delete mode 100644 public/packs/js/application-59000072ac88ea7cfdf0.js.map.br delete mode 100644 public/packs/js/application-59000072ac88ea7cfdf0.js.map.gz create mode 100644 public/packs/js/application-64320f2d97165dadc783.js rename public/packs/js/{application-59000072ac88ea7cfdf0.js.LICENSE.txt => application-64320f2d97165dadc783.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-64320f2d97165dadc783.js.br create mode 100644 public/packs/js/application-64320f2d97165dadc783.js.gz create mode 100644 public/packs/js/application-64320f2d97165dadc783.js.map create mode 100644 public/packs/js/application-64320f2d97165dadc783.js.map.br create mode 100644 public/packs/js/application-64320f2d97165dadc783.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 01faf5f2..e9bcad87 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9f830e40700ddb47b0043c2c581794208fea4c9dc11727d541670debcfd7c2c9 +oid sha256:03dd049e3178c5744ed431cbd4780a48bd90e71d3ee5a0f5daec15891f1c95cf size 10243 diff --git a/public/packs/js/application-59000072ac88ea7cfdf0.js b/public/packs/js/application-59000072ac88ea7cfdf0.js deleted file mode 100644 index 85e8bc48..00000000 --- a/public/packs/js/application-59000072ac88ea7cfdf0.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5e3c7df40169eed5d4f2c2adffb8ebba8e727ee8703592deb60022c6df0fd441 -size 1585043 diff --git a/public/packs/js/application-59000072ac88ea7cfdf0.js.br b/public/packs/js/application-59000072ac88ea7cfdf0.js.br deleted file mode 100644 index 976f61bb..00000000 --- a/public/packs/js/application-59000072ac88ea7cfdf0.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e1c767c98f29763e57d44dead8ab2e447791805755e28a1f494a2c27058a67a6 -size 348307 diff --git a/public/packs/js/application-59000072ac88ea7cfdf0.js.gz b/public/packs/js/application-59000072ac88ea7cfdf0.js.gz deleted file mode 100644 index 4cda8f05..00000000 --- a/public/packs/js/application-59000072ac88ea7cfdf0.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0bd21d85066920bc13ff25dd26d3a72cedbb7b70427597cdddcc0f993a8382a3 -size 459013 diff --git a/public/packs/js/application-59000072ac88ea7cfdf0.js.map b/public/packs/js/application-59000072ac88ea7cfdf0.js.map deleted file mode 100644 index 677b00fd..00000000 --- a/public/packs/js/application-59000072ac88ea7cfdf0.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:dba672cc8f6249baae8699f7e86d20bfb7debf94a23603c7cddd5fce828f1240 -size 6214044 diff --git a/public/packs/js/application-59000072ac88ea7cfdf0.js.map.br b/public/packs/js/application-59000072ac88ea7cfdf0.js.map.br deleted file mode 100644 index f9d1486b..00000000 --- a/public/packs/js/application-59000072ac88ea7cfdf0.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5fab14fd46a3cf22aad2c5e357018077b0b74edd3a413a7623452d3fc72bdb6b -size 1330633 diff --git a/public/packs/js/application-59000072ac88ea7cfdf0.js.map.gz b/public/packs/js/application-59000072ac88ea7cfdf0.js.map.gz deleted file mode 100644 index 7e37de87..00000000 --- a/public/packs/js/application-59000072ac88ea7cfdf0.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ea0ff80c7f27a28e2dacd239f5f93d6c79b5b3a4096105fbc8822db245ced82e -size 1643234 diff --git a/public/packs/js/application-64320f2d97165dadc783.js b/public/packs/js/application-64320f2d97165dadc783.js new file mode 100644 index 00000000..0b8e5864 --- /dev/null +++ b/public/packs/js/application-64320f2d97165dadc783.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48e6a8dec67163a57011b5bf734a0902af5bd7db0c569c77913a5d98bb62c072 +size 1586332 diff --git a/public/packs/js/application-59000072ac88ea7cfdf0.js.LICENSE.txt b/public/packs/js/application-64320f2d97165dadc783.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-59000072ac88ea7cfdf0.js.LICENSE.txt rename to public/packs/js/application-64320f2d97165dadc783.js.LICENSE.txt diff --git a/public/packs/js/application-64320f2d97165dadc783.js.br b/public/packs/js/application-64320f2d97165dadc783.js.br new file mode 100644 index 00000000..6b89418f --- /dev/null +++ b/public/packs/js/application-64320f2d97165dadc783.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f676648e1833cf515e18c838d76f7446ad3113f5119f6ea2f2759f1c2dfb7204 +size 348272 diff --git a/public/packs/js/application-64320f2d97165dadc783.js.gz b/public/packs/js/application-64320f2d97165dadc783.js.gz new file mode 100644 index 00000000..92b998e9 --- /dev/null +++ b/public/packs/js/application-64320f2d97165dadc783.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91248b78649037593760f2d6eb89347d86c7b8ecac8c0da5a414ce598fdb035e +size 459471 diff --git a/public/packs/js/application-64320f2d97165dadc783.js.map b/public/packs/js/application-64320f2d97165dadc783.js.map new file mode 100644 index 00000000..31694df5 --- /dev/null +++ b/public/packs/js/application-64320f2d97165dadc783.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9deafad1bd379f4547d46b2853879ab309a160d2b4c5cf8ae6e99898ad680545 +size 6214519 diff --git a/public/packs/js/application-64320f2d97165dadc783.js.map.br b/public/packs/js/application-64320f2d97165dadc783.js.map.br new file mode 100644 index 00000000..694eba56 --- /dev/null +++ b/public/packs/js/application-64320f2d97165dadc783.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8dfc6ec247676e09320c0a1efe5df976b2a8273fe8f11a22463513392ce4fae7 +size 1330304 diff --git a/public/packs/js/application-64320f2d97165dadc783.js.map.gz b/public/packs/js/application-64320f2d97165dadc783.js.map.gz new file mode 100644 index 00000000..bc31db8d --- /dev/null +++ b/public/packs/js/application-64320f2d97165dadc783.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8eef97c1c8bb831465a0d246a00e65756fbce9c8d96308c88f548023ed58fe57 +size 1643468 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index a4f31bf2..861d474d 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1539afb4cbd30b30ae94a220fd843b2d9cbdbc16acaaaa37728a65393179c3ca +oid sha256:429212b43c16d08a56f475191d2a9aedcc29bbd691f423b63598247e79db4bb8 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 82a0f36c..e75d9d53 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:81c0efe3055c75fe72e669f1adbacae976854a45ad775a95bb29b3bb6b1c91bf -size 320 +oid sha256:778ccec2da3e04ffa3ace32dd60989fbe6be011a9f7a8ccb5535513eb0e8877f +size 322 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index e64e01ac..ef3083f4 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4c2b4208ae455ce6efe90a63864e2d3e62bbae515dd4b0073c10c97ca23a4bcf +oid sha256:aeb021b62c73d4f000ac37f7ac4e41392ff5a2eae351d4eed7f2fa61fff4fc62 size 365 From c90143f675127c121482d61d46e700c575c3d900 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 12 Apr 2024 10:10:01 -0300 Subject: [PATCH 405/699] ci: build js [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/css/application-1224e21e.css | 3 --- public/packs/css/application-1224e21e.css.br | 3 --- public/packs/css/application-1224e21e.css.gz | 3 --- public/packs/css/application-5688882d.css | 3 +++ public/packs/css/application-5688882d.css.br | 3 +++ public/packs/css/application-5688882d.css.gz | 3 +++ public/packs/js/application-48f7a46621432cd8e15e.js | 3 +++ ...SE.txt => application-48f7a46621432cd8e15e.js.LICENSE.txt} | 0 public/packs/js/application-48f7a46621432cd8e15e.js.br | 3 +++ public/packs/js/application-48f7a46621432cd8e15e.js.gz | 3 +++ public/packs/js/application-48f7a46621432cd8e15e.js.map | 3 +++ public/packs/js/application-48f7a46621432cd8e15e.js.map.br | 3 +++ public/packs/js/application-48f7a46621432cd8e15e.js.map.gz | 3 +++ public/packs/js/application-64320f2d97165dadc783.js | 3 --- public/packs/js/application-64320f2d97165dadc783.js.br | 3 --- public/packs/js/application-64320f2d97165dadc783.js.gz | 3 --- public/packs/js/application-64320f2d97165dadc783.js.map | 3 --- public/packs/js/application-64320f2d97165dadc783.js.map.br | 3 --- public/packs/js/application-64320f2d97165dadc783.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 23 files changed, 33 insertions(+), 33 deletions(-) delete mode 100644 public/packs/css/application-1224e21e.css delete mode 100644 public/packs/css/application-1224e21e.css.br delete mode 100644 public/packs/css/application-1224e21e.css.gz create mode 100644 public/packs/css/application-5688882d.css create mode 100644 public/packs/css/application-5688882d.css.br create mode 100644 public/packs/css/application-5688882d.css.gz create mode 100644 public/packs/js/application-48f7a46621432cd8e15e.js rename public/packs/js/{application-64320f2d97165dadc783.js.LICENSE.txt => application-48f7a46621432cd8e15e.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-48f7a46621432cd8e15e.js.br create mode 100644 public/packs/js/application-48f7a46621432cd8e15e.js.gz create mode 100644 public/packs/js/application-48f7a46621432cd8e15e.js.map create mode 100644 public/packs/js/application-48f7a46621432cd8e15e.js.map.br create mode 100644 public/packs/js/application-48f7a46621432cd8e15e.js.map.gz delete mode 100644 public/packs/js/application-64320f2d97165dadc783.js delete mode 100644 public/packs/js/application-64320f2d97165dadc783.js.br delete mode 100644 public/packs/js/application-64320f2d97165dadc783.js.gz delete mode 100644 public/packs/js/application-64320f2d97165dadc783.js.map delete mode 100644 public/packs/js/application-64320f2d97165dadc783.js.map.br delete mode 100644 public/packs/js/application-64320f2d97165dadc783.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index e9bcad87..67d1b3ad 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:03dd049e3178c5744ed431cbd4780a48bd90e71d3ee5a0f5daec15891f1c95cf +oid sha256:18e19846c222fa317753bab1cb16284d41d70cd4329ca7dd6ef7d93edba061f6 size 10243 diff --git a/public/packs/css/application-1224e21e.css b/public/packs/css/application-1224e21e.css deleted file mode 100644 index 390ac1f2..00000000 --- a/public/packs/css/application-1224e21e.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a7ffc74f9219623a13902d9ac806b9e71cfdabc2428e1f6ae4015da56cb7c7d9 -size 49314 diff --git a/public/packs/css/application-1224e21e.css.br b/public/packs/css/application-1224e21e.css.br deleted file mode 100644 index 1f5776e2..00000000 --- a/public/packs/css/application-1224e21e.css.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:68809099d5fd771490c8eee922fe59c2be223a7b3ea6bec6889bc26380dcc788 -size 10017 diff --git a/public/packs/css/application-1224e21e.css.gz b/public/packs/css/application-1224e21e.css.gz deleted file mode 100644 index 3784a199..00000000 --- a/public/packs/css/application-1224e21e.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8058f9e1c5cfdf8de6d896fe9dd138b527e2409e1c467f79b376f75fa0c24b76 -size 12355 diff --git a/public/packs/css/application-5688882d.css b/public/packs/css/application-5688882d.css new file mode 100644 index 00000000..cca00ffe --- /dev/null +++ b/public/packs/css/application-5688882d.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:185c95d8b69c7b6265a5e7a68ba926c2bd1f768fda8cf3be3368137ef6357730 +size 50273 diff --git a/public/packs/css/application-5688882d.css.br b/public/packs/css/application-5688882d.css.br new file mode 100644 index 00000000..6e13a79f --- /dev/null +++ b/public/packs/css/application-5688882d.css.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f5d0b5074f2b7fbbc9883beb27da4b4ca91652d3a0c931896a2fcaf97ec8142 +size 10185 diff --git a/public/packs/css/application-5688882d.css.gz b/public/packs/css/application-5688882d.css.gz new file mode 100644 index 00000000..aced299a --- /dev/null +++ b/public/packs/css/application-5688882d.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a7df2acc6a691d864ccff15bc7d86c6a19a9f780d92d6fd9d1e6db6ff5e25ec +size 12559 diff --git a/public/packs/js/application-48f7a46621432cd8e15e.js b/public/packs/js/application-48f7a46621432cd8e15e.js new file mode 100644 index 00000000..0ef56745 --- /dev/null +++ b/public/packs/js/application-48f7a46621432cd8e15e.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebd71e2d7b7d66cc3155e74940e3cd853e2bf12047e263456e6e2712ce43c769 +size 1643139 diff --git a/public/packs/js/application-64320f2d97165dadc783.js.LICENSE.txt b/public/packs/js/application-48f7a46621432cd8e15e.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-64320f2d97165dadc783.js.LICENSE.txt rename to public/packs/js/application-48f7a46621432cd8e15e.js.LICENSE.txt diff --git a/public/packs/js/application-48f7a46621432cd8e15e.js.br b/public/packs/js/application-48f7a46621432cd8e15e.js.br new file mode 100644 index 00000000..ab0d6ad0 --- /dev/null +++ b/public/packs/js/application-48f7a46621432cd8e15e.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e267881ea175895aae7001a482e74753503014f459c38f78a718636c86e82a0 +size 366408 diff --git a/public/packs/js/application-48f7a46621432cd8e15e.js.gz b/public/packs/js/application-48f7a46621432cd8e15e.js.gz new file mode 100644 index 00000000..1e547ce7 --- /dev/null +++ b/public/packs/js/application-48f7a46621432cd8e15e.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e2fd5cddd049ee4751863439fcfefdc9b02bdf744c49c70f6d0355e2bdc4103 +size 482852 diff --git a/public/packs/js/application-48f7a46621432cd8e15e.js.map b/public/packs/js/application-48f7a46621432cd8e15e.js.map new file mode 100644 index 00000000..a5a86f8a --- /dev/null +++ b/public/packs/js/application-48f7a46621432cd8e15e.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f6d879205c3f7ab716e48ad0f5253b0caaa31aed4152596fa1726241fcaadad +size 6384158 diff --git a/public/packs/js/application-48f7a46621432cd8e15e.js.map.br b/public/packs/js/application-48f7a46621432cd8e15e.js.map.br new file mode 100644 index 00000000..61c0702a --- /dev/null +++ b/public/packs/js/application-48f7a46621432cd8e15e.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:995c32093d20abfcecbf8d9967994c89a9fdf7ff0ec9c39edc650e42489e073a +size 1374477 diff --git a/public/packs/js/application-48f7a46621432cd8e15e.js.map.gz b/public/packs/js/application-48f7a46621432cd8e15e.js.map.gz new file mode 100644 index 00000000..7db253e1 --- /dev/null +++ b/public/packs/js/application-48f7a46621432cd8e15e.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6cba1a533f9951229543d2ed68b2d4d4d2b7650fb663be7e0d3861424805cb19 +size 1699798 diff --git a/public/packs/js/application-64320f2d97165dadc783.js b/public/packs/js/application-64320f2d97165dadc783.js deleted file mode 100644 index 0b8e5864..00000000 --- a/public/packs/js/application-64320f2d97165dadc783.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:48e6a8dec67163a57011b5bf734a0902af5bd7db0c569c77913a5d98bb62c072 -size 1586332 diff --git a/public/packs/js/application-64320f2d97165dadc783.js.br b/public/packs/js/application-64320f2d97165dadc783.js.br deleted file mode 100644 index 6b89418f..00000000 --- a/public/packs/js/application-64320f2d97165dadc783.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f676648e1833cf515e18c838d76f7446ad3113f5119f6ea2f2759f1c2dfb7204 -size 348272 diff --git a/public/packs/js/application-64320f2d97165dadc783.js.gz b/public/packs/js/application-64320f2d97165dadc783.js.gz deleted file mode 100644 index 92b998e9..00000000 --- a/public/packs/js/application-64320f2d97165dadc783.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:91248b78649037593760f2d6eb89347d86c7b8ecac8c0da5a414ce598fdb035e -size 459471 diff --git a/public/packs/js/application-64320f2d97165dadc783.js.map b/public/packs/js/application-64320f2d97165dadc783.js.map deleted file mode 100644 index 31694df5..00000000 --- a/public/packs/js/application-64320f2d97165dadc783.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9deafad1bd379f4547d46b2853879ab309a160d2b4c5cf8ae6e99898ad680545 -size 6214519 diff --git a/public/packs/js/application-64320f2d97165dadc783.js.map.br b/public/packs/js/application-64320f2d97165dadc783.js.map.br deleted file mode 100644 index 694eba56..00000000 --- a/public/packs/js/application-64320f2d97165dadc783.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8dfc6ec247676e09320c0a1efe5df976b2a8273fe8f11a22463513392ce4fae7 -size 1330304 diff --git a/public/packs/js/application-64320f2d97165dadc783.js.map.gz b/public/packs/js/application-64320f2d97165dadc783.js.map.gz deleted file mode 100644 index bc31db8d..00000000 --- a/public/packs/js/application-64320f2d97165dadc783.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8eef97c1c8bb831465a0d246a00e65756fbce9c8d96308c88f548023ed58fe57 -size 1643468 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 861d474d..3a0684d7 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:429212b43c16d08a56f475191d2a9aedcc29bbd691f423b63598247e79db4bb8 +oid sha256:727557901d123d96c15550b9b1f11215abcfffa0ba00c5b98135bf4f5edcd70d size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index e75d9d53..065672f8 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:778ccec2da3e04ffa3ace32dd60989fbe6be011a9f7a8ccb5535513eb0e8877f -size 322 +oid sha256:b7077e2e40811b47120614c7d3d23e0ba124b5cb58929f1051dfec721d4366ca +size 319 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index ef3083f4..22803fec 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:aeb021b62c73d4f000ac37f7ac4e41392ff5a2eae351d4eed7f2fa61fff4fc62 -size 365 +oid sha256:86b9751216f17a5eb57919bedf35ea2c6ed457e324197f940bc097a189f70afc +size 364 From 0e010e804ca78e5c9192af4dd637164af8551f56 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 17 Apr 2024 17:58:14 -0300 Subject: [PATCH 406/699] fix: el valor original viene del documento y se cambia una sola vez --- app/models/metadata_template.rb | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/app/models/metadata_template.rb b/app/models/metadata_template.rb index 823443d2..89fd8315 100644 --- a/app/models/metadata_template.rb +++ b/app/models/metadata_template.rb @@ -38,18 +38,10 @@ MetadataTemplate = Struct.new(:site, :document, :name, :label, :type, "#{cache_key}-#{cache_version}" end - # XXX: Deberíamos sanitizar durante la asignación? - def value=(new_value) - @value_was = value - self[:value] = new_value - end - # Siempre obtener el valor actual y solo obtenerlo del documento una # vez. def value_was - return @value_was if instance_variable_defined? '@value_was' - - @value_was = document_value + @value_was ||= document_value.nil? ? default_value : document_value end def changed? From 9fb3601d9274c67202797a6dfefe35cc11a1a413 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 17 Apr 2024 18:04:19 -0300 Subject: [PATCH 407/699] fix: cambiar el valor una sola vez --- app/models/metadata_template.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/metadata_template.rb b/app/models/metadata_template.rb index 89fd8315..03d42339 100644 --- a/app/models/metadata_template.rb +++ b/app/models/metadata_template.rb @@ -161,7 +161,7 @@ MetadataTemplate = Struct.new(:site, :document, :name, :label, :type, # once => el campo solo se puede modificar si estaba vacío def writable? case layout.metadata.dig(name, 'writable') - when 'once' then value.blank? + when 'once' then value_was.blank? else true end end From 42e9d5fd6612887d106a917e72731874da487800 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 17 Apr 2024 18:05:01 -0300 Subject: [PATCH 408/699] feat: poder asignar atributos sin guardar cambios --- app/models/post.rb | 39 +++++++++++++++++++++++++++++---------- 1 file changed, 29 insertions(+), 10 deletions(-) diff --git a/app/models/post.rb b/app/models/post.rb index 8885897f..60382baf 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -15,6 +15,9 @@ class Post PUBLIC_ATTRIBUTES = %i[lang date uuid created_at].freeze ATTR_SUFFIXES = %w[? =].freeze + class PostError < StandardError; end + class UnknownAttributeError < PostError; end + attr_reader :attributes, :errors, :layout, :site, :document # TODO: Modificar el historial de Git con callbacks en lugar de @@ -50,12 +53,33 @@ class Post @errors = {} @metadata = {} - # Inicializar valores + # Leer el documento si existe + # @todo Asignar todos los valores a self[:value] luego de leer + document&.read! unless new? + + # Inicializar valores o modificar los que vengan del documento + assignable_attributes = args.slice(*attributes) + assign_attributes(assignable_attributes) if assignable_attributes.present? + end + + # Asignar atributos, ignorando atributos que no se pueden modificar + # o inexistentes + # + # @param attrs [Hash] + def assign_attributes(attrs) + attrs = attrs.transform_keys(&:to_sym) + attributes.each do |attr| - public_send(attr)&.value = args[attr] if args.key?(attr) + self[attr].value = attrs[attr] if attrs.key?(attr) && self[attr].writable? end - document.read! unless new? + unknown_attrs = attrs.keys.map(&:to_sym) - attributes + + if unknown_attrs.present? + raise UnknownAttributeError, "Unknown attribute(s) #{unknown_attrs.map(&:to_s).join(', ')} for Post" + end + + nil end def inspect @@ -165,8 +189,7 @@ class Post # Limpiar el nombre del atributo, para que todos los ayudantes # reciban el método en limpio unless attribute? name - raise NoMethodError, I18n.t('exceptions.post.no_method', - method: name) + raise UnknownAttributeError, I18n.t('exceptions.post.no_method', method: name) end define_singleton_method(name) do @@ -386,11 +409,7 @@ class Post end def update_attributes(hashable) - hashable.to_hash.each do |attr, value| - next unless self[attr].writable? - - self[attr].value = value - end + assign_attributes(hashable) save end From ce3ff1bdab28f0e0b19079c19c7374150f7d1bb1 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 17 Apr 2024 18:06:56 -0300 Subject: [PATCH 409/699] refactor: asignar atributos --- app/services/post_service.rb | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/services/post_service.rb b/app/services/post_service.rb index 4631a9a4..5770a717 100644 --- a/app/services/post_service.rb +++ b/app/services/post_service.rb @@ -10,13 +10,14 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do self.post = site.posts(lang: locale) .build(layout: layout) post.usuaries << usuarie - params[:post][:draft] = true if site.invitade? usuarie + post.draft.value = true if site.invitade? usuarie + post.assign_attributes(post_params) params.require(:post).permit(:slug).tap do |p| post.slug.value = p[:slug] if p[:slug].present? end - commit(action: :created, add: update_related_posts) if post.update(post_params) + commit(action: :created, add: update_related_posts) if post.save update_site_license! From 363e2d8385dcc8f822f7a39045522c8c8dfb29ad Mon Sep 17 00:00:00 2001 From: f Date: Wed, 17 Apr 2024 18:07:42 -0300 Subject: [PATCH 410/699] refactor: llevar un staging de archivos a agregar --- app/services/post_service.rb | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/app/services/post_service.rb b/app/services/post_service.rb index 5770a717..20256d68 100644 --- a/app/services/post_service.rb +++ b/app/services/post_service.rb @@ -17,7 +17,9 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do post.slug.value = p[:slug] if p[:slug].present? end - commit(action: :created, add: update_related_posts) if post.save + update_related_posts + + commit(action: :created, add: files) if post.save update_site_license! @@ -35,7 +37,7 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do # Los artículos anónimos siempre son borradores params[:draft] = true - commit(action: :created, add: [post.path.absolute]) if post.update(anon_post_params) + commit(action: :created, add: files) if post.update(anon_post_params) post end @@ -48,9 +50,11 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do rm = [] rm << post.path.value_was if post.path.changed? + update_related_posts + # Es importante que el artículo se guarde primero y luego los # relacionados. - commit(action: :updated, add: update_related_posts, rm: rm) + commit(action: :updated, add: files, rm: rm) update_site_license! end @@ -97,6 +101,15 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do private + # Una lista de archivos a modificar + # + # @return [Set] + def files + @files ||= Set.new.tap do |f| + f << post.path.absolute + end + end + def commit(action:, add: [], rm: []) site.repository.commit(add: add, rm: rm, @@ -147,8 +160,10 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do end posts.map do |p| - p.path.absolute if p.save(validate: false) - end.compact << post.path.absolute + next unless p.save(validate: false) + + files << p.path.absolute + end end # Si les usuaries modifican o crean una licencia, considerarla From 5e2bddf7cc49fbd8519698d871eeeea09ae5b7fd Mon Sep 17 00:00:00 2001 From: f Date: Wed, 17 Apr 2024 18:09:05 -0300 Subject: [PATCH 411/699] =?UTF-8?q?feat:=20crear=20art=C3=ADculos=20anidad?= =?UTF-8?q?os=20#15066?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/metadata_template.rb | 4 ++++ app/models/post.rb | 7 +++++++ app/services/post_service.rb | 20 +++++++++++++++++++- 3 files changed, 30 insertions(+), 1 deletion(-) diff --git a/app/models/metadata_template.rb b/app/models/metadata_template.rb index 03d42339..5af68099 100644 --- a/app/models/metadata_template.rb +++ b/app/models/metadata_template.rb @@ -12,6 +12,10 @@ MetadataTemplate = Struct.new(:site, :document, :name, :label, :type, false end + def nested? + false + end + def inspect "#<#{self.class} site=#{site.name.inspect} post=#{post.id.inspect} value=#{value.inspect}>" end diff --git a/app/models/post.rb b/app/models/post.rb index 60382baf..953598a9 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -423,6 +423,13 @@ class Post @usuaries ||= document_usuaries.empty? ? [] : Usuarie.where(id: document_usuaries).to_a end + # Todos los atributos anidados + # + # @return [Array] + def nested_attributes + @nested_attributes ||= attributes.map { |a| self[a] }.select(&:nested?).map(&:name) + end + private # Levanta un error si al construir el artículo no pasamos un atributo. diff --git a/app/services/post_service.rb b/app/services/post_service.rb index 20256d68..08a46ae7 100644 --- a/app/services/post_service.rb +++ b/app/services/post_service.rb @@ -17,6 +17,8 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do post.slug.value = p[:slug] if p[:slug].present? end + # Crea los posts anidados + create_nested_posts! post, params[:post] update_related_posts commit(action: :created, add: files) if post.save @@ -122,7 +124,7 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do # Solo permitir cambiar estos atributos de cada articulo def post_params - params.require(:post).permit(post.params) + @post_params ||= params.require(:post).permit(post.params).to_h end # Eliminar metadatos internos @@ -173,4 +175,20 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do site.update licencia: Licencia.find_by_icons('custom') end end + + # Encuentra todos los posts anidados y los crea o modifica + def create_nested_posts!(post, params) + post.nested_attributes.each do |nested_attribute| + nested_metadata = post[nested_attribute] + # @todo find_or_initialize + nested_post = site.posts(lang: post.lang.value).build(layout: nested_metadata.nested) + nested_params = params.require(nested_attribute).permit(nested_post.params).to_hash + + # Completa la relación 1:1 + nested_params[nested_metadata.inverse.to_s] = post.uuid.value + post[nested_attribute].value = nested_post.uuid.value + + files << nested_post.path.absolute if nested_post.update(nested_params) + end + end end From 0cf2ec04ba9b54c4e74001923003dc308a60ca04 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 17 Apr 2024 18:09:55 -0300 Subject: [PATCH 412/699] =?UTF-8?q?feat:=20poder=20anidar=20un=20art=C3=AD?= =?UTF-8?q?culo=20#15066?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/metadata_has_one_nested.rb | 11 +++++++++++ app/views/posts/_attributes.haml | 16 ++++++++++++++++ app/views/posts/_attributes_nested.haml | 19 +++++++++++++++++++ app/views/posts/_form.haml | 11 +---------- .../posts/attribute_ro/_has_one_nested.haml | 6 ++++++ .../posts/attributes/_has_one_nested.haml | 6 ++++++ 6 files changed, 59 insertions(+), 10 deletions(-) create mode 100644 app/models/metadata_has_one_nested.rb create mode 100644 app/views/posts/_attributes.haml create mode 100644 app/views/posts/_attributes_nested.haml create mode 100644 app/views/posts/attribute_ro/_has_one_nested.haml create mode 100644 app/views/posts/attributes/_has_one_nested.haml diff --git a/app/models/metadata_has_one_nested.rb b/app/models/metadata_has_one_nested.rb new file mode 100644 index 00000000..ed509013 --- /dev/null +++ b/app/models/metadata_has_one_nested.rb @@ -0,0 +1,11 @@ +# frozen_string_literal: true + +class MetadataHasOneNested < MetadataHasOne + def nested + @nested ||= layout.metadata.dig(name, 'nested') + end + + def nested? + true + end +end diff --git a/app/views/posts/_attributes.haml b/app/views/posts/_attributes.haml new file mode 100644 index 00000000..ed958d08 --- /dev/null +++ b/app/views/posts/_attributes.haml @@ -0,0 +1,16 @@ +-# + @param base [String] + @param locale [String] + @param post [Post] + @param site [Site] + @param dir [String] +- post.attributes.each do |attribute| + - metadata = post[attribute] + - type = metadata.type + + - cache [metadata, I18n.locale] do + = render("posts/attributes/#{type}", + base: base, post: post, attribute: attribute, + metadata: metadata, site: site, + dir: dir, locale: locale, + autofocus: (post.attributes.first == attribute)) diff --git a/app/views/posts/_attributes_nested.haml b/app/views/posts/_attributes_nested.haml new file mode 100644 index 00000000..33996aa3 --- /dev/null +++ b/app/views/posts/_attributes_nested.haml @@ -0,0 +1,19 @@ +-# + @param inverse [Symbol] + @param base [String] + @param locale [String] + @param post [Post] + @param site [Site] + @param dir [String] +- post.attributes.each do |attribute| + - next if attribute == :date + - next if attribute == :draft + - next if attribute == inverse + - metadata = post[attribute] + - type = metadata.type + + - cache [metadata, I18n.locale] do + = render "posts/attributes/#{type}", + base: base, post: post, attribute: attribute, + metadata: metadata, site: site, + dir: dir, locale: locale, autofocus: false diff --git a/app/views/posts/_form.haml b/app/views/posts/_form.haml index 7de0ea79..92bee939 100644 --- a/app/views/posts/_form.haml +++ b/app/views/posts/_form.haml @@ -41,16 +41,7 @@ = hidden_field_tag 'post[layout]', post.layout.name -# Dibuja cada atributo - - post.attributes.each do |attribute| - - metadata = post[attribute] - - type = metadata.type - - - cache [metadata, I18n.locale] do - = render("posts/attributes/#{type}", - base: 'post', post: post, attribute: attribute, - metadata: metadata, site: site, - dir: dir, locale: @locale, - autofocus: (post.attributes.first == attribute)) + = render 'posts/attributes', site: site, post: post, dir: dir, base: 'post', locale: @locale -# Botones de guardado = render 'posts/submit', site: site, post: post diff --git a/app/views/posts/attribute_ro/_has_one_nested.haml b/app/views/posts/attribute_ro/_has_one_nested.haml new file mode 100644 index 00000000..425e659e --- /dev/null +++ b/app/views/posts/attribute_ro/_has_one_nested.haml @@ -0,0 +1,6 @@ +%tr{ id: attribute } + %th= post_label_t(attribute, post: post) + %td{ dir: dir, lang: locale } + - p = metadata.has_one + - if p + = link_to p.title.value, site_post_path(site, p.id) diff --git a/app/views/posts/attributes/_has_one_nested.haml b/app/views/posts/attributes/_has_one_nested.haml new file mode 100644 index 00000000..e98bff47 --- /dev/null +++ b/app/views/posts/attributes/_has_one_nested.haml @@ -0,0 +1,6 @@ +- new_post = site.posts(lang: locale).build(layout: metadata.nested) +- base = "#{base}[#{metadata.name}]" + +.form-group + = render 'layouts/details', id: metadata.nested, summary: site.layouts[metadata.nested].humanized_name do + = render 'posts/attributes_nested', site: site, post: new_post, dir: dir, base: base, locale: locale, inverse: metadata.inverse From 5a92c1f28c0eb9aa402e7bd74523d399908111f5 Mon Sep 17 00:00:00 2001 From: maki Date: Fri, 19 Apr 2024 14:39:09 -0300 Subject: [PATCH 413/699] =?UTF-8?q?fix:=20campos=20de=20archivo=20e=20imag?= =?UTF-8?q?en=20con=20t=C3=ADtulo=20#16080?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/posts/attributes/_file.haml | 1 + app/views/posts/attributes/_image.haml | 1 + 2 files changed, 2 insertions(+) diff --git a/app/views/posts/attributes/_file.haml b/app/views/posts/attributes/_file.haml index 54f9f81a..84cbcd9a 100644 --- a/app/views/posts/attributes/_file.haml +++ b/app/views/posts/attributes/_file.haml @@ -1,4 +1,5 @@ .form-group + = label_tag "#{base}_#{attribute}", post_label_t(attribute, post: post) - if metadata.static_file - case metadata.static_file.blob.content_type - when %r{\Avideo/} diff --git a/app/views/posts/attributes/_image.haml b/app/views/posts/attributes/_image.haml index 84fe56fd..79f451a3 100644 --- a/app/views/posts/attributes/_image.haml +++ b/app/views/posts/attributes/_image.haml @@ -1,4 +1,5 @@ .form-group + = label_tag "#{base}_#{attribute}", post_label_t(attribute, post: post) - if metadata.static_file = image_tag url_for(metadata.static_file), alt: metadata.value['description'], From 04c0dffb26c639bd15ed1c934f2b3de587eea370 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 19 Apr 2024 15:00:48 -0300 Subject: [PATCH 414/699] fix: ignorar has_one_nested --- app/models/metadata_has_one_nested.rb | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/app/models/metadata_has_one_nested.rb b/app/models/metadata_has_one_nested.rb index ed509013..2f3e8e02 100644 --- a/app/models/metadata_has_one_nested.rb +++ b/app/models/metadata_has_one_nested.rb @@ -8,4 +8,9 @@ class MetadataHasOneNested < MetadataHasOne def nested? true end + + # No tener conflictos con related + def related_methods + @related_methods ||= [].freeze + end end From b05e0356c17623c83967110111249619c313176a Mon Sep 17 00:00:00 2001 From: f Date: Fri, 19 Apr 2024 15:01:16 -0300 Subject: [PATCH 415/699] fix: incluir el post en la cache --- app/views/posts/_attributes_nested.haml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/app/views/posts/_attributes_nested.haml b/app/views/posts/_attributes_nested.haml index 33996aa3..83bcc51c 100644 --- a/app/views/posts/_attributes_nested.haml +++ b/app/views/posts/_attributes_nested.haml @@ -10,10 +10,9 @@ - next if attribute == :draft - next if attribute == inverse - metadata = post[attribute] - - type = metadata.type - - cache [metadata, I18n.locale] do - = render "posts/attributes/#{type}", + - cache [post, metadata, I18n.locale] do + = render "posts/attributes/#{metadata.type}", base: base, post: post, attribute: attribute, metadata: metadata, site: site, dir: dir, locale: locale, autofocus: false From bcf3925d9bb87089a14047f7b4a6f13897bd57af Mon Sep 17 00:00:00 2001 From: f Date: Fri, 19 Apr 2024 15:06:17 -0300 Subject: [PATCH 416/699] feat: poder modificar posts anidados --- app/services/post_service.rb | 3 ++- app/views/posts/attributes/_has_one_nested.haml | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/app/services/post_service.rb b/app/services/post_service.rb index 08a46ae7..90aa9401 100644 --- a/app/services/post_service.rb +++ b/app/services/post_service.rb @@ -52,6 +52,7 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do rm = [] rm << post.path.value_was if post.path.changed? + create_nested_posts! post, params[:post] update_related_posts # Es importante que el artículo se guarde primero y luego los @@ -181,7 +182,7 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do post.nested_attributes.each do |nested_attribute| nested_metadata = post[nested_attribute] # @todo find_or_initialize - nested_post = site.posts(lang: post.lang.value).build(layout: nested_metadata.nested) + nested_post = nested_metadata.has_one || site.posts(lang: post.lang.value).build(layout: nested_metadata.nested) nested_params = params.require(nested_attribute).permit(nested_post.params).to_hash # Completa la relación 1:1 diff --git a/app/views/posts/attributes/_has_one_nested.haml b/app/views/posts/attributes/_has_one_nested.haml index e98bff47..4aabf386 100644 --- a/app/views/posts/attributes/_has_one_nested.haml +++ b/app/views/posts/attributes/_has_one_nested.haml @@ -1,6 +1,6 @@ -- new_post = site.posts(lang: locale).build(layout: metadata.nested) +- nested_post = metadata.has_one || site.posts(lang: locale).build(layout: metadata.nested) - base = "#{base}[#{metadata.name}]" .form-group = render 'layouts/details', id: metadata.nested, summary: site.layouts[metadata.nested].humanized_name do - = render 'posts/attributes_nested', site: site, post: new_post, dir: dir, base: base, locale: locale, inverse: metadata.inverse + = render 'posts/attributes_nested', site: site, post: nested_post, dir: dir, base: base, locale: locale, inverse: metadata.inverse From 382f0545d128cb277a9d89b31fc88052bf1ae7fa Mon Sep 17 00:00:00 2001 From: f Date: Fri, 19 Apr 2024 15:06:56 -0300 Subject: [PATCH 417/699] feat: mostrar detalles como desplegable --- app/views/layouts/_details.haml | 17 ++++++++++ app/views/posts/_table.haml | 34 +++++++++++++++++++ .../posts/attribute_ro/_has_one_nested.haml | 10 +++--- app/views/posts/show.haml | 28 ++------------- 4 files changed, 58 insertions(+), 31 deletions(-) create mode 100644 app/views/layouts/_details.haml create mode 100644 app/views/posts/_table.haml diff --git a/app/views/layouts/_details.haml b/app/views/layouts/_details.haml new file mode 100644 index 00000000..9f8a4658 --- /dev/null +++ b/app/views/layouts/_details.haml @@ -0,0 +1,17 @@ +-# + Detail Cola de Moderación + + @param :id [String] El ID opcional sirve para mantener el historial de + cuál estaba abierto y recuperarlo al cargar la página + @param :summary [String] El resumen + @param :summary_class [String] Clases para el summary + +- local_assigns[:summary_class] ||= 'h3' +- local_assigns[:details_class] ||= 'py-2' + +%details.details{ id: local_assigns[:id], class: local_assigns[:details_class], data: { controller: 'details', action: 'toggle->details#store' } } + %summary.d-flex.flex-row.align-items-center.justify-content-between{ class: local_assigns[:summary_class] } + %span= summary + %span.hide-when-open ▶ + %span.show-when-open ▼ + = yield diff --git a/app/views/posts/_table.haml b/app/views/posts/_table.haml new file mode 100644 index 00000000..ff35aace --- /dev/null +++ b/app/views/posts/_table.haml @@ -0,0 +1,34 @@ +-# + Muestra una tabla con todos los atributos de un post + + @param site [Site] + @param locale [Symbol] + @param dir [String] + @param post [Post] + @param title [String] + +%table.table.table-condensed + %thead + %tr + %th.text-center{ colspan: 2 }= title + %tbody + - post.attributes.each do |attr| + - metadata = post[attr] + - next unless metadata.front_matter? + + - cache [post, metadata, I18n.locale] do + = render("posts/attribute_ro/#{metadata.type}", + post: post, attribute: attr, + metadata: metadata, + site: site, + locale: locale, + dir: dir) + +-# Mostrar todo lo que no va en el front_matter (el contenido) +- post.attributes.each do |attr| + - metadata = post[attr] + - next if metadata.front_matter? + + - cache [post, metadata, I18n.locale] do + %section.content.pb-3{ id: attr, dir: dir } + = metadata.to_s.html_safe diff --git a/app/views/posts/attribute_ro/_has_one_nested.haml b/app/views/posts/attribute_ro/_has_one_nested.haml index 425e659e..1c89474e 100644 --- a/app/views/posts/attribute_ro/_has_one_nested.haml +++ b/app/views/posts/attribute_ro/_has_one_nested.haml @@ -1,6 +1,6 @@ %tr{ id: attribute } - %th= post_label_t(attribute, post: post) - %td{ dir: dir, lang: locale } - - p = metadata.has_one - - if p - = link_to p.title.value, site_post_path(site, p.id) + %td{ dir: dir, lang: locale, colspan: 2 } + - if (p = metadata.has_one) + = render 'layouts/details', details_class: '', summary_class: 'font-weight-bold', summary: post_label_t(attribute, post: post) do + .mt-3 + = render 'posts/table', site: site, post: p, dir: dir, locale: locale, title: p.layout.humanized_name diff --git a/app/views/posts/show.haml b/app/views/posts/show.haml index 10900d67..6798c41c 100644 --- a/app/views/posts/show.haml +++ b/app/views/posts/show.haml @@ -1,4 +1,5 @@ - dir = @site.data.dig(params[:locale], 'dir') + .row.justify-content-center .col-md-8 %article.content.table-responsive-md @@ -6,29 +7,4 @@ edit_site_post_path(@site, @post.id), class: 'btn btn-secondary btn-block' - %table.table.table-condensed - %thead - %tr - %th.text-center{ colspan: 2 }= t('.front_matter') - %tbody - - @post.attributes.each do |attr| - - metadata = @post[attr] - - next unless metadata.front_matter? - - - cache [metadata, I18n.locale] do - = render("posts/attribute_ro/#{metadata.type}", - post: @post, attribute: attr, - metadata: metadata, - site: @site, - tags: all_html_tags, - locale: @locale, - dir: dir) - - -# Mostrar todo lo que no va en el front_matter (el contenido) - - @post.attributes.each do |attr| - - metadata = @post[attr] - - next if metadata.front_matter? - - - cache [metadata, I18n.locale] do - %section.content.pb-3{ id: attr, dir: dir } - = @post.public_send(attr).to_s.html_safe + = render 'table', dir: dir, site: @site, locale: @locale, post: @post, title: t('.front_matter') From 9d902fdd499764e9dbd1e25e625aa3b38b0ae0c4 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 20 Apr 2024 11:24:09 -0300 Subject: [PATCH 418/699] fix: es necesario NoMethodError para poder hacer flatten luego closes #16100 --- app/models/post.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/post.rb b/app/models/post.rb index 953598a9..327df3e2 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -189,7 +189,7 @@ class Post # Limpiar el nombre del atributo, para que todos los ayudantes # reciban el método en limpio unless attribute? name - raise UnknownAttributeError, I18n.t('exceptions.post.no_method', method: name) + raise NoMethodError, I18n.t('exceptions.post.no_method', method: name) end define_singleton_method(name) do From 7a99b8d669eb05b2e4d2806194d659eda5f94ef2 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 22 Apr 2024 11:14:28 -0300 Subject: [PATCH 419/699] ci: assets --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-420598fa1f5894a19750.js | 3 +++ ...SE.txt => application-420598fa1f5894a19750.js.LICENSE.txt} | 0 public/packs/js/application-420598fa1f5894a19750.js.br | 3 +++ public/packs/js/application-420598fa1f5894a19750.js.gz | 3 +++ public/packs/js/application-420598fa1f5894a19750.js.map | 3 +++ public/packs/js/application-420598fa1f5894a19750.js.map.br | 3 +++ public/packs/js/application-420598fa1f5894a19750.js.map.gz | 3 +++ public/packs/js/application-48f7a46621432cd8e15e.js | 3 --- public/packs/js/application-48f7a46621432cd8e15e.js.br | 3 --- public/packs/js/application-48f7a46621432cd8e15e.js.gz | 3 --- public/packs/js/application-48f7a46621432cd8e15e.js.map | 3 --- public/packs/js/application-48f7a46621432cd8e15e.js.map.br | 3 --- public/packs/js/application-48f7a46621432cd8e15e.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 17 files changed, 24 insertions(+), 24 deletions(-) create mode 100644 public/packs/js/application-420598fa1f5894a19750.js rename public/packs/js/{application-48f7a46621432cd8e15e.js.LICENSE.txt => application-420598fa1f5894a19750.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-420598fa1f5894a19750.js.br create mode 100644 public/packs/js/application-420598fa1f5894a19750.js.gz create mode 100644 public/packs/js/application-420598fa1f5894a19750.js.map create mode 100644 public/packs/js/application-420598fa1f5894a19750.js.map.br create mode 100644 public/packs/js/application-420598fa1f5894a19750.js.map.gz delete mode 100644 public/packs/js/application-48f7a46621432cd8e15e.js delete mode 100644 public/packs/js/application-48f7a46621432cd8e15e.js.br delete mode 100644 public/packs/js/application-48f7a46621432cd8e15e.js.gz delete mode 100644 public/packs/js/application-48f7a46621432cd8e15e.js.map delete mode 100644 public/packs/js/application-48f7a46621432cd8e15e.js.map.br delete mode 100644 public/packs/js/application-48f7a46621432cd8e15e.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 67d1b3ad..93b7533a 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:18e19846c222fa317753bab1cb16284d41d70cd4329ca7dd6ef7d93edba061f6 +oid sha256:49ccae39af7147f034936409f9faaa260ce2c41b413ddfce6d9fd3ce65738013 size 10243 diff --git a/public/packs/js/application-420598fa1f5894a19750.js b/public/packs/js/application-420598fa1f5894a19750.js new file mode 100644 index 00000000..6d157f40 --- /dev/null +++ b/public/packs/js/application-420598fa1f5894a19750.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84d2cc2c20439de2e562122135aa0865fd567f19d82efb7995a48c10d2b9a304 +size 1643328 diff --git a/public/packs/js/application-48f7a46621432cd8e15e.js.LICENSE.txt b/public/packs/js/application-420598fa1f5894a19750.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-48f7a46621432cd8e15e.js.LICENSE.txt rename to public/packs/js/application-420598fa1f5894a19750.js.LICENSE.txt diff --git a/public/packs/js/application-420598fa1f5894a19750.js.br b/public/packs/js/application-420598fa1f5894a19750.js.br new file mode 100644 index 00000000..2d0a501a --- /dev/null +++ b/public/packs/js/application-420598fa1f5894a19750.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74bfa43130b1dcb18507b26b21cd07597fba2f07aa6a80c69b94cc821910b633 +size 366248 diff --git a/public/packs/js/application-420598fa1f5894a19750.js.gz b/public/packs/js/application-420598fa1f5894a19750.js.gz new file mode 100644 index 00000000..937074d2 --- /dev/null +++ b/public/packs/js/application-420598fa1f5894a19750.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd762462427d1b1a3410f26e2ff904a2fb2d79e2ffde9a7ad05d18a60850bc96 +size 482943 diff --git a/public/packs/js/application-420598fa1f5894a19750.js.map b/public/packs/js/application-420598fa1f5894a19750.js.map new file mode 100644 index 00000000..4adbb2f3 --- /dev/null +++ b/public/packs/js/application-420598fa1f5894a19750.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69e3b5a08138ed91406f7403f1720566a2db5dbe99eac6b07ad2931c9fc8b25c +size 6384923 diff --git a/public/packs/js/application-420598fa1f5894a19750.js.map.br b/public/packs/js/application-420598fa1f5894a19750.js.map.br new file mode 100644 index 00000000..fbfb4a51 --- /dev/null +++ b/public/packs/js/application-420598fa1f5894a19750.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:028d3814326171d40e5b39a6b256aa4596a509710559d3b5bb3cc4e4fc2b3992 +size 1375575 diff --git a/public/packs/js/application-420598fa1f5894a19750.js.map.gz b/public/packs/js/application-420598fa1f5894a19750.js.map.gz new file mode 100644 index 00000000..d9085341 --- /dev/null +++ b/public/packs/js/application-420598fa1f5894a19750.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:371bdfce1048495961b5ddac19bd5f771dcfc5d939be2bada9ff27335d77f053 +size 1700036 diff --git a/public/packs/js/application-48f7a46621432cd8e15e.js b/public/packs/js/application-48f7a46621432cd8e15e.js deleted file mode 100644 index 0ef56745..00000000 --- a/public/packs/js/application-48f7a46621432cd8e15e.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ebd71e2d7b7d66cc3155e74940e3cd853e2bf12047e263456e6e2712ce43c769 -size 1643139 diff --git a/public/packs/js/application-48f7a46621432cd8e15e.js.br b/public/packs/js/application-48f7a46621432cd8e15e.js.br deleted file mode 100644 index ab0d6ad0..00000000 --- a/public/packs/js/application-48f7a46621432cd8e15e.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2e267881ea175895aae7001a482e74753503014f459c38f78a718636c86e82a0 -size 366408 diff --git a/public/packs/js/application-48f7a46621432cd8e15e.js.gz b/public/packs/js/application-48f7a46621432cd8e15e.js.gz deleted file mode 100644 index 1e547ce7..00000000 --- a/public/packs/js/application-48f7a46621432cd8e15e.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4e2fd5cddd049ee4751863439fcfefdc9b02bdf744c49c70f6d0355e2bdc4103 -size 482852 diff --git a/public/packs/js/application-48f7a46621432cd8e15e.js.map b/public/packs/js/application-48f7a46621432cd8e15e.js.map deleted file mode 100644 index a5a86f8a..00000000 --- a/public/packs/js/application-48f7a46621432cd8e15e.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9f6d879205c3f7ab716e48ad0f5253b0caaa31aed4152596fa1726241fcaadad -size 6384158 diff --git a/public/packs/js/application-48f7a46621432cd8e15e.js.map.br b/public/packs/js/application-48f7a46621432cd8e15e.js.map.br deleted file mode 100644 index 61c0702a..00000000 --- a/public/packs/js/application-48f7a46621432cd8e15e.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:995c32093d20abfcecbf8d9967994c89a9fdf7ff0ec9c39edc650e42489e073a -size 1374477 diff --git a/public/packs/js/application-48f7a46621432cd8e15e.js.map.gz b/public/packs/js/application-48f7a46621432cd8e15e.js.map.gz deleted file mode 100644 index 7db253e1..00000000 --- a/public/packs/js/application-48f7a46621432cd8e15e.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6cba1a533f9951229543d2ed68b2d4d4d2b7650fb663be7e0d3861424805cb19 -size 1699798 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 3a0684d7..e47fa3fc 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:727557901d123d96c15550b9b1f11215abcfffa0ba00c5b98135bf4f5edcd70d +oid sha256:f7733d8adb2a7d647874b18d9f14a362bacdc38673cc42f350fcd7c8659bc3dd size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 065672f8..afb0c467 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b7077e2e40811b47120614c7d3d23e0ba124b5cb58929f1051dfec721d4366ca -size 319 +oid sha256:72add6797c36f9d11781029fd7a7ad748b3ed4e1c73709ec0d895f11ded0ef0f +size 324 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 22803fec..d81f813e 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:86b9751216f17a5eb57919bedf35ea2c6ed457e324197f940bc097a189f70afc -size 364 +oid sha256:e10cbd8b3e3aff09030a5a9c5a9c22a559538d908af4a672a24cb8635a5a3e2a +size 365 From ecc4224d0a0c7befc5b979be96cc62df3941e62e Mon Sep 17 00:00:00 2001 From: jazzari Date: Tue, 23 Apr 2024 12:45:52 -0300 Subject: [PATCH 420/699] fix: corregido parametro de job #13244 --- app/services/concerns/auto_publish_concern.rb | 2 +- app/services/post_service.rb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/services/concerns/auto_publish_concern.rb b/app/services/concerns/auto_publish_concern.rb index 81f81aad..19160f02 100644 --- a/app/services/concerns/auto_publish_concern.rb +++ b/app/services/concerns/auto_publish_concern.rb @@ -6,7 +6,7 @@ module AutoPublishConcern included do def auto_publish! - DeployJob.perform_later(site.id) if site.auto_publish? + DeployJob.perform_later(site) if site.auto_publish? end end end diff --git a/app/services/post_service.rb b/app/services/post_service.rb index e9305c34..9cc41323 100644 --- a/app/services/post_service.rb +++ b/app/services/post_service.rb @@ -31,7 +31,7 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do # Crear un post anónimo, con opciones más limitadas. No usamos post. def create_anonymous # XXX: Confiamos en el parámetro de idioma porque estamos - # verificándolos extend ActiveSupport::Concernn Site#posts + # verificándolos en Site#posts self.post = site.posts(lang: locale) .build(layout: layout) # Los artículos anónimos siempre son borradores From 88c9399ba5ee4054c792ddac899ec9f3823e0946 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 23 Apr 2024 14:09:26 -0300 Subject: [PATCH 421/699] fix: no guardar hashwithindifferentaccess --- app/models/metadata_file.rb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/models/metadata_file.rb b/app/models/metadata_file.rb index 3ac89c9b..61aea897 100644 --- a/app/models/metadata_file.rb +++ b/app/models/metadata_file.rb @@ -49,6 +49,8 @@ class MetadataFile < MetadataTemplate value['path'] = relative_destination_path_with_filename.to_s if static_file end + self[:value] = self[:value].to_h + true end From b3ed65b340dff909001ccd699944d6ee8c424e93 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 23 Apr 2024 14:11:58 -0300 Subject: [PATCH 422/699] fix: primero guardar para que se actualicen las relaciones --- app/services/post_service.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/services/post_service.rb b/app/services/post_service.rb index 90aa9401..84f58dad 100644 --- a/app/services/post_service.rb +++ b/app/services/post_service.rb @@ -19,9 +19,10 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do # Crea los posts anidados create_nested_posts! post, params[:post] + post.save update_related_posts - commit(action: :created, add: files) if post.save + commit(action: :created, add: files) update_site_license! From ca683ee3695e2b39111b3630f9a9f6293935378d Mon Sep 17 00:00:00 2001 From: maki Date: Wed, 24 Apr 2024 11:30:28 -0300 Subject: [PATCH 423/699] fix: traducciones faltantes #16080 --- config/locales/en.yml | 4 ++++ config/locales/es.yml | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/config/locales/en.yml b/config/locales/en.yml index fc9d4894..3a22a41b 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -553,6 +553,10 @@ en: image: label: Image destroy: Remove image + logo: + label: Logo + download: + label: Archivo belongs_to: empty: "(Empty)" predefined_value: diff --git a/config/locales/es.yml b/config/locales/es.yml index 4bda4982..1828b001 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -561,6 +561,10 @@ es: image: label: Imagen destroy: 'Eliminar imagen' + logo: + label: Logo + download: + label: Archivo belongs_to: empty: "(Vacío)" predefined_value: From 92e7ecada0a0e092526ad6f015234a864e7b7437 Mon Sep 17 00:00:00 2001 From: maki Date: Thu, 25 Apr 2024 11:15:24 -0300 Subject: [PATCH 424/699] fix: separar label de preview #16080 --- app/views/posts/attributes/_file.haml | 3 ++- app/views/posts/attributes/_image.haml | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/app/views/posts/attributes/_file.haml b/app/views/posts/attributes/_file.haml index 84cbcd9a..6906e159 100644 --- a/app/views/posts/attributes/_file.haml +++ b/app/views/posts/attributes/_file.haml @@ -1,5 +1,6 @@ .form-group - = label_tag "#{base}_#{attribute}", post_label_t(attribute, post: post) + .label + = label_tag "#{base}_#{attribute}", post_label_t(attribute, post: post) - if metadata.static_file - case metadata.static_file.blob.content_type - when %r{\Avideo/} diff --git a/app/views/posts/attributes/_image.haml b/app/views/posts/attributes/_image.haml index 79f451a3..2579dfeb 100644 --- a/app/views/posts/attributes/_image.haml +++ b/app/views/posts/attributes/_image.haml @@ -1,5 +1,6 @@ .form-group - = label_tag "#{base}_#{attribute}", post_label_t(attribute, post: post) + .label + = label_tag "#{base}_#{attribute}", post_label_t(attribute, post: post) - if metadata.static_file = image_tag url_for(metadata.static_file), alt: metadata.value['description'], From 89298476285cced8576bc8b986145786c11b7e2a Mon Sep 17 00:00:00 2001 From: f Date: Mon, 29 Apr 2024 11:22:23 -0300 Subject: [PATCH 425/699] feat: contenido de texto plano #16174 --- app/models/metadata_plain_text.rb | 3 +++ app/views/posts/attribute_ro/_plain_text.haml | 3 +++ app/views/posts/attributes/_plain_text.haml | 8 ++++++++ 3 files changed, 14 insertions(+) create mode 100644 app/models/metadata_plain_text.rb create mode 100644 app/views/posts/attribute_ro/_plain_text.haml create mode 100644 app/views/posts/attributes/_plain_text.haml diff --git a/app/models/metadata_plain_text.rb b/app/models/metadata_plain_text.rb new file mode 100644 index 00000000..e12ee18b --- /dev/null +++ b/app/models/metadata_plain_text.rb @@ -0,0 +1,3 @@ +# frozen_string_literal: true + +class MetadataPlainText < MetadataContent; end diff --git a/app/views/posts/attribute_ro/_plain_text.haml b/app/views/posts/attribute_ro/_plain_text.haml new file mode 100644 index 00000000..e6d9a274 --- /dev/null +++ b/app/views/posts/attribute_ro/_plain_text.haml @@ -0,0 +1,3 @@ +%tr{ id: attribute } + %th= post_label_t(attribute, post: post) + %td{ lang: locale, dir: dir }= metadata.value diff --git a/app/views/posts/attributes/_plain_text.haml b/app/views/posts/attributes/_plain_text.haml new file mode 100644 index 00000000..3f9ae91d --- /dev/null +++ b/app/views/posts/attributes/_plain_text.haml @@ -0,0 +1,8 @@ +.form-group + = label_tag "#{base}_#{attribute}", post_label_t(attribute, post: post) + = render 'posts/attribute_feedback', + post: post, attribute: attribute, metadata: metadata + + = text_area_tag "#{base}[#{attribute}]", metadata.to_s.html_safe, + dir: dir, lang: locale, + **field_options(attribute, metadata) From fc6fdefaa4925bacdb053d5e7b77909817c7f1fd Mon Sep 17 00:00:00 2001 From: f Date: Tue, 30 Apr 2024 17:53:32 -0300 Subject: [PATCH 426/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-32aa31c983405e239377.js | 3 +++ ...SE.txt => application-32aa31c983405e239377.js.LICENSE.txt} | 0 public/packs/js/application-32aa31c983405e239377.js.br | 3 +++ public/packs/js/application-32aa31c983405e239377.js.gz | 3 +++ public/packs/js/application-32aa31c983405e239377.js.map | 3 +++ public/packs/js/application-32aa31c983405e239377.js.map.br | 3 +++ public/packs/js/application-32aa31c983405e239377.js.map.gz | 3 +++ public/packs/js/application-420598fa1f5894a19750.js | 3 --- public/packs/js/application-420598fa1f5894a19750.js.br | 3 --- public/packs/js/application-420598fa1f5894a19750.js.gz | 3 --- public/packs/js/application-420598fa1f5894a19750.js.map | 3 --- public/packs/js/application-420598fa1f5894a19750.js.map.br | 3 --- public/packs/js/application-420598fa1f5894a19750.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 17 files changed, 24 insertions(+), 24 deletions(-) create mode 100644 public/packs/js/application-32aa31c983405e239377.js rename public/packs/js/{application-420598fa1f5894a19750.js.LICENSE.txt => application-32aa31c983405e239377.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-32aa31c983405e239377.js.br create mode 100644 public/packs/js/application-32aa31c983405e239377.js.gz create mode 100644 public/packs/js/application-32aa31c983405e239377.js.map create mode 100644 public/packs/js/application-32aa31c983405e239377.js.map.br create mode 100644 public/packs/js/application-32aa31c983405e239377.js.map.gz delete mode 100644 public/packs/js/application-420598fa1f5894a19750.js delete mode 100644 public/packs/js/application-420598fa1f5894a19750.js.br delete mode 100644 public/packs/js/application-420598fa1f5894a19750.js.gz delete mode 100644 public/packs/js/application-420598fa1f5894a19750.js.map delete mode 100644 public/packs/js/application-420598fa1f5894a19750.js.map.br delete mode 100644 public/packs/js/application-420598fa1f5894a19750.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 93b7533a..86d6ad6e 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:49ccae39af7147f034936409f9faaa260ce2c41b413ddfce6d9fd3ce65738013 +oid sha256:c91d0705df3380474ffa159115532bd666de19473b5927e622b62b9425e48317 size 10243 diff --git a/public/packs/js/application-32aa31c983405e239377.js b/public/packs/js/application-32aa31c983405e239377.js new file mode 100644 index 00000000..b3d9eda3 --- /dev/null +++ b/public/packs/js/application-32aa31c983405e239377.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18afcff052d92b84eb8a57a3c75ea0906dade11a32e2555ae6a9bc96a2a445a7 +size 1643438 diff --git a/public/packs/js/application-420598fa1f5894a19750.js.LICENSE.txt b/public/packs/js/application-32aa31c983405e239377.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-420598fa1f5894a19750.js.LICENSE.txt rename to public/packs/js/application-32aa31c983405e239377.js.LICENSE.txt diff --git a/public/packs/js/application-32aa31c983405e239377.js.br b/public/packs/js/application-32aa31c983405e239377.js.br new file mode 100644 index 00000000..ea4e3114 --- /dev/null +++ b/public/packs/js/application-32aa31c983405e239377.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72569cbc80694b260f1f82b3f9c9e0aa9bed2c317a574f529c6a197ce5eb5e2d +size 366620 diff --git a/public/packs/js/application-32aa31c983405e239377.js.gz b/public/packs/js/application-32aa31c983405e239377.js.gz new file mode 100644 index 00000000..d8060c6d --- /dev/null +++ b/public/packs/js/application-32aa31c983405e239377.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c11a3867cf8377ac78c267de3685d253535f051a059c41d0515578681f3543f +size 482994 diff --git a/public/packs/js/application-32aa31c983405e239377.js.map b/public/packs/js/application-32aa31c983405e239377.js.map new file mode 100644 index 00000000..6162baba --- /dev/null +++ b/public/packs/js/application-32aa31c983405e239377.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f2e11849e3d355d09c06a4d554a6e7dbd7b7103239dc61d042168600fbaa3f5 +size 6356834 diff --git a/public/packs/js/application-32aa31c983405e239377.js.map.br b/public/packs/js/application-32aa31c983405e239377.js.map.br new file mode 100644 index 00000000..b70556ad --- /dev/null +++ b/public/packs/js/application-32aa31c983405e239377.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22cb28a364f48d6ded11199e796856ff5192929dec76ed12a167a2740c2d3c87 +size 1370769 diff --git a/public/packs/js/application-32aa31c983405e239377.js.map.gz b/public/packs/js/application-32aa31c983405e239377.js.map.gz new file mode 100644 index 00000000..fb06ba6b --- /dev/null +++ b/public/packs/js/application-32aa31c983405e239377.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ce743a09f19854245fa6119551acc61a70ac11a4f3e21a0ae5f3f55571165ce +size 1694526 diff --git a/public/packs/js/application-420598fa1f5894a19750.js b/public/packs/js/application-420598fa1f5894a19750.js deleted file mode 100644 index 6d157f40..00000000 --- a/public/packs/js/application-420598fa1f5894a19750.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:84d2cc2c20439de2e562122135aa0865fd567f19d82efb7995a48c10d2b9a304 -size 1643328 diff --git a/public/packs/js/application-420598fa1f5894a19750.js.br b/public/packs/js/application-420598fa1f5894a19750.js.br deleted file mode 100644 index 2d0a501a..00000000 --- a/public/packs/js/application-420598fa1f5894a19750.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:74bfa43130b1dcb18507b26b21cd07597fba2f07aa6a80c69b94cc821910b633 -size 366248 diff --git a/public/packs/js/application-420598fa1f5894a19750.js.gz b/public/packs/js/application-420598fa1f5894a19750.js.gz deleted file mode 100644 index 937074d2..00000000 --- a/public/packs/js/application-420598fa1f5894a19750.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:cd762462427d1b1a3410f26e2ff904a2fb2d79e2ffde9a7ad05d18a60850bc96 -size 482943 diff --git a/public/packs/js/application-420598fa1f5894a19750.js.map b/public/packs/js/application-420598fa1f5894a19750.js.map deleted file mode 100644 index 4adbb2f3..00000000 --- a/public/packs/js/application-420598fa1f5894a19750.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:69e3b5a08138ed91406f7403f1720566a2db5dbe99eac6b07ad2931c9fc8b25c -size 6384923 diff --git a/public/packs/js/application-420598fa1f5894a19750.js.map.br b/public/packs/js/application-420598fa1f5894a19750.js.map.br deleted file mode 100644 index fbfb4a51..00000000 --- a/public/packs/js/application-420598fa1f5894a19750.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:028d3814326171d40e5b39a6b256aa4596a509710559d3b5bb3cc4e4fc2b3992 -size 1375575 diff --git a/public/packs/js/application-420598fa1f5894a19750.js.map.gz b/public/packs/js/application-420598fa1f5894a19750.js.map.gz deleted file mode 100644 index d9085341..00000000 --- a/public/packs/js/application-420598fa1f5894a19750.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:371bdfce1048495961b5ddac19bd5f771dcfc5d939be2bada9ff27335d77f053 -size 1700036 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index e47fa3fc..71ff6be5 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f7733d8adb2a7d647874b18d9f14a362bacdc38673cc42f350fcd7c8659bc3dd +oid sha256:a97166493d79d64b69f3e72243b35ba9bb4ac97dc8602935a223894d6c663001 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index afb0c467..21f2c4ec 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:72add6797c36f9d11781029fd7a7ad748b3ed4e1c73709ec0d895f11ded0ef0f -size 324 +oid sha256:22f043120eecf6137da58082cd2a2bd4bf98732f0b23966bc6c2c9e364c3e5d9 +size 323 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index d81f813e..9abcae66 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e10cbd8b3e3aff09030a5a9c5a9c22a559538d908af4a672a24cb8635a5a3e2a -size 365 +oid sha256:67ade2a6a2f2b79ad4a040b084d914859537f06cb1bc17788dc1573ee69df62d +size 366 From 7ac4872de33d7f403968687531f57935e698a35d Mon Sep 17 00:00:00 2001 From: f Date: Thu, 2 May 2024 18:51:52 -0300 Subject: [PATCH 427/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 86d6ad6e..086b7356 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c91d0705df3380474ffa159115532bd666de19473b5927e622b62b9425e48317 +oid sha256:a815378c3e42e782ea9d56fb956c2b8c0c05a7955bc452ad9954dd92e47ef7ba size 10243 From cd018385f7c5861b4e425e4d504dd7387d6beade Mon Sep 17 00:00:00 2001 From: jazzari Date: Fri, 3 May 2024 12:43:53 -0300 Subject: [PATCH 428/699] fix: corregidos metodos donde se retorna site o post #13244 --- app/services/post_service.rb | 9 +++------ app/services/site_service.rb | 2 +- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/app/services/post_service.rb b/app/services/post_service.rb index 9cc41323..f7da581d 100644 --- a/app/services/post_service.rb +++ b/app/services/post_service.rb @@ -24,8 +24,7 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do # Devolver el post aunque no se haya salvado para poder rescatar los # errores - post - auto_publish! + post.tap(&:auto_publish!) end # Crear un post anónimo, con opciones más limitadas. No usamos post. @@ -38,8 +37,7 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do params[:draft] = true commit(action: :created, add: [post.path.absolute]) if post.update(anon_post_params) - post - auto_publish! + post.tap(&:auto_publish!) end def update @@ -60,8 +58,7 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do # Devolver el post aunque no se haya salvado para poder rescatar los # errores - post - auto_publish! + post.tap(&:auto_publish!) end def destroy diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 4c83a6dd..1b9ccdb6 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -38,7 +38,7 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do deploy end - site + site.tap(&:auto_publish!) end # Actualiza el sitio y guarda los cambios en la configuración From 71e5a01e80711aff5f6054055b00cf7aa517af38 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 3 May 2024 13:09:51 -0300 Subject: [PATCH 429/699] fix: error 413 #15986 --- app/controllers/active_storage/disk_controller_decorator.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/active_storage/disk_controller_decorator.rb b/app/controllers/active_storage/disk_controller_decorator.rb index ec3ac0b4..8af75227 100644 --- a/app/controllers/active_storage/disk_controller_decorator.rb +++ b/app/controllers/active_storage/disk_controller_decorator.rb @@ -36,7 +36,7 @@ module ActiveStorage rescue StandardError => e ExceptionNotifier.notify_exception(e, data: { key: token[:key], url: url, site: site.name }) - head :content_too_large + head :payload_too_large end else body = request.body From 7ec3e69ec7df2df262c902a3baa957e6be7c69b7 Mon Sep 17 00:00:00 2001 From: maki Date: Fri, 3 May 2024 14:06:32 -0300 Subject: [PATCH 430/699] div al pedo #16080 --- app/views/posts/attributes/_file.haml | 4 ++-- app/views/posts/attributes/_image.haml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/app/views/posts/attributes/_file.haml b/app/views/posts/attributes/_file.haml index 6906e159..31765069 100644 --- a/app/views/posts/attributes/_file.haml +++ b/app/views/posts/attributes/_file.haml @@ -1,6 +1,6 @@ .form-group - .label - = label_tag "#{base}_#{attribute}", post_label_t(attribute, post: post) + + = label_tag "#{base}_#{attribute}", post_label_t(attribute, post: post) - if metadata.static_file - case metadata.static_file.blob.content_type - when %r{\Avideo/} diff --git a/app/views/posts/attributes/_image.haml b/app/views/posts/attributes/_image.haml index 2579dfeb..74388e90 100644 --- a/app/views/posts/attributes/_image.haml +++ b/app/views/posts/attributes/_image.haml @@ -1,6 +1,6 @@ .form-group - .label - = label_tag "#{base}_#{attribute}", post_label_t(attribute, post: post) + + = label_tag "#{base}_#{attribute}", post_label_t(attribute, post: post) - if metadata.static_file = image_tag url_for(metadata.static_file), alt: metadata.value['description'], From 1c44c91f76e0b17f72a2ef6fcdbd0b49e4057875 Mon Sep 17 00:00:00 2001 From: jazzari Date: Tue, 7 May 2024 15:54:29 -0300 Subject: [PATCH 431/699] fix: corregido auto_publish! en Site_service y Post_service #13244 --- app/services/post_service.rb | 9 ++++++--- app/services/site_service.rb | 3 ++- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/app/services/post_service.rb b/app/services/post_service.rb index f7da581d..256a617d 100644 --- a/app/services/post_service.rb +++ b/app/services/post_service.rb @@ -24,7 +24,8 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do # Devolver el post aunque no se haya salvado para poder rescatar los # errores - post.tap(&:auto_publish!) + auto_publish! + post end # Crear un post anónimo, con opciones más limitadas. No usamos post. @@ -37,7 +38,8 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do params[:draft] = true commit(action: :created, add: [post.path.absolute]) if post.update(anon_post_params) - post.tap(&:auto_publish!) + auto_publish! + post end def update @@ -58,7 +60,8 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do # Devolver el post aunque no se haya salvado para poder rescatar los # errores - post.tap(&:auto_publish!) + auto_publish! + post end def destroy diff --git a/app/services/site_service.rb b/app/services/site_service.rb index 1b9ccdb6..0ce09c53 100644 --- a/app/services/site_service.rb +++ b/app/services/site_service.rb @@ -38,7 +38,8 @@ SiteService = Struct.new(:site, :usuarie, :params, keyword_init: true) do deploy end - site.tap(&:auto_publish!) + auto_publish! + site end # Actualiza el sitio y guarda los cambios en la configuración From 58bca950802c193d68f2037d64dcfe4f8a499b6b Mon Sep 17 00:00:00 2001 From: f Date: Thu, 9 May 2024 12:32:24 -0300 Subject: [PATCH 432/699] fix: capybara --- Gemfile.lock | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/Gemfile.lock b/Gemfile.lock index 32547ac7..97721a98 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -118,10 +118,11 @@ GEM bundler-audit (0.9.1) bundler (>= 1.2.0, < 3) thor (~> 1.0) - capybara (2.18.0) + capybara (3.40.0) addressable + matrix mini_mime (>= 0.1.3) - nokogiri (~> 1.8) + nokogiri (~> 1.11) rack (>= 1.6.0) rack-test (>= 0.6.3) regexp_parser (>= 1.5, < 3.0) @@ -361,13 +362,14 @@ GEM net-pop net-smtp marcel (1.0.2) + matrix (0.4.2) memory_profiler (1.0.1) mercenary (0.4.0) method_source (1.0.0) mini_histogram (0.3.1) mini_magick (4.12.0) mini_mime (1.1.5) - mini_portile2 (2.8.5) + mini_portile2 (2.8.6) minitest (5.21.1) mobility (1.2.9) i18n (>= 0.6.10, < 2) @@ -387,7 +389,7 @@ GEM net-ssh (7.2.1) netaddr (2.0.6) nio4r (2.7.0-x86_64-linux-musl) - nokogiri (1.16.0-x86_64-linux-musl) + nokogiri (1.16.4-x86_64-linux-musl) mini_portile2 (~> 2.8.2) racc (~> 1.4) orm_adapter (0.5.0) @@ -408,7 +410,7 @@ GEM pry (0.14.2) coderay (~> 1.1) method_source (~> 1.0) - public_suffix (5.0.4) + public_suffix (5.0.5) puma (6.4.2-x86_64-linux-musl) nio4r (~> 2.0) pundit (2.3.1) From 32a7c4e25a9ec579e4d29aec1971003a44044f90 Mon Sep 17 00:00:00 2001 From: fauno Date: Thu, 9 May 2024 15:38:34 +0000 Subject: [PATCH 433/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- .../{application-5688882d.css => application-e0d66cef.css} | 0 ...pplication-5688882d.css.br => application-e0d66cef.css.br} | 0 ...pplication-5688882d.css.gz => application-e0d66cef.css.gz} | 0 public/packs/js/application-32aa31c983405e239377.js | 3 --- public/packs/js/application-32aa31c983405e239377.js.br | 3 --- public/packs/js/application-32aa31c983405e239377.js.gz | 3 --- public/packs/js/application-32aa31c983405e239377.js.map | 3 --- public/packs/js/application-32aa31c983405e239377.js.map.br | 3 --- public/packs/js/application-32aa31c983405e239377.js.map.gz | 3 --- public/packs/js/application-5e567763c88fb352be77.js | 3 +++ ...SE.txt => application-5e567763c88fb352be77.js.LICENSE.txt} | 0 public/packs/js/application-5e567763c88fb352be77.js.br | 3 +++ public/packs/js/application-5e567763c88fb352be77.js.gz | 3 +++ public/packs/js/application-5e567763c88fb352be77.js.map | 3 +++ public/packs/js/application-5e567763c88fb352be77.js.map.br | 3 +++ public/packs/js/application-5e567763c88fb352be77.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 20 files changed, 24 insertions(+), 24 deletions(-) rename public/packs/css/{application-5688882d.css => application-e0d66cef.css} (100%) rename public/packs/css/{application-5688882d.css.br => application-e0d66cef.css.br} (100%) rename public/packs/css/{application-5688882d.css.gz => application-e0d66cef.css.gz} (100%) delete mode 100644 public/packs/js/application-32aa31c983405e239377.js delete mode 100644 public/packs/js/application-32aa31c983405e239377.js.br delete mode 100644 public/packs/js/application-32aa31c983405e239377.js.gz delete mode 100644 public/packs/js/application-32aa31c983405e239377.js.map delete mode 100644 public/packs/js/application-32aa31c983405e239377.js.map.br delete mode 100644 public/packs/js/application-32aa31c983405e239377.js.map.gz create mode 100644 public/packs/js/application-5e567763c88fb352be77.js rename public/packs/js/{application-32aa31c983405e239377.js.LICENSE.txt => application-5e567763c88fb352be77.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-5e567763c88fb352be77.js.br create mode 100644 public/packs/js/application-5e567763c88fb352be77.js.gz create mode 100644 public/packs/js/application-5e567763c88fb352be77.js.map create mode 100644 public/packs/js/application-5e567763c88fb352be77.js.map.br create mode 100644 public/packs/js/application-5e567763c88fb352be77.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 086b7356..332a30a3 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a815378c3e42e782ea9d56fb956c2b8c0c05a7955bc452ad9954dd92e47ef7ba +oid sha256:89395a7a88064ffbebd6499bea156ed025a6c7c00acdd1da22ae01dae7994cc8 size 10243 diff --git a/public/packs/css/application-5688882d.css b/public/packs/css/application-e0d66cef.css similarity index 100% rename from public/packs/css/application-5688882d.css rename to public/packs/css/application-e0d66cef.css diff --git a/public/packs/css/application-5688882d.css.br b/public/packs/css/application-e0d66cef.css.br similarity index 100% rename from public/packs/css/application-5688882d.css.br rename to public/packs/css/application-e0d66cef.css.br diff --git a/public/packs/css/application-5688882d.css.gz b/public/packs/css/application-e0d66cef.css.gz similarity index 100% rename from public/packs/css/application-5688882d.css.gz rename to public/packs/css/application-e0d66cef.css.gz diff --git a/public/packs/js/application-32aa31c983405e239377.js b/public/packs/js/application-32aa31c983405e239377.js deleted file mode 100644 index b3d9eda3..00000000 --- a/public/packs/js/application-32aa31c983405e239377.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:18afcff052d92b84eb8a57a3c75ea0906dade11a32e2555ae6a9bc96a2a445a7 -size 1643438 diff --git a/public/packs/js/application-32aa31c983405e239377.js.br b/public/packs/js/application-32aa31c983405e239377.js.br deleted file mode 100644 index ea4e3114..00000000 --- a/public/packs/js/application-32aa31c983405e239377.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:72569cbc80694b260f1f82b3f9c9e0aa9bed2c317a574f529c6a197ce5eb5e2d -size 366620 diff --git a/public/packs/js/application-32aa31c983405e239377.js.gz b/public/packs/js/application-32aa31c983405e239377.js.gz deleted file mode 100644 index d8060c6d..00000000 --- a/public/packs/js/application-32aa31c983405e239377.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0c11a3867cf8377ac78c267de3685d253535f051a059c41d0515578681f3543f -size 482994 diff --git a/public/packs/js/application-32aa31c983405e239377.js.map b/public/packs/js/application-32aa31c983405e239377.js.map deleted file mode 100644 index 6162baba..00000000 --- a/public/packs/js/application-32aa31c983405e239377.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0f2e11849e3d355d09c06a4d554a6e7dbd7b7103239dc61d042168600fbaa3f5 -size 6356834 diff --git a/public/packs/js/application-32aa31c983405e239377.js.map.br b/public/packs/js/application-32aa31c983405e239377.js.map.br deleted file mode 100644 index b70556ad..00000000 --- a/public/packs/js/application-32aa31c983405e239377.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:22cb28a364f48d6ded11199e796856ff5192929dec76ed12a167a2740c2d3c87 -size 1370769 diff --git a/public/packs/js/application-32aa31c983405e239377.js.map.gz b/public/packs/js/application-32aa31c983405e239377.js.map.gz deleted file mode 100644 index fb06ba6b..00000000 --- a/public/packs/js/application-32aa31c983405e239377.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0ce743a09f19854245fa6119551acc61a70ac11a4f3e21a0ae5f3f55571165ce -size 1694526 diff --git a/public/packs/js/application-5e567763c88fb352be77.js b/public/packs/js/application-5e567763c88fb352be77.js new file mode 100644 index 00000000..46562262 --- /dev/null +++ b/public/packs/js/application-5e567763c88fb352be77.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62d1f8867d88ec64d12cee2e86ad4fdd363ffe4a3516c0a5c6d65cd3219624a7 +size 1644364 diff --git a/public/packs/js/application-32aa31c983405e239377.js.LICENSE.txt b/public/packs/js/application-5e567763c88fb352be77.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-32aa31c983405e239377.js.LICENSE.txt rename to public/packs/js/application-5e567763c88fb352be77.js.LICENSE.txt diff --git a/public/packs/js/application-5e567763c88fb352be77.js.br b/public/packs/js/application-5e567763c88fb352be77.js.br new file mode 100644 index 00000000..ed58903d --- /dev/null +++ b/public/packs/js/application-5e567763c88fb352be77.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c91173b409bd6e84f40cefdc19d466c848e94d20087cb23a063d2b7bd54458d1 +size 366685 diff --git a/public/packs/js/application-5e567763c88fb352be77.js.gz b/public/packs/js/application-5e567763c88fb352be77.js.gz new file mode 100644 index 00000000..b187d06b --- /dev/null +++ b/public/packs/js/application-5e567763c88fb352be77.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:908bd87788fff1388ed76e60646715aaac6c6f65d5e28620d338b1b39e3434f4 +size 483358 diff --git a/public/packs/js/application-5e567763c88fb352be77.js.map b/public/packs/js/application-5e567763c88fb352be77.js.map new file mode 100644 index 00000000..094ae7c1 --- /dev/null +++ b/public/packs/js/application-5e567763c88fb352be77.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd0e2c4a400ba5fdb9d795dc0d533814d5180e89aa2ac2ba0954061e47d6f959 +size 6387599 diff --git a/public/packs/js/application-5e567763c88fb352be77.js.map.br b/public/packs/js/application-5e567763c88fb352be77.js.map.br new file mode 100644 index 00000000..20280fd8 --- /dev/null +++ b/public/packs/js/application-5e567763c88fb352be77.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f4de443176d1e60abc706a51412d3bb450a48a4c4af564de168cdb13dcf55e6 +size 1375691 diff --git a/public/packs/js/application-5e567763c88fb352be77.js.map.gz b/public/packs/js/application-5e567763c88fb352be77.js.map.gz new file mode 100644 index 00000000..6d5abc8e --- /dev/null +++ b/public/packs/js/application-5e567763c88fb352be77.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8821c193db88c59c72f379ee5c4dbce624dab28802722e623b7bbb4ec12ff7ff +size 1701215 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 71ff6be5..5b28f687 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a97166493d79d64b69f3e72243b35ba9bb4ac97dc8602935a223894d6c663001 +oid sha256:d51c7b68bc509554c0f29a511aa553c42324b94e9c8e5b7977d109cebcae7978 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 21f2c4ec..2090a5e8 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:22f043120eecf6137da58082cd2a2bd4bf98732f0b23966bc6c2c9e364c3e5d9 -size 323 +oid sha256:1069474766e7b968961892eb355a70602ee18cea6d00e3b803c4f23b385a686a +size 320 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 9abcae66..93f3717a 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:67ade2a6a2f2b79ad4a040b084d914859537f06cb1bc17788dc1573ee69df62d -size 366 +oid sha256:d6ee7bca4e6e888c05b69c1ad646395ea87fe2861858b824b3df5d15a72b8ee8 +size 365 From 581fea57959025618ed4711af70e8be108177a21 Mon Sep 17 00:00:00 2001 From: maki Date: Fri, 10 May 2024 12:02:48 -0300 Subject: [PATCH 434/699] fix: translation missing para label de audio #16080 --- config/locales/en.yml | 2 ++ config/locales/es.yml | 2 ++ 2 files changed, 4 insertions(+) diff --git a/config/locales/en.yml b/config/locales/en.yml index 3a22a41b..7ac7291d 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -553,6 +553,8 @@ en: image: label: Image destroy: Remove image + audio: + label: Audio file logo: label: Logo download: diff --git a/config/locales/es.yml b/config/locales/es.yml index 1828b001..0d04bf5d 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -563,6 +563,8 @@ es: destroy: 'Eliminar imagen' logo: label: Logo + audio: + label: Audio download: label: Archivo belongs_to: From f71a35916b3a890ecc54d7c5a0462aac60947c45 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 15 May 2024 12:56:46 -0300 Subject: [PATCH 435/699] fix: esperar para correr bundler varias veces #16282 --- app/models/site.rb | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/app/models/site.rb b/app/models/site.rb index d47a8e50..377c6b35 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -577,14 +577,18 @@ class Site < ApplicationRecord def install_gems return unless persisted? - deploy_local = deploys.find_by_type('DeployLocal') - deploy_local.git_lfs + Site.one_at_a_time.synchronize do + deploy_local = deploys.find_by_type('DeployLocal') + deploy_local.git_lfs + end return unless !gems_installed? || gemfile_updated? || gemfile_lock_updated? - deploy_local.bundle - touch - FileUtils.touch(gemfile_path) + Site.one_at_a_time.synchronize do + deploy_local.bundle + touch + FileUtils.touch(gemfile_path) + end end def gem_path From e266b88866dd5c4a5bf29f1164ab16aaa3a2cbcd Mon Sep 17 00:00:00 2001 From: f Date: Wed, 15 May 2024 17:25:10 -0300 Subject: [PATCH 436/699] =?UTF-8?q?fix:=20instalar=20gemas=20si=20la=20pla?= =?UTF-8?q?ntilla=20no=20est=C3=A1=20instalada=20#16282?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/site.rb | 37 +++++++++++++++++++++++++++---------- 1 file changed, 27 insertions(+), 10 deletions(-) diff --git a/app/models/site.rb b/app/models/site.rb index 377c6b35..28f0d739 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -577,20 +577,37 @@ class Site < ApplicationRecord def install_gems return unless persisted? - Site.one_at_a_time.synchronize do - deploy_local = deploys.find_by_type('DeployLocal') - deploy_local.git_lfs - end + deploy_local = deploys.find_by_type('DeployLocal') + deploy_local.git_lfs - return unless !gems_installed? || gemfile_updated? || gemfile_lock_updated? + return unless (!gems_installed? || theme_path.blank?) || gemfile_updated? || gemfile_lock_updated? - Site.one_at_a_time.synchronize do - deploy_local.bundle - touch - FileUtils.touch(gemfile_path) - end + deploy_local.bundle + touch + FileUtils.touch(gemfile_path) end + # El sitio tiene una plantilla + # + # @return [Bool] + def theme? + config.key?('theme') + end + + # El directorio donde se encuentran los archivos de la plantilla. Si + # es nil es que las dependencias todavía no se instalaron. + # + # @return [String,nil] + def theme_path + @theme_path ||= + if theme? + Dir[gem_path.join('gems', "#{config['theme']}-*").to_s].first + else + path + end + end + + # @return [Pathname] def gem_path @gem_path ||= begin From 5e99cb4758447e7d53d4c41924ec1ba479e2512f Mon Sep 17 00:00:00 2001 From: f Date: Wed, 15 May 2024 17:26:14 -0300 Subject: [PATCH 437/699] fix: no correr git lfs al cargar el sitio es muy lento --- app/models/site.rb | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/app/models/site.rb b/app/models/site.rb index 28f0d739..75b0a744 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -576,13 +576,9 @@ class Site < ApplicationRecord # * El archivo Gemfile.lock se modificó def install_gems return unless persisted? - - deploy_local = deploys.find_by_type('DeployLocal') - deploy_local.git_lfs - return unless (!gems_installed? || theme_path.blank?) || gemfile_updated? || gemfile_lock_updated? - deploy_local.bundle + deploys.find_by_type('DeployLocal').bundle touch FileUtils.touch(gemfile_path) end From 561a6c4c8c96948e354031bb271d68468ccf921d Mon Sep 17 00:00:00 2001 From: fauno Date: Wed, 15 May 2024 20:35:14 +0000 Subject: [PATCH 438/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 332a30a3..dba5cb1b 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:89395a7a88064ffbebd6499bea156ed025a6c7c00acdd1da22ae01dae7994cc8 +oid sha256:2a7c12799d1a8feeb600375a529237ff5723dcbc915ca5c1026ef216ed3c7372 size 10243 From 602432f72dacb574c566123490bb6ef79fec93e8 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 15 May 2024 17:54:34 -0300 Subject: [PATCH 439/699] fix: los openstruct no tienen key? --- app/models/site.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/site.rb b/app/models/site.rb index 75b0a744..691f3019 100644 --- a/app/models/site.rb +++ b/app/models/site.rb @@ -587,7 +587,7 @@ class Site < ApplicationRecord # # @return [Bool] def theme? - config.key?('theme') + config['theme'].present? end # El directorio donde se encuentran los archivos de la plantilla. Si From 9e95dedb5c5b09644f12b3452ce9fc438541a5ef Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 May 2024 14:53:10 -0300 Subject: [PATCH 440/699] =?UTF-8?q?feat:=20vamos=20a=20usar=20nanoid=20par?= =?UTF-8?q?a=20generar=20ids=20=C3=BAnicos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Gemfile | 1 + Gemfile.lock | 2 ++ 2 files changed, 3 insertions(+) diff --git a/Gemfile b/Gemfile index 5714b981..30794e83 100644 --- a/Gemfile +++ b/Gemfile @@ -85,6 +85,7 @@ gem 'rubanok' gem 'after_commit_everywhere', '~> 1.0' gem 'aasm' gem 'que-web' +gem 'nanoid' # database gem 'hairtrigger' diff --git a/Gemfile.lock b/Gemfile.lock index 7f5284ef..db6b892d 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -373,6 +373,7 @@ GEM multi_xml (0.6.0) mustermann (3.0.0) ruby2_keywords (~> 0.0.1) + nanoid (2.0.0) net-imap (0.4.9) date net-protocol @@ -677,6 +678,7 @@ DEPENDENCIES memory_profiler mini_magick mobility + nanoid net-ssh nokogiri pg From 5f5026bccabdd97f970c845bddc6e355d0b7fc6e Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 May 2024 14:57:13 -0300 Subject: [PATCH 441/699] =?UTF-8?q?fix:=20solo=20usar=20fuertecita=20dentr?= =?UTF-8?q?o=20de=20los=20dise=C3=B1os?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/assets/stylesheets/application.scss | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 4d1d0848..68b610bc 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -318,13 +318,13 @@ svg { } } -.custom-control-label { - font-weight: bold; -} - .designs { .design { margin-top: 1rem; + + .custom-control-label { + font-weight: bold; + } } } From c75deaf030f11bcae796e5110bc649a3869766cb Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 May 2024 14:59:23 -0300 Subject: [PATCH 442/699] feat: poder modificar atributos del custom-input --- app/views/bootstrap/_custom_checkbox.haml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/app/views/bootstrap/_custom_checkbox.haml b/app/views/bootstrap/_custom_checkbox.haml index 0c3ff3a6..a2cf6c27 100644 --- a/app/views/bootstrap/_custom_checkbox.haml +++ b/app/views/bootstrap/_custom_checkbox.haml @@ -1,6 +1,9 @@ - help_id = "#{id}_help" +- checkbox_attributes = local_assigns.slice(:id, :type, :name, :value, :required, :checked) +- checkbox_attributes[:type] ||= 'checkbox' .custom-control.custom-checkbox - %input.custom-control-input{ id: id, type: 'checkbox', name: name, value: value, required: required } + %input.custom-control-input{ **checkbox_attributes } %label.custom-control-label{ for: id, aria: { describedby: help_id } }= content - %small.form-text.text-muted{ id: help_id }= yield + - if (block = yield).present? + %small.form-text.text-muted{ id: help_id }= block From 8fe964686bfc7c46e5b89636c9fd3b47d23dc6e7 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 May 2024 15:00:08 -0300 Subject: [PATCH 443/699] feat: eliminar tildes de una string, sin transliterar MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit usamos esto porque es más rápido y podemos tener un proceso similar en js sin implementar transliteración --- app/lib/core_extensions/string/remove_diacritics.rb | 12 ++++++++++++ config/initializers/core_extensions.rb | 1 + 2 files changed, 13 insertions(+) create mode 100644 app/lib/core_extensions/string/remove_diacritics.rb diff --git a/app/lib/core_extensions/string/remove_diacritics.rb b/app/lib/core_extensions/string/remove_diacritics.rb new file mode 100644 index 00000000..679db13d --- /dev/null +++ b/app/lib/core_extensions/string/remove_diacritics.rb @@ -0,0 +1,12 @@ +# frozen_string_literal: true + +module CoreExtensions + module String + # Elimina tildes + module RemoveDiacritics + def remove_diacritics + unicode_normalize(:nfd).gsub(/[^\x00-\x7F]/, '') + end + end + end +end diff --git a/config/initializers/core_extensions.rb b/config/initializers/core_extensions.rb index 7d1eab9e..6861da45 100644 --- a/config/initializers/core_extensions.rb +++ b/config/initializers/core_extensions.rb @@ -1,6 +1,7 @@ # frozen_string_literal: true String.include CoreExtensions::String::StripTags +String.include CoreExtensions::String::RemoveDiacritics Jekyll::Document.include CoreExtensions::Jekyll::Document::Path Jekyll::DataReader.include Jekyll::Readers::DataReaderDecorator From ee459b2d4e75980eba343d1686599667eff7a427 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 May 2024 15:06:44 -0300 Subject: [PATCH 444/699] feat: modal de boostrap 4.6 --- app/assets/stylesheets/application.scss | 1 + .../controllers/modal_controller.js | 40 +++++++++++++++++++ app/views/bootstrap/_modal.haml | 38 ++++++++++++++++++ 3 files changed, 79 insertions(+) create mode 100644 app/javascript/controllers/modal_controller.js create mode 100644 app/views/bootstrap/_modal.haml diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 68b610bc..7d9c8c9d 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -20,6 +20,7 @@ $form-feedback-valid-color: $black; $form-feedback-invalid-color: $magenta; $form-feedback-icon-valid-color: $black; $component-active-bg: $magenta; +$zindex-modal-backdrop: 0; $spacers: ( 2-plus: 0.75rem diff --git a/app/javascript/controllers/modal_controller.js b/app/javascript/controllers/modal_controller.js new file mode 100644 index 00000000..3a614b80 --- /dev/null +++ b/app/javascript/controllers/modal_controller.js @@ -0,0 +1,40 @@ +import { Controller } from "stimulus"; + +export default class extends Controller { + static targets = ["modal", "backdrop"]; + + show(event = undefined) { + event?.preventDefault(); + + this.modalTarget.style.display = "block"; + this.backdropTarget.style.display = "block"; + this.modalTarget.setAttribute("role", "dialog"); + this.modalTarget.setAttribute("aria-modal", true); + this.modalTarget.removeAttribute("aria-hidden"); + + window.document.body.classList.add("modal-open"); + + setTimeout(() => { + this.modalTarget.classList.add("show"); + this.backdropTarget.classList.add("show"); + }, 1); + } + + hide(event = undefined) { + event?.preventDefault(); + + this.backdropTarget.classList.remove("show"); + this.modalTarget.classList.remove("show"); + + this.modalTarget.setAttribute("aria-hidden", true); + this.modalTarget.removeAttribute("role"); + this.modalTarget.removeAttribute("aria-modal"); + + setTimeout(() => { + this.modalTarget.style.display = ""; + this.backdropTarget.style.display = ""; + }, 500); + + window.document.body.classList.remove("modal-open"); + } +} diff --git a/app/views/bootstrap/_modal.haml b/app/views/bootstrap/_modal.haml new file mode 100644 index 00000000..b57fc94e --- /dev/null +++ b/app/views/bootstrap/_modal.haml @@ -0,0 +1,38 @@ +-# + # Modal + + @see {https://getbootstrap.com/docs/4.6/components/modal/} + @see {https://github.com/bullet-train-co/nice_partials/issues/99} + @param :id [String] El ID del modal + @param :modal_content_attributes [Hash] Atributos para el contenido del modal + @param :hide_actions [Array] Acciones al ocultar el modal + @yield :ID_body Contenido + @yield :ID_header Contenido del header (opcional) + @yield :ID_footer Contenido del pie (opcional) + @example + = render 'bootstrap/modal', id: 'algo' do |partial| + - content_for :algo_header do + = 'título' + - content_for :algo_body do + = 'contenido' + - content_for :algo_footer do + = 'pie' + +- local_assigns[:hide_actions] ||= [] +- local_assigns[:hide_actions] << 'click->modal#hide' +- local_assigns[:modal_content_attributes] ||= {} + +.modal.fade{ tabindex: -1, aria: { hidden: 'true' }, data: { target: 'modal.modal' } } + .modal-backdrop.fade{ data: { target: 'modal.backdrop', action: local_assigns[:hide_actions].join(' ') } } + .modal-dialog.modal-dialog-scrollable.modal-dialog-centered + .modal-content{ **local_assigns[:modal_content_attributes] } + - if (header = yield(:"#{id}_header")).present? + .modal-header= header + + .modal-body= yield(:"#{id}_body") + + .modal-footer.flex-nowrap + - if (footer = yield(:"#{id}_footer")) + = footer + - else + %button.btn.btn-secondary.m-0{ type: 'button', data: { action: 'modal#hide' } }= t('.close') From 7dbe12ed66c851b3f3b3de5e9b4bd1d38c0aed26 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 May 2024 15:07:22 -0300 Subject: [PATCH 445/699] fix: no permitir que htmx haga peticiones fuera del panel --- app/javascript/packs/application.js | 1 + 1 file changed, 1 insertion(+) diff --git a/app/javascript/packs/application.js b/app/javascript/packs/application.js index e10e2b5d..c523b0f0 100644 --- a/app/javascript/packs/application.js +++ b/app/javascript/packs/application.js @@ -42,3 +42,4 @@ Turbolinks.start() ActiveStorage.start() window.htmx = require('htmx.org/dist/htmx.js') +window.htmx.config.selfRequestsOnly = true; From 76de2e543e1cc0562937e89545c2e57909481e31 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 May 2024 15:17:47 -0300 Subject: [PATCH 446/699] =?UTF-8?q?feat:=20un=20bot=C3=B3n=20accionable?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/bootstrap/_btn.haml | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 app/views/bootstrap/_btn.haml diff --git a/app/views/bootstrap/_btn.haml b/app/views/bootstrap/_btn.haml new file mode 100644 index 00000000..22f60b3e --- /dev/null +++ b/app/views/bootstrap/_btn.haml @@ -0,0 +1,12 @@ +-# + Un botón + + @param :content [String] Contenido + @param :action [String] Acción de Stimulus + @param :target [String] Objetivo de Stimulus + @param [Hash] Atributos en bruto, con mayor prioridad que action y target +- attributes = local_assigns.to_h.except(:content) +- attributes[:data] ||= {} +- attributes[:data][:action] ||= local_assigns[:action] +- attributes[:data][:target] ||= local_assigns[:target] +%button.btn.btn-secondary{ type: 'button', **attributes }= content From ae06e3e788a8c5f92ccd735bc81baa1db7e309e9 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 May 2024 15:24:08 -0300 Subject: [PATCH 447/699] =?UTF-8?q?feat:=20redise=C3=B1ar=20arrays=20#1506?= =?UTF-8?q?8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/posts_controller.rb | 17 +++ .../controllers/array_controller.js | 120 ++++++++++++++++++ app/javascript/etc/htmx_abort.js | 4 + app/models/metadata_new_array.rb | 6 + app/views/layouts/application.html.haml | 1 + app/views/posts/_new_array_value.haml | 2 + app/views/posts/attributes/_new_array.haml | 58 +++++++++ app/views/posts/new_array.haml | 8 ++ app/views/posts/new_array_value.haml | 1 + config/locales/en.yml | 9 ++ config/locales/es.yml | 9 ++ config/routes.rb | 4 + 12 files changed, 239 insertions(+) create mode 100644 app/javascript/controllers/array_controller.js create mode 100644 app/models/metadata_new_array.rb create mode 100644 app/views/posts/_new_array_value.haml create mode 100644 app/views/posts/attributes/_new_array.haml create mode 100644 app/views/posts/new_array.haml create mode 100644 app/views/posts/new_array_value.haml diff --git a/app/controllers/posts_controller.rb b/app/controllers/posts_controller.rb index 057c3068..f241dfb1 100644 --- a/app/controllers/posts_controller.rb +++ b/app/controllers/posts_controller.rb @@ -15,6 +15,23 @@ class PostsController < ApplicationController { locale: locale } end + # @todo Mover a tu propio scope + def new_array + @value = params.require(:value).strip + @name = params.require(:name).strip + id = params.require(:id).strip + + headers['HX-Trigger-After-Swap'] = 'htmx:resetForm' + + render layout: false + end + + def new_array_value + @value = params.require(:value).strip + + render layout: false + end + def index authorize Post diff --git a/app/javascript/controllers/array_controller.js b/app/javascript/controllers/array_controller.js new file mode 100644 index 00000000..66cc2290 --- /dev/null +++ b/app/javascript/controllers/array_controller.js @@ -0,0 +1,120 @@ +import { Controller } from "stimulus"; + +export default class extends Controller { + static targets = ["item", "search", "current"]; + + connect() { + // TODO: Stimulus >1 + this.newArrayValueURL = new URL(window.location.origin); + this.newArrayValueURL.pathname = this.element.dataset.arrayNewArrayValue; + this.originalValue = JSON.parse(this.element.dataset.arrayOriginalValue); + } + + /* + * Al eliminar el ítem, buscamos por su ID y lo eliminamos del + * documento. + */ + remove(event) { + // TODO: Stimulus >1 + event.preventDefault(); + + this.itemTargets + .find((x) => x.id === event.target.dataset.removeTargetParam) + ?.remove(); + } + + /* + * Al buscar, eliminamos las tildes y mayúsculas para no depender de + * cómo se escribió. + * + * Luego buscamos eso en el valor limpio, ignorando los items que ya + * están activados. + * + * Si el término de búsqueda está vacío, volvemos a la lista original. + */ + search(event) { + const needle = this.searchTarget.value + .normalize("NFD") + .replace(/[\u0300-\u036f]/g, "") + .toLowerCase() + .trim(); + + if (needle) { + for (const itemTarget of this.itemTargets) { + itemTarget.style.display = + itemTarget.querySelector("input")?.checked || + itemTarget.dataset.searchableValue.includes(needle) + ? "" + : "none"; + } + } else { + for (const itemTarget of this.itemTargets) { + itemTarget.style.display = ""; + } + } + } + + /* + * Obtiene el input de un elemento + * + * @param [HTMLElement] + * @return [HTMLElement,nil] + */ + inputFrom(target) { + if (target.tagName === "INPUT") return target; + + return target.querySelector("input"); + } + + /* + * Detecta si el item es o contiene un checkbox/radio activado. + * + * @param [HTMLElement] + * @return [Bool] + */ + isChecked(itemTarget) { + return this.inputFrom(itemTarget)?.checked || false; + } + + /* + * Al cancelar, se vuelve al estado original de la lista + */ + cancel(event) { + for (const itemTarget of this.itemTargets) { + const input = this.inputFrom(itemTarget); + + input.checked = this.originalValue.includes(itemTarget.dataset.value); + } + } + + /* + * Al aceptar, se envía todo el listado de valores nuevos al _backend_ + * para que devuelva la representación de cada ítem en HTML. Además, + * se guarda el nuevo valor como la lista original, para la próxima + * cancelación. + */ + accept(event) { + this.currentTarget.innerHTML = ""; + this.originalValue = []; + + for (const itemTarget of this.itemTargets) { + if (!itemTarget.dataset.value) continue; + if (!this.isChecked(itemTarget)) continue; + + this.originalValue.push(itemTarget.dataset.value); + this.newArrayValueURL.searchParams.set("value", itemTarget.dataset.value); + + // TODO: Renderizarlas todas juntas + fetch(this.newArrayValueURL) + .then((response) => response.text()) + .then((body) => + this.currentTarget.insertAdjacentHTML("beforeend", body), + ); + } + + // TODO: Stimulus >1 + this.element.dataset.arrayOriginalValue = JSON.stringify( + this.originalValue, + ); + } +} diff --git a/app/javascript/etc/htmx_abort.js b/app/javascript/etc/htmx_abort.js index 308d0315..75e497ba 100644 --- a/app/javascript/etc/htmx_abort.js +++ b/app/javascript/etc/htmx_abort.js @@ -5,3 +5,7 @@ document.addEventListener("turbolinks:click", () => { window.htmx.trigger(hx, "htmx:abort"); } }); + +document.addEventListener("htmx:resetForm", (event) => { + event.target.reset(); +}); diff --git a/app/models/metadata_new_array.rb b/app/models/metadata_new_array.rb new file mode 100644 index 00000000..a76ff9f2 --- /dev/null +++ b/app/models/metadata_new_array.rb @@ -0,0 +1,6 @@ +# frozen_string_literal: true + +# Implementa la nueva interfaz de +class MetadataNewArray < MetadataArray + +end diff --git a/app/views/layouts/application.html.haml b/app/views/layouts/application.html.haml index eaa15eb4..65d3f777 100644 --- a/app/views/layouts/application.html.haml +++ b/app/views/layouts/application.html.haml @@ -25,6 +25,7 @@ = render 'layouts/breadcrumb' = render 'layouts/flash' + = yield(:post_form) = yield - if flash[:js] diff --git a/app/views/posts/_new_array_value.haml b/app/views/posts/_new_array_value.haml new file mode 100644 index 00000000..75c5bf4d --- /dev/null +++ b/app/views/posts/_new_array_value.haml @@ -0,0 +1,2 @@ +.col + %p= value diff --git a/app/views/posts/attributes/_new_array.haml b/app/views/posts/attributes/_new_array.haml new file mode 100644 index 00000000..79ba22e2 --- /dev/null +++ b/app/views/posts/attributes/_new_array.haml @@ -0,0 +1,58 @@ +-# + Genera un listado de checkboxes entre los que se puede elegir para guardar +- id = "#{base}_#{attribute}" +- name = "#{base}[#{attribute}][]" +- form_id = "form-#{Nanoid.generate}" + +%div{ data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } + .form-group + = hidden_field_tag name, '' + = label_tag id, post_label_t(attribute, post: post) + -# Mostramos la lista de valores actuales. + + Al aceptar el modal, se vacía el listado y se completa en base a + renderizaciones con HTMX. Para poder hacer eso, tenemos que poder + acceder a todos los items dentro del modal (como array.item) y + enviar el valor al endpoint que devuelve uno por uno. Esto lo + tenemos disponible en Stimulus, pero queremos usar HTMX o técnica + similar para poder renderizar del lado del servidor. + + Para poder cancelar, mantenemos el estado original y desactivamos + o activamos los ítemes según estén incluidos en esa lista o no. + .row.row-cols-1.row-cols-md-2{ data: { target: 'array.current' } } + - metadata.value.sort_by(&:remove_diacritics).each do |value| + = render 'posts/new_array_value', value: value + + = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' + + = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do + - content_for :"#{id}_header" do + .form-group.flex-grow-1.mb-0 + = label_tag id, post_label_t(attribute, post: post) + %input.form-control{data: { target: 'array.search', action: 'input->array#search' }, type: 'search', placeholder: t('.filter') } + + - content_for :"#{id}_body" do + .form-group.mb-0{ id: "#{id}_body" } + -# Eliminamos las tildes para poder buscar independientemente de cómo se escriba + - metadata.values.sort_by(&:remove_diacritics).each do |value| + .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: value } } + = render 'bootstrap/custom_checkbox', name: name, id: "value-#{Nanoid.generate}", value: value, checked: metadata.value.include?(value), content: value + + - content_for :"#{id}_footer" do + .input-group.w-auto.flex-grow-1.my-0 + %input.form-control{form: form_id, name: 'value', type: 'text', placeholder: t('.add_new')} + .input-group-append + = render 'bootstrap/btn', content: t('.add'), form: form_id, type: 'submit', class: 'mb-0 mr-0' + = render 'bootstrap/btn', content: t('.accept'), action: 'array#accept modal#hide', class: 'm-0 mr-1' + = render 'bootstrap/btn', content: t('.cancel'), action: 'array#cancel modal#hide', class: 'm-0' + + -# Los formularios para HTMX se colocan por fuera del formulario + principal, porque HTML5 no soporta formularios anidados. Los campos + quedan unidos al formulario por su atributo `id`. + + Al enviar el formulario se obtiene una nueva opción con el valor + y se la agrega al final del listado. + - content_for :post_form do + %form{ id: form_id, 'hx-get': site_posts_new_array_path(site), 'hx-target': "##{id}_body", 'hx-swap': 'beforeend' } + %input{ type: 'hidden', name: 'name', value: name } + %input{ type: 'hidden', name: 'id', value: form_id } diff --git a/app/views/posts/new_array.haml b/app/views/posts/new_array.haml new file mode 100644 index 00000000..81cdcdea --- /dev/null +++ b/app/views/posts/new_array.haml @@ -0,0 +1,8 @@ +- item_id = "item-#{Nanoid.generate}" + +.mb-2{ id: item_id, data: { target: 'array.item', 'searchable-value': @value.remove_diacritics.downcase, value: @value } } + .d-flex.flex-row.flex-wrap + .flex-grow-1 + = render 'bootstrap/custom_checkbox', name: @name, id: "value-#{Nanoid.generate}", value: @value, checked: true, content: @value + %div + %button.btn.btn-sm.m-0{ data: { action: 'array#remove', 'remove-target-param': item_id }}= t('.remove') diff --git a/app/views/posts/new_array_value.haml b/app/views/posts/new_array_value.haml new file mode 100644 index 00000000..c71ed3b5 --- /dev/null +++ b/app/views/posts/new_array_value.haml @@ -0,0 +1 @@ += render 'posts/new_array_value', value: @value diff --git a/config/locales/en.yml b/config/locales/en.yml index 5e9a2377..88b1db19 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -721,7 +721,16 @@ en: save_draft: 'Save as draft' invalid_help: 'Some fields need attention! Please search for the fields marked as invalid.' sending_help: Saving, please wait... + new_array: + remove: "Remove" attributes: + new_array: + edit: "Edit" + filter: "Start typing to filter..." + add_new: "Add new option" + add: "Add" + accept: "Accept" + cancel: "Cancel" add: Add lang: label: Language diff --git a/config/locales/es.yml b/config/locales/es.yml index a07b3799..4945c19f 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -729,7 +729,16 @@ es: save_draft: 'Guardar como borrador' invalid_help: '¡Te faltan completar algunos campos! Busca los que estén marcados como inválidos' sending_help: Guardando, por favor espera... + new_array: + remove: "Eliminar" attributes: + new_array: + edit: "Editar" + filter: "Empezá a escribir para filtrar..." + add_new: "Agregar nueva opción" + add: "Agregar" + accept: "Aceptar" + cancel: "Cancelar" add: Agregar lang: label: Idioma diff --git a/config/routes.rb b/config/routes.rb index 9d5c974a..eb20edce 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -99,6 +99,10 @@ Rails.application.routes.draw do nested do scope '/(:locale)', constraint: /[a-z]{2}(-[A-Z]{2})?/ do post :'posts/reorder', to: 'posts#reorder' + + get :'posts/new_array', to: 'posts#new_array' + get :'posts/new_array_value', to: 'posts#new_array_value' + resources :posts do get 'p/:page', action: :index, on: :collection get :preview, to: 'posts#preview' From b3a1673795ed738404d66c375b336cd8ff5cc841 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 May 2024 15:30:25 -0300 Subject: [PATCH 448/699] chore: linting --- app/models/metadata_new_array.rb | 3 +-- app/views/bootstrap/_btn.haml | 9 +++++---- app/views/bootstrap/_custom_checkbox.haml | 7 ++++--- app/views/bootstrap/_modal.haml | 7 ++++--- app/views/posts/attributes/_new_array.haml | 11 ++++++----- app/views/posts/new_array.haml | 2 +- 6 files changed, 21 insertions(+), 18 deletions(-) diff --git a/app/models/metadata_new_array.rb b/app/models/metadata_new_array.rb index a76ff9f2..65993be2 100644 --- a/app/models/metadata_new_array.rb +++ b/app/models/metadata_new_array.rb @@ -1,6 +1,5 @@ # frozen_string_literal: true -# Implementa la nueva interfaz de +# Implementa la nueva interfaz de gestión de valores class MetadataNewArray < MetadataArray - end diff --git a/app/views/bootstrap/_btn.haml b/app/views/bootstrap/_btn.haml index 22f60b3e..1bbebb26 100644 --- a/app/views/bootstrap/_btn.haml +++ b/app/views/bootstrap/_btn.haml @@ -5,8 +5,9 @@ @param :action [String] Acción de Stimulus @param :target [String] Objetivo de Stimulus @param [Hash] Atributos en bruto, con mayor prioridad que action y target -- attributes = local_assigns.to_h.except(:content) -- attributes[:data] ||= {} -- attributes[:data][:action] ||= local_assigns[:action] -- attributes[:data][:target] ||= local_assigns[:target] +:ruby + attributes = local_assigns.to_h.except(:content) + attributes[:data] ||= {} + attributes[:data][:action] ||= local_assigns[:action] + attributes[:data][:target] ||= local_assigns[:target] %button.btn.btn-secondary{ type: 'button', **attributes }= content diff --git a/app/views/bootstrap/_custom_checkbox.haml b/app/views/bootstrap/_custom_checkbox.haml index a2cf6c27..c8cd1b41 100644 --- a/app/views/bootstrap/_custom_checkbox.haml +++ b/app/views/bootstrap/_custom_checkbox.haml @@ -1,6 +1,7 @@ -- help_id = "#{id}_help" -- checkbox_attributes = local_assigns.slice(:id, :type, :name, :value, :required, :checked) -- checkbox_attributes[:type] ||= 'checkbox' +:ruby + help_id = "#{id}_help" + checkbox_attributes = local_assigns.slice(:id, :type, :name, :value, :required, :checked) + checkbox_attributes[:type] ||= 'checkbox' .custom-control.custom-checkbox %input.custom-control-input{ **checkbox_attributes } diff --git a/app/views/bootstrap/_modal.haml b/app/views/bootstrap/_modal.haml index b57fc94e..f6dafc2a 100644 --- a/app/views/bootstrap/_modal.haml +++ b/app/views/bootstrap/_modal.haml @@ -18,9 +18,10 @@ - content_for :algo_footer do = 'pie' -- local_assigns[:hide_actions] ||= [] -- local_assigns[:hide_actions] << 'click->modal#hide' -- local_assigns[:modal_content_attributes] ||= {} +:ruby + local_assigns[:hide_actions] ||= [] + local_assigns[:hide_actions] << 'click->modal#hide' + local_assigns[:modal_content_attributes] ||= {} .modal.fade{ tabindex: -1, aria: { hidden: 'true' }, data: { target: 'modal.modal' } } .modal-backdrop.fade{ data: { target: 'modal.backdrop', action: local_assigns[:hide_actions].join(' ') } } diff --git a/app/views/posts/attributes/_new_array.haml b/app/views/posts/attributes/_new_array.haml index 79ba22e2..394345a6 100644 --- a/app/views/posts/attributes/_new_array.haml +++ b/app/views/posts/attributes/_new_array.haml @@ -1,8 +1,9 @@ -# Genera un listado de checkboxes entre los que se puede elegir para guardar -- id = "#{base}_#{attribute}" -- name = "#{base}[#{attribute}][]" -- form_id = "form-#{Nanoid.generate}" +:ruby + id = "#{base}_#{attribute}" + name = "#{base}[#{attribute}][]" + form_id = "form-#{Nanoid.generate}" %div{ data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } .form-group @@ -29,7 +30,7 @@ - content_for :"#{id}_header" do .form-group.flex-grow-1.mb-0 = label_tag id, post_label_t(attribute, post: post) - %input.form-control{data: { target: 'array.search', action: 'input->array#search' }, type: 'search', placeholder: t('.filter') } + %input.form-control{ data: { target: 'array.search', action: 'input->array#search' }, type: 'search', placeholder: t('.filter') } - content_for :"#{id}_body" do .form-group.mb-0{ id: "#{id}_body" } @@ -40,7 +41,7 @@ - content_for :"#{id}_footer" do .input-group.w-auto.flex-grow-1.my-0 - %input.form-control{form: form_id, name: 'value', type: 'text', placeholder: t('.add_new')} + %input.form-control{ form: form_id, name: 'value', type: 'text', placeholder: t('.add_new') } .input-group-append = render 'bootstrap/btn', content: t('.add'), form: form_id, type: 'submit', class: 'mb-0 mr-0' = render 'bootstrap/btn', content: t('.accept'), action: 'array#accept modal#hide', class: 'm-0 mr-1' diff --git a/app/views/posts/new_array.haml b/app/views/posts/new_array.haml index 81cdcdea..62f74854 100644 --- a/app/views/posts/new_array.haml +++ b/app/views/posts/new_array.haml @@ -5,4 +5,4 @@ .flex-grow-1 = render 'bootstrap/custom_checkbox', name: @name, id: "value-#{Nanoid.generate}", value: @value, checked: true, content: @value %div - %button.btn.btn-sm.m-0{ data: { action: 'array#remove', 'remove-target-param': item_id }}= t('.remove') + %button.btn.btn-sm.m-0{ data: { action: 'array#remove', 'remove-target-param': item_id } }= t('.remove') From 87f95cf7e50381c5f63a1781e87c8b10e077bd16 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 May 2024 15:35:17 -0300 Subject: [PATCH 449/699] feat: poder ver los cambios hechos --- app/views/posts/attribute_ro/_new_array.haml | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 app/views/posts/attribute_ro/_new_array.haml diff --git a/app/views/posts/attribute_ro/_new_array.haml b/app/views/posts/attribute_ro/_new_array.haml new file mode 100644 index 00000000..20a0a545 --- /dev/null +++ b/app/views/posts/attribute_ro/_new_array.haml @@ -0,0 +1,8 @@ +%tr{ id: attribute } + %th= post_label_t(attribute, post: post) + %td + - if metadata.value.respond_to? :each + - metadata.value.each do |v| + %span.badge.badge-primary= v + - else + %span.badge.badge-primary{ lang: locale, dir: dir }= metadata.value From f47e6ff9f16e41d7d42dee01b36167af78b73e2a Mon Sep 17 00:00:00 2001 From: fauno Date: Fri, 17 May 2024 19:07:10 +0000 Subject: [PATCH 450/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 4 ++-- ...b9a6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css | 3 +++ ...6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css.gz | 3 +++ public/packs/js/application-0733ec757de1140fecc8.js | 3 +++ ...SE.txt => application-0733ec757de1140fecc8.js.LICENSE.txt} | 0 public/packs/js/application-0733ec757de1140fecc8.js.br | 3 +++ public/packs/js/application-0733ec757de1140fecc8.js.gz | 3 +++ public/packs/js/application-0733ec757de1140fecc8.js.map | 3 +++ public/packs/js/application-0733ec757de1140fecc8.js.map.br | 3 +++ public/packs/js/application-0733ec757de1140fecc8.js.map.gz | 3 +++ public/packs/js/application-5e567763c88fb352be77.js | 3 --- public/packs/js/application-5e567763c88fb352be77.js.br | 3 --- public/packs/js/application-5e567763c88fb352be77.js.gz | 3 --- public/packs/js/application-5e567763c88fb352be77.js.map | 3 --- public/packs/js/application-5e567763c88fb352be77.js.map.br | 3 --- public/packs/js/application-5e567763c88fb352be77.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 2 +- public/packs/manifest.json.gz | 2 +- 19 files changed, 29 insertions(+), 23 deletions(-) create mode 100644 public/assets/application-13aa9075f2b9a6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css create mode 100644 public/assets/application-13aa9075f2b9a6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css.gz create mode 100644 public/packs/js/application-0733ec757de1140fecc8.js rename public/packs/js/{application-5e567763c88fb352be77.js.LICENSE.txt => application-0733ec757de1140fecc8.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-0733ec757de1140fecc8.js.br create mode 100644 public/packs/js/application-0733ec757de1140fecc8.js.gz create mode 100644 public/packs/js/application-0733ec757de1140fecc8.js.map create mode 100644 public/packs/js/application-0733ec757de1140fecc8.js.map.br create mode 100644 public/packs/js/application-0733ec757de1140fecc8.js.map.gz delete mode 100644 public/packs/js/application-5e567763c88fb352be77.js delete mode 100644 public/packs/js/application-5e567763c88fb352be77.js.br delete mode 100644 public/packs/js/application-5e567763c88fb352be77.js.gz delete mode 100644 public/packs/js/application-5e567763c88fb352be77.js.map delete mode 100644 public/packs/js/application-5e567763c88fb352be77.js.map.br delete mode 100644 public/packs/js/application-5e567763c88fb352be77.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index dba5cb1b..06149e3b 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2a7c12799d1a8feeb600375a529237ff5723dcbc915ca5c1026ef216ed3c7372 -size 10243 +oid sha256:d777657714c83b2e791148484ccc6e5b65e6a78a3b5cc171ab4c741b6ffbdbe5 +size 10553 diff --git a/public/assets/application-13aa9075f2b9a6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css b/public/assets/application-13aa9075f2b9a6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css new file mode 100644 index 00000000..a6443687 --- /dev/null +++ b/public/assets/application-13aa9075f2b9a6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1a40bc5994875692d62bd7e9c9e7fe3e845a29566d91322f075e6012af7053c +size 238851 diff --git a/public/assets/application-13aa9075f2b9a6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css.gz b/public/assets/application-13aa9075f2b9a6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css.gz new file mode 100644 index 00000000..aea80d43 --- /dev/null +++ b/public/assets/application-13aa9075f2b9a6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7a278bb80182f75e3c28bb8fda20b56f17cf837bf027a96f0bdfe460d3235c6 +size 33071 diff --git a/public/packs/js/application-0733ec757de1140fecc8.js b/public/packs/js/application-0733ec757de1140fecc8.js new file mode 100644 index 00000000..4874662b --- /dev/null +++ b/public/packs/js/application-0733ec757de1140fecc8.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5b7093c2e4934824e3f007f56cce3c20e8e35bf4f594d48d9a582d6d62fd73b +size 1651678 diff --git a/public/packs/js/application-5e567763c88fb352be77.js.LICENSE.txt b/public/packs/js/application-0733ec757de1140fecc8.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-5e567763c88fb352be77.js.LICENSE.txt rename to public/packs/js/application-0733ec757de1140fecc8.js.LICENSE.txt diff --git a/public/packs/js/application-0733ec757de1140fecc8.js.br b/public/packs/js/application-0733ec757de1140fecc8.js.br new file mode 100644 index 00000000..4297763a --- /dev/null +++ b/public/packs/js/application-0733ec757de1140fecc8.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2a92398f9a4ac388b2a816b43eebc0aa3844458efdd7b767b588e72da0deda2 +size 367500 diff --git a/public/packs/js/application-0733ec757de1140fecc8.js.gz b/public/packs/js/application-0733ec757de1140fecc8.js.gz new file mode 100644 index 00000000..5e4fa959 --- /dev/null +++ b/public/packs/js/application-0733ec757de1140fecc8.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4e2e659878e445989966b4a854d09192f1a557993821d23991eaaa793e60b72 +size 484167 diff --git a/public/packs/js/application-0733ec757de1140fecc8.js.map b/public/packs/js/application-0733ec757de1140fecc8.js.map new file mode 100644 index 00000000..438c4f06 --- /dev/null +++ b/public/packs/js/application-0733ec757de1140fecc8.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06f08952d44c841722ec0a69689f83074a09fe6b0130f0ed70204abf640586f8 +size 6394612 diff --git a/public/packs/js/application-0733ec757de1140fecc8.js.map.br b/public/packs/js/application-0733ec757de1140fecc8.js.map.br new file mode 100644 index 00000000..e5f2c349 --- /dev/null +++ b/public/packs/js/application-0733ec757de1140fecc8.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49a57b1767021daadbf038caa1bd85ec1e4addf00e8cb31d1045a71ac119bc09 +size 1377393 diff --git a/public/packs/js/application-0733ec757de1140fecc8.js.map.gz b/public/packs/js/application-0733ec757de1140fecc8.js.map.gz new file mode 100644 index 00000000..19f53fe8 --- /dev/null +++ b/public/packs/js/application-0733ec757de1140fecc8.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17f69d1b6530728a00d8ecaea7c1a33986f773b6e374f228c593b506975a1635 +size 1703445 diff --git a/public/packs/js/application-5e567763c88fb352be77.js b/public/packs/js/application-5e567763c88fb352be77.js deleted file mode 100644 index 46562262..00000000 --- a/public/packs/js/application-5e567763c88fb352be77.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:62d1f8867d88ec64d12cee2e86ad4fdd363ffe4a3516c0a5c6d65cd3219624a7 -size 1644364 diff --git a/public/packs/js/application-5e567763c88fb352be77.js.br b/public/packs/js/application-5e567763c88fb352be77.js.br deleted file mode 100644 index ed58903d..00000000 --- a/public/packs/js/application-5e567763c88fb352be77.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c91173b409bd6e84f40cefdc19d466c848e94d20087cb23a063d2b7bd54458d1 -size 366685 diff --git a/public/packs/js/application-5e567763c88fb352be77.js.gz b/public/packs/js/application-5e567763c88fb352be77.js.gz deleted file mode 100644 index b187d06b..00000000 --- a/public/packs/js/application-5e567763c88fb352be77.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:908bd87788fff1388ed76e60646715aaac6c6f65d5e28620d338b1b39e3434f4 -size 483358 diff --git a/public/packs/js/application-5e567763c88fb352be77.js.map b/public/packs/js/application-5e567763c88fb352be77.js.map deleted file mode 100644 index 094ae7c1..00000000 --- a/public/packs/js/application-5e567763c88fb352be77.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bd0e2c4a400ba5fdb9d795dc0d533814d5180e89aa2ac2ba0954061e47d6f959 -size 6387599 diff --git a/public/packs/js/application-5e567763c88fb352be77.js.map.br b/public/packs/js/application-5e567763c88fb352be77.js.map.br deleted file mode 100644 index 20280fd8..00000000 --- a/public/packs/js/application-5e567763c88fb352be77.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7f4de443176d1e60abc706a51412d3bb450a48a4c4af564de168cdb13dcf55e6 -size 1375691 diff --git a/public/packs/js/application-5e567763c88fb352be77.js.map.gz b/public/packs/js/application-5e567763c88fb352be77.js.map.gz deleted file mode 100644 index 6d5abc8e..00000000 --- a/public/packs/js/application-5e567763c88fb352be77.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8821c193db88c59c72f379ee5c4dbce624dab28802722e623b7bbb4ec12ff7ff -size 1701215 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 5b28f687..7937a9fc 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d51c7b68bc509554c0f29a511aa553c42324b94e9c8e5b7977d109cebcae7978 +oid sha256:ceb943da66c707fe0e4f74b9e654823bb178065d3a55d7a1e7736cc0594bdd6e size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 2090a5e8..d3969729 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1069474766e7b968961892eb355a70602ee18cea6d00e3b803c4f23b385a686a +oid sha256:02d66a9fb335bef157b1902b45133071828a6a4f07897daa7410333777cacd1f size 320 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 93f3717a..15c480b7 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d6ee7bca4e6e888c05b69c1ad646395ea87fe2861858b824b3df5d15a72b8ee8 +oid sha256:7fa3ea0bd478a5d0dfaeabe9fab5cb18bd6afc06ff5f06bc76bede55bf0e3fcd size 365 From 21ccedc63950cec43a929fc131f1d29b1530c1af Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 May 2024 17:00:09 -0300 Subject: [PATCH 451/699] fix: es necesario nice_partials para no tener que hacer yield --- Gemfile | 1 + Gemfile.lock | 3 +++ 2 files changed, 4 insertions(+) diff --git a/Gemfile b/Gemfile index 30794e83..500face1 100644 --- a/Gemfile +++ b/Gemfile @@ -86,6 +86,7 @@ gem 'after_commit_everywhere', '~> 1.0' gem 'aasm' gem 'que-web' gem 'nanoid' +gem 'nice_partials' # database gem 'hairtrigger' diff --git a/Gemfile.lock b/Gemfile.lock index db6b892d..a0d203d5 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -385,6 +385,8 @@ GEM net-protocol net-ssh (7.2.1) netaddr (2.0.6) + nice_partials (0.10.0) + actionview (>= 4.2.6) nio4r (2.7.0-x86_64-linux-musl) nokogiri (1.16.0-x86_64-linux-musl) mini_portile2 (~> 2.8.2) @@ -680,6 +682,7 @@ DEPENDENCIES mobility nanoid net-ssh + nice_partials nokogiri pg pg_search From c780466c7bb54a3ed7bce29fb83d348737c5818d Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 May 2024 17:12:05 -0300 Subject: [PATCH 452/699] feat: a veces no se pueden agregar opciones nuevas --- app/models/metadata_new_predefined_array.rb | 4 ++ .../attribute_ro/_new_predefined_array.haml | 5 ++ .../attributes/_new_predefined_array.haml | 48 +++++++++++++++++++ config/locales/en.yml | 5 ++ config/locales/es.yml | 5 ++ 5 files changed, 67 insertions(+) create mode 100644 app/models/metadata_new_predefined_array.rb create mode 100644 app/views/posts/attribute_ro/_new_predefined_array.haml create mode 100644 app/views/posts/attributes/_new_predefined_array.haml diff --git a/app/models/metadata_new_predefined_array.rb b/app/models/metadata_new_predefined_array.rb new file mode 100644 index 00000000..8c15155f --- /dev/null +++ b/app/models/metadata_new_predefined_array.rb @@ -0,0 +1,4 @@ +# frozen_string_literal: true + +# Nueva interfaz para arrays predefinidos +class MetadataNewPredefinedArray < MetadataPredefinedArray; end diff --git a/app/views/posts/attribute_ro/_new_predefined_array.haml b/app/views/posts/attribute_ro/_new_predefined_array.haml new file mode 100644 index 00000000..88a82626 --- /dev/null +++ b/app/views/posts/attribute_ro/_new_predefined_array.haml @@ -0,0 +1,5 @@ +%tr{ id: attribute } + %th= post_label_t(attribute, post: post) + %td + - metadata.value.each do |v| + %span.badge.badge-primary{ dir: dir, lang: locale }= metadata.values.key v diff --git a/app/views/posts/attributes/_new_predefined_array.haml b/app/views/posts/attributes/_new_predefined_array.haml new file mode 100644 index 00000000..5203c12b --- /dev/null +++ b/app/views/posts/attributes/_new_predefined_array.haml @@ -0,0 +1,48 @@ +-# + Genera un listado de checkboxes entre los que se puede elegir para + guardar, pero no se pueden agregar nuevos. + +:ruby + id = "#{base}_#{attribute}" + name = "#{base}[#{attribute}][]" + form_id = "form-#{Nanoid.generate}" + +%div{ data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } + .form-group + = hidden_field_tag name, '' + = label_tag id, post_label_t(attribute, post: post) + -# Mostramos la lista de valores actuales. + + Al aceptar el modal, se vacía el listado y se completa en base a + renderizaciones con HTMX. Para poder hacer eso, tenemos que poder + acceder a todos los items dentro del modal (como array.item) y + enviar el valor al endpoint que devuelve uno por uno. Esto lo + tenemos disponible en Stimulus, pero queremos usar HTMX o técnica + similar para poder renderizar del lado del servidor. + + Para poder cancelar, mantenemos el estado original y desactivamos + o activamos los ítemes según estén incluidos en esa lista o no. + .row.row-cols-1.row-cols-md-2{ data: { target: 'array.current' } } + - metadata.values.slice(*metadata.value).each_key do |value| + = render 'posts/new_array_value', value: value + + = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' + + = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do + - content_for :"#{id}_header" do + .form-group.flex-grow-1.mb-0 + = label_tag id, post_label_t(attribute, post: post) + %input.form-control{ data: { target: 'array.search', action: 'input->array#search' }, type: 'search', placeholder: t('.filter') } + + - content_for :"#{id}_body" do + .form-group.mb-0{ id: "#{id}_body" } + -# Eliminamos las tildes para poder buscar independientemente de cómo se escriba + - metadata.values.each_pair do |value, key| + .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: value } } + = render 'bootstrap/custom_checkbox', name: name, id: "value-#{Nanoid.generate}", value: key, checked: metadata.value.include?(key), content: value + + - content_for :"#{id}_footer" do + -# Alinear los botones a la derecha + .flex-grow-1 + = render 'bootstrap/btn', content: t('.accept'), action: 'array#accept modal#hide', class: 'm-0 mr-1' + = render 'bootstrap/btn', content: t('.cancel'), action: 'array#cancel modal#hide', class: 'm-0' diff --git a/config/locales/en.yml b/config/locales/en.yml index 88b1db19..375a52b5 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -724,6 +724,11 @@ en: new_array: remove: "Remove" attributes: + new_predefined_array: + edit: "Edit" + filter: "Start typing to filter..." + accept: "Accept" + cancel: "Cancel" new_array: edit: "Edit" filter: "Start typing to filter..." diff --git a/config/locales/es.yml b/config/locales/es.yml index 4945c19f..a7ae423b 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -732,6 +732,11 @@ es: new_array: remove: "Eliminar" attributes: + new_predefined_array: + edit: "Editar" + filter: "Empezá a escribir para filtrar..." + accept: "Aceptar" + cancel: "Cancelar" new_array: edit: "Editar" filter: "Empezá a escribir para filtrar..." From 1e413e57f5f5a9271bbf43a647672747db59ec9e Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 May 2024 17:47:18 -0300 Subject: [PATCH 453/699] =?UTF-8?q?feat:=20relaci=C3=B3n=20de=201:n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/metadata_new_has_many.rb | 4 ++ .../posts/attribute_ro/_new_has_many.haml | 6 +++ app/views/posts/attributes/_new_has_many.haml | 44 +++++++++++++++++++ 3 files changed, 54 insertions(+) create mode 100644 app/models/metadata_new_has_many.rb create mode 100644 app/views/posts/attribute_ro/_new_has_many.haml create mode 100644 app/views/posts/attributes/_new_has_many.haml diff --git a/app/models/metadata_new_has_many.rb b/app/models/metadata_new_has_many.rb new file mode 100644 index 00000000..3bf37d45 --- /dev/null +++ b/app/models/metadata_new_has_many.rb @@ -0,0 +1,4 @@ +# frozen_string_literal: true + +# Interfaz nueva para uno a muchos +class MetadataNewHasMany < MetadataHasMany; end diff --git a/app/views/posts/attribute_ro/_new_has_many.haml b/app/views/posts/attribute_ro/_new_has_many.haml new file mode 100644 index 00000000..d6b51a7a --- /dev/null +++ b/app/views/posts/attribute_ro/_new_has_many.haml @@ -0,0 +1,6 @@ +%tr{ id: attribute } + %th= post_label_t(attribute, post: post) + %td + %ul{ dir: dir, lang: locale } + - metadata.has_many.each do |p| + %li= link_to p.title.value, site_post_path(site, p.id) diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml new file mode 100644 index 00000000..9477998d --- /dev/null +++ b/app/views/posts/attributes/_new_has_many.haml @@ -0,0 +1,44 @@ +-# + Genera un listado de checkboxes entre los que se puede elegir para guardar +:ruby + id = "#{base}_#{attribute}" + name = "#{base}[#{attribute}][]" + form_id = "form-#{Nanoid.generate}" + +%div{ data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } + .form-group + = hidden_field_tag name, '' + = label_tag id, post_label_t(attribute, post: post) + -# Mostramos la lista de valores actuales. + + Al aceptar el modal, se vacía el listado y se completa en base a + renderizaciones con HTMX. Para poder hacer eso, tenemos que poder + acceder a todos los items dentro del modal (como array.item) y + enviar el valor al endpoint que devuelve uno por uno. Esto lo + tenemos disponible en Stimulus, pero queremos usar HTMX o técnica + similar para poder renderizar del lado del servidor. + + Para poder cancelar, mantenemos el estado original y desactivamos + o activamos los ítemes según estén incluidos en esa lista o no. + .row.row-cols-1.row-cols-md-2{ data: { target: 'array.current' } } + - metadata.values.slice(*metadata.value).each do |value| + = render 'posts/new_array_value', value: value + + = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' + + = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do + - content_for :"#{id}_header" do + .form-group.flex-grow-1.mb-0 + = label_tag id, post_label_t(attribute, post: post) + %input.form-control{ data: { target: 'array.search', action: 'input->array#search' }, type: 'search', placeholder: t('.filter') } + + - content_for :"#{id}_body" do + .form-group.mb-0{ id: "#{id}_body" } + - metadata.values.each_pair do |value, key| + .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: value } } + = render 'bootstrap/custom_checkbox', name: name, id: "value-#{Nanoid.generate}", value: key, checked: metadata.value.include?(key), content: value + + - content_for :"#{id}_footer" do + .flex-grow-1 + = render 'bootstrap/btn', content: t('.accept'), action: 'array#accept modal#hide', class: 'm-0 mr-1' + = render 'bootstrap/btn', content: t('.cancel'), action: 'array#cancel modal#hide', class: 'm-0' From f89595aff1bfbff3d0507c7383b20934ecd6b79c Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 May 2024 17:58:44 -0300 Subject: [PATCH 454/699] feat: generar la lista con links --- app/controllers/posts_controller.rb | 8 ++++++++ app/views/posts/_new_related_post.haml | 2 ++ app/views/posts/attributes/_new_has_many.haml | 8 ++++---- config/routes.rb | 1 + 4 files changed, 15 insertions(+), 4 deletions(-) create mode 100644 app/views/posts/_new_related_post.haml diff --git a/app/controllers/posts_controller.rb b/app/controllers/posts_controller.rb index f241dfb1..aad3855d 100644 --- a/app/controllers/posts_controller.rb +++ b/app/controllers/posts_controller.rb @@ -32,6 +32,14 @@ class PostsController < ApplicationController render layout: false end + def new_related_post + @uuid = params.require(:value).strip + + @indexed_post = site.indexed_posts.find_by!(post_id: @uuid) + + render layout: false + end + def index authorize Post diff --git a/app/views/posts/_new_related_post.haml b/app/views/posts/_new_related_post.haml new file mode 100644 index 00000000..f3cc2a94 --- /dev/null +++ b/app/views/posts/_new_related_post.haml @@ -0,0 +1,2 @@ +.col + %p= link_to post.title, post.path diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index 9477998d..f8ec89d4 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -5,7 +5,7 @@ name = "#{base}[#{attribute}][]" form_id = "form-#{Nanoid.generate}" -%div{ data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } +%div{ data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } .form-group = hidden_field_tag name, '' = label_tag id, post_label_t(attribute, post: post) @@ -34,9 +34,9 @@ - content_for :"#{id}_body" do .form-group.mb-0{ id: "#{id}_body" } - - metadata.values.each_pair do |value, key| - .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: value } } - = render 'bootstrap/custom_checkbox', name: name, id: "value-#{Nanoid.generate}", value: key, checked: metadata.value.include?(key), content: value + - metadata.values.each_pair do |value, uuid| + .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: uuid } } + = render 'bootstrap/custom_checkbox', name: name, id: "value-#{Nanoid.generate}", value: uuid, checked: metadata.value.include?(uuid), content: value - content_for :"#{id}_footer" do .flex-grow-1 diff --git a/config/routes.rb b/config/routes.rb index eb20edce..be50fafd 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -102,6 +102,7 @@ Rails.application.routes.draw do get :'posts/new_array', to: 'posts#new_array' get :'posts/new_array_value', to: 'posts#new_array_value' + get :'posts/new_related_post', to: 'posts#new_related_post' resources :posts do get 'p/:page', action: :index, on: :collection From 03b847c946a0a9524e695fd709693a24161eac6f Mon Sep 17 00:00:00 2001 From: f Date: Fri, 17 May 2024 18:00:37 -0300 Subject: [PATCH 455/699] fix: traducciones --- config/locales/en.yml | 5 +++++ config/locales/es.yml | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/config/locales/en.yml b/config/locales/en.yml index 375a52b5..6a2eb7d8 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -724,6 +724,11 @@ en: new_array: remove: "Remove" attributes: + new_has_many: + edit: "Edit" + filter: "Start typing to filter..." + accept: "Accept" + cancel: "Cancel" new_predefined_array: edit: "Edit" filter: "Start typing to filter..." diff --git a/config/locales/es.yml b/config/locales/es.yml index a7ae423b..1da0edf9 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -732,6 +732,11 @@ es: new_array: remove: "Eliminar" attributes: + new_has_many: + edit: "Editar" + filter: "Empezá a escribir para filtrar..." + accept: "Aceptar" + cancel: "Cancelar" new_predefined_array: edit: "Editar" filter: "Empezá a escribir para filtrar..." From 1e555c8d5bfed8f52e00ad9090353c0a42a5405d Mon Sep 17 00:00:00 2001 From: fauno Date: Sat, 18 May 2024 14:32:49 +0000 Subject: [PATCH 456/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 06149e3b..c7d72d80 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d777657714c83b2e791148484ccc6e5b65e6a78a3b5cc171ab4c741b6ffbdbe5 +oid sha256:0455a9d1c1863feac7b6eb0521e0d598df4cc2a29deebacb20df338833d29e7e size 10553 From 4876c61d10301e23889e4afe627e73fc53d1709f Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 May 2024 12:10:37 -0300 Subject: [PATCH 457/699] =?UTF-8?q?feat:=20cargar=20el=20formulario=20del?= =?UTF-8?q?=20post=20sin=20decoraci=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/posts_controller.rb | 16 ++++++++++++++++ app/views/posts/form.haml | 7 +++++++ config/routes.rb | 1 + 3 files changed, 24 insertions(+) create mode 100644 app/views/posts/form.haml diff --git a/app/controllers/posts_controller.rb b/app/controllers/posts_controller.rb index aad3855d..d956fd2c 100644 --- a/app/controllers/posts_controller.rb +++ b/app/controllers/posts_controller.rb @@ -40,6 +40,22 @@ class PostsController < ApplicationController render layout: false end + # El formulario de un Post, si pasamos el uuid, estamos editando, sino + # estamos creando. + def form + uuid = params.permit(:uuid).try(:[], :uuid) + + @post = + if uuid.present? + site.indexed_posts.find_by!(post_id: uuid).post + else + # @todo Usar la base de datos + site.posts(lang: locale).build(layout: params.require(:layout)) + end + + render layout: false + end + def index authorize Post diff --git a/app/views/posts/form.haml b/app/views/posts/form.haml new file mode 100644 index 00000000..36d15fde --- /dev/null +++ b/app/views/posts/form.haml @@ -0,0 +1,7 @@ +-# + El formulario sin ninguna decoración, para incluir dentro de otros + elementos. + + @param :site [Site] + @param :post [Post] += render 'posts/form', site: @site, post: @post diff --git a/config/routes.rb b/config/routes.rb index be50fafd..45410782 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -103,6 +103,7 @@ Rails.application.routes.draw do get :'posts/new_array', to: 'posts#new_array' get :'posts/new_array_value', to: 'posts#new_array_value' get :'posts/new_related_post', to: 'posts#new_related_post' + get :'posts/form', to: 'posts#form' resources :posts do get 'p/:page', action: :index, on: :collection From 71b87bfc0b39551e5638836143b17a8a0431d7e9 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 May 2024 18:03:01 -0300 Subject: [PATCH 458/699] feat: poder abrir el modal con un evento --- .../controllers/modal_controller.js | 19 +++++++++++++++++++ app/views/posts/attributes/_new_has_many.haml | 3 ++- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/app/javascript/controllers/modal_controller.js b/app/javascript/controllers/modal_controller.js index 3a614b80..011c1254 100644 --- a/app/javascript/controllers/modal_controller.js +++ b/app/javascript/controllers/modal_controller.js @@ -3,8 +3,27 @@ import { Controller } from "stimulus"; export default class extends Controller { static targets = ["modal", "backdrop"]; + // TODO: Stimulus >1 + connect() { + this.showEvent = this.show.bind(this); + + window.addEventListener("modal:show", this.showEvent); + } + + // TODO: Stimulus >1 + disconnect() { + window.removeEventListener("modal:show", this.showEvent); + } + + /* + * Podemos enviar la orden de apertura como un click o como un + * CustomEvent incluyendo el id del modal como detail. + */ show(event = undefined) { event?.preventDefault(); + const modalId = event?.detail?.id; + + if (modalId && this.element.id !== modalId) return; this.modalTarget.style.display = "block"; this.backdropTarget.style.display = "block"; diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index f8ec89d4..76cf299f 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -4,8 +4,9 @@ id = "#{base}_#{attribute}" name = "#{base}[#{attribute}][]" form_id = "form-#{Nanoid.generate}" + modal_id = "modal-#{Nanoid.generate}" -%div{ data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } +%div{ id: modal_id, data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } .form-group = hidden_field_tag name, '' = label_tag id, post_label_t(attribute, post: post) From 71a15ae693f25210feebcfc82cf033c1d7fc9efa Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 May 2024 18:29:34 -0300 Subject: [PATCH 459/699] =?UTF-8?q?feat:=20desde=20el=20modal,=20tener=20i?= =?UTF-8?q?nterfaz=20para=20agregar=20un=20art=C3=ADculo=20nuevo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/posts/attributes/_new_has_many.haml | 24 ++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index 76cf299f..27d682c4 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -5,6 +5,7 @@ name = "#{base}[#{attribute}][]" form_id = "form-#{Nanoid.generate}" modal_id = "modal-#{Nanoid.generate}" + post_form_id = "post-form-#{Nanoid.generate}" %div{ id: modal_id, data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } .form-group @@ -39,7 +40,28 @@ .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: uuid } } = render 'bootstrap/custom_checkbox', name: name, id: "value-#{Nanoid.generate}", value: uuid, checked: metadata.value.include?(uuid), content: value + -# + Según la definición del campo, si hay un filtro, tenemos que poder + elegir qué tipo de esquema queremos o si hay uno solo, siempre + vamos a enviar ese. Si no hay ninguno, tendríamos que poder elegir + entre todos los esquemas. + - content_for :"#{id}_footer" do - .flex-grow-1 + - layout = metadata.filter[:layout] + - if layout.is_a?(String) + %input{ type: 'hidden', name: 'layout', value: layout, form: post_form_id } + = render 'bootstrap/btn', content: t('.add', layout: site.layouts[layout].humanized_name), form: post_form_id, type: 'submit', class: 'm-0 mr-1' + - else + - layouts = layout&.map { |x| site.layouts[x] } + - layouts ||= site.layouts.values + .input-group.w-auto.flex-grow-1.my-0 + %select.form-control{ form: post_form_id, name: 'layout' } + - layouts.each do |layout| + %option{ value: layout.name }= layout.humanized_name + .input-group-append + = render 'bootstrap/btn', content: t('.add', layout: ''), form: post_form_id, type: 'submit', class: 'mb-0 mr-0' = render 'bootstrap/btn', content: t('.accept'), action: 'array#accept modal#hide', class: 'm-0 mr-1' = render 'bootstrap/btn', content: t('.cancel'), action: 'array#cancel modal#hide', class: 'm-0' + +- content_for :post_form do + %form{ id: post_form_id } From 8cafe32ce7650f10624631c427cad6b46163f62e Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 May 2024 18:48:49 -0300 Subject: [PATCH 460/699] =?UTF-8?q?feat:=20poder=20ocultar=20con=20un=20ev?= =?UTF-8?q?ento=20tambi=C3=A9n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/javascript/controllers/modal_controller.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/app/javascript/controllers/modal_controller.js b/app/javascript/controllers/modal_controller.js index 011c1254..20154f79 100644 --- a/app/javascript/controllers/modal_controller.js +++ b/app/javascript/controllers/modal_controller.js @@ -6,13 +6,16 @@ export default class extends Controller { // TODO: Stimulus >1 connect() { this.showEvent = this.show.bind(this); + this.hideEvent = this.hide.bind(this); window.addEventListener("modal:show", this.showEvent); + window.addEventListener("modal:hide", this.hideEvent); } // TODO: Stimulus >1 disconnect() { window.removeEventListener("modal:show", this.showEvent); + window.removeEventListener("modal:hide", this.hideEvent); } /* @@ -41,6 +44,9 @@ export default class extends Controller { hide(event = undefined) { event?.preventDefault(); + const modalId = event?.detail?.id; + + if (modalId && this.element.id !== modalId) return; this.backdropTarget.classList.remove("show"); this.modalTarget.classList.remove("show"); From 4f08a0e5f2e2ac47bbc181392b6569ecf8d98498 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 May 2024 18:49:16 -0300 Subject: [PATCH 461/699] =?UTF-8?q?fixup!=20feat:=20desde=20el=20modal,=20?= =?UTF-8?q?tener=20interfaz=20para=20agregar=20un=20art=C3=ADculo=20nuevo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/metadata_related_posts.rb | 12 +++++++----- config/locales/en.yml | 1 + config/locales/es.yml | 1 + 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/app/models/metadata_related_posts.rb b/app/models/metadata_related_posts.rb index 42d1381b..2728020e 100644 --- a/app/models/metadata_related_posts.rb +++ b/app/models/metadata_related_posts.rb @@ -26,6 +26,13 @@ class MetadataRelatedPosts < MetadataArray posts.where(uuid: value).map(&:title).map(&:value) end + # Encuentra el filtro + # + # @return [Hash] + def filter + layout.metadata.dig(name, 'filter')&.to_h&.symbolize_keys || {} + end + private # Obtiene todos los posts y opcionalmente los filtra @@ -37,11 +44,6 @@ class MetadataRelatedPosts < MetadataArray "#{post&.title&.value || post&.slug&.value} #{post&.date&.value.strftime('%F')} (#{post.layout.humanized_name})" end - # Encuentra el filtro - def filter - layout.metadata.dig(name, 'filter')&.to_h&.symbolize_keys || {} - end - def sanitize(uuid) super(uuid.map do |u| u.to_s.gsub(/[^a-f0-9\-]/i, '') diff --git a/config/locales/en.yml b/config/locales/en.yml index 6a2eb7d8..ebc7b9c2 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -729,6 +729,7 @@ en: filter: "Start typing to filter..." accept: "Accept" cancel: "Cancel" + add: "Add %{layout}" new_predefined_array: edit: "Edit" filter: "Start typing to filter..." diff --git a/config/locales/es.yml b/config/locales/es.yml index 1da0edf9..e56a09e5 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -737,6 +737,7 @@ es: filter: "Empezá a escribir para filtrar..." accept: "Aceptar" cancel: "Cancelar" + add: "Agregar %{layout}" new_predefined_array: edit: "Editar" filter: "Empezá a escribir para filtrar..." From a10da6fa1c5d20ac2c582bdc9f24e7ffaa16e876 Mon Sep 17 00:00:00 2001 From: f Date: Sat, 18 May 2024 18:50:00 -0300 Subject: [PATCH 462/699] feat: al agregar uno nuevo, cerrar el modal y abrir el formulario --- app/controllers/posts_controller.rb | 7 ++++++ app/views/posts/attributes/_new_has_many.haml | 24 +++++++++++++++++-- 2 files changed, 29 insertions(+), 2 deletions(-) diff --git a/app/controllers/posts_controller.rb b/app/controllers/posts_controller.rb index d956fd2c..93a9983b 100644 --- a/app/controllers/posts_controller.rb +++ b/app/controllers/posts_controller.rb @@ -53,6 +53,13 @@ class PostsController < ApplicationController site.posts(lang: locale).build(layout: params.require(:layout)) end + triggers = {} + params.permit(:show, :hide).each_pair do |key, value| + triggers["modal:#{key}"] = { id: value } + end + + headers['HX-Trigger-After-Swap'] = triggers.to_json if triggers.present? + render layout: false end diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index 27d682c4..f349fd6c 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -1,11 +1,21 @@ -# - Genera un listado de checkboxes entre los que se puede elegir para guardar + Genera un listado de checkboxes entre los que se puede elegir para + guardar. Podemos elegir entre los artículos ya cargados o agregar uno + nuevo. + + Al agregar uno nuevo, se abre un segundo modal que carga el formulario + correspondiente vía HTMX. El formulario tiene que cargarse por fuera + del formulario principal porque no se pueden anidar. + :ruby id = "#{base}_#{attribute}" name = "#{base}[#{attribute}][]" form_id = "form-#{Nanoid.generate}" modal_id = "modal-#{Nanoid.generate}" + post_id = "post-#{Nanoid.generate}" post_form_id = "post-form-#{Nanoid.generate}" + post_modal_id = "post-modal-#{Nanoid.generate}" + post_form_loaded_id = "post-loaded-#{Nanoid.generate}" %div{ id: modal_id, data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } .form-group @@ -63,5 +73,15 @@ = render 'bootstrap/btn', content: t('.accept'), action: 'array#accept modal#hide', class: 'm-0 mr-1' = render 'bootstrap/btn', content: t('.cancel'), action: 'array#cancel modal#hide', class: 'm-0' +-# + Este segundo modal es el que carga los formularios de + creación/modificación de artículos relacionados. Se envía a post_form + para que sea externo al formulario actual. - content_for :post_form do - %form{ id: post_form_id } + %form{ id: post_form_id, 'hx-get': site_posts_form_path(site), 'hx-target': "##{post_form_loaded_id}" } + %input{ type: 'hidden', name: 'show', value: post_modal_id } + %input{ type: 'hidden', name: 'hide', value: modal_id } + %div{ id: post_modal_id, data: { controller: 'modal' } } + = render 'bootstrap/modal', id: post_id, modal_content_attributes: { class: 'h-100' } do + - content_for :"#{post_id}_body" do + %div{ id: post_form_loaded_id } From 1624c62a1288735fb7028b0b8d848bf3d63b2785 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 20 May 2024 14:11:13 -0300 Subject: [PATCH 463/699] feat: poder modificar la base de los parametros del post --- app/services/post_service.rb | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/app/services/post_service.rb b/app/services/post_service.rb index 84f58dad..4f5427ca 100644 --- a/app/services/post_service.rb +++ b/app/services/post_service.rb @@ -13,7 +13,7 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do post.draft.value = true if site.invitade? usuarie post.assign_attributes(post_params) - params.require(:post).permit(:slug).tap do |p| + params.require(base).permit(:slug).tap do |p| post.slug.value = p[:slug] if p[:slug].present? end @@ -82,7 +82,7 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do # # { uuid => 2, uuid => 1, uuid => 0 } def reorder - reorder = params.require(:post).permit(reorder: {})&.dig(:reorder)&.transform_values(&:to_i) + reorder = params.require(base).permit(reorder: {})&.dig(:reorder)&.transform_values(&:to_i) posts = site.posts(lang: locale).where(uuid: reorder.keys) files = posts.map do |post| @@ -105,6 +105,13 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do private + # La base donde buscar los parámetros + # + # @return [Symbol] + def base + @base ||= params.permit(:base).try(:[], :base).try(:to_sym) || :post + end + # Una lista de archivos a modificar # # @return [Set] @@ -126,7 +133,7 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do # Solo permitir cambiar estos atributos de cada articulo def post_params - @post_params ||= params.require(:post).permit(post.params).to_h + @post_params ||= params.require(base).permit(post.params).to_h end # Eliminar metadatos internos From 89f80229199d30347033e5cde6fa58322c4e4b0d Mon Sep 17 00:00:00 2001 From: f Date: Mon, 20 May 2024 14:11:39 -0300 Subject: [PATCH 464/699] =?UTF-8?q?fix:=20recuperar=20de=20errores=20solo?= =?UTF-8?q?=20en=20producci=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit en desarrollo los queremos ver! --- app/controllers/application_controller.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 117be995..f217c098 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -2,7 +2,7 @@ # Forma de ingreso a Sutty class ApplicationController < ActionController::Base - include ExceptionHandler + include ExceptionHandler if Rails.env.production? include Pundit::Authorization protect_from_forgery with: :null_session, prepend: true From 47655c3975560c68cd2c6336592a14292126dc20 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 20 May 2024 14:12:00 -0300 Subject: [PATCH 465/699] feat: poder detectar cuando una peticion viene de htmx --- app/controllers/application_controller.rb | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index f217c098..0fc2440f 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -117,4 +117,9 @@ class ApplicationController < ActionController::Base session[:usuarie_return_to] = request.fullpath end + + # Detecta si una petición fue hecha por HTMX + def htmx? + request.headers.key? 'HX-Request' + end end From 56003508a79964eb92ea393cd22c935b730b492c Mon Sep 17 00:00:00 2001 From: f Date: Mon, 20 May 2024 14:12:53 -0300 Subject: [PATCH 466/699] feat: poder crear un post relacionado in situ --- app/controllers/posts_controller.rb | 33 ++++++++++++--- app/views/posts/_htmx_form.haml | 41 +++++++++++++++++++ app/views/posts/attributes/_new_has_many.haml | 7 +++- app/views/posts/form.haml | 2 +- app/views/posts/new_has_many_value.haml | 2 + 5 files changed, 77 insertions(+), 8 deletions(-) create mode 100644 app/views/posts/_htmx_form.haml create mode 100644 app/views/posts/new_has_many_value.haml diff --git a/app/controllers/posts_controller.rb b/app/controllers/posts_controller.rb index 93a9983b..ff3ecb8e 100644 --- a/app/controllers/posts_controller.rb +++ b/app/controllers/posts_controller.rb @@ -44,6 +44,7 @@ class PostsController < ApplicationController # estamos creando. def form uuid = params.permit(:uuid).try(:[], :uuid) + locale @post = if uuid.present? @@ -53,12 +54,7 @@ class PostsController < ApplicationController site.posts(lang: locale).build(layout: params.require(:layout)) end - triggers = {} - params.permit(:show, :hide).each_pair do |key, value| - triggers["modal:#{key}"] = { id: value } - end - - headers['HX-Trigger-After-Swap'] = triggers.to_json if triggers.present? + swap_modals render layout: false end @@ -118,7 +114,23 @@ class PostsController < ApplicationController if @post.persisted? site.touch forget_content + end + # @todo Enviar la creación a otro endpoint para evitar tantas + # condiciones. + if htmx? + if @post.persisted? + swap_modals + + @value = @post.title.value + @uuid = @post.uuid.value + @name = params.require(:name) + + render 'posts/new_has_many_value', layout: false + else + # @todo Mostrar errores + end + elsif @post.persisted? redirect_to site_post_path(@site, @post) else render 'posts/new' @@ -216,4 +228,13 @@ class PostsController < ApplicationController def service_for_direct_upload session[:service_name] = site.name.to_sym end + + # @param triggers [Hash] Otros disparadores + def swap_modals(triggers = {}) + params.permit(:show, :hide).each_pair do |key, value| + triggers["modal:#{key}"] = { id: value } + end + + headers['HX-Trigger'] = triggers.to_json if triggers.present? + end end diff --git a/app/views/posts/_htmx_form.haml b/app/views/posts/_htmx_form.haml new file mode 100644 index 00000000..25c45aad --- /dev/null +++ b/app/views/posts/_htmx_form.haml @@ -0,0 +1,41 @@ +-# + El formulario del artículo, con HTMX activado. + + @param :site [Site] + @param :post [Post] + @param :locale [Symbol, String] + @param :dir [Symbol, String] +:ruby + options = { + multipart: true, + class: 'form post ', + 'hx-swap': params.require(:swap), + 'hx-target': "##{params.require(:target)}" + } + + if post.new? + url = options[:'hx-post'] = site_posts_path(site, locale: locale) + options[:class] += 'new' + else + url = options[:'hx-patch'] = site_post_path(site, post.id, locale: locale) + options[:method] = :patch + options[:class] += 'edit' + end + += form_tag url, **options do + -# Parámetros para HTMX + %input{ type: 'hidden', name: 'hide', value: params.require(:show) } + %input{ type: 'hidden', name: 'show', value: params.require(:hide) } + %input{ type: 'hidden', name: 'name', value: params.require(:name) } + %input{ type: 'hidden', name: 'base', value: params.require(:base) } + + -# Botones de guardado + = render 'posts/submit', site: site, post: post + + = hidden_field_tag "#{base}[layout]", post.layout.name + + -# Dibuja cada atributo + = render 'posts/attributes', site: site, post: post, dir: dir, base: base, locale: locale + + -# Botones de guardado + = render 'posts/submit', site: site, post: post diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index f349fd6c..16d68322 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -16,6 +16,7 @@ post_form_id = "post-form-#{Nanoid.generate}" post_modal_id = "post-modal-#{Nanoid.generate}" post_form_loaded_id = "post-loaded-#{Nanoid.generate}" + value_list_id = "#{id}_body" %div{ id: modal_id, data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } .form-group @@ -45,7 +46,7 @@ %input.form-control{ data: { target: 'array.search', action: 'input->array#search' }, type: 'search', placeholder: t('.filter') } - content_for :"#{id}_body" do - .form-group.mb-0{ id: "#{id}_body" } + .form-group.mb-0{ id: value_list_id } - metadata.values.each_pair do |value, uuid| .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: uuid } } = render 'bootstrap/custom_checkbox', name: name, id: "value-#{Nanoid.generate}", value: uuid, checked: metadata.value.include?(uuid), content: value @@ -81,6 +82,10 @@ %form{ id: post_form_id, 'hx-get': site_posts_form_path(site), 'hx-target': "##{post_form_loaded_id}" } %input{ type: 'hidden', name: 'show', value: post_modal_id } %input{ type: 'hidden', name: 'hide', value: modal_id } + %input{ type: 'hidden', name: 'target', value: value_list_id } + %input{ type: 'hidden', name: 'swap', value: 'beforeend' } + %input{ type: 'hidden', name: 'base', value: id } + %input{ type: 'hidden', name: 'name', value: name } %div{ id: post_modal_id, data: { controller: 'modal' } } = render 'bootstrap/modal', id: post_id, modal_content_attributes: { class: 'h-100' } do - content_for :"#{post_id}_body" do diff --git a/app/views/posts/form.haml b/app/views/posts/form.haml index 36d15fde..df4369e1 100644 --- a/app/views/posts/form.haml +++ b/app/views/posts/form.haml @@ -4,4 +4,4 @@ @param :site [Site] @param :post [Post] -= render 'posts/form', site: @site, post: @post += render 'posts/htmx_form', site: @site, post: @post, locale: @locale, dir: t("locales.#{@locale}.dir"), base: params.require(:base) diff --git a/app/views/posts/new_has_many_value.haml b/app/views/posts/new_has_many_value.haml new file mode 100644 index 00000000..b26acc89 --- /dev/null +++ b/app/views/posts/new_has_many_value.haml @@ -0,0 +1,2 @@ +.mb-2{ data: { target: 'array.item', 'searchable-value': @value.remove_diacritics.downcase, value: @uuid } } + = render 'bootstrap/custom_checkbox', name: @name, id: "value-#{Nanoid.generate}", value: @uuid, checked: true, content: @value From ebcd7bdee350bd806e01df115906b6cbfd347680 Mon Sep 17 00:00:00 2001 From: fauno Date: Mon, 20 May 2024 18:21:25 +0000 Subject: [PATCH 467/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-0733ec757de1140fecc8.js | 3 --- public/packs/js/application-0733ec757de1140fecc8.js.br | 3 --- public/packs/js/application-0733ec757de1140fecc8.js.gz | 3 --- public/packs/js/application-0733ec757de1140fecc8.js.map | 3 --- public/packs/js/application-0733ec757de1140fecc8.js.map.br | 3 --- public/packs/js/application-0733ec757de1140fecc8.js.map.gz | 3 --- public/packs/js/application-cf6d9800ecb4a32060d3.js | 3 +++ ...SE.txt => application-cf6d9800ecb4a32060d3.js.LICENSE.txt} | 0 public/packs/js/application-cf6d9800ecb4a32060d3.js.br | 3 +++ public/packs/js/application-cf6d9800ecb4a32060d3.js.gz | 3 +++ public/packs/js/application-cf6d9800ecb4a32060d3.js.map | 3 +++ public/packs/js/application-cf6d9800ecb4a32060d3.js.map.br | 3 +++ public/packs/js/application-cf6d9800ecb4a32060d3.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 2 +- 17 files changed, 23 insertions(+), 23 deletions(-) delete mode 100644 public/packs/js/application-0733ec757de1140fecc8.js delete mode 100644 public/packs/js/application-0733ec757de1140fecc8.js.br delete mode 100644 public/packs/js/application-0733ec757de1140fecc8.js.gz delete mode 100644 public/packs/js/application-0733ec757de1140fecc8.js.map delete mode 100644 public/packs/js/application-0733ec757de1140fecc8.js.map.br delete mode 100644 public/packs/js/application-0733ec757de1140fecc8.js.map.gz create mode 100644 public/packs/js/application-cf6d9800ecb4a32060d3.js rename public/packs/js/{application-0733ec757de1140fecc8.js.LICENSE.txt => application-cf6d9800ecb4a32060d3.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-cf6d9800ecb4a32060d3.js.br create mode 100644 public/packs/js/application-cf6d9800ecb4a32060d3.js.gz create mode 100644 public/packs/js/application-cf6d9800ecb4a32060d3.js.map create mode 100644 public/packs/js/application-cf6d9800ecb4a32060d3.js.map.br create mode 100644 public/packs/js/application-cf6d9800ecb4a32060d3.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index c7d72d80..8d6c4db4 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0455a9d1c1863feac7b6eb0521e0d598df4cc2a29deebacb20df338833d29e7e +oid sha256:c1942f0ed60eda19de434610a7ddec0520ffe92d3f8488311b47557fa0eef1eb size 10553 diff --git a/public/packs/js/application-0733ec757de1140fecc8.js b/public/packs/js/application-0733ec757de1140fecc8.js deleted file mode 100644 index 4874662b..00000000 --- a/public/packs/js/application-0733ec757de1140fecc8.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e5b7093c2e4934824e3f007f56cce3c20e8e35bf4f594d48d9a582d6d62fd73b -size 1651678 diff --git a/public/packs/js/application-0733ec757de1140fecc8.js.br b/public/packs/js/application-0733ec757de1140fecc8.js.br deleted file mode 100644 index 4297763a..00000000 --- a/public/packs/js/application-0733ec757de1140fecc8.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d2a92398f9a4ac388b2a816b43eebc0aa3844458efdd7b767b588e72da0deda2 -size 367500 diff --git a/public/packs/js/application-0733ec757de1140fecc8.js.gz b/public/packs/js/application-0733ec757de1140fecc8.js.gz deleted file mode 100644 index 5e4fa959..00000000 --- a/public/packs/js/application-0733ec757de1140fecc8.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d4e2e659878e445989966b4a854d09192f1a557993821d23991eaaa793e60b72 -size 484167 diff --git a/public/packs/js/application-0733ec757de1140fecc8.js.map b/public/packs/js/application-0733ec757de1140fecc8.js.map deleted file mode 100644 index 438c4f06..00000000 --- a/public/packs/js/application-0733ec757de1140fecc8.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:06f08952d44c841722ec0a69689f83074a09fe6b0130f0ed70204abf640586f8 -size 6394612 diff --git a/public/packs/js/application-0733ec757de1140fecc8.js.map.br b/public/packs/js/application-0733ec757de1140fecc8.js.map.br deleted file mode 100644 index e5f2c349..00000000 --- a/public/packs/js/application-0733ec757de1140fecc8.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:49a57b1767021daadbf038caa1bd85ec1e4addf00e8cb31d1045a71ac119bc09 -size 1377393 diff --git a/public/packs/js/application-0733ec757de1140fecc8.js.map.gz b/public/packs/js/application-0733ec757de1140fecc8.js.map.gz deleted file mode 100644 index 19f53fe8..00000000 --- a/public/packs/js/application-0733ec757de1140fecc8.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:17f69d1b6530728a00d8ecaea7c1a33986f773b6e374f228c593b506975a1635 -size 1703445 diff --git a/public/packs/js/application-cf6d9800ecb4a32060d3.js b/public/packs/js/application-cf6d9800ecb4a32060d3.js new file mode 100644 index 00000000..ff15482e --- /dev/null +++ b/public/packs/js/application-cf6d9800ecb4a32060d3.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82db4c2a4c51ead23336cddae35d49296d1bfcdaa99771a87d4d737425704412 +size 1652239 diff --git a/public/packs/js/application-0733ec757de1140fecc8.js.LICENSE.txt b/public/packs/js/application-cf6d9800ecb4a32060d3.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-0733ec757de1140fecc8.js.LICENSE.txt rename to public/packs/js/application-cf6d9800ecb4a32060d3.js.LICENSE.txt diff --git a/public/packs/js/application-cf6d9800ecb4a32060d3.js.br b/public/packs/js/application-cf6d9800ecb4a32060d3.js.br new file mode 100644 index 00000000..a216adac --- /dev/null +++ b/public/packs/js/application-cf6d9800ecb4a32060d3.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd5f81501f5c8ee90dd9c0f26788937f3786b6ee9c3a9c59ad15d8e6cd871e90 +size 367468 diff --git a/public/packs/js/application-cf6d9800ecb4a32060d3.js.gz b/public/packs/js/application-cf6d9800ecb4a32060d3.js.gz new file mode 100644 index 00000000..9f53a557 --- /dev/null +++ b/public/packs/js/application-cf6d9800ecb4a32060d3.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20fb685cbfa8a947337339fdb1acdca1daca86ae42204e349451278e877c9828 +size 484265 diff --git a/public/packs/js/application-cf6d9800ecb4a32060d3.js.map b/public/packs/js/application-cf6d9800ecb4a32060d3.js.map new file mode 100644 index 00000000..875f89dd --- /dev/null +++ b/public/packs/js/application-cf6d9800ecb4a32060d3.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c3effc89d36342410da64ee4fedeb3f98dcb8e5cf800e0864789bdd87e09fcf +size 6395906 diff --git a/public/packs/js/application-cf6d9800ecb4a32060d3.js.map.br b/public/packs/js/application-cf6d9800ecb4a32060d3.js.map.br new file mode 100644 index 00000000..126b85b6 --- /dev/null +++ b/public/packs/js/application-cf6d9800ecb4a32060d3.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56b480da96172fa3648ef8b128c819959057b45219fc06b835b3b88f873c7cc1 +size 1378109 diff --git a/public/packs/js/application-cf6d9800ecb4a32060d3.js.map.gz b/public/packs/js/application-cf6d9800ecb4a32060d3.js.map.gz new file mode 100644 index 00000000..0402a170 --- /dev/null +++ b/public/packs/js/application-cf6d9800ecb4a32060d3.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3058120366dea0a9aca650622387fa55c0bdaf9f0a777808e7eda846c043b1d +size 1703694 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 7937a9fc..6a60d779 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ceb943da66c707fe0e4f74b9e654823bb178065d3a55d7a1e7736cc0594bdd6e +oid sha256:1c5374b9168381bfd16f7c849eae4fc134ffaf5cf4d4600061d364a9ed7d11f0 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index d3969729..26865da4 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:02d66a9fb335bef157b1902b45133071828a6a4f07897daa7410333777cacd1f -size 320 +oid sha256:a85338bd75b7a7323d7c64c17f2c4a183a39808459879cfeb53d6c20e366f231 +size 319 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 15c480b7..03a02e72 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7fa3ea0bd478a5d0dfaeabe9fab5cb18bd6afc06ff5f06bc76bede55bf0e3fcd +oid sha256:f42ffc0ac028a4f9d78d858982448c11d7fe4545cd93b01f4a40170853928f05 size 365 From c8b243c655d1eb2a2861567e56b572dcd604e325 Mon Sep 17 00:00:00 2001 From: jazzari Date: Thu, 23 May 2024 14:53:53 -0300 Subject: [PATCH 468/699] fix: movido auto-publish concern a lib/concerns para uso general #13244 --- app/{services => lib}/concerns/auto_publish_concern.rb | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename app/{services => lib}/concerns/auto_publish_concern.rb (100%) diff --git a/app/services/concerns/auto_publish_concern.rb b/app/lib/concerns/auto_publish_concern.rb similarity index 100% rename from app/services/concerns/auto_publish_concern.rb rename to app/lib/concerns/auto_publish_concern.rb From 35527700767df148aef25eaffe5ff7eebddf37cc Mon Sep 17 00:00:00 2001 From: f Date: Thu, 23 May 2024 15:23:24 -0300 Subject: [PATCH 469/699] fix: eliminar nice_partials MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit a veces hacía que se rendericen los campos dos veces! --- Gemfile | 1 - Gemfile.lock | 3 --- app/views/bootstrap/_modal.haml | 3 +++ 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/Gemfile b/Gemfile index 500face1..30794e83 100644 --- a/Gemfile +++ b/Gemfile @@ -86,7 +86,6 @@ gem 'after_commit_everywhere', '~> 1.0' gem 'aasm' gem 'que-web' gem 'nanoid' -gem 'nice_partials' # database gem 'hairtrigger' diff --git a/Gemfile.lock b/Gemfile.lock index a0d203d5..db6b892d 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -385,8 +385,6 @@ GEM net-protocol net-ssh (7.2.1) netaddr (2.0.6) - nice_partials (0.10.0) - actionview (>= 4.2.6) nio4r (2.7.0-x86_64-linux-musl) nokogiri (1.16.0-x86_64-linux-musl) mini_portile2 (~> 2.8.2) @@ -682,7 +680,6 @@ DEPENDENCIES mobility nanoid net-ssh - nice_partials nokogiri pg pg_search diff --git a/app/views/bootstrap/_modal.haml b/app/views/bootstrap/_modal.haml index f6dafc2a..28014c6a 100644 --- a/app/views/bootstrap/_modal.haml +++ b/app/views/bootstrap/_modal.haml @@ -23,6 +23,9 @@ local_assigns[:hide_actions] << 'click->modal#hide' local_assigns[:modal_content_attributes] ||= {} +-# XXX: Necesario para poder generar todas las demás += yield + .modal.fade{ tabindex: -1, aria: { hidden: 'true' }, data: { target: 'modal.modal' } } .modal-backdrop.fade{ data: { target: 'modal.backdrop', action: local_assigns[:hide_actions].join(' ') } } .modal-dialog.modal-dialog-scrollable.modal-dialog-centered From c279d09f4601b1db12fb5896a13183013cb9a652 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 23 May 2024 15:24:32 -0300 Subject: [PATCH 470/699] fix: los id no llevan corchetes --- app/views/posts/attributes/_new_array.haml | 2 +- app/views/posts/attributes/_new_has_many.haml | 2 +- app/views/posts/attributes/_new_predefined_array.haml | 3 ++- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/app/views/posts/attributes/_new_array.haml b/app/views/posts/attributes/_new_array.haml index 394345a6..692a6898 100644 --- a/app/views/posts/attributes/_new_array.haml +++ b/app/views/posts/attributes/_new_array.haml @@ -1,7 +1,7 @@ -# Genera un listado de checkboxes entre los que se puede elegir para guardar :ruby - id = "#{base}_#{attribute}" + id = "#{base.gsub(/[\[\]]/, '_')}_#{attribute}".squeeze('_') name = "#{base}[#{attribute}][]" form_id = "form-#{Nanoid.generate}" diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index 16d68322..48230759 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -8,7 +8,7 @@ del formulario principal porque no se pueden anidar. :ruby - id = "#{base}_#{attribute}" + id = "#{base.gsub(/[\[\]]/, '_')}_#{attribute}".squeeze('_') name = "#{base}[#{attribute}][]" form_id = "form-#{Nanoid.generate}" modal_id = "modal-#{Nanoid.generate}" diff --git a/app/views/posts/attributes/_new_predefined_array.haml b/app/views/posts/attributes/_new_predefined_array.haml index 5203c12b..218a2cc2 100644 --- a/app/views/posts/attributes/_new_predefined_array.haml +++ b/app/views/posts/attributes/_new_predefined_array.haml @@ -3,7 +3,8 @@ guardar, pero no se pueden agregar nuevos. :ruby - id = "#{base}_#{attribute}" + # @todo Convertir en un helper + id = "#{base.gsub(/[\[\]]/, '_')}_#{attribute}".squeeze('_') name = "#{base}[#{attribute}][]" form_id = "form-#{Nanoid.generate}" From 8e9847c69c46be31f85c9f84f8d117bbdc02b131 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 23 May 2024 15:24:49 -0300 Subject: [PATCH 471/699] fix: usar la base en todos lados --- app/services/post_service.rb | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/app/services/post_service.rb b/app/services/post_service.rb index 4f5427ca..628d1b63 100644 --- a/app/services/post_service.rb +++ b/app/services/post_service.rb @@ -18,11 +18,11 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do end # Crea los posts anidados - create_nested_posts! post, params[:post] + create_nested_posts! post, params[base] post.save update_related_posts - commit(action: :created, add: files) + commit(action: :created, add: files) if post.valid? update_site_license! @@ -46,14 +46,14 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do def update post.usuaries << usuarie - params[:post][:draft] = true if site.invitade? usuarie + params[base][:draft] = true if site.invitade? usuarie # Eliminar ("mover") el archivo si cambió de ubicación. if post.update(post_params) rm = [] rm << post.path.value_was if post.path.changed? - create_nested_posts! post, params[:post] + create_nested_posts! post, params[base] update_related_posts # Es importante que el artículo se guarde primero y luego los @@ -144,11 +144,11 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do end def locale - params.dig(:post, :lang)&.to_sym || I18n.locale + params.dig(base, :lang)&.to_sym || I18n.locale end def layout - params.dig(:post, :layout) || params[:layout] + params.dig(base, :layout) || params[:layout] end # Actualiza los artículos relacionados según los métodos que los From 10d06852385d8ee884ca20d2050d7d74278f1f9e Mon Sep 17 00:00:00 2001 From: fauno Date: Thu, 23 May 2024 18:32:50 +0000 Subject: [PATCH 472/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 8d6c4db4..cc4d6702 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c1942f0ed60eda19de434610a7ddec0520ffe92d3f8488311b47557fa0eef1eb +oid sha256:56b2ca4ead636228f050ef2da14c87753da35bb00af79fb2540e45984154de8b size 10553 From 7d366a25b5b804cf2d5778b567a3239d4be4b379 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 23 May 2024 15:40:00 -0300 Subject: [PATCH 473/699] fix: traducciones --- app/views/posts/attributes/_new_array.haml | 2 +- config/locales/en.yml | 26 +++++++--------------- config/locales/es.yml | 26 +++++++--------------- 3 files changed, 17 insertions(+), 37 deletions(-) diff --git a/app/views/posts/attributes/_new_array.haml b/app/views/posts/attributes/_new_array.haml index 692a6898..763da9f8 100644 --- a/app/views/posts/attributes/_new_array.haml +++ b/app/views/posts/attributes/_new_array.haml @@ -43,7 +43,7 @@ .input-group.w-auto.flex-grow-1.my-0 %input.form-control{ form: form_id, name: 'value', type: 'text', placeholder: t('.add_new') } .input-group-append - = render 'bootstrap/btn', content: t('.add'), form: form_id, type: 'submit', class: 'mb-0 mr-0' + = render 'bootstrap/btn', content: t('.add', layout: ''), form: form_id, type: 'submit', class: 'mb-0 mr-0' = render 'bootstrap/btn', content: t('.accept'), action: 'array#accept modal#hide', class: 'm-0 mr-1' = render 'bootstrap/btn', content: t('.cancel'), action: 'array#cancel modal#hide', class: 'm-0' diff --git a/config/locales/en.yml b/config/locales/en.yml index ebc7b9c2..9f4f7493 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -724,24 +724,6 @@ en: new_array: remove: "Remove" attributes: - new_has_many: - edit: "Edit" - filter: "Start typing to filter..." - accept: "Accept" - cancel: "Cancel" - add: "Add %{layout}" - new_predefined_array: - edit: "Edit" - filter: "Start typing to filter..." - accept: "Accept" - cancel: "Cancel" - new_array: - edit: "Edit" - filter: "Start typing to filter..." - add_new: "Add new option" - add: "Add" - accept: "Accept" - cancel: "Cancel" add: Add lang: label: Language @@ -954,3 +936,11 @@ en: title: "Publications" indexed_posts: deleted: "Deleted indexed post %{path} from %{site} (records: %{records})" + bootstrap: + modal: + accept: "Accept" + add: "Add %{layout}" + add_new: "Add new option" + cancel: "Cancel" + edit: "Edit" + filter: "Start typing to filter..." diff --git a/config/locales/es.yml b/config/locales/es.yml index e56a09e5..b85ac397 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -732,24 +732,6 @@ es: new_array: remove: "Eliminar" attributes: - new_has_many: - edit: "Editar" - filter: "Empezá a escribir para filtrar..." - accept: "Aceptar" - cancel: "Cancelar" - add: "Agregar %{layout}" - new_predefined_array: - edit: "Editar" - filter: "Empezá a escribir para filtrar..." - accept: "Aceptar" - cancel: "Cancelar" - new_array: - edit: "Editar" - filter: "Empezá a escribir para filtrar..." - add_new: "Agregar nueva opción" - add: "Agregar" - accept: "Aceptar" - cancel: "Cancelar" add: Agregar lang: label: Idioma @@ -962,3 +944,11 @@ es: title: "Publicaciones" indexed_posts: deleted: "Eliminado artículo %{path} de %{site} (filas: %{records})" + bootstrap: + modal: + accept: "Aceptar" + add: "Agregar %{layout}" + add_new: "Agregar nueva opción" + cancel: "Cancelar" + edit: "Editar" + filter: "Empezá a escribir para filtrar..." From 01e1692c715f44027ae3a96afe18fd652093ae88 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 23 May 2024 16:10:37 -0300 Subject: [PATCH 474/699] fix: parcial faltante --- app/views/posts/new_related_post.haml | 1 + 1 file changed, 1 insertion(+) create mode 100644 app/views/posts/new_related_post.haml diff --git a/app/views/posts/new_related_post.haml b/app/views/posts/new_related_post.haml new file mode 100644 index 00000000..b0623039 --- /dev/null +++ b/app/views/posts/new_related_post.haml @@ -0,0 +1 @@ += render 'posts/new_related_post', post: @indexed_post From 6673660fb6c9033fa006ec93633b222eedec1dca Mon Sep 17 00:00:00 2001 From: f Date: Thu, 23 May 2024 17:15:23 -0300 Subject: [PATCH 475/699] fix: no enviar el formulario de filtro --- app/javascript/controllers/enter_controller.js | 10 ++++++++++ app/views/posts/attributes/_new_array.haml | 4 ++-- 2 files changed, 12 insertions(+), 2 deletions(-) create mode 100644 app/javascript/controllers/enter_controller.js diff --git a/app/javascript/controllers/enter_controller.js b/app/javascript/controllers/enter_controller.js new file mode 100644 index 00000000..763dd08c --- /dev/null +++ b/app/javascript/controllers/enter_controller.js @@ -0,0 +1,10 @@ +import { Controller } from "stimulus"; + +export default class extends Controller { + /* + * Previene el envío de un formulario al presionar enter + */ + prevent(event) { + if (event.key == "Enter") event.preventDefault(); + } +} diff --git a/app/views/posts/attributes/_new_array.haml b/app/views/posts/attributes/_new_array.haml index 763da9f8..08fc6dee 100644 --- a/app/views/posts/attributes/_new_array.haml +++ b/app/views/posts/attributes/_new_array.haml @@ -5,7 +5,7 @@ name = "#{base}[#{attribute}][]" form_id = "form-#{Nanoid.generate}" -%div{ data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } +%div{ data: { controller: 'modal array enter', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } .form-group = hidden_field_tag name, '' = label_tag id, post_label_t(attribute, post: post) @@ -30,7 +30,7 @@ - content_for :"#{id}_header" do .form-group.flex-grow-1.mb-0 = label_tag id, post_label_t(attribute, post: post) - %input.form-control{ data: { target: 'array.search', action: 'input->array#search' }, type: 'search', placeholder: t('.filter') } + %input.form-control{ data: { target: 'array.search', action: 'input->array#search keydown->enter#prevent' }, type: 'search', placeholder: t('.filter') } - content_for :"#{id}_body" do .form-group.mb-0{ id: "#{id}_body" } From c0629771ec49b0e8e8480765bd2c4c6fd7ad11b5 Mon Sep 17 00:00:00 2001 From: fauno Date: Thu, 23 May 2024 20:20:56 +0000 Subject: [PATCH 476/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-cf6d9800ecb4a32060d3.js | 3 --- public/packs/js/application-cf6d9800ecb4a32060d3.js.br | 3 --- public/packs/js/application-cf6d9800ecb4a32060d3.js.gz | 3 --- public/packs/js/application-cf6d9800ecb4a32060d3.js.map | 3 --- public/packs/js/application-cf6d9800ecb4a32060d3.js.map.br | 3 --- public/packs/js/application-cf6d9800ecb4a32060d3.js.map.gz | 3 --- public/packs/js/application-f13697e2bd96d122adcd.js | 3 +++ ...SE.txt => application-f13697e2bd96d122adcd.js.LICENSE.txt} | 0 public/packs/js/application-f13697e2bd96d122adcd.js.br | 3 +++ public/packs/js/application-f13697e2bd96d122adcd.js.gz | 3 +++ public/packs/js/application-f13697e2bd96d122adcd.js.map | 3 +++ public/packs/js/application-f13697e2bd96d122adcd.js.map.br | 3 +++ public/packs/js/application-f13697e2bd96d122adcd.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 17 files changed, 24 insertions(+), 24 deletions(-) delete mode 100644 public/packs/js/application-cf6d9800ecb4a32060d3.js delete mode 100644 public/packs/js/application-cf6d9800ecb4a32060d3.js.br delete mode 100644 public/packs/js/application-cf6d9800ecb4a32060d3.js.gz delete mode 100644 public/packs/js/application-cf6d9800ecb4a32060d3.js.map delete mode 100644 public/packs/js/application-cf6d9800ecb4a32060d3.js.map.br delete mode 100644 public/packs/js/application-cf6d9800ecb4a32060d3.js.map.gz create mode 100644 public/packs/js/application-f13697e2bd96d122adcd.js rename public/packs/js/{application-cf6d9800ecb4a32060d3.js.LICENSE.txt => application-f13697e2bd96d122adcd.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-f13697e2bd96d122adcd.js.br create mode 100644 public/packs/js/application-f13697e2bd96d122adcd.js.gz create mode 100644 public/packs/js/application-f13697e2bd96d122adcd.js.map create mode 100644 public/packs/js/application-f13697e2bd96d122adcd.js.map.br create mode 100644 public/packs/js/application-f13697e2bd96d122adcd.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index cc4d6702..899824d3 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:56b2ca4ead636228f050ef2da14c87753da35bb00af79fb2540e45984154de8b +oid sha256:b72d12b7753fb3344e067a8d6f4f8545c8d72fcc49f83fe853d25624d1afb6a2 size 10553 diff --git a/public/packs/js/application-cf6d9800ecb4a32060d3.js b/public/packs/js/application-cf6d9800ecb4a32060d3.js deleted file mode 100644 index ff15482e..00000000 --- a/public/packs/js/application-cf6d9800ecb4a32060d3.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:82db4c2a4c51ead23336cddae35d49296d1bfcdaa99771a87d4d737425704412 -size 1652239 diff --git a/public/packs/js/application-cf6d9800ecb4a32060d3.js.br b/public/packs/js/application-cf6d9800ecb4a32060d3.js.br deleted file mode 100644 index a216adac..00000000 --- a/public/packs/js/application-cf6d9800ecb4a32060d3.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:dd5f81501f5c8ee90dd9c0f26788937f3786b6ee9c3a9c59ad15d8e6cd871e90 -size 367468 diff --git a/public/packs/js/application-cf6d9800ecb4a32060d3.js.gz b/public/packs/js/application-cf6d9800ecb4a32060d3.js.gz deleted file mode 100644 index 9f53a557..00000000 --- a/public/packs/js/application-cf6d9800ecb4a32060d3.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:20fb685cbfa8a947337339fdb1acdca1daca86ae42204e349451278e877c9828 -size 484265 diff --git a/public/packs/js/application-cf6d9800ecb4a32060d3.js.map b/public/packs/js/application-cf6d9800ecb4a32060d3.js.map deleted file mode 100644 index 875f89dd..00000000 --- a/public/packs/js/application-cf6d9800ecb4a32060d3.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7c3effc89d36342410da64ee4fedeb3f98dcb8e5cf800e0864789bdd87e09fcf -size 6395906 diff --git a/public/packs/js/application-cf6d9800ecb4a32060d3.js.map.br b/public/packs/js/application-cf6d9800ecb4a32060d3.js.map.br deleted file mode 100644 index 126b85b6..00000000 --- a/public/packs/js/application-cf6d9800ecb4a32060d3.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:56b480da96172fa3648ef8b128c819959057b45219fc06b835b3b88f873c7cc1 -size 1378109 diff --git a/public/packs/js/application-cf6d9800ecb4a32060d3.js.map.gz b/public/packs/js/application-cf6d9800ecb4a32060d3.js.map.gz deleted file mode 100644 index 0402a170..00000000 --- a/public/packs/js/application-cf6d9800ecb4a32060d3.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e3058120366dea0a9aca650622387fa55c0bdaf9f0a777808e7eda846c043b1d -size 1703694 diff --git a/public/packs/js/application-f13697e2bd96d122adcd.js b/public/packs/js/application-f13697e2bd96d122adcd.js new file mode 100644 index 00000000..d0448bed --- /dev/null +++ b/public/packs/js/application-f13697e2bd96d122adcd.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5dd3460f2b0098288d27ba0756158d71201e34b5b197e8f3a4a62b62c2ed71e7 +size 1653891 diff --git a/public/packs/js/application-cf6d9800ecb4a32060d3.js.LICENSE.txt b/public/packs/js/application-f13697e2bd96d122adcd.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-cf6d9800ecb4a32060d3.js.LICENSE.txt rename to public/packs/js/application-f13697e2bd96d122adcd.js.LICENSE.txt diff --git a/public/packs/js/application-f13697e2bd96d122adcd.js.br b/public/packs/js/application-f13697e2bd96d122adcd.js.br new file mode 100644 index 00000000..7360f1b0 --- /dev/null +++ b/public/packs/js/application-f13697e2bd96d122adcd.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0b8524205fa0ae5cb6c97b210f4d55073a0827ca65721f540b4c7c1bdda4a85 +size 367424 diff --git a/public/packs/js/application-f13697e2bd96d122adcd.js.gz b/public/packs/js/application-f13697e2bd96d122adcd.js.gz new file mode 100644 index 00000000..46f336bb --- /dev/null +++ b/public/packs/js/application-f13697e2bd96d122adcd.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83f7053449a4a191d41cf7302102e03382eec1234aed97ca745e779e3c7b0571 +size 484303 diff --git a/public/packs/js/application-f13697e2bd96d122adcd.js.map b/public/packs/js/application-f13697e2bd96d122adcd.js.map new file mode 100644 index 00000000..881886fe --- /dev/null +++ b/public/packs/js/application-f13697e2bd96d122adcd.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d83fde267241026216c466843cc94b21e9ec2cdc446d598a7ed34dd97bb230ef +size 6396408 diff --git a/public/packs/js/application-f13697e2bd96d122adcd.js.map.br b/public/packs/js/application-f13697e2bd96d122adcd.js.map.br new file mode 100644 index 00000000..88d925a3 --- /dev/null +++ b/public/packs/js/application-f13697e2bd96d122adcd.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d051048361576ecaa8cf2347d84f7c84e0079673a64885fe1c10f233d55f162 +size 1377668 diff --git a/public/packs/js/application-f13697e2bd96d122adcd.js.map.gz b/public/packs/js/application-f13697e2bd96d122adcd.js.map.gz new file mode 100644 index 00000000..8652afa3 --- /dev/null +++ b/public/packs/js/application-f13697e2bd96d122adcd.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4ff187963af890dba9d348d203cb9a21b28a5b3e8cf4c7f6a2059e048d51294 +size 1703677 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 6a60d779..733d67bc 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1c5374b9168381bfd16f7c849eae4fc134ffaf5cf4d4600061d364a9ed7d11f0 +oid sha256:edf0134b65097a52acc3d94b7958b2ff45c2a8e1c82ec1968af4da83bd104194 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 26865da4..7cdae1f8 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a85338bd75b7a7323d7c64c17f2c4a183a39808459879cfeb53d6c20e366f231 -size 319 +oid sha256:566db1dfc7775cb104237e2b673bddbfd7c124c92d5667f38d9197388d4cb2fa +size 323 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 03a02e72..cd86dd0c 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f42ffc0ac028a4f9d78d858982448c11d7fe4545cd93b01f4a40170853928f05 -size 365 +oid sha256:0bd6850c2a85943b309a1b223dab2cd3b335f63ee8c5ab8dd7ee0fec86db8089 +size 364 From 1e13fc462102378f88963bf723ad55bad5a7d550 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 23 May 2024 17:47:02 -0300 Subject: [PATCH 477/699] =?UTF-8?q?refactor:=20no=20repetir=20c=C3=B3digo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/helpers/application_helper.rb | 10 ++++++++++ app/views/posts/attributes/_new_array.haml | 2 +- app/views/posts/attributes/_new_has_many.haml | 2 +- app/views/posts/attributes/_new_predefined_array.haml | 3 +-- 4 files changed, 13 insertions(+), 4 deletions(-) diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index fcbd4074..c83b2894 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -2,6 +2,8 @@ # Helpers module ApplicationHelper + BRACKETS = /[\[\]]/ + # Devuelve el atributo name de un campo anidado en el formato que # esperan los helpers *_field # @@ -19,6 +21,14 @@ module ApplicationHelper [root, name] end + # Obtiene un ID + # + # @param base [String] + # @param attribute [String, Symbol] + def id_for(base, attribute) + "#{base.gsub(BRACKETS, '_')}_#{attribute}".squeeze('_') + end + def plain_field_name_for(*names) root, name = field_name_for(*names) diff --git a/app/views/posts/attributes/_new_array.haml b/app/views/posts/attributes/_new_array.haml index 08fc6dee..b4407c0d 100644 --- a/app/views/posts/attributes/_new_array.haml +++ b/app/views/posts/attributes/_new_array.haml @@ -1,7 +1,7 @@ -# Genera un listado de checkboxes entre los que se puede elegir para guardar :ruby - id = "#{base.gsub(/[\[\]]/, '_')}_#{attribute}".squeeze('_') + id = id_for(base, attribute) name = "#{base}[#{attribute}][]" form_id = "form-#{Nanoid.generate}" diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index 48230759..9382e2af 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -8,7 +8,7 @@ del formulario principal porque no se pueden anidar. :ruby - id = "#{base.gsub(/[\[\]]/, '_')}_#{attribute}".squeeze('_') + id = id_for(base, attribute) name = "#{base}[#{attribute}][]" form_id = "form-#{Nanoid.generate}" modal_id = "modal-#{Nanoid.generate}" diff --git a/app/views/posts/attributes/_new_predefined_array.haml b/app/views/posts/attributes/_new_predefined_array.haml index 218a2cc2..36f1ae2f 100644 --- a/app/views/posts/attributes/_new_predefined_array.haml +++ b/app/views/posts/attributes/_new_predefined_array.haml @@ -3,8 +3,7 @@ guardar, pero no se pueden agregar nuevos. :ruby - # @todo Convertir en un helper - id = "#{base.gsub(/[\[\]]/, '_')}_#{attribute}".squeeze('_') + id = id_for(base, attribute) name = "#{base}[#{attribute}][]" form_id = "form-#{Nanoid.generate}" From d5d31a6d947950cfb6239cdd25148897db5e8248 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 23 May 2024 17:47:21 -0300 Subject: [PATCH 478/699] =?UTF-8?q?feat:=20bot=C3=B3n=20de=20guardar=20en?= =?UTF-8?q?=20el=20pie?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/posts/_htmx_form.haml | 7 +------ app/views/posts/attributes/_new_has_many.haml | 2 ++ config/locales/en.yml | 1 + config/locales/es.yml | 1 + 4 files changed, 5 insertions(+), 6 deletions(-) diff --git a/app/views/posts/_htmx_form.haml b/app/views/posts/_htmx_form.haml index 25c45aad..cd482b35 100644 --- a/app/views/posts/_htmx_form.haml +++ b/app/views/posts/_htmx_form.haml @@ -7,6 +7,7 @@ @param :dir [Symbol, String] :ruby options = { + id: base, multipart: true, class: 'form post ', 'hx-swap': params.require(:swap), @@ -29,13 +30,7 @@ %input{ type: 'hidden', name: 'name', value: params.require(:name) } %input{ type: 'hidden', name: 'base', value: params.require(:base) } - -# Botones de guardado - = render 'posts/submit', site: site, post: post - = hidden_field_tag "#{base}[layout]", post.layout.name -# Dibuja cada atributo = render 'posts/attributes', site: site, post: post, dir: dir, base: base, locale: locale - - -# Botones de guardado - = render 'posts/submit', site: site, post: post diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index 9382e2af..275d0335 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -90,3 +90,5 @@ = render 'bootstrap/modal', id: post_id, modal_content_attributes: { class: 'h-100' } do - content_for :"#{post_id}_body" do %div{ id: post_form_loaded_id } + - content_for :"#{post_id}_footer" do + = render 'bootstrap/btn', form: id, content: t('.save'), type: 'submit' diff --git a/config/locales/en.yml b/config/locales/en.yml index 9f4f7493..8fbfd536 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -944,3 +944,4 @@ en: cancel: "Cancel" edit: "Edit" filter: "Start typing to filter..." + save: "Save" diff --git a/config/locales/es.yml b/config/locales/es.yml index b85ac397..52ade5b2 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -952,3 +952,4 @@ es: cancel: "Cancelar" edit: "Editar" filter: "Empezá a escribir para filtrar..." + save: "Guardar" From 9b3db70bf424e24c96e1c724721da9bf072dc27c Mon Sep 17 00:00:00 2001 From: f Date: Thu, 23 May 2024 18:19:59 -0300 Subject: [PATCH 479/699] feat: ignorar algunos campos --- app/models/post.rb | 24 +++++++++---------- app/views/posts/_attributes.haml | 3 ++- app/views/posts/_htmx_form.haml | 8 ++++++- app/views/posts/attributes/_new_has_many.haml | 2 ++ 4 files changed, 23 insertions(+), 14 deletions(-) diff --git a/app/models/post.rb b/app/models/post.rb index 6f47a1bb..95ca9a66 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -251,18 +251,6 @@ class Post @metadata[:created_at] ||= MetadataCreatedAt.new(document: document, site: site, layout: layout, name: :created_at, type: :created_at, post: self, required: true) end - # Detecta si es un atributo válido o no, a partir de la tabla de la - # plantilla - def attribute?(mid) - included = DEFAULT_ATTRIBUTES.include?(mid) || - PRIVATE_ATTRIBUTES.include?(mid) || - PUBLIC_ATTRIBUTES.include?(mid) - - included = attributes.include? mid if !included && singleton_class.method_defined?(:attributes) - - included - end - # Devuelve los strong params para el layout. # # XXX: Nos gustaría no tener que instanciar Metadata acá, pero depende @@ -434,6 +422,18 @@ class Post @nested_attributes ||= attributes.map { |a| self[a] }.select(&:nested?).map(&:name) end + # Detecta si es un atributo válido o no, a partir de la tabla de la + # plantilla + def attribute?(mid) + included = DEFAULT_ATTRIBUTES.include?(mid) || + PRIVATE_ATTRIBUTES.include?(mid) || + PUBLIC_ATTRIBUTES.include?(mid) + + included = attributes.include? mid if !included && singleton_class.method_defined?(:attributes) + + included + end + private # Levanta un error si al construir el artículo no pasamos un atributo. diff --git a/app/views/posts/_attributes.haml b/app/views/posts/_attributes.haml index ed958d08..d3c205dc 100644 --- a/app/views/posts/_attributes.haml +++ b/app/views/posts/_attributes.haml @@ -4,7 +4,8 @@ @param post [Post] @param site [Site] @param dir [String] -- post.attributes.each do |attribute| + @param except [Array] +- (post.attributes - local_assigns[:except].to_a).each do |attribute| - metadata = post[attribute] - type = metadata.type diff --git a/app/views/posts/_htmx_form.haml b/app/views/posts/_htmx_form.haml index cd482b35..cfc4071a 100644 --- a/app/views/posts/_htmx_form.haml +++ b/app/views/posts/_htmx_form.haml @@ -6,6 +6,12 @@ @param :locale [Symbol, String] @param :dir [Symbol, String] :ruby + except = %i[date] + + if (inverse = params.permit(:inverse).try(:[], :inverse).presence) + except << inverse.to_sym + end + options = { id: base, multipart: true, @@ -33,4 +39,4 @@ = hidden_field_tag "#{base}[layout]", post.layout.name -# Dibuja cada atributo - = render 'posts/attributes', site: site, post: post, dir: dir, base: base, locale: locale + = render 'posts/attributes', site: site, post: post, dir: dir, base: base, locale: locale, except: except diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index 275d0335..a9225032 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -86,6 +86,8 @@ %input{ type: 'hidden', name: 'swap', value: 'beforeend' } %input{ type: 'hidden', name: 'base', value: id } %input{ type: 'hidden', name: 'name', value: name } + - if metadata.inverse? + %input{ type: 'hidden', name: 'inverse', value: metadata.inverse } %div{ id: post_modal_id, data: { controller: 'modal' } } = render 'bootstrap/modal', id: post_id, modal_content_attributes: { class: 'h-100' } do - content_for :"#{post_id}_body" do From ba9c0ad953602a1c42d3145e426fa6da3cf5b628 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 23 May 2024 18:20:20 -0300 Subject: [PATCH 480/699] feat: mostrar los posts relacionados como tarjetas --- app/views/bootstrap/_card.haml | 9 +++++++++ app/views/bootstrap/_responsive.haml | 4 ++++ app/views/posts/_new_related_post.haml | 16 ++++++++++++++-- app/views/posts/attributes/_new_has_many.haml | 2 +- 4 files changed, 28 insertions(+), 3 deletions(-) create mode 100644 app/views/bootstrap/_card.haml create mode 100644 app/views/bootstrap/_responsive.haml diff --git a/app/views/bootstrap/_card.haml b/app/views/bootstrap/_card.haml new file mode 100644 index 00000000..e7e1f108 --- /dev/null +++ b/app/views/bootstrap/_card.haml @@ -0,0 +1,9 @@ +.card{ **local_assigns.except(:image, :description) } + - if local_assigns[:image] + = render 'bootstrap/responsive' do + = image_tag url_for(local_assigns[:image]), alt: local_assigns[:description], class: 'img-fluid' + + .card-body + .card-title= title + + = yield diff --git a/app/views/bootstrap/_responsive.haml b/app/views/bootstrap/_responsive.haml new file mode 100644 index 00000000..1b51de97 --- /dev/null +++ b/app/views/bootstrap/_responsive.haml @@ -0,0 +1,4 @@ +- local_assigns[:ratio] ||= '1by1' + +.embed-responsive{ class: "embed-responsive-#{local_assigns[:ratio]}" } + .embed-responsive-item= yield diff --git a/app/views/posts/_new_related_post.haml b/app/views/posts/_new_related_post.haml index f3cc2a94..8425ad3e 100644 --- a/app/views/posts/_new_related_post.haml +++ b/app/views/posts/_new_related_post.haml @@ -1,2 +1,14 @@ -.col - %p= link_to post.title, post.path +:ruby + image = nil + description = nil + + if post.post.attribute?(:image) && (image = post.post.image.static_file) + description = post.post.image.value['description'] + end + +.col.mb-3 + = render('bootstrap/card', image: image, description: description, title: post.title, class: 'h-100') do + - if post.post.attribute?(:description) + %p.card-text= post.post.description.value + + = link_to 'Editar', post.path, class: 'btn btn-secondary' diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index a9225032..a5d62a84 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -33,7 +33,7 @@ Para poder cancelar, mantenemos el estado original y desactivamos o activamos los ítemes según estén incluidos en esa lista o no. - .row.row-cols-1.row-cols-md-2{ data: { target: 'array.current' } } + .row.row-cols-3.row-cols-md-4{ data: { target: 'array.current' } } - metadata.values.slice(*metadata.value).each do |value| = render 'posts/new_array_value', value: value From 2fa76255d8688c6b087e0bd8e4d822294624b34e Mon Sep 17 00:00:00 2001 From: fauno Date: Thu, 23 May 2024 21:24:44 +0000 Subject: [PATCH 481/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 899824d3..8a034e41 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b72d12b7753fb3344e067a8d6f4f8545c8d72fcc49f83fe853d25624d1afb6a2 +oid sha256:50e8fe354f39033de7b74cb98081d8ab1e2e88d9f2050e6a780f6c4c9b36c4d2 size 10553 From c1f1571891e203e2c9d3411e41a082a39b83bbf0 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 23 May 2024 18:19:59 -0300 Subject: [PATCH 482/699] feat: ignorar algunos campos (cherry picked from commit 9b3db70bf424e24c96e1c724721da9bf072dc27c) --- app/models/post.rb | 24 +++++++++---------- app/views/posts/_attributes.haml | 3 ++- app/views/posts/_htmx_form.haml | 8 ++++++- app/views/posts/attributes/_new_has_many.haml | 2 ++ 4 files changed, 23 insertions(+), 14 deletions(-) diff --git a/app/models/post.rb b/app/models/post.rb index 327df3e2..e6910e18 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -247,18 +247,6 @@ class Post @metadata[:created_at] ||= MetadataCreatedAt.new(document: document, site: site, layout: layout, name: :created_at, type: :created_at, post: self, required: true) end - # Detecta si es un atributo válido o no, a partir de la tabla de la - # plantilla - def attribute?(mid) - included = DEFAULT_ATTRIBUTES.include?(mid) || - PRIVATE_ATTRIBUTES.include?(mid) || - PUBLIC_ATTRIBUTES.include?(mid) - - included = attributes.include? mid if !included && singleton_class.method_defined?(:attributes) - - included - end - # Devuelve los strong params para el layout. # # XXX: Nos gustaría no tener que instanciar Metadata acá, pero depende @@ -430,6 +418,18 @@ class Post @nested_attributes ||= attributes.map { |a| self[a] }.select(&:nested?).map(&:name) end + # Detecta si es un atributo válido o no, a partir de la tabla de la + # plantilla + def attribute?(mid) + included = DEFAULT_ATTRIBUTES.include?(mid) || + PRIVATE_ATTRIBUTES.include?(mid) || + PUBLIC_ATTRIBUTES.include?(mid) + + included = attributes.include? mid if !included && singleton_class.method_defined?(:attributes) + + included + end + private # Levanta un error si al construir el artículo no pasamos un atributo. diff --git a/app/views/posts/_attributes.haml b/app/views/posts/_attributes.haml index ed958d08..d3c205dc 100644 --- a/app/views/posts/_attributes.haml +++ b/app/views/posts/_attributes.haml @@ -4,7 +4,8 @@ @param post [Post] @param site [Site] @param dir [String] -- post.attributes.each do |attribute| + @param except [Array] +- (post.attributes - local_assigns[:except].to_a).each do |attribute| - metadata = post[attribute] - type = metadata.type diff --git a/app/views/posts/_htmx_form.haml b/app/views/posts/_htmx_form.haml index cd482b35..cfc4071a 100644 --- a/app/views/posts/_htmx_form.haml +++ b/app/views/posts/_htmx_form.haml @@ -6,6 +6,12 @@ @param :locale [Symbol, String] @param :dir [Symbol, String] :ruby + except = %i[date] + + if (inverse = params.permit(:inverse).try(:[], :inverse).presence) + except << inverse.to_sym + end + options = { id: base, multipart: true, @@ -33,4 +39,4 @@ = hidden_field_tag "#{base}[layout]", post.layout.name -# Dibuja cada atributo - = render 'posts/attributes', site: site, post: post, dir: dir, base: base, locale: locale + = render 'posts/attributes', site: site, post: post, dir: dir, base: base, locale: locale, except: except diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index 275d0335..a9225032 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -86,6 +86,8 @@ %input{ type: 'hidden', name: 'swap', value: 'beforeend' } %input{ type: 'hidden', name: 'base', value: id } %input{ type: 'hidden', name: 'name', value: name } + - if metadata.inverse? + %input{ type: 'hidden', name: 'inverse', value: metadata.inverse } %div{ id: post_modal_id, data: { controller: 'modal' } } = render 'bootstrap/modal', id: post_id, modal_content_attributes: { class: 'h-100' } do - content_for :"#{post_id}_body" do From bb8ef69b49b45c5442d225502aed607bed608f36 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 23 May 2024 18:20:20 -0300 Subject: [PATCH 483/699] feat: mostrar los posts relacionados como tarjetas (cherry picked from commit ba9c0ad953602a1c42d3145e426fa6da3cf5b628) --- app/views/bootstrap/_card.haml | 9 +++++++++ app/views/bootstrap/_responsive.haml | 4 ++++ app/views/posts/_new_related_post.haml | 16 ++++++++++++++-- app/views/posts/attributes/_new_has_many.haml | 2 +- 4 files changed, 28 insertions(+), 3 deletions(-) create mode 100644 app/views/bootstrap/_card.haml create mode 100644 app/views/bootstrap/_responsive.haml diff --git a/app/views/bootstrap/_card.haml b/app/views/bootstrap/_card.haml new file mode 100644 index 00000000..e7e1f108 --- /dev/null +++ b/app/views/bootstrap/_card.haml @@ -0,0 +1,9 @@ +.card{ **local_assigns.except(:image, :description) } + - if local_assigns[:image] + = render 'bootstrap/responsive' do + = image_tag url_for(local_assigns[:image]), alt: local_assigns[:description], class: 'img-fluid' + + .card-body + .card-title= title + + = yield diff --git a/app/views/bootstrap/_responsive.haml b/app/views/bootstrap/_responsive.haml new file mode 100644 index 00000000..1b51de97 --- /dev/null +++ b/app/views/bootstrap/_responsive.haml @@ -0,0 +1,4 @@ +- local_assigns[:ratio] ||= '1by1' + +.embed-responsive{ class: "embed-responsive-#{local_assigns[:ratio]}" } + .embed-responsive-item= yield diff --git a/app/views/posts/_new_related_post.haml b/app/views/posts/_new_related_post.haml index f3cc2a94..8425ad3e 100644 --- a/app/views/posts/_new_related_post.haml +++ b/app/views/posts/_new_related_post.haml @@ -1,2 +1,14 @@ -.col - %p= link_to post.title, post.path +:ruby + image = nil + description = nil + + if post.post.attribute?(:image) && (image = post.post.image.static_file) + description = post.post.image.value['description'] + end + +.col.mb-3 + = render('bootstrap/card', image: image, description: description, title: post.title, class: 'h-100') do + - if post.post.attribute?(:description) + %p.card-text= post.post.description.value + + = link_to 'Editar', post.path, class: 'btn btn-secondary' diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index a9225032..a5d62a84 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -33,7 +33,7 @@ Para poder cancelar, mantenemos el estado original y desactivamos o activamos los ítemes según estén incluidos en esa lista o no. - .row.row-cols-1.row-cols-md-2{ data: { target: 'array.current' } } + .row.row-cols-3.row-cols-md-4{ data: { target: 'array.current' } } - metadata.values.slice(*metadata.value).each do |value| = render 'posts/new_array_value', value: value From 8c6a70af2b94735f834671b468e5b79cfd14a335 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 24 May 2024 13:10:55 -0300 Subject: [PATCH 484/699] fix: generar los formularios asociados --- app/views/layouts/application.html.haml | 1 - app/views/posts/_form.haml | 3 +++ app/views/posts/_htmx_form.haml | 2 ++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/app/views/layouts/application.html.haml b/app/views/layouts/application.html.haml index 65d3f777..eaa15eb4 100644 --- a/app/views/layouts/application.html.haml +++ b/app/views/layouts/application.html.haml @@ -25,7 +25,6 @@ = render 'layouts/breadcrumb' = render 'layouts/flash' - = yield(:post_form) = yield - if flash[:js] diff --git a/app/views/posts/_form.haml b/app/views/posts/_form.haml index 92bee939..c04f062f 100644 --- a/app/views/posts/_form.haml +++ b/app/views/posts/_form.haml @@ -45,3 +45,6 @@ -# Botones de guardado = render 'posts/submit', site: site, post: post + +-# Formularios usados por los modales += yield(:post_form) diff --git a/app/views/posts/_htmx_form.haml b/app/views/posts/_htmx_form.haml index cfc4071a..378278f7 100644 --- a/app/views/posts/_htmx_form.haml +++ b/app/views/posts/_htmx_form.haml @@ -40,3 +40,5 @@ -# Dibuja cada atributo = render 'posts/attributes', site: site, post: post, dir: dir, base: base, locale: locale, except: except + += yield(:post_form) From b4467e4d569d515753b260e5909dbc93988ee385 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 24 May 2024 13:12:56 -0300 Subject: [PATCH 485/699] refactor: agregar definiciones por defecto al post --- app/models/post.rb | 59 ++++++++++++++++------------------------------ 1 file changed, 20 insertions(+), 39 deletions(-) diff --git a/app/models/post.rb b/app/models/post.rb index e6910e18..70773023 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -13,8 +13,19 @@ class Post # Otros atributos que no vienen en los metadatos PRIVATE_ATTRIBUTES = %i[path slug attributes errors].freeze PUBLIC_ATTRIBUTES = %i[lang date uuid created_at].freeze + ALIASED_ATTRIBUTES = %i[locale].freeze ATTR_SUFFIXES = %w[? =].freeze + ATTRIBUTE_DEFINITIONS = { + 'lang' => { 'type' => 'lang', 'required' => true }, + 'date' => { 'type' => 'document_date', 'required' => true }, + 'uuid' => { 'type' => 'uuid', 'required' => true }, + 'created_at' => { 'type' => 'created_at', 'required' => true }, + 'slug' => { 'type' => 'slug', 'required' => true }, + 'path' => { 'type' => 'path', 'required' => true }, + 'locale' => { 'alias' => 'lang' }, + } + class PostError < StandardError; end class UnknownAttributeError < PostError; end @@ -49,10 +60,12 @@ class Post @layout = args[:layout] @site = args[:site] @document = args[:document] - @attributes = layout.attributes + PUBLIC_ATTRIBUTES + @attributes = (layout.attributes + PUBLIC_ATTRIBUTES).uniq @errors = {} @metadata = {} + layout.metadata = ATTRIBUTE_DEFINITIONS.merge(layout.metadata).with_indifferent_access + # Leer el documento si existe # @todo Asignar todos los valores a self[:value] luego de leer document&.read! unless new? @@ -195,6 +208,10 @@ class Post define_singleton_method(name) do template = layout.metadata[name.to_s] + if template.key?('alias') + return public_send(template['alias'].to_sym) + end + @metadata[name] ||= MetadataFactory.build(document: document, post: self, @@ -210,43 +227,6 @@ class Post public_send name end - # TODO: Mover a method_missing - def slug - @metadata[:slug] ||= MetadataSlug.new(document: document, site: site, layout: layout, name: :slug, type: :slug, - post: self, required: true) - end - - # TODO: Mover a method_missing - def date - @metadata[:date] ||= MetadataDocumentDate.new(document: document, site: site, layout: layout, name: :date, - type: :document_date, post: self, required: true) - end - - # TODO: Mover a method_missing - def path - @metadata[:path] ||= MetadataPath.new(document: document, site: site, layout: layout, name: :path, type: :path, - post: self, required: true) - end - - # TODO: Mover a method_missing - def lang - @metadata[:lang] ||= MetadataLang.new(document: document, site: site, layout: layout, name: :lang, type: :lang, - post: self, required: true) - end - - alias locale lang - - # TODO: Mover a method_missing - def uuid - @metadata[:uuid] ||= MetadataUuid.new(document: document, site: site, layout: layout, name: :uuid, type: :uuid, - post: self, required: true) - end - - # La fecha de creación inmodificable del post - def created_at - @metadata[:created_at] ||= MetadataCreatedAt.new(document: document, site: site, layout: layout, name: :created_at, type: :created_at, post: self, required: true) - end - # Devuelve los strong params para el layout. # # XXX: Nos gustaría no tener que instanciar Metadata acá, pero depende @@ -423,7 +403,8 @@ class Post def attribute?(mid) included = DEFAULT_ATTRIBUTES.include?(mid) || PRIVATE_ATTRIBUTES.include?(mid) || - PUBLIC_ATTRIBUTES.include?(mid) + PUBLIC_ATTRIBUTES.include?(mid) || + ALIASED_ATTRIBUTES.include?(mid) included = attributes.include? mid if !included && singleton_class.method_defined?(:attributes) From 780d26f79aa4fb5b87f8ccbcc58f8aea5ccc39e5 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 24 May 2024 13:13:58 -0300 Subject: [PATCH 486/699] feat: title es un atributo obligatorio MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit si no existe en el esquema, generar un título en base a sus valores --- app/models/metadata_array.rb | 6 +++++- app/models/metadata_belongs_to.rb | 4 ++++ app/models/metadata_predefined_value.rb | 4 ++++ app/models/metadata_related_posts.rb | 4 ++++ app/models/metadata_slug.rb | 2 +- app/models/metadata_string.rb | 4 ++++ app/models/metadata_template.rb | 5 +++++ app/models/metadata_text.rb | 6 +++++- app/models/metadata_title.rb | 18 ++++++++++++++++++ app/models/post.rb | 3 ++- app/views/posts/attribute_ro/_title.haml | 3 +++ app/views/posts/attributes/_title.haml | 1 + 12 files changed, 56 insertions(+), 4 deletions(-) create mode 100644 app/models/metadata_title.rb create mode 100644 app/views/posts/attribute_ro/_title.haml create mode 100644 app/views/posts/attributes/_title.haml diff --git a/app/models/metadata_array.rb b/app/models/metadata_array.rb index 368aa546..a8a6e555 100644 --- a/app/models/metadata_array.rb +++ b/app/models/metadata_array.rb @@ -19,8 +19,12 @@ class MetadataArray < MetadataTemplate true && !private? end + def titleize? + true + end + def to_s - value.join(', ') + value.select(&:present?).join(', ') end # Obtiene el valor desde el documento, convirtiéndolo a Array si no lo diff --git a/app/models/metadata_belongs_to.rb b/app/models/metadata_belongs_to.rb index be1fa670..7dec4f94 100644 --- a/app/models/metadata_belongs_to.rb +++ b/app/models/metadata_belongs_to.rb @@ -13,6 +13,10 @@ class MetadataBelongsTo < MetadataRelatedPosts '' end + def to_s + belongs_to.try(:title).try(:value).to_s + end + # Obtiene el valor desde el documento. # # @return [String] diff --git a/app/models/metadata_predefined_value.rb b/app/models/metadata_predefined_value.rb index 9cf36382..dbdb1e48 100644 --- a/app/models/metadata_predefined_value.rb +++ b/app/models/metadata_predefined_value.rb @@ -10,6 +10,10 @@ class MetadataPredefinedValue < MetadataString @values ||= layout.dig(:metadata, name, 'values', I18n.locale.to_s)&.invert || {} end + def to_s + values.invert[value].to_s + end + private # Solo permite almacenar los valores predefinidos. diff --git a/app/models/metadata_related_posts.rb b/app/models/metadata_related_posts.rb index 2728020e..9e84c446 100644 --- a/app/models/metadata_related_posts.rb +++ b/app/models/metadata_related_posts.rb @@ -22,6 +22,10 @@ class MetadataRelatedPosts < MetadataArray false end + def titleize? + false + end + def indexable_values posts.where(uuid: value).map(&:title).map(&:value) end diff --git a/app/models/metadata_slug.rb b/app/models/metadata_slug.rb index b0fe8cec..417cfa0b 100644 --- a/app/models/metadata_slug.rb +++ b/app/models/metadata_slug.rb @@ -25,7 +25,7 @@ require 'jekyll/utils' class MetadataSlug < MetadataTemplate # Trae el slug desde el título si existe o una string al azar def default_value - title ? Jekyll::Utils.slugify(title, mode: site.slugify_mode) : SecureRandom.uuid + Jekyll::Utils.slugify(title || SecureRandom.uuid, mode: site.slugify_mode) end def value diff --git a/app/models/metadata_string.rb b/app/models/metadata_string.rb index c1d888b1..cb3ad264 100644 --- a/app/models/metadata_string.rb +++ b/app/models/metadata_string.rb @@ -11,6 +11,10 @@ class MetadataString < MetadataTemplate true && !private? end + def titleize? + true + end + private # No se permite HTML en las strings diff --git a/app/models/metadata_template.rb b/app/models/metadata_template.rb index c762220e..29391ac6 100644 --- a/app/models/metadata_template.rb +++ b/app/models/metadata_template.rb @@ -16,6 +16,11 @@ MetadataTemplate = Struct.new(:site, :document, :name, :label, :type, false end + # El valor puede ser parte de un título auto-generado + def titleize? + false + end + def inspect "#<#{self.class} site=#{site.name.inspect} post=#{post.id.inspect} value=#{value.inspect}>" end diff --git a/app/models/metadata_text.rb b/app/models/metadata_text.rb index 103bcd0a..3ac336bb 100644 --- a/app/models/metadata_text.rb +++ b/app/models/metadata_text.rb @@ -1,4 +1,8 @@ # frozen_string_literal: true # Un campo de texto largo -class MetadataText < MetadataString; end +class MetadataText < MetadataString + def titleize? + false + end +end diff --git a/app/models/metadata_title.rb b/app/models/metadata_title.rb new file mode 100644 index 00000000..c913878b --- /dev/null +++ b/app/models/metadata_title.rb @@ -0,0 +1,18 @@ +# frozen_string_literal: true + +# El título es obligatorio para todos los Post, si el esquema no lo +# incluye, tenemos que poder generar un valor legible por humanes. +class MetadataTitle < MetadataString + # Obtener todos los valores de texto del artículo y generar un título + # en base a eso. + # + # @return [String] + def default_value + @default_value ||= + post.attributes.select do |attr| + post[attr].titleize? + end.map do |attr| + post[attr].to_s + end.compact.join(' ').strip.squeeze(' ') + end +end diff --git a/app/models/post.rb b/app/models/post.rb index 70773023..64669524 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -12,11 +12,12 @@ class Post DEFAULT_ATTRIBUTES = %i[site document layout].freeze # Otros atributos que no vienen en los metadatos PRIVATE_ATTRIBUTES = %i[path slug attributes errors].freeze - PUBLIC_ATTRIBUTES = %i[lang date uuid created_at].freeze + PUBLIC_ATTRIBUTES = %i[title lang date uuid created_at].freeze ALIASED_ATTRIBUTES = %i[locale].freeze ATTR_SUFFIXES = %w[? =].freeze ATTRIBUTE_DEFINITIONS = { + 'title' => { 'type' => 'title', 'required' => true }, 'lang' => { 'type' => 'lang', 'required' => true }, 'date' => { 'type' => 'document_date', 'required' => true }, 'uuid' => { 'type' => 'uuid', 'required' => true }, diff --git a/app/views/posts/attribute_ro/_title.haml b/app/views/posts/attribute_ro/_title.haml new file mode 100644 index 00000000..67642e2c --- /dev/null +++ b/app/views/posts/attribute_ro/_title.haml @@ -0,0 +1,3 @@ +%tr{ id: attribute } + %th= post_label_t(attribute, post: post) + %td{ dir: dir, lang: locale }= metadata.value diff --git a/app/views/posts/attributes/_title.haml b/app/views/posts/attributes/_title.haml new file mode 100644 index 00000000..d94afdbb --- /dev/null +++ b/app/views/posts/attributes/_title.haml @@ -0,0 +1 @@ +-# From 9c8834faccba6722e91ef8b6c69ba098401c007c Mon Sep 17 00:00:00 2001 From: f Date: Fri, 24 May 2024 13:22:28 -0300 Subject: [PATCH 487/699] chore: rubocop --- app/helpers/application_helper.rb | 2 +- app/models/metadata_belongs_to.rb | 2 +- app/models/metadata_related_posts.rb | 4 ++-- app/models/post.rb | 13 +++++-------- app/services/post_service.rb | 22 +++++++++++----------- config/initializers/core_extensions.rb | 3 ++- 6 files changed, 22 insertions(+), 24 deletions(-) diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index c83b2894..ba92f626 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -2,7 +2,7 @@ # Helpers module ApplicationHelper - BRACKETS = /[\[\]]/ + BRACKETS = /[\[\]]/.freeze # Devuelve el atributo name de un campo anidado en el formato que # esperan los helpers *_field diff --git a/app/models/metadata_belongs_to.rb b/app/models/metadata_belongs_to.rb index 7dec4f94..16b0e2ed 100644 --- a/app/models/metadata_belongs_to.rb +++ b/app/models/metadata_belongs_to.rb @@ -101,6 +101,6 @@ class MetadataBelongsTo < MetadataRelatedPosts end def sanitize(uuid) - uuid.to_s.gsub(/[^a-f0-9\-]/i, '') + uuid.to_s.gsub(/[^a-f0-9-]/i, '') end end diff --git a/app/models/metadata_related_posts.rb b/app/models/metadata_related_posts.rb index 9e84c446..6ca09f7d 100644 --- a/app/models/metadata_related_posts.rb +++ b/app/models/metadata_related_posts.rb @@ -45,12 +45,12 @@ class MetadataRelatedPosts < MetadataArray end def title(post) - "#{post&.title&.value || post&.slug&.value} #{post&.date&.value.strftime('%F')} (#{post.layout.humanized_name})" + "#{post&.title&.value || post&.slug&.value} #{post&.date&.value&.strftime('%F')} (#{post.layout.humanized_name})" end def sanitize(uuid) super(uuid.map do |u| - u.to_s.gsub(/[^a-f0-9\-]/i, '') + u.to_s.gsub(/[^a-f0-9-]/i, '') end) end end diff --git a/app/models/post.rb b/app/models/post.rb index 64669524..a1758464 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -24,8 +24,8 @@ class Post 'created_at' => { 'type' => 'created_at', 'required' => true }, 'slug' => { 'type' => 'slug', 'required' => true }, 'path' => { 'type' => 'path', 'required' => true }, - 'locale' => { 'alias' => 'lang' }, - } + 'locale' => { 'alias' => 'lang' } + }.freeze class PostError < StandardError; end class UnknownAttributeError < PostError; end @@ -141,6 +141,7 @@ class Post src = element.attributes['src'] next unless src&.value&.start_with? 'public/' + file = MetadataFile.new(site: site, post: self, document: document, layout: layout) file.value['path'] = src.value @@ -202,16 +203,12 @@ class Post def method_missing(name, *_args) # Limpiar el nombre del atributo, para que todos los ayudantes # reciban el método en limpio - unless attribute? name - raise NoMethodError, I18n.t('exceptions.post.no_method', method: name) - end + raise NoMethodError, I18n.t('exceptions.post.no_method', method: name) unless attribute? name define_singleton_method(name) do template = layout.metadata[name.to_s] - if template.key?('alias') - return public_send(template['alias'].to_sym) - end + return public_send(template['alias'].to_sym) if template.key?('alias') @metadata[name] ||= MetadataFactory.build(document: document, diff --git a/app/services/post_service.rb b/app/services/post_service.rb index 628d1b63..4d32cba9 100644 --- a/app/services/post_service.rb +++ b/app/services/post_service.rb @@ -180,24 +180,24 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do # Si les usuaries modifican o crean una licencia, considerarla # personalizada en el panel. def update_site_license! - if site.usuarie?(usuarie) && post.layout.name == :license && !site.licencia.custom? - site.update licencia: Licencia.find_by_icons('custom') - end + return unless site.usuarie?(usuarie) && post.layout.name == :license && !site.licencia.custom? + + site.update licencia: Licencia.find_by_icons('custom') end # Encuentra todos los posts anidados y los crea o modifica def create_nested_posts!(post, params) post.nested_attributes.each do |nested_attribute| - nested_metadata = post[nested_attribute] - # @todo find_or_initialize - nested_post = nested_metadata.has_one || site.posts(lang: post.lang.value).build(layout: nested_metadata.nested) - nested_params = params.require(nested_attribute).permit(nested_post.params).to_hash + nested_metadata = post[nested_attribute] + # @todo find_or_initialize + nested_post = nested_metadata.has_one || site.posts(lang: post.lang.value).build(layout: nested_metadata.nested) + nested_params = params.require(nested_attribute).permit(nested_post.params).to_hash - # Completa la relación 1:1 - nested_params[nested_metadata.inverse.to_s] = post.uuid.value - post[nested_attribute].value = nested_post.uuid.value + # Completa la relación 1:1 + nested_params[nested_metadata.inverse.to_s] = post.uuid.value + post[nested_attribute].value = nested_post.uuid.value - files << nested_post.path.absolute if nested_post.update(nested_params) + files << nested_post.path.absolute if nested_post.update(nested_params) end end end diff --git a/config/initializers/core_extensions.rb b/config/initializers/core_extensions.rb index 6861da45..024a26ab 100644 --- a/config/initializers/core_extensions.rb +++ b/config/initializers/core_extensions.rb @@ -126,7 +126,8 @@ module Jekyll unless spec I18n.with_locale(locale) do - raise Jekyll::Errors::InvalidThemeName, I18n.t('activerecord.errors.models.site.attributes.design_id.missing_gem', theme: name) + raise Jekyll::Errors::InvalidThemeName, + I18n.t('activerecord.errors.models.site.attributes.design_id.missing_gem', theme: name) rescue Jekyll::Errors::InvalidThemeName => e ExceptionNotifier.notify_exception(e, data: { theme: name, site: File.basename(site.source) }) raise From a84ba934cb02657f6c49f9bc84ad60da659d4837 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 24 May 2024 13:23:30 -0300 Subject: [PATCH 488/699] chore: haml-lint --- app/views/posts/_attributes.haml | 8 ++++---- app/views/posts/_attributes_nested.haml | 7 ++++--- app/views/posts/_form.haml | 3 +-- app/views/posts/_htmx_form.haml | 2 +- app/views/posts/attributes/_title.haml | 1 - app/views/posts/show.haml | 4 ++-- 6 files changed, 12 insertions(+), 13 deletions(-) diff --git a/app/views/posts/_attributes.haml b/app/views/posts/_attributes.haml index d3c205dc..03887866 100644 --- a/app/views/posts/_attributes.haml +++ b/app/views/posts/_attributes.haml @@ -11,7 +11,7 @@ - cache [metadata, I18n.locale] do = render("posts/attributes/#{type}", - base: base, post: post, attribute: attribute, - metadata: metadata, site: site, - dir: dir, locale: locale, - autofocus: (post.attributes.first == attribute)) + base: base, post: post, attribute: attribute, + metadata: metadata, site: site, + dir: dir, locale: locale, + autofocus: (post.attributes.first == attribute)) diff --git a/app/views/posts/_attributes_nested.haml b/app/views/posts/_attributes_nested.haml index 83bcc51c..5036b9c7 100644 --- a/app/views/posts/_attributes_nested.haml +++ b/app/views/posts/_attributes_nested.haml @@ -9,10 +9,11 @@ - next if attribute == :date - next if attribute == :draft - next if attribute == inverse + - metadata = post[attribute] - cache [post, metadata, I18n.locale] do = render "posts/attributes/#{metadata.type}", - base: base, post: post, attribute: attribute, - metadata: metadata, site: site, - dir: dir, locale: locale, autofocus: false + base: base, post: post, attribute: attribute, + metadata: metadata, site: site, + dir: dir, locale: locale, autofocus: false diff --git a/app/views/posts/_form.haml b/app/views/posts/_form.haml index c04f062f..8c006274 100644 --- a/app/views/posts/_form.haml +++ b/app/views/posts/_form.haml @@ -33,8 +33,7 @@ - dir = t("locales.#{@locale}.dir") -# Comienza el formulario -= form_tag url, method: method, class: 'form post ' + extra_class, multipart: true do - += form_tag url, method: method, class: "form post #{extra_class}", multipart: true do -# Botones de guardado = render 'posts/submit', site: site, post: post diff --git a/app/views/posts/_htmx_form.haml b/app/views/posts/_htmx_form.haml index 378278f7..a16e68dd 100644 --- a/app/views/posts/_htmx_form.haml +++ b/app/views/posts/_htmx_form.haml @@ -13,7 +13,7 @@ end options = { - id: base, + id: base, multipart: true, class: 'form post ', 'hx-swap': params.require(:swap), diff --git a/app/views/posts/attributes/_title.haml b/app/views/posts/attributes/_title.haml index d94afdbb..e69de29b 100644 --- a/app/views/posts/attributes/_title.haml +++ b/app/views/posts/attributes/_title.haml @@ -1 +0,0 @@ --# diff --git a/app/views/posts/show.haml b/app/views/posts/show.haml index f44e11ed..12db05a4 100644 --- a/app/views/posts/show.haml +++ b/app/views/posts/show.haml @@ -4,7 +4,7 @@ .col-md-8 %article.content.table-responsive-md = link_to t('posts.edit_post'), - edit_site_post_path(@site, @post.id), - class: 'btn btn-secondary btn-block' + edit_site_post_path(@site, @post.id), + class: 'btn btn-secondary btn-block' = render 'table', dir: dir, site: @site, locale: @locale, post: @post, title: t('.front_matter') From 9a7de79e4992420e3050311243433ea41abce2d2 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 24 May 2024 13:43:08 -0300 Subject: [PATCH 489/699] fix: guardar geo como hash plano --- app/models/metadata_geo.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/metadata_geo.rb b/app/models/metadata_geo.rb index ba11f337..d475edf9 100644 --- a/app/models/metadata_geo.rb +++ b/app/models/metadata_geo.rb @@ -14,7 +14,7 @@ class MetadataGeo < MetadataTemplate return true unless changed? return true if empty? - self[:value] = value.transform_values(&:to_f) + self[:value] = value.transform_values(&:to_f).to_h self[:value] = encrypt(value) if private? true From 32a2172e5bb4f53f940eb2a8fbdc40bbd21617bd Mon Sep 17 00:00:00 2001 From: f Date: Fri, 24 May 2024 13:43:30 -0300 Subject: [PATCH 490/699] fix: evitar auto-referenciarse --- app/models/metadata_title.rb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/models/metadata_title.rb b/app/models/metadata_title.rb index c913878b..ef097473 100644 --- a/app/models/metadata_title.rb +++ b/app/models/metadata_title.rb @@ -3,6 +3,10 @@ # El título es obligatorio para todos los Post, si el esquema no lo # incluye, tenemos que poder generar un valor legible por humanes. class MetadataTitle < MetadataString + def titleize? + false + end + # Obtener todos los valores de texto del artículo y generar un título # en base a eso. # From d347e177e4af7fb8e716b78ed03b868ab92a485b Mon Sep 17 00:00:00 2001 From: f Date: Fri, 24 May 2024 13:43:43 -0300 Subject: [PATCH 491/699] fix: no memoizar, para poder obtener el valor nuevo siempre --- app/models/metadata_title.rb | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/app/models/metadata_title.rb b/app/models/metadata_title.rb index ef097473..729a71fd 100644 --- a/app/models/metadata_title.rb +++ b/app/models/metadata_title.rb @@ -12,11 +12,10 @@ class MetadataTitle < MetadataString # # @return [String] def default_value - @default_value ||= - post.attributes.select do |attr| - post[attr].titleize? - end.map do |attr| - post[attr].to_s - end.compact.join(' ').strip.squeeze(' ') + post.attributes.select do |attr| + post[attr].titleize? + end.map do |attr| + post[attr].to_s + end.compact.join(' ').strip.squeeze(' ') end end From f0769427b7821f55b35aff4bb3e908f7e0a3d176 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 27 May 2024 15:12:03 -0300 Subject: [PATCH 492/699] fix: usar un nombre unico para el formulario en el modal --- app/views/posts/_htmx_form.haml | 2 +- app/views/posts/attributes/_new_has_many.haml | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/app/views/posts/_htmx_form.haml b/app/views/posts/_htmx_form.haml index a16e68dd..acb5585e 100644 --- a/app/views/posts/_htmx_form.haml +++ b/app/views/posts/_htmx_form.haml @@ -13,7 +13,7 @@ end options = { - id: base, + id: params.require(:form), multipart: true, class: 'form post ', 'hx-swap': params.require(:swap), diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index a5d62a84..54eb8d40 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -86,6 +86,7 @@ %input{ type: 'hidden', name: 'swap', value: 'beforeend' } %input{ type: 'hidden', name: 'base', value: id } %input{ type: 'hidden', name: 'name', value: name } + %input{ type: 'hidden', name: 'form', value: form_id } - if metadata.inverse? %input{ type: 'hidden', name: 'inverse', value: metadata.inverse } %div{ id: post_modal_id, data: { controller: 'modal' } } @@ -93,4 +94,4 @@ - content_for :"#{post_id}_body" do %div{ id: post_form_loaded_id } - content_for :"#{post_id}_footer" do - = render 'bootstrap/btn', form: id, content: t('.save'), type: 'submit' + = render 'bootstrap/btn', form: form_id, content: t('.save'), type: 'submit' From e2514a7f10aafa54746d626b469019c66ade5e37 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 27 May 2024 15:13:11 -0300 Subject: [PATCH 493/699] feat: mostrar errores en los formularios --- app/controllers/posts_controller.rb | 5 ++++- app/views/posts/_htmx_form.haml | 31 +++++++++++++++++++++++++++-- 2 files changed, 33 insertions(+), 3 deletions(-) diff --git a/app/controllers/posts_controller.rb b/app/controllers/posts_controller.rb index ff3ecb8e..28295793 100644 --- a/app/controllers/posts_controller.rb +++ b/app/controllers/posts_controller.rb @@ -128,7 +128,10 @@ class PostsController < ApplicationController render 'posts/new_has_many_value', layout: false else - # @todo Mostrar errores + headers['HX-Retarget'] = "##{params.require(:form)}" + headers['HX-Reswap'] = 'outerHTML' + + render 'posts/form', layout: false, post: post, site: site, **params.permit(:form, :base, :dir, :locale) end elsif @post.persisted? redirect_to site_post_path(@site, @post) diff --git a/app/views/posts/_htmx_form.haml b/app/views/posts/_htmx_form.haml index acb5585e..a288aa55 100644 --- a/app/views/posts/_htmx_form.haml +++ b/app/views/posts/_htmx_form.haml @@ -30,11 +30,38 @@ end = form_tag url, **options do + - unless post.errors.empty? + - title = t('.errors.title') + - help = t('.errors.help') + = render 'bootstrap/alert' do + %h4= title + %p= help + + %ul + - post.errors.each do |attribute, errors| + - if errors.size > 1 + %li + %strong= post_label_t attribute, post: post + %ul + - errors.each do |error| + %li= error + - else + %li + %strong= post_label_t attribute, post: post + = errors.first + -# Parámetros para HTMX - %input{ type: 'hidden', name: 'hide', value: params.require(:show) } - %input{ type: 'hidden', name: 'show', value: params.require(:hide) } + %input{ type: 'hidden', name: 'hide', value: params.require((post.errors.empty? ? :show : :hide)) } + %input{ type: 'hidden', name: 'show', value: params.require((post.errors.empty? ? :hide : :show)) } %input{ type: 'hidden', name: 'name', value: params.require(:name) } %input{ type: 'hidden', name: 'base', value: params.require(:base) } + %input{ type: 'hidden', name: 'form', value: options[:id] } + %input{ type: 'hidden', name: 'dir', value: dir } + %input{ type: 'hidden', name: 'locale', value: locale } + %input{ type: 'hidden', name: 'target', value: params.require(:target) } + %input{ type: 'hidden', name: 'swap', value: params.require(:swap) } + - if params[:inverse].present? + %input{ type: 'hidden', name: 'inverse', value: params.require(:inverse) } = hidden_field_tag "#{base}[layout]", post.layout.name From 105b2a1f1c583d8ba449eb2765a66f3d5ce9e7c8 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 27 May 2024 15:13:40 -0300 Subject: [PATCH 494/699] fix: no fallar si el campo inverso es anidado --- app/services/post_service.rb | 1 + 1 file changed, 1 insertion(+) diff --git a/app/services/post_service.rb b/app/services/post_service.rb index 4d32cba9..93daaa45 100644 --- a/app/services/post_service.rb +++ b/app/services/post_service.rb @@ -189,6 +189,7 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do def create_nested_posts!(post, params) post.nested_attributes.each do |nested_attribute| nested_metadata = post[nested_attribute] + next unless params[nested_metadata].present? # @todo find_or_initialize nested_post = nested_metadata.has_one || site.posts(lang: post.lang.value).build(layout: nested_metadata.nested) nested_params = params.require(nested_attribute).permit(nested_post.params).to_hash From c150acbd6fca89782310890b1cf9993cbde8ed38 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 27 May 2024 15:15:55 -0300 Subject: [PATCH 495/699] feat: pertenece a --- app/controllers/posts_controller.rb | 2 +- app/models/metadata_new_belongs_to.rb | 4 + app/views/bootstrap/_custom_checkbox.haml | 2 +- app/views/posts/_htmx_form.haml | 1 + .../posts/attribute_ro/_new_belongs_to.haml | 6 ++ .../posts/attributes/_new_belongs_to.haml | 100 ++++++++++++++++++ app/views/posts/attributes/_new_has_many.haml | 1 + app/views/posts/new_belongs_to_value.haml | 2 + 8 files changed, 116 insertions(+), 2 deletions(-) create mode 100644 app/models/metadata_new_belongs_to.rb create mode 100644 app/views/posts/attribute_ro/_new_belongs_to.haml create mode 100644 app/views/posts/attributes/_new_belongs_to.haml create mode 100644 app/views/posts/new_belongs_to_value.haml diff --git a/app/controllers/posts_controller.rb b/app/controllers/posts_controller.rb index 28295793..bf030ee7 100644 --- a/app/controllers/posts_controller.rb +++ b/app/controllers/posts_controller.rb @@ -126,7 +126,7 @@ class PostsController < ApplicationController @uuid = @post.uuid.value @name = params.require(:name) - render 'posts/new_has_many_value', layout: false + render "posts/#{params.require(:attribute)}_value", layout: false else headers['HX-Retarget'] = "##{params.require(:form)}" headers['HX-Reswap'] = 'outerHTML' diff --git a/app/models/metadata_new_belongs_to.rb b/app/models/metadata_new_belongs_to.rb new file mode 100644 index 00000000..db90cb8f --- /dev/null +++ b/app/models/metadata_new_belongs_to.rb @@ -0,0 +1,4 @@ +# frozen_string_literal: true + +# Nueva interfaz +class MetadataNewBelongsTo < MetadataBelongsTo; end diff --git a/app/views/bootstrap/_custom_checkbox.haml b/app/views/bootstrap/_custom_checkbox.haml index c8cd1b41..ae35caf5 100644 --- a/app/views/bootstrap/_custom_checkbox.haml +++ b/app/views/bootstrap/_custom_checkbox.haml @@ -3,7 +3,7 @@ checkbox_attributes = local_assigns.slice(:id, :type, :name, :value, :required, :checked) checkbox_attributes[:type] ||= 'checkbox' -.custom-control.custom-checkbox +.custom-control{ class: "custom-#{checkbox_attributes[:type]}" } %input.custom-control-input{ **checkbox_attributes } %label.custom-control-label{ for: id, aria: { describedby: help_id } }= content - if (block = yield).present? diff --git a/app/views/posts/_htmx_form.haml b/app/views/posts/_htmx_form.haml index a288aa55..03e82e32 100644 --- a/app/views/posts/_htmx_form.haml +++ b/app/views/posts/_htmx_form.haml @@ -58,6 +58,7 @@ %input{ type: 'hidden', name: 'form', value: options[:id] } %input{ type: 'hidden', name: 'dir', value: dir } %input{ type: 'hidden', name: 'locale', value: locale } + %input{ type: 'hidden', name: 'attribute', value: params.require(:attribute) } %input{ type: 'hidden', name: 'target', value: params.require(:target) } %input{ type: 'hidden', name: 'swap', value: params.require(:swap) } - if params[:inverse].present? diff --git a/app/views/posts/attribute_ro/_new_belongs_to.haml b/app/views/posts/attribute_ro/_new_belongs_to.haml new file mode 100644 index 00000000..c7e06be8 --- /dev/null +++ b/app/views/posts/attribute_ro/_new_belongs_to.haml @@ -0,0 +1,6 @@ +%tr{ id: attribute } + %th= post_label_t(attribute, post: post) + %td{ dir: dir, lang: locale } + - p = metadata.belongs_to + - if p + = link_to p.title.value, site_post_path(site, p.id) diff --git a/app/views/posts/attributes/_new_belongs_to.haml b/app/views/posts/attributes/_new_belongs_to.haml new file mode 100644 index 00000000..d30d22dd --- /dev/null +++ b/app/views/posts/attributes/_new_belongs_to.haml @@ -0,0 +1,100 @@ +-# + Genera un listado de radios entre los que se puede elegir solo uno para + guardar. Podemos elegir entre los artículos ya cargados o agregar uno + nuevo. + + Al agregar uno nuevo, se abre un segundo modal que carga el formulario + correspondiente vía HTMX. El formulario tiene que cargarse por fuera + del formulario principal porque no se pueden anidar. + +:ruby + id = id_for(base, attribute) + name = "#{base}[#{attribute}]" + form_id = "form-#{Nanoid.generate}" + modal_id = "modal-#{Nanoid.generate}" + post_id = "post-#{Nanoid.generate}" + post_form_id = "post-form-#{Nanoid.generate}" + post_modal_id = "post-modal-#{Nanoid.generate}" + post_form_loaded_id = "post-loaded-#{Nanoid.generate}" + value_list_id = "#{id}_body" + +%div{ id: modal_id, data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } + .form-group + = hidden_field_tag name, '' + = label_tag id, post_label_t(attribute, post: post) + -# Mostramos la lista de valores actuales. + + Al aceptar el modal, se vacía el listado y se completa en base a + renderizaciones con HTMX. Para poder hacer eso, tenemos que poder + acceder a todos los items dentro del modal (como array.item) y + enviar el valor al endpoint que devuelve uno por uno. Esto lo + tenemos disponible en Stimulus, pero queremos usar HTMX o técnica + similar para poder renderizar del lado del servidor. + + Para poder cancelar, mantenemos el estado original y desactivamos + o activamos los ítemes según estén incluidos en esa lista o no. + .row.row-cols-3.row-cols-md-4{ data: { target: 'array.current' } } + - metadata.values.slice(*metadata.value).each do |value| + = render 'posts/new_array_value', value: value + + = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' + + = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do + - content_for :"#{id}_header" do + .form-group.flex-grow-1.mb-0 + = label_tag id, post_label_t(attribute, post: post) + %input.form-control{ data: { target: 'array.search', action: 'input->array#search' }, type: 'search', placeholder: t('.filter') } + + - content_for :"#{id}_body" do + .form-group.mb-0{ id: value_list_id } + - metadata.values.each_pair do |value, uuid| + .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: uuid } } + = render 'bootstrap/custom_checkbox', name: name, id: "value-#{Nanoid.generate}", value: uuid, checked: metadata.value.include?(uuid), content: value, type: 'radio' + + -# + Según la definición del campo, si hay un filtro, tenemos que poder + elegir qué tipo de esquema queremos o si hay uno solo, siempre + vamos a enviar ese. Si no hay ninguno, tendríamos que poder elegir + entre todos los esquemas. + + - content_for :"#{id}_footer" do + - layout = metadata.filter[:layout] + - if layout.is_a?(String) + %input{ type: 'hidden', name: 'layout', value: layout, form: post_form_id } + = render 'bootstrap/btn', content: t('.add', layout: site.layouts[layout].humanized_name), form: post_form_id, type: 'submit', class: 'm-0 mr-1' + - else + - layouts = layout&.map { |x| site.layouts[x] } + - layouts ||= site.layouts.values + .input-group.w-auto.flex-grow-1.my-0 + %select.form-control{ form: post_form_id, name: 'layout' } + - layouts.each do |layout| + %option{ value: layout.name }= layout.humanized_name + .input-group-append + = render 'bootstrap/btn', content: t('.add', layout: ''), form: post_form_id, type: 'submit', class: 'mb-0 mr-0' + = render 'bootstrap/btn', content: t('.accept'), action: 'array#accept modal#hide', class: 'm-0 mr-1' + = render 'bootstrap/btn', content: t('.cancel'), action: 'array#cancel modal#hide', class: 'm-0' + +-# + Este segundo modal es el que carga los formularios de + creación/modificación de artículos relacionados. Se envía a post_form + para que sea externo al formulario actual. +- content_for :post_form do + %form{ id: post_form_id, 'hx-get': site_posts_form_path(site), 'hx-target': "##{post_form_loaded_id}" } + %input{ type: 'hidden', name: 'show', value: post_modal_id } + %input{ type: 'hidden', name: 'hide', value: modal_id } + %input{ type: 'hidden', name: 'target', value: value_list_id } + %input{ type: 'hidden', name: 'swap', value: 'beforeend' } + %input{ type: 'hidden', name: 'base', value: id } + %input{ type: 'hidden', name: 'name', value: name } + %input{ type: 'hidden', name: 'form', value: form_id } + %input{ type: 'hidden', name: 'attribute', value: metadata.type } + - if metadata.inverse? + %input{ type: 'hidden', name: 'inverse', value: metadata.inverse } + %div{ id: post_modal_id, data: { controller: 'modal' } } + = render 'bootstrap/modal', id: post_id, modal_content_attributes: { class: 'h-100' } do + - content_for :"#{post_id}_body" do + %div{ id: post_form_loaded_id } + - content_for :"#{post_id}_footer" do + = render 'bootstrap/btn', form: form_id, content: t('.save'), type: 'submit' + -# @todo: Volver al otro modal + = render 'bootstrap/btn', content: t('.cancel'), action: 'modal#hide' diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index 54eb8d40..724f8247 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -87,6 +87,7 @@ %input{ type: 'hidden', name: 'base', value: id } %input{ type: 'hidden', name: 'name', value: name } %input{ type: 'hidden', name: 'form', value: form_id } + %input{ type: 'hidden', name: 'attribute', value: metadata.type } - if metadata.inverse? %input{ type: 'hidden', name: 'inverse', value: metadata.inverse } %div{ id: post_modal_id, data: { controller: 'modal' } } diff --git a/app/views/posts/new_belongs_to_value.haml b/app/views/posts/new_belongs_to_value.haml new file mode 100644 index 00000000..ab324763 --- /dev/null +++ b/app/views/posts/new_belongs_to_value.haml @@ -0,0 +1,2 @@ +.mb-2{ data: { target: 'array.item', 'searchable-value': @value.remove_diacritics.downcase, value: @uuid } } + = render 'bootstrap/custom_checkbox', name: @name, id: "value-#{Nanoid.generate}", value: @uuid, checked: true, content: @value, type: 'radio' From d8a7816c65d157034975dc0449787de8b22d54e5 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 27 May 2024 15:16:24 -0300 Subject: [PATCH 496/699] fix: cancelar el formulario --- app/views/posts/attributes/_new_has_many.haml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index 724f8247..e35ef453 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -96,3 +96,5 @@ %div{ id: post_form_loaded_id } - content_for :"#{post_id}_footer" do = render 'bootstrap/btn', form: form_id, content: t('.save'), type: 'submit' + -# @todo: Volver al otro modal + = render 'bootstrap/btn', content: t('.cancel'), action: 'modal#hide' From 865cc8fc18fd2e90e8e8190a83bfe2ccf632086c Mon Sep 17 00:00:00 2001 From: f Date: Mon, 27 May 2024 15:28:17 -0300 Subject: [PATCH 497/699] =?UTF-8?q?fix:=20enviar=20los=20atributos=20ignor?= =?UTF-8?q?ados=20como=20valores=20vac=C3=ADos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/posts/_htmx_form.haml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/views/posts/_htmx_form.haml b/app/views/posts/_htmx_form.haml index 03e82e32..8cc8c938 100644 --- a/app/views/posts/_htmx_form.haml +++ b/app/views/posts/_htmx_form.haml @@ -69,4 +69,8 @@ -# Dibuja cada atributo = render 'posts/attributes', site: site, post: post, dir: dir, base: base, locale: locale, except: except + -# Enviamos valores vacíos para los atributos ocultos + - except.each do |attr| + %input{ type: 'hidden', name: "#{base}[#{attr}]", value: "" } + = yield(:post_form) From 23a9bbf8cad9890b25a424add36848d3a5eafa33 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 27 May 2024 16:38:56 -0300 Subject: [PATCH 498/699] fix: alinear los botones --- app/views/posts/attributes/_new_array.haml | 30 +++++++++---------- .../posts/attributes/_new_belongs_to.haml | 29 +++++++++--------- app/views/posts/attributes/_new_has_many.haml | 30 +++++++++---------- .../attributes/_new_predefined_array.haml | 29 +++++++++--------- 4 files changed, 60 insertions(+), 58 deletions(-) diff --git a/app/views/posts/attributes/_new_array.haml b/app/views/posts/attributes/_new_array.haml index b4407c0d..8369f335 100644 --- a/app/views/posts/attributes/_new_array.haml +++ b/app/views/posts/attributes/_new_array.haml @@ -8,23 +8,23 @@ %div{ data: { controller: 'modal array enter', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } .form-group = hidden_field_tag name, '' - = label_tag id, post_label_t(attribute, post: post) - -# Mostramos la lista de valores actuales. + .d-flex.align-items-center.justify-content-between + = label_tag id, post_label_t(attribute, post: post) + = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' + .row.row-cols-1.row-cols-md-2{ data: { target: 'array.current' } } + -# Mostramos la lista de valores actuales. - Al aceptar el modal, se vacía el listado y se completa en base a - renderizaciones con HTMX. Para poder hacer eso, tenemos que poder - acceder a todos los items dentro del modal (como array.item) y - enviar el valor al endpoint que devuelve uno por uno. Esto lo - tenemos disponible en Stimulus, pero queremos usar HTMX o técnica - similar para poder renderizar del lado del servidor. + Al aceptar el modal, se vacía el listado y se completa en base a + renderizaciones con HTMX. Para poder hacer eso, tenemos que poder + acceder a todos los items dentro del modal (como array.item) y + enviar el valor al endpoint que devuelve uno por uno. Esto lo + tenemos disponible en Stimulus, pero queremos usar HTMX o técnica + similar para poder renderizar del lado del servidor. - Para poder cancelar, mantenemos el estado original y desactivamos - o activamos los ítemes según estén incluidos en esa lista o no. - .row.row-cols-1.row-cols-md-2{ data: { target: 'array.current' } } - - metadata.value.sort_by(&:remove_diacritics).each do |value| - = render 'posts/new_array_value', value: value - - = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' + Para poder cancelar, mantenemos el estado original y desactivamos + o activamos los ítemes según estén incluidos en esa lista o no. + - metadata.value.sort_by(&:remove_diacritics).each do |value| + = render 'posts/new_array_value', value: value = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do - content_for :"#{id}_header" do diff --git a/app/views/posts/attributes/_new_belongs_to.haml b/app/views/posts/attributes/_new_belongs_to.haml index d30d22dd..381b0e7b 100644 --- a/app/views/posts/attributes/_new_belongs_to.haml +++ b/app/views/posts/attributes/_new_belongs_to.haml @@ -21,23 +21,24 @@ %div{ id: modal_id, data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } .form-group = hidden_field_tag name, '' - = label_tag id, post_label_t(attribute, post: post) - -# Mostramos la lista de valores actuales. + .d-flex.align-items-center.justify-content-between + = label_tag id, post_label_t(attribute, post: post) + = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' - Al aceptar el modal, se vacía el listado y se completa en base a - renderizaciones con HTMX. Para poder hacer eso, tenemos que poder - acceder a todos los items dentro del modal (como array.item) y - enviar el valor al endpoint que devuelve uno por uno. Esto lo - tenemos disponible en Stimulus, pero queremos usar HTMX o técnica - similar para poder renderizar del lado del servidor. + -# Mostramos la lista de valores actuales. - Para poder cancelar, mantenemos el estado original y desactivamos - o activamos los ítemes según estén incluidos en esa lista o no. - .row.row-cols-3.row-cols-md-4{ data: { target: 'array.current' } } - - metadata.values.slice(*metadata.value).each do |value| - = render 'posts/new_array_value', value: value + Al aceptar el modal, se vacía el listado y se completa en base a + renderizaciones con HTMX. Para poder hacer eso, tenemos que poder + acceder a todos los items dentro del modal (como array.item) y + enviar el valor al endpoint que devuelve uno por uno. Esto lo + tenemos disponible en Stimulus, pero queremos usar HTMX o técnica + similar para poder renderizar del lado del servidor. - = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' + Para poder cancelar, mantenemos el estado original y desactivamos + o activamos los ítemes según estén incluidos en esa lista o no. + .row.row-cols-3.row-cols-md-4{ data: { target: 'array.current' } } + - metadata.values.slice(*metadata.value).each do |value| + = render 'posts/new_array_value', value: value = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do - content_for :"#{id}_header" do diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index e35ef453..3aef2b86 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -21,23 +21,23 @@ %div{ id: modal_id, data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } .form-group = hidden_field_tag name, '' - = label_tag id, post_label_t(attribute, post: post) - -# Mostramos la lista de valores actuales. + .d-flex.align-items-center.justify-content-between + = label_tag id, post_label_t(attribute, post: post) + = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' + -# Mostramos la lista de valores actuales. - Al aceptar el modal, se vacía el listado y se completa en base a - renderizaciones con HTMX. Para poder hacer eso, tenemos que poder - acceder a todos los items dentro del modal (como array.item) y - enviar el valor al endpoint que devuelve uno por uno. Esto lo - tenemos disponible en Stimulus, pero queremos usar HTMX o técnica - similar para poder renderizar del lado del servidor. + Al aceptar el modal, se vacía el listado y se completa en base a + renderizaciones con HTMX. Para poder hacer eso, tenemos que poder + acceder a todos los items dentro del modal (como array.item) y + enviar el valor al endpoint que devuelve uno por uno. Esto lo + tenemos disponible en Stimulus, pero queremos usar HTMX o técnica + similar para poder renderizar del lado del servidor. - Para poder cancelar, mantenemos el estado original y desactivamos - o activamos los ítemes según estén incluidos en esa lista o no. - .row.row-cols-3.row-cols-md-4{ data: { target: 'array.current' } } - - metadata.values.slice(*metadata.value).each do |value| - = render 'posts/new_array_value', value: value - - = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' + Para poder cancelar, mantenemos el estado original y desactivamos + o activamos los ítemes según estén incluidos en esa lista o no. + .row.row-cols-3.row-cols-md-4{ data: { target: 'array.current' } } + - metadata.values.slice(*metadata.value).each do |value| + = render 'posts/new_array_value', value: value = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do - content_for :"#{id}_header" do diff --git a/app/views/posts/attributes/_new_predefined_array.haml b/app/views/posts/attributes/_new_predefined_array.haml index 36f1ae2f..09d8f7ce 100644 --- a/app/views/posts/attributes/_new_predefined_array.haml +++ b/app/views/posts/attributes/_new_predefined_array.haml @@ -10,23 +10,24 @@ %div{ data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } .form-group = hidden_field_tag name, '' - = label_tag id, post_label_t(attribute, post: post) - -# Mostramos la lista de valores actuales. + .d-flex.align-items-center.justify-content-between + = label_tag id, post_label_t(attribute, post: post) + = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' - Al aceptar el modal, se vacía el listado y se completa en base a - renderizaciones con HTMX. Para poder hacer eso, tenemos que poder - acceder a todos los items dentro del modal (como array.item) y - enviar el valor al endpoint que devuelve uno por uno. Esto lo - tenemos disponible en Stimulus, pero queremos usar HTMX o técnica - similar para poder renderizar del lado del servidor. + -# Mostramos la lista de valores actuales. - Para poder cancelar, mantenemos el estado original y desactivamos - o activamos los ítemes según estén incluidos en esa lista o no. - .row.row-cols-1.row-cols-md-2{ data: { target: 'array.current' } } - - metadata.values.slice(*metadata.value).each_key do |value| - = render 'posts/new_array_value', value: value + Al aceptar el modal, se vacía el listado y se completa en base a + renderizaciones con HTMX. Para poder hacer eso, tenemos que poder + acceder a todos los items dentro del modal (como array.item) y + enviar el valor al endpoint que devuelve uno por uno. Esto lo + tenemos disponible en Stimulus, pero queremos usar HTMX o técnica + similar para poder renderizar del lado del servidor. - = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' + Para poder cancelar, mantenemos el estado original y desactivamos + o activamos los ítemes según estén incluidos en esa lista o no. + .row.row-cols-1.row-cols-md-2{ data: { target: 'array.current' } } + - metadata.values.slice(*metadata.value).each_key do |value| + = render 'posts/new_array_value', value: value = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do - content_for :"#{id}_header" do From 0d147c87bb6e67d653622459499aec8c11905358 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 27 May 2024 16:40:09 -0300 Subject: [PATCH 499/699] =?UTF-8?q?feat:=20mostrar=20que=20est=C3=A1=20car?= =?UTF-8?q?gando=20algo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/assets/stylesheets/application.scss | 30 +++++++++++++++++++ .../controllers/array_controller.js | 15 +++++++--- app/views/posts/attributes/_new_array.haml | 6 +++- .../posts/attributes/_new_belongs_to.haml | 6 +++- app/views/posts/attributes/_new_has_many.haml | 6 +++- .../attributes/_new_predefined_array.haml | 6 +++- 6 files changed, 61 insertions(+), 8 deletions(-) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 7d9c8c9d..7a082ae8 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -622,3 +622,33 @@ $bezier: cubic-bezier(0.75, 0, 0.25, 1); } } } + +// https://getbootstrap.com/docs/5.1/components/placeholders/ +.placeholder { + display: inline-block; + min-height: $spacer; + cursor: wait; + vertical-align: middle; + opacity: .5; + background-color: $grey; + animation: placeholder-glow 2s ease-in-out infinite; +} + +.placeholder-glow { + .placeholder { + -webkit-animation: placeholder-glow 2s ease-in-out infinite; + animation: placeholder-glow 2s ease-in-out infinite; + } + + @-webkit-keyframes placeholder-glow { + 50% { + opacity: .2; + } + } + + @keyframes placeholder-glow { + 50% { + opacity: .2; + } + } +} diff --git a/app/javascript/controllers/array_controller.js b/app/javascript/controllers/array_controller.js index 66cc2290..19d00ccd 100644 --- a/app/javascript/controllers/array_controller.js +++ b/app/javascript/controllers/array_controller.js @@ -1,7 +1,7 @@ import { Controller } from "stimulus"; export default class extends Controller { - static targets = ["item", "search", "current"]; + static targets = ["item", "search", "current", "placeholder"]; connect() { // TODO: Stimulus >1 @@ -104,12 +104,19 @@ export default class extends Controller { this.originalValue.push(itemTarget.dataset.value); this.newArrayValueURL.searchParams.set("value", itemTarget.dataset.value); + const placeholder = this.placeholderTarget.content.firstElementChild.cloneNode(true); + + this.currentTarget.appendChild(placeholder); + // TODO: Renderizarlas todas juntas fetch(this.newArrayValueURL) .then((response) => response.text()) - .then((body) => - this.currentTarget.insertAdjacentHTML("beforeend", body), - ); + .then((body) => { + const template = document.createElement("template"); + template.innerHTML = body; + + placeholder.replaceWith(template.content.firstElementChild); + }); } // TODO: Stimulus >1 diff --git a/app/views/posts/attributes/_new_array.haml b/app/views/posts/attributes/_new_array.haml index 8369f335..71c409a2 100644 --- a/app/views/posts/attributes/_new_array.haml +++ b/app/views/posts/attributes/_new_array.haml @@ -6,12 +6,15 @@ form_id = "form-#{Nanoid.generate}" %div{ data: { controller: 'modal array enter', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } + %template{ data: { target: 'array.placeholder' } } + .col.mb-3{ 'aria-hidden': 'true' } + %span.placeholder.w-100 + .form-group = hidden_field_tag name, '' .d-flex.align-items-center.justify-content-between = label_tag id, post_label_t(attribute, post: post) = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' - .row.row-cols-1.row-cols-md-2{ data: { target: 'array.current' } } -# Mostramos la lista de valores actuales. Al aceptar el modal, se vacía el listado y se completa en base a @@ -23,6 +26,7 @@ Para poder cancelar, mantenemos el estado original y desactivamos o activamos los ítemes según estén incluidos en esa lista o no. + .row.row-cols-1.row-cols-md-2.no-gutters.placeholder-glow{ data: { target: 'array.current' } } - metadata.value.sort_by(&:remove_diacritics).each do |value| = render 'posts/new_array_value', value: value diff --git a/app/views/posts/attributes/_new_belongs_to.haml b/app/views/posts/attributes/_new_belongs_to.haml index 381b0e7b..afbc8bdd 100644 --- a/app/views/posts/attributes/_new_belongs_to.haml +++ b/app/views/posts/attributes/_new_belongs_to.haml @@ -19,6 +19,10 @@ value_list_id = "#{id}_body" %div{ id: modal_id, data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } + %template{ data: { target: 'array.placeholder' } } + .col.p-3{ 'aria-hidden': 'true' } + %span.placeholder.w-100 + .form-group = hidden_field_tag name, '' .d-flex.align-items-center.justify-content-between @@ -36,7 +40,7 @@ Para poder cancelar, mantenemos el estado original y desactivamos o activamos los ítemes según estén incluidos en esa lista o no. - .row.row-cols-3.row-cols-md-4{ data: { target: 'array.current' } } + .row.row-cols-3.row-cols-md-4.no-gutters.placeholder-glow{ data: { target: 'array.current' } } - metadata.values.slice(*metadata.value).each do |value| = render 'posts/new_array_value', value: value diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index 3aef2b86..143ad2d1 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -19,6 +19,10 @@ value_list_id = "#{id}_body" %div{ id: modal_id, data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } + %template{ data: { target: 'array.placeholder' } } + .col.p-3{ 'aria-hidden': 'true' } + %span.placeholder.w-100 + .form-group = hidden_field_tag name, '' .d-flex.align-items-center.justify-content-between @@ -35,7 +39,7 @@ Para poder cancelar, mantenemos el estado original y desactivamos o activamos los ítemes según estén incluidos en esa lista o no. - .row.row-cols-3.row-cols-md-4{ data: { target: 'array.current' } } + .row.row-cols-3.row-cols-md-4.no-gutters.placeholder-glow{ data: { target: 'array.current' } } - metadata.values.slice(*metadata.value).each do |value| = render 'posts/new_array_value', value: value diff --git a/app/views/posts/attributes/_new_predefined_array.haml b/app/views/posts/attributes/_new_predefined_array.haml index 09d8f7ce..ec251134 100644 --- a/app/views/posts/attributes/_new_predefined_array.haml +++ b/app/views/posts/attributes/_new_predefined_array.haml @@ -8,6 +8,10 @@ form_id = "form-#{Nanoid.generate}" %div{ data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } + %template{ data: { target: 'array.placeholder' } } + .col.mb-3{ 'aria-hidden': 'true' } + %span.placeholder.w-100 + .form-group = hidden_field_tag name, '' .d-flex.align-items-center.justify-content-between @@ -25,7 +29,7 @@ Para poder cancelar, mantenemos el estado original y desactivamos o activamos los ítemes según estén incluidos en esa lista o no. - .row.row-cols-1.row-cols-md-2{ data: { target: 'array.current' } } + .row.row-cols-1.row-cols-md-2.no-gutters.placeholder-glow{ data: { target: 'array.current' } } - metadata.values.slice(*metadata.value).each_key do |value| = render 'posts/new_array_value', value: value From 99310c56bbef6fe395e2a0ad39de556d21e47ce7 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 27 May 2024 16:44:23 -0300 Subject: [PATCH 500/699] fix: el valor es obligatorio --- app/views/posts/attributes/_new_array.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/posts/attributes/_new_array.haml b/app/views/posts/attributes/_new_array.haml index 71c409a2..38ba4eb9 100644 --- a/app/views/posts/attributes/_new_array.haml +++ b/app/views/posts/attributes/_new_array.haml @@ -45,7 +45,7 @@ - content_for :"#{id}_footer" do .input-group.w-auto.flex-grow-1.my-0 - %input.form-control{ form: form_id, name: 'value', type: 'text', placeholder: t('.add_new') } + %input.form-control{ form: form_id, name: 'value', type: 'text', placeholder: t('.add_new'), required: true } .input-group-append = render 'bootstrap/btn', content: t('.add', layout: ''), form: form_id, type: 'submit', class: 'mb-0 mr-0' = render 'bootstrap/btn', content: t('.accept'), action: 'array#accept modal#hide', class: 'm-0 mr-1' From 6a2f77c59150d6e034a2a07b923afe3be04a94f7 Mon Sep 17 00:00:00 2001 From: fauno Date: Mon, 27 May 2024 19:50:20 +0000 Subject: [PATCH 501/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 4 ++-- ...7ba6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css | 3 +++ ...6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css.gz | 3 +++ public/packs/js/application-1f713e2f078d69dc0186.js | 3 +++ ...SE.txt => application-1f713e2f078d69dc0186.js.LICENSE.txt} | 0 public/packs/js/application-1f713e2f078d69dc0186.js.br | 3 +++ public/packs/js/application-1f713e2f078d69dc0186.js.gz | 3 +++ public/packs/js/application-1f713e2f078d69dc0186.js.map | 3 +++ public/packs/js/application-1f713e2f078d69dc0186.js.map.br | 3 +++ public/packs/js/application-1f713e2f078d69dc0186.js.map.gz | 3 +++ public/packs/js/application-f13697e2bd96d122adcd.js | 3 --- public/packs/js/application-f13697e2bd96d122adcd.js.br | 3 --- public/packs/js/application-f13697e2bd96d122adcd.js.gz | 3 --- public/packs/js/application-f13697e2bd96d122adcd.js.map | 3 --- public/packs/js/application-f13697e2bd96d122adcd.js.map.br | 3 --- public/packs/js/application-f13697e2bd96d122adcd.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 19 files changed, 31 insertions(+), 25 deletions(-) create mode 100644 public/assets/application-35e329e6ff7ba6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css create mode 100644 public/assets/application-35e329e6ff7ba6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css.gz create mode 100644 public/packs/js/application-1f713e2f078d69dc0186.js rename public/packs/js/{application-f13697e2bd96d122adcd.js.LICENSE.txt => application-1f713e2f078d69dc0186.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-1f713e2f078d69dc0186.js.br create mode 100644 public/packs/js/application-1f713e2f078d69dc0186.js.gz create mode 100644 public/packs/js/application-1f713e2f078d69dc0186.js.map create mode 100644 public/packs/js/application-1f713e2f078d69dc0186.js.map.br create mode 100644 public/packs/js/application-1f713e2f078d69dc0186.js.map.gz delete mode 100644 public/packs/js/application-f13697e2bd96d122adcd.js delete mode 100644 public/packs/js/application-f13697e2bd96d122adcd.js.br delete mode 100644 public/packs/js/application-f13697e2bd96d122adcd.js.gz delete mode 100644 public/packs/js/application-f13697e2bd96d122adcd.js.map delete mode 100644 public/packs/js/application-f13697e2bd96d122adcd.js.map.br delete mode 100644 public/packs/js/application-f13697e2bd96d122adcd.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 8a034e41..3047c456 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:50e8fe354f39033de7b74cb98081d8ab1e2e88d9f2050e6a780f6c4c9b36c4d2 -size 10553 +oid sha256:b797d1fed264f035a3c59913f57fc20064de9a3af1205d6385d90e9068dcea94 +size 10863 diff --git a/public/assets/application-35e329e6ff7ba6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css b/public/assets/application-35e329e6ff7ba6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css new file mode 100644 index 00000000..974277ef --- /dev/null +++ b/public/assets/application-35e329e6ff7ba6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:12925e713e5a7d48edf50c1ebc4d0fe9a70b67355007dcbba5bbaa0d0e1a19d4 +size 239145 diff --git a/public/assets/application-35e329e6ff7ba6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css.gz b/public/assets/application-35e329e6ff7ba6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css.gz new file mode 100644 index 00000000..a2849da7 --- /dev/null +++ b/public/assets/application-35e329e6ff7ba6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae31a1fadd5550257a69087aad8edaf05c566a9f2c138453ceedce1d8ab04e7d +size 33191 diff --git a/public/packs/js/application-1f713e2f078d69dc0186.js b/public/packs/js/application-1f713e2f078d69dc0186.js new file mode 100644 index 00000000..99006d53 --- /dev/null +++ b/public/packs/js/application-1f713e2f078d69dc0186.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5dc2ad99e5883f1bcebf113b1223b36436a00dc7ebb9b381d557d4c43a8f5c24 +size 1654089 diff --git a/public/packs/js/application-f13697e2bd96d122adcd.js.LICENSE.txt b/public/packs/js/application-1f713e2f078d69dc0186.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-f13697e2bd96d122adcd.js.LICENSE.txt rename to public/packs/js/application-1f713e2f078d69dc0186.js.LICENSE.txt diff --git a/public/packs/js/application-1f713e2f078d69dc0186.js.br b/public/packs/js/application-1f713e2f078d69dc0186.js.br new file mode 100644 index 00000000..2a0f08c0 --- /dev/null +++ b/public/packs/js/application-1f713e2f078d69dc0186.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79ee73140c9bb93702dd5a3dbd3007e001d18e586ad791eaa6810046a35f3290 +size 367582 diff --git a/public/packs/js/application-1f713e2f078d69dc0186.js.gz b/public/packs/js/application-1f713e2f078d69dc0186.js.gz new file mode 100644 index 00000000..a94b85e5 --- /dev/null +++ b/public/packs/js/application-1f713e2f078d69dc0186.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7fb7ec087b7e4dc0199279e57b6146beb09f487f1ce36a3812a77d59225db26 +size 484378 diff --git a/public/packs/js/application-1f713e2f078d69dc0186.js.map b/public/packs/js/application-1f713e2f078d69dc0186.js.map new file mode 100644 index 00000000..715dee03 --- /dev/null +++ b/public/packs/js/application-1f713e2f078d69dc0186.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ecf04941e6d7006713ffed53a8c13da5b973322fca1c0e5238900d086927b49 +size 6396861 diff --git a/public/packs/js/application-1f713e2f078d69dc0186.js.map.br b/public/packs/js/application-1f713e2f078d69dc0186.js.map.br new file mode 100644 index 00000000..a186496b --- /dev/null +++ b/public/packs/js/application-1f713e2f078d69dc0186.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:047ee2b7ce1046f9fc040c19c1cae2b482d553489c0b8e2164e5062bdc03ddcd +size 1377794 diff --git a/public/packs/js/application-1f713e2f078d69dc0186.js.map.gz b/public/packs/js/application-1f713e2f078d69dc0186.js.map.gz new file mode 100644 index 00000000..950c99f9 --- /dev/null +++ b/public/packs/js/application-1f713e2f078d69dc0186.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:517705b8c7e8a337ab27ac0aace3a5316a07518ebcc861ab332afc55fea5345c +size 1703820 diff --git a/public/packs/js/application-f13697e2bd96d122adcd.js b/public/packs/js/application-f13697e2bd96d122adcd.js deleted file mode 100644 index d0448bed..00000000 --- a/public/packs/js/application-f13697e2bd96d122adcd.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5dd3460f2b0098288d27ba0756158d71201e34b5b197e8f3a4a62b62c2ed71e7 -size 1653891 diff --git a/public/packs/js/application-f13697e2bd96d122adcd.js.br b/public/packs/js/application-f13697e2bd96d122adcd.js.br deleted file mode 100644 index 7360f1b0..00000000 --- a/public/packs/js/application-f13697e2bd96d122adcd.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d0b8524205fa0ae5cb6c97b210f4d55073a0827ca65721f540b4c7c1bdda4a85 -size 367424 diff --git a/public/packs/js/application-f13697e2bd96d122adcd.js.gz b/public/packs/js/application-f13697e2bd96d122adcd.js.gz deleted file mode 100644 index 46f336bb..00000000 --- a/public/packs/js/application-f13697e2bd96d122adcd.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:83f7053449a4a191d41cf7302102e03382eec1234aed97ca745e779e3c7b0571 -size 484303 diff --git a/public/packs/js/application-f13697e2bd96d122adcd.js.map b/public/packs/js/application-f13697e2bd96d122adcd.js.map deleted file mode 100644 index 881886fe..00000000 --- a/public/packs/js/application-f13697e2bd96d122adcd.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d83fde267241026216c466843cc94b21e9ec2cdc446d598a7ed34dd97bb230ef -size 6396408 diff --git a/public/packs/js/application-f13697e2bd96d122adcd.js.map.br b/public/packs/js/application-f13697e2bd96d122adcd.js.map.br deleted file mode 100644 index 88d925a3..00000000 --- a/public/packs/js/application-f13697e2bd96d122adcd.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3d051048361576ecaa8cf2347d84f7c84e0079673a64885fe1c10f233d55f162 -size 1377668 diff --git a/public/packs/js/application-f13697e2bd96d122adcd.js.map.gz b/public/packs/js/application-f13697e2bd96d122adcd.js.map.gz deleted file mode 100644 index 8652afa3..00000000 --- a/public/packs/js/application-f13697e2bd96d122adcd.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e4ff187963af890dba9d348d203cb9a21b28a5b3e8cf4c7f6a2059e048d51294 -size 1703677 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 733d67bc..cb5388d5 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:edf0134b65097a52acc3d94b7958b2ff45c2a8e1c82ec1968af4da83bd104194 +oid sha256:c08c2257d986802240a8b0dd2d04f1d8344e85aa39a148815271be96102b4622 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 7cdae1f8..a02355c5 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:566db1dfc7775cb104237e2b673bddbfd7c124c92d5667f38d9197388d4cb2fa -size 323 +oid sha256:28983391cdbff276be1d5044d164fd8a384bd7bd7a78ca24f0b14b87af9d6860 +size 318 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index cd86dd0c..86c8aa36 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0bd6850c2a85943b309a1b223dab2cd3b335f63ee8c5ab8dd7ee0fec86db8089 -size 364 +oid sha256:a7c5c729d926ed08bbaef15198c545ca4909079be82483a6f353e2b4c6d67472 +size 365 From 9c8ec08e7371776ccce05d5548827386e3743ad3 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 May 2024 13:15:45 -0300 Subject: [PATCH 502/699] fix: brakeman --- app/controllers/posts_controller.rb | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/app/controllers/posts_controller.rb b/app/controllers/posts_controller.rb index bf030ee7..f38ccff3 100644 --- a/app/controllers/posts_controller.rb +++ b/app/controllers/posts_controller.rb @@ -126,7 +126,7 @@ class PostsController < ApplicationController @uuid = @post.uuid.value @name = params.require(:name) - render "posts/#{params.require(:attribute)}_value", layout: false + render render_path_from_attribute, layout: false else headers['HX-Retarget'] = "##{params.require(:form)}" headers['HX-Reswap'] = 'outerHTML' @@ -240,4 +240,13 @@ class PostsController < ApplicationController headers['HX-Trigger'] = triggers.to_json if triggers.present? end + + # @return [String] + def render_path_from_attribute + case params.require(:attribute) + when 'new_has_many' then 'posts/new_has_many_value' + when 'new_belongs_to' then 'posts/new_belongs_to_value' + else 'nothing' + end + end end From 019e679fa910425baefa66e11afeacdcd0600c91 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 May 2024 15:49:47 -0300 Subject: [PATCH 503/699] fix: fallar al final #16388 --- .../disk_controller_decorator.rb | 20 +++++++++---------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/app/controllers/active_storage/disk_controller_decorator.rb b/app/controllers/active_storage/disk_controller_decorator.rb index 8af75227..4c9c5166 100644 --- a/app/controllers/active_storage/disk_controller_decorator.rb +++ b/app/controllers/active_storage/disk_controller_decorator.rb @@ -27,17 +27,11 @@ module ActiveStorage site = Site.find_by_name token[:service_name] if remote_file?(token) - begin - url = request.body.read - body = Down.download(url, max_size: 111.megabytes) - checksum = Digest::MD5.file(body.path).base64digest - blob.metadata[:url] = url - blob.update_columns checksum: checksum, byte_size: body.size, metadata: blob.metadata - rescue StandardError => e - ExceptionNotifier.notify_exception(e, data: { key: token[:key], url: url, site: site.name }) - - head :payload_too_large - end + url = request.body.read + body = Down.download(url, max_size: 111.megabytes) + checksum = Digest::MD5.file(body.path).base64digest + blob.metadata[:url] = url + blob.update_columns checksum: checksum, byte_size: body.size, metadata: blob.metadata else body = request.body checksum = token[:checksum] @@ -54,6 +48,10 @@ module ActiveStorage end rescue ActiveStorage::IntegrityError head :unprocessable_entity + rescue Down::Error => e + ExceptionNotifier.notify_exception(e, data: { key: token[:key], url: url, site: site.name }) + + head :payload_too_large end private From 40047c722c17ba3a48408d70d45e0d4c04feebfd Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 May 2024 16:27:39 -0300 Subject: [PATCH 504/699] =?UTF-8?q?feat:=20relaci=C3=B3n=20de=20muchos=20a?= =?UTF-8?q?=20muchos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/posts_controller.rb | 1 + .../metadata_new_has_and_belongs_to_many.rb | 4 + .../_new_has_and_belongs_to_many.haml | 6 + .../_new_has_and_belongs_to_many.haml | 104 ++++++++++++++++++ 4 files changed, 115 insertions(+) create mode 100644 app/models/metadata_new_has_and_belongs_to_many.rb create mode 100644 app/views/posts/attribute_ro/_new_has_and_belongs_to_many.haml create mode 100644 app/views/posts/attributes/_new_has_and_belongs_to_many.haml diff --git a/app/controllers/posts_controller.rb b/app/controllers/posts_controller.rb index f38ccff3..6d199cd7 100644 --- a/app/controllers/posts_controller.rb +++ b/app/controllers/posts_controller.rb @@ -246,6 +246,7 @@ class PostsController < ApplicationController case params.require(:attribute) when 'new_has_many' then 'posts/new_has_many_value' when 'new_belongs_to' then 'posts/new_belongs_to_value' + when 'new_has_and_belongs_to_many' then 'posts/new_has_many_value' else 'nothing' end end diff --git a/app/models/metadata_new_has_and_belongs_to_many.rb b/app/models/metadata_new_has_and_belongs_to_many.rb new file mode 100644 index 00000000..44102ec0 --- /dev/null +++ b/app/models/metadata_new_has_and_belongs_to_many.rb @@ -0,0 +1,4 @@ +# frozen_string_literal: true + +# Nueva interfaz para relaciones muchos a muchos +class MetadataNewHasAndBelongsToMany < MetadataHasAndBelongsToMany; end diff --git a/app/views/posts/attribute_ro/_new_has_and_belongs_to_many.haml b/app/views/posts/attribute_ro/_new_has_and_belongs_to_many.haml new file mode 100644 index 00000000..d6b51a7a --- /dev/null +++ b/app/views/posts/attribute_ro/_new_has_and_belongs_to_many.haml @@ -0,0 +1,6 @@ +%tr{ id: attribute } + %th= post_label_t(attribute, post: post) + %td + %ul{ dir: dir, lang: locale } + - metadata.has_many.each do |p| + %li= link_to p.title.value, site_post_path(site, p.id) diff --git a/app/views/posts/attributes/_new_has_and_belongs_to_many.haml b/app/views/posts/attributes/_new_has_and_belongs_to_many.haml new file mode 100644 index 00000000..143ad2d1 --- /dev/null +++ b/app/views/posts/attributes/_new_has_and_belongs_to_many.haml @@ -0,0 +1,104 @@ +-# + Genera un listado de checkboxes entre los que se puede elegir para + guardar. Podemos elegir entre los artículos ya cargados o agregar uno + nuevo. + + Al agregar uno nuevo, se abre un segundo modal que carga el formulario + correspondiente vía HTMX. El formulario tiene que cargarse por fuera + del formulario principal porque no se pueden anidar. + +:ruby + id = id_for(base, attribute) + name = "#{base}[#{attribute}][]" + form_id = "form-#{Nanoid.generate}" + modal_id = "modal-#{Nanoid.generate}" + post_id = "post-#{Nanoid.generate}" + post_form_id = "post-form-#{Nanoid.generate}" + post_modal_id = "post-modal-#{Nanoid.generate}" + post_form_loaded_id = "post-loaded-#{Nanoid.generate}" + value_list_id = "#{id}_body" + +%div{ id: modal_id, data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } + %template{ data: { target: 'array.placeholder' } } + .col.p-3{ 'aria-hidden': 'true' } + %span.placeholder.w-100 + + .form-group + = hidden_field_tag name, '' + .d-flex.align-items-center.justify-content-between + = label_tag id, post_label_t(attribute, post: post) + = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' + -# Mostramos la lista de valores actuales. + + Al aceptar el modal, se vacía el listado y se completa en base a + renderizaciones con HTMX. Para poder hacer eso, tenemos que poder + acceder a todos los items dentro del modal (como array.item) y + enviar el valor al endpoint que devuelve uno por uno. Esto lo + tenemos disponible en Stimulus, pero queremos usar HTMX o técnica + similar para poder renderizar del lado del servidor. + + Para poder cancelar, mantenemos el estado original y desactivamos + o activamos los ítemes según estén incluidos en esa lista o no. + .row.row-cols-3.row-cols-md-4.no-gutters.placeholder-glow{ data: { target: 'array.current' } } + - metadata.values.slice(*metadata.value).each do |value| + = render 'posts/new_array_value', value: value + + = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do + - content_for :"#{id}_header" do + .form-group.flex-grow-1.mb-0 + = label_tag id, post_label_t(attribute, post: post) + %input.form-control{ data: { target: 'array.search', action: 'input->array#search' }, type: 'search', placeholder: t('.filter') } + + - content_for :"#{id}_body" do + .form-group.mb-0{ id: value_list_id } + - metadata.values.each_pair do |value, uuid| + .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: uuid } } + = render 'bootstrap/custom_checkbox', name: name, id: "value-#{Nanoid.generate}", value: uuid, checked: metadata.value.include?(uuid), content: value + + -# + Según la definición del campo, si hay un filtro, tenemos que poder + elegir qué tipo de esquema queremos o si hay uno solo, siempre + vamos a enviar ese. Si no hay ninguno, tendríamos que poder elegir + entre todos los esquemas. + + - content_for :"#{id}_footer" do + - layout = metadata.filter[:layout] + - if layout.is_a?(String) + %input{ type: 'hidden', name: 'layout', value: layout, form: post_form_id } + = render 'bootstrap/btn', content: t('.add', layout: site.layouts[layout].humanized_name), form: post_form_id, type: 'submit', class: 'm-0 mr-1' + - else + - layouts = layout&.map { |x| site.layouts[x] } + - layouts ||= site.layouts.values + .input-group.w-auto.flex-grow-1.my-0 + %select.form-control{ form: post_form_id, name: 'layout' } + - layouts.each do |layout| + %option{ value: layout.name }= layout.humanized_name + .input-group-append + = render 'bootstrap/btn', content: t('.add', layout: ''), form: post_form_id, type: 'submit', class: 'mb-0 mr-0' + = render 'bootstrap/btn', content: t('.accept'), action: 'array#accept modal#hide', class: 'm-0 mr-1' + = render 'bootstrap/btn', content: t('.cancel'), action: 'array#cancel modal#hide', class: 'm-0' + +-# + Este segundo modal es el que carga los formularios de + creación/modificación de artículos relacionados. Se envía a post_form + para que sea externo al formulario actual. +- content_for :post_form do + %form{ id: post_form_id, 'hx-get': site_posts_form_path(site), 'hx-target': "##{post_form_loaded_id}" } + %input{ type: 'hidden', name: 'show', value: post_modal_id } + %input{ type: 'hidden', name: 'hide', value: modal_id } + %input{ type: 'hidden', name: 'target', value: value_list_id } + %input{ type: 'hidden', name: 'swap', value: 'beforeend' } + %input{ type: 'hidden', name: 'base', value: id } + %input{ type: 'hidden', name: 'name', value: name } + %input{ type: 'hidden', name: 'form', value: form_id } + %input{ type: 'hidden', name: 'attribute', value: metadata.type } + - if metadata.inverse? + %input{ type: 'hidden', name: 'inverse', value: metadata.inverse } + %div{ id: post_modal_id, data: { controller: 'modal' } } + = render 'bootstrap/modal', id: post_id, modal_content_attributes: { class: 'h-100' } do + - content_for :"#{post_id}_body" do + %div{ id: post_form_loaded_id } + - content_for :"#{post_id}_footer" do + = render 'bootstrap/btn', form: form_id, content: t('.save'), type: 'submit' + -# @todo: Volver al otro modal + = render 'bootstrap/btn', content: t('.cancel'), action: 'modal#hide' From 067991e72b83c77d3fc63b14eae87377524dce61 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 May 2024 17:55:21 -0300 Subject: [PATCH 505/699] fix: mostrar los valores anteriores al editar --- app/views/posts/attributes/_new_belongs_to.haml | 5 +++-- .../posts/attributes/_new_has_and_belongs_to_many.haml | 6 ++++-- app/views/posts/attributes/_new_has_many.haml | 6 ++++-- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/app/views/posts/attributes/_new_belongs_to.haml b/app/views/posts/attributes/_new_belongs_to.haml index afbc8bdd..0a2a4c5b 100644 --- a/app/views/posts/attributes/_new_belongs_to.haml +++ b/app/views/posts/attributes/_new_belongs_to.haml @@ -41,8 +41,9 @@ Para poder cancelar, mantenemos el estado original y desactivamos o activamos los ítemes según estén incluidos en esa lista o no. .row.row-cols-3.row-cols-md-4.no-gutters.placeholder-glow{ data: { target: 'array.current' } } - - metadata.values.slice(*metadata.value).each do |value| - = render 'posts/new_array_value', value: value + -# @todo issue-7537 + - if !metadata.empty? && (indexed_post = site.indexed_posts.find_by(post_id: metadata.value)) + = render 'posts/new_related_post', post: indexed_post = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do - content_for :"#{id}_header" do diff --git a/app/views/posts/attributes/_new_has_and_belongs_to_many.haml b/app/views/posts/attributes/_new_has_and_belongs_to_many.haml index 143ad2d1..0b53f0ae 100644 --- a/app/views/posts/attributes/_new_has_and_belongs_to_many.haml +++ b/app/views/posts/attributes/_new_has_and_belongs_to_many.haml @@ -40,8 +40,10 @@ Para poder cancelar, mantenemos el estado original y desactivamos o activamos los ítemes según estén incluidos en esa lista o no. .row.row-cols-3.row-cols-md-4.no-gutters.placeholder-glow{ data: { target: 'array.current' } } - - metadata.values.slice(*metadata.value).each do |value| - = render 'posts/new_array_value', value: value + -# @todo issue-7537 + - metadata.value.each do |uuid| + - if (indexed_post = site.indexed_posts.find_by(post_id: uuid)) + = render 'posts/new_related_post', post: indexed_post = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do - content_for :"#{id}_header" do diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index 143ad2d1..0b53f0ae 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -40,8 +40,10 @@ Para poder cancelar, mantenemos el estado original y desactivamos o activamos los ítemes según estén incluidos en esa lista o no. .row.row-cols-3.row-cols-md-4.no-gutters.placeholder-glow{ data: { target: 'array.current' } } - - metadata.values.slice(*metadata.value).each do |value| - = render 'posts/new_array_value', value: value + -# @todo issue-7537 + - metadata.value.each do |uuid| + - if (indexed_post = site.indexed_posts.find_by(post_id: uuid)) + = render 'posts/new_related_post', post: indexed_post = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do - content_for :"#{id}_header" do From a6e46d112fb1d4a9c415ad60bba6138b47764b2b Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 May 2024 17:56:27 -0300 Subject: [PATCH 506/699] =?UTF-8?q?fix:=20un=20poco=20de=20separaci=C3=B3n?= =?UTF-8?q?=20entre=20columnas?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/posts/_new_related_post.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/posts/_new_related_post.haml b/app/views/posts/_new_related_post.haml index 8425ad3e..79bf33a2 100644 --- a/app/views/posts/_new_related_post.haml +++ b/app/views/posts/_new_related_post.haml @@ -6,7 +6,7 @@ description = post.post.image.value['description'] end -.col.mb-3 +.col.mb-3.p-1 = render('bootstrap/card', image: image, description: description, title: post.title, class: 'h-100') do - if post.post.attribute?(:description) %p.card-text= post.post.description.value From 9648bc135de314064cd37732c58a4412a6f4ad41 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 May 2024 18:18:29 -0300 Subject: [PATCH 507/699] feat: predefined value --- app/models/metadata_new_predefined_value.rb | 4 ++ .../attribute_ro/_new_predefined_value.haml | 3 + .../attributes/_new_predefined_value.haml | 61 +++++++++++++++++++ 3 files changed, 68 insertions(+) create mode 100644 app/models/metadata_new_predefined_value.rb create mode 100644 app/views/posts/attribute_ro/_new_predefined_value.haml create mode 100644 app/views/posts/attributes/_new_predefined_value.haml diff --git a/app/models/metadata_new_predefined_value.rb b/app/models/metadata_new_predefined_value.rb new file mode 100644 index 00000000..ff839759 --- /dev/null +++ b/app/models/metadata_new_predefined_value.rb @@ -0,0 +1,4 @@ +# frozen_string_literal: true + +# Nueva interfaz +class MetadataNewPredefinedValue < MetadataPredefinedValue; end diff --git a/app/views/posts/attribute_ro/_new_predefined_value.haml b/app/views/posts/attribute_ro/_new_predefined_value.haml new file mode 100644 index 00000000..67642e2c --- /dev/null +++ b/app/views/posts/attribute_ro/_new_predefined_value.haml @@ -0,0 +1,3 @@ +%tr{ id: attribute } + %th= post_label_t(attribute, post: post) + %td{ dir: dir, lang: locale }= metadata.value diff --git a/app/views/posts/attributes/_new_predefined_value.haml b/app/views/posts/attributes/_new_predefined_value.haml new file mode 100644 index 00000000..9975cd11 --- /dev/null +++ b/app/views/posts/attributes/_new_predefined_value.haml @@ -0,0 +1,61 @@ +-# + Genera un listado de radios entre los que se puede elegir solo uno para + guardar. Podemos elegir entre los artículos ya cargados o agregar uno + nuevo. + + Al agregar uno nuevo, se abre un segundo modal que carga el formulario + correspondiente vía HTMX. El formulario tiene que cargarse por fuera + del formulario principal porque no se pueden anidar. + +:ruby + id = id_for(base, attribute) + name = "#{base}[#{attribute}]" + form_id = "form-#{Nanoid.generate}" + modal_id = "modal-#{Nanoid.generate}" + post_id = "post-#{Nanoid.generate}" + post_form_id = "post-form-#{Nanoid.generate}" + post_modal_id = "post-modal-#{Nanoid.generate}" + post_form_loaded_id = "post-loaded-#{Nanoid.generate}" + value_list_id = "#{id}_body" + +%div{ id: modal_id, data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } + %template{ data: { target: 'array.placeholder' } } + .col.p-3{ 'aria-hidden': 'true' } + %span.placeholder.w-100 + + .form-group + = hidden_field_tag name, '' + .d-flex.align-items-center.justify-content-between + = label_tag id, post_label_t(attribute, post: post) + = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' + + -# Mostramos la lista de valores actuales. + + Al aceptar el modal, se vacía el listado y se completa en base a + renderizaciones con HTMX. Para poder hacer eso, tenemos que poder + acceder a todos los items dentro del modal (como array.item) y + enviar el valor al endpoint que devuelve uno por uno. Esto lo + tenemos disponible en Stimulus, pero queremos usar HTMX o técnica + similar para poder renderizar del lado del servidor. + + Para poder cancelar, mantenemos el estado original y desactivamos + o activamos los ítemes según estén incluidos en esa lista o no. + .row.row-cols-3.row-cols-md-4.no-gutters.placeholder-glow{ data: { target: 'array.current' } } + - unless metadata.empty? + = render 'posts/new_array_value', metadata.values[metadata.value] + + = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do + - content_for :"#{id}_header" do + .form-group.flex-grow-1.mb-0 + = label_tag id, post_label_t(attribute, post: post) + %input.form-control{ data: { target: 'array.search', action: 'input->array#search' }, type: 'search', placeholder: t('.filter') } + + - content_for :"#{id}_body" do + .form-group.mb-0{ id: value_list_id } + - metadata.values.each_pair do |value, key| + .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: value } } + = render 'bootstrap/custom_checkbox', name: name, id: "value-#{Nanoid.generate}", value: key, checked: (metadata.value == key), content: value, type: 'radio' + + - content_for :"#{id}_footer" do + = render 'bootstrap/btn', content: t('.accept'), action: 'array#accept modal#hide', class: 'm-0 mr-1' + = render 'bootstrap/btn', content: t('.cancel'), action: 'array#cancel modal#hide', class: 'm-0' From 74049a9cb490f22da719009dfc51cc9cf5092fcf Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 May 2024 18:21:40 -0300 Subject: [PATCH 508/699] fix: mostrar el valor legible por humanes --- app/views/posts/attribute_ro/_new_predefined_value.haml | 2 +- app/views/posts/attribute_ro/_predefined_value.haml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/views/posts/attribute_ro/_new_predefined_value.haml b/app/views/posts/attribute_ro/_new_predefined_value.haml index 67642e2c..fd594975 100644 --- a/app/views/posts/attribute_ro/_new_predefined_value.haml +++ b/app/views/posts/attribute_ro/_new_predefined_value.haml @@ -1,3 +1,3 @@ %tr{ id: attribute } %th= post_label_t(attribute, post: post) - %td{ dir: dir, lang: locale }= metadata.value + %td{ dir: dir, lang: locale }= metadata.values.invert[metadata.value] diff --git a/app/views/posts/attribute_ro/_predefined_value.haml b/app/views/posts/attribute_ro/_predefined_value.haml index 67642e2c..fd594975 100644 --- a/app/views/posts/attribute_ro/_predefined_value.haml +++ b/app/views/posts/attribute_ro/_predefined_value.haml @@ -1,3 +1,3 @@ %tr{ id: attribute } %th= post_label_t(attribute, post: post) - %td{ dir: dir, lang: locale }= metadata.value + %td{ dir: dir, lang: locale }= metadata.values.invert[metadata.value] From f58b3fb46493ed3d9bad9f74ba23d5f093331d98 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 May 2024 18:26:10 -0300 Subject: [PATCH 509/699] =?UTF-8?q?fix:=20etiquetas=20por=20defecto=20para?= =?UTF-8?q?=20el=20t=C3=ADtulo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/locales/en.yml | 2 ++ config/locales/es.yml | 2 ++ 2 files changed, 4 insertions(+) diff --git a/config/locales/en.yml b/config/locales/en.yml index 8fbfd536..b432f11b 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -725,6 +725,8 @@ en: remove: "Remove" attributes: add: Add + title: + label: "Title" lang: label: Language date: diff --git a/config/locales/es.yml b/config/locales/es.yml index 52ade5b2..7ffe4f90 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -733,6 +733,8 @@ es: remove: "Eliminar" attributes: add: Agregar + title: + label: "Título" lang: label: Idioma date: From 25efe4d51d166d676100f4a29628d799a97b61b1 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 May 2024 18:34:28 -0300 Subject: [PATCH 510/699] fix: dry --- app/views/posts/attribute_ro/_new_predefined_value.haml | 2 +- app/views/posts/attribute_ro/_predefined_value.haml | 2 +- app/views/posts/attributes/_new_predefined_value.haml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/views/posts/attribute_ro/_new_predefined_value.haml b/app/views/posts/attribute_ro/_new_predefined_value.haml index fd594975..d44eef69 100644 --- a/app/views/posts/attribute_ro/_new_predefined_value.haml +++ b/app/views/posts/attribute_ro/_new_predefined_value.haml @@ -1,3 +1,3 @@ %tr{ id: attribute } %th= post_label_t(attribute, post: post) - %td{ dir: dir, lang: locale }= metadata.values.invert[metadata.value] + %td{ dir: dir, lang: locale }= metadata.to_s diff --git a/app/views/posts/attribute_ro/_predefined_value.haml b/app/views/posts/attribute_ro/_predefined_value.haml index fd594975..d44eef69 100644 --- a/app/views/posts/attribute_ro/_predefined_value.haml +++ b/app/views/posts/attribute_ro/_predefined_value.haml @@ -1,3 +1,3 @@ %tr{ id: attribute } %th= post_label_t(attribute, post: post) - %td{ dir: dir, lang: locale }= metadata.values.invert[metadata.value] + %td{ dir: dir, lang: locale }= metadata.to_s diff --git a/app/views/posts/attributes/_new_predefined_value.haml b/app/views/posts/attributes/_new_predefined_value.haml index 9975cd11..42e309c3 100644 --- a/app/views/posts/attributes/_new_predefined_value.haml +++ b/app/views/posts/attributes/_new_predefined_value.haml @@ -42,7 +42,7 @@ o activamos los ítemes según estén incluidos en esa lista o no. .row.row-cols-3.row-cols-md-4.no-gutters.placeholder-glow{ data: { target: 'array.current' } } - unless metadata.empty? - = render 'posts/new_array_value', metadata.values[metadata.value] + = render 'posts/new_array_value', value: metadata.to_s = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do - content_for :"#{id}_header" do From 1947c49fb061f051ad5b323339a4bb780363419b Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 May 2024 18:36:22 -0300 Subject: [PATCH 511/699] fix: distinguir los valores --- app/views/posts/_new_array_value.haml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/views/posts/_new_array_value.haml b/app/views/posts/_new_array_value.haml index 75c5bf4d..00cf293f 100644 --- a/app/views/posts/_new_array_value.haml +++ b/app/views/posts/_new_array_value.haml @@ -1,2 +1,3 @@ .col - %p= value + %p + %strong= value From b21f93641bdc9ba39aba32b4016e60ec9b1e08fa Mon Sep 17 00:00:00 2001 From: f Date: Tue, 28 May 2024 18:37:33 -0300 Subject: [PATCH 512/699] fix: usar clases --- app/assets/stylesheets/application.scss | 4 ---- app/views/sites/_form.haml | 4 ++-- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 7a082ae8..8fe16152 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -322,10 +322,6 @@ svg { .designs { .design { margin-top: 1rem; - - .custom-control-label { - font-weight: bold; - } } } diff --git a/app/views/sites/_form.haml b/app/views/sites/_form.haml index ec2712bf..258f28d3 100644 --- a/app/views/sites/_form.haml +++ b/app/views/sites/_form.haml @@ -64,7 +64,7 @@ disabled: design.disabled, required: true, class: 'custom-control-input' = f.label "design_id_#{design.id}", design.name, - class: 'custom-control-label' + class: 'custom-control-label font-weight-bold' .flex-fill = sanitize_markdown design.description, tags: %w[p a strong em] @@ -93,7 +93,7 @@ = f.radio_button :licencia_id, licencia.id, checked: licencia.id == site.licencia_id, required: true, class: 'custom-control-input' - = f.label "licencia_id_#{licencia.id}", class: 'custom-control-label' do + = f.label "licencia_id_#{licencia.id}", class: 'custom-control-label font-weight-bold' do = licencia.name = sanitize_markdown licencia.description, tags: %w[p a strong em ul ol li h1 h2 h3 h4 h5 h6] From 3e62db1eea23dbfb60d4f0ecb4fd347390d20a05 Mon Sep 17 00:00:00 2001 From: fauno Date: Tue, 28 May 2024 21:42:11 +0000 Subject: [PATCH 513/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- ...174e37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css | 3 +++ ...e37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css.gz | 3 +++ ...e55aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css | 3 --- ...aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css.gz | 3 --- 5 files changed, 7 insertions(+), 7 deletions(-) create mode 100644 public/assets/application-5a2118e0f174e37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css create mode 100644 public/assets/application-5a2118e0f174e37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css.gz delete mode 100644 public/assets/application-df0385d47e55aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css delete mode 100644 public/assets/application-df0385d47e55aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 3047c456..64f0bedf 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b797d1fed264f035a3c59913f57fc20064de9a3af1205d6385d90e9068dcea94 +oid sha256:de7a5e4261088815d9abc9a6eaff444868526e5c362e59c841c5df13ef5a0b90 size 10863 diff --git a/public/assets/application-5a2118e0f174e37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css b/public/assets/application-5a2118e0f174e37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css new file mode 100644 index 00000000..b8b6ccd6 --- /dev/null +++ b/public/assets/application-5a2118e0f174e37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86c9880c137987ad7c6c646a7b05ca4a0c3f33e7b224a880211463ad6ef23fa2 +size 239089 diff --git a/public/assets/application-5a2118e0f174e37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css.gz b/public/assets/application-5a2118e0f174e37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css.gz new file mode 100644 index 00000000..6eefd90d --- /dev/null +++ b/public/assets/application-5a2118e0f174e37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6f7a69b06df8b6297d93e689d24506b56eee82e3c159202817596e63343f056 +size 33175 diff --git a/public/assets/application-df0385d47e55aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css b/public/assets/application-df0385d47e55aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css deleted file mode 100644 index 35f61aec..00000000 --- a/public/assets/application-df0385d47e55aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d9a0b60c18452d62be9bb14d88398124b4edee2aa76d4bb6c529b18042b62ca7 -size 238837 diff --git a/public/assets/application-df0385d47e55aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css.gz b/public/assets/application-df0385d47e55aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css.gz deleted file mode 100644 index 66470122..00000000 --- a/public/assets/application-df0385d47e55aa7c5b39fafd98674b63637ac6f38a896dbb79597f51adfbfdd1.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a72678068488f0074c34beea6297b0663e74fba1147dbd664fbc6d688cd4b814 -size 33071 From 43308e28112292d0df35798f83e7dce80864c2a5 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 3 Jun 2024 17:45:23 -0300 Subject: [PATCH 514/699] refactor: deprecar nanoid MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit estábamos usando nanoid + concatenación porque los id que genera podían empezar con número o guión, lo que está prohibido en el atributo id. además, la implementación de securerandom es mucho más veloz. https://github.com/radeno/nanoid.rb/issues/67 --- Gemfile | 1 - Gemfile.lock | 2 -- app/helpers/application_helper.rb | 11 +++++++++++ app/views/posts/attributes/_new_array.haml | 4 ++-- .../posts/attributes/_new_belongs_to.haml | 18 +++++++++--------- .../_new_has_and_belongs_to_many.haml | 18 +++++++++--------- app/views/posts/attributes/_new_has_many.haml | 16 ++++++++-------- .../attributes/_new_predefined_array.haml | 4 ++-- .../attributes/_new_predefined_value.haml | 16 ++++++++-------- app/views/posts/new_array.haml | 4 ++-- app/views/posts/new_belongs_to_value.haml | 2 +- app/views/posts/new_has_many_value.haml | 2 +- 12 files changed, 53 insertions(+), 45 deletions(-) diff --git a/Gemfile b/Gemfile index 30794e83..5714b981 100644 --- a/Gemfile +++ b/Gemfile @@ -85,7 +85,6 @@ gem 'rubanok' gem 'after_commit_everywhere', '~> 1.0' gem 'aasm' gem 'que-web' -gem 'nanoid' # database gem 'hairtrigger' diff --git a/Gemfile.lock b/Gemfile.lock index db6b892d..7f5284ef 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -373,7 +373,6 @@ GEM multi_xml (0.6.0) mustermann (3.0.0) ruby2_keywords (~> 0.0.1) - nanoid (2.0.0) net-imap (0.4.9) date net-protocol @@ -678,7 +677,6 @@ DEPENDENCIES memory_profiler mini_magick mobility - nanoid net-ssh nokogiri pg diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index ba92f626..7d1f9c0b 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -3,6 +3,17 @@ # Helpers module ApplicationHelper BRACKETS = /[\[\]]/.freeze + ALPHA_LARGE = [*'a'..'z', *'A'..'Z'].freeze + + # Devuelve un indentificador aleatorio que puede usarse como atributo + # HTML. Reemplaza Nanoid. El primer caracter siempre es alfabético. + # + # @return [String] + def random_id + SecureRandom.urlsafe_base64.tap do |s| + s[0] = ALPHA_LARGE.sample + end + end # Devuelve el atributo name de un campo anidado en el formato que # esperan los helpers *_field diff --git a/app/views/posts/attributes/_new_array.haml b/app/views/posts/attributes/_new_array.haml index 38ba4eb9..1ad12b8e 100644 --- a/app/views/posts/attributes/_new_array.haml +++ b/app/views/posts/attributes/_new_array.haml @@ -3,7 +3,7 @@ :ruby id = id_for(base, attribute) name = "#{base}[#{attribute}][]" - form_id = "form-#{Nanoid.generate}" + form_id = random_id %div{ data: { controller: 'modal array enter', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } %template{ data: { target: 'array.placeholder' } } @@ -41,7 +41,7 @@ -# Eliminamos las tildes para poder buscar independientemente de cómo se escriba - metadata.values.sort_by(&:remove_diacritics).each do |value| .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: value } } - = render 'bootstrap/custom_checkbox', name: name, id: "value-#{Nanoid.generate}", value: value, checked: metadata.value.include?(value), content: value + = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: value, checked: metadata.value.include?(value), content: value - content_for :"#{id}_footer" do .input-group.w-auto.flex-grow-1.my-0 diff --git a/app/views/posts/attributes/_new_belongs_to.haml b/app/views/posts/attributes/_new_belongs_to.haml index 0a2a4c5b..a4867276 100644 --- a/app/views/posts/attributes/_new_belongs_to.haml +++ b/app/views/posts/attributes/_new_belongs_to.haml @@ -8,15 +8,15 @@ del formulario principal porque no se pueden anidar. :ruby - id = id_for(base, attribute) + id = random_id name = "#{base}[#{attribute}]" - form_id = "form-#{Nanoid.generate}" - modal_id = "modal-#{Nanoid.generate}" - post_id = "post-#{Nanoid.generate}" - post_form_id = "post-form-#{Nanoid.generate}" - post_modal_id = "post-modal-#{Nanoid.generate}" - post_form_loaded_id = "post-loaded-#{Nanoid.generate}" - value_list_id = "#{id}_body" + form_id = random_id + modal_id = random_id + post_id = random_id + post_form_id = random_id + post_modal_id = random_id + post_form_loaded_id = random_id + value_list_id = random_id %div{ id: modal_id, data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } %template{ data: { target: 'array.placeholder' } } @@ -55,7 +55,7 @@ .form-group.mb-0{ id: value_list_id } - metadata.values.each_pair do |value, uuid| .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: uuid } } - = render 'bootstrap/custom_checkbox', name: name, id: "value-#{Nanoid.generate}", value: uuid, checked: metadata.value.include?(uuid), content: value, type: 'radio' + = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: uuid, checked: metadata.value.include?(uuid), content: value, type: 'radio' -# Según la definición del campo, si hay un filtro, tenemos que poder diff --git a/app/views/posts/attributes/_new_has_and_belongs_to_many.haml b/app/views/posts/attributes/_new_has_and_belongs_to_many.haml index 0b53f0ae..243178d9 100644 --- a/app/views/posts/attributes/_new_has_and_belongs_to_many.haml +++ b/app/views/posts/attributes/_new_has_and_belongs_to_many.haml @@ -8,15 +8,15 @@ del formulario principal porque no se pueden anidar. :ruby - id = id_for(base, attribute) + id = random_id name = "#{base}[#{attribute}][]" - form_id = "form-#{Nanoid.generate}" - modal_id = "modal-#{Nanoid.generate}" - post_id = "post-#{Nanoid.generate}" - post_form_id = "post-form-#{Nanoid.generate}" - post_modal_id = "post-modal-#{Nanoid.generate}" - post_form_loaded_id = "post-loaded-#{Nanoid.generate}" - value_list_id = "#{id}_body" + form_id = random_id + modal_id = random_id + post_id = random_id + post_form_id = random_id + post_modal_id = random_id + post_form_loaded_id = random_id + value_list_id = random_id %div{ id: modal_id, data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } %template{ data: { target: 'array.placeholder' } } @@ -55,7 +55,7 @@ .form-group.mb-0{ id: value_list_id } - metadata.values.each_pair do |value, uuid| .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: uuid } } - = render 'bootstrap/custom_checkbox', name: name, id: "value-#{Nanoid.generate}", value: uuid, checked: metadata.value.include?(uuid), content: value + = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: uuid, checked: metadata.value.include?(uuid), content: value -# Según la definición del campo, si hay un filtro, tenemos que poder diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index 0b53f0ae..f8312c20 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -10,13 +10,13 @@ :ruby id = id_for(base, attribute) name = "#{base}[#{attribute}][]" - form_id = "form-#{Nanoid.generate}" - modal_id = "modal-#{Nanoid.generate}" - post_id = "post-#{Nanoid.generate}" - post_form_id = "post-form-#{Nanoid.generate}" - post_modal_id = "post-modal-#{Nanoid.generate}" - post_form_loaded_id = "post-loaded-#{Nanoid.generate}" - value_list_id = "#{id}_body" + form_id = random_id + modal_id = random_id + post_id = random_id + post_form_id = random_id + post_modal_id = random_id + post_form_loaded_id = random_id + value_list_id = random_id %div{ id: modal_id, data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } %template{ data: { target: 'array.placeholder' } } @@ -55,7 +55,7 @@ .form-group.mb-0{ id: value_list_id } - metadata.values.each_pair do |value, uuid| .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: uuid } } - = render 'bootstrap/custom_checkbox', name: name, id: "value-#{Nanoid.generate}", value: uuid, checked: metadata.value.include?(uuid), content: value + = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: uuid, checked: metadata.value.include?(uuid), content: value -# Según la definición del campo, si hay un filtro, tenemos que poder diff --git a/app/views/posts/attributes/_new_predefined_array.haml b/app/views/posts/attributes/_new_predefined_array.haml index ec251134..2adf44c1 100644 --- a/app/views/posts/attributes/_new_predefined_array.haml +++ b/app/views/posts/attributes/_new_predefined_array.haml @@ -5,7 +5,7 @@ :ruby id = id_for(base, attribute) name = "#{base}[#{attribute}][]" - form_id = "form-#{Nanoid.generate}" + form_id = random_id %div{ data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } %template{ data: { target: 'array.placeholder' } } @@ -44,7 +44,7 @@ -# Eliminamos las tildes para poder buscar independientemente de cómo se escriba - metadata.values.each_pair do |value, key| .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: value } } - = render 'bootstrap/custom_checkbox', name: name, id: "value-#{Nanoid.generate}", value: key, checked: metadata.value.include?(key), content: value + = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: key, checked: metadata.value.include?(key), content: value - content_for :"#{id}_footer" do -# Alinear los botones a la derecha diff --git a/app/views/posts/attributes/_new_predefined_value.haml b/app/views/posts/attributes/_new_predefined_value.haml index 42e309c3..c592b20a 100644 --- a/app/views/posts/attributes/_new_predefined_value.haml +++ b/app/views/posts/attributes/_new_predefined_value.haml @@ -10,13 +10,13 @@ :ruby id = id_for(base, attribute) name = "#{base}[#{attribute}]" - form_id = "form-#{Nanoid.generate}" - modal_id = "modal-#{Nanoid.generate}" - post_id = "post-#{Nanoid.generate}" - post_form_id = "post-form-#{Nanoid.generate}" - post_modal_id = "post-modal-#{Nanoid.generate}" - post_form_loaded_id = "post-loaded-#{Nanoid.generate}" - value_list_id = "#{id}_body" + form_id = random_id + modal_id = random_id + post_id = random_id + post_form_id = random_id + post_modal_id = random_id + post_form_loaded_id = random_id + value_list_id = random_id %div{ id: modal_id, data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } %template{ data: { target: 'array.placeholder' } } @@ -54,7 +54,7 @@ .form-group.mb-0{ id: value_list_id } - metadata.values.each_pair do |value, key| .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: value } } - = render 'bootstrap/custom_checkbox', name: name, id: "value-#{Nanoid.generate}", value: key, checked: (metadata.value == key), content: value, type: 'radio' + = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: key, checked: (metadata.value == key), content: value, type: 'radio' - content_for :"#{id}_footer" do = render 'bootstrap/btn', content: t('.accept'), action: 'array#accept modal#hide', class: 'm-0 mr-1' diff --git a/app/views/posts/new_array.haml b/app/views/posts/new_array.haml index 62f74854..77d64b55 100644 --- a/app/views/posts/new_array.haml +++ b/app/views/posts/new_array.haml @@ -1,8 +1,8 @@ -- item_id = "item-#{Nanoid.generate}" +- item_id = random_id .mb-2{ id: item_id, data: { target: 'array.item', 'searchable-value': @value.remove_diacritics.downcase, value: @value } } .d-flex.flex-row.flex-wrap .flex-grow-1 - = render 'bootstrap/custom_checkbox', name: @name, id: "value-#{Nanoid.generate}", value: @value, checked: true, content: @value + = render 'bootstrap/custom_checkbox', name: @name, id: random_id, value: @value, checked: true, content: @value %div %button.btn.btn-sm.m-0{ data: { action: 'array#remove', 'remove-target-param': item_id } }= t('.remove') diff --git a/app/views/posts/new_belongs_to_value.haml b/app/views/posts/new_belongs_to_value.haml index ab324763..d1f9c3f9 100644 --- a/app/views/posts/new_belongs_to_value.haml +++ b/app/views/posts/new_belongs_to_value.haml @@ -1,2 +1,2 @@ .mb-2{ data: { target: 'array.item', 'searchable-value': @value.remove_diacritics.downcase, value: @uuid } } - = render 'bootstrap/custom_checkbox', name: @name, id: "value-#{Nanoid.generate}", value: @uuid, checked: true, content: @value, type: 'radio' + = render 'bootstrap/custom_checkbox', name: @name, id: random_id, value: @uuid, checked: true, content: @value, type: 'radio' diff --git a/app/views/posts/new_has_many_value.haml b/app/views/posts/new_has_many_value.haml index b26acc89..b9846475 100644 --- a/app/views/posts/new_has_many_value.haml +++ b/app/views/posts/new_has_many_value.haml @@ -1,2 +1,2 @@ .mb-2{ data: { target: 'array.item', 'searchable-value': @value.remove_diacritics.downcase, value: @uuid } } - = render 'bootstrap/custom_checkbox', name: @name, id: "value-#{Nanoid.generate}", value: @uuid, checked: true, content: @value + = render 'bootstrap/custom_checkbox', name: @name, id: random_id, value: @uuid, checked: true, content: @value From 6d9609f9444376922af3e4ee5ce2109494c3b7d9 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 3 Jun 2024 17:47:05 -0300 Subject: [PATCH 515/699] feat: no romper relaciones retroactivamente MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit oculta los artículos relacionados que ya tienen una relación establecida, para no romperla sin querer. --- .../metadata/unused_values_concern.rb | 27 +++++++++++++++++++ app/models/metadata_new_belongs_to.rb | 4 ++- app/models/metadata_new_has_many.rb | 4 ++- 3 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 app/models/concerns/metadata/unused_values_concern.rb diff --git a/app/models/concerns/metadata/unused_values_concern.rb b/app/models/concerns/metadata/unused_values_concern.rb new file mode 100644 index 00000000..6f0a0bf1 --- /dev/null +++ b/app/models/concerns/metadata/unused_values_concern.rb @@ -0,0 +1,27 @@ +# frozen_string_literal: true + +module Metadata + # Hasta ahora veníamos habilitando la opción de romper + # retroactivamente relaciones, sin informar que estaba sucediendo. + # Con este módulo, todas las relaciones que ya tienen una relación + # inversa son ignoradas. + module UnusedValuesConcern + extend ActiveSupport::Concern + + included do + # Genera un Hash de { title | slug => uuid }, excluyendo el Post + # actual y todos los que ya tengan una relación inversa, para no + # romperla. + # + # @return [Hash] + def values + @values ||= posts.map do |p| + next if p.uuid.value == post.uuid.value + next unless inverse? && (p[inverse].empty? || [p[inverse].value].flatten.include?(post.uuid.value)) + + [title(p), p.uuid.value] + end.compact.to_h + end + end + end +end diff --git a/app/models/metadata_new_belongs_to.rb b/app/models/metadata_new_belongs_to.rb index db90cb8f..46d25ce6 100644 --- a/app/models/metadata_new_belongs_to.rb +++ b/app/models/metadata_new_belongs_to.rb @@ -1,4 +1,6 @@ # frozen_string_literal: true # Nueva interfaz -class MetadataNewBelongsTo < MetadataBelongsTo; end +class MetadataNewBelongsTo < MetadataBelongsTo + include Metadata::UnusedValuesConcern +end diff --git a/app/models/metadata_new_has_many.rb b/app/models/metadata_new_has_many.rb index 3bf37d45..e4b3869c 100644 --- a/app/models/metadata_new_has_many.rb +++ b/app/models/metadata_new_has_many.rb @@ -1,4 +1,6 @@ # frozen_string_literal: true # Interfaz nueva para uno a muchos -class MetadataNewHasMany < MetadataHasMany; end +class MetadataNewHasMany < MetadataHasMany + include Metadata::UnusedValuesConcern +end From d4767457ffa664f141113b5c73322fde59406176 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 3 Jun 2024 17:50:06 -0300 Subject: [PATCH 516/699] =?UTF-8?q?fix:=20m=C3=A1s=20espacio=20para=20los?= =?UTF-8?q?=20modales?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/bootstrap/_modal.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/bootstrap/_modal.haml b/app/views/bootstrap/_modal.haml index 28014c6a..3efd1525 100644 --- a/app/views/bootstrap/_modal.haml +++ b/app/views/bootstrap/_modal.haml @@ -28,7 +28,7 @@ .modal.fade{ tabindex: -1, aria: { hidden: 'true' }, data: { target: 'modal.modal' } } .modal-backdrop.fade{ data: { target: 'modal.backdrop', action: local_assigns[:hide_actions].join(' ') } } - .modal-dialog.modal-dialog-scrollable.modal-dialog-centered + .modal-dialog.modal-dialog-scrollable.modal-dialog-centered.modal-lg .modal-content{ **local_assigns[:modal_content_attributes] } - if (header = yield(:"#{id}_header")).present? .modal-header= header From ddc80a4006d69cb7c9ee2b01f30ad03d940e05ca Mon Sep 17 00:00:00 2001 From: f Date: Mon, 3 Jun 2024 17:50:30 -0300 Subject: [PATCH 517/699] =?UTF-8?q?fix:=20no=20establecer=20ids=20vac?= =?UTF-8?q?=C3=ADos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/posts/attributes/_boolean.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/posts/attributes/_boolean.haml b/app/views/posts/attributes/_boolean.haml index e07feca4..6928ebd7 100644 --- a/app/views/posts/attributes/_boolean.haml +++ b/app/views/posts/attributes/_boolean.haml @@ -1,5 +1,5 @@ .form-check - = hidden_field_tag "#{base}[#{attribute}]", '0', id: '' + = hidden_field_tag "#{base}[#{attribute}]", '0', id: nil .custom-control.custom-switch = check_box_tag "#{base}[#{attribute}]", '1', metadata.value, class: "custom-control-input #{invalid(post, attribute)}", From 8e272e4ce048dfb6c72ad05805915a85a95e59c0 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 3 Jun 2024 17:50:48 -0300 Subject: [PATCH 518/699] =?UTF-8?q?docs:=20documentar=20los=20par=C3=A1met?= =?UTF-8?q?ros=20del=20formulario?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/posts/_htmx_form.haml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/app/views/posts/_htmx_form.haml b/app/views/posts/_htmx_form.haml index 8cc8c938..707b9c51 100644 --- a/app/views/posts/_htmx_form.haml +++ b/app/views/posts/_htmx_form.haml @@ -5,6 +5,16 @@ @param :post [Post] @param :locale [Symbol, String] @param :dir [Symbol, String] + + @param [ActionController::StrongParameters] params + @option params [String] :inverse La relación inversa (opcional) + @option params [String] :form El ID del formulario actual, si tiene botones externos, tiene que estar compartido + @option params [String] :swap Método de intercambio del resultado (HTMX) + @option params [String] :target Elemento donde se carga el resultado (HTMX) + @option params [String] :hide ID del modal a esconder vía evento + @option params [String] :show ID del modal a mostrar vía evento + @option params [String] :base La base del formulario, que luego se envía como parámetro a PostService + @option params [String] :attribute El tipo de atributo, para saber qué respuesta generar :ruby except = %i[date] From ff3042da903a5b7edbf7b6adcd742cb748580097 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 3 Jun 2024 17:51:07 -0300 Subject: [PATCH 519/699] fix: asignar el uuid desde el formulario MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit es útil para pre-asignar el uuid de una relación --- app/views/posts/attributes/_uuid.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/posts/attributes/_uuid.haml b/app/views/posts/attributes/_uuid.haml index 0aab9802..60d74cfc 100644 --- a/app/views/posts/attributes/_uuid.haml +++ b/app/views/posts/attributes/_uuid.haml @@ -1 +1 @@ --# nada += hidden_field_tag "#{base}[#{attribute}]", metadata.value From 96aebb13465f2cdc0efff9eed5c1f044fc3dec3f Mon Sep 17 00:00:00 2001 From: f Date: Mon, 3 Jun 2024 17:52:53 -0300 Subject: [PATCH 520/699] feat: new_has_one --- app/controllers/posts_controller.rb | 27 ++++++---- .../controllers/modal_controller.js | 14 +++++ app/models/metadata_new_has_one.rb | 6 +++ app/views/posts/_htmx_form.haml | 4 +- app/views/posts/_new_has_one.haml | 2 + .../posts/attribute_ro/_new_has_one.haml | 6 +++ app/views/posts/attributes/_new_has_one.haml | 53 +++++++++++++++++++ app/views/posts/new_has_one.haml | 1 + app/views/posts/new_has_one_value.haml | 1 + config/routes.rb | 1 + 10 files changed, 104 insertions(+), 11 deletions(-) create mode 100644 app/models/metadata_new_has_one.rb create mode 100644 app/views/posts/_new_has_one.haml create mode 100644 app/views/posts/attribute_ro/_new_has_one.haml create mode 100644 app/views/posts/attributes/_new_has_one.haml create mode 100644 app/views/posts/new_has_one.haml create mode 100644 app/views/posts/new_has_one_value.haml diff --git a/app/controllers/posts_controller.rb b/app/controllers/posts_controller.rb index 6d199cd7..282a784a 100644 --- a/app/controllers/posts_controller.rb +++ b/app/controllers/posts_controller.rb @@ -40,10 +40,18 @@ class PostsController < ApplicationController render layout: false end - # El formulario de un Post, si pasamos el uuid, estamos editando, sino + def new_has_one + @uuid = params.require(:value).strip + + @indexed_post = site.indexed_posts.find_by!(post_id: @uuid) + + render layout: false + end + + # El formulario de un Post, si pasamos el UUID, estamos editando, sino # estamos creando. def form - uuid = params.permit(:uuid).try(:[], :uuid) + uuid = params.permit(:uuid).try(:[], :uuid).presence locale @post = @@ -111,7 +119,7 @@ class PostsController < ApplicationController params: params) @post = service.create - if @post.persisted? + if post.persisted? site.touch forget_content end @@ -119,11 +127,11 @@ class PostsController < ApplicationController # @todo Enviar la creación a otro endpoint para evitar tantas # condiciones. if htmx? - if @post.persisted? + if post.persisted? swap_modals - @value = @post.title.value - @uuid = @post.uuid.value + @value = post.title.value + @uuid = post.uuid.value @name = params.require(:name) render render_path_from_attribute, layout: false @@ -133,8 +141,8 @@ class PostsController < ApplicationController render 'posts/form', layout: false, post: post, site: site, **params.permit(:form, :base, :dir, :locale) end - elsif @post.persisted? - redirect_to site_post_path(@site, @post) + elsif post.persisted? + redirect_to site_post_path(site, post) else render 'posts/new' end @@ -235,7 +243,7 @@ class PostsController < ApplicationController # @param triggers [Hash] Otros disparadores def swap_modals(triggers = {}) params.permit(:show, :hide).each_pair do |key, value| - triggers["modal:#{key}"] = { id: value } + triggers["modal:#{key}"] = { id: value } if value.present? end headers['HX-Trigger'] = triggers.to_json if triggers.present? @@ -247,6 +255,7 @@ class PostsController < ApplicationController when 'new_has_many' then 'posts/new_has_many_value' when 'new_belongs_to' then 'posts/new_belongs_to_value' when 'new_has_and_belongs_to_many' then 'posts/new_has_many_value' + when 'new_has_one' then 'posts/new_has_one_value' else 'nothing' end end diff --git a/app/javascript/controllers/modal_controller.js b/app/javascript/controllers/modal_controller.js index 20154f79..0f8deeca 100644 --- a/app/javascript/controllers/modal_controller.js +++ b/app/javascript/controllers/modal_controller.js @@ -18,9 +18,23 @@ export default class extends Controller { window.removeEventListener("modal:hide", this.hideEvent); } + /* + * Abrir otro modal, enviando el ID a toda la ventana. + */ + showAnother(event = undefined) { + event?.preventDefault(); + + if (!event.target?.dataset?.modalShowValue) return; + + window.dispatchEvent(new CustomEvent("modal:show", { detail: { id: event.target.dataset.modalShowValue } })); + } + /* * Podemos enviar la orden de apertura como un click o como un * CustomEvent incluyendo el id del modal como detail. + * + * El elemento clicleable puede tener un valor que se refiera a otro + * modal también. */ show(event = undefined) { event?.preventDefault(); diff --git a/app/models/metadata_new_has_one.rb b/app/models/metadata_new_has_one.rb new file mode 100644 index 00000000..642273e3 --- /dev/null +++ b/app/models/metadata_new_has_one.rb @@ -0,0 +1,6 @@ +# frozen_string_literal: true + +# Nueva interfaz para relaciones 1:1 +class MetadataNewHasOne < MetadataHasOne + include Metadata::UnusedValuesConcern +end diff --git a/app/views/posts/_htmx_form.haml b/app/views/posts/_htmx_form.haml index 707b9c51..f4f4a845 100644 --- a/app/views/posts/_htmx_form.haml +++ b/app/views/posts/_htmx_form.haml @@ -61,8 +61,8 @@ = errors.first -# Parámetros para HTMX - %input{ type: 'hidden', name: 'hide', value: params.require((post.errors.empty? ? :show : :hide)) } - %input{ type: 'hidden', name: 'show', value: params.require((post.errors.empty? ? :hide : :show)) } + %input{ type: 'hidden', name: 'hide', value: params.permit((post.errors.empty? ? :show : :hide)).try(:values).try(:first) } + %input{ type: 'hidden', name: 'show', value: params.permit((post.errors.empty? ? :hide : :show)).try(:values).try(:first) } %input{ type: 'hidden', name: 'name', value: params.require(:name) } %input{ type: 'hidden', name: 'base', value: params.require(:base) } %input{ type: 'hidden', name: 'form', value: options[:id] } diff --git a/app/views/posts/_new_has_one.haml b/app/views/posts/_new_has_one.haml new file mode 100644 index 00000000..54a370cd --- /dev/null +++ b/app/views/posts/_new_has_one.haml @@ -0,0 +1,2 @@ += render 'posts/new_related_post', post: post +%input{ type: 'hidden', name: name, value: value } diff --git a/app/views/posts/attribute_ro/_new_has_one.haml b/app/views/posts/attribute_ro/_new_has_one.haml new file mode 100644 index 00000000..425e659e --- /dev/null +++ b/app/views/posts/attribute_ro/_new_has_one.haml @@ -0,0 +1,6 @@ +%tr{ id: attribute } + %th= post_label_t(attribute, post: post) + %td{ dir: dir, lang: locale } + - p = metadata.has_one + - if p + = link_to p.title.value, site_post_path(site, p.id) diff --git a/app/views/posts/attributes/_new_has_one.haml b/app/views/posts/attributes/_new_has_one.haml new file mode 100644 index 00000000..5a614990 --- /dev/null +++ b/app/views/posts/attributes/_new_has_one.haml @@ -0,0 +1,53 @@ +-# + Genera un listado de radios entre los que se puede elegir solo uno para + guardar. Podemos elegir entre los artículos ya cargados o agregar uno + nuevo. + + Al agregar uno nuevo, se abre un segundo modal que carga el formulario + correspondiente vía HTMX. El formulario tiene que cargarse por fuera + del formulario principal porque no se pueden anidar. + +:ruby + id = random_id + name = "#{base}[#{attribute}]" + target_id = random_id + form_id = random_id + modal_id = random_id + post_id = random_id + post_form_id = random_id + post_modal_id = random_id + post_form_loaded_id = random_id + value_list_id = random_id + layout = metadata.filter[:layout] + +%div{ data: { controller: 'modal' }} + .form-group + = hidden_field_tag name, '' + .d-flex.align-items-center.justify-content-between + = label_tag id, post_label_t(attribute, post: post), class: 'h3' + = render 'bootstrap/btn', content: t('.edit'), action: 'modal#showAnother', data: { 'modal-show-value': modal_id } + + -# Aquí se reemplaza por la tarjeta y el UUID luego de guardar + .row.row-cols-1.no-gutters.placeholder-glow{ id: target_id } + -# @todo issue-7537 + - if !metadata.empty? && (indexed_post = site.indexed_posts.find_by(post_id: metadata.value)) + = render 'posts/new_has_one', post: indexed_post, name: name, value: metadata.value + +-# + El modal se genera por fuera del formulario, para poder enviar los + datos y recibir su UUID en respuesta. +- content_for :post_form do + %div{ id: modal_id, data: { controller: 'modal' }} + - if layout.is_a?(String) + = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' } do + - content_for :"#{id}_body" do + -# @todo ocultar el modal después de guardar + .placeholder-glow{ 'hx-get': site_posts_form_path(site, layout: layout, base: id, name: name, form: form_id, swap: 'innerHTML', target: target_id, attribute: 'new_has_one', hide: modal_id, uuid: metadata.value), 'hx-trigger': 'load' } + %span.placeholder.w-100.h-100 + + - content_for :"#{id}_footer" do + = render 'bootstrap/btn', form: form_id, content: t('.save'), type: 'submit', class: 'm-0 mt-1 mr-1' + = render 'bootstrap/btn', content: t('.cancel'), action: 'modal#hide', class: 'm-0 mt-1 mr-1' + + - else + Nada diff --git a/app/views/posts/new_has_one.haml b/app/views/posts/new_has_one.haml new file mode 100644 index 00000000..e32f191b --- /dev/null +++ b/app/views/posts/new_has_one.haml @@ -0,0 +1 @@ += render 'posts/new_has_one', post: @indexed_post, name: params.require(:name), value: @uuid diff --git a/app/views/posts/new_has_one_value.haml b/app/views/posts/new_has_one_value.haml new file mode 100644 index 00000000..9f2b660a --- /dev/null +++ b/app/views/posts/new_has_one_value.haml @@ -0,0 +1 @@ += render 'posts/new_has_one', post: @post.to_index, name: params.require(:name), value: @uuid diff --git a/config/routes.rb b/config/routes.rb index 45410782..711e3f24 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -103,6 +103,7 @@ Rails.application.routes.draw do get :'posts/new_array', to: 'posts#new_array' get :'posts/new_array_value', to: 'posts#new_array_value' get :'posts/new_related_post', to: 'posts#new_related_post' + get :'posts/new_has_one', to: 'posts#new_has_one' get :'posts/form', to: 'posts#form' resources :posts do From 41ad7d806e5448c5297c6ac10e222ef00728d040 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 4 Jun 2024 17:07:05 -0300 Subject: [PATCH 521/699] fix: correr htmx junto a turbolinks --- app/javascript/packs/application.js | 2 +- package.json | 2 +- yarn.lock | 10 +++++----- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/app/javascript/packs/application.js b/app/javascript/packs/application.js index c523b0f0..dc87b1c3 100644 --- a/app/javascript/packs/application.js +++ b/app/javascript/packs/application.js @@ -41,5 +41,5 @@ Rails.start() Turbolinks.start() ActiveStorage.start() -window.htmx = require('htmx.org/dist/htmx.js') +window.htmx = require("@suttyweb/htmx.org/dist/htmx.js"); window.htmx.config.selfRequestsOnly = true; diff --git a/package.json b/package.json index 088316bc..73cfd589 100644 --- a/package.json +++ b/package.json @@ -14,6 +14,7 @@ "@rails/ujs": "^6.1.3-1", "@rails/webpacker": "5.4.4", "@suttyweb/editor": "^0.1.29", + "@suttyweb/htmx.org": "^1.9.13", "babel-loader": "^8.2.2", "bs-custom-file-input": "^1.3.4", "chart.js": "^3.5.1", @@ -22,7 +23,6 @@ "commonmark": "^0.29.0", "fork-awesome": "^1.1.7", "fork-ts-checker-webpack-plugin": "^6.1.0", - "htmx.org": "^1.9.11", "input-map": "git+https://0xacab.org/sutty/input-map.git", "input-tag": "git+https://0xacab.org/sutty/input-tag.git", "leaflet": "^1.7.1", diff --git a/yarn.lock b/yarn.lock index fc6ae7cb..d181bebe 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1984,6 +1984,11 @@ linkifyjs "^4.1.1" prosemirror-svelte-nodeview "^1.0.2" +"@suttyweb/htmx.org@^1.9.13": + version "1.9.13" + resolved "https://registry.yarnpkg.com/@suttyweb/htmx.org/-/htmx.org-1.9.13.tgz#bc67a5e2947d7cc125649b829610da8ee61f21af" + integrity sha512-/2x3AGXT2CFOmp8Nf59XY2brah5wSo4YvcctYA2zD4BByNft4XE0rUk4VM7TjPxR1LOzg6VK1crZmdiy3JyzxQ== + "@types/caseless@*": version "0.12.2" resolved "https://registry.npmjs.org/@types/caseless/-/caseless-0.12.2.tgz" @@ -4575,11 +4580,6 @@ html-entities@^1.3.1: resolved "https://registry.npmjs.org/html-entities/-/html-entities-1.4.0.tgz" integrity sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA== -htmx.org@^1.9.11: - version "1.9.11" - resolved "https://registry.yarnpkg.com/htmx.org/-/htmx.org-1.9.11.tgz#00192041ee682d6ca7146d0fbd901169ffe72d87" - integrity sha512-WlVuICn8dfNOOgYmdYzYG8zSnP3++AdHkMHooQAzGZObWpVXYathpz/I37ycF4zikR6YduzfCvEcxk20JkIUsw== - http-deceiver@^1.2.7: version "1.2.7" resolved "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz" From 3983f17ba225680cb02d531bcbd9b94cc3dd1c36 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 4 Jun 2024 17:07:43 -0300 Subject: [PATCH 522/699] fix: no cambiar el post si lo asignamos antes --- app/services/post_service.rb | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/app/services/post_service.rb b/app/services/post_service.rb index 93daaa45..3045bd9c 100644 --- a/app/services/post_service.rb +++ b/app/services/post_service.rb @@ -7,8 +7,7 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do # # @return Post def create - self.post = site.posts(lang: locale) - .build(layout: layout) + self.post ||= site.posts(lang: locale).build(layout: layout) post.usuaries << usuarie post.draft.value = true if site.invitade? usuarie post.assign_attributes(post_params) From 74ed69d52c0c33f3fe11968d0c3c11ca3fbd82a8 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 4 Jun 2024 17:08:31 -0300 Subject: [PATCH 523/699] feat: poder actualizar el post si sabemos el uuid --- app/controllers/posts_controller.rb | 2 +- app/services/post_service.rb | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/app/controllers/posts_controller.rb b/app/controllers/posts_controller.rb index 282a784a..8b103422 100644 --- a/app/controllers/posts_controller.rb +++ b/app/controllers/posts_controller.rb @@ -117,7 +117,7 @@ class PostsController < ApplicationController service = PostService.new(site: site, usuarie: current_usuarie, params: params) - @post = service.create + @post = service.create_or_update if post.persisted? site.touch diff --git a/app/services/post_service.rb b/app/services/post_service.rb index 3045bd9c..bb49c5bd 100644 --- a/app/services/post_service.rb +++ b/app/services/post_service.rb @@ -3,6 +3,26 @@ # Este servicio se encarga de crear artículos y guardarlos en git, # asignándoselos a une usuarie PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do + + # Si estamos pasando el UUID con los parámetros, el post quizás + # existe. + # + # @return [Post] + def create_or_update + uuid = params.require(base).permit(:uuid).values.first + + binding.pry + + if uuid.blank? + create + elsif (indexed_post = site.indexed_posts.find_by(post_id: uuid)).present? + self.post = indexed_post.post + update + else + create + end + end + # Crea un artículo nuevo # # @return Post From 5a6ee375b1e52a36b28acc3c00d13f38bf3fd1fc Mon Sep 17 00:00:00 2001 From: f Date: Tue, 4 Jun 2024 17:09:04 -0300 Subject: [PATCH 524/699] feat: soportar htmx al actualizar posts --- app/controllers/posts_controller.rb | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/app/controllers/posts_controller.rb b/app/controllers/posts_controller.rb index 8b103422..0f3c24d5 100644 --- a/app/controllers/posts_controller.rb +++ b/app/controllers/posts_controller.rb @@ -165,7 +165,24 @@ class PostsController < ApplicationController if service.update.persisted? site.touch forget_content + end + if htmx? + if post.persisted? + swap_modals + + @value = post.title.value + @uuid = post.uuid.value + @name = params.require(:name) + + render render_path_from_attribute, layout: false + else + headers['HX-Retarget'] = "##{params.require(:form)}" + headers['HX-Reswap'] = 'outerHTML' + + render 'posts/form', layout: false, post: post, site: site, **params.permit(:form, :base, :dir, :locale) + end + elsif post.persisted? redirect_to site_post_path(site, post) else render 'posts/edit' From 0e83b09bf01a9903feb9629b5986e29219f7155c Mon Sep 17 00:00:00 2001 From: f Date: Tue, 4 Jun 2024 17:11:32 -0300 Subject: [PATCH 525/699] fix: new_has_one --- app/views/posts/attributes/_new_has_one.haml | 6 ++++-- config/locales/en.yml | 3 +++ config/locales/es.yml | 3 +++ 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/app/views/posts/attributes/_new_has_one.haml b/app/views/posts/attributes/_new_has_one.haml index 5a614990..4235b9b3 100644 --- a/app/views/posts/attributes/_new_has_one.haml +++ b/app/views/posts/attributes/_new_has_one.haml @@ -38,7 +38,8 @@ datos y recibir su UUID en respuesta. - content_for :post_form do %div{ id: modal_id, data: { controller: 'modal' }} - - if layout.is_a?(String) + -# Si hay un solo layout o el post asociado ya existía + - if layout.is_a?(String) || metadata.has_one.present? = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' } do - content_for :"#{id}_body" do -# @todo ocultar el modal después de guardar @@ -47,7 +48,8 @@ - content_for :"#{id}_footer" do = render 'bootstrap/btn', form: form_id, content: t('.save'), type: 'submit', class: 'm-0 mt-1 mr-1' - = render 'bootstrap/btn', content: t('.cancel'), action: 'modal#hide', class: 'm-0 mt-1 mr-1' + = render 'bootstrap/btn', content: t('.close'), action: 'modal#hide', class: 'm-0 mt-1 mr-1' - else + -# @todo Implementar selección de layout para cargar el formulario correcto Nada diff --git a/config/locales/en.yml b/config/locales/en.yml index b432f11b..c9d988a4 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -756,6 +756,8 @@ en: empty: "(Empty)" draft: label: Draft + new_has_one: + edit: "Edit" reorder: submit: 'Save order' select: 'Select this post' @@ -944,6 +946,7 @@ en: add: "Add %{layout}" add_new: "Add new option" cancel: "Cancel" + close: "Close" edit: "Edit" filter: "Start typing to filter..." save: "Save" diff --git a/config/locales/es.yml b/config/locales/es.yml index 7ffe4f90..8d3d7f74 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -764,6 +764,8 @@ es: empty: "(Vacío)" draft: label: Borrador + new_has_one: + edit: "Editar" reorder: submit: 'Guardar orden' select: 'Seleccionar este artículo' @@ -952,6 +954,7 @@ es: add: "Agregar %{layout}" add_new: "Agregar nueva opción" cancel: "Cancelar" + close: "Cerrar" edit: "Editar" filter: "Empezá a escribir para filtrar..." save: "Guardar" From a2275d8654c59b5e9e85fe3fb834990bb0915163 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 4 Jun 2024 17:12:18 -0300 Subject: [PATCH 526/699] fix: traducciones --- config/locales/en.yml | 10 ++++++++++ config/locales/es.yml | 10 ++++++++++ 2 files changed, 20 insertions(+) diff --git a/config/locales/en.yml b/config/locales/en.yml index c9d988a4..3eb0cc24 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -756,8 +756,18 @@ en: empty: "(Empty)" draft: label: Draft + new_has_many: + edit: "Edit" + new_has_and_belongs_to_many: + edit: "Edit" + new_predefined_array: + edit: "Edit" + new_array: + edit: "Edit" new_has_one: edit: "Edit" + new_belongs_to: + edit: "Edit" reorder: submit: 'Save order' select: 'Select this post' diff --git a/config/locales/es.yml b/config/locales/es.yml index 8d3d7f74..d69a88b7 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -764,8 +764,18 @@ es: empty: "(Vacío)" draft: label: Borrador + new_has_many: + edit: "Editar" + new_has_and_belongs_to_many: + edit: "Editar" + new_predefined_array: + edit: "Editar" + new_array: + edit: "Editar" new_has_one: edit: "Editar" + new_belongs_to: + edit: "Editar" reorder: submit: 'Guardar orden' select: 'Seleccionar este artículo' From 295c4f57ef4e053866037e7bdf188a0cc74bade0 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 5 Jun 2024 18:00:55 -0300 Subject: [PATCH 527/699] feat: cancelar con escape --- app/javascript/controllers/array_controller.js | 8 +++++++- app/javascript/controllers/modal_controller.js | 6 ++++++ app/views/bootstrap/_modal.haml | 4 +++- app/views/posts/attributes/_new_array.haml | 2 +- app/views/posts/attributes/_new_belongs_to.haml | 2 +- .../posts/attributes/_new_has_and_belongs_to_many.haml | 2 +- app/views/posts/attributes/_new_has_many.haml | 2 +- app/views/posts/attributes/_new_predefined_array.haml | 2 +- app/views/posts/attributes/_new_predefined_value.haml | 2 +- 9 files changed, 22 insertions(+), 8 deletions(-) diff --git a/app/javascript/controllers/array_controller.js b/app/javascript/controllers/array_controller.js index 19d00ccd..db768ef3 100644 --- a/app/javascript/controllers/array_controller.js +++ b/app/javascript/controllers/array_controller.js @@ -76,10 +76,16 @@ export default class extends Controller { return this.inputFrom(itemTarget)?.checked || false; } + cancelWithEscape(event) { + if (event?.key !== "Escape") return; + + this.cancel(); + } + /* * Al cancelar, se vuelve al estado original de la lista */ - cancel(event) { + cancel(event = undefined) { for (const itemTarget of this.itemTargets) { const input = this.inputFrom(itemTarget); diff --git a/app/javascript/controllers/modal_controller.js b/app/javascript/controllers/modal_controller.js index 0f8deeca..2ffdedaa 100644 --- a/app/javascript/controllers/modal_controller.js +++ b/app/javascript/controllers/modal_controller.js @@ -56,6 +56,12 @@ export default class extends Controller { }, 1); } + hideWithEscape(event) { + if (event?.key !== "Escape") return; + + this.hide(); + } + hide(event = undefined) { event?.preventDefault(); const modalId = event?.detail?.id; diff --git a/app/views/bootstrap/_modal.haml b/app/views/bootstrap/_modal.haml index 3efd1525..8624f9cd 100644 --- a/app/views/bootstrap/_modal.haml +++ b/app/views/bootstrap/_modal.haml @@ -21,12 +21,14 @@ :ruby local_assigns[:hide_actions] ||= [] local_assigns[:hide_actions] << 'click->modal#hide' + local_assigns[:keydown_actions] ||= [] + local_assigns[:keydown_actions] << 'keydown->modal#hideWithEscape' local_assigns[:modal_content_attributes] ||= {} -# XXX: Necesario para poder generar todas las demás = yield -.modal.fade{ tabindex: -1, aria: { hidden: 'true' }, data: { target: 'modal.modal' } } +.modal.fade{ tabindex: -1, aria: { hidden: 'true' }, data: { target: 'modal.modal', action: local_assigns[:keydown_actions].join(' ') } } .modal-backdrop.fade{ data: { target: 'modal.backdrop', action: local_assigns[:hide_actions].join(' ') } } .modal-dialog.modal-dialog-scrollable.modal-dialog-centered.modal-lg .modal-content{ **local_assigns[:modal_content_attributes] } diff --git a/app/views/posts/attributes/_new_array.haml b/app/views/posts/attributes/_new_array.haml index 1ad12b8e..da4a93c7 100644 --- a/app/views/posts/attributes/_new_array.haml +++ b/app/views/posts/attributes/_new_array.haml @@ -30,7 +30,7 @@ - metadata.value.sort_by(&:remove_diacritics).each do |value| = render 'posts/new_array_value', value: value - = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do + = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'], keydown_actions: %w[keydown->array#cancelWithEscape] do - content_for :"#{id}_header" do .form-group.flex-grow-1.mb-0 = label_tag id, post_label_t(attribute, post: post) diff --git a/app/views/posts/attributes/_new_belongs_to.haml b/app/views/posts/attributes/_new_belongs_to.haml index a4867276..5c8844a5 100644 --- a/app/views/posts/attributes/_new_belongs_to.haml +++ b/app/views/posts/attributes/_new_belongs_to.haml @@ -45,7 +45,7 @@ - if !metadata.empty? && (indexed_post = site.indexed_posts.find_by(post_id: metadata.value)) = render 'posts/new_related_post', post: indexed_post - = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do + = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'], keydown_actions: %w[keydown->array#cancelWithEscape] do - content_for :"#{id}_header" do .form-group.flex-grow-1.mb-0 = label_tag id, post_label_t(attribute, post: post) diff --git a/app/views/posts/attributes/_new_has_and_belongs_to_many.haml b/app/views/posts/attributes/_new_has_and_belongs_to_many.haml index 243178d9..8b615173 100644 --- a/app/views/posts/attributes/_new_has_and_belongs_to_many.haml +++ b/app/views/posts/attributes/_new_has_and_belongs_to_many.haml @@ -45,7 +45,7 @@ - if (indexed_post = site.indexed_posts.find_by(post_id: uuid)) = render 'posts/new_related_post', post: indexed_post - = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do + = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'], keydown_actions: %w[keydown->array#cancelWithEscape] do - content_for :"#{id}_header" do .form-group.flex-grow-1.mb-0 = label_tag id, post_label_t(attribute, post: post) diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index f8312c20..d211d864 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -45,7 +45,7 @@ - if (indexed_post = site.indexed_posts.find_by(post_id: uuid)) = render 'posts/new_related_post', post: indexed_post - = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do + = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'], keydown_actions: %w[keydown->array#cancelWithEscape] do - content_for :"#{id}_header" do .form-group.flex-grow-1.mb-0 = label_tag id, post_label_t(attribute, post: post) diff --git a/app/views/posts/attributes/_new_predefined_array.haml b/app/views/posts/attributes/_new_predefined_array.haml index 2adf44c1..c67b2ea9 100644 --- a/app/views/posts/attributes/_new_predefined_array.haml +++ b/app/views/posts/attributes/_new_predefined_array.haml @@ -33,7 +33,7 @@ - metadata.values.slice(*metadata.value).each_key do |value| = render 'posts/new_array_value', value: value - = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do + = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'], keydown_actions: %w[keydown->array#cancelWithEscape] do - content_for :"#{id}_header" do .form-group.flex-grow-1.mb-0 = label_tag id, post_label_t(attribute, post: post) diff --git a/app/views/posts/attributes/_new_predefined_value.haml b/app/views/posts/attributes/_new_predefined_value.haml index c592b20a..7f418472 100644 --- a/app/views/posts/attributes/_new_predefined_value.haml +++ b/app/views/posts/attributes/_new_predefined_value.haml @@ -44,7 +44,7 @@ - unless metadata.empty? = render 'posts/new_array_value', value: metadata.to_s - = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'] do + = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'], keydown_actions: %w[keydown->array#cancelWithEscape] do - content_for :"#{id}_header" do .form-group.flex-grow-1.mb-0 = label_tag id, post_label_t(attribute, post: post) From 706f0162a53d6c72b723be79fe36b5c672aaf9b5 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 5 Jun 2024 18:01:44 -0300 Subject: [PATCH 528/699] feat: pasar el foco al modal al abrir y volver al cerrar --- app/javascript/controllers/modal_controller.js | 12 +++++++++++- app/views/posts/attributes/_new_has_one.haml | 2 +- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/app/javascript/controllers/modal_controller.js b/app/javascript/controllers/modal_controller.js index 2ffdedaa..1d89c826 100644 --- a/app/javascript/controllers/modal_controller.js +++ b/app/javascript/controllers/modal_controller.js @@ -26,7 +26,7 @@ export default class extends Controller { if (!event.target?.dataset?.modalShowValue) return; - window.dispatchEvent(new CustomEvent("modal:show", { detail: { id: event.target.dataset.modalShowValue } })); + window.dispatchEvent(new CustomEvent("modal:show", { detail: { id: event.target.dataset.modalShowValue, previousFocus: event.target.id } })); } /* @@ -50,9 +50,17 @@ export default class extends Controller { window.document.body.classList.add("modal-open"); + if (event?.detail?.previousFocus) { + this.previousFocus = window.document.getElementById(event.detail.previousFocus); + } else { + this.previousFocus = event?.target; + } + setTimeout(() => { this.modalTarget.classList.add("show"); this.backdropTarget.classList.add("show"); + + this.modalTarget.focus(); }, 1); } @@ -75,6 +83,8 @@ export default class extends Controller { this.modalTarget.removeAttribute("role"); this.modalTarget.removeAttribute("aria-modal"); + this.previousFocus?.focus(); + setTimeout(() => { this.modalTarget.style.display = ""; this.backdropTarget.style.display = ""; diff --git a/app/views/posts/attributes/_new_has_one.haml b/app/views/posts/attributes/_new_has_one.haml index 4235b9b3..58e098b6 100644 --- a/app/views/posts/attributes/_new_has_one.haml +++ b/app/views/posts/attributes/_new_has_one.haml @@ -25,7 +25,7 @@ = hidden_field_tag name, '' .d-flex.align-items-center.justify-content-between = label_tag id, post_label_t(attribute, post: post), class: 'h3' - = render 'bootstrap/btn', content: t('.edit'), action: 'modal#showAnother', data: { 'modal-show-value': modal_id } + = render 'bootstrap/btn', content: t('.edit'), action: 'modal#showAnother', data: { 'modal-show-value': modal_id }, id: random_id -# Aquí se reemplaza por la tarjeta y el UUID luego de guardar .row.row-cols-1.no-gutters.placeholder-glow{ id: target_id } From 9edbe9ecf16acf66298864eb59c397bbaade9ce4 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 5 Jun 2024 18:02:14 -0300 Subject: [PATCH 529/699] fix: pry perdido --- app/services/post_service.rb | 2 -- 1 file changed, 2 deletions(-) diff --git a/app/services/post_service.rb b/app/services/post_service.rb index bb49c5bd..5f27211d 100644 --- a/app/services/post_service.rb +++ b/app/services/post_service.rb @@ -11,8 +11,6 @@ PostService = Struct.new(:site, :usuarie, :post, :params, keyword_init: true) do def create_or_update uuid = params.require(base).permit(:uuid).values.first - binding.pry - if uuid.blank? create elsif (indexed_post = site.indexed_posts.find_by(post_id: uuid)).present? From 60b687b06f3582a3cbebac6c04eb30c45ffbd869 Mon Sep 17 00:00:00 2001 From: fauno Date: Wed, 5 Jun 2024 21:11:04 +0000 Subject: [PATCH 530/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-1f713e2f078d69dc0186.js | 3 --- public/packs/js/application-1f713e2f078d69dc0186.js.br | 3 --- public/packs/js/application-1f713e2f078d69dc0186.js.gz | 3 --- public/packs/js/application-1f713e2f078d69dc0186.js.map | 3 --- public/packs/js/application-1f713e2f078d69dc0186.js.map.br | 3 --- public/packs/js/application-1f713e2f078d69dc0186.js.map.gz | 3 --- public/packs/js/application-b608b7bd4557d4669869.js | 3 +++ ...SE.txt => application-b608b7bd4557d4669869.js.LICENSE.txt} | 0 public/packs/js/application-b608b7bd4557d4669869.js.br | 3 +++ public/packs/js/application-b608b7bd4557d4669869.js.gz | 3 +++ public/packs/js/application-b608b7bd4557d4669869.js.map | 3 +++ public/packs/js/application-b608b7bd4557d4669869.js.map.br | 3 +++ public/packs/js/application-b608b7bd4557d4669869.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 2 +- 17 files changed, 23 insertions(+), 23 deletions(-) delete mode 100644 public/packs/js/application-1f713e2f078d69dc0186.js delete mode 100644 public/packs/js/application-1f713e2f078d69dc0186.js.br delete mode 100644 public/packs/js/application-1f713e2f078d69dc0186.js.gz delete mode 100644 public/packs/js/application-1f713e2f078d69dc0186.js.map delete mode 100644 public/packs/js/application-1f713e2f078d69dc0186.js.map.br delete mode 100644 public/packs/js/application-1f713e2f078d69dc0186.js.map.gz create mode 100644 public/packs/js/application-b608b7bd4557d4669869.js rename public/packs/js/{application-1f713e2f078d69dc0186.js.LICENSE.txt => application-b608b7bd4557d4669869.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-b608b7bd4557d4669869.js.br create mode 100644 public/packs/js/application-b608b7bd4557d4669869.js.gz create mode 100644 public/packs/js/application-b608b7bd4557d4669869.js.map create mode 100644 public/packs/js/application-b608b7bd4557d4669869.js.map.br create mode 100644 public/packs/js/application-b608b7bd4557d4669869.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 64f0bedf..da788ba2 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:de7a5e4261088815d9abc9a6eaff444868526e5c362e59c841c5df13ef5a0b90 +oid sha256:9035188ad256a2e3048c4021fd03fdcae6be48dd3147e1a201d24e9470770a03 size 10863 diff --git a/public/packs/js/application-1f713e2f078d69dc0186.js b/public/packs/js/application-1f713e2f078d69dc0186.js deleted file mode 100644 index 99006d53..00000000 --- a/public/packs/js/application-1f713e2f078d69dc0186.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5dc2ad99e5883f1bcebf113b1223b36436a00dc7ebb9b381d557d4c43a8f5c24 -size 1654089 diff --git a/public/packs/js/application-1f713e2f078d69dc0186.js.br b/public/packs/js/application-1f713e2f078d69dc0186.js.br deleted file mode 100644 index 2a0f08c0..00000000 --- a/public/packs/js/application-1f713e2f078d69dc0186.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:79ee73140c9bb93702dd5a3dbd3007e001d18e586ad791eaa6810046a35f3290 -size 367582 diff --git a/public/packs/js/application-1f713e2f078d69dc0186.js.gz b/public/packs/js/application-1f713e2f078d69dc0186.js.gz deleted file mode 100644 index a94b85e5..00000000 --- a/public/packs/js/application-1f713e2f078d69dc0186.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f7fb7ec087b7e4dc0199279e57b6146beb09f487f1ce36a3812a77d59225db26 -size 484378 diff --git a/public/packs/js/application-1f713e2f078d69dc0186.js.map b/public/packs/js/application-1f713e2f078d69dc0186.js.map deleted file mode 100644 index 715dee03..00000000 --- a/public/packs/js/application-1f713e2f078d69dc0186.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4ecf04941e6d7006713ffed53a8c13da5b973322fca1c0e5238900d086927b49 -size 6396861 diff --git a/public/packs/js/application-1f713e2f078d69dc0186.js.map.br b/public/packs/js/application-1f713e2f078d69dc0186.js.map.br deleted file mode 100644 index a186496b..00000000 --- a/public/packs/js/application-1f713e2f078d69dc0186.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:047ee2b7ce1046f9fc040c19c1cae2b482d553489c0b8e2164e5062bdc03ddcd -size 1377794 diff --git a/public/packs/js/application-1f713e2f078d69dc0186.js.map.gz b/public/packs/js/application-1f713e2f078d69dc0186.js.map.gz deleted file mode 100644 index 950c99f9..00000000 --- a/public/packs/js/application-1f713e2f078d69dc0186.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:517705b8c7e8a337ab27ac0aace3a5316a07518ebcc861ab332afc55fea5345c -size 1703820 diff --git a/public/packs/js/application-b608b7bd4557d4669869.js b/public/packs/js/application-b608b7bd4557d4669869.js new file mode 100644 index 00000000..a8a1f3f1 --- /dev/null +++ b/public/packs/js/application-b608b7bd4557d4669869.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c0dd6b44f75f420d8e86ce3638eb8e0c6dea8c96ac52f36d00e374fca30ecbc +size 1654995 diff --git a/public/packs/js/application-1f713e2f078d69dc0186.js.LICENSE.txt b/public/packs/js/application-b608b7bd4557d4669869.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-1f713e2f078d69dc0186.js.LICENSE.txt rename to public/packs/js/application-b608b7bd4557d4669869.js.LICENSE.txt diff --git a/public/packs/js/application-b608b7bd4557d4669869.js.br b/public/packs/js/application-b608b7bd4557d4669869.js.br new file mode 100644 index 00000000..6adaa12e --- /dev/null +++ b/public/packs/js/application-b608b7bd4557d4669869.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:891e45df15dab8d8f5591eb3d239ce67f737a4ad2f53eaeef65559263946fc58 +size 367838 diff --git a/public/packs/js/application-b608b7bd4557d4669869.js.gz b/public/packs/js/application-b608b7bd4557d4669869.js.gz new file mode 100644 index 00000000..f1a72603 --- /dev/null +++ b/public/packs/js/application-b608b7bd4557d4669869.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99b3dc0c459b41cbd41c326b53f6fa45aedb30b8f89affc16a8c8c49eeb5f67a +size 484603 diff --git a/public/packs/js/application-b608b7bd4557d4669869.js.map b/public/packs/js/application-b608b7bd4557d4669869.js.map new file mode 100644 index 00000000..59924dd4 --- /dev/null +++ b/public/packs/js/application-b608b7bd4557d4669869.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48e4140add75d5843903de95e9b7a1c8bfbe1b5a991c166184a81ba1282c7149 +size 6398734 diff --git a/public/packs/js/application-b608b7bd4557d4669869.js.map.br b/public/packs/js/application-b608b7bd4557d4669869.js.map.br new file mode 100644 index 00000000..a7180bb1 --- /dev/null +++ b/public/packs/js/application-b608b7bd4557d4669869.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b93ad1f13c078483ab07da863497a474a5ab638df3791ce772fe91be63f8055e +size 1378017 diff --git a/public/packs/js/application-b608b7bd4557d4669869.js.map.gz b/public/packs/js/application-b608b7bd4557d4669869.js.map.gz new file mode 100644 index 00000000..533dc825 --- /dev/null +++ b/public/packs/js/application-b608b7bd4557d4669869.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4003007e4a189c7374954c7528dd745fff5641ab50ec3feac571aaae70f74757 +size 1704361 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index cb5388d5..50c01cf4 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c08c2257d986802240a8b0dd2d04f1d8344e85aa39a148815271be96102b4622 +oid sha256:c0cba2d4d0079ecdcc8e92b0944011f99a66eb00b04d354a85577e16692506e5 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index a02355c5..51f607a2 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:28983391cdbff276be1d5044d164fd8a384bd7bd7a78ca24f0b14b87af9d6860 -size 318 +oid sha256:d3ef49e20b174b2b17df77d87be6cef9e2c42a8dbe65cc09d13d78115ba399cb +size 322 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 86c8aa36..6d6d941a 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a7c5c729d926ed08bbaef15198c545ca4909079be82483a6f353e2b4c6d67472 +oid sha256:72424207e6a822f1059817d75263623e1999869d941d8a18c9cff28148e8b6fc size 365 From cc3b92f5ff3ab56e799b992397acd17a4a9e40b0 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 7 Jun 2024 17:25:58 -0300 Subject: [PATCH 531/699] feat: poder agregar un nodo nuevo en segundo plano #16462 --- app/jobs/add_full_rsync_job.rb | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 app/jobs/add_full_rsync_job.rb diff --git a/app/jobs/add_full_rsync_job.rb b/app/jobs/add_full_rsync_job.rb new file mode 100644 index 00000000..c7cda679 --- /dev/null +++ b/app/jobs/add_full_rsync_job.rb @@ -0,0 +1,24 @@ +# frozen_string_literal: true + +# Agrega un nodo nuevo en segundo plano y sincroniza todos los sitios +class AddFullRsyncJob < ApplicationJob + + # Obtiene todos los sitios que estén sincronizando con un nodo de + # Sutty, agrega el nodo nuevo y empieza la sincronización. + # + # @param :hostname [String] El nombre del servidor remoto + # @param :destination [String] La ubicación de rsync + def perform(hostname:, destination:) + site_ids = DeployFullRsync.all.distinct.pluck(:site_id) + + Site.where(id: site_ids).find_each do |site| + site + .deploys + .create( + type: 'DeployFullRsync', + destination: destination, + hostname: hostname + ).deploy + end + end +end From 34c6d2614cfb60fae46414af8734a95b98662a59 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 7 Jun 2024 17:32:22 -0300 Subject: [PATCH 532/699] chore: rubocop --- app/jobs/add_full_rsync_job.rb | 1 - 1 file changed, 1 deletion(-) diff --git a/app/jobs/add_full_rsync_job.rb b/app/jobs/add_full_rsync_job.rb index c7cda679..10eba6bb 100644 --- a/app/jobs/add_full_rsync_job.rb +++ b/app/jobs/add_full_rsync_job.rb @@ -2,7 +2,6 @@ # Agrega un nodo nuevo en segundo plano y sincroniza todos los sitios class AddFullRsyncJob < ApplicationJob - # Obtiene todos los sitios que estén sincronizando con un nodo de # Sutty, agrega el nodo nuevo y empieza la sincronización. # From 74d462867ad443bb197b8f955334155dc77fdf51 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 13 Jun 2024 11:39:47 -0300 Subject: [PATCH 533/699] fix: arreglos en modo oscuro #16489 --- app/assets/stylesheets/application.scss | 7 +++++++ app/assets/stylesheets/dark.scss | 1 + 2 files changed, 8 insertions(+) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 8fe16152..4b659972 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -21,6 +21,11 @@ $form-feedback-invalid-color: $magenta; $form-feedback-icon-valid-color: $black; $component-active-bg: $magenta; $zindex-modal-backdrop: 0; +$modal-content-bg: var(--background); +$card-bg: var(--background); +$card-border-color: var(--card-border-color); +$input-bg: var(--background); +$input-color: var(--foreground); $spacers: ( 2-plus: 0.75rem @@ -61,6 +66,7 @@ $sizes: ( --foreground: #{$black}; --background: #{$white}; --color: #{$magenta}; + --card-border-color: #{rgba($black, .125)}; } @media (prefers-color-scheme: dark) { @@ -68,6 +74,7 @@ $sizes: ( --foreground: #{$white}; --background: #{$black}; --color: #{$cyan}; + --card-border-color: #{rgba($white, .125)}; } .btn-secondary { diff --git a/app/assets/stylesheets/dark.scss b/app/assets/stylesheets/dark.scss index f7f3a09d..a5a1f837 100644 --- a/app/assets/stylesheets/dark.scss +++ b/app/assets/stylesheets/dark.scss @@ -6,6 +6,7 @@ $cyan: #13fefe; --foreground: #{$white}; --background: #{$black}; --color: #{$cyan}; + --card-border-color: #{rgba($white, .125)}; } .btn { From f45a2b96d292216e9e48dc46080197d3d29f5d3b Mon Sep 17 00:00:00 2001 From: maki Date: Thu, 13 Jun 2024 16:13:40 -0300 Subject: [PATCH 534/699] btn en dark del media query #16489 --- app/assets/stylesheets/application.scss | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index a24af4c8..d5a5c483 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -52,6 +52,10 @@ $sizes: ( --background: #{$black}; --color: #{$cyan}; } + + .dropdown-toggle { + background-color: $cyan;; + } } // TODO: Encontrar la forma de generar esto desde los locales de Rails From ba40fb647dd85788c1f1486daf0111991371fea9 Mon Sep 17 00:00:00 2001 From: maki Date: Thu, 13 Jun 2024 16:19:50 -0300 Subject: [PATCH 535/699] fix: media query tiene mismas clases que dark.scss #16489 --- app/assets/stylesheets/application.scss | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index d5a5c483..362b7cbc 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -53,9 +53,29 @@ $sizes: ( --color: #{$cyan}; } - .dropdown-toggle { - background-color: $cyan;; + .btn { + background-color: $white; } + + .btn-secondary { + background-color: $white; + color: $black; + border: none; + + &:hover { + color: $black; + background-color: $cyan; + } + + &:active { + background-color: $cyan; + } + + &:focus { + box-shadow: 0 0 0 0.2rem $cyan; + } + } + } // TODO: Encontrar la forma de generar esto desde los locales de Rails From fe33dd8caad6b5b40117ac34d938ffcdea633348 Mon Sep 17 00:00:00 2001 From: maki Date: Thu, 13 Jun 2024 16:24:32 -0300 Subject: [PATCH 536/699] feat: colores legibles en modo oscuro #16489 --- app/assets/stylesheets/application.scss | 9 +++++++++ app/assets/stylesheets/dark.scss | 10 ++++++++++ 2 files changed, 19 insertions(+) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 362b7cbc..ede3da96 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -76,6 +76,15 @@ $sizes: ( } } + .card { + p, a, span { + color: $black; + } + + a:hover { + color: $black; + } + } } // TODO: Encontrar la forma de generar esto desde los locales de Rails diff --git a/app/assets/stylesheets/dark.scss b/app/assets/stylesheets/dark.scss index f7f3a09d..9f6e27e2 100644 --- a/app/assets/stylesheets/dark.scss +++ b/app/assets/stylesheets/dark.scss @@ -31,4 +31,14 @@ $cyan: #13fefe; } } +.card { + p, a, span { + color: $black; + } + + a:hover { + color: $black; + } +} + From ec88657a8d73382c5970a35f3dbf769998619b0f Mon Sep 17 00:00:00 2001 From: fauno Date: Fri, 14 Jun 2024 16:35:48 +0000 Subject: [PATCH 537/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 4 ++-- ...b9a6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css | 3 --- ...6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css.gz | 3 --- ...53983a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css | 3 +++ ...83a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css.gz | 3 +++ ...2caff979202252e033efb9d0a93f7f54a165643f0911ad661907f7.css | 3 +++ ...ff979202252e033efb9d0a93f7f54a165643f0911ad661907f7.css.gz | 3 +++ 7 files changed, 14 insertions(+), 8 deletions(-) delete mode 100644 public/assets/application-13aa9075f2b9a6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css delete mode 100644 public/assets/application-13aa9075f2b9a6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css.gz create mode 100644 public/assets/application-67b9a7558953983a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css create mode 100644 public/assets/application-67b9a7558953983a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css.gz create mode 100644 public/assets/dark-a962b476412caff979202252e033efb9d0a93f7f54a165643f0911ad661907f7.css create mode 100644 public/assets/dark-a962b476412caff979202252e033efb9d0a93f7f54a165643f0911ad661907f7.css.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index da788ba2..4e141059 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9035188ad256a2e3048c4021fd03fdcae6be48dd3147e1a201d24e9470770a03 -size 10863 +oid sha256:f8b936d035527c166d8d7530d2d2f325bb731103332545110d3b6e410fafa175 +size 11156 diff --git a/public/assets/application-13aa9075f2b9a6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css b/public/assets/application-13aa9075f2b9a6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css deleted file mode 100644 index a6443687..00000000 --- a/public/assets/application-13aa9075f2b9a6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b1a40bc5994875692d62bd7e9c9e7fe3e845a29566d91322f075e6012af7053c -size 238851 diff --git a/public/assets/application-13aa9075f2b9a6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css.gz b/public/assets/application-13aa9075f2b9a6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css.gz deleted file mode 100644 index aea80d43..00000000 --- a/public/assets/application-13aa9075f2b9a6f4bca9106110d1a36bde0db34ebe5a42043cb694cc606b505c.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a7a278bb80182f75e3c28bb8fda20b56f17cf837bf027a96f0bdfe460d3235c6 -size 33071 diff --git a/public/assets/application-67b9a7558953983a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css b/public/assets/application-67b9a7558953983a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css new file mode 100644 index 00000000..c166a0c0 --- /dev/null +++ b/public/assets/application-67b9a7558953983a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c6323ffaf488b428e96d01b12f09286b150f7b7379f5671e8e58a179a853cc2d +size 239444 diff --git a/public/assets/application-67b9a7558953983a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css.gz b/public/assets/application-67b9a7558953983a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css.gz new file mode 100644 index 00000000..e39b89c5 --- /dev/null +++ b/public/assets/application-67b9a7558953983a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:281b8c0fa7f249b2c71797f6492b6a1fc618b294e4fcaab4e4364e81a3d48459 +size 33255 diff --git a/public/assets/dark-a962b476412caff979202252e033efb9d0a93f7f54a165643f0911ad661907f7.css b/public/assets/dark-a962b476412caff979202252e033efb9d0a93f7f54a165643f0911ad661907f7.css new file mode 100644 index 00000000..11cfa338 --- /dev/null +++ b/public/assets/dark-a962b476412caff979202252e033efb9d0a93f7f54a165643f0911ad661907f7.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6db6f4c9dad07fca837cedb6bb75b24d46f8971c260797eaf020e13cc9150f8e +size 360 diff --git a/public/assets/dark-a962b476412caff979202252e033efb9d0a93f7f54a165643f0911ad661907f7.css.gz b/public/assets/dark-a962b476412caff979202252e033efb9d0a93f7f54a165643f0911ad661907f7.css.gz new file mode 100644 index 00000000..40505259 --- /dev/null +++ b/public/assets/dark-a962b476412caff979202252e033efb9d0a93f7f54a165643f0911ad661907f7.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0aaa4493f784e6d51d90fd90ac8128b00999439ff98fd2e093f06a592a6f967b +size 186 From 089602a7a9515a1810739c660be8a5eb37d5e8b6 Mon Sep 17 00:00:00 2001 From: maki Date: Fri, 14 Jun 2024 14:26:06 -0300 Subject: [PATCH 538/699] fix: colores en modo oscuro (media query y dark.scss) usando variables #16489 --- app/assets/stylesheets/application.scss | 42 +++++++++---------------- app/assets/stylesheets/dark.scss | 32 ++----------------- 2 files changed, 18 insertions(+), 56 deletions(-) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index ede3da96..8fa4a32a 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -20,6 +20,13 @@ $form-feedback-valid-color: $black; $form-feedback-invalid-color: $magenta; $form-feedback-icon-valid-color: $black; $component-active-bg: $magenta; +$modal-content-bg: var(--background); +$card-bg: var(--background); +$card-border-color: var(--card-border-color); +$input-bg: var(--background); +$input-color: var(--foreground); +$btn-bg-color: var(--btn-bg-color); +$btn-color: var(--btn-color); $spacers: ( 2-plus: 0.75rem @@ -44,6 +51,9 @@ $sizes: ( --foreground: #{$black}; --background: #{$white}; --color: #{$magenta}; + --card-border-color: #{rgba($black, .125)}; + --btn-bg-color: #{$black}; + --btn-color: #{$white}; } @media (prefers-color-scheme: dark) { @@ -51,40 +61,16 @@ $sizes: ( --foreground: #{$white}; --background: #{$black}; --color: #{$cyan}; + --card-border-color: #{rgba($white, .250)}; + --btn-bg-color: #{$white}; + --btn-color: #{$black}; } - .btn { - background-color: $white; - } .btn-secondary { - background-color: $white; - color: $black; border: none; - - &:hover { - color: $black; - background-color: $cyan; - } - - &:active { - background-color: $cyan; - } - - &:focus { - box-shadow: 0 0 0 0.2rem $cyan; - } } - - .card { - p, a, span { - color: $black; - } - a:hover { - color: $black; - } - } } // TODO: Encontrar la forma de generar esto desde los locales de Rails @@ -239,6 +225,8 @@ svg { .btn { margin-right: 0.3rem; margin-bottom: 0.3rem; + background-color: $btn-bg-color; + color: $btn-color; &:hover { color: var(--background); diff --git a/app/assets/stylesheets/dark.scss b/app/assets/stylesheets/dark.scss index 9f6e27e2..e8ed1862 100644 --- a/app/assets/stylesheets/dark.scss +++ b/app/assets/stylesheets/dark.scss @@ -6,39 +6,13 @@ $cyan: #13fefe; --foreground: #{$white}; --background: #{$black}; --color: #{$cyan}; -} - -.btn { - background-color: $white; + --card-border-color: #{rgba($white, .250)}; + --btn-bg-color: #{$white}; + --btn-color: #{$black}; } .btn-secondary { - background-color: $white; - color: $black; border: none; - - &:hover { - color: $black; - background-color: $cyan; - } - - &:active { - background-color: $cyan; - } - - &:focus { - box-shadow: 0 0 0 0.2rem $cyan; - } -} - -.card { - p, a, span { - color: $black; - } - - a:hover { - color: $black; - } } From d33488d9e78c10c3f3fbb69e291447ae12eaf75e Mon Sep 17 00:00:00 2001 From: fauno Date: Fri, 14 Jun 2024 18:48:40 +0000 Subject: [PATCH 539/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 4 ++-- ...7ba6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css | 3 --- ...6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css.gz | 3 --- ...7ff25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css | 3 +++ ...25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css.gz | 3 +++ ...9d6af520e59f9f7bd125d6334fdd37205d89d08875e88f1750f8ce.css | 3 +++ ...af520e59f9f7bd125d6334fdd37205d89d08875e88f1750f8ce.css.gz | 3 +++ 7 files changed, 14 insertions(+), 8 deletions(-) delete mode 100644 public/assets/application-35e329e6ff7ba6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css delete mode 100644 public/assets/application-35e329e6ff7ba6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css.gz create mode 100644 public/assets/application-60967ad0347ff25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css create mode 100644 public/assets/application-60967ad0347ff25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css.gz create mode 100644 public/assets/dark-d1cd94a4f79d6af520e59f9f7bd125d6334fdd37205d89d08875e88f1750f8ce.css create mode 100644 public/assets/dark-d1cd94a4f79d6af520e59f9f7bd125d6334fdd37205d89d08875e88f1750f8ce.css.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 4e141059..fb14120a 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f8b936d035527c166d8d7530d2d2f325bb731103332545110d3b6e410fafa175 -size 11156 +oid sha256:874e7c47da787d2ca785aa7e5e816de3d505a1fe6c46ff72c928081934b2632f +size 11449 diff --git a/public/assets/application-35e329e6ff7ba6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css b/public/assets/application-35e329e6ff7ba6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css deleted file mode 100644 index 974277ef..00000000 --- a/public/assets/application-35e329e6ff7ba6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:12925e713e5a7d48edf50c1ebc4d0fe9a70b67355007dcbba5bbaa0d0e1a19d4 -size 239145 diff --git a/public/assets/application-35e329e6ff7ba6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css.gz b/public/assets/application-35e329e6ff7ba6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css.gz deleted file mode 100644 index a2849da7..00000000 --- a/public/assets/application-35e329e6ff7ba6459251aa9ad14f901f8f864d522235d254e22adb4c8a33952c.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ae31a1fadd5550257a69087aad8edaf05c566a9f2c138453ceedce1d8ab04e7d -size 33191 diff --git a/public/assets/application-60967ad0347ff25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css b/public/assets/application-60967ad0347ff25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css new file mode 100644 index 00000000..f85e7eb7 --- /dev/null +++ b/public/assets/application-60967ad0347ff25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21670939fa9a33ff7147a3939e901b9a9797fadb2a724700128942889a1c1a3f +size 238842 diff --git a/public/assets/application-60967ad0347ff25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css.gz b/public/assets/application-60967ad0347ff25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css.gz new file mode 100644 index 00000000..a208f217 --- /dev/null +++ b/public/assets/application-60967ad0347ff25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55fef1481a54cd87f0efc1df7bc7cda2ece5e56be2ca548e2b5d1dc734dfac59 +size 33265 diff --git a/public/assets/dark-d1cd94a4f79d6af520e59f9f7bd125d6334fdd37205d89d08875e88f1750f8ce.css b/public/assets/dark-d1cd94a4f79d6af520e59f9f7bd125d6334fdd37205d89d08875e88f1750f8ce.css new file mode 100644 index 00000000..593eda78 --- /dev/null +++ b/public/assets/dark-d1cd94a4f79d6af520e59f9f7bd125d6334fdd37205d89d08875e88f1750f8ce.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef99eae201c290ed5189749fe0e85730ee6f62e0471118de9fbcb3dca5d2604c +size 179 diff --git a/public/assets/dark-d1cd94a4f79d6af520e59f9f7bd125d6334fdd37205d89d08875e88f1750f8ce.css.gz b/public/assets/dark-d1cd94a4f79d6af520e59f9f7bd125d6334fdd37205d89d08875e88f1750f8ce.css.gz new file mode 100644 index 00000000..c955031e --- /dev/null +++ b/public/assets/dark-d1cd94a4f79d6af520e59f9f7bd125d6334fdd37205d89d08875e88f1750f8ce.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e07977aa1c0c3d1f8c08f8e9082506ecc75c1c30a9413ff622a95a6946de8105 +size 140 From 454d0b5c1e9e0bccff6792d989e37ef8ecbc151d Mon Sep 17 00:00:00 2001 From: f Date: Fri, 14 Jun 2024 16:25:03 -0300 Subject: [PATCH 540/699] fix: los roles pueden ser opcionales --- app/models/deploy.rb | 2 +- db/migrate/20240614191548_deploy_rol_id_can_be_null.rb | 8 ++++++++ db/structure.sql | 3 ++- 3 files changed, 11 insertions(+), 2 deletions(-) create mode 100644 db/migrate/20240614191548_deploy_rol_id_can_be_null.rb diff --git a/app/models/deploy.rb b/app/models/deploy.rb index 77646034..b9d6c9d3 100644 --- a/app/models/deploy.rb +++ b/app/models/deploy.rb @@ -10,7 +10,7 @@ require 'open3' # :attributes`. class Deploy < ApplicationRecord belongs_to :site - belongs_to :rol + belongs_to :rol, optional: true has_many :build_stats, dependent: :destroy diff --git a/db/migrate/20240614191548_deploy_rol_id_can_be_null.rb b/db/migrate/20240614191548_deploy_rol_id_can_be_null.rb new file mode 100644 index 00000000..425861aa --- /dev/null +++ b/db/migrate/20240614191548_deploy_rol_id_can_be_null.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true + +# El rol_id no es necesario para todos los deploys +class DeployRolIdCanBeNull < ActiveRecord::Migration[6.1] + def change + change_column :deploys, :rol_id, :integer, null: true + end +end diff --git a/db/structure.sql b/db/structure.sql index 21cf04d0..8f9f5d5e 100644 --- a/db/structure.sql +++ b/db/structure.sql @@ -2719,6 +2719,7 @@ INSERT INTO "schema_migrations" (version) VALUES ('20240316203721'), ('20240318183846'), ('20240319124212'), -('20240319144735'); +('20240319144735'), +('20240614191548'); From ad5a553fa19fc61364df3aa9c01c0cba43185e83 Mon Sep 17 00:00:00 2001 From: f Date: Mon, 17 Jun 2024 11:08:27 -0300 Subject: [PATCH 541/699] =?UTF-8?q?fix:=20arreglar=20el=20bot=C3=B3n=20de?= =?UTF-8?q?=20editar?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/posts/_new_related_post.haml | 2 +- config/locales/en.yml | 2 ++ config/locales/es.yml | 2 ++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/app/views/posts/_new_related_post.haml b/app/views/posts/_new_related_post.haml index 79bf33a2..046080c9 100644 --- a/app/views/posts/_new_related_post.haml +++ b/app/views/posts/_new_related_post.haml @@ -11,4 +11,4 @@ - if post.post.attribute?(:description) %p.card-text= post.post.description.value - = link_to 'Editar', post.path, class: 'btn btn-secondary' + = link_to t('.edit'), edit_site_post_path(post.site, post.path), class: 'btn btn-secondary' diff --git a/config/locales/en.yml b/config/locales/en.yml index 3eb0cc24..457b7927 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -960,3 +960,5 @@ en: edit: "Edit" filter: "Start typing to filter..." save: "Save" + card: + edit: "Edit" diff --git a/config/locales/es.yml b/config/locales/es.yml index d69a88b7..d149dee8 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -968,3 +968,5 @@ es: edit: "Editar" filter: "Empezá a escribir para filtrar..." save: "Guardar" + card: + edit: "Editar" From cb45d0aa6c5d198927f924923249c85de096bb7f Mon Sep 17 00:00:00 2001 From: f Date: Mon, 17 Jun 2024 11:10:27 -0300 Subject: [PATCH 542/699] fix: distinguir mejor los valores elegidos --- app/views/posts/_new_array_value.haml | 4 +--- app/views/posts/attributes/_new_array.haml | 2 +- app/views/posts/attributes/_new_predefined_array.haml | 2 +- app/views/posts/attributes/_new_predefined_value.haml | 2 +- 4 files changed, 4 insertions(+), 6 deletions(-) diff --git a/app/views/posts/_new_array_value.haml b/app/views/posts/_new_array_value.haml index 00cf293f..73bea5dc 100644 --- a/app/views/posts/_new_array_value.haml +++ b/app/views/posts/_new_array_value.haml @@ -1,3 +1 @@ -.col - %p - %strong= value +%li= value diff --git a/app/views/posts/attributes/_new_array.haml b/app/views/posts/attributes/_new_array.haml index da4a93c7..d0d659dd 100644 --- a/app/views/posts/attributes/_new_array.haml +++ b/app/views/posts/attributes/_new_array.haml @@ -26,7 +26,7 @@ Para poder cancelar, mantenemos el estado original y desactivamos o activamos los ítemes según estén incluidos en esa lista o no. - .row.row-cols-1.row-cols-md-2.no-gutters.placeholder-glow{ data: { target: 'array.current' } } + %ul.placeholder-glow{ data: { target: 'array.current' } } - metadata.value.sort_by(&:remove_diacritics).each do |value| = render 'posts/new_array_value', value: value diff --git a/app/views/posts/attributes/_new_predefined_array.haml b/app/views/posts/attributes/_new_predefined_array.haml index c67b2ea9..ca0cdaf2 100644 --- a/app/views/posts/attributes/_new_predefined_array.haml +++ b/app/views/posts/attributes/_new_predefined_array.haml @@ -29,7 +29,7 @@ Para poder cancelar, mantenemos el estado original y desactivamos o activamos los ítemes según estén incluidos en esa lista o no. - .row.row-cols-1.row-cols-md-2.no-gutters.placeholder-glow{ data: { target: 'array.current' } } + %ul.placeholder-glow{ data: { target: 'array.current' } } - metadata.values.slice(*metadata.value).each_key do |value| = render 'posts/new_array_value', value: value diff --git a/app/views/posts/attributes/_new_predefined_value.haml b/app/views/posts/attributes/_new_predefined_value.haml index 7f418472..ae04fd0b 100644 --- a/app/views/posts/attributes/_new_predefined_value.haml +++ b/app/views/posts/attributes/_new_predefined_value.haml @@ -40,7 +40,7 @@ Para poder cancelar, mantenemos el estado original y desactivamos o activamos los ítemes según estén incluidos en esa lista o no. - .row.row-cols-3.row-cols-md-4.no-gutters.placeholder-glow{ data: { target: 'array.current' } } + %ul.placeholder-glow{ data: { target: 'array.current' } } - unless metadata.empty? = render 'posts/new_array_value', value: metadata.to_s From af2f97e56e74c1a945a37ed72a6ff92c9d1af8b0 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 18 Jun 2024 15:36:13 -0300 Subject: [PATCH 543/699] fix: avisar antes de salir si hubo cambios en el formulario --- .../controllers/unsaved_changes_controller.js | 45 +++++++++++++++++++ app/views/posts/_form.haml | 2 +- config/locales/en.yml | 1 + config/locales/es.yml | 1 + 4 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 app/javascript/controllers/unsaved_changes_controller.js diff --git a/app/javascript/controllers/unsaved_changes_controller.js b/app/javascript/controllers/unsaved_changes_controller.js new file mode 100644 index 00000000..04b80f56 --- /dev/null +++ b/app/javascript/controllers/unsaved_changes_controller.js @@ -0,0 +1,45 @@ +import { Controller } from "stimulus"; + +export default class extends Controller { + connect() { + this.originalFormData = new FormData(this.element); + this.originalFormDataSerialized = this.serializeFormData(this.originalFormData); + this.submitting = false; + } + + submit(event) { + this.submitting = true; + } + + unsaved(event) { + if (this.submitting) return; + if (!this.hasChanged()) return; + + this.submitting = false; + + event.preventDefault(); + + event.returnValue = true; + } + + unsavedTurbolinks(event) { + if (this.submitting) return; + if (!this.hasChanged()) return; + + this.submitting = false; + + if (window.confirm(this.element.dataset.unsavedChangesConfirmValue)) return; + + event.preventDefault(); + } + + serializeFormData(formData) { + formData.delete("authenticity_token"); + + return (new URLSearchParams(formData)).toString();; + } + + hasChanged() { + return (this.originalFormDataSerialized !== this.serializeFormData(new FormData(this.element))); + } +} diff --git a/app/views/posts/_form.haml b/app/views/posts/_form.haml index 8c006274..8a86d203 100644 --- a/app/views/posts/_form.haml +++ b/app/views/posts/_form.haml @@ -33,7 +33,7 @@ - dir = t("locales.#{@locale}.dir") -# Comienza el formulario -= form_tag url, method: method, class: "form post #{extra_class}", multipart: true do += form_tag url, method: method, class: "form post #{extra_class}", multipart: true, data: { controller: 'unsaved-changes', action: 'unsaved-changes#submit beforeunload@window->unsaved-changes#unsaved turbolinks:before-visit@window->unsaved-changes#unsavedTurbolinks', 'unsaved-changes-confirm-value': t('.confirm') } do -# Botones de guardado = render 'posts/submit', site: site, post: post diff --git a/config/locales/en.yml b/config/locales/en.yml index 457b7927..94a6968a 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -814,6 +814,7 @@ en: destroy: Delete confirm_destroy: Are you sure? form: + confirm: "You have unsaved changes and changing pages may lose them, continue anyway?" errors: title: There are some errors on the form help: Please, verify that all values are correct. diff --git a/config/locales/es.yml b/config/locales/es.yml index d149dee8..fcaa6658 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -822,6 +822,7 @@ es: destroy: Borrar confirm_destroy: ¿Estás segure? form: + confirm: "Tenés cambios sin guardar y cambiar de página podría perderlos, ¿querés continuar de todas formas?" errors: title: Hay errores en el formulario help: Por favor, verifica que todos los valores sean correctos. From 732eb934a1e5a7e9c6c2efb58aa286247f71a628 Mon Sep 17 00:00:00 2001 From: fauno Date: Tue, 18 Jun 2024 18:40:53 +0000 Subject: [PATCH 544/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-b608b7bd4557d4669869.js | 3 --- public/packs/js/application-b608b7bd4557d4669869.js.br | 3 --- public/packs/js/application-b608b7bd4557d4669869.js.gz | 3 --- public/packs/js/application-b608b7bd4557d4669869.js.map | 3 --- public/packs/js/application-b608b7bd4557d4669869.js.map.br | 3 --- public/packs/js/application-b608b7bd4557d4669869.js.map.gz | 3 --- public/packs/js/application-d8c0355371b60f3e6748.js | 3 +++ ...SE.txt => application-d8c0355371b60f3e6748.js.LICENSE.txt} | 0 public/packs/js/application-d8c0355371b60f3e6748.js.br | 3 +++ public/packs/js/application-d8c0355371b60f3e6748.js.gz | 3 +++ public/packs/js/application-d8c0355371b60f3e6748.js.map | 3 +++ public/packs/js/application-d8c0355371b60f3e6748.js.map.br | 3 +++ public/packs/js/application-d8c0355371b60f3e6748.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 17 files changed, 24 insertions(+), 24 deletions(-) delete mode 100644 public/packs/js/application-b608b7bd4557d4669869.js delete mode 100644 public/packs/js/application-b608b7bd4557d4669869.js.br delete mode 100644 public/packs/js/application-b608b7bd4557d4669869.js.gz delete mode 100644 public/packs/js/application-b608b7bd4557d4669869.js.map delete mode 100644 public/packs/js/application-b608b7bd4557d4669869.js.map.br delete mode 100644 public/packs/js/application-b608b7bd4557d4669869.js.map.gz create mode 100644 public/packs/js/application-d8c0355371b60f3e6748.js rename public/packs/js/{application-b608b7bd4557d4669869.js.LICENSE.txt => application-d8c0355371b60f3e6748.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-d8c0355371b60f3e6748.js.br create mode 100644 public/packs/js/application-d8c0355371b60f3e6748.js.gz create mode 100644 public/packs/js/application-d8c0355371b60f3e6748.js.map create mode 100644 public/packs/js/application-d8c0355371b60f3e6748.js.map.br create mode 100644 public/packs/js/application-d8c0355371b60f3e6748.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index fb14120a..9d787b12 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:874e7c47da787d2ca785aa7e5e816de3d505a1fe6c46ff72c928081934b2632f +oid sha256:772ac49cf1f56735464e3891a5de7e01ab23e8a27f5d9ae4170fbbe4a072a597 size 11449 diff --git a/public/packs/js/application-b608b7bd4557d4669869.js b/public/packs/js/application-b608b7bd4557d4669869.js deleted file mode 100644 index a8a1f3f1..00000000 --- a/public/packs/js/application-b608b7bd4557d4669869.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8c0dd6b44f75f420d8e86ce3638eb8e0c6dea8c96ac52f36d00e374fca30ecbc -size 1654995 diff --git a/public/packs/js/application-b608b7bd4557d4669869.js.br b/public/packs/js/application-b608b7bd4557d4669869.js.br deleted file mode 100644 index 6adaa12e..00000000 --- a/public/packs/js/application-b608b7bd4557d4669869.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:891e45df15dab8d8f5591eb3d239ce67f737a4ad2f53eaeef65559263946fc58 -size 367838 diff --git a/public/packs/js/application-b608b7bd4557d4669869.js.gz b/public/packs/js/application-b608b7bd4557d4669869.js.gz deleted file mode 100644 index f1a72603..00000000 --- a/public/packs/js/application-b608b7bd4557d4669869.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:99b3dc0c459b41cbd41c326b53f6fa45aedb30b8f89affc16a8c8c49eeb5f67a -size 484603 diff --git a/public/packs/js/application-b608b7bd4557d4669869.js.map b/public/packs/js/application-b608b7bd4557d4669869.js.map deleted file mode 100644 index 59924dd4..00000000 --- a/public/packs/js/application-b608b7bd4557d4669869.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:48e4140add75d5843903de95e9b7a1c8bfbe1b5a991c166184a81ba1282c7149 -size 6398734 diff --git a/public/packs/js/application-b608b7bd4557d4669869.js.map.br b/public/packs/js/application-b608b7bd4557d4669869.js.map.br deleted file mode 100644 index a7180bb1..00000000 --- a/public/packs/js/application-b608b7bd4557d4669869.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b93ad1f13c078483ab07da863497a474a5ab638df3791ce772fe91be63f8055e -size 1378017 diff --git a/public/packs/js/application-b608b7bd4557d4669869.js.map.gz b/public/packs/js/application-b608b7bd4557d4669869.js.map.gz deleted file mode 100644 index 533dc825..00000000 --- a/public/packs/js/application-b608b7bd4557d4669869.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4003007e4a189c7374954c7528dd745fff5641ab50ec3feac571aaae70f74757 -size 1704361 diff --git a/public/packs/js/application-d8c0355371b60f3e6748.js b/public/packs/js/application-d8c0355371b60f3e6748.js new file mode 100644 index 00000000..8187701a --- /dev/null +++ b/public/packs/js/application-d8c0355371b60f3e6748.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d3dc38ccba888a0f8143ed8107cd0d985418bcb17d44126115848dabd5d2a49 +size 1657380 diff --git a/public/packs/js/application-b608b7bd4557d4669869.js.LICENSE.txt b/public/packs/js/application-d8c0355371b60f3e6748.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-b608b7bd4557d4669869.js.LICENSE.txt rename to public/packs/js/application-d8c0355371b60f3e6748.js.LICENSE.txt diff --git a/public/packs/js/application-d8c0355371b60f3e6748.js.br b/public/packs/js/application-d8c0355371b60f3e6748.js.br new file mode 100644 index 00000000..07e9dc30 --- /dev/null +++ b/public/packs/js/application-d8c0355371b60f3e6748.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ddb0aa27fd13ae1aacb0b8261d9233760226f0cb2f3c13e12315cf20274515fb +size 367849 diff --git a/public/packs/js/application-d8c0355371b60f3e6748.js.gz b/public/packs/js/application-d8c0355371b60f3e6748.js.gz new file mode 100644 index 00000000..6151ea5b --- /dev/null +++ b/public/packs/js/application-d8c0355371b60f3e6748.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58cfefb3d2cfafbbfcf0479d2e6e369d221092a19df08e7b44523eb4a9529bd6 +size 484821 diff --git a/public/packs/js/application-d8c0355371b60f3e6748.js.map b/public/packs/js/application-d8c0355371b60f3e6748.js.map new file mode 100644 index 00000000..5991f93f --- /dev/null +++ b/public/packs/js/application-d8c0355371b60f3e6748.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9fccbe757fba253d48cbeeb8291d32aab301c8ab1a51eff533e1c2449acedad2 +size 6400618 diff --git a/public/packs/js/application-d8c0355371b60f3e6748.js.map.br b/public/packs/js/application-d8c0355371b60f3e6748.js.map.br new file mode 100644 index 00000000..8d044b68 --- /dev/null +++ b/public/packs/js/application-d8c0355371b60f3e6748.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e11cec1193400ed06ae411da41bf518695e31c5b47b8098e5f12dd8c850e938 +size 1379418 diff --git a/public/packs/js/application-d8c0355371b60f3e6748.js.map.gz b/public/packs/js/application-d8c0355371b60f3e6748.js.map.gz new file mode 100644 index 00000000..bcdfbfd4 --- /dev/null +++ b/public/packs/js/application-d8c0355371b60f3e6748.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4cf0f5c9584f69ebddbd46b6b506ba6e1f6a8e58cfe3cb40287ec3db56538ba +size 1704857 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 50c01cf4..2f133c82 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c0cba2d4d0079ecdcc8e92b0944011f99a66eb00b04d354a85577e16692506e5 +oid sha256:6d762d616273b41c156cb1fb197311582b17f1b6c9556ba60f7bd2b602773398 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 51f607a2..362ed687 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d3ef49e20b174b2b17df77d87be6cef9e2c42a8dbe65cc09d13d78115ba399cb -size 322 +oid sha256:756cfd379ef862dfe7c912506c8346dcebb61468660c62c5f8b57eae085b34ba +size 319 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 6d6d941a..a926bb5a 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:72424207e6a822f1059817d75263623e1999869d941d8a18c9cff28148e8b6fc -size 365 +oid sha256:a9c9bffbd29f2c24d0708ffe36f01e7abf9053cf8b925aab6e4eca62856f664c +size 366 From db07eefb92bb2e116e9ea37f54fac4d7c4e2acfb Mon Sep 17 00:00:00 2001 From: f Date: Tue, 18 Jun 2024 16:06:59 -0300 Subject: [PATCH 545/699] feat: poder pasar data a un checkbox --- app/views/bootstrap/_custom_checkbox.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/bootstrap/_custom_checkbox.haml b/app/views/bootstrap/_custom_checkbox.haml index ae35caf5..73910a6f 100644 --- a/app/views/bootstrap/_custom_checkbox.haml +++ b/app/views/bootstrap/_custom_checkbox.haml @@ -1,6 +1,6 @@ :ruby help_id = "#{id}_help" - checkbox_attributes = local_assigns.slice(:id, :type, :name, :value, :required, :checked) + checkbox_attributes = local_assigns.slice(:id, :type, :name, :value, :required, :checked, :data) checkbox_attributes[:type] ||= 'checkbox' .custom-control{ class: "custom-#{checkbox_attributes[:type]}" } From 5fc6118957ffb67d6adac462072a760ca7826e04 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 18 Jun 2024 16:07:22 -0300 Subject: [PATCH 546/699] feat: poder marcar un new_array como obligatorio --- .../required_checkbox_controller.js | 24 +++++++++++++++++++ app/views/posts/attributes/_new_array.haml | 14 +++++++---- 2 files changed, 34 insertions(+), 4 deletions(-) create mode 100644 app/javascript/controllers/required_checkbox_controller.js diff --git a/app/javascript/controllers/required_checkbox_controller.js b/app/javascript/controllers/required_checkbox_controller.js new file mode 100644 index 00000000..9754b506 --- /dev/null +++ b/app/javascript/controllers/required_checkbox_controller.js @@ -0,0 +1,24 @@ +import { Controller } from "stimulus"; + +/* + * Para poder indicar que al menos uno del grupo de checkboxes es + * obligatorio, marcamos uno como `required` (que es el que mostraría el + * error) y se lo quitamos cuando detectamos que alguno cambió. + */ +export default class extends Controller { + static targets = ["required", "checkbox"]; + + connect() { + } + + /* + * El grupo deja de ser obligatorio cuando al menos uno está activo. + */ + change(event = undefined) { + if (event.target.checked) { + this.requiredTarget.required = false; + } else { + this.requiredTarget.required = !Array.from(this.checkboxTargets).some(x => x.checked); + } + } +} diff --git a/app/views/posts/attributes/_new_array.haml b/app/views/posts/attributes/_new_array.haml index d0d659dd..4293ded1 100644 --- a/app/views/posts/attributes/_new_array.haml +++ b/app/views/posts/attributes/_new_array.haml @@ -5,13 +5,19 @@ name = "#{base}[#{attribute}][]" form_id = random_id -%div{ data: { controller: 'modal array enter', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } +%div{ data: { controller: "modal array enter#{' required-checkbox' if metadata.required}", 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } %template{ data: { target: 'array.placeholder' } } .col.mb-3{ 'aria-hidden': 'true' } %span.placeholder.w-100 - .form-group - = hidden_field_tag name, '' + .form-group.mb-0 + -# + Si la lista es obligatoria, al menos uno de los ítems tiene que + estar activado. Logramos esto con un checkbox oculto que se marca + como obligatorio al validar el formulario. + - if metadata.required + %input.form-control{ type: 'checkbox', name: name, data: { target: 'required-checkbox.required' }, required: metadata.value.empty? } + .invalid-feedback Requerido! .d-flex.align-items-center.justify-content-between = label_tag id, post_label_t(attribute, post: post) = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' @@ -41,7 +47,7 @@ -# Eliminamos las tildes para poder buscar independientemente de cómo se escriba - metadata.values.sort_by(&:remove_diacritics).each do |value| .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: value } } - = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: value, checked: metadata.value.include?(value), content: value + = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: value, checked: metadata.value.include?(value), content: value, data: { action: 'required-checkbox#change', target: 'required-checkbox.checkbox' } - content_for :"#{id}_footer" do .input-group.w-auto.flex-grow-1.my-0 From 4e473dd2cbb591d7c7049f766b8a824eedc6b839 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 19 Jun 2024 13:12:54 -0300 Subject: [PATCH 547/699] fix: validar con stimulus --- .../controllers/form_validation_controller.js | 29 ++++++++++++++++ app/javascript/etc/index.js | 1 - app/javascript/etc/validation.js | 34 ------------------- app/views/posts/_form.haml | 2 +- 4 files changed, 30 insertions(+), 36 deletions(-) create mode 100644 app/javascript/controllers/form_validation_controller.js delete mode 100644 app/javascript/etc/validation.js diff --git a/app/javascript/controllers/form_validation_controller.js b/app/javascript/controllers/form_validation_controller.js new file mode 100644 index 00000000..fe65934e --- /dev/null +++ b/app/javascript/controllers/form_validation_controller.js @@ -0,0 +1,29 @@ +import { Controller } from "stimulus"; + +export default class extends Controller { + connect() { + this.element.setAttribute("novalidate", true); + + for (const input of this.element.elements) { + if (input.type === "button" || input.type === "submit") continue; + + if (input.dataset.action) { + input.dataset.action = `${input.dataset.action} htmx:validation:validate->form-validation#submit`; + } else { + input.dataset.action = "htmx:validation:validate->form-validation#submit"; + } + } + } + + submit(event = undefined) { + event?.preventDefault(); + event?.stopPropagation(); + + if (this.element.reportValidity()) { + this.element.classList.remove("was-validated"); + this.element.submit(); + } else { + this.element.classList.add("was-validated"); + } + } +} diff --git a/app/javascript/etc/index.js b/app/javascript/etc/index.js index 3a1ef75c..641d8085 100644 --- a/app/javascript/etc/index.js +++ b/app/javascript/etc/index.js @@ -4,6 +4,5 @@ import './input-tag' import './prosemirror' import './timezone' import './turbolinks-anchors' -import './validation' import './new_editor' import './htmx_abort' diff --git a/app/javascript/etc/validation.js b/app/javascript/etc/validation.js deleted file mode 100644 index 5a48148f..00000000 --- a/app/javascript/etc/validation.js +++ /dev/null @@ -1,34 +0,0 @@ -document.addEventListener('turbolinks:load', () => { - // Al enviar el formulario del artículo, aplicar la validación - // localmente y actualizar los comentarios para lectores de pantalla. - document.querySelectorAll('form').forEach(form => { - form.addEventListener('submit', event => { - const invalid_help = form.querySelectorAll('.invalid-help') - const sending_help = form.querySelectorAll('.sending-help') - - invalid_help.forEach(i => i.classList.add('d-none')) - sending_help.forEach(i => i.classList.add('d-none')) - - form.querySelectorAll('[aria-invalid="true"]').forEach(aria => { - aria.setAttribute('aria-invalid', false) - aria.setAttribute('aria-describedby', aria.parentElement.querySelector('.feedback').id) - }) - - if (form.checkValidity() === false) { - event.preventDefault() - event.stopPropagation() - - invalid_help.forEach(i => i.classList.remove('d-none')) - - form.querySelectorAll(':invalid').forEach(invalid => { - invalid.setAttribute('aria-invalid', true) - invalid.setAttribute('aria-describedby', invalid.parentElement.querySelector('.invalid-feedback').id) - }) - } else { - sending_help.forEach(i => i.classList.remove('d-none')) - } - - form.classList.add('was-validated') - }) - }) -}) diff --git a/app/views/posts/_form.haml b/app/views/posts/_form.haml index 8a86d203..aa8f3d1d 100644 --- a/app/views/posts/_form.haml +++ b/app/views/posts/_form.haml @@ -33,7 +33,7 @@ - dir = t("locales.#{@locale}.dir") -# Comienza el formulario -= form_tag url, method: method, class: "form post #{extra_class}", multipart: true, data: { controller: 'unsaved-changes', action: 'unsaved-changes#submit beforeunload@window->unsaved-changes#unsaved turbolinks:before-visit@window->unsaved-changes#unsavedTurbolinks', 'unsaved-changes-confirm-value': t('.confirm') } do += form_tag url, method: method, class: "form post #{extra_class}", multipart: true, data: { controller: 'unsaved-changes form-validation', action: 'unsaved-changes#submit form-validation#submit beforeunload@window->unsaved-changes#unsaved turbolinks:before-visit@window->unsaved-changes#unsavedTurbolinks', 'unsaved-changes-confirm-value': t('.confirm') } do -# Botones de guardado = render 'posts/submit', site: site, post: post From 4cdfbb7b2f48ccef20eca1cc2a683ff8a4217709 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 19 Jun 2024 13:13:09 -0300 Subject: [PATCH 548/699] =?UTF-8?q?fix:=20validaci=C3=B3n=20en=20modo=20os?= =?UTF-8?q?curo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/assets/stylesheets/application.scss | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 4b659972..ce0b0924 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -95,6 +95,16 @@ $sizes: ( box-shadow: 0 0 0 0.2rem $cyan; } } + + @include form-validation-state("valid", $cyan, url("data:image/svg+xml,")); + + .custom-checkbox { + .custom-control-input:checked ~ .custom-control-label { + &::after { + background-image: url("data:image/svg+xml,"); + } + } + } } // TODO: Encontrar la forma de generar esto desde los locales de Rails From 2ec752ee1406769eaddb03f9aa569ec4e6c0a84f Mon Sep 17 00:00:00 2001 From: f Date: Wed, 19 Jun 2024 13:13:30 -0300 Subject: [PATCH 549/699] =?UTF-8?q?feat:=20validaci=C3=B3n=20de=20new=5Far?= =?UTF-8?q?ray?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controllers/required_checkbox_controller.js | 15 +++++++++++++++ app/views/posts/attributes/_new_array.haml | 9 +++++---- config/locales/en.yml | 1 + config/locales/es.yml | 1 + 4 files changed, 22 insertions(+), 4 deletions(-) diff --git a/app/javascript/controllers/required_checkbox_controller.js b/app/javascript/controllers/required_checkbox_controller.js index 9754b506..a24ce881 100644 --- a/app/javascript/controllers/required_checkbox_controller.js +++ b/app/javascript/controllers/required_checkbox_controller.js @@ -20,5 +20,20 @@ export default class extends Controller { } else { this.requiredTarget.required = !Array.from(this.checkboxTargets).some(x => x.checked); } + + for (const checkbox of this.checkboxTargets) { + if (checkbox === event.target) continue; + + checkbox.required = !event.target.checked; + } + } + + /* + * Si el checkbox es considerado + */ + invalid(event) { + for (const checkbox of this.checkboxTargets) { + checkbox.required = true; + } } } diff --git a/app/views/posts/attributes/_new_array.haml b/app/views/posts/attributes/_new_array.haml index 4293ded1..5778f619 100644 --- a/app/views/posts/attributes/_new_array.haml +++ b/app/views/posts/attributes/_new_array.haml @@ -15,11 +15,12 @@ Si la lista es obligatoria, al menos uno de los ítems tiene que estar activado. Logramos esto con un checkbox oculto que se marca como obligatorio al validar el formulario. - - if metadata.required - %input.form-control{ type: 'checkbox', name: name, data: { target: 'required-checkbox.required' }, required: metadata.value.empty? } - .invalid-feedback Requerido! .d-flex.align-items-center.justify-content-between - = label_tag id, post_label_t(attribute, post: post) + %div + = label_tag id, post_label_t(attribute, post: post), class: 'mb-0' + - if metadata.required + %input.form-control.d-none{ type: 'checkbox', name: name, data: { target: 'required-checkbox.required', action: 'invalid->required-checkbox#invalid' }, required: metadata.value.empty? } + .invalid-feedback.mt-0= t('.required') = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' -# Mostramos la lista de valores actuales. diff --git a/config/locales/en.yml b/config/locales/en.yml index 94a6968a..6b8562d1 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -764,6 +764,7 @@ en: edit: "Edit" new_array: edit: "Edit" + required: "Please select at least one option." new_has_one: edit: "Edit" new_belongs_to: diff --git a/config/locales/es.yml b/config/locales/es.yml index fcaa6658..d1c61fd2 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -772,6 +772,7 @@ es: edit: "Editar" new_array: edit: "Editar" + required: "Seleccioná al menos una opción." new_has_one: edit: "Editar" new_belongs_to: From 04a6f8149d589af0694b625e373b89bca11798c6 Mon Sep 17 00:00:00 2001 From: fauno Date: Wed, 19 Jun 2024 16:17:56 +0000 Subject: [PATCH 550/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- ...74e37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css | 3 --- ...37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css.gz | 3 --- ...a19b88d9e3b797d527537c31cb5a2b31d42e5bc96a142a69551690.css | 3 +++ ...b88d9e3b797d527537c31cb5a2b31d42e5bc96a142a69551690.css.gz | 3 +++ public/packs/js/application-56ad7eda04c8543a72b5.js | 3 +++ ...SE.txt => application-56ad7eda04c8543a72b5.js.LICENSE.txt} | 0 public/packs/js/application-56ad7eda04c8543a72b5.js.br | 3 +++ public/packs/js/application-56ad7eda04c8543a72b5.js.gz | 3 +++ public/packs/js/application-56ad7eda04c8543a72b5.js.map | 3 +++ public/packs/js/application-56ad7eda04c8543a72b5.js.map.br | 3 +++ public/packs/js/application-56ad7eda04c8543a72b5.js.map.gz | 3 +++ public/packs/js/application-d8c0355371b60f3e6748.js | 3 --- public/packs/js/application-d8c0355371b60f3e6748.js.br | 3 --- public/packs/js/application-d8c0355371b60f3e6748.js.gz | 3 --- public/packs/js/application-d8c0355371b60f3e6748.js.map | 3 --- public/packs/js/application-d8c0355371b60f3e6748.js.map.br | 3 --- public/packs/js/application-d8c0355371b60f3e6748.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 2 +- public/packs/manifest.json.gz | 4 ++-- 21 files changed, 29 insertions(+), 29 deletions(-) delete mode 100644 public/assets/application-5a2118e0f174e37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css delete mode 100644 public/assets/application-5a2118e0f174e37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css.gz create mode 100644 public/assets/application-a69d1d6a5fa19b88d9e3b797d527537c31cb5a2b31d42e5bc96a142a69551690.css create mode 100644 public/assets/application-a69d1d6a5fa19b88d9e3b797d527537c31cb5a2b31d42e5bc96a142a69551690.css.gz create mode 100644 public/packs/js/application-56ad7eda04c8543a72b5.js rename public/packs/js/{application-d8c0355371b60f3e6748.js.LICENSE.txt => application-56ad7eda04c8543a72b5.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-56ad7eda04c8543a72b5.js.br create mode 100644 public/packs/js/application-56ad7eda04c8543a72b5.js.gz create mode 100644 public/packs/js/application-56ad7eda04c8543a72b5.js.map create mode 100644 public/packs/js/application-56ad7eda04c8543a72b5.js.map.br create mode 100644 public/packs/js/application-56ad7eda04c8543a72b5.js.map.gz delete mode 100644 public/packs/js/application-d8c0355371b60f3e6748.js delete mode 100644 public/packs/js/application-d8c0355371b60f3e6748.js.br delete mode 100644 public/packs/js/application-d8c0355371b60f3e6748.js.gz delete mode 100644 public/packs/js/application-d8c0355371b60f3e6748.js.map delete mode 100644 public/packs/js/application-d8c0355371b60f3e6748.js.map.br delete mode 100644 public/packs/js/application-d8c0355371b60f3e6748.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 9d787b12..72226485 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:772ac49cf1f56735464e3891a5de7e01ab23e8a27f5d9ae4170fbbe4a072a597 +oid sha256:6632e7d80cebfdc1f2bc27be791dd4ce862401c2cbc4ea93f089ebe22a7914d3 size 11449 diff --git a/public/assets/application-5a2118e0f174e37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css b/public/assets/application-5a2118e0f174e37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css deleted file mode 100644 index b8b6ccd6..00000000 --- a/public/assets/application-5a2118e0f174e37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:86c9880c137987ad7c6c646a7b05ca4a0c3f33e7b224a880211463ad6ef23fa2 -size 239089 diff --git a/public/assets/application-5a2118e0f174e37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css.gz b/public/assets/application-5a2118e0f174e37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css.gz deleted file mode 100644 index 6eefd90d..00000000 --- a/public/assets/application-5a2118e0f174e37cf488b3a13fdf326594fc61dab18853d46e846197fdda2a34.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a6f7a69b06df8b6297d93e689d24506b56eee82e3c159202817596e63343f056 -size 33175 diff --git a/public/assets/application-a69d1d6a5fa19b88d9e3b797d527537c31cb5a2b31d42e5bc96a142a69551690.css b/public/assets/application-a69d1d6a5fa19b88d9e3b797d527537c31cb5a2b31d42e5bc96a142a69551690.css new file mode 100644 index 00000000..8def5aa7 --- /dev/null +++ b/public/assets/application-a69d1d6a5fa19b88d9e3b797d527537c31cb5a2b31d42e5bc96a142a69551690.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9c780a2bd5eb45a5860eebb5200bfbee294d6464c584d91ee50b090b900e714 +size 244919 diff --git a/public/assets/application-a69d1d6a5fa19b88d9e3b797d527537c31cb5a2b31d42e5bc96a142a69551690.css.gz b/public/assets/application-a69d1d6a5fa19b88d9e3b797d527537c31cb5a2b31d42e5bc96a142a69551690.css.gz new file mode 100644 index 00000000..c767bc11 --- /dev/null +++ b/public/assets/application-a69d1d6a5fa19b88d9e3b797d527537c31cb5a2b31d42e5bc96a142a69551690.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8fd82dea924cf98965b504d43933e0c63b61480681c812bd28353b9d2becd13 +size 34317 diff --git a/public/packs/js/application-56ad7eda04c8543a72b5.js b/public/packs/js/application-56ad7eda04c8543a72b5.js new file mode 100644 index 00000000..eebec649 --- /dev/null +++ b/public/packs/js/application-56ad7eda04c8543a72b5.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfb809578c465062375f58958c8d802bc5aaa561137162968de2a82d771a8bbd +size 1663054 diff --git a/public/packs/js/application-d8c0355371b60f3e6748.js.LICENSE.txt b/public/packs/js/application-56ad7eda04c8543a72b5.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-d8c0355371b60f3e6748.js.LICENSE.txt rename to public/packs/js/application-56ad7eda04c8543a72b5.js.LICENSE.txt diff --git a/public/packs/js/application-56ad7eda04c8543a72b5.js.br b/public/packs/js/application-56ad7eda04c8543a72b5.js.br new file mode 100644 index 00000000..527ef501 --- /dev/null +++ b/public/packs/js/application-56ad7eda04c8543a72b5.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a7ddb98396cacf83ab50d9864aa191aa498a3fea7d0c02c527fd05d7ac5e9d2 +size 367896 diff --git a/public/packs/js/application-56ad7eda04c8543a72b5.js.gz b/public/packs/js/application-56ad7eda04c8543a72b5.js.gz new file mode 100644 index 00000000..0a1bc325 --- /dev/null +++ b/public/packs/js/application-56ad7eda04c8543a72b5.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2dceb84b61e324f43c0c12df7c2fb3a8f800fc934ab5b6f3c394dda88ca21f09 +size 485041 diff --git a/public/packs/js/application-56ad7eda04c8543a72b5.js.map b/public/packs/js/application-56ad7eda04c8543a72b5.js.map new file mode 100644 index 00000000..8522eefe --- /dev/null +++ b/public/packs/js/application-56ad7eda04c8543a72b5.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fa9c6e284b0e426727912dd3cd88611d345fabfb6ffd6110f3275f00a79b44c +size 6401537 diff --git a/public/packs/js/application-56ad7eda04c8543a72b5.js.map.br b/public/packs/js/application-56ad7eda04c8543a72b5.js.map.br new file mode 100644 index 00000000..13496e80 --- /dev/null +++ b/public/packs/js/application-56ad7eda04c8543a72b5.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51714fad20da734725fe00bb8d4283be6c85b3cccec830f449bab6e8ba450ed5 +size 1379275 diff --git a/public/packs/js/application-56ad7eda04c8543a72b5.js.map.gz b/public/packs/js/application-56ad7eda04c8543a72b5.js.map.gz new file mode 100644 index 00000000..8e0dee36 --- /dev/null +++ b/public/packs/js/application-56ad7eda04c8543a72b5.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:834232a603a0843156e0689b7adf5a755aafd5987601843ba0dfa2f26680bf7c +size 1704946 diff --git a/public/packs/js/application-d8c0355371b60f3e6748.js b/public/packs/js/application-d8c0355371b60f3e6748.js deleted file mode 100644 index 8187701a..00000000 --- a/public/packs/js/application-d8c0355371b60f3e6748.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6d3dc38ccba888a0f8143ed8107cd0d985418bcb17d44126115848dabd5d2a49 -size 1657380 diff --git a/public/packs/js/application-d8c0355371b60f3e6748.js.br b/public/packs/js/application-d8c0355371b60f3e6748.js.br deleted file mode 100644 index 07e9dc30..00000000 --- a/public/packs/js/application-d8c0355371b60f3e6748.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ddb0aa27fd13ae1aacb0b8261d9233760226f0cb2f3c13e12315cf20274515fb -size 367849 diff --git a/public/packs/js/application-d8c0355371b60f3e6748.js.gz b/public/packs/js/application-d8c0355371b60f3e6748.js.gz deleted file mode 100644 index 6151ea5b..00000000 --- a/public/packs/js/application-d8c0355371b60f3e6748.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:58cfefb3d2cfafbbfcf0479d2e6e369d221092a19df08e7b44523eb4a9529bd6 -size 484821 diff --git a/public/packs/js/application-d8c0355371b60f3e6748.js.map b/public/packs/js/application-d8c0355371b60f3e6748.js.map deleted file mode 100644 index 5991f93f..00000000 --- a/public/packs/js/application-d8c0355371b60f3e6748.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9fccbe757fba253d48cbeeb8291d32aab301c8ab1a51eff533e1c2449acedad2 -size 6400618 diff --git a/public/packs/js/application-d8c0355371b60f3e6748.js.map.br b/public/packs/js/application-d8c0355371b60f3e6748.js.map.br deleted file mode 100644 index 8d044b68..00000000 --- a/public/packs/js/application-d8c0355371b60f3e6748.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4e11cec1193400ed06ae411da41bf518695e31c5b47b8098e5f12dd8c850e938 -size 1379418 diff --git a/public/packs/js/application-d8c0355371b60f3e6748.js.map.gz b/public/packs/js/application-d8c0355371b60f3e6748.js.map.gz deleted file mode 100644 index bcdfbfd4..00000000 --- a/public/packs/js/application-d8c0355371b60f3e6748.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e4cf0f5c9584f69ebddbd46b6b506ba6e1f6a8e58cfe3cb40287ec3db56538ba -size 1704857 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 2f133c82..dd01eecb 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6d762d616273b41c156cb1fb197311582b17f1b6c9556ba60f7bd2b602773398 +oid sha256:f761ce1ba322788bcfd54b2dc0d8e25adc1e833106633b2e53538479e3cafcc5 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 362ed687..226126d1 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:756cfd379ef862dfe7c912506c8346dcebb61468660c62c5f8b57eae085b34ba +oid sha256:4f27853a3940c29e91e2455726c8b4f6ef89ed034f0cfc257fa90664e9bf565b size 319 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index a926bb5a..53185c0a 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a9c9bffbd29f2c24d0708ffe36f01e7abf9053cf8b925aab6e4eca62856f664c -size 366 +oid sha256:af05f05a02e61e7e99d44799a4387925062e297ac5346b28580ff43f5917da95 +size 365 From 084cf69f93f6feafd9e42ac13c87d49bd4eda3df Mon Sep 17 00:00:00 2001 From: f Date: Wed, 19 Jun 2024 13:20:18 -0300 Subject: [PATCH 551/699] fix: mostrar la ayuda del campo --- app/views/posts/attributes/_new_array.haml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/views/posts/attributes/_new_array.haml b/app/views/posts/attributes/_new_array.haml index 5778f619..86a8f275 100644 --- a/app/views/posts/attributes/_new_array.haml +++ b/app/views/posts/attributes/_new_array.haml @@ -40,7 +40,8 @@ = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'], keydown_actions: %w[keydown->array#cancelWithEscape] do - content_for :"#{id}_header" do .form-group.flex-grow-1.mb-0 - = label_tag id, post_label_t(attribute, post: post) + = label_tag id, post_label_t(attribute, post: post), class: 'mb-0' + %small.feedback.form-text.text-muted.mt-0.mb-1= post_help_t(metadata.name, post: post) %input.form-control{ data: { target: 'array.search', action: 'input->array#search keydown->enter#prevent' }, type: 'search', placeholder: t('.filter') } - content_for :"#{id}_body" do From 654fff0ab9c641a507e28269a15c51e46c61c7b5 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 19 Jun 2024 14:28:53 -0300 Subject: [PATCH 552/699] fix: volver a mostrar los mensajes al guardar y validar --- .../controllers/form_validation_controller.js | 23 +++++++++++++++++++ app/views/bootstrap/_alert.haml | 2 +- app/views/posts/_submit.haml | 17 ++++++++------ config/locales/en.yml | 4 ++-- config/locales/es.yml | 4 ++-- 5 files changed, 38 insertions(+), 12 deletions(-) diff --git a/app/javascript/controllers/form_validation_controller.js b/app/javascript/controllers/form_validation_controller.js index fe65934e..c9817e27 100644 --- a/app/javascript/controllers/form_validation_controller.js +++ b/app/javascript/controllers/form_validation_controller.js @@ -1,6 +1,8 @@ import { Controller } from "stimulus"; export default class extends Controller { + static targets = ["invalid", "submitting"]; + connect() { this.element.setAttribute("novalidate", true); @@ -22,8 +24,29 @@ export default class extends Controller { if (this.element.reportValidity()) { this.element.classList.remove("was-validated"); this.element.submit(); + + this.show(this.submittingTargets); + this.hide(this.invalidTargets); } else { this.element.classList.add("was-validated"); + this.hide(this.submittingTargets); + this.show(this.invalidTargets); + } + } + + show(elements) { + for (const element of elements) { + element.classList.remove("d-none"); + + setTimeout(() => element.classList.add("show"), 1); + } + } + + hide(elements) { + for (const element of elements) { + element.classList.remove("show"); + + setTimeout(() => element.classList.add("d-none"), 2000); } } } diff --git a/app/views/bootstrap/_alert.haml b/app/views/bootstrap/_alert.haml index 85bcbe84..a14064ce 100644 --- a/app/views/bootstrap/_alert.haml +++ b/app/views/bootstrap/_alert.haml @@ -1,2 +1,2 @@ -.alert.alert-primary.mx-auto.content.max-w-md-70ch{ role: 'alert', class: local_assigns[:class] } +.alert.alert-primary.mx-auto.content.max-w-md-70ch{ role: 'alert', **local_assigns } = yield diff --git a/app/views/posts/_submit.haml b/app/views/posts/_submit.haml index c6c0a68a..c3064c53 100644 --- a/app/views/posts/_submit.haml +++ b/app/views/posts/_submit.haml @@ -1,8 +1,11 @@ - invalid_help = site.config.fetch('invalid_help', t('.invalid_help')) -- sending_help = site.config.fetch('sending_help', t('.sending_help')) -.form-group - = submit_tag t('.save'), class: 'btn btn-secondary submit-post' - = render 'bootstrap/alert', class: 'invalid-help d-none' do - = invalid_help - = render 'bootstrap/alert', class: 'sending-help d-none' do - = sending_help +- submitting_help = site.config.fetch('submitting_help', t('.submitting_help')) + +.d-flex.flex-column.flex-md-row.align-items-start.mb-3 + %div + = submit_tag t('.save'), class: 'btn btn-secondary submit-post' + .d-flex.flex-column.position-relative + = render 'bootstrap/alert', class: 'm-0 d-none fade', data: { target: 'form-validation.invalid' } do + = invalid_help + = render 'bootstrap/alert', class: 'm-0 d-none fade position-absolute top-0 left-0', data: { target: 'form-validation.submitting' } do + = submitting_help diff --git a/config/locales/en.yml b/config/locales/en.yml index 6b8562d1..3815f5de 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -719,8 +719,8 @@ en: submit: save: 'Save' save_draft: 'Save as draft' - invalid_help: 'Some fields need attention! Please search for the fields marked as invalid.' - sending_help: Saving, please wait... + invalid_help: "Some fields need attention! Please search for the fields marked as not valid." + submitting_help: "Saving changes, please wait..." new_array: remove: "Remove" attributes: diff --git a/config/locales/es.yml b/config/locales/es.yml index d1c61fd2..7b981b1d 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -727,8 +727,8 @@ es: submit: save: 'Guardar' save_draft: 'Guardar como borrador' - invalid_help: '¡Te faltan completar algunos campos! Busca los que estén marcados como inválidos' - sending_help: Guardando, por favor espera... + invalid_help: "¡Te falta completar algunos campos! Busca los que estén marcados como no válidos." + submitting_help: "Guardando, por favor espera..." new_array: remove: "Eliminar" attributes: From 36753d9341fc245231e24f89d69c80c9a60c245e Mon Sep 17 00:00:00 2001 From: fauno Date: Wed, 19 Jun 2024 17:36:15 +0000 Subject: [PATCH 553/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-56ad7eda04c8543a72b5.js | 3 --- public/packs/js/application-56ad7eda04c8543a72b5.js.br | 3 --- public/packs/js/application-56ad7eda04c8543a72b5.js.gz | 3 --- public/packs/js/application-56ad7eda04c8543a72b5.js.map | 3 --- public/packs/js/application-56ad7eda04c8543a72b5.js.map.br | 3 --- public/packs/js/application-56ad7eda04c8543a72b5.js.map.gz | 3 --- public/packs/js/application-d8649369b4658fe3148a.js | 3 +++ ...SE.txt => application-d8649369b4658fe3148a.js.LICENSE.txt} | 0 public/packs/js/application-d8649369b4658fe3148a.js.br | 3 +++ public/packs/js/application-d8649369b4658fe3148a.js.gz | 3 +++ public/packs/js/application-d8649369b4658fe3148a.js.map | 3 +++ public/packs/js/application-d8649369b4658fe3148a.js.map.br | 3 +++ public/packs/js/application-d8649369b4658fe3148a.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 2 +- 17 files changed, 23 insertions(+), 23 deletions(-) delete mode 100644 public/packs/js/application-56ad7eda04c8543a72b5.js delete mode 100644 public/packs/js/application-56ad7eda04c8543a72b5.js.br delete mode 100644 public/packs/js/application-56ad7eda04c8543a72b5.js.gz delete mode 100644 public/packs/js/application-56ad7eda04c8543a72b5.js.map delete mode 100644 public/packs/js/application-56ad7eda04c8543a72b5.js.map.br delete mode 100644 public/packs/js/application-56ad7eda04c8543a72b5.js.map.gz create mode 100644 public/packs/js/application-d8649369b4658fe3148a.js rename public/packs/js/{application-56ad7eda04c8543a72b5.js.LICENSE.txt => application-d8649369b4658fe3148a.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-d8649369b4658fe3148a.js.br create mode 100644 public/packs/js/application-d8649369b4658fe3148a.js.gz create mode 100644 public/packs/js/application-d8649369b4658fe3148a.js.map create mode 100644 public/packs/js/application-d8649369b4658fe3148a.js.map.br create mode 100644 public/packs/js/application-d8649369b4658fe3148a.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 72226485..df41c5d7 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:6632e7d80cebfdc1f2bc27be791dd4ce862401c2cbc4ea93f089ebe22a7914d3 +oid sha256:a6c05f5d898a8d6f41eed350835dd7961f1119a8aba2eaf5315ab709db6cb730 size 11449 diff --git a/public/packs/js/application-56ad7eda04c8543a72b5.js b/public/packs/js/application-56ad7eda04c8543a72b5.js deleted file mode 100644 index eebec649..00000000 --- a/public/packs/js/application-56ad7eda04c8543a72b5.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:bfb809578c465062375f58958c8d802bc5aaa561137162968de2a82d771a8bbd -size 1663054 diff --git a/public/packs/js/application-56ad7eda04c8543a72b5.js.br b/public/packs/js/application-56ad7eda04c8543a72b5.js.br deleted file mode 100644 index 527ef501..00000000 --- a/public/packs/js/application-56ad7eda04c8543a72b5.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:8a7ddb98396cacf83ab50d9864aa191aa498a3fea7d0c02c527fd05d7ac5e9d2 -size 367896 diff --git a/public/packs/js/application-56ad7eda04c8543a72b5.js.gz b/public/packs/js/application-56ad7eda04c8543a72b5.js.gz deleted file mode 100644 index 0a1bc325..00000000 --- a/public/packs/js/application-56ad7eda04c8543a72b5.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:2dceb84b61e324f43c0c12df7c2fb3a8f800fc934ab5b6f3c394dda88ca21f09 -size 485041 diff --git a/public/packs/js/application-56ad7eda04c8543a72b5.js.map b/public/packs/js/application-56ad7eda04c8543a72b5.js.map deleted file mode 100644 index 8522eefe..00000000 --- a/public/packs/js/application-56ad7eda04c8543a72b5.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0fa9c6e284b0e426727912dd3cd88611d345fabfb6ffd6110f3275f00a79b44c -size 6401537 diff --git a/public/packs/js/application-56ad7eda04c8543a72b5.js.map.br b/public/packs/js/application-56ad7eda04c8543a72b5.js.map.br deleted file mode 100644 index 13496e80..00000000 --- a/public/packs/js/application-56ad7eda04c8543a72b5.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:51714fad20da734725fe00bb8d4283be6c85b3cccec830f449bab6e8ba450ed5 -size 1379275 diff --git a/public/packs/js/application-56ad7eda04c8543a72b5.js.map.gz b/public/packs/js/application-56ad7eda04c8543a72b5.js.map.gz deleted file mode 100644 index 8e0dee36..00000000 --- a/public/packs/js/application-56ad7eda04c8543a72b5.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:834232a603a0843156e0689b7adf5a755aafd5987601843ba0dfa2f26680bf7c -size 1704946 diff --git a/public/packs/js/application-d8649369b4658fe3148a.js b/public/packs/js/application-d8649369b4658fe3148a.js new file mode 100644 index 00000000..548cec12 --- /dev/null +++ b/public/packs/js/application-d8649369b4658fe3148a.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efe9c4e3fe74d6b1a95b7c6bb29326eb4e673a6697f245146652a5d76b76c1f9 +size 1663685 diff --git a/public/packs/js/application-56ad7eda04c8543a72b5.js.LICENSE.txt b/public/packs/js/application-d8649369b4658fe3148a.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-56ad7eda04c8543a72b5.js.LICENSE.txt rename to public/packs/js/application-d8649369b4658fe3148a.js.LICENSE.txt diff --git a/public/packs/js/application-d8649369b4658fe3148a.js.br b/public/packs/js/application-d8649369b4658fe3148a.js.br new file mode 100644 index 00000000..8aa80d90 --- /dev/null +++ b/public/packs/js/application-d8649369b4658fe3148a.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51f5b105d622b6f38f1931f7ccef110c668f0c3bd78f09bf20574f38631c6909 +size 368228 diff --git a/public/packs/js/application-d8649369b4658fe3148a.js.gz b/public/packs/js/application-d8649369b4658fe3148a.js.gz new file mode 100644 index 00000000..290b396d --- /dev/null +++ b/public/packs/js/application-d8649369b4658fe3148a.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9bafb1646736fb6a304511bfc5df2e043a9df03484743154c83e902bbe30649a +size 485148 diff --git a/public/packs/js/application-d8649369b4658fe3148a.js.map b/public/packs/js/application-d8649369b4658fe3148a.js.map new file mode 100644 index 00000000..94e5c1e0 --- /dev/null +++ b/public/packs/js/application-d8649369b4658fe3148a.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd8c0e9d9c1fc67a7b1cdca4922d3a0e31c3b68e000efc1e9fb294e40c7d4437 +size 6402597 diff --git a/public/packs/js/application-d8649369b4658fe3148a.js.map.br b/public/packs/js/application-d8649369b4658fe3148a.js.map.br new file mode 100644 index 00000000..73771aeb --- /dev/null +++ b/public/packs/js/application-d8649369b4658fe3148a.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c04d4d176a989df9b12009535a956c8029f34f433cf15918cbd5ef2bd516ca6 +size 1379774 diff --git a/public/packs/js/application-d8649369b4658fe3148a.js.map.gz b/public/packs/js/application-d8649369b4658fe3148a.js.map.gz new file mode 100644 index 00000000..b4d9bff1 --- /dev/null +++ b/public/packs/js/application-d8649369b4658fe3148a.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:280e81d8c3c74a126321924c006ab3a07da0e90a591c71383063327d7e9edc5b +size 1705124 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index dd01eecb..75bee0ec 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f761ce1ba322788bcfd54b2dc0d8e25adc1e833106633b2e53538479e3cafcc5 +oid sha256:c589b57ad1d3624ac90fb2a9ddd0b1c1d019c470ef8e0d71836fd5f68ddfd5d5 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 226126d1..3c57550b 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4f27853a3940c29e91e2455726c8b4f6ef89ed034f0cfc257fa90664e9bf565b -size 319 +oid sha256:f4124bc64cf48d9e0e9b5a98cd8ccf8264442ee00e0a1147b7b076ab89c825b4 +size 322 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 53185c0a..7aaaea1e 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:af05f05a02e61e7e99d44799a4387925062e297ac5346b28580ff43f5917da95 +oid sha256:e0404498c5280a3e891c6f28e7f6a9e402d99ef626310ff0288f7a7f623e7ba4 size 365 From 5106cdd414b05d1e81689e3fb8efb5fda78b4d01 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 19 Jun 2024 18:16:49 -0300 Subject: [PATCH 554/699] =?UTF-8?q?fix:=20m=C3=A1s=20arreglos=20tema=20osc?= =?UTF-8?q?uro?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/assets/stylesheets/application.scss | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index ce0b0924..32530ce5 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -26,6 +26,10 @@ $card-bg: var(--background); $card-border-color: var(--card-border-color); $input-bg: var(--background); $input-color: var(--foreground); +$btn-bg-color: var(--btn-bg-color); +$btn-color: var(--btn-color); +$input-group-addon-bg: var(--btn-bg-color); +$custom-file-color: var(--btn-color); $spacers: ( 2-plus: 0.75rem From 6f30727a7b7d0026c24c64d28e59294316f96b03 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 19 Jun 2024 18:16:58 -0300 Subject: [PATCH 555/699] fix: traducir campo de imagen --- app/assets/stylesheets/application.scss | 14 ++++++++------ app/views/posts/attributes/_file.haml | 1 + app/views/posts/attributes/_image.haml | 1 + 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index 32530ce5..d8fe8c9f 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -11,6 +11,14 @@ $colors: ( "magenta": $magenta ); +// TODO: Encontrar la forma de generar esto desde los locales de Rails +$custom-file-text: ( + en: "Browse", + es: "Buscar archivo", + pt: "Buscar arquivo", + pt-BR: "Buscar arquivo" +); + // Redefinir variables de Bootstrap $primary: $magenta; $secondary: $black; @@ -111,12 +119,6 @@ $sizes: ( } } -// TODO: Encontrar la forma de generar esto desde los locales de Rails -$custom-file-text: ( - en: 'Browse', - es: 'Buscar archivo' -); - @font-face { font-family: 'Saira'; font-style: normal; diff --git a/app/views/posts/attributes/_file.haml b/app/views/posts/attributes/_file.haml index 20c27399..007f6b9f 100644 --- a/app/views/posts/attributes/_file.haml +++ b/app/views/posts/attributes/_file.haml @@ -26,6 +26,7 @@ = file_field(*field_name_for(base, attribute, :path), **field_options(attribute, metadata, required: (metadata.required && !metadata.path?)), class: "custom-file-input #{invalid(post, attribute)}", + lang: locale, data: { target: 'file-preview.input', action: 'file-preview#update' }) = label_tag "#{base}_#{attribute}_path", post_label_t(attribute, :path, post: post), class: 'custom-file-label' diff --git a/app/views/posts/attributes/_image.haml b/app/views/posts/attributes/_image.haml index 241a78e8..03d9d15f 100644 --- a/app/views/posts/attributes/_image.haml +++ b/app/views/posts/attributes/_image.haml @@ -23,6 +23,7 @@ **field_options(attribute, metadata, required: (metadata.required && !metadata.path?)), class: "custom-file-input #{invalid(post, attribute)}", accept: ActiveStorage.web_image_content_types.join(','), + lang: locale, data: { target: 'file-preview.input', action: 'file-preview#update' }) = label_tag "#{base}_#{attribute}_path", post_label_t(attribute, :path, post: post), class: 'custom-file-label' From e2af1f215ac389e6ae87e1d4f3c5546992adfc8f Mon Sep 17 00:00:00 2001 From: f Date: Wed, 19 Jun 2024 18:19:07 -0300 Subject: [PATCH 556/699] feat: las notificaciones se manejan con eventos --- .../controllers/form_validation_controller.js | 37 +++++++--------- .../controllers/notification_controller.js | 43 +++++++++++++++++++ app/views/posts/_form.haml | 14 ++++-- app/views/posts/_submit.haml | 12 +----- app/views/posts/_validation.haml | 16 +++++++ config/locales/en.yml | 5 ++- config/locales/es.yml | 7 ++- 7 files changed, 96 insertions(+), 38 deletions(-) create mode 100644 app/javascript/controllers/notification_controller.js create mode 100644 app/views/posts/_validation.haml diff --git a/app/javascript/controllers/form_validation_controller.js b/app/javascript/controllers/form_validation_controller.js index c9817e27..85e7bb86 100644 --- a/app/javascript/controllers/form_validation_controller.js +++ b/app/javascript/controllers/form_validation_controller.js @@ -3,6 +3,16 @@ import { Controller } from "stimulus"; export default class extends Controller { static targets = ["invalid", "submitting"]; + // @todo Stimulus >1 + get submittingIdValue() { + return this.element.dataset?.formValidationSubmittingIdValue; + } + + // @todo Stimulus >1 + get invalidIdValue() { + return this.element.dataset?.formValidationInvalidIdValue; + } + connect() { this.element.setAttribute("novalidate", true); @@ -19,34 +29,19 @@ export default class extends Controller { submit(event = undefined) { event?.preventDefault(); - event?.stopPropagation(); if (this.element.reportValidity()) { this.element.classList.remove("was-validated"); - this.element.submit(); - this.show(this.submittingTargets); - this.hide(this.invalidTargets); + if (!this.element.hasAttribute("hx-post")) this.element.submit(); + + window.dispatchEvent(new CustomEvent("notification:show", { detail: { id: this.submittingIdValue } })); } else { + event?.stopPropagation(); + this.element.classList.add("was-validated"); - this.hide(this.submittingTargets); - this.show(this.invalidTargets); - } - } - show(elements) { - for (const element of elements) { - element.classList.remove("d-none"); - - setTimeout(() => element.classList.add("show"), 1); - } - } - - hide(elements) { - for (const element of elements) { - element.classList.remove("show"); - - setTimeout(() => element.classList.add("d-none"), 2000); + window.dispatchEvent(new CustomEvent("notification:show", { detail: { id: this.invalidIdValue } })); } } } diff --git a/app/javascript/controllers/notification_controller.js b/app/javascript/controllers/notification_controller.js new file mode 100644 index 00000000..7fbe3b5a --- /dev/null +++ b/app/javascript/controllers/notification_controller.js @@ -0,0 +1,43 @@ +import { Controller } from "stimulus"; + +/* + * Solo se puede mostrar una notificación a la vez + */ +export default class extends Controller { + // @todo Stimulus >1 + get showClasses() { + return (this.element.dataset?.notificationShowClass || "").split(" ").filter(x => x); + } + + // @todo Stimulus >1 + get hideClasses() { + return (this.element.dataset?.notificationHideClass || "").split(" ").filter(x => x); + } + + /* + * Al recibir el evento de mostrar, si no está dirigido al elemento + * actual, se oculta. + */ + show(event = undefined) { + if (event?.detail?.id !== this.element.id) { + this.hide({ detail: { id: this.element.id } }); + return; + } + + this.element.classList.remove("d-none"); + + setTimeout(() => { + this.element.classList.remove(...this.hideClasses); + this.element.classList.add(...this.showClasses); + }, 1); + } + + hide(event = undefined) { + if (event?.detail?.id !== this.element.id) return; + + this.element.classList.remove(...this.showClasses); + this.element.classList.add(...this.hideClasses); + + setTimeout(() => this.element.classList.add("d-none"), 150); + } +} diff --git a/app/views/posts/_form.haml b/app/views/posts/_form.haml index aa8f3d1d..3e09cb72 100644 --- a/app/views/posts/_form.haml +++ b/app/views/posts/_form.haml @@ -31,11 +31,19 @@ end - dir = t("locales.#{@locale}.dir") +- submitting_id = random_id +- invalid_id = random_id +- data = {} +- data[:controller] = 'unsaved-changes form-validation' +- data[:action] = 'unsaved-changes#submit form-validation#submit beforeunload@window->unsaved-changes#unsaved turbolinks:before-visit@window->unsaved-changes#unsavedTurbolinks' +- data[:'unsaved-changes-confirm-value'] = t('.confirm') +- data[:'form-validation-submitting-id-value'] = submitting_id +- data[:'form-validation-invalid-id-value'] = invalid_id -# Comienza el formulario -= form_tag url, method: method, class: "form post #{extra_class}", multipart: true, data: { controller: 'unsaved-changes form-validation', action: 'unsaved-changes#submit form-validation#submit beforeunload@window->unsaved-changes#unsaved turbolinks:before-visit@window->unsaved-changes#unsavedTurbolinks', 'unsaved-changes-confirm-value': t('.confirm') } do += form_tag url, method: method, class: "form post #{extra_class}", multipart: true, data: data do -# Botones de guardado - = render 'posts/submit', site: site, post: post + = render 'posts/submit', site: site, post: post, invalid: invalid_id, submitting: submitting_id = hidden_field_tag 'post[layout]', post.layout.name @@ -43,7 +51,7 @@ = render 'posts/attributes', site: site, post: post, dir: dir, base: 'post', locale: @locale -# Botones de guardado - = render 'posts/submit', site: site, post: post + = render 'posts/submit', site: site, post: post, invalid: invalid_id, submitting: submitting_id -# Formularios usados por los modales = yield(:post_form) diff --git a/app/views/posts/_submit.haml b/app/views/posts/_submit.haml index c3064c53..41d6f420 100644 --- a/app/views/posts/_submit.haml +++ b/app/views/posts/_submit.haml @@ -1,11 +1,3 @@ -- invalid_help = site.config.fetch('invalid_help', t('.invalid_help')) -- submitting_help = site.config.fetch('submitting_help', t('.submitting_help')) - .d-flex.flex-column.flex-md-row.align-items-start.mb-3 - %div - = submit_tag t('.save'), class: 'btn btn-secondary submit-post' - .d-flex.flex-column.position-relative - = render 'bootstrap/alert', class: 'm-0 d-none fade', data: { target: 'form-validation.invalid' } do - = invalid_help - = render 'bootstrap/alert', class: 'm-0 d-none fade position-absolute top-0 left-0', data: { target: 'form-validation.submitting' } do - = submitting_help + %div= submit_tag t('.save'), class: 'btn btn-secondary submit-post' + = render 'posts/validation', site: site, submitting: { id: submitting }, invalid: { id: invalid } diff --git a/app/views/posts/_validation.haml b/app/views/posts/_validation.haml new file mode 100644 index 00000000..c28a743a --- /dev/null +++ b/app/views/posts/_validation.haml @@ -0,0 +1,16 @@ +- invalid = site.config.fetch('invalid', t('.invalid')) +- submitting = site.config.fetch('submitting', t('.submitting')) +- %i[invalid submitting].each do |key| + - local_assigns[key] ||= {} + - local_assigns[key][:data] ||= {} + - local_assigns[key][:data][:target] ||= "form-validation.#{key}" + - local_assigns[key][:data][:action] ||= 'notification:show@window->notification#show' + - local_assigns[key][:data][:controller] ||= 'notification' + - local_assigns[key][:data][:'notification-hide-class'] ||= 'hide' + - local_assigns[key][:data][:'notification-show-class'] ||= 'show' + +.d-flex.flex-column + = render 'bootstrap/alert', class: 'm-0 d-none fade', **local_assigns[:invalid] do + = invalid + = render 'bootstrap/alert', class: 'm-0 d-none fade', **local_assigns[:submitting] do + = submitting diff --git a/config/locales/en.yml b/config/locales/en.yml index 3815f5de..c0ad36d2 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -719,8 +719,9 @@ en: submit: save: 'Save' save_draft: 'Save as draft' - invalid_help: "Some fields need attention! Please search for the fields marked as not valid." - submitting_help: "Saving changes, please wait..." + validation: + invalid: "Some fields need attention! Please search for the fields marked as not valid." + submitting: "Saving changes, please wait..." new_array: remove: "Remove" attributes: diff --git a/config/locales/es.yml b/config/locales/es.yml index 7b981b1d..1fd397e4 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -727,8 +727,9 @@ es: submit: save: 'Guardar' save_draft: 'Guardar como borrador' - invalid_help: "¡Te falta completar algunos campos! Busca los que estén marcados como no válidos." - submitting_help: "Guardando, por favor espera..." + validation: + invalid: "¡Te falta completar algunos campos! Busca los que estén marcados como no válidos." + submitting: "Guardando, por favor espera..." new_array: remove: "Eliminar" attributes: @@ -770,6 +771,8 @@ es: edit: "Editar" new_predefined_array: edit: "Editar" + new_predefined_value: + edit: "Editar" new_array: edit: "Editar" required: "Seleccioná al menos una opción." From 798bb992dc41423b0241510d4614fb39ae7a609f Mon Sep 17 00:00:00 2001 From: f Date: Wed, 19 Jun 2024 18:20:05 -0300 Subject: [PATCH 557/699] feat: validar formularios htmx --- app/views/posts/_htmx_form.haml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/app/views/posts/_htmx_form.haml b/app/views/posts/_htmx_form.haml index f4f4a845..7a23445b 100644 --- a/app/views/posts/_htmx_form.haml +++ b/app/views/posts/_htmx_form.haml @@ -27,7 +27,12 @@ multipart: true, class: 'form post ', 'hx-swap': params.require(:swap), - 'hx-target': "##{params.require(:target)}" + 'hx-target': "##{params.require(:target)}", + 'hx-validate': true, + data: { + controller: 'form-validation', + action: 'form-validation#submit' + } } if post.new? From 34aa8822f29254e21bf316f092fe578a665367b0 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 19 Jun 2024 18:21:44 -0300 Subject: [PATCH 558/699] feat: avisar que se guardaron los cambios --- app/controllers/posts_controller.rb | 8 ++++++-- app/views/posts/_htmx_form.haml | 6 +++++- app/views/posts/attributes/_new_has_one.haml | 8 +++++++- config/locales/en.yml | 2 ++ config/locales/es.yml | 2 ++ 5 files changed, 22 insertions(+), 4 deletions(-) diff --git a/app/controllers/posts_controller.rb b/app/controllers/posts_controller.rb index 0f3c24d5..70ba2e54 100644 --- a/app/controllers/posts_controller.rb +++ b/app/controllers/posts_controller.rb @@ -128,7 +128,9 @@ class PostsController < ApplicationController # condiciones. if htmx? if post.persisted? - swap_modals + triggers = { 'notification:show' => { 'id' => params.permit(:saved).values.first } } + + swap_modals(triggers) @value = post.title.value @uuid = post.uuid.value @@ -169,7 +171,9 @@ class PostsController < ApplicationController if htmx? if post.persisted? - swap_modals + triggers = { 'notification:show' => params.permit(:saved).values.first } + + swap_modals(triggers) @value = post.title.value @uuid = post.uuid.value diff --git a/app/views/posts/_htmx_form.haml b/app/views/posts/_htmx_form.haml index 7a23445b..1a8c0597 100644 --- a/app/views/posts/_htmx_form.haml +++ b/app/views/posts/_htmx_form.haml @@ -31,7 +31,9 @@ 'hx-validate': true, data: { controller: 'form-validation', - action: 'form-validation#submit' + action: 'form-validation#submit', + 'form-validation-submitting-id-value': params.permit(:submitting).values.first, + 'form-validation-invalid-id-value': params.permit(:invalid).values.first, } } @@ -78,6 +80,8 @@ %input{ type: 'hidden', name: 'swap', value: params.require(:swap) } - if params[:inverse].present? %input{ type: 'hidden', name: 'inverse', value: params.require(:inverse) } + - if params[:saved].present? + %input{ type: 'hidden', name: 'saved', value: params.require(:saved) } = hidden_field_tag "#{base}[layout]", post.layout.name diff --git a/app/views/posts/attributes/_new_has_one.haml b/app/views/posts/attributes/_new_has_one.haml index 58e098b6..87ef0440 100644 --- a/app/views/posts/attributes/_new_has_one.haml +++ b/app/views/posts/attributes/_new_has_one.haml @@ -19,6 +19,9 @@ post_form_loaded_id = random_id value_list_id = random_id layout = metadata.filter[:layout] + invalid_id = random_id + submitting_id = random_id + saved_id = random_id %div{ data: { controller: 'modal' }} .form-group @@ -43,10 +46,13 @@ = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' } do - content_for :"#{id}_body" do -# @todo ocultar el modal después de guardar - .placeholder-glow{ 'hx-get': site_posts_form_path(site, layout: layout, base: id, name: name, form: form_id, swap: 'innerHTML', target: target_id, attribute: 'new_has_one', hide: modal_id, uuid: metadata.value), 'hx-trigger': 'load' } + .placeholder-glow{ 'hx-get': site_posts_form_path(site, layout: layout, base: id, name: name, form: form_id, swap: 'innerHTML', target: target_id, attribute: 'new_has_one', hide: modal_id, uuid: metadata.value, invalid: invalid_id, submitting: submitting_id, saved: saved_id), 'hx-trigger': 'load' } %span.placeholder.w-100.h-100 - content_for :"#{id}_footer" do + = render 'posts/validation', site: site, invalid: { id: invalid_id }, submitting: { id: submitting_id } + = render 'bootstrap/alert', class: 'm-0 d-none fade', id: saved_id, data: { controller: 'notification', action: 'notification:show@window->notification#show', 'notification-hide-class': 'hide', 'notification-show-class': 'show' } do + = t('.saved') = render 'bootstrap/btn', form: form_id, content: t('.save'), type: 'submit', class: 'm-0 mt-1 mr-1' = render 'bootstrap/btn', content: t('.close'), action: 'modal#hide', class: 'm-0 mt-1 mr-1' diff --git a/config/locales/en.yml b/config/locales/en.yml index c0ad36d2..52f002e6 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -965,3 +965,5 @@ en: save: "Save" card: edit: "Edit" + alert: + saved: "Changes were saved!" diff --git a/config/locales/es.yml b/config/locales/es.yml index 1fd397e4..8fe09758 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -975,3 +975,5 @@ es: save: "Guardar" card: edit: "Editar" + alert: + saved: "¡Cambios guardados!" From bbe43eeec76537d3ceafec3a95bee4a3f0d7c809 Mon Sep 17 00:00:00 2001 From: fauno Date: Wed, 19 Jun 2024 21:28:02 +0000 Subject: [PATCH 559/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- ...53983a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css | 3 --- ...83a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css.gz | 3 --- ...43e474eabb5a95f8ff3c009c2ac8275313e1aa472ddfd0c419380b.css | 3 +++ ...474eabb5a95f8ff3c009c2ac8275313e1aa472ddfd0c419380b.css.gz | 3 +++ public/packs/js/application-d573b7528cffef14c4cf.js | 3 +++ ...SE.txt => application-d573b7528cffef14c4cf.js.LICENSE.txt} | 0 public/packs/js/application-d573b7528cffef14c4cf.js.br | 3 +++ public/packs/js/application-d573b7528cffef14c4cf.js.gz | 3 +++ public/packs/js/application-d573b7528cffef14c4cf.js.map | 3 +++ public/packs/js/application-d573b7528cffef14c4cf.js.map.br | 3 +++ public/packs/js/application-d573b7528cffef14c4cf.js.map.gz | 3 +++ public/packs/js/application-d8649369b4658fe3148a.js | 3 --- public/packs/js/application-d8649369b4658fe3148a.js.br | 3 --- public/packs/js/application-d8649369b4658fe3148a.js.gz | 3 --- public/packs/js/application-d8649369b4658fe3148a.js.map | 3 --- public/packs/js/application-d8649369b4658fe3148a.js.map.br | 3 --- public/packs/js/application-d8649369b4658fe3148a.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 2 +- 21 files changed, 29 insertions(+), 29 deletions(-) delete mode 100644 public/assets/application-67b9a7558953983a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css delete mode 100644 public/assets/application-67b9a7558953983a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css.gz create mode 100644 public/assets/application-ab39e7743243e474eabb5a95f8ff3c009c2ac8275313e1aa472ddfd0c419380b.css create mode 100644 public/assets/application-ab39e7743243e474eabb5a95f8ff3c009c2ac8275313e1aa472ddfd0c419380b.css.gz create mode 100644 public/packs/js/application-d573b7528cffef14c4cf.js rename public/packs/js/{application-d8649369b4658fe3148a.js.LICENSE.txt => application-d573b7528cffef14c4cf.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-d573b7528cffef14c4cf.js.br create mode 100644 public/packs/js/application-d573b7528cffef14c4cf.js.gz create mode 100644 public/packs/js/application-d573b7528cffef14c4cf.js.map create mode 100644 public/packs/js/application-d573b7528cffef14c4cf.js.map.br create mode 100644 public/packs/js/application-d573b7528cffef14c4cf.js.map.gz delete mode 100644 public/packs/js/application-d8649369b4658fe3148a.js delete mode 100644 public/packs/js/application-d8649369b4658fe3148a.js.br delete mode 100644 public/packs/js/application-d8649369b4658fe3148a.js.gz delete mode 100644 public/packs/js/application-d8649369b4658fe3148a.js.map delete mode 100644 public/packs/js/application-d8649369b4658fe3148a.js.map.br delete mode 100644 public/packs/js/application-d8649369b4658fe3148a.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index df41c5d7..ead43f59 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a6c05f5d898a8d6f41eed350835dd7961f1119a8aba2eaf5315ab709db6cb730 +oid sha256:20f05cb9b04f062691b851b299152cf2c6541500794b76d0b767a69b147fe139 size 11449 diff --git a/public/assets/application-67b9a7558953983a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css b/public/assets/application-67b9a7558953983a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css deleted file mode 100644 index c166a0c0..00000000 --- a/public/assets/application-67b9a7558953983a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c6323ffaf488b428e96d01b12f09286b150f7b7379f5671e8e58a179a853cc2d -size 239444 diff --git a/public/assets/application-67b9a7558953983a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css.gz b/public/assets/application-67b9a7558953983a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css.gz deleted file mode 100644 index e39b89c5..00000000 --- a/public/assets/application-67b9a7558953983a7e85856577c896f05d5b498295d8719fb1409705f8c0c7fa.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:281b8c0fa7f249b2c71797f6492b6a1fc618b294e4fcaab4e4364e81a3d48459 -size 33255 diff --git a/public/assets/application-ab39e7743243e474eabb5a95f8ff3c009c2ac8275313e1aa472ddfd0c419380b.css b/public/assets/application-ab39e7743243e474eabb5a95f8ff3c009c2ac8275313e1aa472ddfd0c419380b.css new file mode 100644 index 00000000..7e9caa1b --- /dev/null +++ b/public/assets/application-ab39e7743243e474eabb5a95f8ff3c009c2ac8275313e1aa472ddfd0c419380b.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:196896e7c9c709c8864d2e2241cb87ab9ada0f6f6c37a5bb35042c72d2bb0876 +size 245181 diff --git a/public/assets/application-ab39e7743243e474eabb5a95f8ff3c009c2ac8275313e1aa472ddfd0c419380b.css.gz b/public/assets/application-ab39e7743243e474eabb5a95f8ff3c009c2ac8275313e1aa472ddfd0c419380b.css.gz new file mode 100644 index 00000000..74f83174 --- /dev/null +++ b/public/assets/application-ab39e7743243e474eabb5a95f8ff3c009c2ac8275313e1aa472ddfd0c419380b.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:516b70b51da7677a149123b3c7b57794af0b962ba9a81e4b54f7cb010611d0bc +size 34375 diff --git a/public/packs/js/application-d573b7528cffef14c4cf.js b/public/packs/js/application-d573b7528cffef14c4cf.js new file mode 100644 index 00000000..1f57e27f --- /dev/null +++ b/public/packs/js/application-d573b7528cffef14c4cf.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d71bc78bbe7ba4bd777f7c88143882128dbce7bb6c7619b42c1ece4737e6d87 +size 1667096 diff --git a/public/packs/js/application-d8649369b4658fe3148a.js.LICENSE.txt b/public/packs/js/application-d573b7528cffef14c4cf.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-d8649369b4658fe3148a.js.LICENSE.txt rename to public/packs/js/application-d573b7528cffef14c4cf.js.LICENSE.txt diff --git a/public/packs/js/application-d573b7528cffef14c4cf.js.br b/public/packs/js/application-d573b7528cffef14c4cf.js.br new file mode 100644 index 00000000..af5aa620 --- /dev/null +++ b/public/packs/js/application-d573b7528cffef14c4cf.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84752d276029bbab84dde088d56859a64d42bf0fe0e6fa135eb21243f5b73448 +size 368137 diff --git a/public/packs/js/application-d573b7528cffef14c4cf.js.gz b/public/packs/js/application-d573b7528cffef14c4cf.js.gz new file mode 100644 index 00000000..9b4b9fcd --- /dev/null +++ b/public/packs/js/application-d573b7528cffef14c4cf.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d71b880ec26d2cf67288c64ece9840e4b2f9620af9dc235bcfbd8696a89dbbd +size 485439 diff --git a/public/packs/js/application-d573b7528cffef14c4cf.js.map b/public/packs/js/application-d573b7528cffef14c4cf.js.map new file mode 100644 index 00000000..ce1f69c0 --- /dev/null +++ b/public/packs/js/application-d573b7528cffef14c4cf.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:202ddc669cbbd1d1dd75e904e8ad0bddf91241012dac0240572013f967c49806 +size 6404850 diff --git a/public/packs/js/application-d573b7528cffef14c4cf.js.map.br b/public/packs/js/application-d573b7528cffef14c4cf.js.map.br new file mode 100644 index 00000000..1895c2ce --- /dev/null +++ b/public/packs/js/application-d573b7528cffef14c4cf.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8b2e92d704a8ff5a7c5a3ea26dbe62319703990216b12e153c4f7d1a684c951 +size 1380011 diff --git a/public/packs/js/application-d573b7528cffef14c4cf.js.map.gz b/public/packs/js/application-d573b7528cffef14c4cf.js.map.gz new file mode 100644 index 00000000..6423071a --- /dev/null +++ b/public/packs/js/application-d573b7528cffef14c4cf.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:230b84079cd1fbb599c0a611adb22d9bf8c46429c118e89942681b15f29e0278 +size 1705536 diff --git a/public/packs/js/application-d8649369b4658fe3148a.js b/public/packs/js/application-d8649369b4658fe3148a.js deleted file mode 100644 index 548cec12..00000000 --- a/public/packs/js/application-d8649369b4658fe3148a.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:efe9c4e3fe74d6b1a95b7c6bb29326eb4e673a6697f245146652a5d76b76c1f9 -size 1663685 diff --git a/public/packs/js/application-d8649369b4658fe3148a.js.br b/public/packs/js/application-d8649369b4658fe3148a.js.br deleted file mode 100644 index 8aa80d90..00000000 --- a/public/packs/js/application-d8649369b4658fe3148a.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:51f5b105d622b6f38f1931f7ccef110c668f0c3bd78f09bf20574f38631c6909 -size 368228 diff --git a/public/packs/js/application-d8649369b4658fe3148a.js.gz b/public/packs/js/application-d8649369b4658fe3148a.js.gz deleted file mode 100644 index 290b396d..00000000 --- a/public/packs/js/application-d8649369b4658fe3148a.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9bafb1646736fb6a304511bfc5df2e043a9df03484743154c83e902bbe30649a -size 485148 diff --git a/public/packs/js/application-d8649369b4658fe3148a.js.map b/public/packs/js/application-d8649369b4658fe3148a.js.map deleted file mode 100644 index 94e5c1e0..00000000 --- a/public/packs/js/application-d8649369b4658fe3148a.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fd8c0e9d9c1fc67a7b1cdca4922d3a0e31c3b68e000efc1e9fb294e40c7d4437 -size 6402597 diff --git a/public/packs/js/application-d8649369b4658fe3148a.js.map.br b/public/packs/js/application-d8649369b4658fe3148a.js.map.br deleted file mode 100644 index 73771aeb..00000000 --- a/public/packs/js/application-d8649369b4658fe3148a.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0c04d4d176a989df9b12009535a956c8029f34f433cf15918cbd5ef2bd516ca6 -size 1379774 diff --git a/public/packs/js/application-d8649369b4658fe3148a.js.map.gz b/public/packs/js/application-d8649369b4658fe3148a.js.map.gz deleted file mode 100644 index b4d9bff1..00000000 --- a/public/packs/js/application-d8649369b4658fe3148a.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:280e81d8c3c74a126321924c006ab3a07da0e90a591c71383063327d7e9edc5b -size 1705124 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 75bee0ec..80b63963 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c589b57ad1d3624ac90fb2a9ddd0b1c1d019c470ef8e0d71836fd5f68ddfd5d5 +oid sha256:20476fc2be75cc26f613bdc8dc8242e734aeefb1d21faa528f4478a37a040bdc size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 3c57550b..6e53cc42 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f4124bc64cf48d9e0e9b5a98cd8ccf8264442ee00e0a1147b7b076ab89c825b4 -size 322 +oid sha256:4d2eeac61afd59c884c7cf08639eab534f128284a9e766a1d298f8461bd97d99 +size 319 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 7aaaea1e..4b691d11 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e0404498c5280a3e891c6f28e7f6a9e402d99ef626310ff0288f7a7f623e7ba4 +oid sha256:dae948ef8f1bf2be7629a596f16172eb6931b1491820a84c8706be4655889cc4 size 365 From 19e8933388e48b7d7b23ced66eebe646b765efe2 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 20 Jun 2024 16:15:33 -0300 Subject: [PATCH 560/699] feat: campos obligatorios --- app/views/posts/_required_checkbox.haml | 19 +++++++++++++++++++ app/views/posts/attributes/_new_array.haml | 8 ++++---- .../posts/attributes/_new_belongs_to.haml | 8 ++++++-- .../_new_has_and_belongs_to_many.haml | 11 ++++++++--- app/views/posts/attributes/_new_has_many.haml | 11 ++++++++--- .../attributes/_new_predefined_array.haml | 10 +++++++--- .../attributes/_new_predefined_value.haml | 8 ++++++-- 7 files changed, 58 insertions(+), 17 deletions(-) create mode 100644 app/views/posts/_required_checkbox.haml diff --git a/app/views/posts/_required_checkbox.haml b/app/views/posts/_required_checkbox.haml new file mode 100644 index 00000000..22f186a6 --- /dev/null +++ b/app/views/posts/_required_checkbox.haml @@ -0,0 +1,19 @@ +-# + Para el controlador required-checkbox necesitamos un checkbox oculto + que es obligatorio según si alguno de los checkboxes reales está + seleccionado o no. Al ser obligatorio, va a tener feedback de + validación. Sin embargo, como está oculto, no podemos mostrar el + mensaje de validación nativo del navegador. + + @param :required [Boolean] + @param :name [String,Symbol] + @param :initial [Boolean] + @param :feedback [String] + @param :type [String] + +- if required + - local_assigns[:feedback] ||= t('.required') + - local_assigns[:type] ||= 'checkbox' + + %input.form-control.d-none{ type: local_assigns[:type], name: name, data: { target: 'required-checkbox.required', action: 'invalid->required-checkbox#invalid' }, required: initial } + .invalid-feedback.mt-0= local_assigns[:feedback] diff --git a/app/views/posts/attributes/_new_array.haml b/app/views/posts/attributes/_new_array.haml index 86a8f275..e73560c8 100644 --- a/app/views/posts/attributes/_new_array.haml +++ b/app/views/posts/attributes/_new_array.haml @@ -4,8 +4,10 @@ id = id_for(base, attribute) name = "#{base}[#{attribute}][]" form_id = random_id + controllers = %w[modal array enter] + controllers << 'required-checkbox' if metadata.required -%div{ data: { controller: "modal array enter#{' required-checkbox' if metadata.required}", 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } +%div{ data: { controller: controllers.join(' '), 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } %template{ data: { target: 'array.placeholder' } } .col.mb-3{ 'aria-hidden': 'true' } %span.placeholder.w-100 @@ -18,9 +20,7 @@ .d-flex.align-items-center.justify-content-between %div = label_tag id, post_label_t(attribute, post: post), class: 'mb-0' - - if metadata.required - %input.form-control.d-none{ type: 'checkbox', name: name, data: { target: 'required-checkbox.required', action: 'invalid->required-checkbox#invalid' }, required: metadata.value.empty? } - .invalid-feedback.mt-0= t('.required') + = render 'posts/required_checkbox', required: metadata.required, name: name, initial: metadata.empty? = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' -# Mostramos la lista de valores actuales. diff --git a/app/views/posts/attributes/_new_belongs_to.haml b/app/views/posts/attributes/_new_belongs_to.haml index 5c8844a5..c39176e0 100644 --- a/app/views/posts/attributes/_new_belongs_to.haml +++ b/app/views/posts/attributes/_new_belongs_to.haml @@ -17,8 +17,10 @@ post_modal_id = random_id post_form_loaded_id = random_id value_list_id = random_id + controllers = %w[modal array] + controllers << 'required-checkbox' if metadata.required -%div{ id: modal_id, data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } +%div{ id: modal_id, data: { controller: controllers.join(' '), 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } %template{ data: { target: 'array.placeholder' } } .col.p-3{ 'aria-hidden': 'true' } %span.placeholder.w-100 @@ -26,7 +28,9 @@ .form-group = hidden_field_tag name, '' .d-flex.align-items-center.justify-content-between - = label_tag id, post_label_t(attribute, post: post) + %div + = label_tag id, post_label_t(attribute, post: post), class: 'mb-0' + = render 'posts/required_checkbox', required: metadata.required, name: name, initial: metadata.empty?, type: 'radio' = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' -# Mostramos la lista de valores actuales. diff --git a/app/views/posts/attributes/_new_has_and_belongs_to_many.haml b/app/views/posts/attributes/_new_has_and_belongs_to_many.haml index 8b615173..4ca444cf 100644 --- a/app/views/posts/attributes/_new_has_and_belongs_to_many.haml +++ b/app/views/posts/attributes/_new_has_and_belongs_to_many.haml @@ -17,8 +17,10 @@ post_modal_id = random_id post_form_loaded_id = random_id value_list_id = random_id + controllers = %w[modal array] + controllers << 'required-checkbox' if metadata.required -%div{ id: modal_id, data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } +%div{ id: modal_id, data: { controller: controllers.join(' '), 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } %template{ data: { target: 'array.placeholder' } } .col.p-3{ 'aria-hidden': 'true' } %span.placeholder.w-100 @@ -26,8 +28,11 @@ .form-group = hidden_field_tag name, '' .d-flex.align-items-center.justify-content-between - = label_tag id, post_label_t(attribute, post: post) + %div + = label_tag id, post_label_t(attribute, post: post) + = render 'posts/required_checkbox', required: metadata.required, name: name, initial: metadata.empty? = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' + -# Mostramos la lista de valores actuales. Al aceptar el modal, se vacía el listado y se completa en base a @@ -55,7 +60,7 @@ .form-group.mb-0{ id: value_list_id } - metadata.values.each_pair do |value, uuid| .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: uuid } } - = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: uuid, checked: metadata.value.include?(uuid), content: value + = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: uuid, checked: metadata.value.include?(uuid), content: value, data: { action: 'required-checkbox#change', target: 'required-checkbox.checkbox' } -# Según la definición del campo, si hay un filtro, tenemos que poder diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index d211d864..476f2c2f 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -17,8 +17,10 @@ post_modal_id = random_id post_form_loaded_id = random_id value_list_id = random_id + controllers = %w[modal array] + controllers << 'required-checkbox' if metadata.required -%div{ id: modal_id, data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } +%div{ id: modal_id, data: { controller: controllers.join(' '), 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_related_post_path(site) } } %template{ data: { target: 'array.placeholder' } } .col.p-3{ 'aria-hidden': 'true' } %span.placeholder.w-100 @@ -26,8 +28,11 @@ .form-group = hidden_field_tag name, '' .d-flex.align-items-center.justify-content-between - = label_tag id, post_label_t(attribute, post: post) + %div + = label_tag id, post_label_t(attribute, post: post) + = render 'posts/required_checkbox', required: metadata.required, name: name, initial: metadata.empty? = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' + -# Mostramos la lista de valores actuales. Al aceptar el modal, se vacía el listado y se completa en base a @@ -55,7 +60,7 @@ .form-group.mb-0{ id: value_list_id } - metadata.values.each_pair do |value, uuid| .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: uuid } } - = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: uuid, checked: metadata.value.include?(uuid), content: value + = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: uuid, checked: metadata.value.include?(uuid), content: value, data: { action: 'required-checkbox#change', target: 'required-checkbox.checkbox' } -# Según la definición del campo, si hay un filtro, tenemos que poder diff --git a/app/views/posts/attributes/_new_predefined_array.haml b/app/views/posts/attributes/_new_predefined_array.haml index ca0cdaf2..d5f2110e 100644 --- a/app/views/posts/attributes/_new_predefined_array.haml +++ b/app/views/posts/attributes/_new_predefined_array.haml @@ -6,8 +6,10 @@ id = id_for(base, attribute) name = "#{base}[#{attribute}][]" form_id = random_id + controllers = %w[modal array] + controllers << 'required-checkbox' if metadata.required -%div{ data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } +%div{ data: { controller: controllers.join(' '), 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } %template{ data: { target: 'array.placeholder' } } .col.mb-3{ 'aria-hidden': 'true' } %span.placeholder.w-100 @@ -15,7 +17,9 @@ .form-group = hidden_field_tag name, '' .d-flex.align-items-center.justify-content-between - = label_tag id, post_label_t(attribute, post: post) + %div + = label_tag id, post_label_t(attribute, post: post) + = render 'posts/required_checkbox', required: metadata.required, name: name, initial: metadata.empty? = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' -# Mostramos la lista de valores actuales. @@ -44,7 +48,7 @@ -# Eliminamos las tildes para poder buscar independientemente de cómo se escriba - metadata.values.each_pair do |value, key| .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: value } } - = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: key, checked: metadata.value.include?(key), content: value + = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: key, checked: metadata.value.include?(key), content: value, data: { action: 'required-checkbox#change', target: 'required-checkbox.checkbox' } - content_for :"#{id}_footer" do -# Alinear los botones a la derecha diff --git a/app/views/posts/attributes/_new_predefined_value.haml b/app/views/posts/attributes/_new_predefined_value.haml index ae04fd0b..dad716b0 100644 --- a/app/views/posts/attributes/_new_predefined_value.haml +++ b/app/views/posts/attributes/_new_predefined_value.haml @@ -17,8 +17,10 @@ post_modal_id = random_id post_form_loaded_id = random_id value_list_id = random_id + controllers = %w[modal array] + controllers << 'required-checkbox' if metadata.required -%div{ id: modal_id, data: { controller: 'modal array', 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } +%div{ id: modal_id, data: { controller: controllers.join(' '), 'array-original-value': metadata.value.to_json, 'array-new-array-value': site_posts_new_array_value_path(site) } } %template{ data: { target: 'array.placeholder' } } .col.p-3{ 'aria-hidden': 'true' } %span.placeholder.w-100 @@ -26,7 +28,9 @@ .form-group = hidden_field_tag name, '' .d-flex.align-items-center.justify-content-between - = label_tag id, post_label_t(attribute, post: post) + %div + = label_tag id, post_label_t(attribute, post: post) + = render 'posts/required_checkbox', required: metadata.required, name: name, initial: metadata.empty?, type: 'radio' = render 'bootstrap/btn', content: t('.edit'), action: 'modal#show' -# Mostramos la lista de valores actuales. From 270684485c43f614f2c4dd87bc14b421882598f3 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 20 Jun 2024 16:19:40 -0300 Subject: [PATCH 561/699] fix: no ordenar los valores --- app/views/posts/attributes/_new_array.haml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/views/posts/attributes/_new_array.haml b/app/views/posts/attributes/_new_array.haml index e73560c8..b8607627 100644 --- a/app/views/posts/attributes/_new_array.haml +++ b/app/views/posts/attributes/_new_array.haml @@ -34,7 +34,7 @@ Para poder cancelar, mantenemos el estado original y desactivamos o activamos los ítemes según estén incluidos en esa lista o no. %ul.placeholder-glow{ data: { target: 'array.current' } } - - metadata.value.sort_by(&:remove_diacritics).each do |value| + - metadata.value.each do |value| = render 'posts/new_array_value', value: value = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'], keydown_actions: %w[keydown->array#cancelWithEscape] do @@ -46,8 +46,8 @@ - content_for :"#{id}_body" do .form-group.mb-0{ id: "#{id}_body" } - -# Eliminamos las tildes para poder buscar independientemente de cómo se escriba - - metadata.values.sort_by(&:remove_diacritics).each do |value| + -# Eliminamos las tildes para poder buscar independientemente de cómo se escriba. + - metadata.values.each do |value| .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: value } } = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: value, checked: metadata.value.include?(value), content: value, data: { action: 'required-checkbox#change', target: 'required-checkbox.checkbox' } From be59478c02b4101988da2392e2c3b0b7d04d792a Mon Sep 17 00:00:00 2001 From: f Date: Mon, 24 Jun 2024 17:31:29 -0300 Subject: [PATCH 562/699] =?UTF-8?q?fix:=20no=20enviar=20el=20formulario=20?= =?UTF-8?q?si=20tiene=20alg=C3=BAn=20atributo=20de=20htmx?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/javascript/controllers/form_validation_controller.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/javascript/controllers/form_validation_controller.js b/app/javascript/controllers/form_validation_controller.js index 85e7bb86..862ca9f3 100644 --- a/app/javascript/controllers/form_validation_controller.js +++ b/app/javascript/controllers/form_validation_controller.js @@ -33,7 +33,7 @@ export default class extends Controller { if (this.element.reportValidity()) { this.element.classList.remove("was-validated"); - if (!this.element.hasAttribute("hx-post")) this.element.submit(); + if (!this.element.getAttributeNames().some(x => x.startsWith("hx-"))) this.element.submit(); window.dispatchEvent(new CustomEvent("notification:show", { detail: { id: this.submittingIdValue } })); } else { From 3842ded86ec8b02ae830b729e3e57f888d0c43c6 Mon Sep 17 00:00:00 2001 From: fauno Date: Mon, 24 Jun 2024 20:38:08 +0000 Subject: [PATCH 563/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-88e1a9a8d0c77616975f.js | 3 +++ ...SE.txt => application-88e1a9a8d0c77616975f.js.LICENSE.txt} | 0 public/packs/js/application-88e1a9a8d0c77616975f.js.br | 3 +++ public/packs/js/application-88e1a9a8d0c77616975f.js.gz | 3 +++ public/packs/js/application-88e1a9a8d0c77616975f.js.map | 3 +++ public/packs/js/application-88e1a9a8d0c77616975f.js.map.br | 3 +++ public/packs/js/application-88e1a9a8d0c77616975f.js.map.gz | 3 +++ public/packs/js/application-d573b7528cffef14c4cf.js | 3 --- public/packs/js/application-d573b7528cffef14c4cf.js.br | 3 --- public/packs/js/application-d573b7528cffef14c4cf.js.gz | 3 --- public/packs/js/application-d573b7528cffef14c4cf.js.map | 3 --- public/packs/js/application-d573b7528cffef14c4cf.js.map.br | 3 --- public/packs/js/application-d573b7528cffef14c4cf.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 17 files changed, 24 insertions(+), 24 deletions(-) create mode 100644 public/packs/js/application-88e1a9a8d0c77616975f.js rename public/packs/js/{application-d573b7528cffef14c4cf.js.LICENSE.txt => application-88e1a9a8d0c77616975f.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-88e1a9a8d0c77616975f.js.br create mode 100644 public/packs/js/application-88e1a9a8d0c77616975f.js.gz create mode 100644 public/packs/js/application-88e1a9a8d0c77616975f.js.map create mode 100644 public/packs/js/application-88e1a9a8d0c77616975f.js.map.br create mode 100644 public/packs/js/application-88e1a9a8d0c77616975f.js.map.gz delete mode 100644 public/packs/js/application-d573b7528cffef14c4cf.js delete mode 100644 public/packs/js/application-d573b7528cffef14c4cf.js.br delete mode 100644 public/packs/js/application-d573b7528cffef14c4cf.js.gz delete mode 100644 public/packs/js/application-d573b7528cffef14c4cf.js.map delete mode 100644 public/packs/js/application-d573b7528cffef14c4cf.js.map.br delete mode 100644 public/packs/js/application-d573b7528cffef14c4cf.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index ead43f59..d794ff0f 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:20f05cb9b04f062691b851b299152cf2c6541500794b76d0b767a69b147fe139 +oid sha256:114860e331e588c140a2ebe166d2b36205415af8f6176e9c67403df388d8d7a6 size 11449 diff --git a/public/packs/js/application-88e1a9a8d0c77616975f.js b/public/packs/js/application-88e1a9a8d0c77616975f.js new file mode 100644 index 00000000..3e1309f2 --- /dev/null +++ b/public/packs/js/application-88e1a9a8d0c77616975f.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9aa9a0f129aede90850be6d54c402f3bd47c21dcd664cbfef0f88b6f5fdb2e38 +size 1667140 diff --git a/public/packs/js/application-d573b7528cffef14c4cf.js.LICENSE.txt b/public/packs/js/application-88e1a9a8d0c77616975f.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-d573b7528cffef14c4cf.js.LICENSE.txt rename to public/packs/js/application-88e1a9a8d0c77616975f.js.LICENSE.txt diff --git a/public/packs/js/application-88e1a9a8d0c77616975f.js.br b/public/packs/js/application-88e1a9a8d0c77616975f.js.br new file mode 100644 index 00000000..83244462 --- /dev/null +++ b/public/packs/js/application-88e1a9a8d0c77616975f.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:984c1edc88d2505819217b75ef3af7b10ed5adf70533682829506654bb146de8 +size 368277 diff --git a/public/packs/js/application-88e1a9a8d0c77616975f.js.gz b/public/packs/js/application-88e1a9a8d0c77616975f.js.gz new file mode 100644 index 00000000..5a705f96 --- /dev/null +++ b/public/packs/js/application-88e1a9a8d0c77616975f.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55ad02fca58035bd7181edb4a5701148e808b191241fa282dac0d83cb95520ab +size 485451 diff --git a/public/packs/js/application-88e1a9a8d0c77616975f.js.map b/public/packs/js/application-88e1a9a8d0c77616975f.js.map new file mode 100644 index 00000000..83016169 --- /dev/null +++ b/public/packs/js/application-88e1a9a8d0c77616975f.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:532e5b411c75cb78b8f6ad01745a5bdc60b417f193b5f2e323ddc0cc3898e67d +size 6404940 diff --git a/public/packs/js/application-88e1a9a8d0c77616975f.js.map.br b/public/packs/js/application-88e1a9a8d0c77616975f.js.map.br new file mode 100644 index 00000000..04ac5e95 --- /dev/null +++ b/public/packs/js/application-88e1a9a8d0c77616975f.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc2f3fce9c065124be844197df6c6eabab63d24ea8597ecc4aab6762c5a8a3f5 +size 1379622 diff --git a/public/packs/js/application-88e1a9a8d0c77616975f.js.map.gz b/public/packs/js/application-88e1a9a8d0c77616975f.js.map.gz new file mode 100644 index 00000000..87a57f68 --- /dev/null +++ b/public/packs/js/application-88e1a9a8d0c77616975f.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:669ee18e70c486587c6c2adb2b5481527c14e110316af6f3bd5c64982f63d40b +size 1705685 diff --git a/public/packs/js/application-d573b7528cffef14c4cf.js b/public/packs/js/application-d573b7528cffef14c4cf.js deleted file mode 100644 index 1f57e27f..00000000 --- a/public/packs/js/application-d573b7528cffef14c4cf.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1d71bc78bbe7ba4bd777f7c88143882128dbce7bb6c7619b42c1ece4737e6d87 -size 1667096 diff --git a/public/packs/js/application-d573b7528cffef14c4cf.js.br b/public/packs/js/application-d573b7528cffef14c4cf.js.br deleted file mode 100644 index af5aa620..00000000 --- a/public/packs/js/application-d573b7528cffef14c4cf.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:84752d276029bbab84dde088d56859a64d42bf0fe0e6fa135eb21243f5b73448 -size 368137 diff --git a/public/packs/js/application-d573b7528cffef14c4cf.js.gz b/public/packs/js/application-d573b7528cffef14c4cf.js.gz deleted file mode 100644 index 9b4b9fcd..00000000 --- a/public/packs/js/application-d573b7528cffef14c4cf.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:7d71b880ec26d2cf67288c64ece9840e4b2f9620af9dc235bcfbd8696a89dbbd -size 485439 diff --git a/public/packs/js/application-d573b7528cffef14c4cf.js.map b/public/packs/js/application-d573b7528cffef14c4cf.js.map deleted file mode 100644 index ce1f69c0..00000000 --- a/public/packs/js/application-d573b7528cffef14c4cf.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:202ddc669cbbd1d1dd75e904e8ad0bddf91241012dac0240572013f967c49806 -size 6404850 diff --git a/public/packs/js/application-d573b7528cffef14c4cf.js.map.br b/public/packs/js/application-d573b7528cffef14c4cf.js.map.br deleted file mode 100644 index 1895c2ce..00000000 --- a/public/packs/js/application-d573b7528cffef14c4cf.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e8b2e92d704a8ff5a7c5a3ea26dbe62319703990216b12e153c4f7d1a684c951 -size 1380011 diff --git a/public/packs/js/application-d573b7528cffef14c4cf.js.map.gz b/public/packs/js/application-d573b7528cffef14c4cf.js.map.gz deleted file mode 100644 index 6423071a..00000000 --- a/public/packs/js/application-d573b7528cffef14c4cf.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:230b84079cd1fbb599c0a611adb22d9bf8c46429c118e89942681b15f29e0278 -size 1705536 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 80b63963..8c333078 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:20476fc2be75cc26f613bdc8dc8242e734aeefb1d21faa528f4478a37a040bdc +oid sha256:0c04aa5e588c74ece6df7aa7bac007b038e69cdb8f5854606e8dbfc7dcd0701e size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 6e53cc42..87152897 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4d2eeac61afd59c884c7cf08639eab534f128284a9e766a1d298f8461bd97d99 -size 319 +oid sha256:85048cbbf1cff846f1f2993c237e5a1b209c24fabcd481cb2cef556f77f174e9 +size 321 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 4b691d11..a7ff0bef 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dae948ef8f1bf2be7629a596f16172eb6931b1491820a84c8706be4655889cc4 -size 365 +oid sha256:5ec66353603e23519cb4874bb1cbc76ea4592cc54ef88fe1dc1e13f252bcda7b +size 364 From ce3ab24dc09c73d3aa096bd724e27f4d1e255dab Mon Sep 17 00:00:00 2001 From: f Date: Mon, 24 Jun 2024 17:47:08 -0300 Subject: [PATCH 564/699] =?UTF-8?q?fixup!=20fix:=20no=20enviar=20el=20form?= =?UTF-8?q?ulario=20si=20tiene=20alg=C3=BAn=20atributo=20de=20htmx?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/javascript/controllers/form_validation_controller.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/javascript/controllers/form_validation_controller.js b/app/javascript/controllers/form_validation_controller.js index 862ca9f3..8756e272 100644 --- a/app/javascript/controllers/form_validation_controller.js +++ b/app/javascript/controllers/form_validation_controller.js @@ -33,7 +33,7 @@ export default class extends Controller { if (this.element.reportValidity()) { this.element.classList.remove("was-validated"); - if (!this.element.getAttributeNames().some(x => x.startsWith("hx-"))) this.element.submit(); + if (this.element.getAttributeNames().some(x => x.startsWith("hx-"))) this.element.submit(); window.dispatchEvent(new CustomEvent("notification:show", { detail: { id: this.submittingIdValue } })); } else { From 6e5e47ee4da426244e1653a4ef8b2e72285c553a Mon Sep 17 00:00:00 2001 From: f Date: Mon, 24 Jun 2024 17:52:05 -0300 Subject: [PATCH 565/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- .../{application-e0d66cef.css => application-5688882d.css} | 0 ...pplication-e0d66cef.css.br => application-5688882d.css.br} | 0 ...pplication-e0d66cef.css.gz => application-5688882d.css.gz} | 0 public/packs/js/application-35733213a92dcda6eda6.js | 3 +++ ...SE.txt => application-35733213a92dcda6eda6.js.LICENSE.txt} | 0 public/packs/js/application-35733213a92dcda6eda6.js.br | 3 +++ public/packs/js/application-35733213a92dcda6eda6.js.gz | 3 +++ public/packs/js/application-35733213a92dcda6eda6.js.map | 3 +++ public/packs/js/application-35733213a92dcda6eda6.js.map.br | 3 +++ public/packs/js/application-35733213a92dcda6eda6.js.map.gz | 3 +++ public/packs/js/application-88e1a9a8d0c77616975f.js | 3 --- public/packs/js/application-88e1a9a8d0c77616975f.js.br | 3 --- public/packs/js/application-88e1a9a8d0c77616975f.js.gz | 3 --- public/packs/js/application-88e1a9a8d0c77616975f.js.map | 3 --- public/packs/js/application-88e1a9a8d0c77616975f.js.map.br | 3 --- public/packs/js/application-88e1a9a8d0c77616975f.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 20 files changed, 24 insertions(+), 24 deletions(-) rename public/packs/css/{application-e0d66cef.css => application-5688882d.css} (100%) rename public/packs/css/{application-e0d66cef.css.br => application-5688882d.css.br} (100%) rename public/packs/css/{application-e0d66cef.css.gz => application-5688882d.css.gz} (100%) create mode 100644 public/packs/js/application-35733213a92dcda6eda6.js rename public/packs/js/{application-88e1a9a8d0c77616975f.js.LICENSE.txt => application-35733213a92dcda6eda6.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-35733213a92dcda6eda6.js.br create mode 100644 public/packs/js/application-35733213a92dcda6eda6.js.gz create mode 100644 public/packs/js/application-35733213a92dcda6eda6.js.map create mode 100644 public/packs/js/application-35733213a92dcda6eda6.js.map.br create mode 100644 public/packs/js/application-35733213a92dcda6eda6.js.map.gz delete mode 100644 public/packs/js/application-88e1a9a8d0c77616975f.js delete mode 100644 public/packs/js/application-88e1a9a8d0c77616975f.js.br delete mode 100644 public/packs/js/application-88e1a9a8d0c77616975f.js.gz delete mode 100644 public/packs/js/application-88e1a9a8d0c77616975f.js.map delete mode 100644 public/packs/js/application-88e1a9a8d0c77616975f.js.map.br delete mode 100644 public/packs/js/application-88e1a9a8d0c77616975f.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index d794ff0f..6837438f 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:114860e331e588c140a2ebe166d2b36205415af8f6176e9c67403df388d8d7a6 +oid sha256:2111b7c8517a7c3a68cae1659e0d30e8c1baffb06e02c55abab444722f8260dc size 11449 diff --git a/public/packs/css/application-e0d66cef.css b/public/packs/css/application-5688882d.css similarity index 100% rename from public/packs/css/application-e0d66cef.css rename to public/packs/css/application-5688882d.css diff --git a/public/packs/css/application-e0d66cef.css.br b/public/packs/css/application-5688882d.css.br similarity index 100% rename from public/packs/css/application-e0d66cef.css.br rename to public/packs/css/application-5688882d.css.br diff --git a/public/packs/css/application-e0d66cef.css.gz b/public/packs/css/application-5688882d.css.gz similarity index 100% rename from public/packs/css/application-e0d66cef.css.gz rename to public/packs/css/application-5688882d.css.gz diff --git a/public/packs/js/application-35733213a92dcda6eda6.js b/public/packs/js/application-35733213a92dcda6eda6.js new file mode 100644 index 00000000..acf7623d --- /dev/null +++ b/public/packs/js/application-35733213a92dcda6eda6.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb35b4faa427a7b7662c1e69b1b84b10b8c63a25b0ce85f112350fe34dea5569 +size 1667140 diff --git a/public/packs/js/application-88e1a9a8d0c77616975f.js.LICENSE.txt b/public/packs/js/application-35733213a92dcda6eda6.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-88e1a9a8d0c77616975f.js.LICENSE.txt rename to public/packs/js/application-35733213a92dcda6eda6.js.LICENSE.txt diff --git a/public/packs/js/application-35733213a92dcda6eda6.js.br b/public/packs/js/application-35733213a92dcda6eda6.js.br new file mode 100644 index 00000000..dc3f03a0 --- /dev/null +++ b/public/packs/js/application-35733213a92dcda6eda6.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18bc7eb4a956f79b20270b8fe77c856348c835f2791ff0bd5992b509f558d922 +size 368231 diff --git a/public/packs/js/application-35733213a92dcda6eda6.js.gz b/public/packs/js/application-35733213a92dcda6eda6.js.gz new file mode 100644 index 00000000..f255a6fc --- /dev/null +++ b/public/packs/js/application-35733213a92dcda6eda6.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:064e933c79a242fc8d0ed4ecd974e8a8acfbfc12ad38273385de6f4b0083dc5a +size 485447 diff --git a/public/packs/js/application-35733213a92dcda6eda6.js.map b/public/packs/js/application-35733213a92dcda6eda6.js.map new file mode 100644 index 00000000..8b194b71 --- /dev/null +++ b/public/packs/js/application-35733213a92dcda6eda6.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71190647721ce9be789ad2af7411983d97ea687c8af228ecc5af6f2a352ed283 +size 6380837 diff --git a/public/packs/js/application-35733213a92dcda6eda6.js.map.br b/public/packs/js/application-35733213a92dcda6eda6.js.map.br new file mode 100644 index 00000000..973cdee8 --- /dev/null +++ b/public/packs/js/application-35733213a92dcda6eda6.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:952cc60a6746b6526bf0775ac7e4e48ba172f7f12e6859f0f8c1eac680987e91 +size 1376883 diff --git a/public/packs/js/application-35733213a92dcda6eda6.js.map.gz b/public/packs/js/application-35733213a92dcda6eda6.js.map.gz new file mode 100644 index 00000000..e182e976 --- /dev/null +++ b/public/packs/js/application-35733213a92dcda6eda6.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3dcd9b7397d582338b8359540e037cd3e6c4e3a734a5a24051da1dc829f0d935 +size 1700821 diff --git a/public/packs/js/application-88e1a9a8d0c77616975f.js b/public/packs/js/application-88e1a9a8d0c77616975f.js deleted file mode 100644 index 3e1309f2..00000000 --- a/public/packs/js/application-88e1a9a8d0c77616975f.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9aa9a0f129aede90850be6d54c402f3bd47c21dcd664cbfef0f88b6f5fdb2e38 -size 1667140 diff --git a/public/packs/js/application-88e1a9a8d0c77616975f.js.br b/public/packs/js/application-88e1a9a8d0c77616975f.js.br deleted file mode 100644 index 83244462..00000000 --- a/public/packs/js/application-88e1a9a8d0c77616975f.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:984c1edc88d2505819217b75ef3af7b10ed5adf70533682829506654bb146de8 -size 368277 diff --git a/public/packs/js/application-88e1a9a8d0c77616975f.js.gz b/public/packs/js/application-88e1a9a8d0c77616975f.js.gz deleted file mode 100644 index 5a705f96..00000000 --- a/public/packs/js/application-88e1a9a8d0c77616975f.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:55ad02fca58035bd7181edb4a5701148e808b191241fa282dac0d83cb95520ab -size 485451 diff --git a/public/packs/js/application-88e1a9a8d0c77616975f.js.map b/public/packs/js/application-88e1a9a8d0c77616975f.js.map deleted file mode 100644 index 83016169..00000000 --- a/public/packs/js/application-88e1a9a8d0c77616975f.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:532e5b411c75cb78b8f6ad01745a5bdc60b417f193b5f2e323ddc0cc3898e67d -size 6404940 diff --git a/public/packs/js/application-88e1a9a8d0c77616975f.js.map.br b/public/packs/js/application-88e1a9a8d0c77616975f.js.map.br deleted file mode 100644 index 04ac5e95..00000000 --- a/public/packs/js/application-88e1a9a8d0c77616975f.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fc2f3fce9c065124be844197df6c6eabab63d24ea8597ecc4aab6762c5a8a3f5 -size 1379622 diff --git a/public/packs/js/application-88e1a9a8d0c77616975f.js.map.gz b/public/packs/js/application-88e1a9a8d0c77616975f.js.map.gz deleted file mode 100644 index 87a57f68..00000000 --- a/public/packs/js/application-88e1a9a8d0c77616975f.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:669ee18e70c486587c6c2adb2b5481527c14e110316af6f3bd5c64982f63d40b -size 1705685 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 8c333078..b399e097 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0c04aa5e588c74ece6df7aa7bac007b038e69cdb8f5854606e8dbfc7dcd0701e +oid sha256:e7a27893f8cd76928d3b57a8ca848e81c8d7d2231f487a01ed972845d643d1f0 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 87152897..46cdb0eb 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:85048cbbf1cff846f1f2993c237e5a1b209c24fabcd481cb2cef556f77f174e9 -size 321 +oid sha256:0cb430fc88c7547579f9b6e36c86bb441d43272225ebaf8dace18612268e094a +size 328 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index a7ff0bef..993943a6 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:5ec66353603e23519cb4874bb1cbc76ea4592cc54ef88fe1dc1e13f252bcda7b -size 364 +oid sha256:e17bbbf75ec929ed520e12d16b373594cc4004752605c864a71d363e9ba2fde8 +size 365 From 99e965d4da09d108e0cb1c2d48f78135d2202248 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 25 Jun 2024 14:24:12 -0300 Subject: [PATCH 566/699] =?UTF-8?q?fixup!=20fixup!=20fix:=20no=20enviar=20?= =?UTF-8?q?el=20formulario=20si=20tiene=20alg=C3=BAn=20atributo=20de=20htm?= =?UTF-8?q?x?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/javascript/controllers/form_validation_controller.js | 8 +++++++- app/javascript/packs/application.js | 2 +- package.json | 2 +- yarn.lock | 8 ++++---- 4 files changed, 13 insertions(+), 7 deletions(-) diff --git a/app/javascript/controllers/form_validation_controller.js b/app/javascript/controllers/form_validation_controller.js index 8756e272..dd1a98ed 100644 --- a/app/javascript/controllers/form_validation_controller.js +++ b/app/javascript/controllers/form_validation_controller.js @@ -28,12 +28,16 @@ export default class extends Controller { } submit(event = undefined) { + if (this.submitting) return; + + this.submitting = true; + event?.preventDefault(); if (this.element.reportValidity()) { this.element.classList.remove("was-validated"); - if (this.element.getAttributeNames().some(x => x.startsWith("hx-"))) this.element.submit(); + if (!this.element.getAttributeNames().some(x => x.startsWith("hx-"))) this.element.submit(); window.dispatchEvent(new CustomEvent("notification:show", { detail: { id: this.submittingIdValue } })); } else { @@ -43,5 +47,7 @@ export default class extends Controller { window.dispatchEvent(new CustomEvent("notification:show", { detail: { id: this.invalidIdValue } })); } + + this.submitting = false; } } diff --git a/app/javascript/packs/application.js b/app/javascript/packs/application.js index dc87b1c3..a0f18024 100644 --- a/app/javascript/packs/application.js +++ b/app/javascript/packs/application.js @@ -41,5 +41,5 @@ Rails.start() Turbolinks.start() ActiveStorage.start() -window.htmx = require("@suttyweb/htmx.org/dist/htmx.js"); +window.htmx = require("@suttyweb/htmx.org/dist/htmx.cjs.js"); window.htmx.config.selfRequestsOnly = true; diff --git a/package.json b/package.json index 73cfd589..c5642236 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,7 @@ "@rails/ujs": "^6.1.3-1", "@rails/webpacker": "5.4.4", "@suttyweb/editor": "^0.1.29", - "@suttyweb/htmx.org": "^1.9.13", + "@suttyweb/htmx.org": "2.0.0", "babel-loader": "^8.2.2", "bs-custom-file-input": "^1.3.4", "chart.js": "^3.5.1", diff --git a/yarn.lock b/yarn.lock index d181bebe..45ceae0a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1984,10 +1984,10 @@ linkifyjs "^4.1.1" prosemirror-svelte-nodeview "^1.0.2" -"@suttyweb/htmx.org@^1.9.13": - version "1.9.13" - resolved "https://registry.yarnpkg.com/@suttyweb/htmx.org/-/htmx.org-1.9.13.tgz#bc67a5e2947d7cc125649b829610da8ee61f21af" - integrity sha512-/2x3AGXT2CFOmp8Nf59XY2brah5wSo4YvcctYA2zD4BByNft4XE0rUk4VM7TjPxR1LOzg6VK1crZmdiy3JyzxQ== +"@suttyweb/htmx.org@2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@suttyweb/htmx.org/-/htmx.org-2.0.0.tgz#44435d834d143ae9b60daa454f68f8e72e6ebd7f" + integrity sha512-EJk9s8judGLIZ6c9N779z91WHPIfAkwkVY5QF7WH2ZT2Kt03k/hAoy7P4NjYreFIQcIo8d+TU/CIhViCmB4c0Q== "@types/caseless@*": version "0.12.2" From ef5473da8266a56afd0792b30a23bcddec3b42b1 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 25 Jun 2024 14:41:49 -0300 Subject: [PATCH 567/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-35733213a92dcda6eda6.js | 3 --- public/packs/js/application-35733213a92dcda6eda6.js.br | 3 --- public/packs/js/application-35733213a92dcda6eda6.js.gz | 3 --- public/packs/js/application-35733213a92dcda6eda6.js.map | 3 --- public/packs/js/application-35733213a92dcda6eda6.js.map.br | 3 --- public/packs/js/application-35733213a92dcda6eda6.js.map.gz | 3 --- public/packs/js/application-ad620667f5fc36fddece.js | 3 +++ ...SE.txt => application-ad620667f5fc36fddece.js.LICENSE.txt} | 0 public/packs/js/application-ad620667f5fc36fddece.js.br | 3 +++ public/packs/js/application-ad620667f5fc36fddece.js.gz | 3 +++ public/packs/js/application-ad620667f5fc36fddece.js.map | 3 +++ public/packs/js/application-ad620667f5fc36fddece.js.map.br | 3 +++ public/packs/js/application-ad620667f5fc36fddece.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 17 files changed, 24 insertions(+), 24 deletions(-) delete mode 100644 public/packs/js/application-35733213a92dcda6eda6.js delete mode 100644 public/packs/js/application-35733213a92dcda6eda6.js.br delete mode 100644 public/packs/js/application-35733213a92dcda6eda6.js.gz delete mode 100644 public/packs/js/application-35733213a92dcda6eda6.js.map delete mode 100644 public/packs/js/application-35733213a92dcda6eda6.js.map.br delete mode 100644 public/packs/js/application-35733213a92dcda6eda6.js.map.gz create mode 100644 public/packs/js/application-ad620667f5fc36fddece.js rename public/packs/js/{application-35733213a92dcda6eda6.js.LICENSE.txt => application-ad620667f5fc36fddece.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.br create mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.gz create mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.map create mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.map.br create mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 6837438f..197fad94 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2111b7c8517a7c3a68cae1659e0d30e8c1baffb06e02c55abab444722f8260dc +oid sha256:1a29a6e9c3f33397fbfd987ae2a470bedc88a6bb872186cb53c2d0fc62c051e8 size 11449 diff --git a/public/packs/js/application-35733213a92dcda6eda6.js b/public/packs/js/application-35733213a92dcda6eda6.js deleted file mode 100644 index acf7623d..00000000 --- a/public/packs/js/application-35733213a92dcda6eda6.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:eb35b4faa427a7b7662c1e69b1b84b10b8c63a25b0ce85f112350fe34dea5569 -size 1667140 diff --git a/public/packs/js/application-35733213a92dcda6eda6.js.br b/public/packs/js/application-35733213a92dcda6eda6.js.br deleted file mode 100644 index dc3f03a0..00000000 --- a/public/packs/js/application-35733213a92dcda6eda6.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:18bc7eb4a956f79b20270b8fe77c856348c835f2791ff0bd5992b509f558d922 -size 368231 diff --git a/public/packs/js/application-35733213a92dcda6eda6.js.gz b/public/packs/js/application-35733213a92dcda6eda6.js.gz deleted file mode 100644 index f255a6fc..00000000 --- a/public/packs/js/application-35733213a92dcda6eda6.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:064e933c79a242fc8d0ed4ecd974e8a8acfbfc12ad38273385de6f4b0083dc5a -size 485447 diff --git a/public/packs/js/application-35733213a92dcda6eda6.js.map b/public/packs/js/application-35733213a92dcda6eda6.js.map deleted file mode 100644 index 8b194b71..00000000 --- a/public/packs/js/application-35733213a92dcda6eda6.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:71190647721ce9be789ad2af7411983d97ea687c8af228ecc5af6f2a352ed283 -size 6380837 diff --git a/public/packs/js/application-35733213a92dcda6eda6.js.map.br b/public/packs/js/application-35733213a92dcda6eda6.js.map.br deleted file mode 100644 index 973cdee8..00000000 --- a/public/packs/js/application-35733213a92dcda6eda6.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:952cc60a6746b6526bf0775ac7e4e48ba172f7f12e6859f0f8c1eac680987e91 -size 1376883 diff --git a/public/packs/js/application-35733213a92dcda6eda6.js.map.gz b/public/packs/js/application-35733213a92dcda6eda6.js.map.gz deleted file mode 100644 index e182e976..00000000 --- a/public/packs/js/application-35733213a92dcda6eda6.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3dcd9b7397d582338b8359540e037cd3e6c4e3a734a5a24051da1dc829f0d935 -size 1700821 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js b/public/packs/js/application-ad620667f5fc36fddece.js new file mode 100644 index 00000000..a70f96ac --- /dev/null +++ b/public/packs/js/application-ad620667f5fc36fddece.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24f23edd740148c5d214c4d0bc8dd7b5d3aa427d24015bfc613750ea6351534a +size 1669027 diff --git a/public/packs/js/application-35733213a92dcda6eda6.js.LICENSE.txt b/public/packs/js/application-ad620667f5fc36fddece.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-35733213a92dcda6eda6.js.LICENSE.txt rename to public/packs/js/application-ad620667f5fc36fddece.js.LICENSE.txt diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.br b/public/packs/js/application-ad620667f5fc36fddece.js.br new file mode 100644 index 00000000..3123a28e --- /dev/null +++ b/public/packs/js/application-ad620667f5fc36fddece.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b01dea0cdd9972d471b246d2646e1cca9397ef368b18d32e842407e5b10cbd7 +size 368539 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.gz b/public/packs/js/application-ad620667f5fc36fddece.js.gz new file mode 100644 index 00000000..f3b3a5ca --- /dev/null +++ b/public/packs/js/application-ad620667f5fc36fddece.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc2c74681ae3526bccf98d8ee6873c3f1fc4789c426542ee869369361d39aeec +size 485739 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.map b/public/packs/js/application-ad620667f5fc36fddece.js.map new file mode 100644 index 00000000..cf5f3864 --- /dev/null +++ b/public/packs/js/application-ad620667f5fc36fddece.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c19e48f790de355893180da4a3ff3d4c1b3355ed019078fff395849b310d4a86 +size 6413519 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.map.br b/public/packs/js/application-ad620667f5fc36fddece.js.map.br new file mode 100644 index 00000000..bd37a967 --- /dev/null +++ b/public/packs/js/application-ad620667f5fc36fddece.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:985e532e26dc01d0e500d83e9ca1fe6c26c9d9c76c5fa76be2bd279e6106fa8a +size 1383006 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.map.gz b/public/packs/js/application-ad620667f5fc36fddece.js.map.gz new file mode 100644 index 00000000..f43c14c4 --- /dev/null +++ b/public/packs/js/application-ad620667f5fc36fddece.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d38186b6884adbe8f558e897685f4663b20957ac79ba124c614444ec0cba3ea7 +size 1709752 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index b399e097..b61b2f38 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e7a27893f8cd76928d3b57a8ca848e81c8d7d2231f487a01ed972845d643d1f0 +oid sha256:8a998e3347acd9a48d856d94ddec1f29900c03e71ac9d6d1eca651338c773dc1 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 46cdb0eb..3e982e5d 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:0cb430fc88c7547579f9b6e36c86bb441d43272225ebaf8dace18612268e094a -size 328 +oid sha256:c80437d3cd891cd951baa913aef9e373d3622f2e56f4d6cfcfe831151c88984a +size 320 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 993943a6..18738617 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e17bbbf75ec929ed520e12d16b373594cc4004752605c864a71d363e9ba2fde8 -size 365 +oid sha256:b7ff6bc5984d0d29d1e9e97ef5ac329193ce018959fe8253f28bfc9f6c38458a +size 364 From c6a11d3ccde62eabe041bc90bf0bbda0b103ab15 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 25 Jun 2024 16:59:15 -0300 Subject: [PATCH 568/699] fix: auto-organizar las columnas --- app/views/posts/attributes/_new_belongs_to.haml | 2 +- app/views/posts/attributes/_new_has_and_belongs_to_many.haml | 2 +- app/views/posts/attributes/_new_has_many.haml | 2 +- app/views/posts/attributes/_new_has_one.haml | 2 +- app/views/posts/attributes/_new_predefined_value.haml | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/app/views/posts/attributes/_new_belongs_to.haml b/app/views/posts/attributes/_new_belongs_to.haml index c39176e0..b083e55e 100644 --- a/app/views/posts/attributes/_new_belongs_to.haml +++ b/app/views/posts/attributes/_new_belongs_to.haml @@ -44,7 +44,7 @@ Para poder cancelar, mantenemos el estado original y desactivamos o activamos los ítemes según estén incluidos en esa lista o no. - .row.row-cols-3.row-cols-md-4.no-gutters.placeholder-glow{ data: { target: 'array.current' } } + .row.no-gutters.placeholder-glow{ data: { target: 'array.current' } } -# @todo issue-7537 - if !metadata.empty? && (indexed_post = site.indexed_posts.find_by(post_id: metadata.value)) = render 'posts/new_related_post', post: indexed_post diff --git a/app/views/posts/attributes/_new_has_and_belongs_to_many.haml b/app/views/posts/attributes/_new_has_and_belongs_to_many.haml index 4ca444cf..1142c3b9 100644 --- a/app/views/posts/attributes/_new_has_and_belongs_to_many.haml +++ b/app/views/posts/attributes/_new_has_and_belongs_to_many.haml @@ -44,7 +44,7 @@ Para poder cancelar, mantenemos el estado original y desactivamos o activamos los ítemes según estén incluidos en esa lista o no. - .row.row-cols-3.row-cols-md-4.no-gutters.placeholder-glow{ data: { target: 'array.current' } } + .row.no-gutters.placeholder-glow{ data: { target: 'array.current' } } -# @todo issue-7537 - metadata.value.each do |uuid| - if (indexed_post = site.indexed_posts.find_by(post_id: uuid)) diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index 476f2c2f..9910e078 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -44,7 +44,7 @@ Para poder cancelar, mantenemos el estado original y desactivamos o activamos los ítemes según estén incluidos en esa lista o no. - .row.row-cols-3.row-cols-md-4.no-gutters.placeholder-glow{ data: { target: 'array.current' } } + .row.no-gutters.placeholder-glow{ data: { target: 'array.current' } } -# @todo issue-7537 - metadata.value.each do |uuid| - if (indexed_post = site.indexed_posts.find_by(post_id: uuid)) diff --git a/app/views/posts/attributes/_new_has_one.haml b/app/views/posts/attributes/_new_has_one.haml index 87ef0440..21b7b511 100644 --- a/app/views/posts/attributes/_new_has_one.haml +++ b/app/views/posts/attributes/_new_has_one.haml @@ -31,7 +31,7 @@ = render 'bootstrap/btn', content: t('.edit'), action: 'modal#showAnother', data: { 'modal-show-value': modal_id }, id: random_id -# Aquí se reemplaza por la tarjeta y el UUID luego de guardar - .row.row-cols-1.no-gutters.placeholder-glow{ id: target_id } + .row.no-gutters.placeholder-glow{ id: target_id } -# @todo issue-7537 - if !metadata.empty? && (indexed_post = site.indexed_posts.find_by(post_id: metadata.value)) = render 'posts/new_has_one', post: indexed_post, name: name, value: metadata.value diff --git a/app/views/posts/attributes/_new_predefined_value.haml b/app/views/posts/attributes/_new_predefined_value.haml index dad716b0..5158169d 100644 --- a/app/views/posts/attributes/_new_predefined_value.haml +++ b/app/views/posts/attributes/_new_predefined_value.haml @@ -44,7 +44,7 @@ Para poder cancelar, mantenemos el estado original y desactivamos o activamos los ítemes según estén incluidos en esa lista o no. - %ul.placeholder-glow{ data: { target: 'array.current' } } + %ul.list-unstyled.px-3.font-weight-bold.placeholder-glow{ data: { target: 'array.current' } } - unless metadata.empty? = render 'posts/new_array_value', value: metadata.to_s From 63bd017491fee20825bf1c60705e6f45b57c6987 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 25 Jun 2024 16:59:37 -0300 Subject: [PATCH 569/699] fix: ocultar los posts con layout oculto --- app/views/posts/index.haml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/views/posts/index.haml b/app/views/posts/index.haml index 3de30aa3..ad019c3f 100644 --- a/app/views/posts/index.haml +++ b/app/views/posts/index.haml @@ -99,6 +99,8 @@ - dir = @site.data.dig(params[:locale], 'dir') - size = @posts.size - @posts.each_with_index do |post, i| + -# @todo issue-7537 + - next if post.layout.hidden? -# TODO: Solo les usuaries cachean porque tenemos que separar les botones por permisos. From 2a6fafcb9c50a26a41103852b03eed8a867b7e48 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 25 Jun 2024 17:06:36 -0300 Subject: [PATCH 570/699] fixup! fix: ocultar los posts con layout oculto --- app/views/posts/index.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/posts/index.haml b/app/views/posts/index.haml index ad019c3f..14c27ec9 100644 --- a/app/views/posts/index.haml +++ b/app/views/posts/index.haml @@ -100,7 +100,7 @@ - size = @posts.size - @posts.each_with_index do |post, i| -# @todo issue-7537 - - next if post.layout.hidden? + - next if @site.layouts[post.layout].hidden? -# TODO: Solo les usuaries cachean porque tenemos que separar les botones por permisos. From f23e451793f7e89c436aa653011f4f91e6fece0c Mon Sep 17 00:00:00 2001 From: f Date: Wed, 26 Jun 2024 14:02:44 -0300 Subject: [PATCH 571/699] fix: poder abrir modales --- app/views/posts/attributes/_new_has_one.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/posts/attributes/_new_has_one.haml b/app/views/posts/attributes/_new_has_one.haml index 21b7b511..1d0bb380 100644 --- a/app/views/posts/attributes/_new_has_one.haml +++ b/app/views/posts/attributes/_new_has_one.haml @@ -28,7 +28,7 @@ = hidden_field_tag name, '' .d-flex.align-items-center.justify-content-between = label_tag id, post_label_t(attribute, post: post), class: 'h3' - = render 'bootstrap/btn', content: t('.edit'), action: 'modal#showAnother', data: { 'modal-show-value': modal_id }, id: random_id + = render 'bootstrap/btn', content: t('.edit'), data: { action: 'modal#showAnother', 'modal-show-value': modal_id }, id: random_id -# Aquí se reemplaza por la tarjeta y el UUID luego de guardar .row.no-gutters.placeholder-glow{ id: target_id } From c4fe49230e3377843e9fea7ae9be94ae3c8dc931 Mon Sep 17 00:00:00 2001 From: fauno Date: Wed, 26 Jun 2024 17:13:06 +0000 Subject: [PATCH 572/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- .../{application-5688882d.css => application-e0d66cef.css} | 0 ...pplication-5688882d.css.br => application-e0d66cef.css.br} | 0 ...pplication-5688882d.css.gz => application-e0d66cef.css.gz} | 0 public/packs/js/application-259c401740dfed47822c.js | 3 +++ ...SE.txt => application-259c401740dfed47822c.js.LICENSE.txt} | 0 public/packs/js/application-259c401740dfed47822c.js.br | 3 +++ public/packs/js/application-259c401740dfed47822c.js.gz | 3 +++ public/packs/js/application-259c401740dfed47822c.js.map | 3 +++ public/packs/js/application-259c401740dfed47822c.js.map.br | 3 +++ public/packs/js/application-259c401740dfed47822c.js.map.gz | 3 +++ public/packs/js/application-ad620667f5fc36fddece.js | 3 --- public/packs/js/application-ad620667f5fc36fddece.js.br | 3 --- public/packs/js/application-ad620667f5fc36fddece.js.gz | 3 --- public/packs/js/application-ad620667f5fc36fddece.js.map | 3 --- public/packs/js/application-ad620667f5fc36fddece.js.map.br | 3 --- public/packs/js/application-ad620667f5fc36fddece.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 20 files changed, 24 insertions(+), 24 deletions(-) rename public/packs/css/{application-5688882d.css => application-e0d66cef.css} (100%) rename public/packs/css/{application-5688882d.css.br => application-e0d66cef.css.br} (100%) rename public/packs/css/{application-5688882d.css.gz => application-e0d66cef.css.gz} (100%) create mode 100644 public/packs/js/application-259c401740dfed47822c.js rename public/packs/js/{application-ad620667f5fc36fddece.js.LICENSE.txt => application-259c401740dfed47822c.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-259c401740dfed47822c.js.br create mode 100644 public/packs/js/application-259c401740dfed47822c.js.gz create mode 100644 public/packs/js/application-259c401740dfed47822c.js.map create mode 100644 public/packs/js/application-259c401740dfed47822c.js.map.br create mode 100644 public/packs/js/application-259c401740dfed47822c.js.map.gz delete mode 100644 public/packs/js/application-ad620667f5fc36fddece.js delete mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.br delete mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.gz delete mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.map delete mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.map.br delete mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 197fad94..3a2811f7 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1a29a6e9c3f33397fbfd987ae2a470bedc88a6bb872186cb53c2d0fc62c051e8 +oid sha256:4fbc81ba461f620e30aa6e584dfd0230f49d1ab9c865df39f80b7117f7b0c066 size 11449 diff --git a/public/packs/css/application-5688882d.css b/public/packs/css/application-e0d66cef.css similarity index 100% rename from public/packs/css/application-5688882d.css rename to public/packs/css/application-e0d66cef.css diff --git a/public/packs/css/application-5688882d.css.br b/public/packs/css/application-e0d66cef.css.br similarity index 100% rename from public/packs/css/application-5688882d.css.br rename to public/packs/css/application-e0d66cef.css.br diff --git a/public/packs/css/application-5688882d.css.gz b/public/packs/css/application-e0d66cef.css.gz similarity index 100% rename from public/packs/css/application-5688882d.css.gz rename to public/packs/css/application-e0d66cef.css.gz diff --git a/public/packs/js/application-259c401740dfed47822c.js b/public/packs/js/application-259c401740dfed47822c.js new file mode 100644 index 00000000..cb0eb957 --- /dev/null +++ b/public/packs/js/application-259c401740dfed47822c.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5b756828333dc54fe38ad3678c73d524861ebbaf5769c5ee8d08029de1d440a +size 1669027 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.LICENSE.txt b/public/packs/js/application-259c401740dfed47822c.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-ad620667f5fc36fddece.js.LICENSE.txt rename to public/packs/js/application-259c401740dfed47822c.js.LICENSE.txt diff --git a/public/packs/js/application-259c401740dfed47822c.js.br b/public/packs/js/application-259c401740dfed47822c.js.br new file mode 100644 index 00000000..8dd982f1 --- /dev/null +++ b/public/packs/js/application-259c401740dfed47822c.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:705e0f848187878be1d60030522cb5a22c2ac9ba12a5cbe606f34ae595c01348 +size 368569 diff --git a/public/packs/js/application-259c401740dfed47822c.js.gz b/public/packs/js/application-259c401740dfed47822c.js.gz new file mode 100644 index 00000000..de8d598f --- /dev/null +++ b/public/packs/js/application-259c401740dfed47822c.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6478bcd675c7131936c8b364ca263a98fcecbba781b656e47d00dfd74e200893 +size 485739 diff --git a/public/packs/js/application-259c401740dfed47822c.js.map b/public/packs/js/application-259c401740dfed47822c.js.map new file mode 100644 index 00000000..c466c583 --- /dev/null +++ b/public/packs/js/application-259c401740dfed47822c.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cbe23e77de63a2bff04cee1d72f11118ec5c471dc7417b239da0cb248da55ae +size 6438002 diff --git a/public/packs/js/application-259c401740dfed47822c.js.map.br b/public/packs/js/application-259c401740dfed47822c.js.map.br new file mode 100644 index 00000000..06322c48 --- /dev/null +++ b/public/packs/js/application-259c401740dfed47822c.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e01ac77f9e79769442ce155489cffd92b91f68baf5eead1a9a2d9e220041f99a +size 1386372 diff --git a/public/packs/js/application-259c401740dfed47822c.js.map.gz b/public/packs/js/application-259c401740dfed47822c.js.map.gz new file mode 100644 index 00000000..5852fea3 --- /dev/null +++ b/public/packs/js/application-259c401740dfed47822c.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0bca76541a1751d32f45d4346289b406dcfeef045d91b7e980812bec3d52b5b +size 1714681 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js b/public/packs/js/application-ad620667f5fc36fddece.js deleted file mode 100644 index a70f96ac..00000000 --- a/public/packs/js/application-ad620667f5fc36fddece.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:24f23edd740148c5d214c4d0bc8dd7b5d3aa427d24015bfc613750ea6351534a -size 1669027 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.br b/public/packs/js/application-ad620667f5fc36fddece.js.br deleted file mode 100644 index 3123a28e..00000000 --- a/public/packs/js/application-ad620667f5fc36fddece.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4b01dea0cdd9972d471b246d2646e1cca9397ef368b18d32e842407e5b10cbd7 -size 368539 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.gz b/public/packs/js/application-ad620667f5fc36fddece.js.gz deleted file mode 100644 index f3b3a5ca..00000000 --- a/public/packs/js/application-ad620667f5fc36fddece.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fc2c74681ae3526bccf98d8ee6873c3f1fc4789c426542ee869369361d39aeec -size 485739 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.map b/public/packs/js/application-ad620667f5fc36fddece.js.map deleted file mode 100644 index cf5f3864..00000000 --- a/public/packs/js/application-ad620667f5fc36fddece.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c19e48f790de355893180da4a3ff3d4c1b3355ed019078fff395849b310d4a86 -size 6413519 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.map.br b/public/packs/js/application-ad620667f5fc36fddece.js.map.br deleted file mode 100644 index bd37a967..00000000 --- a/public/packs/js/application-ad620667f5fc36fddece.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:985e532e26dc01d0e500d83e9ca1fe6c26c9d9c76c5fa76be2bd279e6106fa8a -size 1383006 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.map.gz b/public/packs/js/application-ad620667f5fc36fddece.js.map.gz deleted file mode 100644 index f43c14c4..00000000 --- a/public/packs/js/application-ad620667f5fc36fddece.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d38186b6884adbe8f558e897685f4663b20957ac79ba124c614444ec0cba3ea7 -size 1709752 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index b61b2f38..5ccf8064 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8a998e3347acd9a48d856d94ddec1f29900c03e71ac9d6d1eca651338c773dc1 +oid sha256:648a4dadfef23e3fe03acc6516ba71df923e5aba6e8f0b75cf1bded97fb34a17 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 3e982e5d..b5185d85 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c80437d3cd891cd951baa913aef9e373d3622f2e56f4d6cfcfe831151c88984a -size 320 +oid sha256:e01d7beb1f47c3855436e310fd644ff9f2bbc0cd64a626320664b3554f8dca07 +size 322 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 18738617..3d50c3a0 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b7ff6bc5984d0d29d1e9e97ef5ac329193ce018959fe8253f28bfc9f6c38458a -size 364 +oid sha256:7b85747137fa8de98eaadf30c5abad212c14e44be2fbfc86ee9194304970d050 +size 365 From d1274dbfd4311a7e615b1f7332c10e6f4948ccb9 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 26 Jun 2024 14:47:30 -0300 Subject: [PATCH 573/699] fix: permitir que la imagen ocupe todo lo necesario --- app/views/bootstrap/_card.haml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/app/views/bootstrap/_card.haml b/app/views/bootstrap/_card.haml index e7e1f108..87e9691a 100644 --- a/app/views/bootstrap/_card.haml +++ b/app/views/bootstrap/_card.haml @@ -1,7 +1,6 @@ .card{ **local_assigns.except(:image, :description) } - if local_assigns[:image] - = render 'bootstrap/responsive' do - = image_tag url_for(local_assigns[:image]), alt: local_assigns[:description], class: 'img-fluid' + = image_tag url_for(local_assigns[:image]), alt: local_assigns[:description], class: 'img-fluid' .card-body .card-title= title From 53ae9323934e6da8937cb2461af3fa8c385f1bce Mon Sep 17 00:00:00 2001 From: f Date: Wed, 26 Jun 2024 18:50:20 -0300 Subject: [PATCH 574/699] fix: borde del modal --- app/assets/stylesheets/application.scss | 3 +++ 1 file changed, 3 insertions(+) diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss index d8fe8c9f..350c4aaa 100644 --- a/app/assets/stylesheets/application.scss +++ b/app/assets/stylesheets/application.scss @@ -30,6 +30,7 @@ $form-feedback-icon-valid-color: $black; $component-active-bg: $magenta; $zindex-modal-backdrop: 0; $modal-content-bg: var(--background); +$modal-content-border-color: var(--modal-content-border-color); $card-bg: var(--background); $card-border-color: var(--card-border-color); $input-bg: var(--background); @@ -79,6 +80,7 @@ $sizes: ( --background: #{$white}; --color: #{$magenta}; --card-border-color: #{rgba($black, .125)}; + --modal-content-border-color: rgba(#{$black}, .2); } @media (prefers-color-scheme: dark) { @@ -87,6 +89,7 @@ $sizes: ( --background: #{$black}; --color: #{$cyan}; --card-border-color: #{rgba($white, .125)}; + --modal-content-border-color: #{rgba($white, .2)}; } .btn-secondary { From 4d6b87526b5600b2da1a45f0de315868c524c365 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 26 Jun 2024 18:53:42 -0300 Subject: [PATCH 575/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- ...150843fc752c408e42d93aa4efd07ee5ae35e1fa3c2807ae621573.css | 3 +++ ...843fc752c408e42d93aa4efd07ee5ae35e1fa3c2807ae621573.css.gz | 3 +++ ...7ff25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css | 3 --- ...25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css.gz | 3 --- .../{application-e0d66cef.css => application-5688882d.css} | 0 ...pplication-e0d66cef.css.br => application-5688882d.css.br} | 0 ...pplication-e0d66cef.css.gz => application-5688882d.css.gz} | 0 public/packs/js/application-259c401740dfed47822c.js | 3 --- public/packs/js/application-259c401740dfed47822c.js.br | 3 --- public/packs/js/application-259c401740dfed47822c.js.gz | 3 --- public/packs/js/application-259c401740dfed47822c.js.map | 3 --- public/packs/js/application-259c401740dfed47822c.js.map.br | 3 --- public/packs/js/application-259c401740dfed47822c.js.map.gz | 3 --- public/packs/js/application-ad620667f5fc36fddece.js | 3 +++ ...SE.txt => application-ad620667f5fc36fddece.js.LICENSE.txt} | 0 public/packs/js/application-ad620667f5fc36fddece.js.br | 3 +++ public/packs/js/application-ad620667f5fc36fddece.js.gz | 3 +++ public/packs/js/application-ad620667f5fc36fddece.js.map | 3 +++ public/packs/js/application-ad620667f5fc36fddece.js.map.br | 3 +++ public/packs/js/application-ad620667f5fc36fddece.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 24 files changed, 30 insertions(+), 30 deletions(-) create mode 100644 public/assets/application-1672a7ce51150843fc752c408e42d93aa4efd07ee5ae35e1fa3c2807ae621573.css create mode 100644 public/assets/application-1672a7ce51150843fc752c408e42d93aa4efd07ee5ae35e1fa3c2807ae621573.css.gz delete mode 100644 public/assets/application-60967ad0347ff25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css delete mode 100644 public/assets/application-60967ad0347ff25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css.gz rename public/packs/css/{application-e0d66cef.css => application-5688882d.css} (100%) rename public/packs/css/{application-e0d66cef.css.br => application-5688882d.css.br} (100%) rename public/packs/css/{application-e0d66cef.css.gz => application-5688882d.css.gz} (100%) delete mode 100644 public/packs/js/application-259c401740dfed47822c.js delete mode 100644 public/packs/js/application-259c401740dfed47822c.js.br delete mode 100644 public/packs/js/application-259c401740dfed47822c.js.gz delete mode 100644 public/packs/js/application-259c401740dfed47822c.js.map delete mode 100644 public/packs/js/application-259c401740dfed47822c.js.map.br delete mode 100644 public/packs/js/application-259c401740dfed47822c.js.map.gz create mode 100644 public/packs/js/application-ad620667f5fc36fddece.js rename public/packs/js/{application-259c401740dfed47822c.js.LICENSE.txt => application-ad620667f5fc36fddece.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.br create mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.gz create mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.map create mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.map.br create mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 3a2811f7..6d68c435 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4fbc81ba461f620e30aa6e584dfd0230f49d1ab9c865df39f80b7117f7b0c066 +oid sha256:7fde3d8ce73c3a7b67b392f8589b110612a9905e3aef28a1ee730cc65d902d62 size 11449 diff --git a/public/assets/application-1672a7ce51150843fc752c408e42d93aa4efd07ee5ae35e1fa3c2807ae621573.css b/public/assets/application-1672a7ce51150843fc752c408e42d93aa4efd07ee5ae35e1fa3c2807ae621573.css new file mode 100644 index 00000000..a3d962c2 --- /dev/null +++ b/public/assets/application-1672a7ce51150843fc752c408e42d93aa4efd07ee5ae35e1fa3c2807ae621573.css @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:898f2857532d309738de5f2a67e282587a5c9a73bfecedceecc53ca187619549 +size 245300 diff --git a/public/assets/application-1672a7ce51150843fc752c408e42d93aa4efd07ee5ae35e1fa3c2807ae621573.css.gz b/public/assets/application-1672a7ce51150843fc752c408e42d93aa4efd07ee5ae35e1fa3c2807ae621573.css.gz new file mode 100644 index 00000000..9378ed5a --- /dev/null +++ b/public/assets/application-1672a7ce51150843fc752c408e42d93aa4efd07ee5ae35e1fa3c2807ae621573.css.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52c8e38acd7843eb3d1f89559894c7e3dc76d7edfd139966df8717392bbb4275 +size 34401 diff --git a/public/assets/application-60967ad0347ff25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css b/public/assets/application-60967ad0347ff25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css deleted file mode 100644 index f85e7eb7..00000000 --- a/public/assets/application-60967ad0347ff25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:21670939fa9a33ff7147a3939e901b9a9797fadb2a724700128942889a1c1a3f -size 238842 diff --git a/public/assets/application-60967ad0347ff25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css.gz b/public/assets/application-60967ad0347ff25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css.gz deleted file mode 100644 index a208f217..00000000 --- a/public/assets/application-60967ad0347ff25e3dc7dc856ae22b05dae2b7f5a6f6fd140ee492eb6bcf015e.css.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:55fef1481a54cd87f0efc1df7bc7cda2ece5e56be2ca548e2b5d1dc734dfac59 -size 33265 diff --git a/public/packs/css/application-e0d66cef.css b/public/packs/css/application-5688882d.css similarity index 100% rename from public/packs/css/application-e0d66cef.css rename to public/packs/css/application-5688882d.css diff --git a/public/packs/css/application-e0d66cef.css.br b/public/packs/css/application-5688882d.css.br similarity index 100% rename from public/packs/css/application-e0d66cef.css.br rename to public/packs/css/application-5688882d.css.br diff --git a/public/packs/css/application-e0d66cef.css.gz b/public/packs/css/application-5688882d.css.gz similarity index 100% rename from public/packs/css/application-e0d66cef.css.gz rename to public/packs/css/application-5688882d.css.gz diff --git a/public/packs/js/application-259c401740dfed47822c.js b/public/packs/js/application-259c401740dfed47822c.js deleted file mode 100644 index cb0eb957..00000000 --- a/public/packs/js/application-259c401740dfed47822c.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d5b756828333dc54fe38ad3678c73d524861ebbaf5769c5ee8d08029de1d440a -size 1669027 diff --git a/public/packs/js/application-259c401740dfed47822c.js.br b/public/packs/js/application-259c401740dfed47822c.js.br deleted file mode 100644 index 8dd982f1..00000000 --- a/public/packs/js/application-259c401740dfed47822c.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:705e0f848187878be1d60030522cb5a22c2ac9ba12a5cbe606f34ae595c01348 -size 368569 diff --git a/public/packs/js/application-259c401740dfed47822c.js.gz b/public/packs/js/application-259c401740dfed47822c.js.gz deleted file mode 100644 index de8d598f..00000000 --- a/public/packs/js/application-259c401740dfed47822c.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6478bcd675c7131936c8b364ca263a98fcecbba781b656e47d00dfd74e200893 -size 485739 diff --git a/public/packs/js/application-259c401740dfed47822c.js.map b/public/packs/js/application-259c401740dfed47822c.js.map deleted file mode 100644 index c466c583..00000000 --- a/public/packs/js/application-259c401740dfed47822c.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5cbe23e77de63a2bff04cee1d72f11118ec5c471dc7417b239da0cb248da55ae -size 6438002 diff --git a/public/packs/js/application-259c401740dfed47822c.js.map.br b/public/packs/js/application-259c401740dfed47822c.js.map.br deleted file mode 100644 index 06322c48..00000000 --- a/public/packs/js/application-259c401740dfed47822c.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e01ac77f9e79769442ce155489cffd92b91f68baf5eead1a9a2d9e220041f99a -size 1386372 diff --git a/public/packs/js/application-259c401740dfed47822c.js.map.gz b/public/packs/js/application-259c401740dfed47822c.js.map.gz deleted file mode 100644 index 5852fea3..00000000 --- a/public/packs/js/application-259c401740dfed47822c.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b0bca76541a1751d32f45d4346289b406dcfeef045d91b7e980812bec3d52b5b -size 1714681 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js b/public/packs/js/application-ad620667f5fc36fddece.js new file mode 100644 index 00000000..a70f96ac --- /dev/null +++ b/public/packs/js/application-ad620667f5fc36fddece.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24f23edd740148c5d214c4d0bc8dd7b5d3aa427d24015bfc613750ea6351534a +size 1669027 diff --git a/public/packs/js/application-259c401740dfed47822c.js.LICENSE.txt b/public/packs/js/application-ad620667f5fc36fddece.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-259c401740dfed47822c.js.LICENSE.txt rename to public/packs/js/application-ad620667f5fc36fddece.js.LICENSE.txt diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.br b/public/packs/js/application-ad620667f5fc36fddece.js.br new file mode 100644 index 00000000..3123a28e --- /dev/null +++ b/public/packs/js/application-ad620667f5fc36fddece.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b01dea0cdd9972d471b246d2646e1cca9397ef368b18d32e842407e5b10cbd7 +size 368539 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.gz b/public/packs/js/application-ad620667f5fc36fddece.js.gz new file mode 100644 index 00000000..f3b3a5ca --- /dev/null +++ b/public/packs/js/application-ad620667f5fc36fddece.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc2c74681ae3526bccf98d8ee6873c3f1fc4789c426542ee869369361d39aeec +size 485739 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.map b/public/packs/js/application-ad620667f5fc36fddece.js.map new file mode 100644 index 00000000..cf5f3864 --- /dev/null +++ b/public/packs/js/application-ad620667f5fc36fddece.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c19e48f790de355893180da4a3ff3d4c1b3355ed019078fff395849b310d4a86 +size 6413519 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.map.br b/public/packs/js/application-ad620667f5fc36fddece.js.map.br new file mode 100644 index 00000000..bd37a967 --- /dev/null +++ b/public/packs/js/application-ad620667f5fc36fddece.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:985e532e26dc01d0e500d83e9ca1fe6c26c9d9c76c5fa76be2bd279e6106fa8a +size 1383006 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.map.gz b/public/packs/js/application-ad620667f5fc36fddece.js.map.gz new file mode 100644 index 00000000..f43c14c4 --- /dev/null +++ b/public/packs/js/application-ad620667f5fc36fddece.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d38186b6884adbe8f558e897685f4663b20957ac79ba124c614444ec0cba3ea7 +size 1709752 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 5ccf8064..b61b2f38 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:648a4dadfef23e3fe03acc6516ba71df923e5aba6e8f0b75cf1bded97fb34a17 +oid sha256:8a998e3347acd9a48d856d94ddec1f29900c03e71ac9d6d1eca651338c773dc1 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index b5185d85..3e982e5d 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e01d7beb1f47c3855436e310fd644ff9f2bbc0cd64a626320664b3554f8dca07 -size 322 +oid sha256:c80437d3cd891cd951baa913aef9e373d3622f2e56f4d6cfcfe831151c88984a +size 320 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 3d50c3a0..18738617 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7b85747137fa8de98eaadf30c5abad212c14e44be2fbfc86ee9194304970d050 -size 365 +oid sha256:b7ff6bc5984d0d29d1e9e97ef5ac329193ce018959fe8253f28bfc9f6c38458a +size 364 From 6063f8dc6b012ec03f4b534eab86b480b9672a4e Mon Sep 17 00:00:00 2001 From: maki Date: Mon, 1 Jul 2024 15:47:36 -0300 Subject: [PATCH 576/699] fix: idioma por defecto #15068 --- app/helpers/application_helper.rb | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 7d1f9c0b..baef3b05 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -156,8 +156,8 @@ module ApplicationHelper private def post_t(*attribute, post:, type:) - post.layout.metadata.dig(*attribute, type.to_s, I18n.locale.to_s) || - post.layout.metadata.dig(*attribute, type.to_s, I18n.default_locale.to_s) || - I18n.t("posts.attributes.#{attribute.join('.')}.#{type}") + post.layout.metadata.dig(*attribute, type.to_s, I18n.locale.to_s).presence || + post.layout.metadata.dig(*attribute, type.to_s, post.site.default_locale.to_s).presence || + I18n.t("posts.attributes.#{attribute.join('.')}.#{type}").presence end end From 9a59cd383bc2c430db012430d5b69524e7b4736d Mon Sep 17 00:00:00 2001 From: fauno Date: Mon, 1 Jul 2024 18:55:24 +0000 Subject: [PATCH 577/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- .../{application-5688882d.css => application-e0d66cef.css} | 0 ...pplication-5688882d.css.br => application-e0d66cef.css.br} | 0 ...pplication-5688882d.css.gz => application-e0d66cef.css.gz} | 0 public/packs/js/application-259c401740dfed47822c.js | 3 +++ ...SE.txt => application-259c401740dfed47822c.js.LICENSE.txt} | 0 public/packs/js/application-259c401740dfed47822c.js.br | 3 +++ public/packs/js/application-259c401740dfed47822c.js.gz | 3 +++ public/packs/js/application-259c401740dfed47822c.js.map | 3 +++ public/packs/js/application-259c401740dfed47822c.js.map.br | 3 +++ public/packs/js/application-259c401740dfed47822c.js.map.gz | 3 +++ public/packs/js/application-ad620667f5fc36fddece.js | 3 --- public/packs/js/application-ad620667f5fc36fddece.js.br | 3 --- public/packs/js/application-ad620667f5fc36fddece.js.gz | 3 --- public/packs/js/application-ad620667f5fc36fddece.js.map | 3 --- public/packs/js/application-ad620667f5fc36fddece.js.map.br | 3 --- public/packs/js/application-ad620667f5fc36fddece.js.map.gz | 3 --- public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 20 files changed, 24 insertions(+), 24 deletions(-) rename public/packs/css/{application-5688882d.css => application-e0d66cef.css} (100%) rename public/packs/css/{application-5688882d.css.br => application-e0d66cef.css.br} (100%) rename public/packs/css/{application-5688882d.css.gz => application-e0d66cef.css.gz} (100%) create mode 100644 public/packs/js/application-259c401740dfed47822c.js rename public/packs/js/{application-ad620667f5fc36fddece.js.LICENSE.txt => application-259c401740dfed47822c.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-259c401740dfed47822c.js.br create mode 100644 public/packs/js/application-259c401740dfed47822c.js.gz create mode 100644 public/packs/js/application-259c401740dfed47822c.js.map create mode 100644 public/packs/js/application-259c401740dfed47822c.js.map.br create mode 100644 public/packs/js/application-259c401740dfed47822c.js.map.gz delete mode 100644 public/packs/js/application-ad620667f5fc36fddece.js delete mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.br delete mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.gz delete mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.map delete mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.map.br delete mode 100644 public/packs/js/application-ad620667f5fc36fddece.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 6d68c435..34bc1f5b 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7fde3d8ce73c3a7b67b392f8589b110612a9905e3aef28a1ee730cc65d902d62 +oid sha256:88c1f1a739d34084f336007dde9c7f90ebbe91b704679428becd515344eb62d3 size 11449 diff --git a/public/packs/css/application-5688882d.css b/public/packs/css/application-e0d66cef.css similarity index 100% rename from public/packs/css/application-5688882d.css rename to public/packs/css/application-e0d66cef.css diff --git a/public/packs/css/application-5688882d.css.br b/public/packs/css/application-e0d66cef.css.br similarity index 100% rename from public/packs/css/application-5688882d.css.br rename to public/packs/css/application-e0d66cef.css.br diff --git a/public/packs/css/application-5688882d.css.gz b/public/packs/css/application-e0d66cef.css.gz similarity index 100% rename from public/packs/css/application-5688882d.css.gz rename to public/packs/css/application-e0d66cef.css.gz diff --git a/public/packs/js/application-259c401740dfed47822c.js b/public/packs/js/application-259c401740dfed47822c.js new file mode 100644 index 00000000..cb0eb957 --- /dev/null +++ b/public/packs/js/application-259c401740dfed47822c.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5b756828333dc54fe38ad3678c73d524861ebbaf5769c5ee8d08029de1d440a +size 1669027 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.LICENSE.txt b/public/packs/js/application-259c401740dfed47822c.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-ad620667f5fc36fddece.js.LICENSE.txt rename to public/packs/js/application-259c401740dfed47822c.js.LICENSE.txt diff --git a/public/packs/js/application-259c401740dfed47822c.js.br b/public/packs/js/application-259c401740dfed47822c.js.br new file mode 100644 index 00000000..8dd982f1 --- /dev/null +++ b/public/packs/js/application-259c401740dfed47822c.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:705e0f848187878be1d60030522cb5a22c2ac9ba12a5cbe606f34ae595c01348 +size 368569 diff --git a/public/packs/js/application-259c401740dfed47822c.js.gz b/public/packs/js/application-259c401740dfed47822c.js.gz new file mode 100644 index 00000000..de8d598f --- /dev/null +++ b/public/packs/js/application-259c401740dfed47822c.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6478bcd675c7131936c8b364ca263a98fcecbba781b656e47d00dfd74e200893 +size 485739 diff --git a/public/packs/js/application-259c401740dfed47822c.js.map b/public/packs/js/application-259c401740dfed47822c.js.map new file mode 100644 index 00000000..c466c583 --- /dev/null +++ b/public/packs/js/application-259c401740dfed47822c.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cbe23e77de63a2bff04cee1d72f11118ec5c471dc7417b239da0cb248da55ae +size 6438002 diff --git a/public/packs/js/application-259c401740dfed47822c.js.map.br b/public/packs/js/application-259c401740dfed47822c.js.map.br new file mode 100644 index 00000000..06322c48 --- /dev/null +++ b/public/packs/js/application-259c401740dfed47822c.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e01ac77f9e79769442ce155489cffd92b91f68baf5eead1a9a2d9e220041f99a +size 1386372 diff --git a/public/packs/js/application-259c401740dfed47822c.js.map.gz b/public/packs/js/application-259c401740dfed47822c.js.map.gz new file mode 100644 index 00000000..5852fea3 --- /dev/null +++ b/public/packs/js/application-259c401740dfed47822c.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0bca76541a1751d32f45d4346289b406dcfeef045d91b7e980812bec3d52b5b +size 1714681 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js b/public/packs/js/application-ad620667f5fc36fddece.js deleted file mode 100644 index a70f96ac..00000000 --- a/public/packs/js/application-ad620667f5fc36fddece.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:24f23edd740148c5d214c4d0bc8dd7b5d3aa427d24015bfc613750ea6351534a -size 1669027 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.br b/public/packs/js/application-ad620667f5fc36fddece.js.br deleted file mode 100644 index 3123a28e..00000000 --- a/public/packs/js/application-ad620667f5fc36fddece.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4b01dea0cdd9972d471b246d2646e1cca9397ef368b18d32e842407e5b10cbd7 -size 368539 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.gz b/public/packs/js/application-ad620667f5fc36fddece.js.gz deleted file mode 100644 index f3b3a5ca..00000000 --- a/public/packs/js/application-ad620667f5fc36fddece.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fc2c74681ae3526bccf98d8ee6873c3f1fc4789c426542ee869369361d39aeec -size 485739 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.map b/public/packs/js/application-ad620667f5fc36fddece.js.map deleted file mode 100644 index cf5f3864..00000000 --- a/public/packs/js/application-ad620667f5fc36fddece.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:c19e48f790de355893180da4a3ff3d4c1b3355ed019078fff395849b310d4a86 -size 6413519 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.map.br b/public/packs/js/application-ad620667f5fc36fddece.js.map.br deleted file mode 100644 index bd37a967..00000000 --- a/public/packs/js/application-ad620667f5fc36fddece.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:985e532e26dc01d0e500d83e9ca1fe6c26c9d9c76c5fa76be2bd279e6106fa8a -size 1383006 diff --git a/public/packs/js/application-ad620667f5fc36fddece.js.map.gz b/public/packs/js/application-ad620667f5fc36fddece.js.map.gz deleted file mode 100644 index f43c14c4..00000000 --- a/public/packs/js/application-ad620667f5fc36fddece.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d38186b6884adbe8f558e897685f4663b20957ac79ba124c614444ec0cba3ea7 -size 1709752 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index b61b2f38..5ccf8064 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8a998e3347acd9a48d856d94ddec1f29900c03e71ac9d6d1eca651338c773dc1 +oid sha256:648a4dadfef23e3fe03acc6516ba71df923e5aba6e8f0b75cf1bded97fb34a17 size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 3e982e5d..b5185d85 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c80437d3cd891cd951baa913aef9e373d3622f2e56f4d6cfcfe831151c88984a -size 320 +oid sha256:e01d7beb1f47c3855436e310fd644ff9f2bbc0cd64a626320664b3554f8dca07 +size 322 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 18738617..3d50c3a0 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b7ff6bc5984d0d29d1e9e97ef5ac329193ce018959fe8253f28bfc9f6c38458a -size 364 +oid sha256:7b85747137fa8de98eaadf30c5abad212c14e44be2fbfc86ee9194304970d050 +size 365 From 91e9eab97574896d640d35b4fd74ef10e15915ab Mon Sep 17 00:00:00 2001 From: f Date: Tue, 2 Jul 2024 12:58:24 -0300 Subject: [PATCH 578/699] =?UTF-8?q?fix:=20la=20descripci=C3=B3n=20del=20ar?= =?UTF-8?q?chivo=20es=20parte=20del=20t=C3=ADtulo=20#16679?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/models/metadata_file.rb | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/app/models/metadata_file.rb b/app/models/metadata_file.rb index 61aea897..fb5082f4 100644 --- a/app/models/metadata_file.rb +++ b/app/models/metadata_file.rb @@ -18,6 +18,18 @@ class MetadataFile < MetadataTemplate # XXX: Esto ayuda a deserializar en {Site#everything_of} def values; end + # Usar la descripción + def titleize? + true + end + + # Devolver la descripción + # + # @return [String] + def to_s + value['description'].to_s + end + def validate super From bd3df6c1863fcec19c98e79070360e7bd49588bc Mon Sep 17 00:00:00 2001 From: f Date: Tue, 2 Jul 2024 13:01:13 -0300 Subject: [PATCH 579/699] fix: new_predefined_array con valores legibles por humanes --- app/models/metadata_predefined_array.rb | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/app/models/metadata_predefined_array.rb b/app/models/metadata_predefined_array.rb index b8e5050e..566a491b 100644 --- a/app/models/metadata_predefined_array.rb +++ b/app/models/metadata_predefined_array.rb @@ -7,4 +7,13 @@ class MetadataPredefinedArray < MetadataArray [v[I18n.locale.to_s], k] end&.to_h end + + # Devolver los valores legibles por humanes + # + # @todo Debería devolver los valores en el idioma del post, no de le + # usuarie + # @return [String] + def to_s + values.invert.select { |x, k| value.include?(x) }.values.join(', ') + end end From 100df4b157fdb7b8f0b00651d679d284a65440be Mon Sep 17 00:00:00 2001 From: f Date: Tue, 2 Jul 2024 13:01:27 -0300 Subject: [PATCH 580/699] fix: el titulo siempre se actualiza #16669 --- app/models/metadata_title.rb | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/app/models/metadata_title.rb b/app/models/metadata_title.rb index 729a71fd..6d6b1bde 100644 --- a/app/models/metadata_title.rb +++ b/app/models/metadata_title.rb @@ -7,6 +7,11 @@ class MetadataTitle < MetadataString false end + # Siempre recalcular el título + def value + self[:value] = default_value + end + # Obtener todos los valores de texto del artículo y generar un título # en base a eso. # From a344c16f4d61366ea2dd44487bb6bfba77feb75a Mon Sep 17 00:00:00 2001 From: f Date: Tue, 2 Jul 2024 13:01:58 -0300 Subject: [PATCH 581/699] fix: cargar los valores actuales de new_predefined_array #16678 --- app/views/posts/attributes/_new_predefined_array.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/posts/attributes/_new_predefined_array.haml b/app/views/posts/attributes/_new_predefined_array.haml index d5f2110e..3b251bcb 100644 --- a/app/views/posts/attributes/_new_predefined_array.haml +++ b/app/views/posts/attributes/_new_predefined_array.haml @@ -34,7 +34,7 @@ Para poder cancelar, mantenemos el estado original y desactivamos o activamos los ítemes según estén incluidos en esa lista o no. %ul.placeholder-glow{ data: { target: 'array.current' } } - - metadata.values.slice(*metadata.value).each_key do |value| + - metadata.values.invert.slice(*metadata.value).each_value do |value| = render 'posts/new_array_value', value: value = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' }, hide_actions: ['array#cancel'], keydown_actions: %w[keydown->array#cancelWithEscape] do From 3a2005e54ac5916f767b840f3436adc225bd9e7a Mon Sep 17 00:00:00 2001 From: f Date: Tue, 2 Jul 2024 13:02:32 -0300 Subject: [PATCH 582/699] fix: no romper relaciones! --- app/views/posts/_htmx_form.haml | 8 +++++--- app/views/posts/attributes/_new_belongs_to.haml | 1 + .../posts/attributes/_new_has_and_belongs_to_many.haml | 1 + app/views/posts/attributes/_new_has_many.haml | 2 ++ app/views/posts/attributes/_new_has_one.haml | 2 +- 5 files changed, 10 insertions(+), 4 deletions(-) diff --git a/app/views/posts/_htmx_form.haml b/app/views/posts/_htmx_form.haml index 1a8c0597..f6704695 100644 --- a/app/views/posts/_htmx_form.haml +++ b/app/views/posts/_htmx_form.haml @@ -85,11 +85,13 @@ = hidden_field_tag "#{base}[layout]", post.layout.name - -# Dibuja cada atributo + -# Dibuja cada atributo, excepto algunos = render 'posts/attributes', site: site, post: post, dir: dir, base: base, locale: locale, except: except - -# Enviamos valores vacíos para los atributos ocultos + -# + Enviamos valores vacíos o arrastrados desde el formulario anterior + para los atributos ignorados - except.each do |attr| - %input{ type: 'hidden', name: "#{base}[#{attr}]", value: "" } + %input{ type: 'hidden', name: "#{base}[#{attr}]", value: params[attr].presence } = yield(:post_form) diff --git a/app/views/posts/attributes/_new_belongs_to.haml b/app/views/posts/attributes/_new_belongs_to.haml index b083e55e..a187e9ea 100644 --- a/app/views/posts/attributes/_new_belongs_to.haml +++ b/app/views/posts/attributes/_new_belongs_to.haml @@ -100,6 +100,7 @@ %input{ type: 'hidden', name: 'attribute', value: metadata.type } - if metadata.inverse? %input{ type: 'hidden', name: 'inverse', value: metadata.inverse } + %input{ type: 'hidden', name: metadata.inverse, value: post.uuid.value } %div{ id: post_modal_id, data: { controller: 'modal' } } = render 'bootstrap/modal', id: post_id, modal_content_attributes: { class: 'h-100' } do - content_for :"#{post_id}_body" do diff --git a/app/views/posts/attributes/_new_has_and_belongs_to_many.haml b/app/views/posts/attributes/_new_has_and_belongs_to_many.haml index 1142c3b9..5dd1039b 100644 --- a/app/views/posts/attributes/_new_has_and_belongs_to_many.haml +++ b/app/views/posts/attributes/_new_has_and_belongs_to_many.haml @@ -101,6 +101,7 @@ %input{ type: 'hidden', name: 'attribute', value: metadata.type } - if metadata.inverse? %input{ type: 'hidden', name: 'inverse', value: metadata.inverse } + %input{ type: 'hidden', name: metadata.inverse, value: post.uuid.value } %div{ id: post_modal_id, data: { controller: 'modal' } } = render 'bootstrap/modal', id: post_id, modal_content_attributes: { class: 'h-100' } do - content_for :"#{post_id}_body" do diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index 9910e078..805636da 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -99,8 +99,10 @@ %input{ type: 'hidden', name: 'name', value: name } %input{ type: 'hidden', name: 'form', value: form_id } %input{ type: 'hidden', name: 'attribute', value: metadata.type } + -# @todo Forma genérica de arrastrar valores desde un formulario al siguiente - if metadata.inverse? %input{ type: 'hidden', name: 'inverse', value: metadata.inverse } + %input{ type: 'hidden', name: metadata.inverse, value: post.uuid.value } %div{ id: post_modal_id, data: { controller: 'modal' } } = render 'bootstrap/modal', id: post_id, modal_content_attributes: { class: 'h-100' } do - content_for :"#{post_id}_body" do diff --git a/app/views/posts/attributes/_new_has_one.haml b/app/views/posts/attributes/_new_has_one.haml index 1d0bb380..c082da6d 100644 --- a/app/views/posts/attributes/_new_has_one.haml +++ b/app/views/posts/attributes/_new_has_one.haml @@ -46,7 +46,7 @@ = render 'bootstrap/modal', id: id, modal_content_attributes: { class: 'h-100' } do - content_for :"#{id}_body" do -# @todo ocultar el modal después de guardar - .placeholder-glow{ 'hx-get': site_posts_form_path(site, layout: layout, base: id, name: name, form: form_id, swap: 'innerHTML', target: target_id, attribute: 'new_has_one', hide: modal_id, uuid: metadata.value, invalid: invalid_id, submitting: submitting_id, saved: saved_id), 'hx-trigger': 'load' } + .placeholder-glow{ 'hx-get': site_posts_form_path(site, layout: layout, base: id, name: name, form: form_id, swap: 'innerHTML', target: target_id, attribute: 'new_has_one', hide: modal_id, uuid: metadata.value, invalid: invalid_id, submitting: submitting_id, saved: saved_id, inverse: metadata.inverse, metadata.inverse => post.uuid.value), 'hx-trigger': 'load' } %span.placeholder.w-100.h-100 - content_for :"#{id}_footer" do From 58cd2f514a176d5130e52729f1cd386f795b3816 Mon Sep 17 00:00:00 2001 From: f Date: Tue, 2 Jul 2024 17:06:18 -0300 Subject: [PATCH 583/699] fix: poder cancelar el modal #16711 --- app/views/posts/attributes/_new_predefined_array.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/posts/attributes/_new_predefined_array.haml b/app/views/posts/attributes/_new_predefined_array.haml index 3b251bcb..80a88098 100644 --- a/app/views/posts/attributes/_new_predefined_array.haml +++ b/app/views/posts/attributes/_new_predefined_array.haml @@ -47,7 +47,7 @@ .form-group.mb-0{ id: "#{id}_body" } -# Eliminamos las tildes para poder buscar independientemente de cómo se escriba - metadata.values.each_pair do |value, key| - .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: value } } + .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: key } } = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: key, checked: metadata.value.include?(key), content: value, data: { action: 'required-checkbox#change', target: 'required-checkbox.checkbox' } - content_for :"#{id}_footer" do From 338af3f0fecc8c8ced47445c26bbee0a6e82dd6e Mon Sep 17 00:00:00 2001 From: f Date: Thu, 4 Jul 2024 15:02:17 -0300 Subject: [PATCH 584/699] feat: array.item reutilizable #16718 --- .../controllers/array_controller.js | 2 +- app/views/posts/attributes/_new_array.haml | 2 +- .../posts/attributes/_new_belongs_to.haml | 2 +- .../_new_has_and_belongs_to_many.haml | 2 +- app/views/posts/attributes/_new_has_many.haml | 2 +- .../attributes/_new_predefined_array.haml | 2 +- .../attributes/_new_predefined_value.haml | 2 +- app/views/posts/new_array.haml | 2 +- app/views/posts/new_belongs_to_value.haml | 2 +- app/views/posts/new_has_many_value.haml | 2 +- app/views/targets/array/_item.haml | 21 +++++++++++++++++++ config/locales/en.yml | 6 ++++-- config/locales/es.yml | 6 ++++-- 13 files changed, 39 insertions(+), 14 deletions(-) create mode 100644 app/views/targets/array/_item.haml diff --git a/app/javascript/controllers/array_controller.js b/app/javascript/controllers/array_controller.js index db768ef3..fb74a673 100644 --- a/app/javascript/controllers/array_controller.js +++ b/app/javascript/controllers/array_controller.js @@ -108,7 +108,7 @@ export default class extends Controller { if (!this.isChecked(itemTarget)) continue; this.originalValue.push(itemTarget.dataset.value); - this.newArrayValueURL.searchParams.set("value", itemTarget.dataset.value); + this.newArrayValueURL.searchParams.set("value", itemTarget.dataset?.humanValue || itemTarget.dataset?.value); const placeholder = this.placeholderTarget.content.firstElementChild.cloneNode(true); diff --git a/app/views/posts/attributes/_new_array.haml b/app/views/posts/attributes/_new_array.haml index b8607627..989d734b 100644 --- a/app/views/posts/attributes/_new_array.haml +++ b/app/views/posts/attributes/_new_array.haml @@ -48,7 +48,7 @@ .form-group.mb-0{ id: "#{id}_body" } -# Eliminamos las tildes para poder buscar independientemente de cómo se escriba. - metadata.values.each do |value| - .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: value } } + = render 'targets/array/item', value: value, class: 'mb-2' do = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: value, checked: metadata.value.include?(value), content: value, data: { action: 'required-checkbox#change', target: 'required-checkbox.checkbox' } - content_for :"#{id}_footer" do diff --git a/app/views/posts/attributes/_new_belongs_to.haml b/app/views/posts/attributes/_new_belongs_to.haml index a187e9ea..20b40140 100644 --- a/app/views/posts/attributes/_new_belongs_to.haml +++ b/app/views/posts/attributes/_new_belongs_to.haml @@ -58,7 +58,7 @@ - content_for :"#{id}_body" do .form-group.mb-0{ id: value_list_id } - metadata.values.each_pair do |value, uuid| - .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: uuid } } + = render 'targets/array/item', value: uuid, 'human-value': value, class: 'mb-2' do = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: uuid, checked: metadata.value.include?(uuid), content: value, type: 'radio' -# diff --git a/app/views/posts/attributes/_new_has_and_belongs_to_many.haml b/app/views/posts/attributes/_new_has_and_belongs_to_many.haml index 5dd1039b..d70d9eb4 100644 --- a/app/views/posts/attributes/_new_has_and_belongs_to_many.haml +++ b/app/views/posts/attributes/_new_has_and_belongs_to_many.haml @@ -59,7 +59,7 @@ - content_for :"#{id}_body" do .form-group.mb-0{ id: value_list_id } - metadata.values.each_pair do |value, uuid| - .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: uuid } } + = render 'targets/array/item', value: uuid, 'human-value': value, class: 'mb-2' do = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: uuid, checked: metadata.value.include?(uuid), content: value, data: { action: 'required-checkbox#change', target: 'required-checkbox.checkbox' } -# diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index 805636da..601a7e38 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -59,7 +59,7 @@ - content_for :"#{id}_body" do .form-group.mb-0{ id: value_list_id } - metadata.values.each_pair do |value, uuid| - .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: uuid } } + = render 'targets/array/item', value: uuid, 'human-value': value, class: 'mb-2' do = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: uuid, checked: metadata.value.include?(uuid), content: value, data: { action: 'required-checkbox#change', target: 'required-checkbox.checkbox' } -# diff --git a/app/views/posts/attributes/_new_predefined_array.haml b/app/views/posts/attributes/_new_predefined_array.haml index 80a88098..feececc5 100644 --- a/app/views/posts/attributes/_new_predefined_array.haml +++ b/app/views/posts/attributes/_new_predefined_array.haml @@ -47,7 +47,7 @@ .form-group.mb-0{ id: "#{id}_body" } -# Eliminamos las tildes para poder buscar independientemente de cómo se escriba - metadata.values.each_pair do |value, key| - .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: key } } + = render 'targets/array/item', class: 'mb-2', value: key, 'human-value': value do = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: key, checked: metadata.value.include?(key), content: value, data: { action: 'required-checkbox#change', target: 'required-checkbox.checkbox' } - content_for :"#{id}_footer" do diff --git a/app/views/posts/attributes/_new_predefined_value.haml b/app/views/posts/attributes/_new_predefined_value.haml index 5158169d..ba52baf1 100644 --- a/app/views/posts/attributes/_new_predefined_value.haml +++ b/app/views/posts/attributes/_new_predefined_value.haml @@ -57,7 +57,7 @@ - content_for :"#{id}_body" do .form-group.mb-0{ id: value_list_id } - metadata.values.each_pair do |value, key| - .mb-2{ data: { target: 'array.item', 'searchable-value': value.remove_diacritics.downcase, value: value } } + = render 'targets/array/item', value: value, class: 'mb-2' do = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: key, checked: (metadata.value == key), content: value, type: 'radio' - content_for :"#{id}_footer" do diff --git a/app/views/posts/new_array.haml b/app/views/posts/new_array.haml index 77d64b55..9d6e62ea 100644 --- a/app/views/posts/new_array.haml +++ b/app/views/posts/new_array.haml @@ -1,6 +1,6 @@ - item_id = random_id -.mb-2{ id: item_id, data: { target: 'array.item', 'searchable-value': @value.remove_diacritics.downcase, value: @value } } += render 'targets/array/item', value: @value, class: 'mb-2', id: item_id do .d-flex.flex-row.flex-wrap .flex-grow-1 = render 'bootstrap/custom_checkbox', name: @name, id: random_id, value: @value, checked: true, content: @value diff --git a/app/views/posts/new_belongs_to_value.haml b/app/views/posts/new_belongs_to_value.haml index d1f9c3f9..cc66f680 100644 --- a/app/views/posts/new_belongs_to_value.haml +++ b/app/views/posts/new_belongs_to_value.haml @@ -1,2 +1,2 @@ -.mb-2{ data: { target: 'array.item', 'searchable-value': @value.remove_diacritics.downcase, value: @uuid } } += render 'targets/array/item', value: @uuid, 'human-value': @value, class: 'mb-2' do = render 'bootstrap/custom_checkbox', name: @name, id: random_id, value: @uuid, checked: true, content: @value, type: 'radio' diff --git a/app/views/posts/new_has_many_value.haml b/app/views/posts/new_has_many_value.haml index b9846475..8479f3e4 100644 --- a/app/views/posts/new_has_many_value.haml +++ b/app/views/posts/new_has_many_value.haml @@ -1,2 +1,2 @@ -.mb-2{ data: { target: 'array.item', 'searchable-value': @value.remove_diacritics.downcase, value: @uuid } } += render 'targets/array/item', value: @uuid, 'human-value': @value, class: 'mb-2' do = render 'bootstrap/custom_checkbox', name: @name, id: random_id, value: @uuid, checked: true, content: @value diff --git a/app/views/targets/array/_item.haml b/app/views/targets/array/_item.haml new file mode 100644 index 00000000..f89a42e5 --- /dev/null +++ b/app/views/targets/array/_item.haml @@ -0,0 +1,21 @@ +-# + Un item de un array. + + Además de los valores por defecto, se pueden pasar otros atributos + para el div del ítem. + + @param :value [String] El valor (requerido) + @param :human-value [String] El valor legible por humanes (opcional) + @param :searchable-value [String] El valor para usar en el filtro (opcional) + +:ruby + local_assigns[:'human-value'] ||= value + local_assigns[:'searchable-value'] ||= local_assigns[:'human-value'].remove_diacritics.downcase + local_assigns.delete(:value) + + data = local_assigns.delete(:data) + data ||= {} + data[:'human-value'] = local_assigns.delete(:'human-value') + data[:'searchable-value'] = local_assigns.delete(:'searchable-value') + +%div{ **local_assigns, data: { target: 'array.item', value: value, **data } }= yield diff --git a/config/locales/en.yml b/config/locales/en.yml index 52f002e6..ce5a9e36 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -722,8 +722,6 @@ en: validation: invalid: "Some fields need attention! Please search for the fields marked as not valid." submitting: "Saving changes, please wait..." - new_array: - remove: "Remove" attributes: add: Add title: @@ -967,3 +965,7 @@ en: edit: "Edit" alert: saved: "Changes were saved!" + targets: + array: + item: + remove: "Remove" diff --git a/config/locales/es.yml b/config/locales/es.yml index 8fe09758..416c3e1a 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -730,8 +730,6 @@ es: validation: invalid: "¡Te falta completar algunos campos! Busca los que estén marcados como no válidos." submitting: "Guardando, por favor espera..." - new_array: - remove: "Eliminar" attributes: add: Agregar title: @@ -977,3 +975,7 @@ es: edit: "Editar" alert: saved: "¡Cambios guardados!" + targets: + array: + item: + remove: "Eliminar" From e9e55945d93984454cd577bca8c08737895f83c8 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 4 Jul 2024 15:05:58 -0300 Subject: [PATCH 585/699] fix: editar el post de has_one desde su modal #16665 --- app/views/posts/_new_has_one.haml | 2 +- app/views/posts/_new_related_post.haml | 6 ++++-- app/views/posts/attributes/_new_has_one.haml | 2 +- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/app/views/posts/_new_has_one.haml b/app/views/posts/_new_has_one.haml index 54a370cd..f5286670 100644 --- a/app/views/posts/_new_has_one.haml +++ b/app/views/posts/_new_has_one.haml @@ -1,2 +1,2 @@ -= render 'posts/new_related_post', post: post += render 'posts/new_related_post', post: post, modal_id: modal_id %input{ type: 'hidden', name: name, value: value } diff --git a/app/views/posts/_new_related_post.haml b/app/views/posts/_new_related_post.haml index 046080c9..9e342a6c 100644 --- a/app/views/posts/_new_related_post.haml +++ b/app/views/posts/_new_related_post.haml @@ -1,4 +1,6 @@ :ruby + local_assigns[:modal_id] ||= 'generic_modal' + image = nil description = nil @@ -6,9 +8,9 @@ description = post.post.image.value['description'] end -.col.mb-3.p-1 +.col.mb-3.p-1{ data: { controller: 'modal' } } = render('bootstrap/card', image: image, description: description, title: post.title, class: 'h-100') do - if post.post.attribute?(:description) %p.card-text= post.post.description.value - = link_to t('.edit'), edit_site_post_path(post.site, post.path), class: 'btn btn-secondary' + = render 'bootstrap/btn', content: t('.edit'), data: { action: 'modal#showAnother', 'modal-show-value': local_assigns[:modal_id] }, id: random_id diff --git a/app/views/posts/attributes/_new_has_one.haml b/app/views/posts/attributes/_new_has_one.haml index c082da6d..09cc9b7f 100644 --- a/app/views/posts/attributes/_new_has_one.haml +++ b/app/views/posts/attributes/_new_has_one.haml @@ -34,7 +34,7 @@ .row.no-gutters.placeholder-glow{ id: target_id } -# @todo issue-7537 - if !metadata.empty? && (indexed_post = site.indexed_posts.find_by(post_id: metadata.value)) - = render 'posts/new_has_one', post: indexed_post, name: name, value: metadata.value + = render 'posts/new_has_one', post: indexed_post, name: name, value: metadata.value, modal_id: modal_id -# El modal se genera por fuera del formulario, para poder enviar los From d7fa0a9deae328d85ae293dbf10948da1fda009f Mon Sep 17 00:00:00 2001 From: fauno Date: Thu, 4 Jul 2024 18:09:56 +0000 Subject: [PATCH 586/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-259c401740dfed47822c.js | 3 --- public/packs/js/application-259c401740dfed47822c.js.br | 3 --- public/packs/js/application-259c401740dfed47822c.js.gz | 3 --- public/packs/js/application-259c401740dfed47822c.js.map | 3 --- public/packs/js/application-259c401740dfed47822c.js.map.br | 3 --- public/packs/js/application-259c401740dfed47822c.js.map.gz | 3 --- public/packs/js/application-8f69d0f11e0ca7be2504.js | 3 +++ ...SE.txt => application-8f69d0f11e0ca7be2504.js.LICENSE.txt} | 0 public/packs/js/application-8f69d0f11e0ca7be2504.js.br | 3 +++ public/packs/js/application-8f69d0f11e0ca7be2504.js.gz | 3 +++ public/packs/js/application-8f69d0f11e0ca7be2504.js.map | 3 +++ public/packs/js/application-8f69d0f11e0ca7be2504.js.map.br | 3 +++ public/packs/js/application-8f69d0f11e0ca7be2504.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 2 +- 17 files changed, 23 insertions(+), 23 deletions(-) delete mode 100644 public/packs/js/application-259c401740dfed47822c.js delete mode 100644 public/packs/js/application-259c401740dfed47822c.js.br delete mode 100644 public/packs/js/application-259c401740dfed47822c.js.gz delete mode 100644 public/packs/js/application-259c401740dfed47822c.js.map delete mode 100644 public/packs/js/application-259c401740dfed47822c.js.map.br delete mode 100644 public/packs/js/application-259c401740dfed47822c.js.map.gz create mode 100644 public/packs/js/application-8f69d0f11e0ca7be2504.js rename public/packs/js/{application-259c401740dfed47822c.js.LICENSE.txt => application-8f69d0f11e0ca7be2504.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-8f69d0f11e0ca7be2504.js.br create mode 100644 public/packs/js/application-8f69d0f11e0ca7be2504.js.gz create mode 100644 public/packs/js/application-8f69d0f11e0ca7be2504.js.map create mode 100644 public/packs/js/application-8f69d0f11e0ca7be2504.js.map.br create mode 100644 public/packs/js/application-8f69d0f11e0ca7be2504.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 34bc1f5b..9b56abb9 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:88c1f1a739d34084f336007dde9c7f90ebbe91b704679428becd515344eb62d3 +oid sha256:e0932b1a060d222c9cd5e311838663a15604c1eedb5b99463f71efc046325a7d size 11449 diff --git a/public/packs/js/application-259c401740dfed47822c.js b/public/packs/js/application-259c401740dfed47822c.js deleted file mode 100644 index cb0eb957..00000000 --- a/public/packs/js/application-259c401740dfed47822c.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:d5b756828333dc54fe38ad3678c73d524861ebbaf5769c5ee8d08029de1d440a -size 1669027 diff --git a/public/packs/js/application-259c401740dfed47822c.js.br b/public/packs/js/application-259c401740dfed47822c.js.br deleted file mode 100644 index 8dd982f1..00000000 --- a/public/packs/js/application-259c401740dfed47822c.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:705e0f848187878be1d60030522cb5a22c2ac9ba12a5cbe606f34ae595c01348 -size 368569 diff --git a/public/packs/js/application-259c401740dfed47822c.js.gz b/public/packs/js/application-259c401740dfed47822c.js.gz deleted file mode 100644 index de8d598f..00000000 --- a/public/packs/js/application-259c401740dfed47822c.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6478bcd675c7131936c8b364ca263a98fcecbba781b656e47d00dfd74e200893 -size 485739 diff --git a/public/packs/js/application-259c401740dfed47822c.js.map b/public/packs/js/application-259c401740dfed47822c.js.map deleted file mode 100644 index c466c583..00000000 --- a/public/packs/js/application-259c401740dfed47822c.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5cbe23e77de63a2bff04cee1d72f11118ec5c471dc7417b239da0cb248da55ae -size 6438002 diff --git a/public/packs/js/application-259c401740dfed47822c.js.map.br b/public/packs/js/application-259c401740dfed47822c.js.map.br deleted file mode 100644 index 06322c48..00000000 --- a/public/packs/js/application-259c401740dfed47822c.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e01ac77f9e79769442ce155489cffd92b91f68baf5eead1a9a2d9e220041f99a -size 1386372 diff --git a/public/packs/js/application-259c401740dfed47822c.js.map.gz b/public/packs/js/application-259c401740dfed47822c.js.map.gz deleted file mode 100644 index 5852fea3..00000000 --- a/public/packs/js/application-259c401740dfed47822c.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:b0bca76541a1751d32f45d4346289b406dcfeef045d91b7e980812bec3d52b5b -size 1714681 diff --git a/public/packs/js/application-8f69d0f11e0ca7be2504.js b/public/packs/js/application-8f69d0f11e0ca7be2504.js new file mode 100644 index 00000000..91367b53 --- /dev/null +++ b/public/packs/js/application-8f69d0f11e0ca7be2504.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6b235c4eb1139e1a4bdf9daaecd159f529b10f5514687573ba1ecc00bba1fb6 +size 1669121 diff --git a/public/packs/js/application-259c401740dfed47822c.js.LICENSE.txt b/public/packs/js/application-8f69d0f11e0ca7be2504.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-259c401740dfed47822c.js.LICENSE.txt rename to public/packs/js/application-8f69d0f11e0ca7be2504.js.LICENSE.txt diff --git a/public/packs/js/application-8f69d0f11e0ca7be2504.js.br b/public/packs/js/application-8f69d0f11e0ca7be2504.js.br new file mode 100644 index 00000000..eff908dc --- /dev/null +++ b/public/packs/js/application-8f69d0f11e0ca7be2504.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:767f755f8dda62aac2ded222ace1b32108d07a4583cb864e342bf5d35b3fef95 +size 368411 diff --git a/public/packs/js/application-8f69d0f11e0ca7be2504.js.gz b/public/packs/js/application-8f69d0f11e0ca7be2504.js.gz new file mode 100644 index 00000000..5d2fba2a --- /dev/null +++ b/public/packs/js/application-8f69d0f11e0ca7be2504.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f35c3299dd87f5309d3adf96570b80264f169d032c252b1f4da0d1296a98267 +size 485766 diff --git a/public/packs/js/application-8f69d0f11e0ca7be2504.js.map b/public/packs/js/application-8f69d0f11e0ca7be2504.js.map new file mode 100644 index 00000000..87e0cc84 --- /dev/null +++ b/public/packs/js/application-8f69d0f11e0ca7be2504.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9732c120406374b709a194dbccff611bc43476c0d38621c45df981a31b220e7e +size 6438103 diff --git a/public/packs/js/application-8f69d0f11e0ca7be2504.js.map.br b/public/packs/js/application-8f69d0f11e0ca7be2504.js.map.br new file mode 100644 index 00000000..d644a0dd --- /dev/null +++ b/public/packs/js/application-8f69d0f11e0ca7be2504.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10ce48f1afd5d1703f265109f5da46d241cc989699ada0a9113ca9de4746ca0b +size 1385749 diff --git a/public/packs/js/application-8f69d0f11e0ca7be2504.js.map.gz b/public/packs/js/application-8f69d0f11e0ca7be2504.js.map.gz new file mode 100644 index 00000000..cdbd6562 --- /dev/null +++ b/public/packs/js/application-8f69d0f11e0ca7be2504.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51218081dca07043ac39ea4d95be8ff9d10cbb2e008de9316950e5b93b01cca8 +size 1714684 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 5ccf8064..c2bc76a3 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:648a4dadfef23e3fe03acc6516ba71df923e5aba6e8f0b75cf1bded97fb34a17 +oid sha256:414eb620095846df6f046f3f83cd9090c12589e3ebc9e4fcbceb482da98c84ff size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index b5185d85..d7091ee2 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e01d7beb1f47c3855436e310fd644ff9f2bbc0cd64a626320664b3554f8dca07 -size 322 +oid sha256:ea29a8d38a174a6b0932f2a932bf82a02f1fb84f9b6a1ecdcb84b3e9ee40d688 +size 320 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 3d50c3a0..79ffc690 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7b85747137fa8de98eaadf30c5abad212c14e44be2fbfc86ee9194304970d050 +oid sha256:7e2259446551432aac80b002c692acc7583688ed82a3a2c081f3181c769acfb7 size 365 From 434e1311f20633880b36ef41f2abaa79f433e0ef Mon Sep 17 00:00:00 2001 From: f Date: Thu, 4 Jul 2024 16:51:08 -0300 Subject: [PATCH 587/699] fix: htmx usa value para el evento #16714 --- app/javascript/controllers/form_validation_controller.js | 4 ++-- app/javascript/controllers/notification_controller.js | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/app/javascript/controllers/form_validation_controller.js b/app/javascript/controllers/form_validation_controller.js index dd1a98ed..b1c0a2f8 100644 --- a/app/javascript/controllers/form_validation_controller.js +++ b/app/javascript/controllers/form_validation_controller.js @@ -39,13 +39,13 @@ export default class extends Controller { if (!this.element.getAttributeNames().some(x => x.startsWith("hx-"))) this.element.submit(); - window.dispatchEvent(new CustomEvent("notification:show", { detail: { id: this.submittingIdValue } })); + window.dispatchEvent(new CustomEvent("notification:show", { detail: { value: this.submittingIdValue } })); } else { event?.stopPropagation(); this.element.classList.add("was-validated"); - window.dispatchEvent(new CustomEvent("notification:show", { detail: { id: this.invalidIdValue } })); + window.dispatchEvent(new CustomEvent("notification:show", { detail: { value: this.invalidIdValue } })); } this.submitting = false; diff --git a/app/javascript/controllers/notification_controller.js b/app/javascript/controllers/notification_controller.js index 7fbe3b5a..89ae085d 100644 --- a/app/javascript/controllers/notification_controller.js +++ b/app/javascript/controllers/notification_controller.js @@ -19,8 +19,8 @@ export default class extends Controller { * actual, se oculta. */ show(event = undefined) { - if (event?.detail?.id !== this.element.id) { - this.hide({ detail: { id: this.element.id } }); + if (event?.detail?.value !== this.element.id) { + this.hide({ detail: { value: this.element.id } }); return; } @@ -33,7 +33,7 @@ export default class extends Controller { } hide(event = undefined) { - if (event?.detail?.id !== this.element.id) return; + if (event?.detail?.value !== this.element.id) return; this.element.classList.remove(...this.showClasses); this.element.classList.add(...this.hideClasses); From 3efd3827a6fdb6f19e3cd5dd93ad3aff33ec21d0 Mon Sep 17 00:00:00 2001 From: f Date: Thu, 4 Jul 2024 16:51:40 -0300 Subject: [PATCH 588/699] =?UTF-8?q?fix:=20ser=20espec=C3=ADficxs=20con=20l?= =?UTF-8?q?o=20que=20va=20a=20pasar=20en=20el=20bot=C3=B3n=20#16712?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/locales/en.yml | 2 +- config/locales/es.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/config/locales/en.yml b/config/locales/en.yml index ce5a9e36..ee3a23e7 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -957,7 +957,7 @@ en: add: "Add %{layout}" add_new: "Add new option" cancel: "Cancel" - close: "Close" + close: "Close without saving" edit: "Edit" filter: "Start typing to filter..." save: "Save" diff --git a/config/locales/es.yml b/config/locales/es.yml index 416c3e1a..336dc503 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -967,7 +967,7 @@ es: add: "Agregar %{layout}" add_new: "Agregar nueva opción" cancel: "Cancelar" - close: "Cerrar" + close: "Cerrar sin guardar" edit: "Editar" filter: "Empezá a escribir para filtrar..." save: "Guardar" From d50cba9f39703c0e8ab4b8ee6a30866f08394c98 Mon Sep 17 00:00:00 2001 From: fauno Date: Thu, 4 Jul 2024 19:57:56 +0000 Subject: [PATCH 589/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- public/packs/js/application-8f69d0f11e0ca7be2504.js | 3 --- public/packs/js/application-8f69d0f11e0ca7be2504.js.br | 3 --- public/packs/js/application-8f69d0f11e0ca7be2504.js.gz | 3 --- public/packs/js/application-8f69d0f11e0ca7be2504.js.map | 3 --- public/packs/js/application-8f69d0f11e0ca7be2504.js.map.br | 3 --- public/packs/js/application-8f69d0f11e0ca7be2504.js.map.gz | 3 --- public/packs/js/application-b4baa487ab2bd8d1019a.js | 3 +++ ...NSE.txt => application-b4baa487ab2bd8d1019a.js.LICENSE.txt} | 0 public/packs/js/application-b4baa487ab2bd8d1019a.js.br | 3 +++ public/packs/js/application-b4baa487ab2bd8d1019a.js.gz | 3 +++ public/packs/js/application-b4baa487ab2bd8d1019a.js.map | 3 +++ public/packs/js/application-b4baa487ab2bd8d1019a.js.map.br | 3 +++ public/packs/js/application-b4baa487ab2bd8d1019a.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 2 +- public/packs/manifest.json.gz | 2 +- 17 files changed, 22 insertions(+), 22 deletions(-) delete mode 100644 public/packs/js/application-8f69d0f11e0ca7be2504.js delete mode 100644 public/packs/js/application-8f69d0f11e0ca7be2504.js.br delete mode 100644 public/packs/js/application-8f69d0f11e0ca7be2504.js.gz delete mode 100644 public/packs/js/application-8f69d0f11e0ca7be2504.js.map delete mode 100644 public/packs/js/application-8f69d0f11e0ca7be2504.js.map.br delete mode 100644 public/packs/js/application-8f69d0f11e0ca7be2504.js.map.gz create mode 100644 public/packs/js/application-b4baa487ab2bd8d1019a.js rename public/packs/js/{application-8f69d0f11e0ca7be2504.js.LICENSE.txt => application-b4baa487ab2bd8d1019a.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-b4baa487ab2bd8d1019a.js.br create mode 100644 public/packs/js/application-b4baa487ab2bd8d1019a.js.gz create mode 100644 public/packs/js/application-b4baa487ab2bd8d1019a.js.map create mode 100644 public/packs/js/application-b4baa487ab2bd8d1019a.js.map.br create mode 100644 public/packs/js/application-b4baa487ab2bd8d1019a.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 9b56abb9..6ac5a373 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e0932b1a060d222c9cd5e311838663a15604c1eedb5b99463f71efc046325a7d +oid sha256:e468d2ddff834944bef81d2e5727c764cbd931293c7fe983d165c2ce831c0d49 size 11449 diff --git a/public/packs/js/application-8f69d0f11e0ca7be2504.js b/public/packs/js/application-8f69d0f11e0ca7be2504.js deleted file mode 100644 index 91367b53..00000000 --- a/public/packs/js/application-8f69d0f11e0ca7be2504.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e6b235c4eb1139e1a4bdf9daaecd159f529b10f5514687573ba1ecc00bba1fb6 -size 1669121 diff --git a/public/packs/js/application-8f69d0f11e0ca7be2504.js.br b/public/packs/js/application-8f69d0f11e0ca7be2504.js.br deleted file mode 100644 index eff908dc..00000000 --- a/public/packs/js/application-8f69d0f11e0ca7be2504.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:767f755f8dda62aac2ded222ace1b32108d07a4583cb864e342bf5d35b3fef95 -size 368411 diff --git a/public/packs/js/application-8f69d0f11e0ca7be2504.js.gz b/public/packs/js/application-8f69d0f11e0ca7be2504.js.gz deleted file mode 100644 index 5d2fba2a..00000000 --- a/public/packs/js/application-8f69d0f11e0ca7be2504.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0f35c3299dd87f5309d3adf96570b80264f169d032c252b1f4da0d1296a98267 -size 485766 diff --git a/public/packs/js/application-8f69d0f11e0ca7be2504.js.map b/public/packs/js/application-8f69d0f11e0ca7be2504.js.map deleted file mode 100644 index 87e0cc84..00000000 --- a/public/packs/js/application-8f69d0f11e0ca7be2504.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9732c120406374b709a194dbccff611bc43476c0d38621c45df981a31b220e7e -size 6438103 diff --git a/public/packs/js/application-8f69d0f11e0ca7be2504.js.map.br b/public/packs/js/application-8f69d0f11e0ca7be2504.js.map.br deleted file mode 100644 index d644a0dd..00000000 --- a/public/packs/js/application-8f69d0f11e0ca7be2504.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:10ce48f1afd5d1703f265109f5da46d241cc989699ada0a9113ca9de4746ca0b -size 1385749 diff --git a/public/packs/js/application-8f69d0f11e0ca7be2504.js.map.gz b/public/packs/js/application-8f69d0f11e0ca7be2504.js.map.gz deleted file mode 100644 index cdbd6562..00000000 --- a/public/packs/js/application-8f69d0f11e0ca7be2504.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:51218081dca07043ac39ea4d95be8ff9d10cbb2e008de9316950e5b93b01cca8 -size 1714684 diff --git a/public/packs/js/application-b4baa487ab2bd8d1019a.js b/public/packs/js/application-b4baa487ab2bd8d1019a.js new file mode 100644 index 00000000..d23bcf7c --- /dev/null +++ b/public/packs/js/application-b4baa487ab2bd8d1019a.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5570cf8d82b589e8dd4a77d7f20e74fbbcf7721d984acaaf9fa2b63c26a2def5 +size 1669136 diff --git a/public/packs/js/application-8f69d0f11e0ca7be2504.js.LICENSE.txt b/public/packs/js/application-b4baa487ab2bd8d1019a.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-8f69d0f11e0ca7be2504.js.LICENSE.txt rename to public/packs/js/application-b4baa487ab2bd8d1019a.js.LICENSE.txt diff --git a/public/packs/js/application-b4baa487ab2bd8d1019a.js.br b/public/packs/js/application-b4baa487ab2bd8d1019a.js.br new file mode 100644 index 00000000..3416ea3f --- /dev/null +++ b/public/packs/js/application-b4baa487ab2bd8d1019a.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7fe6aaef8a5f46abf666a70308a564bbd873bd5637c6caf1908bb0b78eea32e +size 368588 diff --git a/public/packs/js/application-b4baa487ab2bd8d1019a.js.gz b/public/packs/js/application-b4baa487ab2bd8d1019a.js.gz new file mode 100644 index 00000000..5f810b02 --- /dev/null +++ b/public/packs/js/application-b4baa487ab2bd8d1019a.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69cc5ef71af5b657859e097b60a4a3fec58a0d5d6df411cdf8785c9bbeeb58ec +size 485768 diff --git a/public/packs/js/application-b4baa487ab2bd8d1019a.js.map b/public/packs/js/application-b4baa487ab2bd8d1019a.js.map new file mode 100644 index 00000000..f1a6d06f --- /dev/null +++ b/public/packs/js/application-b4baa487ab2bd8d1019a.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:931fd7332f4383a278c5d51784c983dd83ee6fc9153bffde7081cc9cabba9396 +size 6438113 diff --git a/public/packs/js/application-b4baa487ab2bd8d1019a.js.map.br b/public/packs/js/application-b4baa487ab2bd8d1019a.js.map.br new file mode 100644 index 00000000..a1fdf7f9 --- /dev/null +++ b/public/packs/js/application-b4baa487ab2bd8d1019a.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5c47cc4c56239e504c606f1a913c04450b3159fa9885d52f8b1068e3346569b +size 1386215 diff --git a/public/packs/js/application-b4baa487ab2bd8d1019a.js.map.gz b/public/packs/js/application-b4baa487ab2bd8d1019a.js.map.gz new file mode 100644 index 00000000..4a2eeeaf --- /dev/null +++ b/public/packs/js/application-b4baa487ab2bd8d1019a.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59c537e654bd9498c93d2552bdc25827cb91c1dacc42e0e9d92f7969a2d81db2 +size 1714692 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index c2bc76a3..29ff8ea8 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:414eb620095846df6f046f3f83cd9090c12589e3ebc9e4fcbceb482da98c84ff +oid sha256:9c286d8875d29377f49bddd9a02dcbf5ce276435a37d359f91c00c796215f2aa size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index d7091ee2..7b07b0ca 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:ea29a8d38a174a6b0932f2a932bf82a02f1fb84f9b6a1ecdcb84b3e9ee40d688 +oid sha256:cfd1a5608cedfc6bd75d4c582a8ac1597f4732a165dbc46d1fa05a0ff301aab5 size 320 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index 79ffc690..a00ab9a8 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:7e2259446551432aac80b002c692acc7583688ed82a3a2c081f3181c769acfb7 +oid sha256:dda7bd33835b05e7d478a0ec8c952eaf5b32d064f6c148d24ef8853aebaeacff size 365 From 01363c701803e9b789135c7bdca68891684f2269 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 5 Jul 2024 10:10:18 -0300 Subject: [PATCH 590/699] fixup! fix: editar el post de has_one desde su modal #16665 --- app/views/posts/new_has_one_value.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/posts/new_has_one_value.haml b/app/views/posts/new_has_one_value.haml index 9f2b660a..8407f981 100644 --- a/app/views/posts/new_has_one_value.haml +++ b/app/views/posts/new_has_one_value.haml @@ -1 +1 @@ -= render 'posts/new_has_one', post: @post.to_index, name: params.require(:name), value: @uuid += render 'posts/new_has_one', post: @post.to_index, name: params.require(:name), value: @uuid, modal_id: params.require(:saved) From 76cf8ea9405b2442a0c6a0dcd4f3697cd09c7d60 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 5 Jul 2024 10:32:36 -0300 Subject: [PATCH 591/699] =?UTF-8?q?fix:=20poder=20volver=20a=20abrir=20el?= =?UTF-8?q?=20mismo=20modal=20despu=C3=A9s=20de=20guardar?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/posts/new_has_one_value.haml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/views/posts/new_has_one_value.haml b/app/views/posts/new_has_one_value.haml index 8407f981..6eece5dc 100644 --- a/app/views/posts/new_has_one_value.haml +++ b/app/views/posts/new_has_one_value.haml @@ -1 +1 @@ -= render 'posts/new_has_one', post: @post.to_index, name: params.require(:name), value: @uuid, modal_id: params.require(:saved) += render 'posts/new_has_one', post: @post.to_index, name: params.require(:name), value: @uuid, modal_id: params.require(:show) From 6056058754fd8fedf2557edfc0597f897ba77dfd Mon Sep 17 00:00:00 2001 From: fauno Date: Fri, 5 Jul 2024 13:38:45 +0000 Subject: [PATCH 592/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 6ac5a373..3dd4cacc 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e468d2ddff834944bef81d2e5727c764cbd931293c7fe983d165c2ce831c0d49 +oid sha256:e3064b08aac06129b3c1258f031ce1ad74c9b645b9d3ca57f6760493c5d2bdbf size 11449 From 9960f12863b7adb065e7b75aeac4a60f1130524e Mon Sep 17 00:00:00 2001 From: f Date: Fri, 5 Jul 2024 10:38:48 -0300 Subject: [PATCH 593/699] fix: traducciones faltantes --- config/locales/en.yml | 3 ++- config/locales/es.yml | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/config/locales/en.yml b/config/locales/en.yml index ee3a23e7..ec5b34a9 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -763,11 +763,12 @@ en: edit: "Edit" new_array: edit: "Edit" - required: "Please select at least one option." new_has_one: edit: "Edit" new_belongs_to: edit: "Edit" + required_checkbox: + required: "Please select at least one option." reorder: submit: 'Save order' select: 'Select this post' diff --git a/config/locales/es.yml b/config/locales/es.yml index 336dc503..61c645a0 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -773,11 +773,12 @@ es: edit: "Editar" new_array: edit: "Editar" - required: "Seleccioná al menos una opción." new_has_one: edit: "Editar" new_belongs_to: edit: "Editar" + required_checkbox: + required: "Seleccioná al menos una opción." reorder: submit: 'Guardar orden' select: 'Seleccionar este artículo' From d793d4fe54ea8687ddcbcc9bc9289d0522252f66 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 5 Jul 2024 11:56:48 -0300 Subject: [PATCH 594/699] fix: poder mandar uuids de relaciones! --- app/javascript/controllers/array_controller.js | 2 +- app/views/posts/attributes/_new_belongs_to.haml | 2 +- app/views/posts/attributes/_new_has_and_belongs_to_many.haml | 2 +- app/views/posts/attributes/_new_has_many.haml | 2 +- app/views/targets/array/_item.haml | 3 +++ 5 files changed, 7 insertions(+), 4 deletions(-) diff --git a/app/javascript/controllers/array_controller.js b/app/javascript/controllers/array_controller.js index fb74a673..fea690d2 100644 --- a/app/javascript/controllers/array_controller.js +++ b/app/javascript/controllers/array_controller.js @@ -108,7 +108,7 @@ export default class extends Controller { if (!this.isChecked(itemTarget)) continue; this.originalValue.push(itemTarget.dataset.value); - this.newArrayValueURL.searchParams.set("value", itemTarget.dataset?.humanValue || itemTarget.dataset?.value); + this.newArrayValueURL.searchParams.set("value", itemTarget.dataset?.sendValue || itemTarget.dataset?.value); const placeholder = this.placeholderTarget.content.firstElementChild.cloneNode(true); diff --git a/app/views/posts/attributes/_new_belongs_to.haml b/app/views/posts/attributes/_new_belongs_to.haml index 20b40140..d23301d9 100644 --- a/app/views/posts/attributes/_new_belongs_to.haml +++ b/app/views/posts/attributes/_new_belongs_to.haml @@ -58,7 +58,7 @@ - content_for :"#{id}_body" do .form-group.mb-0{ id: value_list_id } - metadata.values.each_pair do |value, uuid| - = render 'targets/array/item', value: uuid, 'human-value': value, class: 'mb-2' do + = render 'targets/array/item', value: uuid, 'send-value': uuid, 'human-value': value, class: 'mb-2' do = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: uuid, checked: metadata.value.include?(uuid), content: value, type: 'radio' -# diff --git a/app/views/posts/attributes/_new_has_and_belongs_to_many.haml b/app/views/posts/attributes/_new_has_and_belongs_to_many.haml index d70d9eb4..bf5e45e9 100644 --- a/app/views/posts/attributes/_new_has_and_belongs_to_many.haml +++ b/app/views/posts/attributes/_new_has_and_belongs_to_many.haml @@ -59,7 +59,7 @@ - content_for :"#{id}_body" do .form-group.mb-0{ id: value_list_id } - metadata.values.each_pair do |value, uuid| - = render 'targets/array/item', value: uuid, 'human-value': value, class: 'mb-2' do + = render 'targets/array/item', value: uuid, 'send-value': uuid, 'human-value': value, class: 'mb-2' do = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: uuid, checked: metadata.value.include?(uuid), content: value, data: { action: 'required-checkbox#change', target: 'required-checkbox.checkbox' } -# diff --git a/app/views/posts/attributes/_new_has_many.haml b/app/views/posts/attributes/_new_has_many.haml index 601a7e38..39d4538d 100644 --- a/app/views/posts/attributes/_new_has_many.haml +++ b/app/views/posts/attributes/_new_has_many.haml @@ -59,7 +59,7 @@ - content_for :"#{id}_body" do .form-group.mb-0{ id: value_list_id } - metadata.values.each_pair do |value, uuid| - = render 'targets/array/item', value: uuid, 'human-value': value, class: 'mb-2' do + = render 'targets/array/item', value: uuid, 'send-value': uuid, 'human-value': value, class: 'mb-2' do = render 'bootstrap/custom_checkbox', name: name, id: random_id, value: uuid, checked: metadata.value.include?(uuid), content: value, data: { action: 'required-checkbox#change', target: 'required-checkbox.checkbox' } -# diff --git a/app/views/targets/array/_item.haml b/app/views/targets/array/_item.haml index f89a42e5..ead9f4e2 100644 --- a/app/views/targets/array/_item.haml +++ b/app/views/targets/array/_item.haml @@ -6,16 +6,19 @@ @param :value [String] El valor (requerido) @param :human-value [String] El valor legible por humanes (opcional) + @param :send-value [String] El valor que se envía al controlador (opcional) @param :searchable-value [String] El valor para usar en el filtro (opcional) :ruby local_assigns[:'human-value'] ||= value + local_assigns[:'send-value'] ||= local_assigns[:'human-value'] local_assigns[:'searchable-value'] ||= local_assigns[:'human-value'].remove_diacritics.downcase local_assigns.delete(:value) data = local_assigns.delete(:data) data ||= {} data[:'human-value'] = local_assigns.delete(:'human-value') + data[:'send-value'] = local_assigns.delete(:'send-value') data[:'searchable-value'] = local_assigns.delete(:'searchable-value') %div{ **local_assigns, data: { target: 'array.item', value: value, **data } }= yield From 2633cd444a0072466504852607190266127e128e Mon Sep 17 00:00:00 2001 From: f Date: Fri, 5 Jul 2024 11:59:38 -0300 Subject: [PATCH 595/699] ci: assets [skip ci] --- .../.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json | 2 +- .../{application-e0d66cef.css => application-5688882d.css} | 0 ...pplication-e0d66cef.css.br => application-5688882d.css.br} | 0 ...pplication-e0d66cef.css.gz => application-5688882d.css.gz} | 0 public/packs/js/application-b4baa487ab2bd8d1019a.js | 3 --- public/packs/js/application-b4baa487ab2bd8d1019a.js.br | 3 --- public/packs/js/application-b4baa487ab2bd8d1019a.js.gz | 3 --- public/packs/js/application-b4baa487ab2bd8d1019a.js.map | 3 --- public/packs/js/application-b4baa487ab2bd8d1019a.js.map.br | 3 --- public/packs/js/application-b4baa487ab2bd8d1019a.js.map.gz | 3 --- public/packs/js/application-f68840b38b1cfd7c6500.js | 3 +++ ...SE.txt => application-f68840b38b1cfd7c6500.js.LICENSE.txt} | 0 public/packs/js/application-f68840b38b1cfd7c6500.js.br | 3 +++ public/packs/js/application-f68840b38b1cfd7c6500.js.gz | 3 +++ public/packs/js/application-f68840b38b1cfd7c6500.js.map | 3 +++ public/packs/js/application-f68840b38b1cfd7c6500.js.map.br | 3 +++ public/packs/js/application-f68840b38b1cfd7c6500.js.map.gz | 3 +++ public/packs/manifest.json | 2 +- public/packs/manifest.json.br | 4 ++-- public/packs/manifest.json.gz | 4 ++-- 20 files changed, 24 insertions(+), 24 deletions(-) rename public/packs/css/{application-e0d66cef.css => application-5688882d.css} (100%) rename public/packs/css/{application-e0d66cef.css.br => application-5688882d.css.br} (100%) rename public/packs/css/{application-e0d66cef.css.gz => application-5688882d.css.gz} (100%) delete mode 100644 public/packs/js/application-b4baa487ab2bd8d1019a.js delete mode 100644 public/packs/js/application-b4baa487ab2bd8d1019a.js.br delete mode 100644 public/packs/js/application-b4baa487ab2bd8d1019a.js.gz delete mode 100644 public/packs/js/application-b4baa487ab2bd8d1019a.js.map delete mode 100644 public/packs/js/application-b4baa487ab2bd8d1019a.js.map.br delete mode 100644 public/packs/js/application-b4baa487ab2bd8d1019a.js.map.gz create mode 100644 public/packs/js/application-f68840b38b1cfd7c6500.js rename public/packs/js/{application-b4baa487ab2bd8d1019a.js.LICENSE.txt => application-f68840b38b1cfd7c6500.js.LICENSE.txt} (100%) create mode 100644 public/packs/js/application-f68840b38b1cfd7c6500.js.br create mode 100644 public/packs/js/application-f68840b38b1cfd7c6500.js.gz create mode 100644 public/packs/js/application-f68840b38b1cfd7c6500.js.map create mode 100644 public/packs/js/application-f68840b38b1cfd7c6500.js.map.br create mode 100644 public/packs/js/application-f68840b38b1cfd7c6500.js.map.gz diff --git a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json index 3dd4cacc..02e6a28b 100644 --- a/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json +++ b/public/assets/.sprockets-manifest-a1cbb907961024fc033716a7d30668dd.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e3064b08aac06129b3c1258f031ce1ad74c9b645b9d3ca57f6760493c5d2bdbf +oid sha256:8af1de94a735716b08f764211a456dee79e1f4e230dd7f8a71c6ba67d2cbdb4c size 11449 diff --git a/public/packs/css/application-e0d66cef.css b/public/packs/css/application-5688882d.css similarity index 100% rename from public/packs/css/application-e0d66cef.css rename to public/packs/css/application-5688882d.css diff --git a/public/packs/css/application-e0d66cef.css.br b/public/packs/css/application-5688882d.css.br similarity index 100% rename from public/packs/css/application-e0d66cef.css.br rename to public/packs/css/application-5688882d.css.br diff --git a/public/packs/css/application-e0d66cef.css.gz b/public/packs/css/application-5688882d.css.gz similarity index 100% rename from public/packs/css/application-e0d66cef.css.gz rename to public/packs/css/application-5688882d.css.gz diff --git a/public/packs/js/application-b4baa487ab2bd8d1019a.js b/public/packs/js/application-b4baa487ab2bd8d1019a.js deleted file mode 100644 index d23bcf7c..00000000 --- a/public/packs/js/application-b4baa487ab2bd8d1019a.js +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5570cf8d82b589e8dd4a77d7f20e74fbbcf7721d984acaaf9fa2b63c26a2def5 -size 1669136 diff --git a/public/packs/js/application-b4baa487ab2bd8d1019a.js.br b/public/packs/js/application-b4baa487ab2bd8d1019a.js.br deleted file mode 100644 index 3416ea3f..00000000 --- a/public/packs/js/application-b4baa487ab2bd8d1019a.js.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a7fe6aaef8a5f46abf666a70308a564bbd873bd5637c6caf1908bb0b78eea32e -size 368588 diff --git a/public/packs/js/application-b4baa487ab2bd8d1019a.js.gz b/public/packs/js/application-b4baa487ab2bd8d1019a.js.gz deleted file mode 100644 index 5f810b02..00000000 --- a/public/packs/js/application-b4baa487ab2bd8d1019a.js.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:69cc5ef71af5b657859e097b60a4a3fec58a0d5d6df411cdf8785c9bbeeb58ec -size 485768 diff --git a/public/packs/js/application-b4baa487ab2bd8d1019a.js.map b/public/packs/js/application-b4baa487ab2bd8d1019a.js.map deleted file mode 100644 index f1a6d06f..00000000 --- a/public/packs/js/application-b4baa487ab2bd8d1019a.js.map +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:931fd7332f4383a278c5d51784c983dd83ee6fc9153bffde7081cc9cabba9396 -size 6438113 diff --git a/public/packs/js/application-b4baa487ab2bd8d1019a.js.map.br b/public/packs/js/application-b4baa487ab2bd8d1019a.js.map.br deleted file mode 100644 index a1fdf7f9..00000000 --- a/public/packs/js/application-b4baa487ab2bd8d1019a.js.map.br +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e5c47cc4c56239e504c606f1a913c04450b3159fa9885d52f8b1068e3346569b -size 1386215 diff --git a/public/packs/js/application-b4baa487ab2bd8d1019a.js.map.gz b/public/packs/js/application-b4baa487ab2bd8d1019a.js.map.gz deleted file mode 100644 index 4a2eeeaf..00000000 --- a/public/packs/js/application-b4baa487ab2bd8d1019a.js.map.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:59c537e654bd9498c93d2552bdc25827cb91c1dacc42e0e9d92f7969a2d81db2 -size 1714692 diff --git a/public/packs/js/application-f68840b38b1cfd7c6500.js b/public/packs/js/application-f68840b38b1cfd7c6500.js new file mode 100644 index 00000000..262e4a77 --- /dev/null +++ b/public/packs/js/application-f68840b38b1cfd7c6500.js @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ade2264f099ea53285e5507706f9f4c88aa2dc37320233c8ab36175cf0bff45 +size 1669135 diff --git a/public/packs/js/application-b4baa487ab2bd8d1019a.js.LICENSE.txt b/public/packs/js/application-f68840b38b1cfd7c6500.js.LICENSE.txt similarity index 100% rename from public/packs/js/application-b4baa487ab2bd8d1019a.js.LICENSE.txt rename to public/packs/js/application-f68840b38b1cfd7c6500.js.LICENSE.txt diff --git a/public/packs/js/application-f68840b38b1cfd7c6500.js.br b/public/packs/js/application-f68840b38b1cfd7c6500.js.br new file mode 100644 index 00000000..3050ded9 --- /dev/null +++ b/public/packs/js/application-f68840b38b1cfd7c6500.js.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70cb760094d9271ac292c6b4fdef7ee0f1d2608e4156dc0e2564f499364ac544 +size 368655 diff --git a/public/packs/js/application-f68840b38b1cfd7c6500.js.gz b/public/packs/js/application-f68840b38b1cfd7c6500.js.gz new file mode 100644 index 00000000..91368284 --- /dev/null +++ b/public/packs/js/application-f68840b38b1cfd7c6500.js.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5d89c2ee4b59ec062db749dac5e1f37a52eab5541b939b80c92fbfa111f1fe3 +size 485767 diff --git a/public/packs/js/application-f68840b38b1cfd7c6500.js.map b/public/packs/js/application-f68840b38b1cfd7c6500.js.map new file mode 100644 index 00000000..ea2f5b85 --- /dev/null +++ b/public/packs/js/application-f68840b38b1cfd7c6500.js.map @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b023d80a5cca6cc731b73c1a71b90606182c4ee73b5c672ad181f95875197331 +size 6413730 diff --git a/public/packs/js/application-f68840b38b1cfd7c6500.js.map.br b/public/packs/js/application-f68840b38b1cfd7c6500.js.map.br new file mode 100644 index 00000000..8538474d --- /dev/null +++ b/public/packs/js/application-f68840b38b1cfd7c6500.js.map.br @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:573eadf40d60c86142f64411bd123e8c7cf4d3c4fada3f1ab87218c235bdfbb4 +size 1383196 diff --git a/public/packs/js/application-f68840b38b1cfd7c6500.js.map.gz b/public/packs/js/application-f68840b38b1cfd7c6500.js.map.gz new file mode 100644 index 00000000..0b0f3de8 --- /dev/null +++ b/public/packs/js/application-f68840b38b1cfd7c6500.js.map.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38b751e8be3db1c8ffdbc53a1e9219d221e62f9d62384176472cc1293d4a14d9 +size 1709964 diff --git a/public/packs/manifest.json b/public/packs/manifest.json index 29ff8ea8..c8ab8864 100644 --- a/public/packs/manifest.json +++ b/public/packs/manifest.json @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9c286d8875d29377f49bddd9a02dcbf5ce276435a37d359f91c00c796215f2aa +oid sha256:4df27cd25b0a9de891adf6d9bc2a5c7f7859d33b7af69e280a95ab599a7b327f size 1426 diff --git a/public/packs/manifest.json.br b/public/packs/manifest.json.br index 7b07b0ca..1fb550fd 100644 --- a/public/packs/manifest.json.br +++ b/public/packs/manifest.json.br @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cfd1a5608cedfc6bd75d4c582a8ac1597f4732a165dbc46d1fa05a0ff301aab5 -size 320 +oid sha256:eecaa899ac2c70933a807f5f57fb16f447fd423800f84a2a4573a853566b0372 +size 321 diff --git a/public/packs/manifest.json.gz b/public/packs/manifest.json.gz index a00ab9a8..e4cdce9a 100644 --- a/public/packs/manifest.json.gz +++ b/public/packs/manifest.json.gz @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:dda7bd33835b05e7d478a0ec8c952eaf5b32d064f6c148d24ef8853aebaeacff -size 365 +oid sha256:0d5c304d523ed085965cd912c6e53c50f6789988407b47e98d7306353d8bc6a3 +size 364 From d596ae57143097cbed16357d27fcd35b63ca6774 Mon Sep 17 00:00:00 2001 From: f Date: Fri, 5 Jul 2024 16:39:07 -0300 Subject: [PATCH 596/699] fixup! fix: poder mandar uuids de relaciones! --- app/views/posts/new_belongs_to_value.haml | 2 +- app/views/posts/new_has_many_value.haml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/app/views/posts/new_belongs_to_value.haml b/app/views/posts/new_belongs_to_value.haml index cc66f680..c7917b7d 100644 --- a/app/views/posts/new_belongs_to_value.haml +++ b/app/views/posts/new_belongs_to_value.haml @@ -1,2 +1,2 @@ -= render 'targets/array/item', value: @uuid, 'human-value': @value, class: 'mb-2' do += render 'targets/array/item', value: @uuid, 'send-value': @uuid, 'human-value': @value, class: 'mb-2' do = render 'bootstrap/custom_checkbox', name: @name, id: random_id, value: @uuid, checked: true, content: @value, type: 'radio' diff --git a/app/views/posts/new_has_many_value.haml b/app/views/posts/new_has_many_value.haml index 8479f3e4..a4c87fc9 100644 --- a/app/views/posts/new_has_many_value.haml +++ b/app/views/posts/new_has_many_value.haml @@ -1,2 +1,2 @@ -= render 'targets/array/item', value: @uuid, 'human-value': @value, class: 'mb-2' do += render 'targets/array/item', value: @uuid, 'send-value': @uuid, 'human-value': @value, class: 'mb-2' do = render 'bootstrap/custom_checkbox', name: @name, id: random_id, value: @uuid, checked: true, content: @value From f1968a0b49d7cbc13551c2963693445dabb5fca1 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 10 Jul 2024 16:48:57 -0300 Subject: [PATCH 597/699] =?UTF-8?q?fix:=20permitir=20que=20el=20idioma=20p?= =?UTF-8?q?or=20defecto=20tenga=20strings=20vac=C3=ADas?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/helpers/application_helper.rb | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index baef3b05..3d074aed 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -155,9 +155,17 @@ module ApplicationHelper private + # Obtiene la traducción desde el esquema en el idioma actual, o por + # defecto en el idioma del sitio. De lo contrario trae una traducción + # genérica. + # + # Si el idioma por defecto tiene un String vacía, se asume que no + # texto. + # + # @return [String,nil] def post_t(*attribute, post:, type:) post.layout.metadata.dig(*attribute, type.to_s, I18n.locale.to_s).presence || - post.layout.metadata.dig(*attribute, type.to_s, post.site.default_locale.to_s).presence || + post.layout.metadata.dig(*attribute, type.to_s, post.site.default_locale.to_s) || I18n.t("posts.attributes.#{attribute.join('.')}.#{type}").presence end end From 5f53abe78aa43e177167ca4a5e26f620d10e4873 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 10 Jul 2024 17:04:59 -0300 Subject: [PATCH 598/699] feat: pluck_param nos ayuda a encontrar un param semanticamente --- app/controllers/collaborations_controller.rb | 5 +-- app/controllers/posts_controller.rb | 32 +++++++++++--------- app/helpers/strong_params_helper.rb | 20 ++++++++++++ app/views/devise/shared/_links.haml | 2 +- app/views/posts/_htmx_form.haml | 32 ++++++++++---------- app/views/posts/form.haml | 2 +- app/views/posts/new_has_one.haml | 2 +- app/views/posts/new_has_one_value.haml | 2 +- app/views/sites/build.haml | 2 +- 9 files changed, 61 insertions(+), 38 deletions(-) create mode 100644 app/helpers/strong_params_helper.rb diff --git a/app/controllers/collaborations_controller.rb b/app/controllers/collaborations_controller.rb index 2caa1272..8140b03e 100644 --- a/app/controllers/collaborations_controller.rb +++ b/app/controllers/collaborations_controller.rb @@ -5,9 +5,10 @@ # No necesitamos autenticación aun class CollaborationsController < ApplicationController include Pundit + include StrongParamsHelper def collaborate - @site = Site.find_by_name(params[:site_id]) + @site = Site.find_by_name(pluck_param(:site_id)) authorize Collaboration.new(@site) @invitade = current_usuarie || @site.usuaries.build @@ -21,7 +22,7 @@ class CollaborationsController < ApplicationController # # * Si le usuarie existe y no está logueade, pedirle la contraseña def accept_collaboration - @site = Site.find_by_name(params[:site_id]) + @site = Site.find_by_name(pluck_param(:site_id)) authorize Collaboration.new(@site) @invitade = current_usuarie diff --git a/app/controllers/posts_controller.rb b/app/controllers/posts_controller.rb index 70ba2e54..3ea29c55 100644 --- a/app/controllers/posts_controller.rb +++ b/app/controllers/posts_controller.rb @@ -2,6 +2,8 @@ # Controlador para artículos class PostsController < ApplicationController + include StrongParamsHelper + before_action :authenticate_usuarie! before_action :service_for_direct_upload, only: %i[new edit] @@ -17,9 +19,9 @@ class PostsController < ApplicationController # @todo Mover a tu propio scope def new_array - @value = params.require(:value).strip - @name = params.require(:name).strip - id = params.require(:id).strip + @value = pluck_param(:value) + @name = pluck_param(:name) + id = pluck_param(:id) headers['HX-Trigger-After-Swap'] = 'htmx:resetForm' @@ -27,13 +29,13 @@ class PostsController < ApplicationController end def new_array_value - @value = params.require(:value).strip + @value = pluck_param(:value) render layout: false end def new_related_post - @uuid = params.require(:value).strip + @uuid = pluck_param(:value) @indexed_post = site.indexed_posts.find_by!(post_id: @uuid) @@ -41,7 +43,7 @@ class PostsController < ApplicationController end def new_has_one - @uuid = params.require(:value).strip + @uuid = pluck_param(:value) @indexed_post = site.indexed_posts.find_by!(post_id: @uuid) @@ -51,7 +53,7 @@ class PostsController < ApplicationController # El formulario de un Post, si pasamos el UUID, estamos editando, sino # estamos creando. def form - uuid = params.permit(:uuid).try(:[], :uuid).presence + uuid = pluck_param(:uuid, optional: true) locale @post = @@ -59,7 +61,7 @@ class PostsController < ApplicationController site.indexed_posts.find_by!(post_id: uuid).post else # @todo Usar la base de datos - site.posts(lang: locale).build(layout: params.require(:layout)) + site.posts(lang: locale).build(layout: pluck_param(:layout)) end swap_modals @@ -107,7 +109,7 @@ class PostsController < ApplicationController def new authorize Post - @post = site.posts(lang: locale).build(layout: params[:layout]) + @post = site.posts(lang: locale).build(layout: pluck_param(:layout)) breadcrumb I18n.t('loaf.breadcrumbs.posts.new', layout: @post.layout.humanized_name.downcase), '' end @@ -128,17 +130,17 @@ class PostsController < ApplicationController # condiciones. if htmx? if post.persisted? - triggers = { 'notification:show' => { 'id' => params.permit(:saved).values.first } } + triggers = { 'notification:show' => { 'id' => pluck_param(:saved, optional: true) } } swap_modals(triggers) @value = post.title.value @uuid = post.uuid.value - @name = params.require(:name) + @name = pluck_param(:name) render render_path_from_attribute, layout: false else - headers['HX-Retarget'] = "##{params.require(:form)}" + headers['HX-Retarget'] = "##{pluck_param(:form)}" headers['HX-Reswap'] = 'outerHTML' render 'posts/form', layout: false, post: post, site: site, **params.permit(:form, :base, :dir, :locale) @@ -171,13 +173,13 @@ class PostsController < ApplicationController if htmx? if post.persisted? - triggers = { 'notification:show' => params.permit(:saved).values.first } + triggers = { 'notification:show' => pluck_param(:saved, optional: true) } swap_modals(triggers) @value = post.title.value @uuid = post.uuid.value - @name = params.require(:name) + @name = pluck_param(:name) render render_path_from_attribute, layout: false else @@ -272,7 +274,7 @@ class PostsController < ApplicationController # @return [String] def render_path_from_attribute - case params.require(:attribute) + case pluck_param(:attribute) when 'new_has_many' then 'posts/new_has_many_value' when 'new_belongs_to' then 'posts/new_belongs_to_value' when 'new_has_and_belongs_to_many' then 'posts/new_has_many_value' diff --git a/app/helpers/strong_params_helper.rb b/app/helpers/strong_params_helper.rb new file mode 100644 index 00000000..8f8a26bf --- /dev/null +++ b/app/helpers/strong_params_helper.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +# Métodos reutilizables para trabajar con StrongParams +module StrongParamsHelper + + # Obtiene el valor de un param + # + # @todo No hay una forma mejor de hacer esto? + # @param param [Symbol] + # @param :optional [Bool] + # @param :params [StrongParameters] + # @return [nil,String] + def pluck_param(param, optional: false, params: params) + if optional + params.permit(param).values.first.presence + else + params.require(param).presence + end + end +end diff --git a/app/views/devise/shared/_links.haml b/app/views/devise/shared/_links.haml index 5d5c0b67..a4c99c03 100644 --- a/app/views/devise/shared/_links.haml +++ b/app/views/devise/shared/_links.haml @@ -1,6 +1,6 @@ %hr/ -- locale = params.permit(:locale) +- locale = pluck_param(:locale, optional: true) - if controller_name != 'sessions' = link_to t('.sign_in'), new_session_path(resource_name, params: locale), diff --git a/app/views/posts/_htmx_form.haml b/app/views/posts/_htmx_form.haml index f6704695..bd786cc6 100644 --- a/app/views/posts/_htmx_form.haml +++ b/app/views/posts/_htmx_form.haml @@ -18,22 +18,22 @@ :ruby except = %i[date] - if (inverse = params.permit(:inverse).try(:[], :inverse).presence) + if (inverse = pluck_param(:inverse, optional: true)) except << inverse.to_sym end options = { - id: params.require(:form), + id: pluck_param(:form), multipart: true, class: 'form post ', - 'hx-swap': params.require(:swap), - 'hx-target': "##{params.require(:target)}", + 'hx-swap': pluck_param(:swap), + 'hx-target': "##{pluck_param(:target)}", 'hx-validate': true, data: { controller: 'form-validation', action: 'form-validation#submit', - 'form-validation-submitting-id-value': params.permit(:submitting).values.first, - 'form-validation-invalid-id-value': params.permit(:invalid).values.first, + 'form-validation-submitting-id-value': pluck_param(:submitting, optional: true), + 'form-validation-invalid-id-value': pluck_param(:invalid, optional: true), } } @@ -68,20 +68,20 @@ = errors.first -# Parámetros para HTMX - %input{ type: 'hidden', name: 'hide', value: params.permit((post.errors.empty? ? :show : :hide)).try(:values).try(:first) } - %input{ type: 'hidden', name: 'show', value: params.permit((post.errors.empty? ? :hide : :show)).try(:values).try(:first) } - %input{ type: 'hidden', name: 'name', value: params.require(:name) } - %input{ type: 'hidden', name: 'base', value: params.require(:base) } + %input{ type: 'hidden', name: 'hide', value: pluck_param((post.errors.empty? ? :show : :hide), optional: true) } + %input{ type: 'hidden', name: 'show', value: pluck_param((post.errors.empty? ? :hide : :show), optional: true) } + %input{ type: 'hidden', name: 'name', value: pluck_param(:name) } + %input{ type: 'hidden', name: 'base', value: pluck_param(:base) } %input{ type: 'hidden', name: 'form', value: options[:id] } %input{ type: 'hidden', name: 'dir', value: dir } %input{ type: 'hidden', name: 'locale', value: locale } - %input{ type: 'hidden', name: 'attribute', value: params.require(:attribute) } - %input{ type: 'hidden', name: 'target', value: params.require(:target) } - %input{ type: 'hidden', name: 'swap', value: params.require(:swap) } + %input{ type: 'hidden', name: 'attribute', value: pluck_param(:attribute) } + %input{ type: 'hidden', name: 'target', value: pluck_param(:target) } + %input{ type: 'hidden', name: 'swap', value: pluck_param(:swap) } - if params[:inverse].present? - %input{ type: 'hidden', name: 'inverse', value: params.require(:inverse) } + %input{ type: 'hidden', name: 'inverse', value: pluck_param(:inverse) } - if params[:saved].present? - %input{ type: 'hidden', name: 'saved', value: params.require(:saved) } + %input{ type: 'hidden', name: 'saved', value: pluck_param(:saved) } = hidden_field_tag "#{base}[layout]", post.layout.name @@ -92,6 +92,6 @@ Enviamos valores vacíos o arrastrados desde el formulario anterior para los atributos ignorados - except.each do |attr| - %input{ type: 'hidden', name: "#{base}[#{attr}]", value: params[attr].presence } + %input{ type: 'hidden', name: "#{base}[#{attr}]", value: pluck_param(attr, optional: true) } = yield(:post_form) diff --git a/app/views/posts/form.haml b/app/views/posts/form.haml index df4369e1..bb63aaeb 100644 --- a/app/views/posts/form.haml +++ b/app/views/posts/form.haml @@ -4,4 +4,4 @@ @param :site [Site] @param :post [Post] -= render 'posts/htmx_form', site: @site, post: @post, locale: @locale, dir: t("locales.#{@locale}.dir"), base: params.require(:base) += render 'posts/htmx_form', site: @site, post: @post, locale: @locale, dir: t("locales.#{@locale}.dir"), base: pluck_param(:base) diff --git a/app/views/posts/new_has_one.haml b/app/views/posts/new_has_one.haml index e32f191b..8f65ff08 100644 --- a/app/views/posts/new_has_one.haml +++ b/app/views/posts/new_has_one.haml @@ -1 +1 @@ -= render 'posts/new_has_one', post: @indexed_post, name: params.require(:name), value: @uuid += render 'posts/new_has_one', post: @indexed_post, name: pluck_param(:name), value: @uuid diff --git a/app/views/posts/new_has_one_value.haml b/app/views/posts/new_has_one_value.haml index 6eece5dc..06065518 100644 --- a/app/views/posts/new_has_one_value.haml +++ b/app/views/posts/new_has_one_value.haml @@ -1 +1 @@ -= render 'posts/new_has_one', post: @post.to_index, name: params.require(:name), value: @uuid, modal_id: params.require(:show) += render 'posts/new_has_one', post: @post.to_index, name: pluck_param(:name), value: @uuid, modal_id: pluck_param(:show) diff --git a/app/views/sites/build.haml b/app/views/sites/build.haml index c2becec0..2743c265 100644 --- a/app/views/sites/build.haml +++ b/app/views/sites/build.haml @@ -1 +1 @@ -= render 'sites/build', site: @site, class: params.permit(:class)[:class] += render 'sites/build', site: @site, class: pluck_param(:class, optional: true) From 255ea763b4e38db29407bdb9dcd125821706e573 Mon Sep 17 00:00:00 2001 From: f Date: Wed, 10 Jul 2024 17:06:29 -0300 Subject: [PATCH 599/699] =?UTF-8?q?feat:=20poder=20cancelar=20cuando=20se?= =?UTF-8?q?=20est=C3=A1=20haciendo=20un=20fetch?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit si salimos de la página hay que poder cancelar todos los fetchs pendientes sin producir errores --- app/javascript/controllers/array_controller.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/javascript/controllers/array_controller.js b/app/javascript/controllers/array_controller.js index fea690d2..e8f15e8c 100644 --- a/app/javascript/controllers/array_controller.js +++ b/app/javascript/controllers/array_controller.js @@ -103,6 +103,8 @@ export default class extends Controller { this.currentTarget.innerHTML = ""; this.originalValue = []; + const signal = window.abortController?.signal; + for (const itemTarget of this.itemTargets) { if (!itemTarget.dataset.value) continue; if (!this.isChecked(itemTarget)) continue; @@ -114,8 +116,7 @@ export default class extends Controller { this.currentTarget.appendChild(placeholder); - // TODO: Renderizarlas todas juntas - fetch(this.newArrayValueURL) + fetch(this.newArrayValueURL, { signal }) .then((response) => response.text()) .then((body) => { const template = document.createElement("template"); From 5b9cd27a79b6305b169cd0f77338f72067bf1dee Mon Sep 17 00:00:00 2001 From: f Date: Wed, 10 Jul 2024 17:08:47 -0300 Subject: [PATCH 600/699] refactor: convertir lista de errores en un componente --- app/views/posts/_errors.haml | 19 +++++++++++++++++++ app/views/posts/_form.haml | 28 +++++++++------------------- app/views/posts/_htmx_form.haml | 20 +------------------- 3 files changed, 29 insertions(+), 38 deletions(-) create mode 100644 app/views/posts/_errors.haml diff --git a/app/views/posts/_errors.haml b/app/views/posts/_errors.haml new file mode 100644 index 00000000..3b0a89dd --- /dev/null +++ b/app/views/posts/_errors.haml @@ -0,0 +1,19 @@ +- unless post.errors.empty? + - title = t('.errors.title') + - help = t('.errors.help') + = render 'bootstrap/alert' do + %h4= title + %p= help + + %ul + - post.errors.each do |attribute, errors| + - if errors.size > 1 + %li + %strong= post_label_t attribute, post: post + %ul + - errors.each do |error| + %li= error + - else + %li + %strong= post_label_t attribute, post: post + = errors.first diff --git a/app/views/posts/_form.haml b/app/views/posts/_form.haml index 3e09cb72..1c9c623e 100644 --- a/app/views/posts/_form.haml +++ b/app/views/posts/_form.haml @@ -1,22 +1,4 @@ -- unless post.errors.empty? - - title = t('.errors.title') - - help = t('.errors.help') - = render 'bootstrap/alert' do - %h4= title - %p= help - - %ul - - post.errors.each do |attribute, errors| - - if errors.size > 1 - %li - %strong= post_label_t attribute, post: post - %ul - - errors.each do |error| - %li= error - - else - %li - %strong= post_label_t attribute, post: post - = errors.first += render 'errors', post: post -# TODO: habilitar form_for :ruby @@ -55,3 +37,11 @@ -# Formularios usados por los modales = yield(:post_form) + +-# + Acumulador de formularios dinámicos, se van cargando a medida que se + necesitan en lugar de recursivamente. + + Nunca se eliminan los modales una vez que se cargan para poder tener + historial de cambios. +%div{ data: { controller: 'htmx', action: 'htmx:getUrl@window->htmx#beforeend' } } diff --git a/app/views/posts/_htmx_form.haml b/app/views/posts/_htmx_form.haml index bd786cc6..75967a40 100644 --- a/app/views/posts/_htmx_form.haml +++ b/app/views/posts/_htmx_form.haml @@ -47,25 +47,7 @@ end = form_tag url, **options do - - unless post.errors.empty? - - title = t('.errors.title') - - help = t('.errors.help') - = render 'bootstrap/alert' do - %h4= title - %p= help - - %ul - - post.errors.each do |attribute, errors| - - if errors.size > 1 - %li - %strong= post_label_t attribute, post: post - %ul - - errors.each do |error| - %li= error - - else - %li - %strong= post_label_t attribute, post: post - = errors.first + = render 'errors', post: post -# Parámetros para HTMX %input{ type: 'hidden', name: 'hide', value: pluck_param((post.errors.empty? ? :show : :hide), optional: true) } From 922fff29eae1977a068039e1162fda603f484d1b Mon Sep 17 00:00:00 2001 From: f Date: Wed, 10 Jul 2024 17:12:07 -0300 Subject: [PATCH 601/699] feat: un potencial reemplazo de htmx en stimulus MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit htmx duplica mucho código y no hace monitoreo de modificaciones en el código sin grandes parches. con esto podemos ir reemplazando htmx por algo que nos resulta más cómodo y eventualmente pasar a turbo. --- app/javascript/controllers/htmx_controller.js | 107 ++++++++++++++++++ 1 file changed, 107 insertions(+) create mode 100644 app/javascript/controllers/htmx_controller.js diff --git a/app/javascript/controllers/htmx_controller.js b/app/javascript/controllers/htmx_controller.js new file mode 100644 index 00000000..9b013c52 --- /dev/null +++ b/app/javascript/controllers/htmx_controller.js @@ -0,0 +1,107 @@ +import { Controller } from "stimulus"; + +/* + * Un controlador que imita a HTMX + */ +export default class extends Controller { + connect() { + // @todo Convertir en