ree_lib 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.rspec +3 -0
- data/.rubocop.yml +13 -0
- data/.ruby-version +1 -0
- data/CHANGELOG.md +5 -0
- data/CODE_OF_CONDUCT.md +84 -0
- data/Gemfile +14 -0
- data/Gemfile.lock +91 -0
- data/LICENSE.txt +21 -0
- data/README.md +41 -0
- data/Rakefile +8 -0
- data/lib/ree_lib/.gitignore +4 -0
- data/lib/ree_lib/.ree/templates/package/.gitignore +0 -0
- data/lib/ree_lib/.ree/templates/package/.rspec +2 -0
- data/lib/ree_lib/.ree/templates/package/<%=package_subdir_name%>/<%=package_name%>/.gitkeep +0 -0
- data/lib/ree_lib/.ree/templates/package/<%=package_subdir_name%>/<%=package_name%>.rb +15 -0
- data/lib/ree_lib/.ree/templates/package/Package.schema.json +0 -0
- data/lib/ree_lib/.ree/templates/package/bin/console +5 -0
- data/lib/ree_lib/.ree/templates/package/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/.ree/templates/package/spec/spec_helper.rb +3 -0
- data/lib/ree_lib/.rspec +3 -0
- data/lib/ree_lib/.vscode-ree/templates/functions/template.rb +12 -0
- data/lib/ree_lib/.vscode-ree/templates/spec_template.rb +9 -0
- data/lib/ree_lib/Packages.schema.json +89 -0
- data/lib/ree_lib/bin/console +5 -0
- data/lib/ree_lib/packages/.vscode-ree/templates/spec_template.rb +11 -0
- data/lib/ree_lib/packages/ree_array/.gitignore +0 -0
- data/lib/ree_lib/packages/ree_array/.rspec +2 -0
- data/lib/ree_lib/packages/ree_array/Package.schema.json +41 -0
- data/lib/ree_lib/packages/ree_array/bin/console +5 -0
- data/lib/ree_lib/packages/ree_array/package/ree_array/functions/group_by.rb +26 -0
- data/lib/ree_lib/packages/ree_array/package/ree_array/functions/in_groups.rb +61 -0
- data/lib/ree_lib/packages/ree_array/package/ree_array/functions/in_groups_of.rb +56 -0
- data/lib/ree_lib/packages/ree_array/package/ree_array/functions/index_by.rb +14 -0
- data/lib/ree_lib/packages/ree_array/package/ree_array/functions/split_by.rb +34 -0
- data/lib/ree_lib/packages/ree_array/package/ree_array/functions/wrap.rb +31 -0
- data/lib/ree_lib/packages/ree_array/package/ree_array.rb +7 -0
- data/lib/ree_lib/packages/ree_array/schemas/ree_array/functions/group_by.schema.json +31 -0
- data/lib/ree_lib/packages/ree_array/schemas/ree_array/functions/in_groups.schema.json +39 -0
- data/lib/ree_lib/packages/ree_array/schemas/ree_array/functions/in_groups_of.schema.json +39 -0
- data/lib/ree_lib/packages/ree_array/schemas/ree_array/functions/index_by.schema.json +31 -0
- data/lib/ree_lib/packages/ree_array/schemas/ree_array/functions/split_by.schema.json +35 -0
- data/lib/ree_lib/packages/ree_array/schemas/ree_array/functions/wrap.schema.json +27 -0
- data/lib/ree_lib/packages/ree_array/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_array/spec/ree_array/functions/group_by_spec.rb +18 -0
- data/lib/ree_lib/packages/ree_array/spec/ree_array/functions/in_groups_of_spec.rb +51 -0
- data/lib/ree_lib/packages/ree_array/spec/ree_array/functions/in_groups_spec.rb +43 -0
- data/lib/ree_lib/packages/ree_array/spec/ree_array/functions/index_by_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_array/spec/ree_array/functions/split_by_spec.rb +32 -0
- data/lib/ree_lib/packages/ree_array/spec/ree_array/functions/wrap_spec.rb +11 -0
- data/lib/ree_lib/packages/ree_array/spec/spec_helper.rb +3 -0
- data/lib/ree_lib/packages/ree_dao/.gitignore +1 -0
- data/lib/ree_lib/packages/ree_dao/.rspec +2 -0
- data/lib/ree_lib/packages/ree_dao/Package.schema.json +48 -0
- data/lib/ree_lib/packages/ree_dao/bin/console +5 -0
- data/lib/ree_lib/packages/ree_dao/package/ree_dao/beans/connections.rb +20 -0
- data/lib/ree_lib/packages/ree_dao/package/ree_dao/dataset_extensions.rb +243 -0
- data/lib/ree_lib/packages/ree_dao/package/ree_dao/dsl.rb +130 -0
- data/lib/ree_lib/packages/ree_dao/package/ree_dao/functions/build_connection.rb +103 -0
- data/lib/ree_lib/packages/ree_dao/package/ree_dao/functions/build_dao.rb +26 -0
- data/lib/ree_lib/packages/ree_dao/package/ree_dao/functions/build_pg_connection.rb +37 -0
- data/lib/ree_lib/packages/ree_dao/package/ree_dao/functions/build_sqlite_connection.rb +25 -0
- data/lib/ree_lib/packages/ree_dao/package/ree_dao.rb +16 -0
- data/lib/ree_lib/packages/ree_dao/schemas/ree_dao/beans/connections.schema.json +15 -0
- data/lib/ree_lib/packages/ree_dao/schemas/ree_dao/functions/build_connection.schema.json +38 -0
- data/lib/ree_lib/packages/ree_dao/schemas/ree_dao/functions/build_dao.schema.json +39 -0
- data/lib/ree_lib/packages/ree_dao/schemas/ree_dao/functions/build_pg_connection.schema.json +38 -0
- data/lib/ree_lib/packages/ree_dao/schemas/ree_dao/functions/build_sqlite_connection.schema.json +38 -0
- data/lib/ree_lib/packages/ree_dao/schemas/ree_dao/functions/dsl.schema.json +24 -0
- data/lib/ree_lib/packages/ree_dao/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_dao/spec/ree_dao/functions/build_sqlite_connection_spec.rb +230 -0
- data/lib/ree_lib/packages/ree_dao/spec/spec_helper.rb +3 -0
- data/lib/ree_lib/packages/ree_date/.gitignore +0 -0
- data/lib/ree_lib/packages/ree_date/.rspec +2 -0
- data/lib/ree_lib/packages/ree_date/Package.schema.json +229 -0
- data/lib/ree_lib/packages/ree_date/bin/console +5 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/advance.rb +31 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/all_month.rb +18 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/all_quarter.rb +18 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/all_week.rb +21 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/all_year.rb +18 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/beginning_of_month.rb +21 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/beginning_of_quarter.rb +25 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/beginning_of_week.rb +21 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/beginning_of_year.rb +23 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/change.rb +28 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/constants.rb +17 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/days_ago.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/days_in_month.rb +25 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/days_since.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/days_to_week_start.rb +21 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/end_of_month.rb +19 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/end_of_quarter.rb +25 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/end_of_week.rb +26 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/end_of_year.rb +18 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/friday.rb +18 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/is_after.rb +13 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/is_before.rb +13 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/is_week_day.rb +17 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/is_weekend.rb +17 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/monday.rb +17 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/months_ago.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/months_since.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/next_day.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/next_month.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/next_occurring.rb +39 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/next_quarter.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/next_week.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/next_year.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/parse.rb +13 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/prev_day.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/prev_month.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/prev_occurring.rb +39 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/prev_quarter.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/prev_week.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/prev_year.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/quarters_ago.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/quarters_since.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/saturday.rb +18 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/sunday.rb +17 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/thursday.rb +18 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/today.rb +13 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/tomorrow.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/tuesday.rb +18 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/wednesday.rb +18 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/weeks_ago.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/weeks_since.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/years_ago.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/years_since.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date/functions/yesterday.rb +16 -0
- data/lib/ree_lib/packages/ree_date/package/ree_date.rb +9 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/advance.schema.json +31 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/all_month.schema.json +50 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/all_quarter.schema.json +50 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/all_week.schema.json +54 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/all_year.schema.json +50 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/beginning_of_month.schema.json +42 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/beginning_of_quarter.schema.json +50 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/beginning_of_week.schema.json +54 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/beginning_of_year.schema.json +50 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/change.schema.json +31 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/days_ago.schema.json +46 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/days_in_month.schema.json +38 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/days_since.schema.json +46 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/days_to_week_start.schema.json +38 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/end_of_month.schema.json +50 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/end_of_quarter.schema.json +50 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/end_of_week.schema.json +54 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/end_of_year.schema.json +50 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/friday.schema.json +50 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/is_after.schema.json +31 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/is_before.schema.json +31 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/is_week_day.schema.json +34 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/is_weekend.schema.json +34 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/monday.schema.json +42 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/months_ago.schema.json +46 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/months_since.schema.json +46 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/next_day.schema.json +42 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/next_month.schema.json +42 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/next_occurring.schema.json +62 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/next_quarter.schema.json +42 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/next_week.schema.json +42 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/next_year.schema.json +42 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/parse.schema.json +27 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/prev_day.schema.json +42 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/prev_month.schema.json +42 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/prev_occurring.schema.json +62 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/prev_quarter.schema.json +42 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/prev_week.schema.json +42 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/prev_year.schema.json +42 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/quarters_ago.schema.json +46 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/quarters_since.schema.json +46 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/saturday.schema.json +50 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/sunday.schema.json +42 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/thursday.schema.json +50 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/today.schema.json +24 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/tomorrow.schema.json +42 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/tuesday.schema.json +50 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/wednesday.schema.json +50 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/weeks_ago.schema.json +46 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/weeks_since.schema.json +46 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/years_ago.schema.json +46 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/years_since.schema.json +46 -0
- data/lib/ree_lib/packages/ree_date/schemas/ree_date/functions/yesterday.schema.json +42 -0
- data/lib/ree_lib/packages/ree_date/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/advance_spec.rb +33 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/all_month_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/all_quarter_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/all_week_spec.rb +18 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/all_year_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/beginning_of_month_spec.rb +15 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/beginning_of_quarter_spec.rb +18 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/beginning_of_week_spec.rb +19 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/beginning_of_year_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/change_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/days_ago_spec.rb +18 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/days_in_month_spec.rb +23 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/days_since_spec.rb +18 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/days_to_week_start_spec.rb +19 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/end_of_month_spec.rb +21 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/end_of_quarter_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/end_of_week_spec.rb +19 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/end_of_year_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/friday_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/is_after_spec.rb +13 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/is_before_spec.rb +13 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/is_week_day_spec.rb +19 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/is_weekend_spec.rb +19 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/monday_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/months_ago_spec.rb +18 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/months_since_spec.rb +18 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/next_day_spec.rb +18 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/next_month_spec.rb +16 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/next_occurring_spec.rb +26 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/next_quarter_spec.rb +16 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/next_week_spec.rb +16 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/next_year_spec.rb +16 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/parse_spec.rb +21 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/prev_day_spec.rb +15 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/prev_month_spec.rb +15 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/prev_occurring_spec.rb +26 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/prev_quarter_spec.rb +15 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/prev_week_spec.rb +15 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/prev_year_spec.rb +15 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/quarters_ago_spec.rb +18 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/quarters_since_spec.rb +18 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/saturday_spec.rb +18 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/sunday_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/thursday_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/today_spec.rb +11 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/tomorrow_spec.rb +18 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/tuesday_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/wednesday_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/weeks_ago_spec.rb +18 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/weeks_since_spec.rb +18 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/years_ago_spec.rb +18 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/years_since_spec.rb +18 -0
- data/lib/ree_lib/packages/ree_date/spec/ree_date/functions/yesterday_spec.rb +18 -0
- data/lib/ree_lib/packages/ree_date/spec/spec_helper.rb +3 -0
- data/lib/ree_lib/packages/ree_datetime/.gitignore +0 -0
- data/lib/ree_lib/packages/ree_datetime/.rspec +2 -0
- data/lib/ree_lib/packages/ree_datetime/Package.schema.json +384 -0
- data/lib/ree_lib/packages/ree_datetime/bin/console +5 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/advance.rb +55 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/all_day.rb +18 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/all_hour.rb +18 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/all_minute.rb +18 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/all_month.rb +21 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/all_quarter.rb +21 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/all_week.rb +22 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/all_year.rb +21 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/beginning_of_day.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/beginning_of_hour.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/beginning_of_minute.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/beginning_of_month.rb +23 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/beginning_of_quarter.rb +23 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/beginning_of_week.rb +26 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/beginning_of_year.rb +23 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/change.rb +47 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/constants.rb +157 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/days_ago.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/days_diff.rb +36 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/days_since.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/distance_of_time_in_words.rb +161 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/end_of_day.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/end_of_hour.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/end_of_minute.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/end_of_month.rb +26 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/end_of_quarter.rb +27 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/end_of_week.rb +26 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/end_of_year.rb +23 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/find_human_time_zones_by_offset.rb +31 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/find_time_zones_by_offset.rb +30 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/find_tzinfo.rb +15 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/friday.rb +18 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/general_diff.rb +63 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/get_default_time_zone.rb +15 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/get_default_tz_info.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/hours_ago.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/hours_diff.rb +36 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/hours_since.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/human_zone_offset.rb +24 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/in_default_time_zone.rb +23 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/in_time_zone.rb +20 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/is_after.rb +13 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/is_before.rb +13 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/is_week_day.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/is_weekend.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/minutes_ago.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/minutes_diff.rb +33 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/minutes_since.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/monday.rb +18 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/months_ago.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/months_diff.rb +36 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/months_since.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/next_day.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/next_hour.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/next_month.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/next_occurring.rb +37 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/next_quarter.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/next_week.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/next_year.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/now.rb +22 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/offset_to_string.rb +27 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/parse.rb +13 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/prev_day.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/prev_hour.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/prev_month.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/prev_occurring.rb +43 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/prev_quarter.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/prev_week.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/prev_year.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/quarters_ago.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/quarters_since.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/saturday.rb +18 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/seconds_ago.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/seconds_diff.rb +23 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/seconds_since.rb +14 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/set_default_time_zone.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/sunday.rb +25 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/thursday.rb +18 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/time_ago_in_words.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/tomorrow.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/tuesday.rb +18 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/wednesday.rb +18 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/weeks_ago.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/weeks_diff.rb +34 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/weeks_since.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/years_ago.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/years_diff.rb +37 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/years_since.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/yesterday.rb +16 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/functions/zone_offset.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime/locales/en.yml +38 -0
- data/lib/ree_lib/packages/ree_datetime/package/ree_datetime.rb +20 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/advance.schema.json +62 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/all_day.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/all_hour.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/all_minute.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/all_month.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/all_quarter.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/all_week.schema.json +54 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/all_year.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/beginning_of_day.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/beginning_of_hour.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/beginning_of_minute.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/beginning_of_month.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/beginning_of_quarter.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/beginning_of_week.schema.json +62 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/beginning_of_year.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/change.schema.json +31 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/days_ago.schema.json +46 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/days_diff.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/days_since.schema.json +46 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/distance_of_time_in_words.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/end_of_day.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/end_of_hour.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/end_of_minute.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/end_of_month.schema.json +58 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/end_of_quarter.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/end_of_week.schema.json +62 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/end_of_year.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/find_human_time_zones_by_offset.schema.json +34 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/find_time_zones_by_offset.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/find_tzinfo.schema.json +27 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/friday.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/general_diff.schema.json +106 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/get_default_time_zone.schema.json +24 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/get_default_tz_info.schema.json +39 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/hours_ago.schema.json +46 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/hours_diff.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/hours_since.schema.json +46 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/human_time_zone_offset.schema.json +34 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/human_zone_offset.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/in_default_time_zone.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/in_time_zone.schema.json +46 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/is_after.schema.json +31 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/is_before.schema.json +31 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/is_week_day.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/is_weekend.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/minutes_ago.schema.json +46 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/minutes_diff.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/minutes_since.schema.json +46 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/monday.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/months_ago.schema.json +46 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/months_diff.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/months_since.schema.json +46 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/next_day.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/next_hour.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/next_month.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/next_occurring.schema.json +54 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/next_quarter.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/next_week.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/next_year.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/now.schema.json +39 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/offset_to_string.schema.json +27 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/parse.schema.json +27 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/prev_day.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/prev_hour.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/prev_month.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/prev_occurring.schema.json +54 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/prev_quarter.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/prev_week.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/prev_year.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/quarters_ago.schema.json +46 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/quarters_since.schema.json +46 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/saturday.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/seconds_ago.schema.json +46 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/seconds_diff.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/seconds_since.schema.json +31 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/set_default_time_zone.schema.json +34 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/sunday.schema.json +58 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/thursday.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/time_ago_in_words.schema.json +46 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/tomorrow.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/tuesday.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/wednesday.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/weeks_ago.schema.json +46 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/weeks_diff.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/weeks_since.schema.json +46 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/years_ago.schema.json +46 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/years_diff.schema.json +50 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/years_since.schema.json +46 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/yesterday.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/schemas/ree_datetime/functions/zone_offset.schema.json +42 -0
- data/lib/ree_lib/packages/ree_datetime/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/advance_spec.rb +40 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/all_day_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/all_hour_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/all_minute_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/all_month_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/all_quarter_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/all_week_spec.rb +19 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/all_year_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/beginning_of_day_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/beginning_of_hour_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/beginning_of_minute_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/beginning_of_month_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/beginning_of_quarter_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/beginning_of_week_spec.rb +19 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/beginning_of_year_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/change_spec.rb +25 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/constants_spec.rb +13 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/days_ago_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/days_diff_spec.rb +29 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/days_since_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/distance_of_time_in_words_spec.rb +33 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/end_of_day_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/end_of_hour_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/end_of_minute_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/end_of_month_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/end_of_quarter_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/end_of_week_spec.rb +19 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/end_of_year_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/find_human_time_zones_by_offset_spec.rb +12 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/find_time_zones_by_offset_spec.rb +12 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/friday_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/general_diff_spec.rb +37 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/hours_ago_spec.rb +19 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/hours_diff_spec.rb +29 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/hours_since_spec.rb +19 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/human_zone_offset_spec.rb +18 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/in_default_time_zone_spec.rb +18 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/in_time_zone_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/is_after_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/is_before_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/is_week_day_spec.rb +19 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/is_weekend_spec.rb +19 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/minutes_ago_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/minutes_diff_spec.rb +46 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/minutes_since_spec.rb +19 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/monday_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/months_ago_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/months_diff_spec.rb +28 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/months_since_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/next_day_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/next_hour_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/next_month_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/next_occurring_spec.rb +26 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/next_quarter_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/next_week_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/next_year_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/now_spec.rb +11 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/offset_to_string_spec.rb +23 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/parse_spec.rb +15 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/prev_day_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/prev_hour_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/prev_month_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/prev_occurring_spec.rb +26 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/prev_quarter_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/prev_week_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/prev_year_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/quarters_ago_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/quarters_since_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/saturday_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/seconds_ago_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/seconds_diff_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/seconds_since_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/sunday_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/thursday_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/tomorrow_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/tuesday_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/wednesday_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/weeks_ago_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/weeks_diff_spec.rb +29 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/weeks_since_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/years_ago_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/years_diff_spec.rb +56 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/years_since_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/yesterday_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_datetime/spec/ree_datetime/functions/zone_offset_spec.rb +9 -0
- data/lib/ree_lib/packages/ree_datetime/spec/spec_helper.rb +3 -0
- data/lib/ree_lib/packages/ree_dto/.gitignore +0 -0
- data/lib/ree_lib/packages/ree_dto/.rspec +2 -0
- data/lib/ree_lib/packages/ree_dto/Package.schema.json +18 -0
- data/lib/ree_lib/packages/ree_dto/bin/console +5 -0
- data/lib/ree_lib/packages/ree_dto/package/ree_dto/entity_dsl.rb +109 -0
- data/lib/ree_lib/packages/ree_dto/package/ree_dto.rb +7 -0
- data/lib/ree_lib/packages/ree_dto/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_dto/spec/ree_dto/entity_dsl_spec.rb +106 -0
- data/lib/ree_lib/packages/ree_dto/spec/spec_helper.rb +3 -0
- data/lib/ree_lib/packages/ree_enum/.gitignore +0 -0
- data/lib/ree_lib/packages/ree_enum/.rspec +2 -0
- data/lib/ree_lib/packages/ree_enum/Package.schema.json +23 -0
- data/lib/ree_lib/packages/ree_enum/bin/console +5 -0
- data/lib/ree_lib/packages/ree_enum/package/ree_enum/contractable.rb +13 -0
- data/lib/ree_lib/packages/ree_enum/package/ree_enum/dsl.rb +103 -0
- data/lib/ree_lib/packages/ree_enum/package/ree_enum/enumerable.rb +68 -0
- data/lib/ree_lib/packages/ree_enum/package/ree_enum/value.rb +60 -0
- data/lib/ree_lib/packages/ree_enum/package/ree_enum/values.rb +46 -0
- data/lib/ree_lib/packages/ree_enum/package/ree_enum.rb +25 -0
- data/lib/ree_lib/packages/ree_enum/spec/package_schema_spec.rb +16 -0
- data/lib/ree_lib/packages/ree_enum/spec/ree_enum/dsl_spec.rb +151 -0
- data/lib/ree_lib/packages/ree_enum/spec/spec_helper.rb +3 -0
- data/lib/ree_lib/packages/ree_errors/.gitignore +0 -0
- data/lib/ree_lib/packages/ree_errors/.rspec +2 -0
- data/lib/ree_lib/packages/ree_errors/Package.schema.json +51 -0
- data/lib/ree_lib/packages/ree_errors/bin/console +5 -0
- data/lib/ree_lib/packages/ree_errors/package/ree_errors/auth_error.rb +15 -0
- data/lib/ree_lib/packages/ree_errors/package/ree_errors/build_error.rb +20 -0
- data/lib/ree_lib/packages/ree_errors/package/ree_errors/conflict_error.rb +15 -0
- data/lib/ree_lib/packages/ree_errors/package/ree_errors/error.rb +45 -0
- data/lib/ree_lib/packages/ree_errors/package/ree_errors/error_factory.rb +15 -0
- data/lib/ree_lib/packages/ree_errors/package/ree_errors/invalid_param_error.rb +15 -0
- data/lib/ree_lib/packages/ree_errors/package/ree_errors/not_found_error.rb +15 -0
- data/lib/ree_lib/packages/ree_errors/package/ree_errors/payment_required_error.rb +15 -0
- data/lib/ree_lib/packages/ree_errors/package/ree_errors/permission_error.rb +15 -0
- data/lib/ree_lib/packages/ree_errors/package/ree_errors/validation_error.rb +15 -0
- data/lib/ree_lib/packages/ree_errors/package/ree_errors.rb +7 -0
- data/lib/ree_lib/packages/ree_errors/schemas/domain_errors/auth_error.schema.json +22 -0
- data/lib/ree_lib/packages/ree_errors/schemas/domain_errors/build_error.schema.json +35 -0
- data/lib/ree_lib/packages/ree_errors/schemas/domain_errors/conflict_error.schema.json +22 -0
- data/lib/ree_lib/packages/ree_errors/schemas/domain_errors/invalid_param_err.schema.json +31 -0
- data/lib/ree_lib/packages/ree_errors/schemas/domain_errors/invalid_param_error.schema.json +22 -0
- data/lib/ree_lib/packages/ree_errors/schemas/domain_errors/not_found_err.schema.json +38 -0
- data/lib/ree_lib/packages/ree_errors/schemas/domain_errors/not_found_error.schema.json +22 -0
- data/lib/ree_lib/packages/ree_errors/schemas/domain_errors/payment_required_error.schema.json +22 -0
- data/lib/ree_lib/packages/ree_errors/schemas/domain_errors/permission_error.schema.json +22 -0
- data/lib/ree_lib/packages/ree_errors/schemas/domain_errors/validation_error.schema.json +22 -0
- data/lib/ree_lib/packages/ree_errors/schemas/ree_errors/auth_error.schema.json +22 -0
- data/lib/ree_lib/packages/ree_errors/schemas/ree_errors/build_error.schema.json +35 -0
- data/lib/ree_lib/packages/ree_errors/schemas/ree_errors/conflict_error.schema.json +22 -0
- data/lib/ree_lib/packages/ree_errors/schemas/ree_errors/invalid_param_error.schema.json +22 -0
- data/lib/ree_lib/packages/ree_errors/schemas/ree_errors/not_found_error.schema.json +22 -0
- data/lib/ree_lib/packages/ree_errors/schemas/ree_errors/payment_required_error.schema.json +22 -0
- data/lib/ree_lib/packages/ree_errors/schemas/ree_errors/permission_error.schema.json +22 -0
- data/lib/ree_lib/packages/ree_errors/schemas/ree_errors/validation_error.schema.json +22 -0
- data/lib/ree_lib/packages/ree_errors/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_errors/spec/ree_errors/auth_error_spec.rb +53 -0
- data/lib/ree_lib/packages/ree_errors/spec/ree_errors/invalid_param_error_spec.rb +15 -0
- data/lib/ree_lib/packages/ree_errors/spec/ree_errors/locales/en.yml +3 -0
- data/lib/ree_lib/packages/ree_errors/spec/ree_errors/not_found_error_spec.rb +15 -0
- data/lib/ree_lib/packages/ree_errors/spec/ree_errors/payment_required_error_spec.rb +15 -0
- data/lib/ree_lib/packages/ree_errors/spec/ree_errors/permission_error_spec.rb +15 -0
- data/lib/ree_lib/packages/ree_errors/spec/ree_errors/validation_error_spec.rb +15 -0
- data/lib/ree_lib/packages/ree_errors/spec/spec_helper.rb +3 -0
- data/lib/ree_lib/packages/ree_hash/.gitignore +0 -0
- data/lib/ree_lib/packages/ree_hash/.rspec +2 -0
- data/lib/ree_lib/packages/ree_hash/Package.schema.json +54 -0
- data/lib/ree_lib/packages/ree_hash/bin/console +5 -0
- data/lib/ree_lib/packages/ree_hash/package/ree_hash/contracts/hash_keys_contract.rb +34 -0
- data/lib/ree_lib/packages/ree_hash/package/ree_hash/functions/build_filter_keys.rb +26 -0
- data/lib/ree_lib/packages/ree_hash/package/ree_hash/functions/except.rb +69 -0
- data/lib/ree_lib/packages/ree_hash/package/ree_hash/functions/merge.rb +49 -0
- data/lib/ree_lib/packages/ree_hash/package/ree_hash/functions/slice.rb +72 -0
- data/lib/ree_lib/packages/ree_hash/package/ree_hash/functions/stringify_keys.rb +15 -0
- data/lib/ree_lib/packages/ree_hash/package/ree_hash/functions/symbolize_keys.rb +15 -0
- data/lib/ree_lib/packages/ree_hash/package/ree_hash/functions/transform_keys.rb +45 -0
- data/lib/ree_lib/packages/ree_hash/package/ree_hash/functions/transform_values.rb +51 -0
- data/lib/ree_lib/packages/ree_hash/package/ree_hash.rb +11 -0
- data/lib/ree_lib/packages/ree_hash/schemas/ree_hash/functions/build_filter_keys.schema.json +27 -0
- data/lib/ree_lib/packages/ree_hash/schemas/ree_hash/functions/convert_key.schema.json +27 -0
- data/lib/ree_lib/packages/ree_hash/schemas/ree_hash/functions/except.schema.json +42 -0
- data/lib/ree_lib/packages/ree_hash/schemas/ree_hash/functions/merge.schema.json +39 -0
- data/lib/ree_lib/packages/ree_hash/schemas/ree_hash/functions/slice.schema.json +43 -0
- data/lib/ree_lib/packages/ree_hash/schemas/ree_hash/functions/stringify_keys.schema.json +34 -0
- data/lib/ree_lib/packages/ree_hash/schemas/ree_hash/functions/symbolize_keys.schema.json +34 -0
- data/lib/ree_lib/packages/ree_hash/schemas/ree_hash/functions/transform_key.schema.json +31 -0
- data/lib/ree_lib/packages/ree_hash/schemas/ree_hash/functions/transform_keys.schema.json +35 -0
- data/lib/ree_lib/packages/ree_hash/schemas/ree_hash/functions/transform_values.schema.json +35 -0
- data/lib/ree_lib/packages/ree_hash/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_hash/spec/ree_hash/functions/except_spec.rb +205 -0
- data/lib/ree_lib/packages/ree_hash/spec/ree_hash/functions/merge_spec.rb +47 -0
- data/lib/ree_lib/packages/ree_hash/spec/ree_hash/functions/slice_spec.rb +133 -0
- data/lib/ree_lib/packages/ree_hash/spec/ree_hash/functions/stringify_keys_spec.rb +12 -0
- data/lib/ree_lib/packages/ree_hash/spec/ree_hash/functions/symbolize_keys_spec.rb +11 -0
- data/lib/ree_lib/packages/ree_hash/spec/ree_hash/functions/transform_keys_spec.rb +77 -0
- data/lib/ree_lib/packages/ree_hash/spec/ree_hash/functions/transform_values_spec.rb +39 -0
- data/lib/ree_lib/packages/ree_hash/spec/spec_helper.rb +3 -0
- data/lib/ree_lib/packages/ree_http/.gitignore +0 -0
- data/lib/ree_lib/packages/ree_http/.rspec +2 -0
- data/lib/ree_lib/packages/ree_http/Package.schema.json +69 -0
- data/lib/ree_lib/packages/ree_http/bin/console +5 -0
- data/lib/ree_lib/packages/ree_http/package/ree_http/constants.rb +13 -0
- data/lib/ree_lib/packages/ree_http/package/ree_http/functions/build_request.rb +132 -0
- data/lib/ree_lib/packages/ree_http/package/ree_http/functions/build_request_executor.rb +71 -0
- data/lib/ree_lib/packages/ree_http/package/ree_http/functions/execute_request.rb +123 -0
- data/lib/ree_lib/packages/ree_http/package/ree_http/functions/http_delete.rb +23 -0
- data/lib/ree_lib/packages/ree_http/package/ree_http/functions/http_exec.rb +99 -0
- data/lib/ree_lib/packages/ree_http/package/ree_http/functions/http_get.rb +23 -0
- data/lib/ree_lib/packages/ree_http/package/ree_http/functions/http_head.rb +23 -0
- data/lib/ree_lib/packages/ree_http/package/ree_http/functions/http_options.rb +23 -0
- data/lib/ree_lib/packages/ree_http/package/ree_http/functions/http_patch.rb +23 -0
- data/lib/ree_lib/packages/ree_http/package/ree_http/functions/http_post.rb +23 -0
- data/lib/ree_lib/packages/ree_http/package/ree_http/functions/http_put.rb +23 -0
- data/lib/ree_lib/packages/ree_http/package/ree_http/http_exceptions.rb +9 -0
- data/lib/ree_lib/packages/ree_http/package/ree_http.rb +30 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/add_auth.schema.json +31 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/basic_auth.schema.json +15 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/build_request.schema.json +70 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/build_requester.schema.json +46 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/execute_request.schema.json +42 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/functions/build_request.schema.json +58 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/functions/build_request_executor.schema.json +31 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/functions/execute_request.schema.json +51 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/functions/get_default_logger.schema.json +27 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/functions/http_delete.schema.json +42 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/functions/http_exec.schema.json +62 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/functions/http_get.schema.json +42 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/functions/http_head.schema.json +42 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/functions/http_options.schema.json +42 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/functions/http_patch.schema.json +42 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/functions/http_post.schema.json +42 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/functions/http_put.schema.json +42 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/functions/set_default_logger.schema.json +27 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/get.schema.json +22 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/get_http.schema.json +42 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/http_delete.schema.json +74 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/http_get.schema.json +66 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/http_patch.schema.json +74 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/http_post.schema.json +74 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/http_put.schema.json +74 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/post.schema.json +22 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/post_http.schema.json +42 -0
- data/lib/ree_lib/packages/ree_http/schemas/ree_http/response.schema.json +15 -0
- data/lib/ree_lib/packages/ree_http/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_http/spec/ree_http/functions/http_delete_spec.rb +165 -0
- data/lib/ree_lib/packages/ree_http/spec/ree_http/functions/http_get_spec.rb +165 -0
- data/lib/ree_lib/packages/ree_http/spec/ree_http/functions/http_options_spec.rb +184 -0
- data/lib/ree_lib/packages/ree_http/spec/ree_http/functions/http_patch_spec.rb +176 -0
- data/lib/ree_lib/packages/ree_http/spec/ree_http/functions/http_post_spec.rb +183 -0
- data/lib/ree_lib/packages/ree_http/spec/ree_http/functions/http_put_spec.rb +176 -0
- data/lib/ree_lib/packages/ree_http/spec/spec_helper.rb +3 -0
- data/lib/ree_lib/packages/ree_i18n/.gitignore +0 -0
- data/lib/ree_lib/packages/ree_i18n/.rspec +2 -0
- data/lib/ree_lib/packages/ree_i18n/Package.schema.json +50 -0
- data/lib/ree_lib/packages/ree_i18n/bin/console +5 -0
- data/lib/ree_lib/packages/ree_i18n/package/ree_i18n/functions/add_load_path.rb +16 -0
- data/lib/ree_lib/packages/ree_i18n/package/ree_i18n/functions/get_default_locale.rb +12 -0
- data/lib/ree_lib/packages/ree_i18n/package/ree_i18n/functions/get_locale.rb +12 -0
- data/lib/ree_lib/packages/ree_i18n/package/ree_i18n/functions/set_default_locale.rb +12 -0
- data/lib/ree_lib/packages/ree_i18n/package/ree_i18n/functions/set_locale.rb +12 -0
- data/lib/ree_lib/packages/ree_i18n/package/ree_i18n/functions/t.rb +90 -0
- data/lib/ree_lib/packages/ree_i18n/package/ree_i18n/functions/with_locale.rb +12 -0
- data/lib/ree_lib/packages/ree_i18n/package/ree_i18n.rb +10 -0
- data/lib/ree_lib/packages/ree_i18n/schemas/ree_i18n/functions/add_load_path.schema.json +34 -0
- data/lib/ree_lib/packages/ree_i18n/schemas/ree_i18n/functions/get_default_locale.schema.json +24 -0
- data/lib/ree_lib/packages/ree_i18n/schemas/ree_i18n/functions/get_locale.schema.json +24 -0
- data/lib/ree_lib/packages/ree_i18n/schemas/ree_i18n/functions/set_default_locale.schema.json +27 -0
- data/lib/ree_lib/packages/ree_i18n/schemas/ree_i18n/functions/set_locale.schema.json +27 -0
- data/lib/ree_lib/packages/ree_i18n/schemas/ree_i18n/functions/t.schema.json +48 -0
- data/lib/ree_lib/packages/ree_i18n/schemas/ree_i18n/functions/with_locale.schema.json +31 -0
- data/lib/ree_lib/packages/ree_i18n/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_i18n/spec/ree_i18n/functions/locales/en.yml +12 -0
- data/lib/ree_lib/packages/ree_i18n/spec/ree_i18n/functions/locales/ru.yml +11 -0
- data/lib/ree_lib/packages/ree_i18n/spec/ree_i18n/functions/set_locale_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_i18n/spec/ree_i18n/functions/t_spec.rb +113 -0
- data/lib/ree_lib/packages/ree_i18n/spec/spec_helper.rb +3 -0
- data/lib/ree_lib/packages/ree_json/.gitignore +0 -0
- data/lib/ree_lib/packages/ree_json/.rspec +2 -0
- data/lib/ree_lib/packages/ree_json/Package.schema.json +27 -0
- data/lib/ree_lib/packages/ree_json/bin/console +5 -0
- data/lib/ree_lib/packages/ree_json/package/ree_json/constants.rb +30 -0
- data/lib/ree_lib/packages/ree_json/package/ree_json/functions/from_json.rb +29 -0
- data/lib/ree_lib/packages/ree_json/package/ree_json/functions/to_json.rb +44 -0
- data/lib/ree_lib/packages/ree_json/package/ree_json.rb +10 -0
- data/lib/ree_lib/packages/ree_json/schemas/ree_json/functions/from_json.schema.json +35 -0
- data/lib/ree_lib/packages/ree_json/schemas/ree_json/functions/to_json.schema.json +35 -0
- data/lib/ree_lib/packages/ree_json/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_json/spec/ree_json/functions/from_json_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_json/spec/ree_json/functions/to_json_spec.rb +15 -0
- data/lib/ree_lib/packages/ree_json/spec/spec_helper.rb +3 -0
- data/lib/ree_lib/packages/ree_logger/.gitignore +0 -0
- data/lib/ree_lib/packages/ree_logger/.rspec +2 -0
- data/lib/ree_lib/packages/ree_logger/Package.schema.json +67 -0
- data/lib/ree_lib/packages/ree_logger/bin/console +5 -0
- data/lib/ree_lib/packages/ree_logger/package/ree_logger/appenders/appender.rb +14 -0
- data/lib/ree_lib/packages/ree_logger/package/ree_logger/appenders/file_appender.rb +58 -0
- data/lib/ree_lib/packages/ree_logger/package/ree_logger/appenders/stdout_appender.rb +31 -0
- data/lib/ree_lib/packages/ree_logger/package/ree_logger/beans/logger.rb +48 -0
- data/lib/ree_lib/packages/ree_logger/package/ree_logger/config.rb +65 -0
- data/lib/ree_lib/packages/ree_logger/package/ree_logger/formatters/colorized_formatter.rb +82 -0
- data/lib/ree_lib/packages/ree_logger/package/ree_logger/formatters/default_formatter.rb +33 -0
- data/lib/ree_lib/packages/ree_logger/package/ree_logger/formatters/formatter.rb +5 -0
- data/lib/ree_lib/packages/ree_logger/package/ree_logger/functions/build_logger.rb +27 -0
- data/lib/ree_lib/packages/ree_logger/package/ree_logger/log_event.rb +2 -0
- data/lib/ree_lib/packages/ree_logger/package/ree_logger/multi_logger.rb +153 -0
- data/lib/ree_lib/packages/ree_logger/package/ree_logger/rate_limiter.rb +26 -0
- data/lib/ree_lib/packages/ree_logger/package/ree_logger.rb +21 -0
- data/lib/ree_lib/packages/ree_logger/schemas/ree_logger/beans/logger.schema.json +46 -0
- data/lib/ree_lib/packages/ree_logger/schemas/ree_logger/config.schema.json +38 -0
- data/lib/ree_lib/packages/ree_logger/schemas/ree_logger/formatters/colorized_formatter.schema.json +30 -0
- data/lib/ree_lib/packages/ree_logger/schemas/ree_logger/formatters/default_formatter.schema.json +30 -0
- data/lib/ree_lib/packages/ree_logger/schemas/ree_logger/functions/build_logger.schema.json +39 -0
- data/lib/ree_lib/packages/ree_logger/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_logger/spec/ree_logger/appenders/appender_spec.rb +15 -0
- data/lib/ree_lib/packages/ree_logger/spec/ree_logger/appenders/file_appender_spec.rb +72 -0
- data/lib/ree_lib/packages/ree_logger/spec/ree_logger/appenders/stdout_appender_spec.rb +44 -0
- data/lib/ree_lib/packages/ree_logger/spec/ree_logger/beans/logger_spec.rb +62 -0
- data/lib/ree_lib/packages/ree_logger/spec/ree_logger/formatters/colorized_formatter_spec.rb +48 -0
- data/lib/ree_lib/packages/ree_logger/spec/ree_logger/formatters/default_formatter_spec.rb +48 -0
- data/lib/ree_lib/packages/ree_logger/spec/ree_logger/formatters/formatter_spec.rb +13 -0
- data/lib/ree_lib/packages/ree_logger/spec/ree_logger/multi_logger_spec.rb +117 -0
- data/lib/ree_lib/packages/ree_logger/spec/spec_helper.rb +19 -0
- data/lib/ree_lib/packages/ree_mapper/.gitignore +0 -0
- data/lib/ree_lib/packages/ree_mapper/.rspec +2 -0
- data/lib/ree_lib/packages/ree_mapper/Package.schema.json +34 -0
- data/lib/ree_lib/packages/ree_mapper/bin/console +5 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/default_factory.rb +19 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/dsl.rb +49 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/errors/coercion_error.rb +4 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/errors/error.rb +4 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/errors/type_error.rb +4 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/errors/unsupported_type_error.rb +4 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/field.rb +54 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/functions/build_mapper_factory.rb +31 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/functions/build_mapper_strategy.rb +28 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/mapper.rb +88 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/mapper_factory.rb +129 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/mapper_factory_proxy.rb +44 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/mapper_strategy.rb +60 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/strategy_outputs/object_output.rb +19 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/strategy_outputs/strategy_output.rb +21 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/strategy_outputs/string_key_hash_output.rb +14 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/strategy_outputs/symbol_key_hash_output.rb +14 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/types/abstract_type.rb +17 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/types/array.rb +70 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/types/bool.rb +36 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/types/date.rb +41 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/types/date_time.rb +41 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/types/float.rb +37 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/types/integer.rb +37 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/types/string.rb +27 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper/types/time.rb +41 -0
- data/lib/ree_lib/packages/ree_mapper/package/ree_mapper.rb +166 -0
- data/lib/ree_lib/packages/ree_mapper/schemas/ree_mapper/default_factory.schema.json +30 -0
- data/lib/ree_lib/packages/ree_mapper/schemas/ree_mapper/functions/build_mapper_factory.schema.json +27 -0
- data/lib/ree_lib/packages/ree_mapper/schemas/ree_mapper/functions/build_mapper_strategy.schema.json +35 -0
- data/lib/ree_lib/packages/ree_mapper/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/dsl/dsl_spec.rb +52 -0
- data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/functions/build_mapper_factory_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/functions/build_mapper_strategy_spec.rb +11 -0
- data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/mapper_factory_spec.rb +76 -0
- data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/mapper_spec.rb +104 -0
- data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/array_spec.rb +144 -0
- data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/bool_spec.rb +159 -0
- data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/date_spec.rb +111 -0
- data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/date_time_spec.rb +135 -0
- data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/float_spec.rb +107 -0
- data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/hash_spec.rb +99 -0
- data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/integer_spec.rb +111 -0
- data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/string_spec.rb +63 -0
- data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/time_spec.rb +135 -0
- data/lib/ree_lib/packages/ree_mapper/spec/ree_mapper/types/type_options_spec.rb +176 -0
- data/lib/ree_lib/packages/ree_mapper/spec/spec_helper.rb +3 -0
- data/lib/ree_lib/packages/ree_migrator/.gitignore +1 -0
- data/lib/ree_lib/packages/ree_migrator/.rspec +2 -0
- data/lib/ree_lib/packages/ree_migrator/Package.schema.json +47 -0
- data/lib/ree_lib/packages/ree_migrator/bin/console +5 -0
- data/lib/ree_lib/packages/ree_migrator/package/ree_migrator/functions/apply_migration.rb +37 -0
- data/lib/ree_lib/packages/ree_migrator/package/ree_migrator/functions/apply_migrations.rb +94 -0
- data/lib/ree_lib/packages/ree_migrator/package/ree_migrator/functions/create_migrations_table.rb +28 -0
- data/lib/ree_lib/packages/ree_migrator/package/ree_migrator/functions/migrate_db.rb +34 -0
- data/lib/ree_lib/packages/ree_migrator/package/ree_migrator.rb +16 -0
- data/lib/ree_lib/packages/ree_migrator/schemas/ree_migrator/functions/apply_data_migration.schema.json +31 -0
- data/lib/ree_lib/packages/ree_migrator/schemas/ree_migrator/functions/apply_migration.schema.json +50 -0
- data/lib/ree_lib/packages/ree_migrator/schemas/ree_migrator/functions/apply_migrations.schema.json +71 -0
- data/lib/ree_lib/packages/ree_migrator/schemas/ree_migrator/functions/apply_schema_migration.schema.json +31 -0
- data/lib/ree_lib/packages/ree_migrator/schemas/ree_migrator/functions/create_data_migrations_table.schema.json +27 -0
- data/lib/ree_lib/packages/ree_migrator/schemas/ree_migrator/functions/create_migrations_table.schema.json +27 -0
- data/lib/ree_lib/packages/ree_migrator/schemas/ree_migrator/functions/create_schema_migrations_table.schema.json +27 -0
- data/lib/ree_lib/packages/ree_migrator/schemas/ree_migrator/functions/migrate_db.schema.json +54 -0
- data/lib/ree_lib/packages/ree_migrator/schemas/ree_migrator/migrate_db.schema.json +15 -0
- data/lib/ree_lib/packages/ree_migrator/spec/db.rb +22 -0
- data/lib/ree_lib/packages/ree_migrator/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_migrator/spec/ree_migrator/functions/apply_migration_spec.rb +58 -0
- data/lib/ree_lib/packages/ree_migrator/spec/ree_migrator/functions/apply_migrations_spec.rb +49 -0
- data/lib/ree_lib/packages/ree_migrator/spec/ree_migrator/functions/migrate_db_spec.rb +38 -0
- data/lib/ree_lib/packages/ree_migrator/spec/sample_migrations/data_migrations/populate_test_table.rb +11 -0
- data/lib/ree_lib/packages/ree_migrator/spec/sample_migrations/migrations.yml +3 -0
- data/lib/ree_lib/packages/ree_migrator/spec/sample_migrations/schema_migrations/create_test_table.rb +7 -0
- data/lib/ree_lib/packages/ree_migrator/spec/spec_helper.rb +9 -0
- data/lib/ree_lib/packages/ree_number/.gitignore +0 -0
- data/lib/ree_lib/packages/ree_number/.rspec +2 -0
- data/lib/ree_lib/packages/ree_number/Package.schema.json +62 -0
- data/lib/ree_lib/packages/ree_number/bin/console +5 -0
- data/lib/ree_lib/packages/ree_number/package/ree_number/functions/constants.rb +25 -0
- data/lib/ree_lib/packages/ree_number/package/ree_number/functions/digit_count.rb +14 -0
- data/lib/ree_lib/packages/ree_number/package/ree_number/functions/number_to_currency.rb +79 -0
- data/lib/ree_lib/packages/ree_number/package/ree_number/functions/number_to_delimited.rb +45 -0
- data/lib/ree_lib/packages/ree_number/package/ree_number/functions/number_to_human.rb +210 -0
- data/lib/ree_lib/packages/ree_number/package/ree_number/functions/number_to_human_size.rb +168 -0
- data/lib/ree_lib/packages/ree_number/package/ree_number/functions/number_to_ordinalized.rb +60 -0
- data/lib/ree_lib/packages/ree_number/package/ree_number/functions/number_to_percentage.rb +55 -0
- data/lib/ree_lib/packages/ree_number/package/ree_number/functions/number_to_phone.rb +85 -0
- data/lib/ree_lib/packages/ree_number/package/ree_number/functions/number_to_rounded.rb +100 -0
- data/lib/ree_lib/packages/ree_number/package/ree_number/functions/round_helper.rb +69 -0
- data/lib/ree_lib/packages/ree_number/package/ree_number/locales/en.yml +58 -0
- data/lib/ree_lib/packages/ree_number/package/ree_number.rb +15 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_number/functions/digit_count.schema.json +27 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_number/functions/number_to_currency.schema.json +54 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_number/functions/number_to_delimited.schema.json +31 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_number/functions/number_to_human.schema.json +70 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_number/functions/number_to_human_size.schema.json +62 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_number/functions/number_to_ordinalized.schema.json +38 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_number/functions/number_to_percentage.schema.json +46 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_number/functions/number_to_phone.schema.json +31 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_number/functions/number_to_rounded.schema.json +62 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_number/functions/round_helper.schema.json +38 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_numbers/functions/digit_count.schema.json +27 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_numbers/functions/number_to_currency.schema.json +54 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_numbers/functions/number_to_delimited.schema.json +31 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_numbers/functions/number_to_human.schema.json +78 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_numbers/functions/number_to_human_size.schema.json +62 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_numbers/functions/number_to_ordinalized.schema.json +38 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_numbers/functions/number_to_percentage.schema.json +46 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_numbers/functions/number_to_phone.schema.json +31 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_numbers/functions/number_to_rounded.schema.json +62 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_numbers/functions/round.schema.json +27 -0
- data/lib/ree_lib/packages/ree_number/schemas/ree_numbers/functions/round_helper.schema.json +38 -0
- data/lib/ree_lib/packages/ree_number/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_number/spec/ree_number/functions/digit_count_spec.rb +11 -0
- data/lib/ree_lib/packages/ree_number/spec/ree_number/functions/number_to_currency_spec.rb +51 -0
- data/lib/ree_lib/packages/ree_number/spec/ree_number/functions/number_to_delimited_spec.rb +23 -0
- data/lib/ree_lib/packages/ree_number/spec/ree_number/functions/number_to_human_size_spec.rb +68 -0
- data/lib/ree_lib/packages/ree_number/spec/ree_number/functions/number_to_human_spec.rb +50 -0
- data/lib/ree_lib/packages/ree_number/spec/ree_number/functions/number_to_ordinalized_spec.rb +26 -0
- data/lib/ree_lib/packages/ree_number/spec/ree_number/functions/number_to_percentage_spec.rb +19 -0
- data/lib/ree_lib/packages/ree_number/spec/ree_number/functions/number_to_phone_spec.rb +27 -0
- data/lib/ree_lib/packages/ree_number/spec/ree_number/functions/number_to_rounded_spec.rb +79 -0
- data/lib/ree_lib/packages/ree_number/spec/ree_number/functions/round_helper_spec.rb +9 -0
- data/lib/ree_lib/packages/ree_number/spec/spec_helper.rb +3 -0
- data/lib/ree_lib/packages/ree_object/.gitignore +0 -0
- data/lib/ree_lib/packages/ree_object/.rspec +2 -0
- data/lib/ree_lib/packages/ree_object/Package.schema.json +43 -0
- data/lib/ree_lib/packages/ree_object/bin/console +5 -0
- data/lib/ree_lib/packages/ree_object/package/ree_object/functions/as_json.rb +74 -0
- data/lib/ree_lib/packages/ree_object/package/ree_object/functions/deep_dup.rb +92 -0
- data/lib/ree_lib/packages/ree_object/package/ree_object/functions/deep_freeze.rb +60 -0
- data/lib/ree_lib/packages/ree_object/package/ree_object/functions/is_blank.rb +40 -0
- data/lib/ree_lib/packages/ree_object/package/ree_object/functions/not_blank.rb +15 -0
- data/lib/ree_lib/packages/ree_object/package/ree_object/functions/to_obj.rb +97 -0
- data/lib/ree_lib/packages/ree_object/package/ree_object.rb +7 -0
- data/lib/ree_lib/packages/ree_object/schemas/ree_object/functions/as_json.schema.json +27 -0
- data/lib/ree_lib/packages/ree_object/schemas/ree_object/functions/deep_dup.schema.json +31 -0
- data/lib/ree_lib/packages/ree_object/schemas/ree_object/functions/deep_freeze.schema.json +27 -0
- data/lib/ree_lib/packages/ree_object/schemas/ree_object/functions/is_blank.schema.json +27 -0
- data/lib/ree_lib/packages/ree_object/schemas/ree_object/functions/not_blank.schema.json +34 -0
- data/lib/ree_lib/packages/ree_object/schemas/ree_object/functions/to_hash.schema.json +27 -0
- data/lib/ree_lib/packages/ree_object/schemas/ree_object/functions/to_obj.schema.json +54 -0
- data/lib/ree_lib/packages/ree_object/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_object/spec/ree_object/functions/as_json_spec.rb +172 -0
- data/lib/ree_lib/packages/ree_object/spec/ree_object/functions/deep_dup_spec.rb +166 -0
- data/lib/ree_lib/packages/ree_object/spec/ree_object/functions/deep_freeze_spec.rb +112 -0
- data/lib/ree_lib/packages/ree_object/spec/ree_object/functions/is_blank_spec.rb +33 -0
- data/lib/ree_lib/packages/ree_object/spec/ree_object/functions/not_blank_spec.rb +33 -0
- data/lib/ree_lib/packages/ree_object/spec/ree_object/functions/to_obj_spec.rb +174 -0
- data/lib/ree_lib/packages/ree_object/spec/spec_helper.rb +3 -0
- data/lib/ree_lib/packages/ree_string/.gitignore +0 -0
- data/lib/ree_lib/packages/ree_string/.rspec +2 -0
- data/lib/ree_lib/packages/ree_string/Package.schema.json +83 -0
- data/lib/ree_lib/packages/ree_string/bin/console +5 -0
- data/lib/ree_lib/packages/ree_string/package/ree_string/functions/acronyms_camelize_regex.rb +13 -0
- data/lib/ree_lib/packages/ree_string/package/ree_string/functions/acronyms_underscore_regex.rb +13 -0
- data/lib/ree_lib/packages/ree_string/package/ree_string/functions/camelize.rb +55 -0
- data/lib/ree_lib/packages/ree_string/package/ree_string/functions/dasherize.rb +17 -0
- data/lib/ree_lib/packages/ree_string/package/ree_string/functions/deconstantize.rb +21 -0
- data/lib/ree_lib/packages/ree_string/package/ree_string/functions/demodulize.rb +28 -0
- data/lib/ree_lib/packages/ree_string/package/ree_string/functions/indent.rb +51 -0
- data/lib/ree_lib/packages/ree_string/package/ree_string/functions/pluralize.rb +13 -0
- data/lib/ree_lib/packages/ree_string/package/ree_string/functions/remove.rb +22 -0
- data/lib/ree_lib/packages/ree_string/package/ree_string/functions/squish.rb +26 -0
- data/lib/ree_lib/packages/ree_string/package/ree_string/functions/strip_heredoc.rb +32 -0
- data/lib/ree_lib/packages/ree_string/package/ree_string/functions/truncate.rb +52 -0
- data/lib/ree_lib/packages/ree_string/package/ree_string/functions/truncate_bytes.rb +60 -0
- data/lib/ree_lib/packages/ree_string/package/ree_string/functions/truncate_words.rb +45 -0
- data/lib/ree_lib/packages/ree_string/package/ree_string/functions/underscore.rb +43 -0
- data/lib/ree_lib/packages/ree_string/package/ree_string/functions/upcase_first.rb +19 -0
- data/lib/ree_lib/packages/ree_string/package/ree_string.rb +10 -0
- data/lib/ree_lib/packages/ree_string/schemas/ree_string/functions/acronyms_camelize_regex.schema.json +27 -0
- data/lib/ree_lib/packages/ree_string/schemas/ree_string/functions/acronyms_underscore_regex.schema.json +27 -0
- data/lib/ree_lib/packages/ree_string/schemas/ree_string/functions/camelize.schema.json +38 -0
- data/lib/ree_lib/packages/ree_string/schemas/ree_string/functions/dasherize.schema.json +27 -0
- data/lib/ree_lib/packages/ree_string/schemas/ree_string/functions/deconstantize.schema.json +27 -0
- data/lib/ree_lib/packages/ree_string/schemas/ree_string/functions/demodulize.schema.json +27 -0
- data/lib/ree_lib/packages/ree_string/schemas/ree_string/functions/indent.schema.json +35 -0
- data/lib/ree_lib/packages/ree_string/schemas/ree_string/functions/is_blank.schema.json +27 -0
- data/lib/ree_lib/packages/ree_string/schemas/ree_string/functions/pluralize.schema.json +35 -0
- data/lib/ree_lib/packages/ree_string/schemas/ree_string/functions/remove.schema.json +31 -0
- data/lib/ree_lib/packages/ree_string/schemas/ree_string/functions/squish.schema.json +27 -0
- data/lib/ree_lib/packages/ree_string/schemas/ree_string/functions/strip_heredoc.schema.json +27 -0
- data/lib/ree_lib/packages/ree_string/schemas/ree_string/functions/truncate.schema.json +35 -0
- data/lib/ree_lib/packages/ree_string/schemas/ree_string/functions/truncate_bytes.schema.json +35 -0
- data/lib/ree_lib/packages/ree_string/schemas/ree_string/functions/truncate_words.schema.json +35 -0
- data/lib/ree_lib/packages/ree_string/schemas/ree_string/functions/underscore.schema.json +38 -0
- data/lib/ree_lib/packages/ree_string/schemas/ree_string/functions/upcase_first.schema.json +27 -0
- data/lib/ree_lib/packages/ree_string/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_string/spec/ree_string/functions/camelize_spec.rb +31 -0
- data/lib/ree_lib/packages/ree_string/spec/ree_string/functions/dasherize_spec.rb +9 -0
- data/lib/ree_lib/packages/ree_string/spec/ree_string/functions/deconstantize_spec.rb +13 -0
- data/lib/ree_lib/packages/ree_string/spec/ree_string/functions/demodulize_spec.rb +15 -0
- data/lib/ree_lib/packages/ree_string/spec/ree_string/functions/indent_spec.rb +17 -0
- data/lib/ree_lib/packages/ree_string/spec/ree_string/functions/pluralize_spec.rb +10 -0
- data/lib/ree_lib/packages/ree_string/spec/ree_string/functions/remove_spec.rb +12 -0
- data/lib/ree_lib/packages/ree_string/spec/ree_string/functions/squish_spec.rb +13 -0
- data/lib/ree_lib/packages/ree_string/spec/ree_string/functions/strip_heredoc_spec.rb +44 -0
- data/lib/ree_lib/packages/ree_string/spec/ree_string/functions/truncate_bytes_spec.rb +40 -0
- data/lib/ree_lib/packages/ree_string/spec/ree_string/functions/truncate_spec.rb +19 -0
- data/lib/ree_lib/packages/ree_string/spec/ree_string/functions/truncate_words_spec.rb +19 -0
- data/lib/ree_lib/packages/ree_string/spec/ree_string/functions/underscore_spec.rb +26 -0
- data/lib/ree_lib/packages/ree_string/spec/ree_string/functions/upcase_first_spec.rb +11 -0
- data/lib/ree_lib/packages/ree_string/spec/spec_helper.rb +3 -0
- data/lib/ree_lib/packages/ree_swagger/.gitignore +0 -0
- data/lib/ree_lib/packages/ree_swagger/.rspec +2 -0
- data/lib/ree_lib/packages/ree_swagger/Package.schema.json +61 -0
- data/lib/ree_lib/packages/ree_swagger/bin/console +5 -0
- data/lib/ree_lib/packages/ree_swagger/package/ree_swagger/beans/type_definitions_repo.rb +95 -0
- data/lib/ree_lib/packages/ree_swagger/package/ree_swagger/dto/endpoint_dto.rb +13 -0
- data/lib/ree_lib/packages/ree_swagger/package/ree_swagger/dto/path_dto.rb +8 -0
- data/lib/ree_lib/packages/ree_swagger/package/ree_swagger/functions/build_endpoint_schema.rb +105 -0
- data/lib/ree_lib/packages/ree_swagger/package/ree_swagger/functions/build_parameters.rb +48 -0
- data/lib/ree_lib/packages/ree_swagger/package/ree_swagger/functions/build_request_body_schema.rb +43 -0
- data/lib/ree_lib/packages/ree_swagger/package/ree_swagger/functions/build_schema.rb +26 -0
- data/lib/ree_lib/packages/ree_swagger/package/ree_swagger/functions/build_serializer_schema.rb +36 -0
- data/lib/ree_lib/packages/ree_swagger/package/ree_swagger/functions/get_caster_definition.rb +16 -0
- data/lib/ree_lib/packages/ree_swagger/package/ree_swagger/functions/get_serializer_definition.rb +16 -0
- data/lib/ree_lib/packages/ree_swagger/package/ree_swagger/functions/register_type.rb +20 -0
- data/lib/ree_lib/packages/ree_swagger/package/ree_swagger.rb +9 -0
- data/lib/ree_lib/packages/ree_swagger/schemas/ree_swagger/beans/type_definitions_repo.schema.json +15 -0
- data/lib/ree_lib/packages/ree_swagger/schemas/ree_swagger/functions/build_endpoint_schema.schema.json +50 -0
- data/lib/ree_lib/packages/ree_swagger/schemas/ree_swagger/functions/build_parameters.schema.json +50 -0
- data/lib/ree_lib/packages/ree_swagger/schemas/ree_swagger/functions/build_request_body_schema.schema.json +38 -0
- data/lib/ree_lib/packages/ree_swagger/schemas/ree_swagger/functions/build_schema.schema.json +46 -0
- data/lib/ree_lib/packages/ree_swagger/schemas/ree_swagger/functions/build_serializer_schema.schema.json +34 -0
- data/lib/ree_lib/packages/ree_swagger/schemas/ree_swagger/functions/get_caster_definition.schema.json +38 -0
- data/lib/ree_lib/packages/ree_swagger/schemas/ree_swagger/functions/get_serializer_definition.schema.json +38 -0
- data/lib/ree_lib/packages/ree_swagger/schemas/ree_swagger/functions/register_type.schema.json +42 -0
- data/lib/ree_lib/packages/ree_swagger/spec/functions/build_endpoint_schema_spec.rb +197 -0
- data/lib/ree_lib/packages/ree_swagger/spec/functions/build_parameters_spec.rb +43 -0
- data/lib/ree_lib/packages/ree_swagger/spec/functions/build_schema_spec.rb +41 -0
- data/lib/ree_lib/packages/ree_swagger/spec/functions/build_serializer_schema_spec.rb +110 -0
- data/lib/ree_lib/packages/ree_swagger/spec/functions/register_type_spec.rb +57 -0
- data/lib/ree_lib/packages/ree_swagger/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_swagger/spec/spec_helper.rb +3 -0
- data/lib/ree_lib/packages/ree_text/.gitignore +0 -0
- data/lib/ree_lib/packages/ree_text/.rspec +2 -0
- data/lib/ree_lib/packages/ree_text/Package.schema.json +77 -0
- data/lib/ree_lib/packages/ree_text/bin/console +5 -0
- data/lib/ree_lib/packages/ree_text/package/ree_text/functions/constants.rb +26 -0
- data/lib/ree_lib/packages/ree_text/package/ree_text/functions/escape_html.rb +15 -0
- data/lib/ree_lib/packages/ree_text/package/ree_text/functions/escape_javascript.rb +22 -0
- data/lib/ree_lib/packages/ree_text/package/ree_text/functions/excerpt.rb +122 -0
- data/lib/ree_lib/packages/ree_text/package/ree_text/functions/highlight.rb +74 -0
- data/lib/ree_lib/packages/ree_text/package/ree_text/functions/safe_join.rb +36 -0
- data/lib/ree_lib/packages/ree_text/package/ree_text/functions/sanitize_css.rb +13 -0
- data/lib/ree_lib/packages/ree_text/package/ree_text/functions/sanitize_html.rb +93 -0
- data/lib/ree_lib/packages/ree_text/package/ree_text/functions/simple_format.rb +135 -0
- data/lib/ree_lib/packages/ree_text/package/ree_text/functions/strip_links.rb +31 -0
- data/lib/ree_lib/packages/ree_text/package/ree_text/functions/strip_tags.rb +41 -0
- data/lib/ree_lib/packages/ree_text/package/ree_text/functions/to_sentence.rb +71 -0
- data/lib/ree_lib/packages/ree_text/package/ree_text/functions/unescape_html.rb +15 -0
- data/lib/ree_lib/packages/ree_text/package/ree_text/functions/word_wrap.rb +57 -0
- data/lib/ree_lib/packages/ree_text/package/ree_text/locales/en.yml +5 -0
- data/lib/ree_lib/packages/ree_text/package/ree_text/scrubbers/permit_scrubber.rb +101 -0
- data/lib/ree_lib/packages/ree_text/package/ree_text/scrubbers/target_scrubber.rb +11 -0
- data/lib/ree_lib/packages/ree_text/package/ree_text/scrubbers/text_only_scrubber.rb +16 -0
- data/lib/ree_lib/packages/ree_text/package/ree_text.rb +18 -0
- data/lib/ree_lib/packages/ree_text/schemas/ree_text/functions/escape_html.schema.json +27 -0
- data/lib/ree_lib/packages/ree_text/schemas/ree_text/functions/escape_javascript.schema.json +34 -0
- data/lib/ree_lib/packages/ree_text/schemas/ree_text/functions/excerpt.schema.json +42 -0
- data/lib/ree_lib/packages/ree_text/schemas/ree_text/functions/highlight.schema.json +46 -0
- data/lib/ree_lib/packages/ree_text/schemas/ree_text/functions/html_scrubber.schema.json +34 -0
- data/lib/ree_lib/packages/ree_text/schemas/ree_text/functions/safe_join.schema.json +38 -0
- data/lib/ree_lib/packages/ree_text/schemas/ree_text/functions/safe_list_sanitizer.schema.json +24 -0
- data/lib/ree_lib/packages/ree_text/schemas/ree_text/functions/sanitize.schema.json +35 -0
- data/lib/ree_lib/packages/ree_text/schemas/ree_text/functions/sanitize_css.schema.json +27 -0
- data/lib/ree_lib/packages/ree_text/schemas/ree_text/functions/sanitize_html.schema.json +35 -0
- data/lib/ree_lib/packages/ree_text/schemas/ree_text/functions/save_list_sanitizer.schema.json +24 -0
- data/lib/ree_lib/packages/ree_text/schemas/ree_text/functions/simple_format.schema.json +54 -0
- data/lib/ree_lib/packages/ree_text/schemas/ree_text/functions/strip_links.schema.json +27 -0
- data/lib/ree_lib/packages/ree_text/schemas/ree_text/functions/strip_tags.schema.json +34 -0
- data/lib/ree_lib/packages/ree_text/schemas/ree_text/functions/to_sentence.schema.json +58 -0
- data/lib/ree_lib/packages/ree_text/schemas/ree_text/functions/unescape_html.schema.json +27 -0
- data/lib/ree_lib/packages/ree_text/schemas/ree_text/functions/word_wrap.schema.json +31 -0
- data/lib/ree_lib/packages/ree_text/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_text/spec/ree_text/functions/escape_html_spec.rb +19 -0
- data/lib/ree_lib/packages/ree_text/spec/ree_text/functions/escape_javascript_spec.rb +23 -0
- data/lib/ree_lib/packages/ree_text/spec/ree_text/functions/excerpt_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_text/spec/ree_text/functions/highlight_spec.rb +40 -0
- data/lib/ree_lib/packages/ree_text/spec/ree_text/functions/safe_join_spec.rb +13 -0
- data/lib/ree_lib/packages/ree_text/spec/ree_text/functions/sanitize_css_spec.rb +11 -0
- data/lib/ree_lib/packages/ree_text/spec/ree_text/functions/sanitize_html_spec.rb +78 -0
- data/lib/ree_lib/packages/ree_text/spec/ree_text/functions/simple_format_spec.rb +29 -0
- data/lib/ree_lib/packages/ree_text/spec/ree_text/functions/strip_links_spec.rb +21 -0
- data/lib/ree_lib/packages/ree_text/spec/ree_text/functions/strip_tags_spec.rb +38 -0
- data/lib/ree_lib/packages/ree_text/spec/ree_text/functions/to_sentence_spec.rb +22 -0
- data/lib/ree_lib/packages/ree_text/spec/ree_text/functions/unescape_html_spec.rb +9 -0
- data/lib/ree_lib/packages/ree_text/spec/ree_text/functions/word_wrap_spec.rb +21 -0
- data/lib/ree_lib/packages/ree_text/spec/spec_helper.rb +3 -0
- data/lib/ree_lib/packages/ree_validator/.gitignore +0 -0
- data/lib/ree_lib/packages/ree_validator/.rspec +2 -0
- data/lib/ree_lib/packages/ree_validator/Package.schema.json +58 -0
- data/lib/ree_lib/packages/ree_validator/bin/console +5 -0
- data/lib/ree_lib/packages/ree_validator/package/ree_validator/functions/validate_email.rb +63 -0
- data/lib/ree_lib/packages/ree_validator/package/ree_validator/functions/validate_exclusion.rb +32 -0
- data/lib/ree_lib/packages/ree_validator/package/ree_validator/functions/validate_inclusion.rb +32 -0
- data/lib/ree_lib/packages/ree_validator/package/ree_validator/functions/validate_length.rb +75 -0
- data/lib/ree_lib/packages/ree_validator/package/ree_validator/functions/validate_paging.rb +73 -0
- data/lib/ree_lib/packages/ree_validator/package/ree_validator/functions/validate_password.rb +129 -0
- data/lib/ree_lib/packages/ree_validator/package/ree_validator/functions/validate_presence.rb +32 -0
- data/lib/ree_lib/packages/ree_validator/package/ree_validator/functions/validate_regexp.rb +32 -0
- data/lib/ree_lib/packages/ree_validator/package/ree_validator/functions/validate_url.rb +75 -0
- data/lib/ree_lib/packages/ree_validator/package/ree_validator/locales/en.yml +34 -0
- data/lib/ree_lib/packages/ree_validator/package/ree_validator/locales/ru.yml +34 -0
- data/lib/ree_lib/packages/ree_validator/package/ree_validator.rb +13 -0
- data/lib/ree_lib/packages/ree_validator/schemas/ree_validator/functions/validate_email.schema.json +38 -0
- data/lib/ree_lib/packages/ree_validator/schemas/ree_validator/functions/validate_exclusion.schema.json +42 -0
- data/lib/ree_lib/packages/ree_validator/schemas/ree_validator/functions/validate_inclusion.schema.json +42 -0
- data/lib/ree_lib/packages/ree_validator/schemas/ree_validator/functions/validate_length.schema.json +42 -0
- data/lib/ree_lib/packages/ree_validator/schemas/ree_validator/functions/validate_paging.schema.json +54 -0
- data/lib/ree_lib/packages/ree_validator/schemas/ree_validator/functions/validate_password.schema.json +50 -0
- data/lib/ree_lib/packages/ree_validator/schemas/ree_validator/functions/validate_presence.schema.json +46 -0
- data/lib/ree_lib/packages/ree_validator/schemas/ree_validator/functions/validate_regexp.schema.json +42 -0
- data/lib/ree_lib/packages/ree_validator/schemas/ree_validator/functions/validate_url.schema.json +42 -0
- data/lib/ree_lib/packages/ree_validator/spec/package_schema_spec.rb +14 -0
- data/lib/ree_lib/packages/ree_validator/spec/ree_validator/functions/locales/fr.yml +4 -0
- data/lib/ree_lib/packages/ree_validator/spec/ree_validator/functions/validate_email_spec.rb +23 -0
- data/lib/ree_lib/packages/ree_validator/spec/ree_validator/functions/validate_exclusion_spec.rb +39 -0
- data/lib/ree_lib/packages/ree_validator/spec/ree_validator/functions/validate_inclusion_spec.rb +39 -0
- data/lib/ree_lib/packages/ree_validator/spec/ree_validator/functions/validate_length_spec.rb +48 -0
- data/lib/ree_lib/packages/ree_validator/spec/ree_validator/functions/validate_paging_spec.rb +73 -0
- data/lib/ree_lib/packages/ree_validator/spec/ree_validator/functions/validate_password_spec.rb +85 -0
- data/lib/ree_lib/packages/ree_validator/spec/ree_validator/functions/validate_presence_spec.rb +55 -0
- data/lib/ree_lib/packages/ree_validator/spec/ree_validator/functions/validate_regexp_spec.rb +29 -0
- data/lib/ree_lib/packages/ree_validator/spec/ree_validator/functions/validate_url_spec.rb +61 -0
- data/lib/ree_lib/packages/ree_validator/spec/spec_helper.rb +3 -0
- data/lib/ree_lib/ree.setup.rb +7 -0
- data/lib/ree_lib/spec.init.rb +14 -0
- data/lib/ree_lib/version.rb +5 -0
- data/lib/ree_lib.rb +12 -0
- data/sig/ree_lib.rbs +4 -0
- metadata +1270 -0
@@ -0,0 +1,105 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
class ReeSwagger::BuildEndpointSchema
|
4
|
+
include Ree::FnDSL
|
5
|
+
|
6
|
+
fn :build_endpoint_schema do
|
7
|
+
link :build_parameters
|
8
|
+
link :build_request_body_schema
|
9
|
+
link :build_serializer_schema
|
10
|
+
link 'ree_swagger/dto/endpoint_dto', -> { EndpointDto }
|
11
|
+
link 'ree_swagger/dto/path_dto', -> { PathDto }
|
12
|
+
end
|
13
|
+
|
14
|
+
METHODS_WITH_BODY = [:post, :put, :patch].freeze
|
15
|
+
MissingCasterError = Class.new(StandardError)
|
16
|
+
|
17
|
+
contract(EndpointDto => ReeSwagger::PathDto)
|
18
|
+
def call(endpoint)
|
19
|
+
path_params = []
|
20
|
+
|
21
|
+
path = endpoint.path
|
22
|
+
.split('/')
|
23
|
+
.map {
|
24
|
+
if _1.start_with?(':')
|
25
|
+
path_param = _1[1..-1]
|
26
|
+
path_params << path_param.to_sym
|
27
|
+
"{#{path_param}}"
|
28
|
+
else
|
29
|
+
_1
|
30
|
+
end
|
31
|
+
}
|
32
|
+
.join('/')
|
33
|
+
|
34
|
+
missed_caster = path_params - endpoint.caster&.fields&.keys.to_a
|
35
|
+
|
36
|
+
if missed_caster.any?
|
37
|
+
raise MissingCasterError, "missing caster for path parameters #{missed_caster.inspect}"
|
38
|
+
end
|
39
|
+
|
40
|
+
if endpoint.caster && METHODS_WITH_BODY.include?(endpoint.method)
|
41
|
+
parameters = build_parameters(endpoint.caster, path_params, false)
|
42
|
+
|
43
|
+
request_body_schema = build_request_body_schema(
|
44
|
+
endpoint.caster,
|
45
|
+
path_params
|
46
|
+
)
|
47
|
+
|
48
|
+
request_body = request_body_schema && {
|
49
|
+
content: {
|
50
|
+
:'application/json' => {
|
51
|
+
schema: request_body_schema
|
52
|
+
}
|
53
|
+
}
|
54
|
+
}
|
55
|
+
elsif endpoint.caster
|
56
|
+
parameters = build_parameters(endpoint.caster, path_params, true)
|
57
|
+
end
|
58
|
+
|
59
|
+
request_body =
|
60
|
+
if endpoint.caster && METHODS_WITH_BODY.include?(endpoint.method)
|
61
|
+
request_body_schema = build_request_body_schema(
|
62
|
+
endpoint.caster,
|
63
|
+
path_params
|
64
|
+
)
|
65
|
+
|
66
|
+
request_body_schema && {
|
67
|
+
content: {
|
68
|
+
:'application/json' => {
|
69
|
+
schema: request_body_schema
|
70
|
+
}
|
71
|
+
}
|
72
|
+
}
|
73
|
+
end
|
74
|
+
|
75
|
+
response_schema = {
|
76
|
+
description: endpoint.response_description || ''
|
77
|
+
}
|
78
|
+
|
79
|
+
if endpoint.serializer
|
80
|
+
response_schema[:content] = {
|
81
|
+
:'application/json' => {
|
82
|
+
schema: build_serializer_schema(endpoint.serializer)
|
83
|
+
}
|
84
|
+
}
|
85
|
+
end
|
86
|
+
|
87
|
+
responses = {
|
88
|
+
endpoint.response_status => response_schema
|
89
|
+
}
|
90
|
+
|
91
|
+
method_schema = {
|
92
|
+
responses: responses
|
93
|
+
}
|
94
|
+
|
95
|
+
method_schema[:parameters] = parameters if parameters
|
96
|
+
method_schema[:requestBody] = request_body if request_body
|
97
|
+
|
98
|
+
schema = {endpoint.method => method_schema}
|
99
|
+
|
100
|
+
ReeSwagger::PathDto.new(
|
101
|
+
path: path,
|
102
|
+
schema: schema
|
103
|
+
)
|
104
|
+
end
|
105
|
+
end
|
@@ -0,0 +1,48 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
class ReeSwagger::BuildParameters
|
4
|
+
include Ree::FnDSL
|
5
|
+
|
6
|
+
fn :build_parameters do
|
7
|
+
link :get_caster_definition
|
8
|
+
link :build_request_body_schema
|
9
|
+
end
|
10
|
+
|
11
|
+
ObjectPathParamError = Class.new(StandardError)
|
12
|
+
ArrayPathParamError = Class.new(StandardError)
|
13
|
+
|
14
|
+
contract(ReeMapper::Mapper, ArrayOf[Symbol], Bool => ArrayOf[Hash])
|
15
|
+
def call(mapper, path_params, with_query_params)
|
16
|
+
mapper.fields.filter_map do |_name, field|
|
17
|
+
is_path_param = path_params.include?(field.name)
|
18
|
+
|
19
|
+
next unless is_path_param || with_query_params
|
20
|
+
|
21
|
+
if is_path_param
|
22
|
+
if field.type.type.nil?
|
23
|
+
raise ObjectPathParamError, "path parameter(#{
|
24
|
+
field.name
|
25
|
+
}) can not be an object"
|
26
|
+
end
|
27
|
+
|
28
|
+
if field.type.type.is_a?(ReeMapper::Array)
|
29
|
+
raise ArrayPathParamError, "path parameter(#{
|
30
|
+
field.name
|
31
|
+
}) can not be an array"
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
schema = {
|
36
|
+
name: field.name_as_str,
|
37
|
+
in: is_path_param ? 'path' : 'query',
|
38
|
+
required: is_path_param || !field.optional,
|
39
|
+
schema: build_request_body_schema(field.type) || {}
|
40
|
+
}
|
41
|
+
|
42
|
+
schema[:style] = 'deepObject' if field.type.type.nil?
|
43
|
+
schema[:nullable] = true if field.null
|
44
|
+
|
45
|
+
schema
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
data/lib/ree_lib/packages/ree_swagger/package/ree_swagger/functions/build_request_body_schema.rb
ADDED
@@ -0,0 +1,43 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
class ReeSwagger::BuildRequestBodySchema
|
4
|
+
include Ree::FnDSL
|
5
|
+
|
6
|
+
fn :build_request_body_schema do
|
7
|
+
link :get_caster_definition
|
8
|
+
end
|
9
|
+
|
10
|
+
contract(
|
11
|
+
ReeMapper::Mapper,
|
12
|
+
ArrayOf[Symbol] => Nilor[Hash]
|
13
|
+
)
|
14
|
+
def call(mapper, path_params = [])
|
15
|
+
if mapper.type
|
16
|
+
return get_caster_definition(mapper.type, method(:call).to_proc)
|
17
|
+
end
|
18
|
+
|
19
|
+
properties = mapper.fields.each_with_object({}) do |(_name, field), acc|
|
20
|
+
next if path_params.include?(field.name)
|
21
|
+
|
22
|
+
swagger_field = {}
|
23
|
+
|
24
|
+
field_mapper = field.type
|
25
|
+
swagger_type = call(field_mapper)
|
26
|
+
swagger_field.merge!(swagger_type) if swagger_type
|
27
|
+
|
28
|
+
description = field.doc
|
29
|
+
swagger_field[:description] = description if description
|
30
|
+
|
31
|
+
swagger_field[:nullable] = true if field.null
|
32
|
+
|
33
|
+
acc[field.name] = swagger_field
|
34
|
+
end
|
35
|
+
|
36
|
+
return if properties.empty?
|
37
|
+
|
38
|
+
{
|
39
|
+
type: 'object',
|
40
|
+
properties: properties
|
41
|
+
}
|
42
|
+
end
|
43
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
class ReeSwagger::BuildSchema
|
4
|
+
include Ree::FnDSL
|
5
|
+
|
6
|
+
fn :build_schema do
|
7
|
+
link :build_endpoint_schema
|
8
|
+
link 'ree_swagger/dto/endpoint_dto', -> { EndpointDto }
|
9
|
+
end
|
10
|
+
|
11
|
+
contract(String, String, String, ArrayOf[EndpointDto] => Hash)
|
12
|
+
def call(title:, description:, version:, endpoints:)
|
13
|
+
{
|
14
|
+
openapi: "3.0.0",
|
15
|
+
info: {
|
16
|
+
title: title,
|
17
|
+
description: description,
|
18
|
+
version: version
|
19
|
+
},
|
20
|
+
paths: endpoints.each_with_object(Hash.new { _1[_2] = {} }) {
|
21
|
+
path_dto = build_endpoint_schema(_1)
|
22
|
+
_2[path_dto.path].merge!(path_dto.schema)
|
23
|
+
}
|
24
|
+
}
|
25
|
+
end
|
26
|
+
end
|
data/lib/ree_lib/packages/ree_swagger/package/ree_swagger/functions/build_serializer_schema.rb
ADDED
@@ -0,0 +1,36 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
class ReeSwagger::BuildSerializerSchema
|
4
|
+
include Ree::FnDSL
|
5
|
+
|
6
|
+
fn :build_serializer_schema do
|
7
|
+
link :get_serializer_definition
|
8
|
+
end
|
9
|
+
|
10
|
+
contract(ReeMapper::Mapper => Nilor[Hash])
|
11
|
+
def call(mapper)
|
12
|
+
if mapper.type
|
13
|
+
return get_serializer_definition(mapper.type, method(:call).to_proc)
|
14
|
+
end
|
15
|
+
|
16
|
+
properties = mapper.fields.each_with_object({}) do |(_name, field), acc|
|
17
|
+
swagger_field = {}
|
18
|
+
|
19
|
+
field_mapper = field.type
|
20
|
+
swagger_type = call(field_mapper)
|
21
|
+
swagger_field.merge!(swagger_type) if swagger_type
|
22
|
+
|
23
|
+
description = field.doc
|
24
|
+
swagger_field[:description] = description if description
|
25
|
+
|
26
|
+
swagger_field[:nullable] = true if field.null
|
27
|
+
|
28
|
+
acc[field.name] = swagger_field
|
29
|
+
end
|
30
|
+
|
31
|
+
{
|
32
|
+
type: 'object',
|
33
|
+
properties: properties
|
34
|
+
}
|
35
|
+
end
|
36
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
class ReeSwagger::GetCasterDefinition
|
4
|
+
include Ree::FnDSL
|
5
|
+
|
6
|
+
fn :get_caster_definition do
|
7
|
+
link :type_definitions_repo
|
8
|
+
end
|
9
|
+
|
10
|
+
contract(Any, Proc => Nilor[Hash])
|
11
|
+
def call(type, schema_builder)
|
12
|
+
type_definitions_repo
|
13
|
+
.dig(:casters, type.class.name)
|
14
|
+
&.(type, schema_builder)
|
15
|
+
end
|
16
|
+
end
|
data/lib/ree_lib/packages/ree_swagger/package/ree_swagger/functions/get_serializer_definition.rb
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
class ReeSwagger::GetSerializerDefinition
|
4
|
+
include Ree::FnDSL
|
5
|
+
|
6
|
+
fn :get_serializer_definition do
|
7
|
+
link :type_definitions_repo
|
8
|
+
end
|
9
|
+
|
10
|
+
contract(Any, Proc => Nilor[Hash])
|
11
|
+
def call(type, build_serializer_schema)
|
12
|
+
type_definitions_repo
|
13
|
+
.dig(:serializers, type.class.name)
|
14
|
+
&.(type, build_serializer_schema)
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
class ReeSwagger::RegisterType
|
4
|
+
include Ree::FnDSL
|
5
|
+
|
6
|
+
fn :register_type do
|
7
|
+
link :type_definitions_repo
|
8
|
+
end
|
9
|
+
|
10
|
+
SEMAPHORE = Mutex.new
|
11
|
+
|
12
|
+
contract(Or[:casters, :serializers], Any, Proc => nil)
|
13
|
+
def call(kind, type, definition)
|
14
|
+
SEMAPHORE.synchronize do
|
15
|
+
type_definitions_repo[kind][type.name] = definition
|
16
|
+
end
|
17
|
+
|
18
|
+
nil
|
19
|
+
end
|
20
|
+
end
|
data/lib/ree_lib/packages/ree_swagger/schemas/ree_swagger/beans/type_definitions_repo.schema.json
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
{
|
2
|
+
"schema_type": "object",
|
3
|
+
"ree_version": "1.0.1",
|
4
|
+
"name": "type_definitions_repo",
|
5
|
+
"path": "packages/ree_swagger/package/ree_swagger/beans/type_definitions_repo.rb",
|
6
|
+
"mount_as": "object",
|
7
|
+
"class": "ReeSwagger::TypeDefinitionsRepo",
|
8
|
+
"factory": "build",
|
9
|
+
"methods": [
|
10
|
+
|
11
|
+
],
|
12
|
+
"links": [
|
13
|
+
|
14
|
+
]
|
15
|
+
}
|
@@ -0,0 +1,50 @@
|
|
1
|
+
{
|
2
|
+
"schema_type": "object",
|
3
|
+
"ree_version": "1.0.1",
|
4
|
+
"name": "build_endpoint_schema",
|
5
|
+
"path": "packages/ree_swagger/package/ree_swagger/functions/build_endpoint_schema.rb",
|
6
|
+
"mount_as": "fn",
|
7
|
+
"class": "ReeSwagger::BuildEndpointSchema",
|
8
|
+
"factory": null,
|
9
|
+
"methods": [
|
10
|
+
{
|
11
|
+
"doc": "",
|
12
|
+
"throws": [
|
13
|
+
|
14
|
+
],
|
15
|
+
"return": "ReeSwagger::PathDto",
|
16
|
+
"args": [
|
17
|
+
{
|
18
|
+
"arg": "endpoint",
|
19
|
+
"type": "ReeSwagger::EndpointDto"
|
20
|
+
}
|
21
|
+
]
|
22
|
+
}
|
23
|
+
],
|
24
|
+
"links": [
|
25
|
+
{
|
26
|
+
"target": "build_parameters",
|
27
|
+
"package_name": "ree_swagger",
|
28
|
+
"as": "build_parameters",
|
29
|
+
"imports": [
|
30
|
+
|
31
|
+
]
|
32
|
+
},
|
33
|
+
{
|
34
|
+
"target": "build_request_body_schema",
|
35
|
+
"package_name": "ree_swagger",
|
36
|
+
"as": "build_request_body_schema",
|
37
|
+
"imports": [
|
38
|
+
|
39
|
+
]
|
40
|
+
},
|
41
|
+
{
|
42
|
+
"target": "build_serializer_schema",
|
43
|
+
"package_name": "ree_swagger",
|
44
|
+
"as": "build_serializer_schema",
|
45
|
+
"imports": [
|
46
|
+
|
47
|
+
]
|
48
|
+
}
|
49
|
+
]
|
50
|
+
}
|
data/lib/ree_lib/packages/ree_swagger/schemas/ree_swagger/functions/build_parameters.schema.json
ADDED
@@ -0,0 +1,50 @@
|
|
1
|
+
{
|
2
|
+
"schema_type": "object",
|
3
|
+
"ree_version": "1.0.1",
|
4
|
+
"name": "build_parameters",
|
5
|
+
"path": "packages/ree_swagger/package/ree_swagger/functions/build_parameters.rb",
|
6
|
+
"mount_as": "fn",
|
7
|
+
"class": "ReeSwagger::BuildParameters",
|
8
|
+
"factory": null,
|
9
|
+
"methods": [
|
10
|
+
{
|
11
|
+
"doc": "",
|
12
|
+
"throws": [
|
13
|
+
|
14
|
+
],
|
15
|
+
"return": "ArrayOf[Hash]",
|
16
|
+
"args": [
|
17
|
+
{
|
18
|
+
"arg": "mapper",
|
19
|
+
"type": "ReeMapper::Mapper"
|
20
|
+
},
|
21
|
+
{
|
22
|
+
"arg": "path_params",
|
23
|
+
"type": "ArrayOf[Symbol]"
|
24
|
+
},
|
25
|
+
{
|
26
|
+
"arg": "with_query_params",
|
27
|
+
"type": "Bool"
|
28
|
+
}
|
29
|
+
]
|
30
|
+
}
|
31
|
+
],
|
32
|
+
"links": [
|
33
|
+
{
|
34
|
+
"target": "build_request_body_schema",
|
35
|
+
"package_name": "ree_swagger",
|
36
|
+
"as": "build_request_body_schema",
|
37
|
+
"imports": [
|
38
|
+
|
39
|
+
]
|
40
|
+
},
|
41
|
+
{
|
42
|
+
"target": "get_caster_definition",
|
43
|
+
"package_name": "ree_swagger",
|
44
|
+
"as": "get_caster_definition",
|
45
|
+
"imports": [
|
46
|
+
|
47
|
+
]
|
48
|
+
}
|
49
|
+
]
|
50
|
+
}
|
@@ -0,0 +1,38 @@
|
|
1
|
+
{
|
2
|
+
"schema_type": "object",
|
3
|
+
"ree_version": "1.0.1",
|
4
|
+
"name": "build_request_body_schema",
|
5
|
+
"path": "packages/ree_swagger/package/ree_swagger/functions/build_request_body_schema.rb",
|
6
|
+
"mount_as": "fn",
|
7
|
+
"class": "ReeSwagger::BuildRequestBodySchema",
|
8
|
+
"factory": null,
|
9
|
+
"methods": [
|
10
|
+
{
|
11
|
+
"doc": "",
|
12
|
+
"throws": [
|
13
|
+
|
14
|
+
],
|
15
|
+
"return": "Nilor[Hash]",
|
16
|
+
"args": [
|
17
|
+
{
|
18
|
+
"arg": "mapper",
|
19
|
+
"type": "ReeMapper::Mapper"
|
20
|
+
},
|
21
|
+
{
|
22
|
+
"arg": "path_params",
|
23
|
+
"type": "ArrayOf[Symbol]"
|
24
|
+
}
|
25
|
+
]
|
26
|
+
}
|
27
|
+
],
|
28
|
+
"links": [
|
29
|
+
{
|
30
|
+
"target": "get_caster_definition",
|
31
|
+
"package_name": "ree_swagger",
|
32
|
+
"as": "get_caster_definition",
|
33
|
+
"imports": [
|
34
|
+
|
35
|
+
]
|
36
|
+
}
|
37
|
+
]
|
38
|
+
}
|
@@ -0,0 +1,46 @@
|
|
1
|
+
{
|
2
|
+
"schema_type": "object",
|
3
|
+
"ree_version": "1.0.1",
|
4
|
+
"name": "build_schema",
|
5
|
+
"path": "packages/ree_swagger/package/ree_swagger/functions/build_schema.rb",
|
6
|
+
"mount_as": "fn",
|
7
|
+
"class": "ReeSwagger::BuildSchema",
|
8
|
+
"factory": null,
|
9
|
+
"methods": [
|
10
|
+
{
|
11
|
+
"doc": "",
|
12
|
+
"throws": [
|
13
|
+
|
14
|
+
],
|
15
|
+
"return": "Hash",
|
16
|
+
"args": [
|
17
|
+
{
|
18
|
+
"arg": "title",
|
19
|
+
"type": "String"
|
20
|
+
},
|
21
|
+
{
|
22
|
+
"arg": "description",
|
23
|
+
"type": "String"
|
24
|
+
},
|
25
|
+
{
|
26
|
+
"arg": "version",
|
27
|
+
"type": "String"
|
28
|
+
},
|
29
|
+
{
|
30
|
+
"arg": "endpoints",
|
31
|
+
"type": "ArrayOf[ReeSwagger::EndpointDto]"
|
32
|
+
}
|
33
|
+
]
|
34
|
+
}
|
35
|
+
],
|
36
|
+
"links": [
|
37
|
+
{
|
38
|
+
"target": "build_endpoint_schema",
|
39
|
+
"package_name": "ree_swagger",
|
40
|
+
"as": "build_endpoint_schema",
|
41
|
+
"imports": [
|
42
|
+
|
43
|
+
]
|
44
|
+
}
|
45
|
+
]
|
46
|
+
}
|
@@ -0,0 +1,34 @@
|
|
1
|
+
{
|
2
|
+
"schema_type": "object",
|
3
|
+
"ree_version": "1.0.1",
|
4
|
+
"name": "build_serializer_schema",
|
5
|
+
"path": "packages/ree_swagger/package/ree_swagger/functions/build_serializer_schema.rb",
|
6
|
+
"mount_as": "fn",
|
7
|
+
"class": "ReeSwagger::BuildSerializerSchema",
|
8
|
+
"factory": null,
|
9
|
+
"methods": [
|
10
|
+
{
|
11
|
+
"doc": "",
|
12
|
+
"throws": [
|
13
|
+
|
14
|
+
],
|
15
|
+
"return": "Nilor[Hash]",
|
16
|
+
"args": [
|
17
|
+
{
|
18
|
+
"arg": "mapper",
|
19
|
+
"type": "ReeMapper::Mapper"
|
20
|
+
}
|
21
|
+
]
|
22
|
+
}
|
23
|
+
],
|
24
|
+
"links": [
|
25
|
+
{
|
26
|
+
"target": "get_serializer_definition",
|
27
|
+
"package_name": "ree_swagger",
|
28
|
+
"as": "get_serializer_definition",
|
29
|
+
"imports": [
|
30
|
+
|
31
|
+
]
|
32
|
+
}
|
33
|
+
]
|
34
|
+
}
|
@@ -0,0 +1,38 @@
|
|
1
|
+
{
|
2
|
+
"schema_type": "object",
|
3
|
+
"ree_version": "1.0.1",
|
4
|
+
"name": "get_caster_definition",
|
5
|
+
"path": "packages/ree_swagger/package/ree_swagger/functions/get_caster_definition.rb",
|
6
|
+
"mount_as": "fn",
|
7
|
+
"class": "ReeSwagger::GetCasterDefinition",
|
8
|
+
"factory": null,
|
9
|
+
"methods": [
|
10
|
+
{
|
11
|
+
"doc": "",
|
12
|
+
"throws": [
|
13
|
+
|
14
|
+
],
|
15
|
+
"return": "Nilor[Hash]",
|
16
|
+
"args": [
|
17
|
+
{
|
18
|
+
"arg": "type",
|
19
|
+
"type": "Any"
|
20
|
+
},
|
21
|
+
{
|
22
|
+
"arg": "schema_builder",
|
23
|
+
"type": "Proc"
|
24
|
+
}
|
25
|
+
]
|
26
|
+
}
|
27
|
+
],
|
28
|
+
"links": [
|
29
|
+
{
|
30
|
+
"target": "type_definitions_repo",
|
31
|
+
"package_name": "ree_swagger",
|
32
|
+
"as": "type_definitions_repo",
|
33
|
+
"imports": [
|
34
|
+
|
35
|
+
]
|
36
|
+
}
|
37
|
+
]
|
38
|
+
}
|
@@ -0,0 +1,38 @@
|
|
1
|
+
{
|
2
|
+
"schema_type": "object",
|
3
|
+
"ree_version": "1.0.1",
|
4
|
+
"name": "get_serializer_definition",
|
5
|
+
"path": "packages/ree_swagger/package/ree_swagger/functions/get_serializer_definition.rb",
|
6
|
+
"mount_as": "fn",
|
7
|
+
"class": "ReeSwagger::GetSerializerDefinition",
|
8
|
+
"factory": null,
|
9
|
+
"methods": [
|
10
|
+
{
|
11
|
+
"doc": "",
|
12
|
+
"throws": [
|
13
|
+
|
14
|
+
],
|
15
|
+
"return": "Nilor[Hash]",
|
16
|
+
"args": [
|
17
|
+
{
|
18
|
+
"arg": "type",
|
19
|
+
"type": "Any"
|
20
|
+
},
|
21
|
+
{
|
22
|
+
"arg": "build_serializer_schema",
|
23
|
+
"type": "Proc"
|
24
|
+
}
|
25
|
+
]
|
26
|
+
}
|
27
|
+
],
|
28
|
+
"links": [
|
29
|
+
{
|
30
|
+
"target": "type_definitions_repo",
|
31
|
+
"package_name": "ree_swagger",
|
32
|
+
"as": "type_definitions_repo",
|
33
|
+
"imports": [
|
34
|
+
|
35
|
+
]
|
36
|
+
}
|
37
|
+
]
|
38
|
+
}
|
@@ -0,0 +1,42 @@
|
|
1
|
+
{
|
2
|
+
"schema_type": "object",
|
3
|
+
"ree_version": "1.0.1",
|
4
|
+
"name": "register_type",
|
5
|
+
"path": "packages/ree_swagger/package/ree_swagger/functions/register_type.rb",
|
6
|
+
"mount_as": "fn",
|
7
|
+
"class": "ReeSwagger::RegisterType",
|
8
|
+
"factory": null,
|
9
|
+
"methods": [
|
10
|
+
{
|
11
|
+
"doc": "",
|
12
|
+
"throws": [
|
13
|
+
|
14
|
+
],
|
15
|
+
"return": "Any",
|
16
|
+
"args": [
|
17
|
+
{
|
18
|
+
"arg": "kind",
|
19
|
+
"type": "Or[casters, serializers...]"
|
20
|
+
},
|
21
|
+
{
|
22
|
+
"arg": "type",
|
23
|
+
"type": "Any"
|
24
|
+
},
|
25
|
+
{
|
26
|
+
"arg": "definition",
|
27
|
+
"type": "Proc"
|
28
|
+
}
|
29
|
+
]
|
30
|
+
}
|
31
|
+
],
|
32
|
+
"links": [
|
33
|
+
{
|
34
|
+
"target": "type_definitions_repo",
|
35
|
+
"package_name": "ree_swagger",
|
36
|
+
"as": "type_definitions_repo",
|
37
|
+
"imports": [
|
38
|
+
|
39
|
+
]
|
40
|
+
}
|
41
|
+
]
|
42
|
+
}
|