renalware-forms 0.1.0
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 +7 -0
- data/MIT-LICENSE +20 -0
- data/README.md +66 -0
- data/Rakefile +19 -0
- data/lib/renalware/forms.rb +17 -0
- data/lib/renalware/forms/base.rb +26 -0
- data/lib/renalware/forms/generic.rb +9 -0
- data/lib/renalware/forms/generic/homecare.rb +11 -0
- data/lib/renalware/forms/generic/homecare/v1.rb +12 -0
- data/lib/renalware/forms/generic/homecare/v1/base.rb +9 -0
- data/lib/renalware/forms/generic/homecare/v1/document.rb +19 -0
- data/lib/renalware/forms/helpers.rb +25 -0
- data/lib/renalware/forms/homecare.rb +16 -0
- data/lib/renalware/forms/homecare/args.rb +109 -0
- data/lib/renalware/forms/homecare/pdf.rb +27 -0
- data/lib/renalware/forms/version.rb +7 -0
- data/lib/tasks/homecare.rake +18 -0
- data/lib/tasks/tasks.rake +4 -0
- metadata +186 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 347e9f7644d2f72db868d81b7c16a22403285db8bed1bdf545041f53fcae2b79
|
4
|
+
data.tar.gz: b909b6addb49a49c618324e41c34cadb19eb04ce9140d1a48562cbbab0deea0f
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: d2d1937839e25b9ceabc0e4eb03e21e571a831f795fce8cea0194cdfd5f6c2147d53d18174bee50125854872bcee892c865522cecbe7bb0a8c46b573ea2d0440
|
7
|
+
data.tar.gz: 95f1eb71ec37fbaac84f61956a9193812feb613ee9188966cf1c4d139d10e5fbb30d4f1ba7202b114a2f7a346a5ec3c749637a0f919bfe7d1cf59d8a9fc2524a
|
data/MIT-LICENSE
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright 2020 Tim Crowe
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,66 @@
|
|
1
|
+
# Renalware::Forms
|
2
|
+
|
3
|
+
This gem
|
4
|
+
- is a library of pre-defined generic PDF forms that Renalware can populate and present
|
5
|
+
to the user, for example when a user needs to print and sign a list of drugs to be delivered for
|
6
|
+
homecare.
|
7
|
+
- provides a API for creating these PDFs, and others (see renalware-forms-* gems) so that form
|
8
|
+
creation is abstracted from Renalware.
|
9
|
+
|
10
|
+
The PDFs are constructed using Prawn, chosen mainly for its speed.
|
11
|
+
|
12
|
+
The gem exposes an API for a caller to specify the type and version of the PDF they require, along
|
13
|
+
with data to populate it (patient name and address etc).
|
14
|
+
|
15
|
+
See other gems ie `renalware-forms-<provider>` for instances where we have built custom forms
|
16
|
+
based on this gem.
|
17
|
+
|
18
|
+
## Future enhancements
|
19
|
+
|
20
|
+
To be more extensible and remove the need for developer input when adding new forms, an alternative
|
21
|
+
implementation is possible where the request to create for example "Fresenius Homecare
|
22
|
+
Supply Version 1.1" will load a PDF file with the corrersponding name. If the PDF is created for
|
23
|
+
example in Acrobat or LibreOffice and specifically-named form fields are inserted, these can be
|
24
|
+
populated with the supplied the data the caller also provides. It could even allow the path to a
|
25
|
+
custom PDF form to be supplied by the caller. Using a shared library of PDF files stored inside this
|
26
|
+
gem will provide more re-usue opportunity across sites, though there could be nothing stopping a
|
27
|
+
hospital developing a custom form stored outside of this gem, and not sharing it.
|
28
|
+
|
29
|
+
## Installation
|
30
|
+
Add this line to your application's Gemfile:
|
31
|
+
|
32
|
+
```ruby
|
33
|
+
gem 'renalware-forms'
|
34
|
+
```
|
35
|
+
|
36
|
+
And then execute:
|
37
|
+
```bash
|
38
|
+
$ bundle
|
39
|
+
```
|
40
|
+
|
41
|
+
Or install it yourself as:
|
42
|
+
```bash
|
43
|
+
$ gem install renalware-forms
|
44
|
+
```
|
45
|
+
## Testing
|
46
|
+
|
47
|
+
You can generate example instances of all the PDFs in this gem from the command line.
|
48
|
+
|
49
|
+
You can see a list available tasks:
|
50
|
+
|
51
|
+
```bash
|
52
|
+
$ bundle exec rake -T
|
53
|
+
```
|
54
|
+
|
55
|
+
For example:
|
56
|
+
|
57
|
+
```bash
|
58
|
+
$ bundle exec rake forms:generic:homecare:v1
|
59
|
+
```
|
60
|
+
|
61
|
+
will create the version 1 PDF with test data and open it in Linux (will require a change
|
62
|
+
for it to open on a Mac).
|
63
|
+
|
64
|
+
## License
|
65
|
+
|
66
|
+
The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
|
data/Rakefile
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
begin
|
2
|
+
require "bundler/setup"
|
3
|
+
rescue LoadError
|
4
|
+
puts "You must `gem install bundler` and `bundle install` to run rake tasks"
|
5
|
+
end
|
6
|
+
|
7
|
+
require "rdoc/task"
|
8
|
+
|
9
|
+
RDoc::Task.new(:rdoc) do |rdoc|
|
10
|
+
rdoc.rdoc_dir = "rdoc"
|
11
|
+
rdoc.title = "Renalware::Forms"
|
12
|
+
rdoc.options << "--line-numbers"
|
13
|
+
rdoc.rdoc_files.include("README.md")
|
14
|
+
rdoc.rdoc_files.include("lib/**/*.rb")
|
15
|
+
end
|
16
|
+
|
17
|
+
Dir.glob("lib/tasks/**/*.rake").each { |r| load r }
|
18
|
+
|
19
|
+
require "bundler/gem_tasks"
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "prawn"
|
4
|
+
require "prawn/table"
|
5
|
+
require "attr_extras"
|
6
|
+
require "active_support"
|
7
|
+
|
8
|
+
module Renalware
|
9
|
+
module Forms
|
10
|
+
extend ActiveSupport::Autoload
|
11
|
+
|
12
|
+
autoload :Helpers
|
13
|
+
autoload :Base
|
14
|
+
autoload :Homecare
|
15
|
+
autoload :Generic
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Renalware::Forms
|
4
|
+
class Base
|
5
|
+
include Prawn::View
|
6
|
+
EMPTY_CHECKBOX = "o " # in ZapfDingbats
|
7
|
+
CHECKBOX = "3 "
|
8
|
+
|
9
|
+
# lower case o is an empty checkbox in ZapfDingbats
|
10
|
+
def cell_with_leading_checkbox(text, checked: false, **options)
|
11
|
+
if checked
|
12
|
+
{
|
13
|
+
content: "<font name='ZapfDingbats'>#{CHECKBOX}</font>#{text}",
|
14
|
+
inline_format: true,
|
15
|
+
**options
|
16
|
+
}
|
17
|
+
else
|
18
|
+
{
|
19
|
+
content: "<font name='ZapfDingbats'>#{EMPTY_CHECKBOX}</font>#{text}",
|
20
|
+
inline_format: true,
|
21
|
+
**options
|
22
|
+
}
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Renalware::Forms::Generic
|
4
|
+
module Homecare::V1
|
5
|
+
class Document < Base
|
6
|
+
pattr_initialize :args
|
7
|
+
|
8
|
+
def self.build(args)
|
9
|
+
new(args).tap(&:build)
|
10
|
+
end
|
11
|
+
|
12
|
+
def document
|
13
|
+
@document ||= Prawn::Document.new(page_size: "A4", page_layout: :portrait, margin: 15)
|
14
|
+
end
|
15
|
+
|
16
|
+
def build; end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "tempfile"
|
4
|
+
|
5
|
+
module Renalware
|
6
|
+
module Forms
|
7
|
+
module Helpers
|
8
|
+
def render_and_open(prawn_pdf_doc)
|
9
|
+
filename = File.join(Dir.pwd, "./tmp", "#{Time.now.to_i}.pdf")
|
10
|
+
prawn_pdf_doc.render_file filename
|
11
|
+
open_pdf filename
|
12
|
+
end
|
13
|
+
|
14
|
+
def open_pdf(filename)
|
15
|
+
# Open the test file in ubuntu - just use "open" if mac?
|
16
|
+
# You may need to fo
|
17
|
+
# `sudo apt-get install appmenu-gtk2-module appmenu-gtk3-module`
|
18
|
+
|
19
|
+
`gio open #{filename}`
|
20
|
+
rescue StandardError
|
21
|
+
nil
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "prawn"
|
4
|
+
require "prawn/table"
|
5
|
+
require "attr_extras"
|
6
|
+
require "active_support"
|
7
|
+
|
8
|
+
module Renalware::Forms
|
9
|
+
module Homecare
|
10
|
+
extend ActiveSupport::Autoload
|
11
|
+
|
12
|
+
autoload :Pdf
|
13
|
+
autoload :Args
|
14
|
+
autoload :Generic
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,109 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "virtus"
|
4
|
+
require "active_model"
|
5
|
+
|
6
|
+
module Renalware::Forms
|
7
|
+
class Homecare::Args
|
8
|
+
include Virtus::Model
|
9
|
+
include ActiveModel::Validations
|
10
|
+
|
11
|
+
# The first 2 attrbutes are used to drive what PDF to build
|
12
|
+
attribute :provider, String
|
13
|
+
attribute :version, Integer
|
14
|
+
|
15
|
+
attribute :title, String
|
16
|
+
attribute :given_name, String
|
17
|
+
attribute :family_name, String
|
18
|
+
attribute :nhs_number, String
|
19
|
+
attribute :born_on, Date
|
20
|
+
attribute :fmc_patient, String
|
21
|
+
attribute :telephone, String
|
22
|
+
attribute :hospital_number, String
|
23
|
+
attribute :address, String
|
24
|
+
attribute :postcode, String
|
25
|
+
attribute :modality, String
|
26
|
+
attribute :prescriber_name, String
|
27
|
+
attribute :prescription_date, Date
|
28
|
+
attribute :hospital_name, String
|
29
|
+
attribute :hospital_department, String
|
30
|
+
attribute :hospital_address, Array[String]
|
31
|
+
attribute :po_number, String
|
32
|
+
attribute :no_known_allergies, Boolean
|
33
|
+
attribute :allergies, Array[String]
|
34
|
+
attribute :administration_route, String
|
35
|
+
attribute :administration_frequency, String
|
36
|
+
attribute :prescription_duration, String
|
37
|
+
attribute :administration_device, String
|
38
|
+
|
39
|
+
# validates! will raise eg ActiveModel::StrictValidationFailed: Family name can't be blank
|
40
|
+
validates! :family_name, presence: true
|
41
|
+
validates! :given_name, presence: true
|
42
|
+
|
43
|
+
def formatted_address
|
44
|
+
format_address_array address
|
45
|
+
end
|
46
|
+
|
47
|
+
def formatted_hospital_address
|
48
|
+
format_address_array hospital_address
|
49
|
+
end
|
50
|
+
|
51
|
+
def formatted_hospital_name_and_address
|
52
|
+
arr = [hospital_name] + hospital_address
|
53
|
+
format_address_array arr
|
54
|
+
end
|
55
|
+
|
56
|
+
def format_address_array(add)
|
57
|
+
return unless add&.is_a?(Array)
|
58
|
+
|
59
|
+
add.compact.reject { |line| line == "" }&.uniq&.join("\n")
|
60
|
+
end
|
61
|
+
|
62
|
+
def formatted_prescription_date
|
63
|
+
return unless prescription_date
|
64
|
+
|
65
|
+
prescription_date
|
66
|
+
end
|
67
|
+
|
68
|
+
def allergies_as_list
|
69
|
+
Array(allergies).uniq.compact.join("<br>")
|
70
|
+
end
|
71
|
+
|
72
|
+
def self.test_data(provider: :generic, version: 1)
|
73
|
+
new.tap do |args|
|
74
|
+
args.provider = provider
|
75
|
+
args.version = version
|
76
|
+
args.title = "Mr"
|
77
|
+
args.given_name = "Jack"
|
78
|
+
args.family_name = "JONES"
|
79
|
+
args.nhs_number = "0123456789"
|
80
|
+
args.born_on = Date.parse("2001-01-01")
|
81
|
+
args.fmc_patient = "123"
|
82
|
+
args.telephone = "07000 000001"
|
83
|
+
args.hospital_number = "ABC123"
|
84
|
+
args.address = ["line1", "", nil, "line2", "line3. "]
|
85
|
+
args.postcode = "TW1 1UU"
|
86
|
+
args.modality = "HD"
|
87
|
+
args.prescriber_name = "Dr X Yz"
|
88
|
+
args.prescription_date = Date.today.to_s
|
89
|
+
args.hospital_name = "THE ROYAL LONDON HOSPITAL"
|
90
|
+
args.hospital_department = ""
|
91
|
+
args.hospital_address = [
|
92
|
+
nil,
|
93
|
+
"WHITECHAPEL",
|
94
|
+
"",
|
95
|
+
"LONDON",
|
96
|
+
"E1 1FR"
|
97
|
+
]
|
98
|
+
args.no_known_allergies = false
|
99
|
+
args.allergies = ["Nuts", nil, "Penicillin", "Mown grass"]
|
100
|
+
args.administration_frequency = "Daily"
|
101
|
+
args.administration_route = "Per Oral"
|
102
|
+
args.prescription_duration = "1 month"
|
103
|
+
args.administration_device = "device?"
|
104
|
+
|
105
|
+
raise ArgumentError, args.errors unless args.valid?
|
106
|
+
end
|
107
|
+
end
|
108
|
+
end
|
109
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Renalware::Forms
|
4
|
+
class Homecare::Pdf
|
5
|
+
# Given an Args instance containing a provider (eg :fresenius) and a version (eg 1),
|
6
|
+
# get the document class for e.g. Renalware::Forms::Fresenius::Homecare::Document
|
7
|
+
# and use it to build a new PDF with the data (patient name etc supplied in args)
|
8
|
+
def self.generate(args)
|
9
|
+
raise ArgumentError unless args
|
10
|
+
raise(ArgumentError, "Missing provider") unless args.provider
|
11
|
+
raise(ArgumentError, "Missing provider") if args.provider == ""
|
12
|
+
raise(ArgumentError, "Version must be >0") if args.version.to_i == 0
|
13
|
+
|
14
|
+
provider = args.provider.to_s.capitalize
|
15
|
+
version = "V#{args.version.to_i}"
|
16
|
+
document_klass_name = "#{provider}::Homecare::#{version}::Document"
|
17
|
+
document_klass = Renalware::Forms.const_get(document_klass_name)
|
18
|
+
document_klass.build(args)
|
19
|
+
rescue NameError
|
20
|
+
raise(
|
21
|
+
ArgumentError,
|
22
|
+
"No PDF forms found for provider=#{args.provider} version=#{args.version} "\
|
23
|
+
"trying to resolve Renalware::Forms::#{document_klass_name}"
|
24
|
+
)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
|
2
|
+
require "./lib/renalware/forms"
|
3
|
+
require "tempfile"
|
4
|
+
|
5
|
+
namespace :forms do
|
6
|
+
namespace :generic do
|
7
|
+
namespace :homecare do
|
8
|
+
include Renalware::Forms::Helpers
|
9
|
+
|
10
|
+
desc "Generate test Generic Homecare Supply PDF V1"
|
11
|
+
task :v1 do
|
12
|
+
args = Renalware::Forms::Homecare::Args.test_data(provider: :generic, version: 1)
|
13
|
+
pdf = Renalware::Forms::Homecare::Pdf.generate(args)
|
14
|
+
render_and_open pdf
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
metadata
ADDED
@@ -0,0 +1,186 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: renalware-forms
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Airslie Ltd
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2020-02-25 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: activesupport
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: activemodel
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '0'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: attr_extras
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '6.2'
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '6.2'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: prawn
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '2.2'
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '2.2'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: prawn-table
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0.2'
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0.2'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: rake
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ">="
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :runtime
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ">="
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: virtus
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '1.0'
|
104
|
+
type: :runtime
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '1.0'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: rspec
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - ">="
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - ">="
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '0'
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: pdf-reader
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - ">="
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '0'
|
132
|
+
type: :development
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - ">="
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: '0'
|
139
|
+
description: The home for various forms for external providers e.g. home care prescriptions
|
140
|
+
email:
|
141
|
+
- dev@aisrlie.com
|
142
|
+
executables: []
|
143
|
+
extensions: []
|
144
|
+
extra_rdoc_files: []
|
145
|
+
files:
|
146
|
+
- MIT-LICENSE
|
147
|
+
- README.md
|
148
|
+
- Rakefile
|
149
|
+
- lib/renalware/forms.rb
|
150
|
+
- lib/renalware/forms/base.rb
|
151
|
+
- lib/renalware/forms/generic.rb
|
152
|
+
- lib/renalware/forms/generic/homecare.rb
|
153
|
+
- lib/renalware/forms/generic/homecare/v1.rb
|
154
|
+
- lib/renalware/forms/generic/homecare/v1/base.rb
|
155
|
+
- lib/renalware/forms/generic/homecare/v1/document.rb
|
156
|
+
- lib/renalware/forms/helpers.rb
|
157
|
+
- lib/renalware/forms/homecare.rb
|
158
|
+
- lib/renalware/forms/homecare/args.rb
|
159
|
+
- lib/renalware/forms/homecare/pdf.rb
|
160
|
+
- lib/renalware/forms/version.rb
|
161
|
+
- lib/tasks/homecare.rake
|
162
|
+
- lib/tasks/tasks.rake
|
163
|
+
homepage: http://airslie.com
|
164
|
+
licenses:
|
165
|
+
- MIT
|
166
|
+
metadata: {}
|
167
|
+
post_install_message:
|
168
|
+
rdoc_options: []
|
169
|
+
require_paths:
|
170
|
+
- lib
|
171
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
172
|
+
requirements:
|
173
|
+
- - ">="
|
174
|
+
- !ruby/object:Gem::Version
|
175
|
+
version: '0'
|
176
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
178
|
+
- - ">="
|
179
|
+
- !ruby/object:Gem::Version
|
180
|
+
version: '0'
|
181
|
+
requirements: []
|
182
|
+
rubygems_version: 3.0.3
|
183
|
+
signing_key:
|
184
|
+
specification_version: 4
|
185
|
+
summary: PDF library for Renalware forms
|
186
|
+
test_files: []
|