omml 0.1.0 → 0.2.1
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/.github/workflows/rake.yml +22 -0
- data/.github/workflows/release.yml +23 -0
- data/.gitignore +2 -0
- data/.rubocop.yml +25 -0
- data/.rubocop_todo.yml +19 -0
- data/CLAUDE.md +64 -0
- data/Gemfile +11 -7
- data/README.adoc +222 -4
- data/Rakefile +3 -3
- data/bin/console +3 -3
- data/lib/omml/configuration/adapter.rb +21 -0
- data/lib/omml/configuration/context_registry.rb +131 -0
- data/lib/omml/configuration/model_registry.rb +60 -0
- data/lib/omml/configuration/type_resolver.rb +47 -0
- data/lib/omml/configuration.rb +25 -0
- data/lib/omml/errors/base_error.rb +8 -0
- data/lib/omml/errors/invalid_xml_error.rb +8 -0
- data/lib/omml/errors/missing_context_error.rb +23 -0
- data/lib/omml/errors/root_element_not_found_error.rb +11 -0
- data/lib/omml/errors/unsupported_root_element_error.rb +11 -0
- data/lib/omml/errors/xml_adapter_not_configured_error.rb +11 -0
- data/lib/omml/errors.rb +15 -0
- data/lib/omml/models/ct_acc.rb +23 -0
- data/lib/omml/models/ct_acc_pr.rb +23 -0
- data/lib/omml/models/ct_anchor.rb +60 -0
- data/lib/omml/models/ct_attr.rb +23 -0
- data/lib/omml/models/ct_bar.rb +23 -0
- data/lib/omml/models/ct_bar_pr.rb +23 -0
- data/lib/omml/models/ct_bookmark.rb +19 -0
- data/lib/omml/models/ct_bookmark_range.rb +21 -0
- data/lib/omml/models/ct_border.rb +35 -0
- data/lib/omml/models/ct_border_box.rb +24 -0
- data/lib/omml/models/ct_border_box_pr.rb +37 -0
- data/lib/omml/models/ct_box.rb +23 -0
- data/lib/omml/models/ct_box_pr.rb +31 -0
- data/lib/omml/models/ct_br.rb +21 -0
- data/lib/omml/models/ct_break_bin.rb +19 -0
- data/lib/omml/models/ct_break_bin_sub.rb +19 -0
- data/lib/omml/models/ct_calendar_type.rb +19 -0
- data/lib/omml/models/ct_char.rb +19 -0
- data/lib/omml/models/ct_color.rb +25 -0
- data/lib/omml/models/ct_control.rb +23 -0
- data/lib/omml/models/ct_ctrl_pr.rb +21 -0
- data/lib/omml/models/ct_custom_xml_pr.rb +23 -0
- data/lib/omml/models/ct_custom_xml_run.rb +27 -0
- data/lib/omml/models/ct_d.rb +23 -0
- data/lib/omml/models/ct_d_pr.rb +34 -0
- data/lib/omml/models/ct_data_binding.rb +23 -0
- data/lib/omml/models/ct_decimal_number.rb +19 -0
- data/lib/omml/models/ct_drawing.rb +23 -0
- data/lib/omml/models/ct_east_asian_layout.rb +27 -0
- data/lib/omml/models/ct_effect_extent.rb +25 -0
- data/lib/omml/models/ct_em.rb +19 -0
- data/lib/omml/models/ct_empty.rb +15 -0
- data/lib/omml/models/ct_eq_arr.rb +23 -0
- data/lib/omml/models/ct_eq_arr_pr.rb +31 -0
- data/lib/omml/models/ct_f.rb +25 -0
- data/lib/omml/models/ct_f_pr.rb +23 -0
- data/lib/omml/models/ct_f_type.rb +19 -0
- data/lib/omml/models/ct_ff_check_box.rb +29 -0
- data/lib/omml/models/ct_ff_data.rb +41 -0
- data/lib/omml/models/ct_ff_help_text.rb +21 -0
- data/lib/omml/models/ct_ff_name.rb +19 -0
- data/lib/omml/models/ct_ff_status_text.rb +21 -0
- data/lib/omml/models/ct_ff_text_input.rb +27 -0
- data/lib/omml/models/ct_ff_text_type.rb +19 -0
- data/lib/omml/models/ct_ffdd_list.rb +25 -0
- data/lib/omml/models/ct_fit_text.rb +21 -0
- data/lib/omml/models/ct_fld_char.rb +32 -0
- data/lib/omml/models/ct_fonts.rb +35 -0
- data/lib/omml/models/ct_ftn_edn_ref.rb +21 -0
- data/lib/omml/models/ct_func.rb +26 -0
- data/lib/omml/models/ct_func_pr.rb +21 -0
- data/lib/omml/models/ct_graphical_object.rb +21 -0
- data/lib/omml/models/ct_graphical_object_data.rb +19 -0
- data/lib/omml/models/ct_graphical_object_frame_locking.rb +33 -0
- data/lib/omml/models/ct_group_chr.rb +23 -0
- data/lib/omml/models/ct_group_chr_pr.rb +27 -0
- data/lib/omml/models/ct_highlight.rb +19 -0
- data/lib/omml/models/ct_hps_measure.rb +19 -0
- data/lib/omml/models/ct_hyperlink.rb +31 -0
- data/lib/omml/models/ct_inline.rb +38 -0
- data/lib/omml/models/ct_integer2.rb +19 -0
- data/lib/omml/models/ct_integer255.rb +19 -0
- data/lib/omml/models/ct_lang.rb +19 -0
- data/lib/omml/models/ct_language.rb +23 -0
- data/lib/omml/models/ct_lim_loc.rb +19 -0
- data/lib/omml/models/ct_lim_low.rb +26 -0
- data/lib/omml/models/ct_lim_low_pr.rb +21 -0
- data/lib/omml/models/ct_lim_upp.rb +25 -0
- data/lib/omml/models/ct_lim_upp_pr.rb +21 -0
- data/lib/omml/models/ct_lock.rb +19 -0
- data/lib/omml/models/ct_m.rb +23 -0
- data/lib/omml/models/ct_m_pr.rb +37 -0
- data/lib/omml/models/ct_macro_name.rb +19 -0
- data/lib/omml/models/ct_manual_break.rb +19 -0
- data/lib/omml/models/ct_markup.rb +19 -0
- data/lib/omml/models/ct_markup_range.rb +19 -0
- data/lib/omml/models/ct_math_pr.rb +53 -0
- data/lib/omml/models/ct_mc.rb +21 -0
- data/lib/omml/models/ct_mc_pr.rb +23 -0
- data/lib/omml/models/ct_mcs.rb +21 -0
- data/lib/omml/models/ct_move_bookmark.rb +21 -0
- data/lib/omml/models/ct_mr.rb +21 -0
- data/lib/omml/models/ct_nary.rb +27 -0
- data/lib/omml/models/ct_nary_pr.rb +31 -0
- data/lib/omml/models/ct_non_visual_drawing_props.rb +33 -0
- data/lib/omml/models/ct_non_visual_graphic_frame_properties.rb +24 -0
- data/lib/omml/models/ct_o_math.rb +22 -0
- data/lib/omml/models/ct_o_math_arg.rb +28 -0
- data/lib/omml/models/ct_o_math_arg_pr.rb +21 -0
- data/lib/omml/models/ct_o_math_jc.rb +19 -0
- data/lib/omml/models/ct_o_math_para.rb +26 -0
- data/lib/omml/models/ct_o_math_para_pr.rb +21 -0
- data/lib/omml/models/ct_object.rb +25 -0
- data/lib/omml/models/ct_office_art_extension.rb +19 -0
- data/lib/omml/models/ct_office_art_extension_list.rb +21 -0
- data/lib/omml/models/ct_on_off.rb +19 -0
- data/lib/omml/models/ct_p_tab.rb +23 -0
- data/lib/omml/models/ct_perm.rb +21 -0
- data/lib/omml/models/ct_perm_start.rb +25 -0
- data/lib/omml/models/ct_phant.rb +23 -0
- data/lib/omml/models/ct_phant_pr.rb +31 -0
- data/lib/omml/models/ct_picture.rb +23 -0
- data/lib/omml/models/ct_picture_base.rb +15 -0
- data/lib/omml/models/ct_placeholder.rb +21 -0
- data/lib/omml/models/ct_point2_d.rb +21 -0
- data/lib/omml/models/ct_pos_h.rb +27 -0
- data/lib/omml/models/ct_pos_v.rb +27 -0
- data/lib/omml/models/ct_positive_size2_d.rb +21 -0
- data/lib/omml/models/ct_proof_err.rb +19 -0
- data/lib/omml/models/ct_r.rb +27 -0
- data/lib/omml/models/ct_r_pr.rb +21 -0
- data/lib/omml/models/ct_r_pr_change.rb +21 -0
- data/lib/omml/models/ct_r_pr_original.rb +21 -0
- data/lib/omml/models/ct_rad.rb +25 -0
- data/lib/omml/models/ct_rad_pr.rb +23 -0
- data/lib/omml/models/ct_rel.rb +19 -0
- data/lib/omml/models/ct_rpr.rb +33 -0
- data/lib/omml/models/ct_ruby.rb +25 -0
- data/lib/omml/models/ct_ruby_align.rb +19 -0
- data/lib/omml/models/ct_ruby_content.rb +19 -0
- data/lib/omml/models/ct_ruby_pr.rb +31 -0
- data/lib/omml/models/ct_run_track_change.rb +23 -0
- data/lib/omml/models/ct_s_pre.rb +28 -0
- data/lib/omml/models/ct_s_pre_pr.rb +21 -0
- data/lib/omml/models/ct_s_sub.rb +25 -0
- data/lib/omml/models/ct_s_sub_pr.rb +21 -0
- data/lib/omml/models/ct_s_sub_sup.rb +28 -0
- data/lib/omml/models/ct_s_sub_sup_pr.rb +23 -0
- data/lib/omml/models/ct_s_sup.rb +25 -0
- data/lib/omml/models/ct_s_sup_pr.rb +21 -0
- data/lib/omml/models/ct_script.rb +19 -0
- data/lib/omml/models/ct_sdt_combo_box.rb +23 -0
- data/lib/omml/models/ct_sdt_content_run.rb +19 -0
- data/lib/omml/models/ct_sdt_date.rb +30 -0
- data/lib/omml/models/ct_sdt_date_mapping_type.rb +19 -0
- data/lib/omml/models/ct_sdt_doc_part.rb +25 -0
- data/lib/omml/models/ct_sdt_drop_down_list.rb +23 -0
- data/lib/omml/models/ct_sdt_end_pr.rb +21 -0
- data/lib/omml/models/ct_sdt_list_item.rb +21 -0
- data/lib/omml/models/ct_sdt_pr.rb +63 -0
- data/lib/omml/models/ct_sdt_run.rb +25 -0
- data/lib/omml/models/ct_sdt_text.rb +19 -0
- data/lib/omml/models/ct_shd.rb +35 -0
- data/lib/omml/models/ct_shp.rb +19 -0
- data/lib/omml/models/ct_signed_hps_measure.rb +19 -0
- data/lib/omml/models/ct_signed_twips_measure.rb +19 -0
- data/lib/omml/models/ct_simple_field.rb +29 -0
- data/lib/omml/models/ct_smart_tag_pr.rb +21 -0
- data/lib/omml/models/ct_smart_tag_run.rb +27 -0
- data/lib/omml/models/ct_spacing_rule.rb +19 -0
- data/lib/omml/models/ct_string.rb +19 -0
- data/lib/omml/models/ct_style.rb +19 -0
- data/lib/omml/models/ct_sym.rb +21 -0
- data/lib/omml/models/ct_text.rb +19 -0
- data/lib/omml/models/ct_text_effect.rb +19 -0
- data/lib/omml/models/ct_text_scale.rb +19 -0
- data/lib/omml/models/ct_top_bot.rb +19 -0
- data/lib/omml/models/ct_track_change.rb +21 -0
- data/lib/omml/models/ct_track_change_numbering.rb +19 -0
- data/lib/omml/models/ct_twips_measure.rb +19 -0
- data/lib/omml/models/ct_un_signed_integer.rb +19 -0
- data/lib/omml/models/ct_underline.rb +27 -0
- data/lib/omml/models/ct_vertical_align_run.rb +19 -0
- data/lib/omml/models/ct_wordprocessing_on_off.rb +19 -0
- data/lib/omml/models/ct_wrap_none.rb +15 -0
- data/lib/omml/models/ct_wrap_path.rb +25 -0
- data/lib/omml/models/ct_wrap_square.rb +31 -0
- data/lib/omml/models/ct_wrap_through.rb +27 -0
- data/lib/omml/models/ct_wrap_tight.rb +27 -0
- data/lib/omml/models/ct_wrap_top_bottom.rb +25 -0
- data/lib/omml/models/ct_x_align.rb +19 -0
- data/lib/omml/models/ct_y_align.rb +19 -0
- data/lib/omml/models/groups/eg_content_run_content.rb +26 -0
- data/lib/omml/models/groups/eg_math_content.rb +20 -0
- data/lib/omml/models/groups/eg_o_math_elements.rb +20 -0
- data/lib/omml/models/groups/eg_o_math_math_elements.rb +56 -0
- data/lib/omml/models/groups/eg_office_art_extension_list.rb +16 -0
- data/lib/omml/models/groups/eg_p_content.rb +24 -0
- data/lib/omml/models/groups/eg_r_pr.rb +17 -0
- data/lib/omml/models/groups/eg_r_pr_base.rb +93 -0
- data/lib/omml/models/groups/eg_r_pr_content.rb +19 -0
- data/lib/omml/models/groups/eg_r_pr_math.rb +23 -0
- data/lib/omml/models/groups/eg_range_markup_elements.rb +60 -0
- data/lib/omml/models/groups/eg_ruby_content.rb +20 -0
- data/lib/omml/models/groups/eg_run_inner_content.rb +83 -0
- data/lib/omml/models/groups/eg_run_level_elts.rb +34 -0
- data/lib/omml/models/groups/eg_script_style.rb +18 -0
- data/lib/omml/models/groups/eg_word_r_pr.rb +17 -0
- data/lib/omml/models/groups/eg_wrap_type.rb +27 -0
- data/lib/omml/models/groups.rb +19 -0
- data/lib/omml/models/o_math.rb +21 -0
- data/lib/omml/models/o_math_para.rb +25 -0
- data/lib/omml/models/simple_types/enum_string.rb +42 -0
- data/lib/omml/models/simple_types/hex_binary.rb +15 -0
- data/lib/omml/models/simple_types/st_adj_coordinate.rb +24 -0
- data/lib/omml/models/simple_types/st_align_h.rb +17 -0
- data/lib/omml/models/simple_types/st_align_v.rb +17 -0
- data/lib/omml/models/simple_types/st_border.rb +203 -0
- data/lib/omml/models/simple_types/st_br_clear.rb +16 -0
- data/lib/omml/models/simple_types/st_br_type.rb +15 -0
- data/lib/omml/models/simple_types/st_break_bin.rb +15 -0
- data/lib/omml/models/simple_types/st_break_bin_sub.rb +15 -0
- data/lib/omml/models/simple_types/st_calendar_type.rb +22 -0
- data/lib/omml/models/simple_types/st_combine_brackets.rb +17 -0
- data/lib/omml/models/simple_types/st_coordinate.rb +16 -0
- data/lib/omml/models/simple_types/st_displaced_by_custom_xml.rb +14 -0
- data/lib/omml/models/simple_types/st_ed_grp.rb +19 -0
- data/lib/omml/models/simple_types/st_em.rb +17 -0
- data/lib/omml/models/simple_types/st_f_type.rb +16 -0
- data/lib/omml/models/simple_types/st_ff_text_type.rb +18 -0
- data/lib/omml/models/simple_types/st_fld_char_type.rb +15 -0
- data/lib/omml/models/simple_types/st_geom_guide_name.rb +10 -0
- data/lib/omml/models/simple_types/st_hex_color.rb +24 -0
- data/lib/omml/models/simple_types/st_highlight_color.rb +29 -0
- data/lib/omml/models/simple_types/st_hint.rb +15 -0
- data/lib/omml/models/simple_types/st_info_text_type.rb +14 -0
- data/lib/omml/models/simple_types/st_integer2.rb +15 -0
- data/lib/omml/models/simple_types/st_integer255.rb +15 -0
- data/lib/omml/models/simple_types/st_jc.rb +16 -0
- data/lib/omml/models/simple_types/st_lang.rb +24 -0
- data/lib/omml/models/simple_types/st_lim_loc.rb +14 -0
- data/lib/omml/models/simple_types/st_lock.rb +16 -0
- data/lib/omml/models/simple_types/st_on_off.rb +18 -0
- data/lib/omml/models/simple_types/st_p_tab_alignment.rb +15 -0
- data/lib/omml/models/simple_types/st_p_tab_leader.rb +17 -0
- data/lib/omml/models/simple_types/st_p_tab_relative_to.rb +14 -0
- data/lib/omml/models/simple_types/st_positive_coordinate.rb +15 -0
- data/lib/omml/models/simple_types/st_proof_err.rb +16 -0
- data/lib/omml/models/simple_types/st_rel_from_h.rb +20 -0
- data/lib/omml/models/simple_types/st_rel_from_v.rb +20 -0
- data/lib/omml/models/simple_types/st_ruby_align.rb +18 -0
- data/lib/omml/models/simple_types/st_script.rb +18 -0
- data/lib/omml/models/simple_types/st_sdt_date_mapping_type.rb +15 -0
- data/lib/omml/models/simple_types/st_shd.rb +50 -0
- data/lib/omml/models/simple_types/st_shp.rb +14 -0
- data/lib/omml/models/simple_types/st_spacing_rule.rb +15 -0
- data/lib/omml/models/simple_types/st_style.rb +16 -0
- data/lib/omml/models/simple_types/st_text_effect.rb +19 -0
- data/lib/omml/models/simple_types/st_text_scale.rb +15 -0
- data/lib/omml/models/simple_types/st_theme.rb +20 -0
- data/lib/omml/models/simple_types/st_theme_color.rb +29 -0
- data/lib/omml/models/simple_types/st_top_bot.rb +14 -0
- data/lib/omml/models/simple_types/st_underline.rb +30 -0
- data/lib/omml/models/simple_types/st_vertical_align_run.rb +15 -0
- data/lib/omml/models/simple_types/st_wrap_text.rb +16 -0
- data/lib/omml/models/simple_types/st_x_align.rb +15 -0
- data/lib/omml/models/simple_types/st_y_align.rb +15 -0
- data/lib/omml/models/simple_types/token.rb +35 -0
- data/lib/omml/models/simple_types/unsigned_int.rb +15 -0
- data/lib/omml/models/simple_types/unsigned_long.rb +15 -0
- data/lib/omml/models/simple_types.rb +60 -0
- data/lib/omml/models.rb +183 -0
- data/lib/omml/namespace.rb +9 -0
- data/lib/omml/parser.rb +39 -0
- data/lib/omml/type_substitutions.rb +89 -0
- data/lib/omml/version.rb +2 -2
- data/lib/omml/wordprocessing_namespace.rb +9 -0
- data/lib/omml.rb +31 -3
- data/omml.gemspec +18 -14
- data/sig/omml.rbs +1 -1
- metadata +335 -6
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Omml
|
|
4
|
+
module Models
|
|
5
|
+
class STPositiveCoordinate < Lutaml::Model::Type::Decimal
|
|
6
|
+
def self.cast(value, options = {})
|
|
7
|
+
return if value.nil?
|
|
8
|
+
|
|
9
|
+
super(value, options.merge(max: 27_273_042_316_900, min: 0))
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
Omml::Configuration.register_model(STPositiveCoordinate)
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Omml
|
|
4
|
+
module Models
|
|
5
|
+
class STRelFromH < Token
|
|
6
|
+
VALUES = %w[
|
|
7
|
+
margin
|
|
8
|
+
page
|
|
9
|
+
column
|
|
10
|
+
character
|
|
11
|
+
leftMargin
|
|
12
|
+
rightMargin
|
|
13
|
+
insideMargin
|
|
14
|
+
outsideMargin
|
|
15
|
+
].freeze
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
Omml::Configuration.register_model(STRelFromH)
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Omml
|
|
4
|
+
module Models
|
|
5
|
+
class STRelFromV < Token
|
|
6
|
+
VALUES = %w[
|
|
7
|
+
margin
|
|
8
|
+
page
|
|
9
|
+
paragraph
|
|
10
|
+
line
|
|
11
|
+
topMargin
|
|
12
|
+
bottomMargin
|
|
13
|
+
insideMargin
|
|
14
|
+
outsideMargin
|
|
15
|
+
].freeze
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
Omml::Configuration.register_model(STRelFromV)
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Omml
|
|
4
|
+
module Models
|
|
5
|
+
class STRubyAlign < EnumString
|
|
6
|
+
VALUES = %w[
|
|
7
|
+
center
|
|
8
|
+
distributeLetter
|
|
9
|
+
distributeSpace
|
|
10
|
+
left
|
|
11
|
+
right
|
|
12
|
+
rightVertical
|
|
13
|
+
].freeze
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
Omml::Configuration.register_model(STRubyAlign)
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Omml
|
|
4
|
+
module Models
|
|
5
|
+
class STScript < EnumString
|
|
6
|
+
VALUES = %w[
|
|
7
|
+
roman
|
|
8
|
+
script
|
|
9
|
+
fraktur
|
|
10
|
+
double-struck
|
|
11
|
+
sans-serif
|
|
12
|
+
monospace
|
|
13
|
+
].freeze
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
Omml::Configuration.register_model(STScript)
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Omml
|
|
4
|
+
module Models
|
|
5
|
+
class STShd < EnumString
|
|
6
|
+
VALUES = %w[
|
|
7
|
+
nil
|
|
8
|
+
clear
|
|
9
|
+
solid
|
|
10
|
+
horzStripe
|
|
11
|
+
vertStripe
|
|
12
|
+
reverseDiagStripe
|
|
13
|
+
diagStripe
|
|
14
|
+
horzCross
|
|
15
|
+
diagCross
|
|
16
|
+
thinHorzStripe
|
|
17
|
+
thinVertStripe
|
|
18
|
+
thinReverseDiagStripe
|
|
19
|
+
thinDiagStripe
|
|
20
|
+
thinHorzCross
|
|
21
|
+
thinDiagCross
|
|
22
|
+
pct5
|
|
23
|
+
pct10
|
|
24
|
+
pct12
|
|
25
|
+
pct15
|
|
26
|
+
pct20
|
|
27
|
+
pct25
|
|
28
|
+
pct30
|
|
29
|
+
pct35
|
|
30
|
+
pct37
|
|
31
|
+
pct40
|
|
32
|
+
pct45
|
|
33
|
+
pct50
|
|
34
|
+
pct55
|
|
35
|
+
pct60
|
|
36
|
+
pct62
|
|
37
|
+
pct65
|
|
38
|
+
pct70
|
|
39
|
+
pct75
|
|
40
|
+
pct80
|
|
41
|
+
pct85
|
|
42
|
+
pct87
|
|
43
|
+
pct90
|
|
44
|
+
pct95
|
|
45
|
+
].freeze
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
Omml::Configuration.register_model(STShd)
|
|
49
|
+
end
|
|
50
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Omml
|
|
4
|
+
module Models
|
|
5
|
+
class STSpacingRule < Lutaml::Model::Type::Integer
|
|
6
|
+
def self.cast(value, options = {})
|
|
7
|
+
return if value.nil?
|
|
8
|
+
|
|
9
|
+
super(value, options.merge(max: 4, min: 0))
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
Omml::Configuration.register_model(STSpacingRule)
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Omml
|
|
4
|
+
module Models
|
|
5
|
+
class STTextEffect < EnumString
|
|
6
|
+
VALUES = %w[
|
|
7
|
+
blinkBackground
|
|
8
|
+
lights
|
|
9
|
+
antsBlack
|
|
10
|
+
antsRed
|
|
11
|
+
shimmer
|
|
12
|
+
sparkle
|
|
13
|
+
none
|
|
14
|
+
].freeze
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
Omml::Configuration.register_model(STTextEffect)
|
|
18
|
+
end
|
|
19
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Omml
|
|
4
|
+
module Models
|
|
5
|
+
class STTextScale < Lutaml::Model::Type::Integer
|
|
6
|
+
def self.cast(value, options = {})
|
|
7
|
+
return if value.nil?
|
|
8
|
+
|
|
9
|
+
super(value, options.merge(max: 600, min: 0))
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
Omml::Configuration.register_model(STTextScale)
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Omml
|
|
4
|
+
module Models
|
|
5
|
+
class STTheme < EnumString
|
|
6
|
+
VALUES = %w[
|
|
7
|
+
majorEastAsia
|
|
8
|
+
majorBidi
|
|
9
|
+
majorAscii
|
|
10
|
+
majorHAnsi
|
|
11
|
+
minorEastAsia
|
|
12
|
+
minorBidi
|
|
13
|
+
minorAscii
|
|
14
|
+
minorHAnsi
|
|
15
|
+
].freeze
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
Omml::Configuration.register_model(STTheme)
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Omml
|
|
4
|
+
module Models
|
|
5
|
+
class STThemeColor < EnumString
|
|
6
|
+
VALUES = %w[
|
|
7
|
+
dark1
|
|
8
|
+
light1
|
|
9
|
+
dark2
|
|
10
|
+
light2
|
|
11
|
+
accent1
|
|
12
|
+
accent2
|
|
13
|
+
accent3
|
|
14
|
+
accent4
|
|
15
|
+
accent5
|
|
16
|
+
accent6
|
|
17
|
+
hyperlink
|
|
18
|
+
followedHyperlink
|
|
19
|
+
none
|
|
20
|
+
background1
|
|
21
|
+
text1
|
|
22
|
+
background2
|
|
23
|
+
text2
|
|
24
|
+
].freeze
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
Omml::Configuration.register_model(STThemeColor)
|
|
28
|
+
end
|
|
29
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Omml
|
|
4
|
+
module Models
|
|
5
|
+
class STUnderline < EnumString
|
|
6
|
+
VALUES = %w[
|
|
7
|
+
single
|
|
8
|
+
words
|
|
9
|
+
double
|
|
10
|
+
thick
|
|
11
|
+
dotted
|
|
12
|
+
dottedHeavy
|
|
13
|
+
dash
|
|
14
|
+
dashedHeavy
|
|
15
|
+
dashLong
|
|
16
|
+
dashLongHeavy
|
|
17
|
+
dotDash
|
|
18
|
+
dashDotHeavy
|
|
19
|
+
dotDotDash
|
|
20
|
+
dashDotDotHeavy
|
|
21
|
+
wave
|
|
22
|
+
wavyHeavy
|
|
23
|
+
wavyDouble
|
|
24
|
+
none
|
|
25
|
+
].freeze
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
Omml::Configuration.register_model(STUnderline)
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Omml
|
|
4
|
+
module Models
|
|
5
|
+
class Token < Lutaml::Model::Type::String
|
|
6
|
+
TOKEN_PATTERN = /(?-mix:\A[^\t\n\f\r ]+(?: [^\t\n\f\r ]+)*\z)/
|
|
7
|
+
|
|
8
|
+
def self.cast(value, options = {})
|
|
9
|
+
return if value.nil?
|
|
10
|
+
|
|
11
|
+
cast_options = options.merge(pattern: TOKEN_PATTERN)
|
|
12
|
+
values = defined_values
|
|
13
|
+
if values
|
|
14
|
+
cast_options[:values] ||= memoized_values do
|
|
15
|
+
values.map { |entry| super(entry, pattern: TOKEN_PATTERN) }
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
super(value, cast_options)
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
def self.defined_values
|
|
23
|
+
const_get(:VALUES, false) if const_defined?(:VALUES, false)
|
|
24
|
+
end
|
|
25
|
+
private_class_method :defined_values
|
|
26
|
+
|
|
27
|
+
def self.memoized_values
|
|
28
|
+
@memoized_values ||= yield
|
|
29
|
+
end
|
|
30
|
+
private_class_method :memoized_values
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
Omml::Configuration.register_model(Token)
|
|
34
|
+
end
|
|
35
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Omml
|
|
4
|
+
module Models
|
|
5
|
+
class UnsignedInt < Lutaml::Model::Type::Integer
|
|
6
|
+
def self.cast(value, options = {})
|
|
7
|
+
return if value.nil?
|
|
8
|
+
|
|
9
|
+
super(value, options.merge(max: 4_294_967_295, min: 0))
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
Omml::Configuration.register_model(UnsignedInt)
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module Omml
|
|
4
|
+
module Models
|
|
5
|
+
class UnsignedLong < Lutaml::Model::Type::Integer
|
|
6
|
+
def self.cast(value, options = {})
|
|
7
|
+
return if value.nil?
|
|
8
|
+
|
|
9
|
+
super(value, options.merge(max: 18_446_744_073_709_551_615, min: 0))
|
|
10
|
+
end
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
Omml::Configuration.register_model(UnsignedLong)
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative "simple_types/hex_binary"
|
|
4
|
+
require_relative "simple_types/enum_string"
|
|
5
|
+
require_relative "simple_types/token"
|
|
6
|
+
require_relative "simple_types/st_align_h"
|
|
7
|
+
require_relative "simple_types/st_align_v"
|
|
8
|
+
require_relative "simple_types/st_border"
|
|
9
|
+
require_relative "simple_types/st_br_clear"
|
|
10
|
+
require_relative "simple_types/st_br_type"
|
|
11
|
+
require_relative "simple_types/st_break_bin"
|
|
12
|
+
require_relative "simple_types/st_break_bin_sub"
|
|
13
|
+
require_relative "simple_types/st_calendar_type"
|
|
14
|
+
require_relative "simple_types/st_combine_brackets"
|
|
15
|
+
require_relative "simple_types/st_coordinate"
|
|
16
|
+
require_relative "simple_types/st_geom_guide_name"
|
|
17
|
+
require_relative "simple_types/st_adj_coordinate"
|
|
18
|
+
require_relative "simple_types/st_displaced_by_custom_xml"
|
|
19
|
+
require_relative "simple_types/unsigned_int"
|
|
20
|
+
require_relative "simple_types/st_ed_grp"
|
|
21
|
+
require_relative "simple_types/unsigned_long"
|
|
22
|
+
require_relative "simple_types/st_em"
|
|
23
|
+
require_relative "simple_types/st_f_type"
|
|
24
|
+
require_relative "simple_types/st_ff_text_type"
|
|
25
|
+
require_relative "simple_types/st_fld_char_type"
|
|
26
|
+
require_relative "simple_types/st_hex_color"
|
|
27
|
+
require_relative "simple_types/st_highlight_color"
|
|
28
|
+
require_relative "simple_types/st_hint"
|
|
29
|
+
require_relative "simple_types/st_info_text_type"
|
|
30
|
+
require_relative "simple_types/st_integer2"
|
|
31
|
+
require_relative "simple_types/st_integer255"
|
|
32
|
+
require_relative "simple_types/st_jc"
|
|
33
|
+
require_relative "simple_types/st_lang"
|
|
34
|
+
require_relative "simple_types/st_lim_loc"
|
|
35
|
+
require_relative "simple_types/st_lock"
|
|
36
|
+
require_relative "simple_types/st_on_off"
|
|
37
|
+
require_relative "simple_types/st_p_tab_alignment"
|
|
38
|
+
require_relative "simple_types/st_p_tab_leader"
|
|
39
|
+
require_relative "simple_types/st_p_tab_relative_to"
|
|
40
|
+
require_relative "simple_types/st_positive_coordinate"
|
|
41
|
+
require_relative "simple_types/st_proof_err"
|
|
42
|
+
require_relative "simple_types/st_rel_from_h"
|
|
43
|
+
require_relative "simple_types/st_rel_from_v"
|
|
44
|
+
require_relative "simple_types/st_ruby_align"
|
|
45
|
+
require_relative "simple_types/st_script"
|
|
46
|
+
require_relative "simple_types/st_sdt_date_mapping_type"
|
|
47
|
+
require_relative "simple_types/st_shd"
|
|
48
|
+
require_relative "simple_types/st_shp"
|
|
49
|
+
require_relative "simple_types/st_spacing_rule"
|
|
50
|
+
require_relative "simple_types/st_style"
|
|
51
|
+
require_relative "simple_types/st_text_effect"
|
|
52
|
+
require_relative "simple_types/st_text_scale"
|
|
53
|
+
require_relative "simple_types/st_theme"
|
|
54
|
+
require_relative "simple_types/st_theme_color"
|
|
55
|
+
require_relative "simple_types/st_top_bot"
|
|
56
|
+
require_relative "simple_types/st_underline"
|
|
57
|
+
require_relative "simple_types/st_vertical_align_run"
|
|
58
|
+
require_relative "simple_types/st_wrap_text"
|
|
59
|
+
require_relative "simple_types/st_x_align"
|
|
60
|
+
require_relative "simple_types/st_y_align"
|