quby-compiler 0.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +13 -0
- data/.gitlab-ci.yml +5 -0
- data/.rspec +3 -0
- data/.ruby-version +1 -0
- data/CODE_OF_CONDUCT.md +74 -0
- data/Dockerfile +11 -0
- data/Gemfile +8 -0
- data/Gemfile.lock +133 -0
- data/LICENSE.txt +21 -0
- data/README.md +44 -0
- data/Rakefile +6 -0
- data/bin/console +14 -0
- data/bin/rspec +29 -0
- data/bin/setup +8 -0
- data/config/locales/de.yml +58 -0
- data/config/locales/en.yml +57 -0
- data/config/locales/nl.yml +57 -0
- data/config/locales/rails-i18n/README.md +4 -0
- data/config/locales/rails-i18n/de.yml +223 -0
- data/config/locales/rails-i18n/en.yml +216 -0
- data/config/locales/rails-i18n/nl.yml +214 -0
- data/exe/quby-compile +56 -0
- data/lib/quby/array_attribute_valid_validator.rb +15 -0
- data/lib/quby/attribute_valid_validator.rb +14 -0
- data/lib/quby/compiler.rb +50 -0
- data/lib/quby/compiler/dsl.rb +29 -0
- data/lib/quby/compiler/dsl/base.rb +20 -0
- data/lib/quby/compiler/dsl/calls_custom_methods.rb +29 -0
- data/lib/quby/compiler/dsl/charting/bar_chart_builder.rb +14 -0
- data/lib/quby/compiler/dsl/charting/chart_builder.rb +95 -0
- data/lib/quby/compiler/dsl/charting/line_chart_builder.rb +34 -0
- data/lib/quby/compiler/dsl/charting/overview_chart_builder.rb +31 -0
- data/lib/quby/compiler/dsl/charting/radar_chart_builder.rb +14 -0
- data/lib/quby/compiler/dsl/helpers.rb +53 -0
- data/lib/quby/compiler/dsl/panel_builder.rb +80 -0
- data/lib/quby/compiler/dsl/question_builder.rb +40 -0
- data/lib/quby/compiler/dsl/questionnaire_builder.rb +279 -0
- data/lib/quby/compiler/dsl/questions/base.rb +180 -0
- data/lib/quby/compiler/dsl/questions/checkbox_question_builder.rb +20 -0
- data/lib/quby/compiler/dsl/questions/date_question_builder.rb +18 -0
- data/lib/quby/compiler/dsl/questions/deprecated_question_builder.rb +18 -0
- data/lib/quby/compiler/dsl/questions/float_question_builder.rb +21 -0
- data/lib/quby/compiler/dsl/questions/integer_question_builder.rb +21 -0
- data/lib/quby/compiler/dsl/questions/radio_question_builder.rb +20 -0
- data/lib/quby/compiler/dsl/questions/select_question_builder.rb +18 -0
- data/lib/quby/compiler/dsl/questions/string_question_builder.rb +20 -0
- data/lib/quby/compiler/dsl/questions/text_question_builder.rb +22 -0
- data/lib/quby/compiler/dsl/score_builder.rb +22 -0
- data/lib/quby/compiler/dsl/score_schema_builder.rb +53 -0
- data/lib/quby/compiler/dsl/standardized_panel_generators.rb +33 -0
- data/lib/quby/compiler/dsl/table_builder.rb +48 -0
- data/lib/quby/compiler/entities.rb +38 -0
- data/lib/quby/compiler/entities/charting/bar_chart.rb +17 -0
- data/lib/quby/compiler/entities/charting/chart.rb +101 -0
- data/lib/quby/compiler/entities/charting/charts.rb +42 -0
- data/lib/quby/compiler/entities/charting/line_chart.rb +38 -0
- data/lib/quby/compiler/entities/charting/overview_chart.rb +20 -0
- data/lib/quby/compiler/entities/charting/plottable.rb +20 -0
- data/lib/quby/compiler/entities/charting/radar_chart.rb +17 -0
- data/lib/quby/compiler/entities/definition.rb +26 -0
- data/lib/quby/compiler/entities/fields.rb +119 -0
- data/lib/quby/compiler/entities/flag.rb +55 -0
- data/lib/quby/compiler/entities/item.rb +40 -0
- data/lib/quby/compiler/entities/lookup_tables.rb +71 -0
- data/lib/quby/compiler/entities/outcome_table.rb +31 -0
- data/lib/quby/compiler/entities/panel.rb +82 -0
- data/lib/quby/compiler/entities/question.rb +365 -0
- data/lib/quby/compiler/entities/question_option.rb +96 -0
- data/lib/quby/compiler/entities/questionnaire.rb +440 -0
- data/lib/quby/compiler/entities/questions/checkbox_question.rb +82 -0
- data/lib/quby/compiler/entities/questions/date_question.rb +84 -0
- data/lib/quby/compiler/entities/questions/deprecated_question.rb +19 -0
- data/lib/quby/compiler/entities/questions/float_question.rb +15 -0
- data/lib/quby/compiler/entities/questions/integer_question.rb +15 -0
- data/lib/quby/compiler/entities/questions/radio_question.rb +19 -0
- data/lib/quby/compiler/entities/questions/select_question.rb +19 -0
- data/lib/quby/compiler/entities/questions/string_question.rb +15 -0
- data/lib/quby/compiler/entities/questions/text_question.rb +15 -0
- data/lib/quby/compiler/entities/score_calculation.rb +35 -0
- data/lib/quby/compiler/entities/score_schema.rb +25 -0
- data/lib/quby/compiler/entities/subscore_schema.rb +23 -0
- data/lib/quby/compiler/entities/table.rb +143 -0
- data/lib/quby/compiler/entities/text.rb +71 -0
- data/lib/quby/compiler/entities/textvar.rb +23 -0
- data/lib/quby/compiler/entities/validation.rb +17 -0
- data/lib/quby/compiler/entities/version.rb +23 -0
- data/lib/quby/compiler/entities/visibility_rule.rb +71 -0
- data/lib/quby/compiler/instance.rb +72 -0
- data/lib/quby/compiler/output.rb +13 -0
- data/lib/quby/compiler/outputs.rb +4 -0
- data/lib/quby/compiler/outputs/quby_frontend_v1_serializer.rb +362 -0
- data/lib/quby/compiler/outputs/quby_frontend_v2_serializer.rb +15 -0
- data/lib/quby/compiler/outputs/roqua_serializer.rb +108 -0
- data/lib/quby/compiler/outputs/seed_serializer.rb +34 -0
- data/lib/quby/compiler/services/definition_validator.rb +330 -0
- data/lib/quby/compiler/services/quby_proxy.rb +405 -0
- data/lib/quby/compiler/services/seed_diff.rb +116 -0
- data/lib/quby/compiler/services/text_transformation.rb +30 -0
- data/lib/quby/compiler/version.rb +5 -0
- data/lib/quby/markdown_parser.rb +38 -0
- data/lib/quby/range_categories.rb +38 -0
- data/lib/quby/settings.rb +86 -0
- data/lib/quby/text_transformation.rb +26 -0
- data/lib/quby/type_validator.rb +12 -0
- data/quby-compiler.gemspec +39 -0
- metadata +277 -0
@@ -0,0 +1,30 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Quby
|
4
|
+
module Compiler
|
5
|
+
module Services
|
6
|
+
module TextTransformation
|
7
|
+
# Modal pop up window link: ~~url~~link_body~~
|
8
|
+
LINK_URL_REGEX = /\~\~(?<url>.+?)\~\~(?<link_content>.+?)\~\~/
|
9
|
+
|
10
|
+
# Textvars: Replace {{var_name}} with <span class='textvar' textvar='var_name'></span>
|
11
|
+
TEXT_VAR_REGEX = /\{\{(?<text_var>.+?)\}\}/
|
12
|
+
|
13
|
+
# to eventually replace maruku_extensions.rb
|
14
|
+
# this helper transforms ~~ links and {{text vars}} into html
|
15
|
+
def transform_special_text(text)
|
16
|
+
text.gsub(LINK_URL_REGEX) { link_html($~[:url], $~[:link_content]) }
|
17
|
+
.gsub(TEXT_VAR_REGEX) { textvar_html($~[:text_var]) }
|
18
|
+
end
|
19
|
+
|
20
|
+
def link_html(url, link_content)
|
21
|
+
"<a href='#' onclick='modalFrame(\"#{url}\");'>#{link_content}</a>"
|
22
|
+
end
|
23
|
+
|
24
|
+
def textvar_html(var_name)
|
25
|
+
"<span class='textvar' textvar='#{var_name}'>{{#{var_name}}}</span>"
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'redcarpet'
|
4
|
+
|
5
|
+
require 'quby/compiler/services/text_transformation'
|
6
|
+
|
7
|
+
module Quby
|
8
|
+
class MarkdownParser
|
9
|
+
include Quby::Compiler::Services::TextTransformation
|
10
|
+
|
11
|
+
EXTENTIONS = {
|
12
|
+
no_intra_emphasis: true
|
13
|
+
}.freeze
|
14
|
+
|
15
|
+
def initialize(source)
|
16
|
+
@source = source || ""
|
17
|
+
end
|
18
|
+
|
19
|
+
def to_html
|
20
|
+
rc_html = parser.render(@source).strip
|
21
|
+
transform_special_text(rc_html)
|
22
|
+
end
|
23
|
+
|
24
|
+
def html_safe
|
25
|
+
to_html.html_safe
|
26
|
+
end
|
27
|
+
|
28
|
+
private
|
29
|
+
|
30
|
+
def parser
|
31
|
+
@@parser ||= Redcarpet::Markdown.new(HTMLWithPants.new, EXTENTIONS)
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
class HTMLWithPants < Redcarpet::Render::HTML
|
36
|
+
include Redcarpet::Render::SmartyPants
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Quby
|
4
|
+
class RangeCategories
|
5
|
+
def initialize(*range_categories)
|
6
|
+
if range_categories.length.even? || range_categories.length < 3
|
7
|
+
fail "RangeCategories should be of the form (0, 'label 0-10', 10, 'label 10-20', 20)"
|
8
|
+
end
|
9
|
+
|
10
|
+
@range_hash = {}
|
11
|
+
parse_ranges(range_categories)
|
12
|
+
end
|
13
|
+
|
14
|
+
def as_range_hash
|
15
|
+
@range_hash.freeze
|
16
|
+
end
|
17
|
+
|
18
|
+
private
|
19
|
+
|
20
|
+
def parse_ranges(range_categories)
|
21
|
+
a = range_categories.dup
|
22
|
+
while a.length > 1
|
23
|
+
from = a.shift.to_f
|
24
|
+
label = a.shift
|
25
|
+
to = a.first.to_f
|
26
|
+
add_range(from, label, to, inclusive: a.length == 1)
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
def add_range(from, label, to, inclusive:)
|
31
|
+
if inclusive
|
32
|
+
@range_hash[from..to] = label
|
33
|
+
else
|
34
|
+
@range_hash[from...to] = label
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,86 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Quby
|
4
|
+
class Settings
|
5
|
+
def self.require_score_schemas
|
6
|
+
@require_score_schemas
|
7
|
+
end
|
8
|
+
|
9
|
+
def self.require_score_schemas=(value)
|
10
|
+
@require_score_schemas = value
|
11
|
+
end
|
12
|
+
|
13
|
+
def self.api_allowed_ip_ranges
|
14
|
+
@api_allowed_ip_ranges || ["10.0.0.0/8"]
|
15
|
+
end
|
16
|
+
|
17
|
+
def self.api_allowed_ip_ranges=(value)
|
18
|
+
@api_allowed_ip_ranges = value
|
19
|
+
end
|
20
|
+
|
21
|
+
def self.shared_secret
|
22
|
+
@shared_secret
|
23
|
+
end
|
24
|
+
|
25
|
+
def self.shared_secret=(value)
|
26
|
+
@shared_secret = value
|
27
|
+
end
|
28
|
+
|
29
|
+
def self.previous_shared_secret
|
30
|
+
@previous_shared_secret
|
31
|
+
end
|
32
|
+
|
33
|
+
def self.previous_shared_secret=(value)
|
34
|
+
@previous_shared_secret = value
|
35
|
+
end
|
36
|
+
|
37
|
+
def self.enforce_questionnaire_key_format
|
38
|
+
if @enforce_questionnaire_key_format.nil?
|
39
|
+
true
|
40
|
+
else
|
41
|
+
@enforce_questionnaire_key_format
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
def self.enforce_questionnaire_key_format=(value)
|
46
|
+
@enforce_questionnaire_key_format = value
|
47
|
+
end
|
48
|
+
|
49
|
+
def self.enable_leave_page_alert
|
50
|
+
if @enable_leave_page_alert.nil?
|
51
|
+
true
|
52
|
+
else
|
53
|
+
@enable_leave_page_alert
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
def self.enable_leave_page_alert=(value)
|
58
|
+
@enable_leave_page_alert = value
|
59
|
+
end
|
60
|
+
|
61
|
+
# Authorization protocols
|
62
|
+
def self.authorize_with_hmac
|
63
|
+
if @authorize_with_hmac.nil?
|
64
|
+
true
|
65
|
+
else
|
66
|
+
@authorize_with_hmac
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
70
|
+
def self.authorize_with_hmac=(value)
|
71
|
+
@authorize_with_hmac = value
|
72
|
+
end
|
73
|
+
|
74
|
+
def self.authorize_with_id_from_session
|
75
|
+
if @authorize_with_id_from_session.nil?
|
76
|
+
true
|
77
|
+
else
|
78
|
+
@authorize_with_id_from_session
|
79
|
+
end
|
80
|
+
end
|
81
|
+
|
82
|
+
def self.authorize_with_id_from_session=(value)
|
83
|
+
@authorize_with_id_from_session = value
|
84
|
+
end
|
85
|
+
end
|
86
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Quby
|
4
|
+
module TextTransformation
|
5
|
+
# Modal pop up window link: ~~url~~link_body~~
|
6
|
+
LINK_URL_REGEX = /\~\~(?<url>.+?)\~\~(?<link_content>.+?)\~\~/
|
7
|
+
|
8
|
+
# Textvars: Replace {{var_name}} with <span class='textvar' textvar='var_name'></span>
|
9
|
+
TEXT_VAR_REGEX = /\{\{(?<text_var>.+?)\}\}/
|
10
|
+
|
11
|
+
# to eventually replace maruku_extensions.rb
|
12
|
+
# this helper transforms ~~ links and {{text vars}} into html
|
13
|
+
def transform_special_text(text)
|
14
|
+
text.gsub(LINK_URL_REGEX) { link_html($~[:url], $~[:link_content]) }
|
15
|
+
.gsub(TEXT_VAR_REGEX) { textvar_html($~[:text_var]) }
|
16
|
+
end
|
17
|
+
|
18
|
+
def link_html(url, link_content)
|
19
|
+
"<a href='#' onclick='modalFrame(\"#{url}\");'>#{link_content}</a>"
|
20
|
+
end
|
21
|
+
|
22
|
+
def textvar_html(var_name)
|
23
|
+
"<span class='textvar' textvar='#{var_name}'>{{#{var_name}}}</span>"
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'active_model'
|
2
|
+
|
3
|
+
# validates :key, 'quby/type': {is_a: Symbol}
|
4
|
+
module Quby
|
5
|
+
class TypeValidator < ActiveModel::EachValidator
|
6
|
+
def validate_each(record, attribute, value)
|
7
|
+
return if value.is_a? options[:is_a]
|
8
|
+
|
9
|
+
record.errors.add(attribute, "Is not of type #{options[:is_a]}")
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
require_relative 'lib/quby/compiler/version'
|
2
|
+
|
3
|
+
Gem::Specification.new do |spec|
|
4
|
+
spec.name = "quby-compiler"
|
5
|
+
spec.version = Quby::Compiler::VERSION
|
6
|
+
spec.authors = ["Marten Veldthuis"]
|
7
|
+
spec.email = ["marten@veldthuis.com"]
|
8
|
+
|
9
|
+
spec.summary = %q{Quby::Compiler compiles a DSL for questionnaires to JSON}
|
10
|
+
#spec.description = %q{TODO: Write a longer description or delete this line.}
|
11
|
+
spec.homepage = "https://gitlab.roqua.nl/roqua/quby-compiler"
|
12
|
+
spec.license = "MIT"
|
13
|
+
spec.required_ruby_version = Gem::Requirement.new(">= 2.3.0")
|
14
|
+
|
15
|
+
#spec.metadata["allowed_push_host"] = "TODO: Set to 'http://mygemserver.com'"
|
16
|
+
|
17
|
+
spec.metadata["homepage_uri"] = spec.homepage
|
18
|
+
#spec.metadata["source_code_uri"] = "TODO: Put your gem's public repo URL here."
|
19
|
+
#spec.metadata["changelog_uri"] = "TODO: Put your gem's CHANGELOG.md URL here."
|
20
|
+
|
21
|
+
# Specify which files should be added to the gem when it is released.
|
22
|
+
# The `git ls-files -z` loads the files in the RubyGem that have been added into git.
|
23
|
+
spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
|
24
|
+
`git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
25
|
+
end
|
26
|
+
spec.bindir = "exe"
|
27
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
28
|
+
spec.require_paths = ["lib"]
|
29
|
+
|
30
|
+
spec.add_dependency "activemodel", ">= 5.0"
|
31
|
+
spec.add_dependency "actionview", ">= 5.0"
|
32
|
+
spec.add_dependency "activesupport", ">= 5.0"
|
33
|
+
spec.add_dependency 'dry-struct', '>= 1.3.0'
|
34
|
+
spec.add_dependency 'nokogiri', '>= 1.8'
|
35
|
+
spec.add_dependency 'nokogumbo'
|
36
|
+
spec.add_dependency "redcarpet", '~> 3.5'
|
37
|
+
spec.add_dependency "method_source"
|
38
|
+
spec.add_dependency "roqua-support"
|
39
|
+
end
|
metadata
ADDED
@@ -0,0 +1,277 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: quby-compiler
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.2.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Marten Veldthuis
|
8
|
+
autorequire:
|
9
|
+
bindir: exe
|
10
|
+
cert_chain: []
|
11
|
+
date: 2021-01-22 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: activemodel
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '5.0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '5.0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: actionview
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ">="
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '5.0'
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ">="
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '5.0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: activesupport
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '5.0'
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '5.0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: dry-struct
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 1.3.0
|
62
|
+
type: :runtime
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: 1.3.0
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: nokogiri
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '1.8'
|
76
|
+
type: :runtime
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '1.8'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: nokogumbo
|
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: redcarpet
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '3.5'
|
104
|
+
type: :runtime
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '3.5'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: method_source
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - ">="
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
type: :runtime
|
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: roqua-support
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - ">="
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '0'
|
132
|
+
type: :runtime
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - ">="
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: '0'
|
139
|
+
description:
|
140
|
+
email:
|
141
|
+
- marten@veldthuis.com
|
142
|
+
executables:
|
143
|
+
- quby-compile
|
144
|
+
extensions: []
|
145
|
+
extra_rdoc_files: []
|
146
|
+
files:
|
147
|
+
- ".gitignore"
|
148
|
+
- ".gitlab-ci.yml"
|
149
|
+
- ".rspec"
|
150
|
+
- ".ruby-version"
|
151
|
+
- CODE_OF_CONDUCT.md
|
152
|
+
- Dockerfile
|
153
|
+
- Gemfile
|
154
|
+
- Gemfile.lock
|
155
|
+
- LICENSE.txt
|
156
|
+
- README.md
|
157
|
+
- Rakefile
|
158
|
+
- bin/console
|
159
|
+
- bin/rspec
|
160
|
+
- bin/setup
|
161
|
+
- config/locales/de.yml
|
162
|
+
- config/locales/en.yml
|
163
|
+
- config/locales/nl.yml
|
164
|
+
- config/locales/rails-i18n/README.md
|
165
|
+
- config/locales/rails-i18n/de.yml
|
166
|
+
- config/locales/rails-i18n/en.yml
|
167
|
+
- config/locales/rails-i18n/nl.yml
|
168
|
+
- exe/quby-compile
|
169
|
+
- lib/quby/.DS_Store
|
170
|
+
- lib/quby/array_attribute_valid_validator.rb
|
171
|
+
- lib/quby/attribute_valid_validator.rb
|
172
|
+
- lib/quby/compiler.rb
|
173
|
+
- lib/quby/compiler/dsl.rb
|
174
|
+
- lib/quby/compiler/dsl/base.rb
|
175
|
+
- lib/quby/compiler/dsl/calls_custom_methods.rb
|
176
|
+
- lib/quby/compiler/dsl/charting/bar_chart_builder.rb
|
177
|
+
- lib/quby/compiler/dsl/charting/chart_builder.rb
|
178
|
+
- lib/quby/compiler/dsl/charting/line_chart_builder.rb
|
179
|
+
- lib/quby/compiler/dsl/charting/overview_chart_builder.rb
|
180
|
+
- lib/quby/compiler/dsl/charting/radar_chart_builder.rb
|
181
|
+
- lib/quby/compiler/dsl/helpers.rb
|
182
|
+
- lib/quby/compiler/dsl/panel_builder.rb
|
183
|
+
- lib/quby/compiler/dsl/question_builder.rb
|
184
|
+
- lib/quby/compiler/dsl/questionnaire_builder.rb
|
185
|
+
- lib/quby/compiler/dsl/questions/base.rb
|
186
|
+
- lib/quby/compiler/dsl/questions/checkbox_question_builder.rb
|
187
|
+
- lib/quby/compiler/dsl/questions/date_question_builder.rb
|
188
|
+
- lib/quby/compiler/dsl/questions/deprecated_question_builder.rb
|
189
|
+
- lib/quby/compiler/dsl/questions/float_question_builder.rb
|
190
|
+
- lib/quby/compiler/dsl/questions/integer_question_builder.rb
|
191
|
+
- lib/quby/compiler/dsl/questions/radio_question_builder.rb
|
192
|
+
- lib/quby/compiler/dsl/questions/select_question_builder.rb
|
193
|
+
- lib/quby/compiler/dsl/questions/string_question_builder.rb
|
194
|
+
- lib/quby/compiler/dsl/questions/text_question_builder.rb
|
195
|
+
- lib/quby/compiler/dsl/score_builder.rb
|
196
|
+
- lib/quby/compiler/dsl/score_schema_builder.rb
|
197
|
+
- lib/quby/compiler/dsl/standardized_panel_generators.rb
|
198
|
+
- lib/quby/compiler/dsl/table_builder.rb
|
199
|
+
- lib/quby/compiler/entities.rb
|
200
|
+
- lib/quby/compiler/entities/charting/bar_chart.rb
|
201
|
+
- lib/quby/compiler/entities/charting/chart.rb
|
202
|
+
- lib/quby/compiler/entities/charting/charts.rb
|
203
|
+
- lib/quby/compiler/entities/charting/line_chart.rb
|
204
|
+
- lib/quby/compiler/entities/charting/overview_chart.rb
|
205
|
+
- lib/quby/compiler/entities/charting/plottable.rb
|
206
|
+
- lib/quby/compiler/entities/charting/radar_chart.rb
|
207
|
+
- lib/quby/compiler/entities/definition.rb
|
208
|
+
- lib/quby/compiler/entities/fields.rb
|
209
|
+
- lib/quby/compiler/entities/flag.rb
|
210
|
+
- lib/quby/compiler/entities/item.rb
|
211
|
+
- lib/quby/compiler/entities/lookup_tables.rb
|
212
|
+
- lib/quby/compiler/entities/outcome_table.rb
|
213
|
+
- lib/quby/compiler/entities/panel.rb
|
214
|
+
- lib/quby/compiler/entities/question.rb
|
215
|
+
- lib/quby/compiler/entities/question_option.rb
|
216
|
+
- lib/quby/compiler/entities/questionnaire.rb
|
217
|
+
- lib/quby/compiler/entities/questions/checkbox_question.rb
|
218
|
+
- lib/quby/compiler/entities/questions/date_question.rb
|
219
|
+
- lib/quby/compiler/entities/questions/deprecated_question.rb
|
220
|
+
- lib/quby/compiler/entities/questions/float_question.rb
|
221
|
+
- lib/quby/compiler/entities/questions/integer_question.rb
|
222
|
+
- lib/quby/compiler/entities/questions/radio_question.rb
|
223
|
+
- lib/quby/compiler/entities/questions/select_question.rb
|
224
|
+
- lib/quby/compiler/entities/questions/string_question.rb
|
225
|
+
- lib/quby/compiler/entities/questions/text_question.rb
|
226
|
+
- lib/quby/compiler/entities/score_calculation.rb
|
227
|
+
- lib/quby/compiler/entities/score_schema.rb
|
228
|
+
- lib/quby/compiler/entities/subscore_schema.rb
|
229
|
+
- lib/quby/compiler/entities/table.rb
|
230
|
+
- lib/quby/compiler/entities/text.rb
|
231
|
+
- lib/quby/compiler/entities/textvar.rb
|
232
|
+
- lib/quby/compiler/entities/validation.rb
|
233
|
+
- lib/quby/compiler/entities/version.rb
|
234
|
+
- lib/quby/compiler/entities/visibility_rule.rb
|
235
|
+
- lib/quby/compiler/instance.rb
|
236
|
+
- lib/quby/compiler/output.rb
|
237
|
+
- lib/quby/compiler/outputs.rb
|
238
|
+
- lib/quby/compiler/outputs/quby_frontend_v1_serializer.rb
|
239
|
+
- lib/quby/compiler/outputs/quby_frontend_v2_serializer.rb
|
240
|
+
- lib/quby/compiler/outputs/roqua_serializer.rb
|
241
|
+
- lib/quby/compiler/outputs/seed_serializer.rb
|
242
|
+
- lib/quby/compiler/services/definition_validator.rb
|
243
|
+
- lib/quby/compiler/services/quby_proxy.rb
|
244
|
+
- lib/quby/compiler/services/seed_diff.rb
|
245
|
+
- lib/quby/compiler/services/text_transformation.rb
|
246
|
+
- lib/quby/compiler/version.rb
|
247
|
+
- lib/quby/markdown_parser.rb
|
248
|
+
- lib/quby/range_categories.rb
|
249
|
+
- lib/quby/settings.rb
|
250
|
+
- lib/quby/text_transformation.rb
|
251
|
+
- lib/quby/type_validator.rb
|
252
|
+
- quby-compiler.gemspec
|
253
|
+
homepage: https://gitlab.roqua.nl/roqua/quby-compiler
|
254
|
+
licenses:
|
255
|
+
- MIT
|
256
|
+
metadata:
|
257
|
+
homepage_uri: https://gitlab.roqua.nl/roqua/quby-compiler
|
258
|
+
post_install_message:
|
259
|
+
rdoc_options: []
|
260
|
+
require_paths:
|
261
|
+
- lib
|
262
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
263
|
+
requirements:
|
264
|
+
- - ">="
|
265
|
+
- !ruby/object:Gem::Version
|
266
|
+
version: 2.3.0
|
267
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
268
|
+
requirements:
|
269
|
+
- - ">="
|
270
|
+
- !ruby/object:Gem::Version
|
271
|
+
version: '0'
|
272
|
+
requirements: []
|
273
|
+
rubygems_version: 3.1.2
|
274
|
+
signing_key:
|
275
|
+
specification_version: 4
|
276
|
+
summary: Quby::Compiler compiles a DSL for questionnaires to JSON
|
277
|
+
test_files: []
|