Extract dashboard partial for admin instance page (#32189)

This commit is contained in:
Matt Jankowski 2024-10-01 04:36:41 -04:00 committed by Claire
parent 6398d7b784
commit 6734b6550f
2 changed files with 67 additions and 66 deletions

View file

@ -0,0 +1,66 @@
-# locals: (instance_domain:, period_end_at:, period_start_at:)
%p
= material_symbol 'info'
= t('admin.instances.totals_time_period_hint_html')
.dashboard
.dashboard__item
= react_admin_component :counter,
end_at: period_end_at,
href: admin_accounts_path(origin: 'remote', by_domain: instance_domain),
label: t('admin.instances.dashboard.instance_accounts_measure'),
measure: 'instance_accounts',
params: { domain: instance_domain },
start_at: period_start_at
.dashboard__item
= react_admin_component :counter,
end_at: period_end_at,
label: t('admin.instances.dashboard.instance_statuses_measure'),
measure: 'instance_statuses',
params: { domain: instance_domain },
start_at: period_start_at
.dashboard__item
= react_admin_component :counter,
end_at: period_end_at,
label: t('admin.instances.dashboard.instance_media_attachments_measure'),
measure: 'instance_media_attachments',
params: { domain: instance_domain },
start_at: period_start_at
.dashboard__item
= react_admin_component :counter,
end_at: period_end_at,
label: t('admin.instances.dashboard.instance_follows_measure'),
measure: 'instance_follows',
params: { domain: instance_domain },
start_at: period_start_at
.dashboard__item
= react_admin_component :counter,
end_at: period_end_at,
label: t('admin.instances.dashboard.instance_followers_measure'),
measure: 'instance_followers',
params: { domain: instance_domain },
start_at: period_start_at
.dashboard__item
= react_admin_component :counter,
end_at: period_end_at,
href: admin_reports_path(by_target_domain: instance_domain),
label: t('admin.instances.dashboard.instance_reports_measure'),
measure: 'instance_reports',
params: { domain: instance_domain },
start_at: period_start_at
.dashboard__item
= react_admin_component :dimension,
dimension: 'instance_accounts',
end_at: period_end_at,
label: t('admin.instances.dashboard.instance_accounts_dimension'),
limit: 8,
params: { domain: instance_domain },
start_at: period_start_at
.dashboard__item
= react_admin_component :dimension,
dimension: 'instance_languages',
end_at: period_end_at,
label: t('admin.instances.dashboard.instance_languages_dimension'),
limit: 8,
params: { domain: instance_domain },
start_at: period_start_at

View file

@ -8,72 +8,7 @@
= l(@time_period.last)
- if @instance.persisted?
%p
= material_symbol 'info'
= t('admin.instances.totals_time_period_hint_html')
.dashboard
.dashboard__item
= react_admin_component :counter,
end_at: @time_period.last,
href: admin_accounts_path(origin: 'remote', by_domain: @instance.domain),
label: t('admin.instances.dashboard.instance_accounts_measure'),
measure: 'instance_accounts',
params: { domain: @instance.domain },
start_at: @time_period.first
.dashboard__item
= react_admin_component :counter,
end_at: @time_period.last,
label: t('admin.instances.dashboard.instance_statuses_measure'),
measure: 'instance_statuses',
params: { domain: @instance.domain },
start_at: @time_period.first
.dashboard__item
= react_admin_component :counter,
end_at: @time_period.last,
label: t('admin.instances.dashboard.instance_media_attachments_measure'),
measure: 'instance_media_attachments',
params: { domain: @instance.domain },
start_at: @time_period.first
.dashboard__item
= react_admin_component :counter,
end_at: @time_period.last,
label: t('admin.instances.dashboard.instance_follows_measure'),
measure: 'instance_follows',
params: { domain: @instance.domain },
start_at: @time_period.first
.dashboard__item
= react_admin_component :counter,
end_at: @time_period.last,
label: t('admin.instances.dashboard.instance_followers_measure'),
measure: 'instance_followers',
params: { domain: @instance.domain },
start_at: @time_period.first
.dashboard__item
= react_admin_component :counter,
end_at: @time_period.last,
href: admin_reports_path(by_target_domain: @instance.domain),
label: t('admin.instances.dashboard.instance_reports_measure'),
measure: 'instance_reports',
params: { domain: @instance.domain },
start_at: @time_period.first
.dashboard__item
= react_admin_component :dimension,
dimension: 'instance_accounts',
end_at: @time_period.last,
label: t('admin.instances.dashboard.instance_accounts_dimension'),
limit: 8,
params: { domain: @instance.domain },
start_at: @time_period.first
.dashboard__item
= react_admin_component :dimension,
dimension: 'instance_languages',
end_at: @time_period.last,
label: t('admin.instances.dashboard.instance_languages_dimension'),
limit: 8,
params: { domain: @instance.domain },
start_at: @time_period.first
= render 'dashboard', instance_domain: @instance.domain, period_end_at: @time_period.last, period_start_at: @time_period.first
- else
%p
= t('admin.instances.unknown_instance')