component {
scrollable(
direction = vertical,
class = u-fill-all,
) {
column(width = fill, spacing = 8, class = form-panel) {
text("{t('migrar.migrate_to_a_shared_database')}", class = u-label-cap)
text(
"{t('migrar.first_create_the_destination_database_on')}",
class = u-muted,
)
text(
"{t('migrar.source_database_inside_this_database')}",
class = u-label-cap,
)
input(
class = field__input,
form_control = service_form_migration_database,
:value = service_form_migration_database,
on_change = field:service_form_migration_database,
placeholder = "{t('migrar.database_name')}",
)
text("{t('migrar.destination')}", class = u-label-cap)
select(
class = form-select,
:options = migration_destinations,
:value = service_form_migration_destination,
on_change = field:service_form_migration_destination,
placeholder = "{t('migrar.destination_database')}",
label_field = name,
value_field = id,
)
text("{t('migrar.env_var_to_replace')}", class = u-label-cap)
input(
class = field__input,
form_control = service_form_migration_env,
:value = service_form_migration_env,
on_change = field:service_form_migration_env,
placeholder = "{t('migrar.default_database_url_mongodb_uri')}",
)
row(class = env__add) {
button(
class = "btn btn--primary",
if = @service_form_migration_destination,
equals = "",
disabled = true,
text = "{t('common.migrate')}",
)
button(
class = "btn btn--primary",
if = @service_form_migration_destination,
not_equals = "",
on_click = migration_start,
disabled = @busy_migration_start,
text = "{t('common.migrate')}",
)
button(
class = "btn btn--ghost",
on_click = migration_refresh,
disabled = @busy_migration_refresh,
text = "{t('migrar.refresh')}",
)
}
if @migration_has == "true" {
text("{t('migrar.progress', migration_status=migration_status)}", class = u-label-cap)
column(class = kv-list) {
row(class = kv-list__row, :for_each = migration_steps, var = s) {
text("@s.icon", class = env__key)
text("@s.name", class = "kv-list__val kv-list__val--compact")
text("@s.detail", class = u-muted)
}
}
if @migration_can_finish == "true" {
text(
"{t('migrar.migration_finished_the_old_database_was')}",
class = u-muted,
)
row(class = env__add) {
button(
class = "btn btn--ghost",
on_click = migration_rollback,
disabled = @busy_migration_rollback,
text = "{t('migrar.roll_back')}",
)
button(
class = "btn btn--ghost",
on_click = migration_discard,
disabled = @busy_migration_discard,
text = "{t('migrar.discard_the_old_database')}",
)
}
}
}
}
}
}