ruby_ufebs 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/.gitignore +9 -0
- data/.travis.yml +5 -0
- data/Gemfile +2 -0
- data/Guardfile +5 -0
- data/README.md +103 -0
- data/Rakefile +10 -0
- data/XMLSchemas/cbr_dsig_env_v1.1.0.xsd +50 -0
- data/XMLSchemas/cbr_dsig_v1.1.0.xsd +48 -0
- data/XMLSchemas/cbr_ed_kbr_cos_v2017.4.2.xsd +25 -0
- data/XMLSchemas/cbr_ed_kbr_kcoi_v2017.4.2.xsd +71 -0
- data/XMLSchemas/cbr_ed_kbr_rtgs_v2017.4.2.xsd +51 -0
- data/XMLSchemas/cbr_ed_kbr_sed_v2017.4.2.xsd +23 -0
- data/XMLSchemas/cbr_ed_kbr_v2017.4.2.xsd +89 -0
- data/XMLSchemas/cbr_ed_nspc_v2017.4.2.xsd +14 -0
- data/XMLSchemas/cbr_msg_props_v2017.2.0.xsd +371 -0
- data/XMLSchemas/ed/cbr_ed101_v2017.4.2.xsd +112 -0
- data/XMLSchemas/ed/cbr_ed103_v2017.4.2.xsd +148 -0
- data/XMLSchemas/ed/cbr_ed104_v2017.4.2.xsd +130 -0
- data/XMLSchemas/ed/cbr_ed105_v2017.4.2.xsd +141 -0
- data/XMLSchemas/ed/cbr_ed107_v2017.4.2.xsd +192 -0
- data/XMLSchemas/ed/cbr_ed108_v2017.4.2.xsd +223 -0
- data/XMLSchemas/ed/cbr_ed109_v2017.4.2.xsd +245 -0
- data/XMLSchemas/ed/cbr_ed110_v2017.4.2.xsd +87 -0
- data/XMLSchemas/ed/cbr_ed111_v2017.4.2.xsd +72 -0
- data/XMLSchemas/ed/cbr_ed113_v2017.4.2.xsd +124 -0
- data/XMLSchemas/ed/cbr_ed114_v2017.4.2.xsd +101 -0
- data/XMLSchemas/ed/cbr_ed201_v2017.4.2.xsd +65 -0
- data/XMLSchemas/ed/cbr_ed202_v2017.4.2.xsd +41 -0
- data/XMLSchemas/ed/cbr_ed203_v2017.4.2.xsd +78 -0
- data/XMLSchemas/ed/cbr_ed204_v2017.4.2.xsd +86 -0
- data/XMLSchemas/ed/cbr_ed205_v2017.4.2.xsd +169 -0
- data/XMLSchemas/ed/cbr_ed206_v2017.4.2.xsd +153 -0
- data/XMLSchemas/ed/cbr_ed207_v2017.4.2.xsd +82 -0
- data/XMLSchemas/ed/cbr_ed208_v2017.4.2.xsd +53 -0
- data/XMLSchemas/ed/cbr_ed209_v2017.4.2.xsd +72 -0
- data/XMLSchemas/ed/cbr_ed210_v2017.4.2.xsd +74 -0
- data/XMLSchemas/ed/cbr_ed211_v2017.4.2.xsd +183 -0
- data/XMLSchemas/ed/cbr_ed213_v2017.4.2.xsd +33 -0
- data/XMLSchemas/ed/cbr_ed214_v2017.4.2.xsd +59 -0
- data/XMLSchemas/ed/cbr_ed215_v2017.4.2.xsd +131 -0
- data/XMLSchemas/ed/cbr_ed217_v2017.4.2.xsd +122 -0
- data/XMLSchemas/ed/cbr_ed218_v2017.4.2.xsd +40 -0
- data/XMLSchemas/ed/cbr_ed219_v2017.4.2.xsd +42 -0
- data/XMLSchemas/ed/cbr_ed220_v2017.4.2.xsd +35 -0
- data/XMLSchemas/ed/cbr_ed221_v2017.4.2.xsd +198 -0
- data/XMLSchemas/ed/cbr_ed222_v2017.4.2.xsd +77 -0
- data/XMLSchemas/ed/cbr_ed230_v2017.4.2.xsd +98 -0
- data/XMLSchemas/ed/cbr_ed231_v2017.4.2.xsd +132 -0
- data/XMLSchemas/ed/cbr_ed234_v2017.4.2.xsd +146 -0
- data/XMLSchemas/ed/cbr_ed238_v2017.4.2.xsd +210 -0
- data/XMLSchemas/ed/cbr_ed240_v2017.4.2.xsd +83 -0
- data/XMLSchemas/ed/cbr_ed241_v2017.4.2.xsd +80 -0
- data/XMLSchemas/ed/cbr_ed242_v2017.4.2.xsd +56 -0
- data/XMLSchemas/ed/cbr_ed243_v2017.4.2.xsd +119 -0
- data/XMLSchemas/ed/cbr_ed244_v2017.4.2.xsd +173 -0
- data/XMLSchemas/ed/cbr_ed245_v2017.4.2.xsd +101 -0
- data/XMLSchemas/ed/cbr_ed273_v2017.4.2.xsd +40 -0
- data/XMLSchemas/ed/cbr_ed274_v2017.4.2.xsd +71 -0
- data/XMLSchemas/ed/cbr_ed275_v2017.4.2.xsd +83 -0
- data/XMLSchemas/ed/cbr_ed276_v2017.4.2.xsd +47 -0
- data/XMLSchemas/ed/cbr_ed280_v2017.4.2.xsd +54 -0
- data/XMLSchemas/ed/cbr_ed283_v2017.4.2.xsd +114 -0
- data/XMLSchemas/ed/cbr_ed284_v2017.4.2.xsd +69 -0
- data/XMLSchemas/ed/cbr_ed285_v2017.4.2.xsd +74 -0
- data/XMLSchemas/ed/cbr_ed301_v2017.4.2.xsd +47 -0
- data/XMLSchemas/ed/cbr_ed306_v2017.4.2.xsd +47 -0
- data/XMLSchemas/ed/cbr_ed318_v2017.4.2.xsd +42 -0
- data/XMLSchemas/ed/cbr_ed319_v2017.4.2.xsd +52 -0
- data/XMLSchemas/ed/cbr_ed330_v2017.4.2.xsd +47 -0
- data/XMLSchemas/ed/cbr_ed331_v2017.4.2.xsd +42 -0
- data/XMLSchemas/ed/cbr_ed332_v2017.4.2.xsd +215 -0
- data/XMLSchemas/ed/cbr_ed333_v2017.4.2.xsd +42 -0
- data/XMLSchemas/ed/cbr_ed373_v2017.4.2.xsd +60 -0
- data/XMLSchemas/ed/cbr_ed374_v2017.4.2.xsd +109 -0
- data/XMLSchemas/ed/cbr_ed375_v2017.4.2.xsd +63 -0
- data/XMLSchemas/ed/cbr_ed378_v2017.4.2.xsd +47 -0
- data/XMLSchemas/ed/cbr_ed379_v2017.4.2.xsd +42 -0
- data/XMLSchemas/ed/cbr_ed380_v2017.4.2.xsd +40 -0
- data/XMLSchemas/ed/cbr_ed381_v2017.4.2.xsd +70 -0
- data/XMLSchemas/ed/cbr_ed382_v2017.4.2.xsd +37 -0
- data/XMLSchemas/ed/cbr_ed383_v2017.4.2.xsd +32 -0
- data/XMLSchemas/ed/cbr_ed385_v2017.4.2.xsd +42 -0
- data/XMLSchemas/ed/cbr_ed393_v2017.4.2.xsd +53 -0
- data/XMLSchemas/ed/cbr_ed408_v2017.4.2.xsd +84 -0
- data/XMLSchemas/ed/cbr_ed421_v2017.4.2.xsd +195 -0
- data/XMLSchemas/ed/cbr_ed422_v2017.4.2.xsd +108 -0
- data/XMLSchemas/ed/cbr_ed425_v2017.4.2.xsd +126 -0
- data/XMLSchemas/ed/cbr_ed428_v2017.4.2.xsd +98 -0
- data/XMLSchemas/ed/cbr_ed429_v2017.4.2.xsd +308 -0
- data/XMLSchemas/ed/cbr_ed431_v2017.4.2.xsd +116 -0
- data/XMLSchemas/ed/cbr_ed432_v2017.4.2.xsd +107 -0
- data/XMLSchemas/ed/cbr_ed433_v2017.4.2.xsd +51 -0
- data/XMLSchemas/ed/cbr_ed434_v2017.4.2.xsd +61 -0
- data/XMLSchemas/ed/cbr_ed435_v2017.4.2.xsd +128 -0
- data/XMLSchemas/ed/cbr_ed462_v2017.4.2.xsd +213 -0
- data/XMLSchemas/ed/cbr_ed463_v2017.4.2.xsd +73 -0
- data/XMLSchemas/ed/cbr_ed464_v2017.4.2.xsd +41 -0
- data/XMLSchemas/ed/cbr_ed465_v2017.4.2.xsd +77 -0
- data/XMLSchemas/ed/cbr_ed499_v2017.4.2.xsd +25 -0
- data/XMLSchemas/ed/cbr_ed501_v2017.4.2.xsd +46 -0
- data/XMLSchemas/ed/cbr_ed503_v2017.4.2.xsd +84 -0
- data/XMLSchemas/ed/cbr_ed508_v2017.4.2.xsd +91 -0
- data/XMLSchemas/ed/cbr_ed510_v2017.4.2.xsd +44 -0
- data/XMLSchemas/ed/cbr_ed511_v2017.4.2.xsd +82 -0
- data/XMLSchemas/ed/cbr_ed512_v2017.4.2.xsd +108 -0
- data/XMLSchemas/ed/cbr_ed530_v2017.4.2.xsd +34 -0
- data/XMLSchemas/ed/cbr_ed540_v2017.4.2.xsd +44 -0
- data/XMLSchemas/ed/cbr_ed541_v2017.4.2.xsd +71 -0
- data/XMLSchemas/ed/cbr_ed542_v2017.4.2.xsd +46 -0
- data/XMLSchemas/ed/cbr_ed573_v2017.4.2.xsd +32 -0
- data/XMLSchemas/ed/cbr_ed574_v2017.4.2.xsd +158 -0
- data/XMLSchemas/ed/cbr_ed599_v2017.4.2.xsd +24 -0
- data/XMLSchemas/ed/cbr_ed801_v2017.4.2.xsd +51 -0
- data/XMLSchemas/ed/cbr_ed802_v2017.4.2.xsd +380 -0
- data/XMLSchemas/ed/cbr_ed804_v2017.4.2.xsd +57 -0
- data/XMLSchemas/ed/cbr_ed805_v2017.4.2.xsd +128 -0
- data/XMLSchemas/ed/cbr_ed806_v2017.4.2.xsd +65 -0
- data/XMLSchemas/ed/cbr_ed807_v2017.4.2.xsd +53 -0
- data/XMLSchemas/ed/cbr_ed808_v2017.4.2.xsd +88 -0
- data/XMLSchemas/ed/cbr_ed809_v2017.4.2.xsd +64 -0
- data/XMLSchemas/ed/cbr_ed810_v2017.4.2.xsd +110 -0
- data/XMLSchemas/ed/cbr_ed811_v2017.4.2.xsd +116 -0
- data/XMLSchemas/ed/cbr_ed813_v2017.4.2.xsd +47 -0
- data/XMLSchemas/ed/cbr_ed814_v2017.4.2.xsd +47 -0
- data/XMLSchemas/ed/cbr_ed816_v2017.4.2.xsd +47 -0
- data/XMLSchemas/ed/cbr_ed818_v2017.4.2.xsd +53 -0
- data/XMLSchemas/ed/cbr_ed819_v2017.4.2.xsd +35 -0
- data/XMLSchemas/ed/cbr_ed820_v2017.4.2.xsd +53 -0
- data/XMLSchemas/ed/cbr_ed821_v2017.4.2.xsd +53 -0
- data/XMLSchemas/ed/cbr_ed823_v2017.4.2.xsd +48 -0
- data/XMLSchemas/ed/cbr_ed999_v2017.4.2.xsd +29 -0
- data/XMLSchemas/ed/cbr_ed_basetypes_v2016.4.1.xsd +192 -0
- data/XMLSchemas/ed/cbr_ed_leaftypes_v2017.4.2.xsd +1806 -0
- data/XMLSchemas/ed/cbr_ed_objects_v2017.4.2.xsd +3129 -0
- data/XMLSchemas/ed/cbr_packetcash_v2017.4.2.xsd +89 -0
- data/XMLSchemas/ed/cbr_packetctrl_v2017.4.2.xsd +82 -0
- data/XMLSchemas/ed/cbr_packeteid_v2017.4.2.xsd +130 -0
- data/XMLSchemas/ed/cbr_packetepd_v2017.4.2.xsd +121 -0
- data/XMLSchemas/ed/cbr_packetesid_v2017.4.2.xsd +311 -0
- data/XMLSchemas/soap-envelope.xsd +128 -0
- data/XMLSchemas/xml.xsd +81 -0
- data/XMLSchemas_2018/cbr_dsig_env_v1.1.0.xsd +50 -0
- data/XMLSchemas_2018/cbr_dsig_v1.1.0.xsd +48 -0
- data/XMLSchemas_2018/cbr_ed_kbr_cos_v2018.1.1.xsd +25 -0
- data/XMLSchemas_2018/cbr_ed_kbr_kcoi_v2018.1.1.xsd +71 -0
- data/XMLSchemas_2018/cbr_ed_kbr_rtgs_v2018.1.1.xsd +51 -0
- data/XMLSchemas_2018/cbr_ed_kbr_sed_v2018.1.1.xsd +23 -0
- data/XMLSchemas_2018/cbr_ed_kbr_v2018.1.1.xsd +89 -0
- data/XMLSchemas_2018/cbr_ed_nspc_v2018.1.1.xsd +14 -0
- data/XMLSchemas_2018/cbr_msg_props_v2017.2.0.xsd +371 -0
- data/XMLSchemas_2018/ed/cbr_ed101_v2018.1.1.xsd +112 -0
- data/XMLSchemas_2018/ed/cbr_ed103_v2018.1.1.xsd +148 -0
- data/XMLSchemas_2018/ed/cbr_ed104_v2018.1.1.xsd +130 -0
- data/XMLSchemas_2018/ed/cbr_ed105_v2018.1.1.xsd +141 -0
- data/XMLSchemas_2018/ed/cbr_ed107_v2018.1.1.xsd +192 -0
- data/XMLSchemas_2018/ed/cbr_ed108_v2018.1.1.xsd +223 -0
- data/XMLSchemas_2018/ed/cbr_ed109_v2018.1.1.xsd +245 -0
- data/XMLSchemas_2018/ed/cbr_ed110_v2018.1.1.xsd +87 -0
- data/XMLSchemas_2018/ed/cbr_ed111_v2018.1.1.xsd +72 -0
- data/XMLSchemas_2018/ed/cbr_ed113_v2018.1.1.xsd +124 -0
- data/XMLSchemas_2018/ed/cbr_ed114_v2018.1.1.xsd +101 -0
- data/XMLSchemas_2018/ed/cbr_ed201_v2018.1.1.xsd +65 -0
- data/XMLSchemas_2018/ed/cbr_ed202_v2018.1.1.xsd +41 -0
- data/XMLSchemas_2018/ed/cbr_ed203_v2018.1.1.xsd +78 -0
- data/XMLSchemas_2018/ed/cbr_ed204_v2018.1.1.xsd +86 -0
- data/XMLSchemas_2018/ed/cbr_ed205_v2018.1.1.xsd +169 -0
- data/XMLSchemas_2018/ed/cbr_ed206_v2018.1.1.xsd +153 -0
- data/XMLSchemas_2018/ed/cbr_ed207_v2018.1.1.xsd +82 -0
- data/XMLSchemas_2018/ed/cbr_ed208_v2018.1.1.xsd +53 -0
- data/XMLSchemas_2018/ed/cbr_ed209_v2018.1.1.xsd +72 -0
- data/XMLSchemas_2018/ed/cbr_ed210_v2018.1.1.xsd +74 -0
- data/XMLSchemas_2018/ed/cbr_ed211_v2018.1.1.xsd +183 -0
- data/XMLSchemas_2018/ed/cbr_ed213_v2018.1.1.xsd +33 -0
- data/XMLSchemas_2018/ed/cbr_ed214_v2018.1.1.xsd +59 -0
- data/XMLSchemas_2018/ed/cbr_ed215_v2018.1.1.xsd +131 -0
- data/XMLSchemas_2018/ed/cbr_ed217_v2018.1.1.xsd +122 -0
- data/XMLSchemas_2018/ed/cbr_ed218_v2018.1.1.xsd +40 -0
- data/XMLSchemas_2018/ed/cbr_ed219_v2018.1.1.xsd +42 -0
- data/XMLSchemas_2018/ed/cbr_ed220_v2018.1.1.xsd +35 -0
- data/XMLSchemas_2018/ed/cbr_ed221_v2018.1.1.xsd +198 -0
- data/XMLSchemas_2018/ed/cbr_ed222_v2018.1.1.xsd +77 -0
- data/XMLSchemas_2018/ed/cbr_ed230_v2018.1.1.xsd +98 -0
- data/XMLSchemas_2018/ed/cbr_ed231_v2018.1.1.xsd +132 -0
- data/XMLSchemas_2018/ed/cbr_ed234_v2018.1.1.xsd +146 -0
- data/XMLSchemas_2018/ed/cbr_ed238_v2018.1.1.xsd +210 -0
- data/XMLSchemas_2018/ed/cbr_ed240_v2018.1.1.xsd +83 -0
- data/XMLSchemas_2018/ed/cbr_ed241_v2018.1.1.xsd +80 -0
- data/XMLSchemas_2018/ed/cbr_ed242_v2018.1.1.xsd +56 -0
- data/XMLSchemas_2018/ed/cbr_ed243_v2018.1.1.xsd +119 -0
- data/XMLSchemas_2018/ed/cbr_ed244_v2018.1.1.xsd +173 -0
- data/XMLSchemas_2018/ed/cbr_ed245_v2018.1.1.xsd +96 -0
- data/XMLSchemas_2018/ed/cbr_ed274_v2018.1.1.xsd +71 -0
- data/XMLSchemas_2018/ed/cbr_ed275_v2018.1.1.xsd +83 -0
- data/XMLSchemas_2018/ed/cbr_ed276_v2018.1.1.xsd +47 -0
- data/XMLSchemas_2018/ed/cbr_ed277_v2018.1.1.xsd +125 -0
- data/XMLSchemas_2018/ed/cbr_ed280_v2018.1.1.xsd +54 -0
- data/XMLSchemas_2018/ed/cbr_ed283_v2018.1.1.xsd +114 -0
- data/XMLSchemas_2018/ed/cbr_ed284_v2018.1.1.xsd +69 -0
- data/XMLSchemas_2018/ed/cbr_ed285_v2018.1.1.xsd +74 -0
- data/XMLSchemas_2018/ed/cbr_ed301_v2018.1.1.xsd +47 -0
- data/XMLSchemas_2018/ed/cbr_ed306_v2018.1.1.xsd +47 -0
- data/XMLSchemas_2018/ed/cbr_ed318_v2018.1.1.xsd +42 -0
- data/XMLSchemas_2018/ed/cbr_ed319_v2018.1.1.xsd +52 -0
- data/XMLSchemas_2018/ed/cbr_ed330_v2018.1.1.xsd +47 -0
- data/XMLSchemas_2018/ed/cbr_ed331_v2018.1.1.xsd +42 -0
- data/XMLSchemas_2018/ed/cbr_ed332_v2018.1.1.xsd +215 -0
- data/XMLSchemas_2018/ed/cbr_ed333_v2018.1.1.xsd +42 -0
- data/XMLSchemas_2018/ed/cbr_ed373_v2018.1.1.xsd +60 -0
- data/XMLSchemas_2018/ed/cbr_ed374_v2018.1.1.xsd +109 -0
- data/XMLSchemas_2018/ed/cbr_ed375_v2018.1.1.xsd +63 -0
- data/XMLSchemas_2018/ed/cbr_ed378_v2018.1.1.xsd +47 -0
- data/XMLSchemas_2018/ed/cbr_ed379_v2018.1.1.xsd +42 -0
- data/XMLSchemas_2018/ed/cbr_ed380_v2018.1.1.xsd +40 -0
- data/XMLSchemas_2018/ed/cbr_ed381_v2018.1.1.xsd +70 -0
- data/XMLSchemas_2018/ed/cbr_ed382_v2018.1.1.xsd +37 -0
- data/XMLSchemas_2018/ed/cbr_ed383_v2018.1.1.xsd +32 -0
- data/XMLSchemas_2018/ed/cbr_ed385_v2018.1.1.xsd +42 -0
- data/XMLSchemas_2018/ed/cbr_ed393_v2018.1.1.xsd +53 -0
- data/XMLSchemas_2018/ed/cbr_ed408_v2018.1.1.xsd +84 -0
- data/XMLSchemas_2018/ed/cbr_ed421_v2018.1.1.xsd +195 -0
- data/XMLSchemas_2018/ed/cbr_ed422_v2018.1.1.xsd +108 -0
- data/XMLSchemas_2018/ed/cbr_ed425_v2018.1.1.xsd +126 -0
- data/XMLSchemas_2018/ed/cbr_ed428_v2018.1.1.xsd +98 -0
- data/XMLSchemas_2018/ed/cbr_ed429_v2018.1.1.xsd +308 -0
- data/XMLSchemas_2018/ed/cbr_ed431_v2018.1.1.xsd +116 -0
- data/XMLSchemas_2018/ed/cbr_ed432_v2018.1.1.xsd +107 -0
- data/XMLSchemas_2018/ed/cbr_ed433_v2018.1.1.xsd +51 -0
- data/XMLSchemas_2018/ed/cbr_ed434_v2018.1.1.xsd +61 -0
- data/XMLSchemas_2018/ed/cbr_ed435_v2018.1.1.xsd +118 -0
- data/XMLSchemas_2018/ed/cbr_ed462_v2018.1.1.xsd +213 -0
- data/XMLSchemas_2018/ed/cbr_ed463_v2018.1.1.xsd +73 -0
- data/XMLSchemas_2018/ed/cbr_ed464_v2018.1.1.xsd +41 -0
- data/XMLSchemas_2018/ed/cbr_ed465_v2018.1.1.xsd +77 -0
- data/XMLSchemas_2018/ed/cbr_ed499_v2018.1.1.xsd +25 -0
- data/XMLSchemas_2018/ed/cbr_ed501_v2018.1.1.xsd +46 -0
- data/XMLSchemas_2018/ed/cbr_ed503_v2018.1.1.xsd +84 -0
- data/XMLSchemas_2018/ed/cbr_ed508_v2018.1.1.xsd +91 -0
- data/XMLSchemas_2018/ed/cbr_ed510_v2018.1.1.xsd +44 -0
- data/XMLSchemas_2018/ed/cbr_ed511_v2018.1.1.xsd +82 -0
- data/XMLSchemas_2018/ed/cbr_ed512_v2018.1.1.xsd +108 -0
- data/XMLSchemas_2018/ed/cbr_ed530_v2018.1.1.xsd +34 -0
- data/XMLSchemas_2018/ed/cbr_ed540_v2018.1.1.xsd +44 -0
- data/XMLSchemas_2018/ed/cbr_ed541_v2018.1.1.xsd +71 -0
- data/XMLSchemas_2018/ed/cbr_ed542_v2018.1.1.xsd +46 -0
- data/XMLSchemas_2018/ed/cbr_ed573_v2018.1.1.xsd +32 -0
- data/XMLSchemas_2018/ed/cbr_ed574_v2018.1.1.xsd +158 -0
- data/XMLSchemas_2018/ed/cbr_ed599_v2018.1.1.xsd +24 -0
- data/XMLSchemas_2018/ed/cbr_ed801_v2018.1.1.xsd +51 -0
- data/XMLSchemas_2018/ed/cbr_ed802_v2018.1.1.xsd +380 -0
- data/XMLSchemas_2018/ed/cbr_ed804_v2018.1.1.xsd +57 -0
- data/XMLSchemas_2018/ed/cbr_ed805_v2018.1.1.xsd +128 -0
- data/XMLSchemas_2018/ed/cbr_ed806_v2018.1.1.xsd +65 -0
- data/XMLSchemas_2018/ed/cbr_ed807_v2018.1.1.xsd +53 -0
- data/XMLSchemas_2018/ed/cbr_ed808_v2018.1.1.xsd +88 -0
- data/XMLSchemas_2018/ed/cbr_ed809_v2018.1.1.xsd +64 -0
- data/XMLSchemas_2018/ed/cbr_ed810_v2018.1.1.xsd +110 -0
- data/XMLSchemas_2018/ed/cbr_ed811_v2018.1.1.xsd +116 -0
- data/XMLSchemas_2018/ed/cbr_ed813_v2018.1.1.xsd +47 -0
- data/XMLSchemas_2018/ed/cbr_ed814_v2018.1.1.xsd +47 -0
- data/XMLSchemas_2018/ed/cbr_ed816_v2018.1.1.xsd +47 -0
- data/XMLSchemas_2018/ed/cbr_ed818_v2018.1.1.xsd +53 -0
- data/XMLSchemas_2018/ed/cbr_ed819_v2018.1.1.xsd +35 -0
- data/XMLSchemas_2018/ed/cbr_ed820_v2018.1.1.xsd +53 -0
- data/XMLSchemas_2018/ed/cbr_ed821_v2018.1.1.xsd +53 -0
- data/XMLSchemas_2018/ed/cbr_ed823_v2018.1.1.xsd +48 -0
- data/XMLSchemas_2018/ed/cbr_ed999_v2018.1.1.xsd +29 -0
- data/XMLSchemas_2018/ed/cbr_ed_basetypes_v2016.4.1.xsd +192 -0
- data/XMLSchemas_2018/ed/cbr_ed_leaftypes_v2018.1.1.xsd +1840 -0
- data/XMLSchemas_2018/ed/cbr_ed_objects_v2018.1.1.xsd +3167 -0
- data/XMLSchemas_2018/ed/cbr_packetcash_v2018.1.1.xsd +89 -0
- data/XMLSchemas_2018/ed/cbr_packetctrl_v2018.1.1.xsd +82 -0
- data/XMLSchemas_2018/ed/cbr_packeteid_v2018.1.1.xsd +130 -0
- data/XMLSchemas_2018/ed/cbr_packetepd_v2018.1.1.xsd +121 -0
- data/XMLSchemas_2018/ed/cbr_packetesid_v2018.1.1.xsd +311 -0
- data/XMLSchemas_2018/soap-envelope.xsd +128 -0
- data/XMLSchemas_2018/xml.xsd +81 -0
- data/bin/console +6 -0
- data/bin/setup +8 -0
- data/lib/ufebs/configuration.rb +13 -0
- data/lib/ufebs/documents/package.rb +37 -0
- data/lib/ufebs/documents/payment_order.rb +75 -0
- data/lib/ufebs/entities/acc_doc.rb +13 -0
- data/lib/ufebs/entities/bank.rb +14 -0
- data/lib/ufebs/entities/departmental_info.rb +36 -0
- data/lib/ufebs/entities/participant.rb +19 -0
- data/lib/ufebs/fields/header.rb +12 -0
- data/lib/ufebs/requests/group_request.rb +27 -0
- data/lib/ufebs/requests/package_request.rb +40 -0
- data/lib/ufebs/requests/test_request.rb +20 -0
- data/lib/ufebs/version.rb +3 -0
- data/lib/ufebs.rb +111 -0
- data/ruby_ufebs.gemspec +31 -0
- metadata +461 -0
@@ -0,0 +1,75 @@
|
|
1
|
+
require_relative '../entities/bank'
|
2
|
+
require_relative '../entities/acc_doc'
|
3
|
+
require_relative '../entities/departmental_info'
|
4
|
+
require_relative '../entities/participant'
|
5
|
+
|
6
|
+
module Ufebs
|
7
|
+
module Documents
|
8
|
+
class PaymentOrder
|
9
|
+
include HappyMapper
|
10
|
+
InvalidPriority = Class.new(StandardError)
|
11
|
+
|
12
|
+
DOCUMENT_NUMBER_TYPE = '01'.freeze
|
13
|
+
XMLNS = "urn:cbr-ru:ed:v2.0".freeze
|
14
|
+
SYSTEM_CODE = '01'.freeze
|
15
|
+
ED_AUTHOR = '4525595000'.freeze
|
16
|
+
|
17
|
+
register_namespace 'ed', "urn:cbr-ru:ed:v2.0"
|
18
|
+
tag 'ED101'
|
19
|
+
namespace 'ed'
|
20
|
+
|
21
|
+
attribute :number, String, tag: 'EDNo'
|
22
|
+
attribute :ed_date, String, tag: 'EDDate'
|
23
|
+
attribute :ed_author, String, tag: 'EDAuthor'
|
24
|
+
attribute :sum, String, tag: 'Sum'
|
25
|
+
attribute :type_number, String, tag: 'TransKind'
|
26
|
+
attribute :uin, String, tag: 'PaymentID'
|
27
|
+
attribute :charge_off_date, String, tag: 'ChargeOffDate'
|
28
|
+
attribute :receipt_date, String, tag: 'ReceiptDate'
|
29
|
+
attribute :system_code, String, tag: 'SystemCode'
|
30
|
+
attribute :priority, String, tag: 'Priority'
|
31
|
+
has_one :acc_doc, ::Ufebs::Entities::AccDoc, tag: 'AccDoc'
|
32
|
+
has_one :payer, ::Ufebs::Entities::Participant, tag: 'Payer'
|
33
|
+
has_one :payee, ::Ufebs::Entities::Participant, tag: 'Payee'
|
34
|
+
element :purpose, String, tag: 'Purpose'
|
35
|
+
|
36
|
+
has_one :departmental_info, Ufebs::Entities::DepartmentalInfo, tag: 'DepartmentalInfo', state_when_nil: false
|
37
|
+
|
38
|
+
def initialize(
|
39
|
+
ed_date: Time.now,
|
40
|
+
number:,
|
41
|
+
sum:,
|
42
|
+
charge_off_date: Time.now,
|
43
|
+
priority: 0,
|
44
|
+
receipt_date: Time.now,
|
45
|
+
acc_doc: Ufebs::Entities::AccDoc.new,
|
46
|
+
payer: Ufebs::Entities::Participant.new,
|
47
|
+
payee: Ufebs::Entities::Participant.new,
|
48
|
+
purpose: '',
|
49
|
+
uin: nil,
|
50
|
+
departmental_info: DepartmentalInfo.new
|
51
|
+
)
|
52
|
+
raise InvalidPriority.new('priority Реквизит должен иметь значение в диапазоне 0-5.') unless (0..5).include?(priority.to_i)
|
53
|
+
|
54
|
+
@ed_date = Date.parse(ed_date.to_s).strftime('%Y-%m-%d')
|
55
|
+
@number = number
|
56
|
+
@sum = sum
|
57
|
+
@charge_off_date = Date.parse(charge_off_date.to_s).strftime('%Y-%m-%d')
|
58
|
+
@receipt_date = Date.parse(receipt_date.to_s).strftime('%Y-%m-%d')
|
59
|
+
@priority = priority
|
60
|
+
@acc_doc = acc_doc.is_a?(Hash) ? Ufebs::Entities::AccDoc.new(acc_doc) : acc_doc
|
61
|
+
@payer = payer.is_a?(Hash) ? Ufebs::Entities::Participant.new(payer) : payer
|
62
|
+
@payee = payer.is_a?(Hash) ? Ufebs::Entities::Participant.new(payee) : payee
|
63
|
+
@purpose = purpose
|
64
|
+
@departmental_info = departmental_info.is_a?(Hash) ? Ufebs::Entities::DepartmentalInfo.new(departmental_info) : departmental_info
|
65
|
+
@uin = uin
|
66
|
+
|
67
|
+
@ed_author = ED_AUTHOR
|
68
|
+
@type_number = DOCUMENT_NUMBER_TYPE
|
69
|
+
@system_code = SYSTEM_CODE
|
70
|
+
|
71
|
+
yield self if block_given?
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
module Ufebs
|
2
|
+
module Entities
|
3
|
+
class AccDoc
|
4
|
+
include HappyMapper
|
5
|
+
attribute :number, String, tag: 'AccDocNo'
|
6
|
+
attribute :date, String, tag: 'AccDocDate'
|
7
|
+
|
8
|
+
def initialize(number:'', date: Time.now)
|
9
|
+
@number, @date = number.to_s.rjust(3,'0'), Date.parse(date.to_s).strftime('%Y-%m-%d')
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
module Ufebs
|
2
|
+
module Entities
|
3
|
+
class Bank
|
4
|
+
include HappyMapper
|
5
|
+
|
6
|
+
attribute :bic, String, tag: 'BIC'
|
7
|
+
attribute :account, String, tag: 'CorrespAcc'
|
8
|
+
|
9
|
+
def initialize(bic: '', account: '')
|
10
|
+
@bic, @account = bic, account
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,36 @@
|
|
1
|
+
module Ufebs
|
2
|
+
module Entities
|
3
|
+
class DepartmentalInfo
|
4
|
+
include HappyMapper
|
5
|
+
attribute :kbk, String, tag: 'CBC'
|
6
|
+
attribute :okato, String, tag: 'OKATO'
|
7
|
+
attribute :tax_period, String, tag: 'TaxPeriod'
|
8
|
+
attribute :drawer_status, String, tag: 'DrawerStatus'
|
9
|
+
attribute :payt_reason, String, tag: 'PaytReason'
|
10
|
+
attribute :doc_no, String, tag: 'DocNo'
|
11
|
+
attribute :tax_payt_kind, String, tag: 'TaxPaytKind'
|
12
|
+
attribute :doc_date, String, tag: 'DocDate'
|
13
|
+
|
14
|
+
def initialize(
|
15
|
+
tax_payt_kind: 'HC',
|
16
|
+
doc_date: Time.now,
|
17
|
+
doc_no: '',
|
18
|
+
payt_reason: '',
|
19
|
+
drawer_status: '01',
|
20
|
+
tax_period: '',
|
21
|
+
okato: '',
|
22
|
+
kbk: ''
|
23
|
+
)
|
24
|
+
|
25
|
+
@tax_payt_kind = tax_payt_kind
|
26
|
+
@doc_date = doc_date == '0' ? '0' : Date.parse(doc_date.to_s).strftime('%Y-%m-%d')
|
27
|
+
@doc_no = doc_no
|
28
|
+
@payt_reason = payt_reason
|
29
|
+
@drawer_status = drawer_status
|
30
|
+
@tax_period = tax_period
|
31
|
+
@okato = okato
|
32
|
+
@kbk = kbk
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module Ufebs
|
2
|
+
module Entities
|
3
|
+
class Participant
|
4
|
+
include HappyMapper
|
5
|
+
|
6
|
+
attribute :inn, String, tag: 'INN'
|
7
|
+
attribute :account, String, tag: 'PersonalAcc'
|
8
|
+
attribute :kpp, String, tag: 'KPP'
|
9
|
+
|
10
|
+
element :name, String, tag: 'Name'
|
11
|
+
has_one :bank, Bank, tag: 'Bank'
|
12
|
+
|
13
|
+
def initialize(inn:'', account:'' ,name:'', bank_account:'', bank_bic:'', kpp: nil)
|
14
|
+
@inn, @kpp, @account, @name = inn, kpp, account, name.encode(xml: :text)
|
15
|
+
@bank = Bank.new(bic: bank_bic, account: bank_account)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
module Ufebs
|
2
|
+
module Fields
|
3
|
+
module Header
|
4
|
+
def self.included(content)
|
5
|
+
content.attribute :number, String, tag: 'EDNo'
|
6
|
+
content.attribute :ed_date, String, tag: 'EDDate'
|
7
|
+
content.attribute :ed_author, String, tag: 'EDAuthor'
|
8
|
+
content.attribute :ed_receiver, String, tag: 'EDReceiver'
|
9
|
+
end
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
module Ufebs
|
2
|
+
module Requests
|
3
|
+
class GroupRequest
|
4
|
+
include HappyMapper
|
5
|
+
include Fields::Header
|
6
|
+
|
7
|
+
tag 'ED203'
|
8
|
+
|
9
|
+
attribute :xmlns, String, tag: 'xmlns'
|
10
|
+
attribute :ed_receiver, String, tag: 'EDReceiver'
|
11
|
+
attribute :status_code, String, tag: 'StatusCode'
|
12
|
+
attribute :account, String, tag: 'Acc'
|
13
|
+
attribute :group_inquiry_code, String, tag: 'GroupInquiryCode'
|
14
|
+
|
15
|
+
def initialize(params = {})
|
16
|
+
|
17
|
+
params.each { |key, value| instance_variable_set("@#{key}".to_sym, value) }
|
18
|
+
@xmlns = "urn:cbr-ru:ed:v2.0".freeze
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
|
25
|
+
# <?xml version="1.0" encoding="WINDOWS-1251"?>
|
26
|
+
# <ED203 xmlns="urn:cbr-ru:ed:v2.0"
|
27
|
+
# EDNo="9" EDDate="2003-04-14" EDAuthor="4525545000" EDReceiver="4525000000" StatusCode="00" Acc="30101810300000000545" GroupInquiryCode="1"/>
|
@@ -0,0 +1,40 @@
|
|
1
|
+
module Ufebs
|
2
|
+
module Requests
|
3
|
+
class PackageRequest
|
4
|
+
class Ref
|
5
|
+
include HappyMapper
|
6
|
+
attribute :number, String, tag: 'EDNo'
|
7
|
+
attribute :date, String, tag: 'EDDate'
|
8
|
+
attribute :author, String, tag: 'EDAuthor'
|
9
|
+
|
10
|
+
def initialize(number: '7', date: '2003-04-14', author: '4525545000')
|
11
|
+
@number, @date, @author = number, date, author
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
include HappyMapper
|
16
|
+
include Fields::Header
|
17
|
+
|
18
|
+
tag 'ED202'
|
19
|
+
|
20
|
+
attribute :xmlns, String, tag: 'xmlns'
|
21
|
+
attribute :ed_receiver, String, tag: 'EDReceiver'
|
22
|
+
attribute :ed_inqiery_code, String, tag: 'EDInquiryCode'
|
23
|
+
has_one :ref, Ref, tag: 'EDRefID'
|
24
|
+
|
25
|
+
def initialize(params = {})
|
26
|
+
@ref = Ref.new(params[:ref])
|
27
|
+
params.delete(:ref)
|
28
|
+
|
29
|
+
params.each { |key, value| instance_variable_set("@#{key}".to_sym, value) }
|
30
|
+
|
31
|
+
@xmlns = "urn:cbr-ru:ed:v2.0".freeze
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
# <?xml version="1.0" encoding="WINDOWS-1251"?>
|
38
|
+
# <ED202 xmlns="urn:cbr-ru:ed:v2.0"
|
39
|
+
# EDNo="8" EDDate="2003-04-14" EDAuthor="4525545000" EDReceiver="4525000000" EDInquiryCode="1">
|
40
|
+
# <EDRefID EDNo="7" EDDate="2003-04-14" EDAuthor="4525545000" /> </ED202>
|
@@ -0,0 +1,20 @@
|
|
1
|
+
module Ufebs
|
2
|
+
module Requests
|
3
|
+
class TestRequest
|
4
|
+
include HappyMapper
|
5
|
+
|
6
|
+
register_namespace 'ed', "urn:cbr-ru:ed:v2.0"
|
7
|
+
|
8
|
+
tag 'ED999'
|
9
|
+
namespace 'ed'
|
10
|
+
|
11
|
+
attribute :number, String, tag: 'EDNo'
|
12
|
+
attribute :ed_date, String, tag: 'EDDate'
|
13
|
+
attribute :ed_author, String, tag: 'EDAuthor'
|
14
|
+
|
15
|
+
def initialize(params={})
|
16
|
+
@number, @ed_date, @ed_author = params[:number], params[:ed_date], params[:ed_author]
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
data/lib/ufebs.rb
ADDED
@@ -0,0 +1,111 @@
|
|
1
|
+
require 'happymapper'
|
2
|
+
require "ufebs/version"
|
3
|
+
require "ufebs/configuration"
|
4
|
+
Dir[File.dirname(__FILE__) + '/**/*.rb'].each { |ff| require ff }
|
5
|
+
|
6
|
+
module Ufebs
|
7
|
+
extend self
|
8
|
+
|
9
|
+
def namespace
|
10
|
+
"urn:cbr-ru:ed:v2.0".freeze
|
11
|
+
end
|
12
|
+
|
13
|
+
def configuration
|
14
|
+
@configuration ||= Configuration.new
|
15
|
+
end
|
16
|
+
|
17
|
+
def configure(&block)
|
18
|
+
block.call(configuration)
|
19
|
+
end
|
20
|
+
|
21
|
+
def validation_schema
|
22
|
+
@validation ||= begin
|
23
|
+
validation = Nokogiri::XML(File.read(configuration.schemas), configuration.schemas)
|
24
|
+
Nokogiri::XML::Schema.from_document(validation)
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
# XML запрос-зонд
|
29
|
+
# @param params [Hash]
|
30
|
+
# @option :number аттрибут EDNo
|
31
|
+
# @option :ed_date аттрибут EDDate
|
32
|
+
# @option :ed_author аттрибут EDAuthor
|
33
|
+
def ED999(params)
|
34
|
+
Ufebs::Requests::TestRequest.new(params)
|
35
|
+
end
|
36
|
+
|
37
|
+
# Создание XML по формату ED101(Платежное поручение)
|
38
|
+
# @param params [Hash] Hash значений документа
|
39
|
+
# @option params [Integer] :number номер документа аттрибут EDNo
|
40
|
+
# @option params [Integer] :sum Сумма документа аттрибут Sum
|
41
|
+
# @option params [DateTime] :receipt_date ReceiptDate дата обработки
|
42
|
+
# @option params [Hash] :acc_doc AccDoc информация о счете
|
43
|
+
# @option params [String] :purpose Purpose предназначение-описание платежа
|
44
|
+
# @option params [Hash] :payer Payer плательщик
|
45
|
+
# @option params [Hash] :payer Payee получатель
|
46
|
+
# @option params [Hash] :departmental_info ({}) DepartmentalInfo Ведомственная информация
|
47
|
+
# @return [Ufebs::Documents::PaymentOrder] Представление документа УФЕБС
|
48
|
+
# @example Пример документа
|
49
|
+
# ed101 = Ufebs::ED101(
|
50
|
+
# number: 7,
|
51
|
+
# sum: 150000,
|
52
|
+
# receipt_date: Time.now,
|
53
|
+
# acc_doc: { number: '3', date: Time.now },
|
54
|
+
# purpose: 'оплата в том числе ндс 4000 руб',
|
55
|
+
# payer: {
|
56
|
+
# name: 'ООО ТЕСТ',
|
57
|
+
# account: '40702810200203001037',
|
58
|
+
# inn: '7726274727',
|
59
|
+
# bank_bic: '044525545',
|
60
|
+
# bank_account: '30101810300000000545'
|
61
|
+
# },
|
62
|
+
# payee: {
|
63
|
+
# name: 'ООО ТЕСТ',
|
64
|
+
# account: '40702810200203001037',
|
65
|
+
# inn: '7726274727',
|
66
|
+
# bank_bic: '044525545',
|
67
|
+
# bank_account: '30101810300000000545'
|
68
|
+
# },
|
69
|
+
# departmental_info: {
|
70
|
+
# kbk: '18210301000010000110',
|
71
|
+
# okato: '45263591000',
|
72
|
+
# drawer_status: '01',
|
73
|
+
# tax_period: 'МС.03.2017',
|
74
|
+
# tax_payt_kind: 'НС',
|
75
|
+
# doc_no: '111',
|
76
|
+
# payt_reason: 'ТП'
|
77
|
+
# }
|
78
|
+
# )
|
79
|
+
# ed101.to_xml(Nokogiri::XML::Builder.new(encoding: 'UTF-8'), nil, nil).to_xml #=>
|
80
|
+
# '<?xml version="1.0" encoding="UTF-8"?>
|
81
|
+
# <ed:ED101 xmlns:ed="urn:cbr-ru:ed:v2.0" EDNo="7" EDDate="2017-12-11" EDAuthor="4525595000" Sum="150000" TransKind="01" ChargeOffDate="2017-12-11" ReceiptDate="2017-12-11" SystemCode="01" Priority="0">
|
82
|
+
# <ed:AccDoc AccDocNo="003" AccDocDate="2017-12-11"/>
|
83
|
+
# <ed:Payer INN="7726274727" PersonalAcc="40702810200203001037">
|
84
|
+
# <ed:Name>ООО ТЕСТ</ed:Name>
|
85
|
+
# <ed:Bank BIC="044525545" CorrespAcc="30101810300000000545"/>
|
86
|
+
# </ed:Payer>
|
87
|
+
# <ed:Payee INN="7726274727" PersonalAcc="40702810200203001037">
|
88
|
+
# <ed:Name>ООО ТЕСТ</ed:Name>
|
89
|
+
# <ed:Bank BIC="044525545" CorrespAcc="30101810300000000545"/>
|
90
|
+
# </ed:Payee>
|
91
|
+
# <ed:Purpose>оплата в том числе ндс 4000 руб</ed:Purpose>
|
92
|
+
# <ed:DepartmentalInfo CBC="18210301000010000110" OKATO="45263591000" TaxPeriod="МС.03.2017" DrawerStatus="01" PaytReason="ТП" DocNo="111" TaxPaytKind="НС" DocDate="2017-12-11"/>
|
93
|
+
# </ed:ED101>'
|
94
|
+
def ED101(params)
|
95
|
+
Ufebs::Documents::PaymentOrder.new(params)
|
96
|
+
end
|
97
|
+
|
98
|
+
def PackedEPD()
|
99
|
+
end
|
100
|
+
|
101
|
+
def validate(doc)
|
102
|
+
doc = Nokogiri::XML(doc) if doc.is_a?(String)
|
103
|
+
|
104
|
+
errors = []
|
105
|
+
validation_schema.validate(doc).each do |error|
|
106
|
+
errors << error.message
|
107
|
+
puts error.message
|
108
|
+
end
|
109
|
+
errors.empty?
|
110
|
+
end
|
111
|
+
end
|
data/ruby_ufebs.gemspec
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'ufebs/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "ruby_ufebs"
|
8
|
+
spec.version = RubyUfebs::VERSION
|
9
|
+
spec.authors = ["Evgeniy Burdaev"]
|
10
|
+
spec.email = ["hate2me@yandex.ru"]
|
11
|
+
|
12
|
+
spec.summary = %q{Simple Construction of XML Defined by UFEBS for 2017/2018 standards http://www.cbr.ru/analytics/?PrtId=Formats}
|
13
|
+
spec.homepage = "https://github.com/creepycheese/ruby_ufebs"
|
14
|
+
|
15
|
+
spec.files = `git ls-files -z`.split("\x0").reject do |f|
|
16
|
+
f.match(%r{^(test|spec|features)/})
|
17
|
+
end
|
18
|
+
spec.bindir = "exe"
|
19
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
20
|
+
spec.require_paths = ["lib"]
|
21
|
+
|
22
|
+
spec.add_development_dependency "bundler", "~> 1.14"
|
23
|
+
spec.add_development_dependency "rake", "~> 10.0"
|
24
|
+
spec.add_development_dependency "minitest", "~> 5.0"
|
25
|
+
spec.add_development_dependency "pry"
|
26
|
+
spec.add_development_dependency 'guard'
|
27
|
+
spec.add_development_dependency 'guard-minitest'
|
28
|
+
spec.add_development_dependency 'guard-bundler'
|
29
|
+
spec.add_development_dependency 'yard'
|
30
|
+
spec.add_runtime_dependency 'nokogiri-happymapper'
|
31
|
+
end
|