mirror of
https://github.com/discourse/discourse.git
synced 2024-11-26 10:43:57 +08:00
8d4f405da4
Why this change? On the `/admin/customize/themes/<:id>` route, we allow admins to edit all settings via a settings editor. Prior to this change, trying to edit and save a typed objects theme settings will result in an error on the server.
32 lines
763 B
Ruby
32 lines
763 B
Ruby
# frozen_string_literal: true
|
|
|
|
module PageObjects
|
|
module Components
|
|
class AceEditor < PageObjects::Components::Base
|
|
def type_input(content)
|
|
editor_input.send_keys(content)
|
|
self
|
|
end
|
|
|
|
def fill_input(content)
|
|
# Clear the input before filling it in because capybara's fill_in method doesn't seem to replace existing content
|
|
# unless the content is a blank string.
|
|
editor_input.fill_in(with: "")
|
|
editor_input.fill_in(with: content)
|
|
self
|
|
end
|
|
|
|
def clear_input
|
|
fill_input("")
|
|
end
|
|
|
|
def editor_input
|
|
find(".ace-wrapper .ace:not(.hidden)", visible: true).find(
|
|
".ace_text-input",
|
|
visible: false,
|
|
)
|
|
end
|
|
end
|
|
end
|
|
end
|