renalware-core 2.0.113 → 2.0.115
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Rakefile +0 -2
- data/app/assets/javascripts/renalware/application.js.erb +0 -1
- data/app/assets/javascripts/renalware/feed_only_inputs.js.erb +26 -0
- data/app/assets/javascripts/renalware/feeds.js +50 -0
- data/app/assets/javascripts/renalware/person_ajax_search.js +43 -0
- data/app/assets/stylesheets/renalware/application.scss +0 -1
- data/app/assets/stylesheets/renalware/modules/_admin.scss +7 -0
- data/app/assets/stylesheets/renalware/modules/_pathology.scss +1 -1
- data/app/assets/stylesheets/renalware/modules/_patients.scss +6 -0
- data/app/assets/stylesheets/renalware/modules/_snippets.scss +2 -2
- data/app/assets/stylesheets/renalware/partials/_forms.scss +5 -1
- data/app/assets/stylesheets/renalware/partials/_layout.scss +4 -0
- data/app/{views/renalware/patients/_side_menu.html.slim → components/renalware/patients/side_menu_component.html.slim} +0 -0
- data/app/components/renalware/patients/side_menu_component.rb +18 -0
- data/app/controllers/renalware/clinical/body_compositions_controller.rb +6 -0
- data/app/controllers/renalware/feeds/hl7_test_messages_controller.rb +60 -0
- data/app/controllers/renalware/hd/mdm_patients_controller.rb +16 -6
- data/app/controllers/renalware/hd/scheduling/diaries_controller.rb +91 -0
- data/app/controllers/renalware/hd/scheduling/diary_slots_controller.rb +169 -0
- data/app/controllers/renalware/hd/session_forms/batches_controller.rb +1 -1
- data/app/controllers/renalware/pathology/observation_requests_controller.rb +23 -4
- data/app/controllers/renalware/pathology/requests/requests_controller.rb +0 -4
- data/app/controllers/renalware/patients/abridgements_controller.rb +39 -0
- data/app/controllers/renalware/pd/regimes_controller.rb +26 -0
- data/app/controllers/renalware/problems/problems_controller.rb +2 -2
- data/app/helpers/renalware/application_helper.rb +9 -0
- data/app/helpers/renalware/article_helper.rb +18 -0
- data/app/helpers/renalware/form_helper.rb +3 -2
- data/app/helpers/renalware/users_helper.rb +5 -1
- data/app/javascript/controllers/clipboard_controller.js +16 -0
- data/app/javascript/packs/renalware_core.js +20 -0
- data/app/jobs/feed_job.rb +1 -3
- data/app/jobs/hl7_message_example.yml +2 -2
- data/app/models/renalware/feeds/files/practice_memberships/import_job.rb +3 -0
- data/app/models/renalware/feeds/files/primary_care_physicians/import_job.rb +2 -0
- data/app/models/renalware/feeds/hl7_message.rb +57 -6
- data/app/models/renalware/feeds/hl7_test_form.rb +10 -0
- data/app/models/renalware/feeds/hl7_test_message.rb +11 -0
- data/app/models/renalware/feeds/message_parser.rb +6 -2
- data/app/models/renalware/feeds/message_processor.rb +44 -32
- data/app/models/renalware/feeds/persist_message.rb +9 -3
- data/app/models/renalware/feeds.rb +2 -0
- data/app/models/renalware/hd/scheduling/archive_arguments.rb +19 -0
- data/app/models/renalware/hd/scheduling/diary.rb +54 -0
- data/app/models/renalware/hd/scheduling/diary_housekeeping_job.rb +84 -0
- data/app/models/renalware/hd/scheduling/diary_range.rb +69 -0
- data/app/models/renalware/hd/scheduling/diary_slot.rb +88 -0
- data/app/models/renalware/hd/scheduling/find_or_create_diary_by_week_query.rb +52 -0
- data/app/models/renalware/hd/scheduling/find_or_create_master_diary.rb +27 -0
- data/app/models/renalware/hd/scheduling/master_diary.rb +35 -0
- data/app/models/renalware/hd/scheduling/weekly_diary.rb +47 -0
- data/app/models/renalware/pathology/message_listener.rb +2 -2
- data/app/models/renalware/pathology/requests/global_rule/latest_crf_older_than_weeks.rb +38 -0
- data/app/models/renalware/pathology/requests/global_rule/patient_is_diabetic.rb +1 -1
- data/app/models/renalware/patient.rb +1 -1
- data/app/models/renalware/patients/abridgement.rb +18 -0
- data/app/models/renalware/patients/abridgement_search_form.rb +12 -0
- data/app/models/renalware/patients/ingestion/command.rb +25 -0
- data/app/models/renalware/patients/ingestion/command_factory.rb +135 -0
- data/app/models/renalware/patients/ingestion/commands/add_or_update_patient.rb +65 -0
- data/app/models/renalware/patients/ingestion/message_listener.rb +21 -0
- data/app/models/renalware/patients/ingestion/message_mapper.rb +26 -0
- data/app/models/renalware/patients/ingestion/message_mappers/patient.rb +73 -0
- data/app/models/renalware/patients/ingestion/update_master_patient_index.rb +60 -0
- data/app/models/renalware/patients/ingestion/update_master_patient_index_job.rb.dead +20 -0
- data/app/models/renalware/patients.rb +4 -3
- data/app/models/renalware/problems/problem.rb +6 -2
- data/app/models/renalware/ukrdc/incoming/paths.rb +6 -7
- data/app/policies/renalware/admin/devops_policy.rb +18 -0
- data/app/policies/renalware/hd/{diary_policy.rb → scheduling/diary_policy.rb} +3 -1
- data/app/presenters/renalware/clinical/profile_presenter.rb +2 -1
- data/app/presenters/renalware/directory/person_auto_complete_presenter.rb +1 -1
- data/app/presenters/renalware/hd/scheduling/diary_presenter.rb +84 -0
- data/app/presenters/renalware/hd/scheduling/diary_slot_presenter.rb +74 -0
- data/app/presenters/renalware/hd/scheduling/null_slot.rb +42 -0
- data/app/presenters/renalware/pd/dashboard_presenter.rb +3 -2
- data/app/views/renalware/accesses/procedures/_form.html.slim +5 -1
- data/app/views/renalware/accesses/procedures/_list.html.slim +11 -4
- data/app/views/renalware/accesses/procedures/show.html.slim +17 -19
- data/app/views/renalware/addresses/_form.html.slim +17 -12
- data/app/views/renalware/admin/cache/show.html.slim +24 -0
- data/app/views/renalware/clinical/body_compositions/_list.html.slim +7 -43
- data/app/views/renalware/clinical/body_compositions/_table.html.slim +42 -0
- data/app/views/renalware/clinical/body_compositions/index.html.slim +9 -0
- data/app/views/renalware/clinical/dry_weights/_list.html.slim +2 -8
- data/app/views/renalware/clinical/dry_weights/_table.html.slim +7 -0
- data/app/views/renalware/clinical/profiles/show.html.slim +4 -2
- data/app/views/renalware/feeds/hl7_test_messages/create.js.erb +10 -0
- data/app/views/renalware/feeds/hl7_test_messages/new.slim +18 -0
- data/app/views/renalware/hd/mdm_patients/_filters.html.slim +0 -11
- data/app/views/renalware/hd/mdm_patients/_page_actions.html.slim +29 -0
- data/app/views/renalware/hd/mdm_patients/index.html.slim +7 -4
- data/app/views/renalware/hd/{diaries → scheduling/diaries}/_page_actions.html.slim +4 -4
- data/app/views/renalware/hd/{diaries → scheduling/diaries}/_table.html.slim +0 -0
- data/app/views/renalware/hd/{diaries → scheduling/diaries}/_weekly_diary.html.slim +1 -1
- data/app/views/renalware/hd/{diaries → scheduling/diaries}/edit.html.slim +6 -6
- data/app/views/renalware/hd/{diaries → scheduling/diaries}/index.html.slim +0 -0
- data/app/views/renalware/hd/{diaries → scheduling/diaries}/show.pdf.slim +0 -0
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/_form.html.slim +15 -6
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/_slot.html.slim +2 -2
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/_tab.html.slim +1 -1
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/create.js.erb +1 -1
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/destroy.js.erb +1 -1
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/edit.html.slim +2 -2
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/new.html.slim +0 -0
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/new.js.erb +0 -0
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/show.js.erb +0 -0
- data/app/views/renalware/hd/{diary_slots → scheduling/diary_slots}/update.js.erb +1 -1
- data/app/views/renalware/hospitals/units/index.html.slim +2 -2
- data/app/views/renalware/layouts/_patient.html.slim +2 -1
- data/app/views/renalware/letters/contacts/_form.html.slim +10 -13
- data/app/views/renalware/letters/letters/_form.html.slim +2 -9
- data/app/views/renalware/navigation/_developer.html.slim +4 -0
- data/app/views/renalware/navigation/_menu.html.slim +2 -0
- data/app/views/renalware/pathology/observation_requests/_filters.html.slim +17 -0
- data/app/views/renalware/pathology/observation_requests/index.html.slim +2 -1
- data/app/views/renalware/patients/_layout.html.slim +1 -1
- data/app/views/renalware/patients/_side_menu.html.slim.dead +7 -0
- data/app/views/renalware/patients/abridgements/_abridgement.html.slim +8 -0
- data/app/views/renalware/patients/abridgements/_table.html.slim +12 -0
- data/app/views/renalware/patients/abridgements/index.html.slim +22 -0
- data/app/views/renalware/patients/alerts/create.json +3 -0
- data/app/views/renalware/patients/patients/_form.html.slim +36 -17
- data/app/views/renalware/patients/patients/edit.html.slim +1 -1
- data/app/views/renalware/patients/patients/new.html.slim +1 -1
- data/app/views/renalware/patients/side_menu/_actions.html.slim +2 -0
- data/app/views/renalware/pd/_apd_regimes.html.slim +1 -1
- data/app/views/renalware/pd/_capd_regimes.html.slim +1 -1
- data/app/views/renalware/pd/dashboards/show/_apd_regimes.html.slim +11 -2
- data/app/views/renalware/pd/dashboards/show/_capd_regimes.html.slim +11 -2
- data/app/views/renalware/pd/regimes/index.html.slim +7 -0
- data/app/views/renalware/renal/profiles/_form.html.slim +7 -24
- data/app/views/renalware/shared/documents/_binary_marker_input.html.slim +2 -2
- data/app/views/renalware/shared/documents/_blood_group_input.html.slim +4 -2
- data/app/views/renalware/transplants/registrations/_form.html.slim +22 -17
- data/config/locales/renalware/clinical/body_composition.yml +6 -3
- data/config/locales/renalware/clinical/dry_weight.en.yml +4 -3
- data/config/locales/renalware/hd/diary_slots.en.yml +3 -2
- data/config/locales/renalware/letters/contact.en.yml +0 -2
- data/config/routes/feeds.rb +5 -0
- data/config/routes/hd.rb +11 -7
- data/config/routes/letters.rb +0 -5
- data/config/routes/patients.rb +1 -0
- data/config/routes/pd.rb +2 -2
- data/config/routes/renal.rb +0 -5
- data/config/routes.rb +1 -0
- data/config/webpack/development.js +5 -0
- data/config/webpack/environment.js +3 -0
- data/config/webpack/production.js +5 -0
- data/config/webpack/test.js +5 -0
- data/config/webpacker.yml +103 -0
- data/db/functions/hd_diary_archive_elapsed_master_slots_v01.sql +40 -0
- data/db/migrate/20190322120025_create_feed_hl7_test_messages.rb +12 -0
- data/db/migrate/20190325134823_create_patients_master_index.rb +24 -0
- data/db/migrate/20190327100851_add_handled_to_feed_messages.rb +5 -0
- data/db/migrate/20191012121433_add_consultant_to_users.rb +7 -0
- data/db/migrate/20191018143635_create_hd_diary_matrix_view.rb +7 -0
- data/db/migrate/20191018144917_create_fn_to_archive_master_slots.rb +9 -0
- data/db/views/hd_diary_matrix_v01.sql +38 -0
- data/lib/core_extensions/active_record/sort.rb +27 -9
- data/lib/renalware/configuration.rb +3 -0
- data/lib/renalware/engine.rb +31 -0
- data/lib/renalware/version.rb +1 -1
- data/lib/renalware/week_period.rb +8 -7
- data/lib/renalware.rb +13 -1
- data/lib/tasks/hd.rake +7 -0
- data/lib/tasks/pathology.rake +1 -1
- data/lib/tasks/renalware.rake +89 -4
- data/spec/factories/hd/scheduling/diaries.rb +18 -0
- data/spec/factories/hd/{slots.rb → scheduling/slots.rb} +1 -1
- data/spec/factories/patients/abridgements.rb +9 -0
- data/spec/support/hl7_helpers.rb +13 -0
- data/spec/support/pages/letters/form.rb +4 -1
- metadata +126 -50
- data/app/assets/javascripts/renalware/auto_complete.js +0 -63
- data/app/controllers/renalware/hd/diaries_controller.rb +0 -89
- data/app/controllers/renalware/hd/diary_slots_controller.rb +0 -175
- data/app/controllers/renalware/letters/descriptions_controller.rb +0 -22
- data/app/controllers/renalware/renal/prd_descriptions_controller.rb +0 -15
- data/app/models/renalware/hd/archive_yesterdays_slots_job.rb +0 -69
- data/app/models/renalware/hd/diary.rb +0 -41
- data/app/models/renalware/hd/diary_slot.rb +0 -83
- data/app/models/renalware/hd/find_or_create_diary_by_week_query.rb +0 -50
- data/app/models/renalware/hd/find_or_create_master_diary.rb +0 -26
- data/app/models/renalware/hd/master_diary.rb +0 -32
- data/app/models/renalware/hd/weekly_diary.rb +0 -45
- data/app/models/renalware/renal/prd_descriptions/search_query.rb +0 -35
- data/app/presenters/renalware/hd/diary_presenter.rb +0 -79
- data/app/presenters/renalware/hd/diary_slot_presenter.rb +0 -72
- data/app/presenters/renalware/hd/null_slot.rb +0 -40
- data/app/views/renalware/renal/prd_descriptions/search.json.jbuilder +0 -6
- data/lib/test_support/autocomplete_helpers.rb +0 -14
- data/spec/factories/hd/diaries.rb +0 -14
data/lib/tasks/renalware.rake
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
+
def ensure_log_goes_to_stdout
|
|
4
|
+
old_logger = Webpacker.logger
|
|
5
|
+
Webpacker.logger = ActiveSupport::Logger.new(STDOUT)
|
|
6
|
+
yield
|
|
7
|
+
ensure
|
|
8
|
+
Webpacker.logger = old_logger
|
|
9
|
+
end
|
|
10
|
+
|
|
3
11
|
namespace :renalware do
|
|
4
12
|
desc "Install package.json dependencies with yarn for the renalware-core engine - "\
|
|
5
13
|
"without this <path to installed gem>/renalware-core/node_modules is not populated "\
|
|
@@ -10,17 +18,94 @@ namespace :renalware do
|
|
|
10
18
|
system "yarn install --no-progress --production"
|
|
11
19
|
end
|
|
12
20
|
end
|
|
21
|
+
|
|
22
|
+
desc "Cleans the Webpack output folder (public/renalware-core-packs)"
|
|
23
|
+
task :clean_webpack_output_folder do
|
|
24
|
+
puts "Destroying packs output folder ..."
|
|
25
|
+
Dir.chdir(File.join(__dir__, "..", "..")) do
|
|
26
|
+
# TODO : Load packs output from config/webpacker.yml
|
|
27
|
+
system "rm -rf public/renalware-core-packs"
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
# I have found that it is necessary to force remove public/renalware-core-packs with the
|
|
32
|
+
# clean_webpack_output_folder task above before compiling, otherwise webpack does not
|
|
33
|
+
# always find changes in js/controllers/*.js. I think this is safe to do in a capistrano deploy
|
|
34
|
+
# because the symlink to public is only applied after a successful execution of (among other
|
|
35
|
+
# things) assets:precompile.
|
|
36
|
+
desc "Compile JavaScript packs using webpack for production with digests"
|
|
37
|
+
task webpacker_compile: %i(clean_webpack_output_folder yarn_install environment) do
|
|
38
|
+
puts "Compiling renalware-core packs with webpack.."
|
|
39
|
+
if Rails.env.development? || Rails.env.test?
|
|
40
|
+
compile_webpacker_output
|
|
41
|
+
else
|
|
42
|
+
temporarily_point_webpacker_config_public_root_path_to_rails_app_root do
|
|
43
|
+
compile_webpacker_output
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
def compile_webpacker_output
|
|
50
|
+
Webpacker.with_node_env("production") do
|
|
51
|
+
ensure_log_goes_to_stdout do
|
|
52
|
+
if Renalware.webpacker.commands.compile
|
|
53
|
+
# Successful compilation!
|
|
54
|
+
else
|
|
55
|
+
# Failed compilation
|
|
56
|
+
exit!
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
# This is something of a hack to get webpacker to compile the renalware-core-packs in the
|
|
63
|
+
# host Rails app's public folder. We change out config/webpacker.yml to point to the host app's
|
|
64
|
+
# public path, do the compile, then revert out change.
|
|
65
|
+
# The downside of this approach is that if running staging or production env locally without
|
|
66
|
+
# nginx to find and serve public/renalware-core-packs, the pack files will not be found by the host
|
|
67
|
+
# because the Rack::Static middleware we setup in engine.rb will not find them.
|
|
68
|
+
# An alternative is for us to do the compile inside the engine and then cp -R or rsync (better
|
|
69
|
+
# if we are symlinking renawlare-core-packs to shared in deploy.rb) the
|
|
70
|
+
# folder into the host's public app where it can be served by nginx (if configured).
|
|
71
|
+
# This has the advantage that the same files are available in the engine's public folder (so they
|
|
72
|
+
# can be servered by Rack::Static - see engine.rb) and also in the host apps public folder
|
|
73
|
+
# where nginx can server them if we are in a real 'environment'
|
|
74
|
+
def temporarily_point_webpacker_config_public_root_path_to_rails_app_root
|
|
75
|
+
engine_config_folder = Renalware::Engine.root.join("config")
|
|
76
|
+
find = "public_root_path: .*$"
|
|
77
|
+
replace = "public_root_path: #{Rails.root.join('public')}"
|
|
78
|
+
|
|
79
|
+
# This changes the contents of file, creating a backup in webpacker.yml.bak
|
|
80
|
+
`ruby -pi.bak -e "gsub(/#{find}/, '#{replace}')" #{engine_config_folder}/webpacker.yml`
|
|
81
|
+
|
|
82
|
+
yield if block_given?
|
|
83
|
+
ensure
|
|
84
|
+
# Ensure that we always restore the backup webpacker.yml
|
|
85
|
+
FileUtils.mv(
|
|
86
|
+
engine_config_folder.join("webpacker.yml.bak"),
|
|
87
|
+
engine_config_folder.join("webpacker.yml")
|
|
88
|
+
)
|
|
13
89
|
end
|
|
14
90
|
|
|
15
|
-
def
|
|
16
|
-
Rake::Task["assets:precompile"].enhance(["renalware:
|
|
91
|
+
def enhance_assets_precompile_with_renalware_webpacker_compile
|
|
92
|
+
Rake::Task["assets:precompile"].enhance(["renalware:webpacker_compile"])
|
|
17
93
|
end
|
|
18
94
|
|
|
19
95
|
# When a host app runs rake assets:precompile, hook into this and enhance the
|
|
20
|
-
# task so it runs
|
|
96
|
+
# task so it runs webpacker install for (and relative to) the engine, wherever it is installed.
|
|
21
97
|
# Without that, assets:precompile will fail because the engine references various js and css files
|
|
22
98
|
# in ./node_modules, and these are not included in the source, but need to be installed with yarn
|
|
23
99
|
# at deploy time.
|
|
100
|
+
#
|
|
101
|
+
# Note that when runnning in the engine in development, we need to set the ENV
|
|
102
|
+
# var WEBPACKER_PRECOMPILE=no (e.g. in ./.env) otherwise wepacker will enhance the
|
|
103
|
+
# 'assets:precompile' task with 'webpacker:compile' task, and the latter task does not exist
|
|
104
|
+
# in out context (for us its called app:webpacker:compile).
|
|
105
|
+
# A possible downside of this is that webpacker compilation in the dummy app, if ever required, may
|
|
106
|
+
# not work, I'm not sure.
|
|
24
107
|
if Rake::Task.task_defined?("assets:precompile")
|
|
25
|
-
|
|
108
|
+
enhance_assets_precompile_with_renalware_webpacker_compile
|
|
109
|
+
else
|
|
110
|
+
Rake::Task.define_task("assets:precompile" => "renalware:webpacker:compile")
|
|
26
111
|
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
FactoryBot.define do
|
|
4
|
+
factory :hd_weekly_diary, class: "Renalware::HD::Scheduling::WeeklyDiary" do
|
|
5
|
+
accountable
|
|
6
|
+
year { 2017 }
|
|
7
|
+
week_number { 2 }
|
|
8
|
+
master { false }
|
|
9
|
+
hospital_unit_id { nil }
|
|
10
|
+
association :master_diary, factory: :hd_master_diary
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
factory :hd_master_diary, class: "Renalware::HD::Scheduling::MasterDiary" do
|
|
14
|
+
accountable
|
|
15
|
+
master { true }
|
|
16
|
+
hospital_unit_id { nil }
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
3
|
FactoryBot.define do
|
|
4
|
-
factory :hd_diary_slot, class: "Renalware::HD::DiarySlot" do
|
|
4
|
+
factory :hd_diary_slot, class: "Renalware::HD::Scheduling::DiarySlot" do
|
|
5
5
|
association :diurnal_period_code_id, :am, factory: :hd_diurnal_period_code
|
|
6
6
|
association :patient
|
|
7
7
|
association :station, factory: :hd_station
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module HL7Helpers
|
|
4
|
+
def hl7_message_from_file(filename, patient)
|
|
5
|
+
result = parse_hl7_file(filename, patient)
|
|
6
|
+
Renalware::Feeds::HL7Message.new(::HL7::Message.new(result.lines))
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
def parse_hl7_file(filename, patient, pid = nil)
|
|
10
|
+
body = file_fixture("hl7/#{filename}.hl7.erb").read
|
|
11
|
+
ERB.new(body).result(binding)
|
|
12
|
+
end
|
|
13
|
+
end
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
# frozen_string_literal: true
|
|
2
2
|
|
|
3
|
+
require "rails_helper"
|
|
3
4
|
require_relative "../page_object"
|
|
4
5
|
|
|
5
6
|
# rubocop disable Metrics/LineLength
|
|
6
7
|
module Pages
|
|
7
8
|
module Letters
|
|
8
9
|
class Form < PageObject
|
|
10
|
+
include CapybaraSelect2
|
|
11
|
+
|
|
9
12
|
PERSON_ROLE_TO_RADIO_ID_MAP = {
|
|
10
13
|
patient: :letter_main_recipient_attributes_person_role_patient,
|
|
11
14
|
primary_care_physician: :letter_main_recipient_attributes_person_role_primary_care_physician,
|
|
@@ -26,7 +29,7 @@ module Pages
|
|
|
26
29
|
end
|
|
27
30
|
|
|
28
31
|
def description=(value)
|
|
29
|
-
|
|
32
|
+
select2 value, css: ".letter_description"
|
|
30
33
|
end
|
|
31
34
|
|
|
32
35
|
def main_recipient=(main_recipient_role)
|