has_helpers 5.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (748) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +38 -0
  3. data/.rspec +3 -0
  4. data/.rubocop.yml +10 -0
  5. data/.ruby-gemset +1 -0
  6. data/.ruby-version +1 -0
  7. data/.tekton/Chart.yaml +14 -0
  8. data/.tekton/templates/pipelinerun.yaml +44 -0
  9. data/.tekton/values-main.yaml +53 -0
  10. data/.tekton/values-pr.yaml +40 -0
  11. data/.tekton/values.yaml +17 -0
  12. data/.tool-versions +1 -0
  13. data/CHANGELOG.md +204 -0
  14. data/Gemfile +25 -0
  15. data/README.md +76 -0
  16. data/Rakefile +46 -0
  17. data/app/api/has_helpers/rack_api.rb +116 -0
  18. data/app/api/has_helpers/search_api.rb +173 -0
  19. data/app/assets/stylesheets/has_helpers/base.scss +5 -0
  20. data/app/assets/stylesheets/has_helpers/color_palette.scss +33 -0
  21. data/app/assets/stylesheets/has_helpers/color_palettes/default.scss +11 -0
  22. data/app/assets/stylesheets/has_helpers/components/dataset.scss +43 -0
  23. data/app/assets/stylesheets/has_helpers/mixins.scss +149 -0
  24. data/app/commands/has_helpers/cards/available_cards_command.rb +98 -0
  25. data/app/commands/has_helpers/cards/card_data_command.rb +1062 -0
  26. data/app/commands/reports/base_options.rb +79 -0
  27. data/app/commands/reports/belongs_to_options.rb +178 -0
  28. data/app/commands/reports/constant_options.rb +66 -0
  29. data/app/commands/reports/external_graphql_client.rb +116 -0
  30. data/app/commands/reports/fill_dates.rb +65 -0
  31. data/app/commands/reports/filter_option_generator.rb +186 -0
  32. data/app/commands/reports/generator.rb +310 -0
  33. data/app/commands/reports/has_many_options.rb +105 -0
  34. data/app/commands/reports/importer.rb +132 -0
  35. data/app/commands/reports/nested_attribute_options.rb +134 -0
  36. data/app/constants/color.rb +9 -0
  37. data/app/constants/file_format.rb +12 -0
  38. data/app/constants/has_helpers/cards/card_custom_field.rb +12 -0
  39. data/app/constants/has_helpers/cards/card_data_type.rb +11 -0
  40. data/app/constants/has_helpers/cards/card_identifier.rb +10 -0
  41. data/app/constants/has_helpers/cards/card_layout_type.rb +11 -0
  42. data/app/constants/has_helpers/cards/card_variant_type.rb +12 -0
  43. data/app/constants/has_helpers/link_type.rb +10 -0
  44. data/app/constants/has_helpers/notification_alert_status.rb +14 -0
  45. data/app/constants/has_helpers/notification_alert_type.rb +10 -0
  46. data/app/constants/has_helpers/operation.rb +11 -0
  47. data/app/constants/has_helpers/resource_type.rb +25 -0
  48. data/app/constants/icon.rb +22 -0
  49. data/app/constants/logical_operator.rb +7 -0
  50. data/app/constants/option.rb +10 -0
  51. data/app/constants/time_zone.rb +12 -0
  52. data/app/constructors/has_helpers/base_constructor.rb +62 -0
  53. data/app/controllers/concerns/has_helpers/service_trust/authenticated_as_service.rb +51 -0
  54. data/app/controllers/concerns/has_helpers/service_trust/graphql_authentication.rb +57 -0
  55. data/app/controllers/has_helpers/controller.rb +63 -0
  56. data/app/controllers/has_helpers/factory_controller.rb +261 -0
  57. data/app/controllers/has_helpers/graphql_extensions.rb +83 -0
  58. data/app/controllers/has_helpers/health_check_controller.rb +46 -0
  59. data/app/controllers/has_helpers/search_extensions.rb +92 -0
  60. data/app/controllers/has_helpers/service_trust/jwks_controller.rb +20 -0
  61. data/app/controllers/has_helpers/xlsx_export.rb +115 -0
  62. data/app/controllers/search_extensions.rb +5 -0
  63. data/app/graphql/has_helpers/base_type.rb +13 -0
  64. data/app/graphql/has_helpers/base_union.rb +9 -0
  65. data/app/graphql/has_helpers/enums/resource_enum.rb +24 -0
  66. data/app/graphql/has_helpers/middleware/application_access.rb +26 -0
  67. data/app/graphql/has_helpers/mutations/base.rb +27 -0
  68. data/app/graphql/has_helpers/mutations/external_data_sync.rb +72 -0
  69. data/app/graphql/has_helpers/mutations/mark_individual_alert_read.rb +31 -0
  70. data/app/graphql/has_helpers/mutations/mark_notifications_read.rb +50 -0
  71. data/app/graphql/has_helpers/mutations/toggle_favorite.rb +39 -0
  72. data/app/graphql/has_helpers/resolvers/app_nav.rb +107 -0
  73. data/app/graphql/has_helpers/resolvers/base.rb +27 -0
  74. data/app/graphql/has_helpers/resolvers/cards/available_cards.rb +31 -0
  75. data/app/graphql/has_helpers/resolvers/cards/card_data.rb +74 -0
  76. data/app/graphql/has_helpers/resolvers/cards/hover_card_data.rb +153 -0
  77. data/app/graphql/has_helpers/resolvers/favorite.rb +62 -0
  78. data/app/graphql/has_helpers/resolvers/internal/roles.rb +54 -0
  79. data/app/graphql/has_helpers/resolvers/is_favorite.rb +24 -0
  80. data/app/graphql/has_helpers/resolvers/list_notification_alerts.rb +47 -0
  81. data/app/graphql/has_helpers/resolvers/lookup.rb +36 -0
  82. data/app/graphql/has_helpers/resolvers/recently_viewed.rb +54 -0
  83. data/app/graphql/has_helpers/resolvers/resource_tab.rb +22 -0
  84. data/app/graphql/has_helpers/resolvers/search.rb +18 -0
  85. data/app/graphql/has_helpers/resolvers/search_query.rb +38 -0
  86. data/app/graphql/has_helpers/resolvers/user_application_order.rb +35 -0
  87. data/app/graphql/has_helpers/resources/organization_option_resource.rb +28 -0
  88. data/app/graphql/has_helpers/resources/organization_resource_resource.rb +18 -0
  89. data/app/graphql/has_helpers/resources/resource_group_resource.rb +10 -0
  90. data/app/graphql/has_helpers/resources/resource_resource.rb +21 -0
  91. data/app/graphql/has_helpers/resources/user_role_resource.rb +9 -0
  92. data/app/graphql/has_helpers/types/application_order_type.rb +18 -0
  93. data/app/graphql/has_helpers/types/cards/available_card_type.rb +20 -0
  94. data/app/graphql/has_helpers/types/cards/card_badge_type.rb +12 -0
  95. data/app/graphql/has_helpers/types/cards/card_config_type.rb +18 -0
  96. data/app/graphql/has_helpers/types/cards/card_data_type.rb +13 -0
  97. data/app/graphql/has_helpers/types/cards/card_entry_field_type.rb +21 -0
  98. data/app/graphql/has_helpers/types/cards/card_entry_type.rb +12 -0
  99. data/app/graphql/has_helpers/types/cards/card_field_config_type.rb +17 -0
  100. data/app/graphql/has_helpers/types/layouts/app_nav/link_section_type.rb +17 -0
  101. data/app/graphql/has_helpers/types/layouts/app_nav/link_type.rb +20 -0
  102. data/app/graphql/has_helpers/types/layouts/app_nav/sub_link_type.rb +17 -0
  103. data/app/graphql/has_helpers/types/layouts/app_nav/type.rb +16 -0
  104. data/app/graphql/has_helpers/types/lookup.rb +16 -0
  105. data/app/graphql/has_helpers/types/resource_tab/type.rb +15 -0
  106. data/app/graphql/has_helpers/types/role_type.rb +13 -0
  107. data/app/graphql/has_helpers/types/search/detail_badge_type.rb +15 -0
  108. data/app/graphql/has_helpers/types/search/detail_item_type.rb +14 -0
  109. data/app/graphql/has_helpers/types/search/detail_type.rb +16 -0
  110. data/app/graphql/has_helpers/types/search/filter_operation_enum.rb +19 -0
  111. data/app/graphql/has_helpers/types/search/input_type.rb +16 -0
  112. data/app/graphql/has_helpers/types/search/result_type.rb +72 -0
  113. data/app/graphql/has_helpers/types/search/search_filter_input_type.rb +17 -0
  114. data/app/graphql/has_helpers/types/search/type.rb +17 -0
  115. data/app/importers/has_helpers/cards/importer.rb +1223 -0
  116. data/app/lib/has_helpers/application_helper.rb +21 -0
  117. data/app/lib/has_helpers/dn/processor.rb +55 -0
  118. data/app/lib/has_helpers/dn/refresh.rb +13 -0
  119. data/app/lib/has_helpers/dn/utils/backfill_utils.rb +80 -0
  120. data/app/lib/has_helpers/dn/utils/query_utils.rb +216 -0
  121. data/app/lib/has_helpers/feature.rb +88 -0
  122. data/app/lib/has_helpers/hq_exception.rb +18 -0
  123. data/app/lib/has_helpers/index.rb +890 -0
  124. data/app/lib/has_helpers/organization_merge.rb +128 -0
  125. data/app/lib/has_helpers/query/elasticsearch.rb +20 -0
  126. data/app/lib/has_helpers/query/provider.rb +105 -0
  127. data/app/lib/has_helpers/query/sql.rb +133 -0
  128. data/app/lib/has_helpers/query.rb +14 -0
  129. data/app/lib/has_helpers/search/elasticsearch.rb +41 -0
  130. data/app/lib/has_helpers/search/elasticsearch_shared.rb +70 -0
  131. data/app/lib/has_helpers/search/provider.rb +149 -0
  132. data/app/lib/has_helpers/search/search_utils.rb +74 -0
  133. data/app/lib/has_helpers/search/sql_search.rb +219 -0
  134. data/app/lib/has_helpers/search.rb +46 -0
  135. data/app/models/ability.rb +233 -0
  136. data/app/models/has_helpers/application.rb +47 -0
  137. data/app/models/has_helpers/application_record.rb +7 -0
  138. data/app/models/has_helpers/cards/card_builder/base.rb +74 -0
  139. data/app/models/has_helpers/cards/card_builder/card_definition_builder.rb +486 -0
  140. data/app/models/has_helpers/cards/card_builder/definition_context.rb +82 -0
  141. data/app/models/has_helpers/cards/card_builder/field_builder.rb +142 -0
  142. data/app/models/has_helpers/cards/card_builder/resource_builder.rb +34 -0
  143. data/app/models/has_helpers/cards/card_definition.rb +41 -0
  144. data/app/models/has_helpers/cards/card_definition_resource.rb +19 -0
  145. data/app/models/has_helpers/cards/card_field.rb +39 -0
  146. data/app/models/has_helpers/cards/registry.rb +115 -0
  147. data/app/models/has_helpers/cards/role_card_field.rb +28 -0
  148. data/app/models/has_helpers/cards/role_resource_card.rb +41 -0
  149. data/app/models/has_helpers/dn_utils.rb +61 -0
  150. data/app/models/has_helpers/favorite.rb +20 -0
  151. data/app/models/has_helpers/master_record.rb +18 -0
  152. data/app/models/has_helpers/notification_alert.rb +52 -0
  153. data/app/models/has_helpers/organization.rb +16 -0
  154. data/app/models/has_helpers/organization_link.rb +92 -0
  155. data/app/models/has_helpers/organization_methods.rb +62 -0
  156. data/app/models/has_helpers/organization_option.rb +31 -0
  157. data/app/models/has_helpers/organization_resource.rb +45 -0
  158. data/app/models/has_helpers/pending_db_operation.rb +31 -0
  159. data/app/models/has_helpers/recently_viewed.rb +34 -0
  160. data/app/models/has_helpers/reindex_queue.rb +43 -0
  161. data/app/models/has_helpers/resource.rb +38 -0
  162. data/app/models/has_helpers/resource_group.rb +15 -0
  163. data/app/models/has_helpers/restriction.rb +15 -0
  164. data/app/models/has_helpers/restriction_operation.rb +13 -0
  165. data/app/models/has_helpers/role.rb +20 -0
  166. data/app/models/has_helpers/service_trust/audit_log.rb +20 -0
  167. data/app/models/has_helpers/service_trust/key.rb +56 -0
  168. data/app/models/has_helpers/stat.rb +13 -0
  169. data/app/models/has_helpers/user.rb +18 -0
  170. data/app/models/has_helpers/user_methods.rb +184 -0
  171. data/app/models/has_helpers/user_organization.rb +33 -0
  172. data/app/models/has_helpers/user_role.rb +27 -0
  173. data/app/models/has_helpers/user_session.rb +19 -0
  174. data/app/presenters/has_helpers/barcode_base_presenter.rb +113 -0
  175. data/app/presenters/has_helpers/base_presenter.rb +100 -0
  176. data/app/presenters/has_helpers/cacheable_item.rb +28 -0
  177. data/app/presenters/has_helpers/item_presenter.rb +52 -0
  178. data/app/presenters/has_helpers/items_presenter.rb +33 -0
  179. data/app/presenters/has_helpers/resource/action_presenter.rb +8 -0
  180. data/app/presenters/has_helpers/resource/cell_presenter.rb +52 -0
  181. data/app/presenters/has_helpers/resource/email_presenter.rb +34 -0
  182. data/app/presenters/has_helpers/resource/form_presenter.rb +76 -0
  183. data/app/presenters/has_helpers/resource/info_collection_presenter.rb +33 -0
  184. data/app/presenters/has_helpers/resource/info_presenter.rb +34 -0
  185. data/app/presenters/has_helpers/resource/list_presenter.rb +120 -0
  186. data/app/presenters/has_helpers/resource/note_presenter.rb +14 -0
  187. data/app/presenters/has_helpers/resource/row_presenter.rb +25 -0
  188. data/app/presenters/has_helpers/resource/tag_presenter.rb +31 -0
  189. data/app/presenters/has_helpers/search_presenter.rb +230 -0
  190. data/app/triggers/has_helpers/erase_denormalized_belongs_to_column_trigger.rb +85 -0
  191. data/app/triggers/has_helpers/limit_favorites.rb +97 -0
  192. data/app/utils/has_helpers/redis_configurable.rb +79 -0
  193. data/app/utils/has_helpers/sync_utils.rb +234 -0
  194. data/app/views/has_helpers/actions/_action.html.erb +31 -0
  195. data/app/views/has_helpers/alerts/_alert.html.erb +3 -0
  196. data/app/views/has_helpers/barcodes.html.erb +36 -0
  197. data/app/views/has_helpers/containers/_container.html.erb +3 -0
  198. data/app/views/has_helpers/email_notifier/system.html.erb +8 -0
  199. data/app/views/has_helpers/email_notifier/system.text.erb +7 -0
  200. data/app/views/has_helpers/enumerables/_enumerable.html.erb +1 -0
  201. data/app/views/has_helpers/icons/_icon.html.erb +1 -0
  202. data/app/views/has_helpers/render_objects/_render_object.html.erb +1 -0
  203. data/app/views/has_helpers/services/_service.html.erb +1 -0
  204. data/app/views/has_helpers/text_nodes/_text_node.html.erb +4 -0
  205. data/app/views/has_helpers/ui_attributes/_html_attrs.html.erb +1 -0
  206. data/app/workers/elasticsearch_process_queue.rb +11 -0
  207. data/app/workers/elasticsearch_reindex.rb +11 -0
  208. data/app/workers/elasticsearch_reindex_scheduler.rb +35 -0
  209. data/app/workers/good_job/configurable_backfill.rb +64 -0
  210. data/app/workers/good_job/cron_denormalization_stats_manager.rb +39 -0
  211. data/app/workers/good_job/denormalization_stats_worker.rb +57 -0
  212. data/app/workers/good_job/dn_update_worker.rb +30 -0
  213. data/app/workers/good_job/dn_worker.rb +47 -0
  214. data/app/workers/good_job/elasticsearch_old_index_cleaner_worker.rb +113 -0
  215. data/app/workers/good_job/elasticsearch_on_finish_reindex.rb +26 -0
  216. data/app/workers/good_job/elasticsearch_process_batch.rb +78 -0
  217. data/app/workers/good_job/elasticsearch_process_change_logs_master_worker.rb +27 -0
  218. data/app/workers/good_job/elasticsearch_process_change_logs_worker.rb +155 -0
  219. data/app/workers/good_job/elasticsearch_process_queue.rb +50 -0
  220. data/app/workers/good_job/elasticsearch_reindex.rb +31 -0
  221. data/app/workers/has_helpers/cards/orphan_card_sweeper.rb +28 -0
  222. data/app/workers/has_helpers/db_operations/clean_stats_worker.rb +42 -0
  223. data/app/workers/has_helpers/db_operations/helper_worker.rb +131 -0
  224. data/app/workers/has_helpers/db_operations/main_worker.rb +164 -0
  225. data/app/workers/has_helpers/db_operations/operations.rb +134 -0
  226. data/app/workers/has_helpers/db_operations/update_operations_stats_resume_worker.rb +35 -0
  227. data/app/workers/has_helpers/default_worker.rb +17 -0
  228. data/app/workers/has_helpers/good_job/notification_alert_cleanup_worker.rb +43 -0
  229. data/app/workers/has_helpers/service_trust/audit_log_cleanup_worker.rb +19 -0
  230. data/app/workers/sidekiq/elasticsearch_old_index_cleaner_worker.rb +112 -0
  231. data/app/workers/sidekiq/elasticsearch_process_batch.rb +87 -0
  232. data/app/workers/sidekiq/elasticsearch_process_queue.rb +40 -0
  233. data/app/workers/sidekiq/elasticsearch_reindex.rb +53 -0
  234. data/config/initializers/action_view.rb +7 -0
  235. data/config/initializers/inflections.rb +24 -0
  236. data/config/initializers/marginalia.rb +8 -0
  237. data/config/initializers/mime_types.rb +6 -0
  238. data/config/initializers/opentelemetry.rb +12 -0
  239. data/config/initializers/redis_conf.rb +40 -0
  240. data/config/initializers/searchkick.rb +9 -0
  241. data/config/initializers/will_paginate.rb +39 -0
  242. data/config/redis.yml +12 -0
  243. data/config/routes.rb +27 -0
  244. data/config/service_trust_routes.rb +5 -0
  245. data/config.ru +9 -0
  246. data/db/migrate/20230127194725_create_organization_table.rb +25 -0
  247. data/db/migrate/20230127194726_validate_organization_foreign_keys.rb +7 -0
  248. data/db/migrate/20230206141413_create_security_models.rb +42 -0
  249. data/db/migrate/20230206141513_create_restriction_model.rb +20 -0
  250. data/db/migrate/20230206142613_add_security_indexes.rb +14 -0
  251. data/db/migrate/20230206143513_security_model_constants_seed.rb +8 -0
  252. data/db/migrate/20230206161513_add_organization_to_security_models.rb +13 -0
  253. data/db/migrate/20230209121019_create_search_group_models.rb +36 -0
  254. data/db/migrate/20230209122919_add_search_group_indexes.rb +21 -0
  255. data/db/migrate/20230209181832_add_search_group_resources_type_constraint_trigger.rb +61 -0
  256. data/db/migrate/20230313220337_create_table_user_sessions.rb +31 -0
  257. data/db/migrate/20230517141106_update_resource_types.rb +12 -0
  258. data/db/migrate/20230518194611_add_resources_contraints.rb +17 -0
  259. data/db/migrate/20230518194642_create_nested_resource_model.rb +21 -0
  260. data/db/migrate/20230518194645_validate_security_models_constraints.rb +23 -0
  261. data/db/migrate/20230608125037_add_inactive_field_to_user_sessions.rb +7 -0
  262. data/db/migrate/20230919191525_add_parent_id_to_resources.rb +8 -0
  263. data/db/migrate/20230919191535_validate_parent_id_fk_resources.rb +7 -0
  264. data/db/migrate/20230919210456_drop_nested_resources.rb +7 -0
  265. data/db/migrate/20231222135620_add_user_role.rb +19 -0
  266. data/db/migrate/20240108172021_create_favorites_table.rb +20 -0
  267. data/db/migrate/20240108190209_create_organization_link_table_if_doesnt_exists.rb +31 -0
  268. data/db/migrate/20240109211445_validate_fks_org_links.rb +9 -0
  269. data/db/migrate/20240110135440_create_recently_vieweds.rb +20 -0
  270. data/db/migrate/20240112185312_link_type_options_seed.rb +7 -0
  271. data/db/migrate/20240116173201_organization_link_resource_tab_constraints.rb +19 -0
  272. data/db/migrate/20240131160949_add_user_organizations_table.rb +32 -0
  273. data/db/migrate/20240212132519_add_organization_in_user_sessions.rb +13 -0
  274. data/db/migrate/20240227135052_add_user_organization_composite_fks.rb +32 -0
  275. data/db/migrate/20240312193501_update_organization_links.rb +11 -0
  276. data/db/migrate/20240426185902_add_user_organizations_current_organization_column.rb +12 -0
  277. data/db/migrate/20240429214601_add_primary_trigger.rb +10 -0
  278. data/db/migrate/20241112131819_add_json_file_format_seed.rb +7 -0
  279. data/db/migrate/20250520133417_create_restriction_operations.rb +18 -0
  280. data/db/migrate/20250520133420_validate_create_restriction_operations.rb +8 -0
  281. data/db/migrate/20250520140642_add_indexes_to_restrictions.rb +9 -0
  282. data/db/migrate/20250529130741_create_notification_alerts_table.rb +28 -0
  283. data/db/migrate/20250530223332_create_data_migrations_table.rb +19 -0
  284. data/db/migrate/20250605121622_seed_notification_alert_status.rb +7 -0
  285. data/db/migrate/20250605131439_seed_notification_alert_types.rb +7 -0
  286. data/db/migrate/20250606173128_update_notification_alert_length_constraint.rb +18 -0
  287. data/db/migrate/20250606174043_validate_notification_alert_length_constraints.rb +8 -0
  288. data/db/migrate/20250624183000_add_data_import_alert_type.rb +11 -0
  289. data/db/migrate/20250722183935_create_organization_options_table.rb +38 -0
  290. data/db/migrate/20250722192724_validate_organization_options_fks_and_constraints.rb +32 -0
  291. data/db/migrate/20250722192936_add_indexes_to_organization_options_table.rb +15 -0
  292. data/db/migrate/20250915132448_add_column_restrictions_hash.rb +7 -0
  293. data/db/migrate/20250917143211_add_column_permissions_hash.rb +7 -0
  294. data/db/migrate/20251001145950_add_trust_this_device.rb +7 -0
  295. data/db/migrate/20251021130835_add_backend_urls_to_applications_table.rb +13 -0
  296. data/db/migrate/20251021172715_validate_backend_urls_constraints_in_applications.rb +9 -0
  297. data/db/migrate/20251030200020_create_card_definitions.rb +23 -0
  298. data/db/migrate/20251030201012_create_card_definition_resources.rb +24 -0
  299. data/db/migrate/20251030201236_create_card_fields.rb +34 -0
  300. data/db/migrate/20251103194317_create_role_resource_cards.rb +37 -0
  301. data/db/migrate/20251103194426_create_role_card_fields.rb +34 -0
  302. data/db/migrate/20251107173218_validate_columns_from_cards.rb +17 -0
  303. data/db/migrate/20251111173212_add_column_application_array.rb +7 -0
  304. data/db/migrate/20251112203326_add_card_types.rb +10 -0
  305. data/db/migrate/20251115120000_add_virtual_cards_support.rb +28 -0
  306. data/db/migrate/20251202231256_add_org_scoped_fk_role_resource_cards_to_roles.rb +14 -0
  307. data/db/migrate/20260105134504_add_accessor_field_resource_type.rb +7 -0
  308. data/db/migrate/20260115123000_add_default_visibility_to_card_definitions.rb +9 -0
  309. data/db/migrate/20260120175037_is_new_admin.rb +9 -0
  310. data/db/migrate/20260122392008_add_stats_table.rb +17 -0
  311. data/db/migrate/20260414204718_add_index_to_stats_table.rb +10 -0
  312. data/db/migrate/20260509120000_create_service_trust_keys.rb +25 -0
  313. data/db/migrate/20260509120001_create_service_trust_audit_logs.rb +26 -0
  314. data/db/migrate/20260511120000_add_direction_to_service_trust_audit_logs.rb +17 -0
  315. data/db/migrate/20260511121000_remove_role_fk_from_role_resource_cards.rb +19 -0
  316. data/db/migrate/20260511121001_add_disabled_at_to_role_resource_cards.rb +10 -0
  317. data/db/migrate/20260605120100_seed_hover_card_options.rb +8 -0
  318. data/db/migrate/20260608120000_seed_badge_list_card_data_type.rb +7 -0
  319. data/db/migrate/20260727000000_add_two_factor_trust_id_to_user_sessions.rb +11 -0
  320. data/db/seeds.rb +14 -0
  321. data/docs/Elasticsearch.md +23 -0
  322. data/docs/Search_API.md +126 -0
  323. data/docs/cards_role_proxy.md +107 -0
  324. data/docs/factory_api.md +135 -0
  325. data/has-helpers-pr-289-pipeline.yaml +16 -0
  326. data/has-helpers-pr-298-pipeline.yaml +15 -0
  327. data/has_helpers.gemspec +68 -0
  328. data/lib/active_record/migration/active_migration_patch.rb +123 -0
  329. data/lib/generators/has_helpers/install/USAGE +8 -0
  330. data/lib/generators/has_helpers/install/install_generator.rb +22 -0
  331. data/lib/generators/has_helpers/install/templates/migrate/has_helpers_initial_setup.rb +26 -0
  332. data/lib/has_helpers/active_record/base.rb +50 -0
  333. data/lib/has_helpers/active_record/date_range.rb +228 -0
  334. data/lib/has_helpers/active_record/nested_resource.rb +58 -0
  335. data/lib/has_helpers/active_record/validation.rb +63 -0
  336. data/lib/has_helpers/active_record.rb +520 -0
  337. data/lib/has_helpers/app/command.rb +107 -0
  338. data/lib/has_helpers/app.rb +10 -0
  339. data/lib/has_helpers/assets_precompile_helper.rb +20 -0
  340. data/lib/has_helpers/attributes.rb +196 -0
  341. data/lib/has_helpers/aws.rb +67 -0
  342. data/lib/has_helpers/cards/cache.rb +49 -0
  343. data/lib/has_helpers/cards/config.rb +42 -0
  344. data/lib/has_helpers/cards/remote_role.rb +27 -0
  345. data/lib/has_helpers/cards/remote_roles.rb +75 -0
  346. data/lib/has_helpers/cards/roles.rb +55 -0
  347. data/lib/has_helpers/cards.rb +34 -0
  348. data/lib/has_helpers/concerns/hydrate_concern.rb +76 -0
  349. data/lib/has_helpers/concerns/importable_accessors.rb +25 -0
  350. data/lib/has_helpers/concerns/restrictions_parseable.rb +51 -0
  351. data/lib/has_helpers/config.rb +11 -0
  352. data/lib/has_helpers/constant.rb +578 -0
  353. data/lib/has_helpers/constraints.rb +10 -0
  354. data/lib/has_helpers/core_ext/array.rb +28 -0
  355. data/lib/has_helpers/core_ext/date/infinity.rb +25 -0
  356. data/lib/has_helpers/core_ext/date.rb +39 -0
  357. data/lib/has_helpers/core_ext/enumerable.rb +20 -0
  358. data/lib/has_helpers/core_ext/false_class.rb +14 -0
  359. data/lib/has_helpers/core_ext/float.rb +18 -0
  360. data/lib/has_helpers/core_ext/hash.rb +71 -0
  361. data/lib/has_helpers/core_ext/integer.rb +18 -0
  362. data/lib/has_helpers/core_ext/nil_class.rb +30 -0
  363. data/lib/has_helpers/core_ext/object.rb +60 -0
  364. data/lib/has_helpers/core_ext/proc.rb +16 -0
  365. data/lib/has_helpers/core_ext/string.rb +81 -0
  366. data/lib/has_helpers/core_ext/symbol.rb +17 -0
  367. data/lib/has_helpers/core_ext/true_class.rb +14 -0
  368. data/lib/has_helpers/cursor.rb +46 -0
  369. data/lib/has_helpers/data_migration/base.rb +293 -0
  370. data/lib/has_helpers/data_migration/large_worker.rb +20 -0
  371. data/lib/has_helpers/data_migration/master_worker.rb +33 -0
  372. data/lib/has_helpers/data_migration/migrator.rb +83 -0
  373. data/lib/has_helpers/data_migration/model.rb +18 -0
  374. data/lib/has_helpers/data_migration/small_worker.rb +20 -0
  375. data/lib/has_helpers/data_migration.rb +8 -0
  376. data/lib/has_helpers/engine.rb +47 -0
  377. data/lib/has_helpers/extensions.rb +17 -0
  378. data/lib/has_helpers/factory_api.rb +47 -0
  379. data/lib/has_helpers/factory_scenario/definition.rb +33 -0
  380. data/lib/has_helpers/factory_scenario/dsl.rb +80 -0
  381. data/lib/has_helpers/factory_scenario/factory_bot_override.rb +53 -0
  382. data/lib/has_helpers/factory_scenario/registry.rb +31 -0
  383. data/lib/has_helpers/factory_scenario/runner.rb +285 -0
  384. data/lib/has_helpers/factory_scenario.rb +27 -0
  385. data/lib/has_helpers/fixed_expiration_time_cache_session_store.rb +20 -0
  386. data/lib/has_helpers/flattener/association.rb +140 -0
  387. data/lib/has_helpers/flattener/attribute.rb +42 -0
  388. data/lib/has_helpers/flattener/base.rb +428 -0
  389. data/lib/has_helpers/flattener/column/types.rb +71 -0
  390. data/lib/has_helpers/flattener/column.rb +97 -0
  391. data/lib/has_helpers/flattener/pivot.rb +49 -0
  392. data/lib/has_helpers/flattener/reset.rb +33 -0
  393. data/lib/has_helpers/flattener/resource.rb +114 -0
  394. data/lib/has_helpers/flattener/resource_generator.rb +21 -0
  395. data/lib/has_helpers/flattener/utils.rb +14 -0
  396. data/lib/has_helpers/flattener.rb +53 -0
  397. data/lib/has_helpers/hash_accessors.rb +62 -0
  398. data/lib/has_helpers/helpers/application.rb +291 -0
  399. data/lib/has_helpers/index/config.rb +15 -0
  400. data/lib/has_helpers/lazy_config.rb +61 -0
  401. data/lib/has_helpers/resource_importer.rb +260 -0
  402. data/lib/has_helpers/resources.rb +127 -0
  403. data/lib/has_helpers/rspec/constants.rb +61 -0
  404. data/lib/has_helpers/rspec/factories.rb +11 -0
  405. data/lib/has_helpers/rspec.rb +22 -0
  406. data/lib/has_helpers/sentry/graphql_trace.rb +37 -0
  407. data/lib/has_helpers/serializer.rb +41 -0
  408. data/lib/has_helpers/service_trust/audit.rb +45 -0
  409. data/lib/has_helpers/service_trust/authorization.rb +34 -0
  410. data/lib/has_helpers/service_trust/bearer_token.rb +23 -0
  411. data/lib/has_helpers/service_trust/capability.rb +32 -0
  412. data/lib/has_helpers/service_trust/client/response.rb +13 -0
  413. data/lib/has_helpers/service_trust/client/retry.rb +35 -0
  414. data/lib/has_helpers/service_trust/client.rb +128 -0
  415. data/lib/has_helpers/service_trust/configuration.rb +76 -0
  416. data/lib/has_helpers/service_trust/engine.rb +10 -0
  417. data/lib/has_helpers/service_trust/errors.rb +32 -0
  418. data/lib/has_helpers/service_trust/graphql/authorizable.rb +72 -0
  419. data/lib/has_helpers/service_trust/graphql_client.rb +54 -0
  420. data/lib/has_helpers/service_trust/jwks_client.rb +133 -0
  421. data/lib/has_helpers/service_trust/jwt_codec.rb +45 -0
  422. data/lib/has_helpers/service_trust/key_manager.rb +160 -0
  423. data/lib/has_helpers/service_trust/rate_limiter.rb +27 -0
  424. data/lib/has_helpers/service_trust/replay_cache.rb +26 -0
  425. data/lib/has_helpers/service_trust/signer.rb +47 -0
  426. data/lib/has_helpers/service_trust/test.rb +60 -0
  427. data/lib/has_helpers/service_trust/verifier.rb +85 -0
  428. data/lib/has_helpers/service_trust/verify_middleware.rb +55 -0
  429. data/lib/has_helpers/service_trust.rb +51 -0
  430. data/lib/has_helpers/test_helpers/factory_data/unit_addresses.rb +42 -0
  431. data/lib/has_helpers/test_helpers/factory_data/unit_advisors.rb +272 -0
  432. data/lib/has_helpers/test_helpers/factory_data/unit_emails.rb +37 -0
  433. data/lib/has_helpers/test_helpers/factory_data/unit_organizations.rb +48 -0
  434. data/lib/has_helpers/test_helpers/factory_data/unit_people.rb +34 -0
  435. data/lib/has_helpers/test_helpers/factory_data/unit_phones.rb +41 -0
  436. data/lib/has_helpers/test_helpers/factory_data/unit_states.rb +26 -0
  437. data/lib/has_helpers/test_helpers/factory_data/unit_webs.rb +31 -0
  438. data/lib/has_helpers/test_helpers/shoulda_helpers.rb +249 -0
  439. data/lib/has_helpers/ui_attributes.rb +39 -0
  440. data/lib/has_helpers/utils/action.rb +87 -0
  441. data/lib/has_helpers/utils/active_record_utils.rb +40 -0
  442. data/lib/has_helpers/utils/alert.rb +42 -0
  443. data/lib/has_helpers/utils/container.rb +46 -0
  444. data/lib/has_helpers/utils/dataset.rb +34 -0
  445. data/lib/has_helpers/utils/email_notifier.rb +15 -0
  446. data/lib/has_helpers/utils/icon.rb +66 -0
  447. data/lib/has_helpers/utils/input.rb +45 -0
  448. data/lib/has_helpers/utils/log_notifier.rb +79 -0
  449. data/lib/has_helpers/utils/render_object.rb +32 -0
  450. data/lib/has_helpers/utils/s3_utils.rb +37 -0
  451. data/lib/has_helpers/utils/service.rb +87 -0
  452. data/lib/has_helpers/utils/slack_conf.rb +31 -0
  453. data/lib/has_helpers/utils/slack_notifier.rb +42 -0
  454. data/lib/has_helpers/utils/text_node.rb +34 -0
  455. data/lib/has_helpers/utils/user_restrictions.rb +266 -0
  456. data/lib/has_helpers/utils.rb +19 -0
  457. data/lib/has_helpers/version.rb +6 -0
  458. data/lib/has_helpers/web_socket_publisher.rb +20 -0
  459. data/lib/has_helpers/webhook.rb +17 -0
  460. data/lib/has_helpers.rb +63 -0
  461. data/lib/hq/resource.rb +55 -0
  462. data/lib/hq/structure/inserts.rb +176 -0
  463. data/lib/hq/structure.rb +115 -0
  464. data/lib/tasks/has_helpers/service_trust.rake +39 -0
  465. data/script/rails +10 -0
  466. data/sorbet/config +5 -0
  467. data/sorbet/rbi/gems/actionpack.rbi +1361 -0
  468. data/sorbet/rbi/gems/activemodel.rbi +755 -0
  469. data/sorbet/rbi/gems/activerecord.rbi +4713 -0
  470. data/sorbet/rbi/gems/activesupport.rbi +1970 -0
  471. data/sorbet/rbi/gems/barby.rbi +129 -0
  472. data/sorbet/rbi/gems/better_errors.rbi +155 -0
  473. data/sorbet/rbi/gems/binding_of_caller.rbi +22 -0
  474. data/sorbet/rbi/gems/byebug.rbi +19 -0
  475. data/sorbet/rbi/gems/chronic.rbi +480 -0
  476. data/sorbet/rbi/gems/chunky_png.rbi +510 -0
  477. data/sorbet/rbi/gems/climate_control.rbi +45 -0
  478. data/sorbet/rbi/gems/coderay.rbi +91 -0
  479. data/sorbet/rbi/gems/concurrent-ruby.rbi +1587 -0
  480. data/sorbet/rbi/gems/debug_inspector.rbi +18 -0
  481. data/sorbet/rbi/gems/erubi.rbi +26 -0
  482. data/sorbet/rbi/gems/holidays.rbi +362 -0
  483. data/sorbet/rbi/gems/i18n.rbi +132 -0
  484. data/sorbet/rbi/gems/method_source.rbi +63 -0
  485. data/sorbet/rbi/gems/mime-types-data.rbi +16 -0
  486. data/sorbet/rbi/gems/mime-types.rbi +217 -0
  487. data/sorbet/rbi/gems/mimemagic.rbi +36 -0
  488. data/sorbet/rbi/gems/minitest.rbi +282 -0
  489. data/sorbet/rbi/gems/mustache.rbi +151 -0
  490. data/sorbet/rbi/gems/paperclip.rbi +644 -0
  491. data/sorbet/rbi/gems/parallel.rbi +81 -0
  492. data/sorbet/rbi/gems/parallel_tests.rbi +27 -0
  493. data/sorbet/rbi/gems/pry-rails.rbi +71 -0
  494. data/sorbet/rbi/gems/pry.rbi +1964 -0
  495. data/sorbet/rbi/gems/rack.rbi +228 -0
  496. data/sorbet/rbi/gems/railties.rbi +364 -0
  497. data/sorbet/rbi/gems/rspec-core.rbi +1704 -0
  498. data/sorbet/rbi/gems/rspec-expectations.rbi +389 -0
  499. data/sorbet/rbi/gems/rspec-support.rbi +206 -0
  500. data/sorbet/rbi/gems/rspec.rbi +14 -0
  501. data/sorbet/rbi/gems/spreadsheet_architect.rbi +10 -0
  502. data/sorbet/rbi/gems/sprockets.rbi +659 -0
  503. data/sorbet/rbi/gems/terrapin.rbi +115 -0
  504. data/sorbet/rbi/gems/testhq.rbi +14 -0
  505. data/sorbet/rbi/gems/thor.rbi +482 -0
  506. data/sorbet/rbi/gems/thread_safe.rbi +81 -0
  507. data/sorbet/rbi/gems/tzinfo.rbi +407 -0
  508. data/sorbet/rbi/gems/zeitwerk.rbi +131 -0
  509. data/sorbet/rbi/hidden-definitions/errors.txt +35111 -0
  510. data/sorbet/rbi/hidden-definitions/hidden.rbi +59974 -0
  511. data/sorbet/rbi/sorbet-typed/lib/actionmailer/all/actionmailer.rbi +13 -0
  512. data/sorbet/rbi/sorbet-typed/lib/actionpack/all/actionpack.rbi +855 -0
  513. data/sorbet/rbi/sorbet-typed/lib/actionview/all/actionview.rbi +314 -0
  514. data/sorbet/rbi/sorbet-typed/lib/activemodel/all/activemodel.rbi +423 -0
  515. data/sorbet/rbi/sorbet-typed/lib/activerecord/>=5.2/activerecord.rbi +17 -0
  516. data/sorbet/rbi/sorbet-typed/lib/activerecord/all/activerecord.rbi +1415 -0
  517. data/sorbet/rbi/sorbet-typed/lib/activerecord/~>6.0.0/activerecord.rbi +475 -0
  518. data/sorbet/rbi/sorbet-typed/lib/activestorage/>=6.0.0/activestorage.rbi +19 -0
  519. data/sorbet/rbi/sorbet-typed/lib/activestorage/all/activestorage.rbi +173 -0
  520. data/sorbet/rbi/sorbet-typed/lib/activesupport/>=6.0.0.rc1/activesupport.rbi +23 -0
  521. data/sorbet/rbi/sorbet-typed/lib/activesupport/all/activesupport.rbi +625 -0
  522. data/sorbet/rbi/sorbet-typed/lib/bundler/all/bundler.rbi +8684 -0
  523. data/sorbet/rbi/sorbet-typed/lib/minitest/all/minitest.rbi +99 -0
  524. data/sorbet/rbi/sorbet-typed/lib/railties/all/railties.rbi +25 -0
  525. data/sorbet/rbi/sorbet-typed/lib/rainbow/all/rainbow.rbi +254 -0
  526. data/sorbet/rbi/sorbet-typed/lib/ruby/all/gem.rbi +4222 -0
  527. data/sorbet/rbi/sorbet-typed/lib/ruby/all/open3.rbi +111 -0
  528. data/sorbet/rbi/sorbet-typed/lib/ruby/all/resolv.rbi +543 -0
  529. data/sorbet/rbi/todo.rbi +244 -0
  530. data/spec/commands/cards/available_cards_command_spec.rb +90 -0
  531. data/spec/commands/cards/card_data_command_spec.rb +1048 -0
  532. data/spec/constructors/has_helpers/base_constructor_spec.rb +49 -0
  533. data/spec/controllers/has_helpers/controller_spec.rb +71 -0
  534. data/spec/controllers/has_helpers/xlsx_export_spec.rb +96 -0
  535. data/spec/factories/advisors.rb +20 -0
  536. data/spec/factories/anonymous_cowards.rb +5 -0
  537. data/spec/factories/applications.rb +5 -0
  538. data/spec/factories/appointments.rb +6 -0
  539. data/spec/factories/attachment.rb +15 -0
  540. data/spec/factories/audits.rb +5 -0
  541. data/spec/factories/basic_schedules.rb +12 -0
  542. data/spec/factories/cards/card_definition_resources.rb +7 -0
  543. data/spec/factories/cards/card_definitions.rb +11 -0
  544. data/spec/factories/cards/card_fields.rb +22 -0
  545. data/spec/factories/cards/role_card_fields.rb +17 -0
  546. data/spec/factories/cards/role_resource_cards.rb +12 -0
  547. data/spec/factories/constant_definition.rb +7 -0
  548. data/spec/factories/contracts.rb +10 -0
  549. data/spec/factories/data_migration_models.rb +9 -0
  550. data/spec/factories/demographics.rb +22 -0
  551. data/spec/factories/events.rb +21 -0
  552. data/spec/factories/firms.rb +21 -0
  553. data/spec/factories/imports.rb +9 -0
  554. data/spec/factories/meetups.rb +13 -0
  555. data/spec/factories/organizations.rb +13 -0
  556. data/spec/factories/policies.rb +7 -0
  557. data/spec/factories/policy_notes.rb +9 -0
  558. data/spec/factories/read_only_values.rb +7 -0
  559. data/spec/factories/resources.rb +7 -0
  560. data/spec/factories/roles.rb +11 -0
  561. data/spec/factories/schedules.rb +13 -0
  562. data/spec/factories/shared/flattener/attributes.rb +10 -0
  563. data/spec/factories/shared/flattener/columns.rb +6 -0
  564. data/spec/factories/shared/flattener/resources.rb +5 -0
  565. data/spec/factories/templates.rb +12 -0
  566. data/spec/factories/user_organizations.rb +23 -0
  567. data/spec/factories/user_session.rb +11 -0
  568. data/spec/factories/users.rb +55 -0
  569. data/spec/fixtures/sample_config.yml +3 -0
  570. data/spec/graphql/has_helpers/mutations/external_data_sync_spec.rb +101 -0
  571. data/spec/graphql/has_helpers/resolvers/cards/available_cards_spec.rb +36 -0
  572. data/spec/graphql/has_helpers/resolvers/cards/card_data_spec.rb +42 -0
  573. data/spec/graphql/has_helpers/resolvers/cards/hover_card_data_spec.rb +59 -0
  574. data/spec/has_helpers/cards/cache_spec.rb +58 -0
  575. data/spec/has_helpers/cards/config_spec.rb +68 -0
  576. data/spec/has_helpers/cards/orphan_card_sweeper_spec.rb +97 -0
  577. data/spec/has_helpers/cards/remote_role_spec.rb +17 -0
  578. data/spec/has_helpers/cards/remote_roles_spec.rb +97 -0
  579. data/spec/has_helpers/cards/roles_spec.rb +52 -0
  580. data/spec/has_helpers/cards/smoke_spec.rb +168 -0
  581. data/spec/has_helpers/cards/support.rb +52 -0
  582. data/spec/has_helpers/resolvers/internal/roles_spec.rb +73 -0
  583. data/spec/has_helpers/service_trust/audit_log_cleanup_worker_spec.rb +33 -0
  584. data/spec/has_helpers/service_trust/audit_spec.rb +70 -0
  585. data/spec/has_helpers/service_trust/authenticated_as_service_spec.rb +65 -0
  586. data/spec/has_helpers/service_trust/authorization_spec.rb +37 -0
  587. data/spec/has_helpers/service_trust/capability_spec.rb +35 -0
  588. data/spec/has_helpers/service_trust/client_spec.rb +129 -0
  589. data/spec/has_helpers/service_trust/configuration_spec.rb +35 -0
  590. data/spec/has_helpers/service_trust/engine_spec.rb +13 -0
  591. data/spec/has_helpers/service_trust/errors_spec.rb +23 -0
  592. data/spec/has_helpers/service_trust/graphql_authentication_spec.rb +59 -0
  593. data/spec/has_helpers/service_trust/graphql_authorizable_spec.rb +91 -0
  594. data/spec/has_helpers/service_trust/graphql_client_spec.rb +47 -0
  595. data/spec/has_helpers/service_trust/jwks_client_spec.rb +85 -0
  596. data/spec/has_helpers/service_trust/jwks_controller_spec.rb +47 -0
  597. data/spec/has_helpers/service_trust/jwt_codec_spec.rb +30 -0
  598. data/spec/has_helpers/service_trust/key_manager_spec.rb +80 -0
  599. data/spec/has_helpers/service_trust/key_spec.rb +52 -0
  600. data/spec/has_helpers/service_trust/rake_tasks_spec.rb +58 -0
  601. data/spec/has_helpers/service_trust/rate_limiter_spec.rb +31 -0
  602. data/spec/has_helpers/service_trust/replay_cache_spec.rb +29 -0
  603. data/spec/has_helpers/service_trust/signer_verifier_spec.rb +159 -0
  604. data/spec/has_helpers/service_trust/smoke_spec.rb +216 -0
  605. data/spec/has_helpers/service_trust/support.rb +121 -0
  606. data/spec/has_helpers/service_trust/test_module_spec.rb +39 -0
  607. data/spec/has_helpers/service_trust/verify_middleware_spec.rb +82 -0
  608. data/spec/helpers/application_spec.rb +155 -0
  609. data/spec/importers/cards/importer_spec.rb +861 -0
  610. data/spec/internal/app/assets/config/manifest.js +0 -0
  611. data/spec/internal/app/constants/cat_egory.rb +33 -0
  612. data/spec/internal/app/constants/color.rb +19 -0
  613. data/spec/internal/app/constants/exclude_group_nil_constant.rb +5 -0
  614. data/spec/internal/app/constants/foo.rb +6 -0
  615. data/spec/internal/app/constants/fruit.rb +3 -0
  616. data/spec/internal/app/constants/generic_group_example.rb +12 -0
  617. data/spec/internal/app/constants/my_constant.rb +4 -0
  618. data/spec/internal/app/constants/product.rb +3 -0
  619. data/spec/internal/app/constants/shirt_size.rb +18 -0
  620. data/spec/internal/app/constants/simple_option.rb +14 -0
  621. data/spec/internal/app/constants/status.rb +5 -0
  622. data/spec/internal/app/constructors/organization_constructor.rb +4 -0
  623. data/spec/internal/app/controllers/application_controller.rb +27 -0
  624. data/spec/internal/app/controllers/search_extensions.rb +3 -0
  625. data/spec/internal/app/indices/advisor_index.rb +35 -0
  626. data/spec/internal/app/indices/contract_index.rb +52 -0
  627. data/spec/internal/app/indices/firm_index.rb +16 -0
  628. data/spec/internal/app/indices/policy_index.rb +20 -0
  629. data/spec/internal/app/models/advisor.rb +24 -0
  630. data/spec/internal/app/models/agency.rb +3 -0
  631. data/spec/internal/app/models/anonymous_coward.rb +5 -0
  632. data/spec/internal/app/models/another_event.rb +2 -0
  633. data/spec/internal/app/models/appointment.rb +3 -0
  634. data/spec/internal/app/models/attachment.rb +10 -0
  635. data/spec/internal/app/models/basic_schedule.rb +6 -0
  636. data/spec/internal/app/models/beneficiary.rb +6 -0
  637. data/spec/internal/app/models/client.rb +5 -0
  638. data/spec/internal/app/models/contract.rb +9 -0
  639. data/spec/internal/app/models/demographic.rb +4 -0
  640. data/spec/internal/app/models/division.rb +3 -0
  641. data/spec/internal/app/models/event.rb +10 -0
  642. data/spec/internal/app/models/event_template.rb +1 -0
  643. data/spec/internal/app/models/firm.rb +18 -0
  644. data/spec/internal/app/models/has_audits/audit.rb +15 -0
  645. data/spec/internal/app/models/import.rb +7 -0
  646. data/spec/internal/app/models/meetup.rb +8 -0
  647. data/spec/internal/app/models/organization.rb +17 -0
  648. data/spec/internal/app/models/organization_event.rb +5 -0
  649. data/spec/internal/app/models/policy.rb +16 -0
  650. data/spec/internal/app/models/policy_holder.rb +7 -0
  651. data/spec/internal/app/models/policy_note.rb +8 -0
  652. data/spec/internal/app/models/project.rb +3 -0
  653. data/spec/internal/app/models/read_only_value.rb +8 -0
  654. data/spec/internal/app/models/schedule.rb +12 -0
  655. data/spec/internal/app/models/template.rb +9 -0
  656. data/spec/internal/app/models/user.rb +31 -0
  657. data/spec/internal/app/models/user_organization.rb +17 -0
  658. data/spec/internal/app/views/has_lists/lists/_table.html.erb +1 -0
  659. data/spec/internal/config/database-standard.yml +24 -0
  660. data/spec/internal/config/initializers/resources.rb +19 -0
  661. data/spec/internal/config/routes.rb +19 -0
  662. data/spec/internal/config/storage.yml +3 -0
  663. data/spec/internal/db/good_job_schema.rb +141 -0
  664. data/spec/internal/db/schema.rb +334 -0
  665. data/spec/internal/log/.gitignore +1 -0
  666. data/spec/internal/public/favicon.ico +0 -0
  667. data/spec/lib/flattener/base_spec.rb +93 -0
  668. data/spec/lib/flattener/column/types_spec.rb +65 -0
  669. data/spec/lib/has_helpers/active_record/base_spec.rb +53 -0
  670. data/spec/lib/has_helpers/active_record/date_range_spec.rb +498 -0
  671. data/spec/lib/has_helpers/active_record/lookup_model_spec.rb +408 -0
  672. data/spec/lib/has_helpers/active_record/nested_resource_spec.rb +43 -0
  673. data/spec/lib/has_helpers/app/command/reports/generator_specs.rb +887 -0
  674. data/spec/lib/has_helpers/app/command_spec.rb +117 -0
  675. data/spec/lib/has_helpers/app/support/mocks/graphql_reports_helpers.rb +96 -0
  676. data/spec/lib/has_helpers/app/support/mocks/reports_api_mock.rb +47 -0
  677. data/spec/lib/has_helpers/attributes_spec.rb +220 -0
  678. data/spec/lib/has_helpers/aws_spec.rb +126 -0
  679. data/spec/lib/has_helpers/concerns/hydrate_concern_spec.rb +473 -0
  680. data/spec/lib/has_helpers/constant/definition_spec.rb +128 -0
  681. data/spec/lib/has_helpers/constant_spec.rb +432 -0
  682. data/spec/lib/has_helpers/core_ext/array_spec.rb +22 -0
  683. data/spec/lib/has_helpers/core_ext/date/infinity_spec.rb +67 -0
  684. data/spec/lib/has_helpers/core_ext/date_spec.rb +27 -0
  685. data/spec/lib/has_helpers/core_ext/false_class_spec.rb +7 -0
  686. data/spec/lib/has_helpers/core_ext/float_spec.rb +9 -0
  687. data/spec/lib/has_helpers/core_ext/hash_spec.rb +48 -0
  688. data/spec/lib/has_helpers/core_ext/integer_spec.rb +9 -0
  689. data/spec/lib/has_helpers/core_ext/nil_class_spec.rb +17 -0
  690. data/spec/lib/has_helpers/core_ext/object_spec.rb +54 -0
  691. data/spec/lib/has_helpers/core_ext/proc_spec.rb +24 -0
  692. data/spec/lib/has_helpers/core_ext/string_spec.rb +154 -0
  693. data/spec/lib/has_helpers/core_ext/true_class_spec.rb +7 -0
  694. data/spec/lib/has_helpers/data_migration/base_spec.rb +470 -0
  695. data/spec/lib/has_helpers/data_migration/large_worker_spec.rb +34 -0
  696. data/spec/lib/has_helpers/data_migration/master_worker_spec.rb +51 -0
  697. data/spec/lib/has_helpers/data_migration/migrator_spec.rb +113 -0
  698. data/spec/lib/has_helpers/data_migration/model_spec.rb +52 -0
  699. data/spec/lib/has_helpers/data_migration/small_worker_spec.rb +34 -0
  700. data/spec/lib/has_helpers/good_job/notification_alert_cleanup_worker_spec.rb +89 -0
  701. data/spec/lib/has_helpers/hash_accessors_spec.rb +66 -0
  702. data/spec/lib/has_helpers/index_spec.rb +442 -0
  703. data/spec/lib/has_helpers/lazy_config_spec.rb +31 -0
  704. data/spec/lib/has_helpers/organization_merge_spec.rb +88 -0
  705. data/spec/lib/has_helpers/resource_importer_spec.rb +119 -0
  706. data/spec/lib/has_helpers/rspec_spec.rb +16 -0
  707. data/spec/lib/has_helpers/search/provider_spec.rb +26 -0
  708. data/spec/lib/has_helpers/search/search_utils_spec.rb +134 -0
  709. data/spec/lib/has_helpers/sentry/graphql_trace_spec.rb +140 -0
  710. data/spec/lib/has_helpers/ui_attributes_spec.rb +42 -0
  711. data/spec/lib/has_helpers/utils/action_spec.rb +49 -0
  712. data/spec/lib/has_helpers/utils/alert_spec.rb +33 -0
  713. data/spec/lib/has_helpers/utils/dataset_spec.rb +10 -0
  714. data/spec/lib/has_helpers/utils/icon_spec.rb +23 -0
  715. data/spec/lib/has_helpers/utils/input_spec.rb +40 -0
  716. data/spec/lib/has_helpers/utils/log_notifier_spec.rb +25 -0
  717. data/spec/lib/has_helpers/utils/render_object_spec.rb +17 -0
  718. data/spec/lib/has_helpers/utils/s3_utils_spec.rb +78 -0
  719. data/spec/lib/has_helpers/utils/service_spec.rb +79 -0
  720. data/spec/lib/has_helpers/utils/slack_notifier_spec.rb +70 -0
  721. data/spec/lib/has_helpers/utils/user_restrictions_spec.rb +343 -0
  722. data/spec/lib/hq/structure/inserts_spec.rb +152 -0
  723. data/spec/lib/hq/structure_spec.rb +12 -0
  724. data/spec/models/cards/base_spec.rb +149 -0
  725. data/spec/models/cards/card_definition_resource_spec.rb +103 -0
  726. data/spec/models/cards/card_definition_spec.rb +50 -0
  727. data/spec/models/cards/card_field_spec.rb +46 -0
  728. data/spec/models/cards/field_builder_spec.rb +318 -0
  729. data/spec/models/cards/registry_spec.rb +147 -0
  730. data/spec/models/cards/role_card_field_spec.rb +111 -0
  731. data/spec/models/cards/role_resource_card_spec.rb +112 -0
  732. data/spec/models/has_helpers/master_record_spec.rb +20 -0
  733. data/spec/models/has_helpers/user_organization_spec.rb +28 -0
  734. data/spec/models/has_helpers/user_session_spec.rb +16 -0
  735. data/spec/presenters/base_presenter_spec.rb +166 -0
  736. data/spec/rails_helper.rb +119 -0
  737. data/spec/requests/has_helpers/factory_controller_spec.rb +159 -0
  738. data/spec/requests/has_helpers/health_check_controller_spec.rb +37 -0
  739. data/spec/scenarios/empty_setup.rb +6 -0
  740. data/spec/spec_helper.rb +22 -0
  741. data/spec/support/has_helpers/database_helpers.rb +12 -0
  742. data/spec/utils/sync_utils_spec.rb +233 -0
  743. data/spec/workers/goodjob/elasticsearch_process_batch_spec.rb +94 -0
  744. data/spec/workers/goodjob/elasticsearch_process_change_logs_master_worker_spec.rb +40 -0
  745. data/spec/workers/goodjob/elasticsearch_process_change_logs_worker_spec.rb +82 -0
  746. data/spec/workers/goodjob/elasticsearch_process_queue_spec.rb +89 -0
  747. data/spec/workers/goodjob/elasticsearch_reindex_spec.rb +49 -0
  748. metadata +1593 -0
@@ -0,0 +1,1970 @@
1
+ # This file is autogenerated. Do not edit it by hand. Regenerate it with:
2
+ # srb rbi gems
3
+
4
+ # typed: true
5
+ #
6
+ # If you would like to make changes to this file, great! Please create the gem's shim here:
7
+ #
8
+ # https://github.com/sorbet/sorbet-typed/new/master?filename=lib/activesupport/all/activesupport.rbi
9
+ #
10
+ # activesupport-6.0.1
11
+ class Hash
12
+ def _deep_transform_keys_in_object!(object, &block); end
13
+ def _deep_transform_keys_in_object(object, &block); end
14
+ def as_json(options = nil); end
15
+ def assert_valid_keys(*valid_keys); end
16
+ def blank?; end
17
+ def deep_dup; end
18
+ def deep_merge!(other_hash, &block); end
19
+ def deep_merge(other_hash, &block); end
20
+ def deep_stringify_keys!; end
21
+ def deep_stringify_keys; end
22
+ def deep_symbolize_keys!; end
23
+ def deep_symbolize_keys; end
24
+ def deep_transform_keys!(&block); end
25
+ def deep_transform_keys(&block); end
26
+ def except!(*keys); end
27
+ def except(*keys); end
28
+ def extract!(*keys); end
29
+ def extractable_options?; end
30
+ def nested_under_indifferent_access; end
31
+ def reverse_merge!(other_hash); end
32
+ def reverse_merge(other_hash); end
33
+ def reverse_update(other_hash); end
34
+ def self.from_xml(xml, disallowed_types = nil); end
35
+ def self.try_convert(arg0); end
36
+ def slice!(*keys); end
37
+ def stringify_keys!; end
38
+ def stringify_keys; end
39
+ def symbolize_keys!; end
40
+ def symbolize_keys; end
41
+ def to_options!; end
42
+ def to_options; end
43
+ def to_param(namespace = nil); end
44
+ def to_query(namespace = nil); end
45
+ def to_xml(options = nil); end
46
+ def with_defaults!(other_hash); end
47
+ def with_defaults(other_hash); end
48
+ def with_indifferent_access; end
49
+ end
50
+ module ActiveSupport
51
+ def parse_json_times; end
52
+ def parse_json_times=(obj); end
53
+ def self.eager_load!; end
54
+ def self.escape_html_entities_in_json(*args, &block); end
55
+ def self.escape_html_entities_in_json=(arg); end
56
+ def self.gem_version; end
57
+ def self.json_encoder(*args, &block); end
58
+ def self.json_encoder=(arg); end
59
+ def self.parse_json_times; end
60
+ def self.parse_json_times=(obj); end
61
+ def self.test_order; end
62
+ def self.test_order=(obj); end
63
+ def self.time_precision(*args, &block); end
64
+ def self.time_precision=(arg); end
65
+ def self.to_time_preserves_timezone; end
66
+ def self.to_time_preserves_timezone=(value); end
67
+ def self.use_standard_json_time_format(*args, &block); end
68
+ def self.use_standard_json_time_format=(arg); end
69
+ def self.version; end
70
+ def test_order; end
71
+ def test_order=(obj); end
72
+ extend ActiveSupport::Autoload
73
+ extend ActiveSupport::LazyLoadHooks
74
+ end
75
+ module ActiveSupport::LazyLoadHooks
76
+ def execute_hook(name, base, options, block); end
77
+ def on_load(name, options = nil, &block); end
78
+ def run_load_hooks(name, base = nil); end
79
+ def self.extended(base); end
80
+ def with_execution_control(name, block, once); end
81
+ end
82
+ module Kernel
83
+ def class_eval(*args, &block); end
84
+ def enable_warnings; end
85
+ def self.enable_warnings; end
86
+ def self.silence_warnings; end
87
+ def self.suppress(*exception_classes); end
88
+ def self.with_warnings(flag); end
89
+ def silence_warnings; end
90
+ def suppress(*exception_classes); end
91
+ def with_warnings(flag); end
92
+ end
93
+ class Module
94
+ def alias_attribute(new_name, old_name); end
95
+ def anonymous?; end
96
+ def cattr_accessor(*syms, instance_reader: nil, instance_writer: nil, instance_accessor: nil, default: nil, &blk); end
97
+ def cattr_reader(*syms, instance_reader: nil, instance_accessor: nil, default: nil); end
98
+ def cattr_writer(*syms, instance_writer: nil, instance_accessor: nil, default: nil); end
99
+ def delegate(*methods, to: nil, prefix: nil, allow_nil: nil, private: nil); end
100
+ def delegate_missing_to(target); end
101
+ def deprecate(*method_names); end
102
+ def mattr_accessor(*syms, instance_reader: nil, instance_writer: nil, instance_accessor: nil, default: nil, &blk); end
103
+ def mattr_reader(*syms, instance_reader: nil, instance_accessor: nil, default: nil); end
104
+ def mattr_writer(*syms, instance_writer: nil, instance_accessor: nil, default: nil); end
105
+ def method_visibility(method); end
106
+ def module_parent; end
107
+ def module_parent_name; end
108
+ def module_parents; end
109
+ def parent; end
110
+ def parent_name; end
111
+ def parents; end
112
+ def redefine_method(method, &block); end
113
+ def redefine_singleton_method(method, &block); end
114
+ def remove_possible_method(method); end
115
+ def remove_possible_singleton_method(method); end
116
+ def silence_redefinition_of_method(method); end
117
+ include ActiveSupport::Dependencies::ModuleConstMissing
118
+ end
119
+ class Module::DelegationError < NoMethodError
120
+ end
121
+ class ActiveSupport::Deprecation
122
+ def self.allocate; end
123
+ def self.behavior(*args, &block); end
124
+ def self.behavior=(arg); end
125
+ def self.debug(*args, &block); end
126
+ def self.debug=(arg); end
127
+ def self.deprecate_methods(*args, &block); end
128
+ def self.deprecation_horizon(*args, &block); end
129
+ def self.deprecation_horizon=(arg); end
130
+ def self.deprecation_warning(deprecated_method_name, message = nil, caller_backtrace = nil); end
131
+ def self.gem_name(*args, &block); end
132
+ def self.gem_name=(arg); end
133
+ def self.initialize(*args, &block); end
134
+ def self.instance; end
135
+ def self.new(*arg0); end
136
+ def self.silence(*args, &block); end
137
+ def self.silenced(*args, &block); end
138
+ def self.silenced=(arg); end
139
+ def self.warn(message = nil, callstack = nil); end
140
+ extend ActiveSupport::Deprecation::InstanceDelegator::ClassMethods
141
+ extend Singleton::SingletonClassMethods
142
+ include ActiveSupport::Deprecation::Behavior
143
+ include ActiveSupport::Deprecation::InstanceDelegator
144
+ include ActiveSupport::Deprecation::MethodWrapper
145
+ include ActiveSupport::Deprecation::Reporting
146
+ include Singleton
147
+ end
148
+ module ActiveSupport::Deprecation::InstanceDelegator
149
+ def self.included(base); end
150
+ end
151
+ module ActiveSupport::Deprecation::InstanceDelegator::ClassMethods
152
+ def include(included_module); end
153
+ def method_added(method_name); end
154
+ end
155
+ module ActiveSupport::Deprecation::InstanceDelegator::OverrideDelegators
156
+ def deprecation_warning(deprecated_method_name, message = nil, caller_backtrace = nil); end
157
+ def warn(message = nil, callstack = nil); end
158
+ end
159
+ module ActiveSupport::Notifications
160
+ def self.instrument(name, payload = nil); end
161
+ def self.instrumenter; end
162
+ def self.notifier; end
163
+ def self.notifier=(arg0); end
164
+ def self.publish(name, *args); end
165
+ def self.subscribe(*args, &block); end
166
+ def self.subscribed(callback, *args, &block); end
167
+ def self.unsubscribe(subscriber_or_name); end
168
+ end
169
+ class ActiveSupport::Notifications::Instrumenter
170
+ def finish(name, payload); end
171
+ def finish_with_state(listeners_state, name, payload); end
172
+ def id; end
173
+ def initialize(notifier); end
174
+ def instrument(name, payload = nil); end
175
+ def start(name, payload); end
176
+ def unique_id; end
177
+ end
178
+ class ActiveSupport::Notifications::Event
179
+ def <<(event); end
180
+ def allocations; end
181
+ def children; end
182
+ def cpu_time; end
183
+ def duration; end
184
+ def end; end
185
+ def end=(ending); end
186
+ def finish!; end
187
+ def idle_time; end
188
+ def initialize(name, start, ending, transaction_id, payload); end
189
+ def name; end
190
+ def now; end
191
+ def now_allocations; end
192
+ def now_cpu; end
193
+ def parent_of?(event); end
194
+ def payload; end
195
+ def self.clock_gettime_supported?; end
196
+ def start!; end
197
+ def time; end
198
+ def transaction_id; end
199
+ end
200
+ class ActiveSupport::Notifications::Fanout
201
+ def finish(name, id, payload, listeners = nil); end
202
+ def initialize; end
203
+ def listeners_for(name); end
204
+ def listening?(name); end
205
+ def lock; end
206
+ def locked?; end
207
+ def publish(name, *args); end
208
+ def start(name, id, payload); end
209
+ def subscribe(pattern = nil, callable = nil, &block); end
210
+ def synchronize(&block); end
211
+ def try_lock; end
212
+ def unlock; end
213
+ def unsubscribe(subscriber_or_name); end
214
+ def wait; end
215
+ include Mutex_m
216
+ end
217
+ module ActiveSupport::Notifications::Fanout::Subscribers
218
+ def self.event_object_subscriber(pattern, block); end
219
+ def self.new(pattern, listener); end
220
+ def self.wrap_all(pattern, subscriber); end
221
+ end
222
+ class ActiveSupport::Notifications::Fanout::Subscribers::Matcher
223
+ def ===(name); end
224
+ def exclusions; end
225
+ def initialize(pattern); end
226
+ def pattern; end
227
+ def self.wrap(pattern); end
228
+ def unsubscribe!(name); end
229
+ end
230
+ class ActiveSupport::Notifications::Fanout::Subscribers::Evented
231
+ def finish(name, id, payload); end
232
+ def initialize(pattern, delegate); end
233
+ def matches?(name); end
234
+ def pattern; end
235
+ def publish(name, *args); end
236
+ def start(name, id, payload); end
237
+ def subscribed_to?(name); end
238
+ def unsubscribe!(name); end
239
+ end
240
+ class ActiveSupport::Notifications::Fanout::Subscribers::Timed < ActiveSupport::Notifications::Fanout::Subscribers::Evented
241
+ def finish(name, id, payload); end
242
+ def publish(name, *args); end
243
+ def start(name, id, payload); end
244
+ end
245
+ class ActiveSupport::Notifications::Fanout::Subscribers::EventObject < ActiveSupport::Notifications::Fanout::Subscribers::Evented
246
+ def build_event(name, id, payload); end
247
+ def finish(name, id, payload); end
248
+ def start(name, id, payload); end
249
+ end
250
+ class ActiveSupport::Notifications::Fanout::Subscribers::AllMessages
251
+ def finish(name, id, payload); end
252
+ def initialize(delegate); end
253
+ def matches?(arg0); end
254
+ def publish(name, *args); end
255
+ def start(name, id, payload); end
256
+ def subscribed_to?(name); end
257
+ def unsubscribe!(*arg0); end
258
+ end
259
+ module ActiveSupport::PerThreadRegistry
260
+ def instance; end
261
+ def method_missing(name, *args, &block); end
262
+ def self.extended(object); end
263
+ end
264
+ class ActiveSupport::Notifications::InstrumentationRegistry
265
+ def initialize; end
266
+ def instrumenter_for(notifier); end
267
+ extend ActiveSupport::PerThreadRegistry
268
+ end
269
+ class ActiveSupport::DeprecationException < StandardError
270
+ end
271
+ module ActiveSupport::Deprecation::Behavior
272
+ def arity_coerce(behavior); end
273
+ def behavior; end
274
+ def behavior=(behavior); end
275
+ def debug; end
276
+ def debug=(arg0); end
277
+ end
278
+ module ActiveSupport::Deprecation::Reporting
279
+ def _extract_callstack(callstack); end
280
+ def deprecated_method_warning(method_name, message = nil); end
281
+ def deprecation_caller_message(callstack); end
282
+ def deprecation_message(callstack, message = nil); end
283
+ def deprecation_warning(deprecated_method_name, message = nil, caller_backtrace = nil); end
284
+ def extract_callstack(callstack); end
285
+ def gem_name; end
286
+ def gem_name=(arg0); end
287
+ def ignored_callstack(path); end
288
+ def silence; end
289
+ def silenced; end
290
+ def silenced=(arg0); end
291
+ def warn(message = nil, callstack = nil); end
292
+ end
293
+ module ActiveSupport::Deprecation::DeprecatedConstantAccessor
294
+ def self.included(base); end
295
+ end
296
+ class Array
297
+ def as_json(options = nil); end
298
+ def blank?; end
299
+ def deep_dup; end
300
+ def excluding(*elements); end
301
+ def extract!; end
302
+ def extract_options!; end
303
+ def fifth; end
304
+ def forty_two; end
305
+ def fourth; end
306
+ def from(position); end
307
+ def in_groups(number, fill_with = nil); end
308
+ def in_groups_of(number, fill_with = nil); end
309
+ def including(*elements); end
310
+ def inquiry; end
311
+ def second; end
312
+ def second_to_last; end
313
+ def self.try_convert(arg0); end
314
+ def split(value = nil); end
315
+ def third; end
316
+ def third_to_last; end
317
+ def to(position); end
318
+ def to_default_s; end
319
+ def to_formatted_s(format = nil); end
320
+ def to_param; end
321
+ def to_query(key); end
322
+ def to_sentence(options = nil); end
323
+ def to_xml(options = nil); end
324
+ def without(*elements); end
325
+ end
326
+ module ActiveSupport::Deprecation::MethodWrapper
327
+ def deprecate_methods(target_module, *method_names); end
328
+ end
329
+ class ActiveSupport::Deprecation::DeprecationProxy
330
+ def inspect; end
331
+ def method_missing(called, *args, &block); end
332
+ def self.new(*args, &block); end
333
+ end
334
+ class ActiveSupport::Deprecation::DeprecatedObjectProxy < ActiveSupport::Deprecation::DeprecationProxy
335
+ def initialize(object, message, deprecator = nil); end
336
+ def target; end
337
+ def warn(callstack, called, args); end
338
+ end
339
+ class ActiveSupport::Deprecation::DeprecatedInstanceVariableProxy < ActiveSupport::Deprecation::DeprecationProxy
340
+ def initialize(instance, method, var = nil, deprecator = nil); end
341
+ def target; end
342
+ def warn(callstack, called, args); end
343
+ end
344
+ class ActiveSupport::Deprecation::DeprecatedConstantProxy < Module
345
+ def class; end
346
+ def const_missing(name); end
347
+ def initialize(old_const, new_const, deprecator = nil, message: nil); end
348
+ def inspect; end
349
+ def method_missing(called, *args, &block); end
350
+ def self.new(*args, &block); end
351
+ def target; end
352
+ end
353
+ module ActiveSupport::Inflector
354
+ def apply_inflections(word, rules, locale = nil); end
355
+ def camelize(term, uppercase_first_letter = nil); end
356
+ def classify(table_name); end
357
+ def const_regexp(camel_cased_word); end
358
+ def constantize(camel_cased_word); end
359
+ def dasherize(underscored_word); end
360
+ def deconstantize(path); end
361
+ def demodulize(path); end
362
+ def foreign_key(class_name, separate_class_name_and_id_with_underscore = nil); end
363
+ def humanize(lower_case_and_underscored_word, capitalize: nil, keep_id_suffix: nil); end
364
+ def inflections(locale = nil); end
365
+ def ordinal(number); end
366
+ def ordinalize(number); end
367
+ def parameterize(string, separator: nil, preserve_case: nil, locale: nil); end
368
+ def pluralize(word, locale = nil); end
369
+ def safe_constantize(camel_cased_word); end
370
+ def singularize(word, locale = nil); end
371
+ def tableize(class_name); end
372
+ def titleize(word, keep_id_suffix: nil); end
373
+ def transliterate(string, replacement = nil, locale: nil); end
374
+ def underscore(camel_cased_word); end
375
+ def upcase_first(string); end
376
+ extend ActiveSupport::Inflector
377
+ extend ActiveSupport::Inflector
378
+ end
379
+ class ActiveSupport::Inflector::Inflections
380
+ def acronym(word); end
381
+ def acronyms; end
382
+ def acronyms_camelize_regex; end
383
+ def acronyms_underscore_regex; end
384
+ def clear(scope = nil); end
385
+ def define_acronym_regex_patterns; end
386
+ def human(rule, replacement); end
387
+ def humans; end
388
+ def initialize; end
389
+ def initialize_dup(orig); end
390
+ def irregular(singular, plural); end
391
+ def plural(rule, replacement); end
392
+ def plurals; end
393
+ def self.instance(locale = nil); end
394
+ def singular(rule, replacement); end
395
+ def singulars; end
396
+ def uncountable(*words); end
397
+ def uncountables; end
398
+ end
399
+ class ActiveSupport::Inflector::Inflections::Uncountables < Array
400
+ def <<(*word); end
401
+ def add(words); end
402
+ def delete(entry); end
403
+ def initialize; end
404
+ def to_regex(string); end
405
+ def uncountable?(str); end
406
+ end
407
+ module ActiveSupport::Autoload
408
+ def autoload(const_name, path = nil); end
409
+ def autoload_at(path); end
410
+ def autoload_under(path); end
411
+ def autoloads; end
412
+ def eager_autoload; end
413
+ def eager_load!; end
414
+ def self.extended(base); end
415
+ end
416
+ module ActiveSupport::VERSION
417
+ end
418
+ module ActiveSupport::Concern
419
+ def append_features(base); end
420
+ def class_methods(&class_methods_module_definition); end
421
+ def included(base = nil, &block); end
422
+ def self.extended(base); end
423
+ end
424
+ class ActiveSupport::Concern::MultipleIncludedBlocks < StandardError
425
+ def initialize; end
426
+ end
427
+ module ActiveSupport::LoggerThreadSafeLevel
428
+ def add(severity, message = nil, progname = nil, &block); end
429
+ def after_initialize; end
430
+ def debug?; end
431
+ def error?; end
432
+ def fatal?; end
433
+ def info?; end
434
+ def level; end
435
+ def local_level; end
436
+ def local_level=(level); end
437
+ def local_log_id; end
438
+ def unknown?; end
439
+ def warn?; end
440
+ extend ActiveSupport::Concern
441
+ end
442
+ module LoggerSilence
443
+ extend ActiveSupport::Concern
444
+ end
445
+ module ActiveSupport::LoggerSilence
446
+ def silence(temporary_level = nil); end
447
+ extend ActiveSupport::Concern
448
+ end
449
+ class ActiveSupport::Logger < Logger
450
+ def initialize(*args); end
451
+ def self.broadcast(logger); end
452
+ def self.local_levels; end
453
+ def self.local_levels=(obj); end
454
+ def self.logger_outputs_to?(logger, *sources); end
455
+ def self.silencer; end
456
+ def self.silencer=(obj); end
457
+ def silencer; end
458
+ def silencer=(obj); end
459
+ include ActiveSupport::LoggerSilence
460
+ include ActiveSupport::LoggerThreadSafeLevel
461
+ end
462
+ class ActiveSupport::Logger::SimpleFormatter < Logger::Formatter
463
+ def call(severity, timestamp, progname, msg); end
464
+ end
465
+ module DateAndTime
466
+ end
467
+ module DateAndTime::Compatibility
468
+ def preserve_timezone; end
469
+ def self.preserve_timezone; end
470
+ def self.preserve_timezone=(obj); end
471
+ end
472
+ class Object < BasicObject
473
+ def acts_like?(duck); end
474
+ def as_json(options = nil); end
475
+ def blank?; end
476
+ def deep_dup; end
477
+ def duplicable?; end
478
+ def in?(another_object); end
479
+ def instance_values; end
480
+ def instance_variable_names; end
481
+ def presence; end
482
+ def presence_in(another_object); end
483
+ def present?; end
484
+ def to_param; end
485
+ def to_query(key); end
486
+ def with_options(options, &block); end
487
+ include ActiveSupport::Dependencies::Loadable
488
+ include ActiveSupport::Tryable
489
+ end
490
+ class NilClass
491
+ def as_json(options = nil); end
492
+ def blank?; end
493
+ def to_param; end
494
+ def try!(method_name = nil, *args); end
495
+ def try(method_name = nil, *args); end
496
+ end
497
+ class FalseClass
498
+ def as_json(options = nil); end
499
+ def blank?; end
500
+ def to_param; end
501
+ end
502
+ class TrueClass
503
+ def as_json(options = nil); end
504
+ def blank?; end
505
+ def to_param; end
506
+ end
507
+ class String
508
+ def acts_like_string?; end
509
+ def as_json(options = nil); end
510
+ def at(position); end
511
+ def blank?; end
512
+ def camelcase(first_letter = nil); end
513
+ def camelize(first_letter = nil); end
514
+ def classify; end
515
+ def constantize; end
516
+ def dasherize; end
517
+ def deconstantize; end
518
+ def demodulize; end
519
+ def ends_with?(*arg0); end
520
+ def first(limit = nil); end
521
+ def foreign_key(separate_class_name_and_id_with_underscore = nil); end
522
+ def from(position); end
523
+ def humanize(capitalize: nil, keep_id_suffix: nil); end
524
+ def in_time_zone(zone = nil); end
525
+ def is_utf8?; end
526
+ def last(limit = nil); end
527
+ def mb_chars; end
528
+ def parameterize(separator: nil, preserve_case: nil, locale: nil); end
529
+ def pluralize(count = nil, locale = nil); end
530
+ def remove!(*patterns); end
531
+ def remove(*patterns); end
532
+ def safe_constantize; end
533
+ def singularize(locale = nil); end
534
+ def squish!; end
535
+ def squish; end
536
+ def starts_with?(*arg0); end
537
+ def tableize; end
538
+ def titlecase(keep_id_suffix: nil); end
539
+ def titleize(keep_id_suffix: nil); end
540
+ def to(position); end
541
+ def to_date; end
542
+ def to_datetime; end
543
+ def to_time(form = nil); end
544
+ def truncate(truncate_at, options = nil); end
545
+ def truncate_bytes(truncate_at, omission: nil); end
546
+ def truncate_words(words_count, options = nil); end
547
+ def underscore; end
548
+ def upcase_first; end
549
+ end
550
+ class Numeric
551
+ def as_json(options = nil); end
552
+ def blank?; end
553
+ def day; end
554
+ def days; end
555
+ def fortnight; end
556
+ def fortnights; end
557
+ def hour; end
558
+ def hours; end
559
+ def in_milliseconds; end
560
+ def minute; end
561
+ def minutes; end
562
+ def second; end
563
+ def seconds; end
564
+ def week; end
565
+ def weeks; end
566
+ end
567
+ class Time
568
+ def acts_like_time?; end
569
+ def advance(options); end
570
+ def ago(seconds); end
571
+ def as_json(options = nil); end
572
+ def at_beginning_of_day; end
573
+ def at_beginning_of_hour; end
574
+ def at_beginning_of_minute; end
575
+ def at_end_of_day; end
576
+ def at_end_of_hour; end
577
+ def at_end_of_minute; end
578
+ def at_midday; end
579
+ def at_middle_of_day; end
580
+ def at_midnight; end
581
+ def at_noon; end
582
+ def beginning_of_day; end
583
+ def beginning_of_hour; end
584
+ def beginning_of_minute; end
585
+ def blank?; end
586
+ def change(options); end
587
+ def compare_with_coercion(other); end
588
+ def compare_without_coercion(arg0); end
589
+ def end_of_day; end
590
+ def end_of_hour; end
591
+ def end_of_minute; end
592
+ def eql_with_coercion(other); end
593
+ def eql_without_coercion(arg0); end
594
+ def formatted_offset(colon = nil, alternate_utc_string = nil); end
595
+ def in(seconds); end
596
+ def midday; end
597
+ def middle_of_day; end
598
+ def midnight; end
599
+ def minus_with_coercion(other); end
600
+ def minus_with_duration(other); end
601
+ def minus_without_coercion(other); end
602
+ def minus_without_duration(arg0); end
603
+ def next_day(days = nil); end
604
+ def next_month(months = nil); end
605
+ def next_year(years = nil); end
606
+ def noon; end
607
+ def plus_with_duration(other); end
608
+ def plus_without_duration(arg0); end
609
+ def prev_day(days = nil); end
610
+ def prev_month(months = nil); end
611
+ def prev_year(years = nil); end
612
+ def rfc3339(fraction_digits = nil); end
613
+ def sec_fraction; end
614
+ def seconds_since_midnight; end
615
+ def seconds_until_end_of_day; end
616
+ def self.===(other); end
617
+ def self.at_with_coercion(*args); end
618
+ def self.at_without_coercion(*arg0); end
619
+ def self.current; end
620
+ def self.days_in_month(month, year = nil); end
621
+ def self.days_in_year(year = nil); end
622
+ def self.find_zone!(time_zone); end
623
+ def self.find_zone(time_zone); end
624
+ def self.rfc3339(str); end
625
+ def self.use_zone(time_zone); end
626
+ def self.zone; end
627
+ def self.zone=(time_zone); end
628
+ def self.zone_default; end
629
+ def self.zone_default=(arg0); end
630
+ def since(seconds); end
631
+ def to_default_s; end
632
+ def to_formatted_s(format = nil); end
633
+ include DateAndTime::Calculations
634
+ include DateAndTime::Compatibility
635
+ include DateAndTime::Zones
636
+ end
637
+ class ActiveSupport::KeyGenerator
638
+ def generate_key(salt, key_size = nil); end
639
+ def initialize(secret, options = nil); end
640
+ end
641
+ class ActiveSupport::CachingKeyGenerator
642
+ def generate_key(*args); end
643
+ def initialize(key_generator); end
644
+ end
645
+ module ActiveSupport::SecurityUtils
646
+ def fixed_length_secure_compare(a, b); end
647
+ def secure_compare(a, b); end
648
+ def self.fixed_length_secure_compare(a, b); end
649
+ def self.secure_compare(a, b); end
650
+ end
651
+ module ActiveSupport::Messages
652
+ end
653
+ class ActiveSupport::Messages::Metadata
654
+ def as_json(options = nil); end
655
+ def fresh?; end
656
+ def initialize(message, expires_at = nil, purpose = nil); end
657
+ def match?(purpose); end
658
+ def self.decode(message); end
659
+ def self.encode(message); end
660
+ def self.extract_metadata(message); end
661
+ def self.pick_expiry(expires_at, expires_in); end
662
+ def self.verify(message, purpose); end
663
+ def self.wrap(message, expires_at: nil, expires_in: nil, purpose: nil); end
664
+ def verify(purpose); end
665
+ end
666
+ module ActiveSupport::Messages::Rotator
667
+ def initialize(*arg0, **options); end
668
+ def rotate(*secrets, **options); end
669
+ def run_rotations(on_rotation); end
670
+ end
671
+ module ActiveSupport::Messages::Rotator::Encryptor
672
+ def build_rotation(secret = nil, sign_secret = nil, options); end
673
+ def decrypt_and_verify(*args, on_rotation: nil, **options); end
674
+ include ActiveSupport::Messages::Rotator
675
+ end
676
+ module ActiveSupport::Messages::Rotator::Verifier
677
+ def build_rotation(secret = nil, options); end
678
+ def verified(*args, on_rotation: nil, **options); end
679
+ include ActiveSupport::Messages::Rotator
680
+ end
681
+ class ActiveSupport::MessageVerifier
682
+ def decode(data); end
683
+ def encode(data); end
684
+ def generate(value, expires_at: nil, expires_in: nil, purpose: nil); end
685
+ def generate_digest(data); end
686
+ def initialize(*arg0, **options); end
687
+ def valid_message?(signed_message); end
688
+ def verified(*args, on_rotation: nil, **options); end
689
+ def verify(*args); end
690
+ end
691
+ class ActiveSupport::MessageVerifier::InvalidSignature < StandardError
692
+ end
693
+ class ActiveSupport::MessageEncryptor
694
+ def _decrypt(encrypted_message, purpose); end
695
+ def _encrypt(value, **metadata_options); end
696
+ def aead_mode?; end
697
+ def decrypt_and_verify(*args, on_rotation: nil, **options); end
698
+ def encrypt_and_sign(value, expires_at: nil, expires_in: nil, purpose: nil); end
699
+ def initialize(*arg0, **options); end
700
+ def new_cipher; end
701
+ def resolve_verifier; end
702
+ def self.default_cipher; end
703
+ def self.key_len(cipher = nil); end
704
+ def self.use_authenticated_message_encryption; end
705
+ def self.use_authenticated_message_encryption=(obj); end
706
+ def verifier; end
707
+ end
708
+ module ActiveSupport::MessageEncryptor::NullSerializer
709
+ def self.dump(value); end
710
+ def self.load(value); end
711
+ end
712
+ module ActiveSupport::MessageEncryptor::NullVerifier
713
+ def self.generate(value); end
714
+ def self.verify(value); end
715
+ end
716
+ class ActiveSupport::MessageEncryptor::InvalidMessage < StandardError
717
+ end
718
+ class ActiveSupport::EncryptedFile
719
+ def change(&block); end
720
+ def content_path; end
721
+ def decrypt(contents); end
722
+ def encrypt(contents); end
723
+ def encryptor; end
724
+ def env_key; end
725
+ def handle_missing_key; end
726
+ def initialize(content_path:, key_path:, env_key:, raise_if_missing_key:); end
727
+ def key; end
728
+ def key_path; end
729
+ def raise_if_missing_key; end
730
+ def read; end
731
+ def read_env_key; end
732
+ def read_key_file; end
733
+ def self.generate_key; end
734
+ def write(contents); end
735
+ def writing(contents); end
736
+ end
737
+ class ActiveSupport::EncryptedFile::MissingContentError < RuntimeError
738
+ def initialize(content_path); end
739
+ end
740
+ class ActiveSupport::EncryptedFile::MissingKeyError < RuntimeError
741
+ def initialize(key_path:, env_key:); end
742
+ end
743
+ class ActiveSupport::OrderedOptions < Hash
744
+ def [](key); end
745
+ def []=(key, value); end
746
+ def _get(arg0); end
747
+ def method_missing(name, *args); end
748
+ def respond_to_missing?(name, include_private); end
749
+ end
750
+ class ActiveSupport::InheritableOptions < ActiveSupport::OrderedOptions
751
+ def inheritable_copy; end
752
+ def initialize(parent = nil); end
753
+ end
754
+ class ActiveSupport::EncryptedConfiguration < ActiveSupport::EncryptedFile
755
+ def [](*args, &block); end
756
+ def config; end
757
+ def deserialize(config); end
758
+ def fetch(*args, &block); end
759
+ def initialize(config_path:, key_path:, env_key:, raise_if_missing_key:); end
760
+ def method_missing(method, *args, &block); end
761
+ def options; end
762
+ def read; end
763
+ def respond_to_missing?(name, include_private = nil); end
764
+ def write(contents); end
765
+ end
766
+ class ActiveSupport::HashWithIndifferentAccess < Hash
767
+ def [](key); end
768
+ def []=(key, value); end
769
+ def assoc(key); end
770
+ def compact; end
771
+ def convert_key(key); end
772
+ def convert_value(value, options = nil); end
773
+ def deep_stringify_keys!; end
774
+ def deep_stringify_keys; end
775
+ def deep_symbolize_keys; end
776
+ def default(*args); end
777
+ def delete(key); end
778
+ def dig(*args); end
779
+ def dup; end
780
+ def except(*keys); end
781
+ def extractable_options?; end
782
+ def fetch(key, *extras); end
783
+ def fetch_values(*indices, &block); end
784
+ def has_key?(key); end
785
+ def include?(key); end
786
+ def initialize(constructor = nil); end
787
+ def key?(key); end
788
+ def member?(key); end
789
+ def merge!(other_hash); end
790
+ def merge(hash, &block); end
791
+ def nested_under_indifferent_access; end
792
+ def regular_update(*arg0); end
793
+ def regular_writer(arg0, arg1); end
794
+ def reject(*args, &block); end
795
+ def replace(other_hash); end
796
+ def reverse_merge!(other_hash); end
797
+ def reverse_merge(other_hash); end
798
+ def select(*args, &block); end
799
+ def self.[](*args); end
800
+ def set_defaults(target); end
801
+ def slice!(*keys); end
802
+ def slice(*keys); end
803
+ def store(key, value); end
804
+ def stringify_keys!; end
805
+ def stringify_keys; end
806
+ def symbolize_keys; end
807
+ def to_hash; end
808
+ def to_options!; end
809
+ def to_options; end
810
+ def transform_keys!; end
811
+ def transform_keys(*args, &block); end
812
+ def transform_values(*args, &block); end
813
+ def update(other_hash); end
814
+ def values_at(*keys); end
815
+ def with_defaults!(other_hash); end
816
+ def with_defaults(other_hash); end
817
+ def with_indifferent_access; end
818
+ def without(*keys); end
819
+ end
820
+ module ActiveSupport::Multibyte
821
+ def self.proxy_class; end
822
+ def self.proxy_class=(klass); end
823
+ end
824
+ class LoadError < ScriptError
825
+ def is_missing?(location); end
826
+ end
827
+ class NameError < StandardError
828
+ def missing_name; end
829
+ def missing_name?(name); end
830
+ end
831
+ module ActiveSupport::Concurrency
832
+ end
833
+ class ActiveSupport::Concurrency::ShareLock
834
+ def busy_for_exclusive?(purpose); end
835
+ def busy_for_sharing?(purpose); end
836
+ def eligible_waiters?(compatible); end
837
+ def exclusive(purpose: nil, compatible: nil, after_compatible: nil, no_wait: nil); end
838
+ def initialize; end
839
+ def raw_state; end
840
+ def sharing; end
841
+ def start_exclusive(purpose: nil, compatible: nil, no_wait: nil); end
842
+ def start_sharing; end
843
+ def stop_exclusive(compatible: nil); end
844
+ def stop_sharing; end
845
+ def wait_for(method); end
846
+ def yield_shares(purpose: nil, compatible: nil, block_share: nil); end
847
+ include MonitorMixin
848
+ end
849
+ module ActiveSupport::Dependencies
850
+ def _eager_load_paths; end
851
+ def _eager_load_paths=(obj); end
852
+ def autoload_module!(into, const_name, qualified_name, path_suffix); end
853
+ def autoload_once_paths; end
854
+ def autoload_once_paths=(obj); end
855
+ def autoload_paths; end
856
+ def autoload_paths=(obj); end
857
+ def autoloadable_module?(path_suffix); end
858
+ def autoloaded?(desc); end
859
+ def autoloaded_constants; end
860
+ def autoloaded_constants=(obj); end
861
+ def clear; end
862
+ def constant_watch_stack; end
863
+ def constant_watch_stack=(obj); end
864
+ def constantize(name); end
865
+ def depend_on(file_name, message = nil); end
866
+ def explicitly_unloadable_constants; end
867
+ def explicitly_unloadable_constants=(obj); end
868
+ def history; end
869
+ def history=(obj); end
870
+ def hook!; end
871
+ def interlock; end
872
+ def interlock=(obj); end
873
+ def load?; end
874
+ def load_file(path, const_paths = nil); end
875
+ def load_missing_constant(from_mod, const_name); end
876
+ def load_once_path?(path); end
877
+ def loadable_constants_for_path(path, bases = nil); end
878
+ def loaded; end
879
+ def loaded=(obj); end
880
+ def loading; end
881
+ def loading=(obj); end
882
+ def log(message); end
883
+ def logger; end
884
+ def logger=(obj); end
885
+ def mark_for_unload(const_desc); end
886
+ def mechanism; end
887
+ def mechanism=(obj); end
888
+ def new_constants_in(*descs); end
889
+ def qualified_const_defined?(path); end
890
+ def qualified_name_for(mod, name); end
891
+ def real_mod_name(mod); end
892
+ def reference(klass); end
893
+ def remove_constant(const); end
894
+ def remove_unloadable_constants!; end
895
+ def require_or_load(file_name, const_path = nil); end
896
+ def safe_constantize(name); end
897
+ def search_for_file(path_suffix); end
898
+ def self._eager_load_paths; end
899
+ def self._eager_load_paths=(obj); end
900
+ def self.autoload_once_paths; end
901
+ def self.autoload_once_paths=(obj); end
902
+ def self.autoload_paths; end
903
+ def self.autoload_paths=(obj); end
904
+ def self.autoloaded_constants; end
905
+ def self.autoloaded_constants=(obj); end
906
+ def self.constant_watch_stack; end
907
+ def self.constant_watch_stack=(obj); end
908
+ def self.explicitly_unloadable_constants; end
909
+ def self.explicitly_unloadable_constants=(obj); end
910
+ def self.history; end
911
+ def self.history=(obj); end
912
+ def self.interlock; end
913
+ def self.interlock=(obj); end
914
+ def self.load_interlock; end
915
+ def self.loaded; end
916
+ def self.loaded=(obj); end
917
+ def self.loading; end
918
+ def self.loading=(obj); end
919
+ def self.logger; end
920
+ def self.logger=(obj); end
921
+ def self.mechanism; end
922
+ def self.mechanism=(obj); end
923
+ def self.run_interlock; end
924
+ def self.unload_interlock; end
925
+ def self.verbose; end
926
+ def self.verbose=(obj); end
927
+ def self.warnings_on_first_load; end
928
+ def self.warnings_on_first_load=(obj); end
929
+ def to_constant_name(desc); end
930
+ def unhook!; end
931
+ def verbose; end
932
+ def verbose=(obj); end
933
+ def warnings_on_first_load; end
934
+ def warnings_on_first_load=(obj); end
935
+ def will_unload?(const_desc); end
936
+ extend ActiveSupport::Dependencies
937
+ end
938
+ class ActiveSupport::Dependencies::Interlock
939
+ def done_running; end
940
+ def done_unloading; end
941
+ def initialize; end
942
+ def loading; end
943
+ def permit_concurrent_loads; end
944
+ def raw_state(&block); end
945
+ def running; end
946
+ def start_running; end
947
+ def start_unloading; end
948
+ def unloading; end
949
+ end
950
+ class ActiveSupport::Dependencies::WatchStack
951
+ def each(&block); end
952
+ def initialize; end
953
+ def new_constants; end
954
+ def pop_modules(modules); end
955
+ def watch_namespaces(namespaces); end
956
+ def watching; end
957
+ def watching?; end
958
+ include Enumerable
959
+ end
960
+ module ActiveSupport::Dependencies::ModuleConstMissing
961
+ def const_missing(const_name); end
962
+ def guess_for_anonymous(const_name); end
963
+ def self.append_features(base); end
964
+ def self.exclude_from(base); end
965
+ def self.include_into(base); end
966
+ def unloadable(const_desc = nil); end
967
+ end
968
+ module ActiveSupport::Dependencies::Loadable
969
+ def load(file, wrap = nil); end
970
+ def load_dependency(file); end
971
+ def require(file); end
972
+ def require_dependency(file_name, message = nil); end
973
+ def require_or_load(file_name); end
974
+ def self.exclude_from(base); end
975
+ def self.include_into(base); end
976
+ def unloadable(const_desc); end
977
+ end
978
+ module ActiveSupport::Dependencies::Blamable
979
+ def blame_file!(file); end
980
+ def blamed_files; end
981
+ def copy_blame!(exc); end
982
+ def describe_blame; end
983
+ end
984
+ class ActiveSupport::Dependencies::ClassCache
985
+ def [](key); end
986
+ def clear!; end
987
+ def empty?; end
988
+ def get(key); end
989
+ def initialize; end
990
+ def key?(key); end
991
+ def safe_get(key); end
992
+ def store(klass); end
993
+ end
994
+ class Exception
995
+ def as_json(options = nil); end
996
+ include ActiveSupport::Dependencies::Blamable
997
+ end
998
+ module ActiveSupport::Dependencies::ZeitwerkIntegration
999
+ def self.autoload_once?(autoload_path); end
1000
+ def self.decorate_dependencies; end
1001
+ def self.eager_load?(autoload_path); end
1002
+ def self.freeze_paths; end
1003
+ def self.setup_autoloaders(enable_reloading); end
1004
+ def self.take_over(enable_reloading:); end
1005
+ end
1006
+ module ActiveSupport::Dependencies::ZeitwerkIntegration::Decorations
1007
+ def autoloaded?(object); end
1008
+ def autoloaded_constants; end
1009
+ def clear; end
1010
+ def constantize(cpath); end
1011
+ def safe_constantize(cpath); end
1012
+ def unhook!; end
1013
+ def verbose=(verbose); end
1014
+ end
1015
+ module ActiveSupport::Dependencies::ZeitwerkIntegration::RequireDependency
1016
+ def require_dependency(filename); end
1017
+ end
1018
+ module ActiveSupport::Dependencies::ZeitwerkIntegration::Inflector
1019
+ def self.camelize(basename, _abspath); end
1020
+ def self.inflect(overrides); end
1021
+ end
1022
+ class Method
1023
+ def duplicable?; end
1024
+ end
1025
+ class UnboundMethod
1026
+ def duplicable?; end
1027
+ end
1028
+ module ActiveSupport::Tryable
1029
+ def try!(method_name = nil, *args, &b); end
1030
+ def try(method_name = nil, *args, &b); end
1031
+ end
1032
+ class Delegator < BasicObject
1033
+ include ActiveSupport::Tryable
1034
+ end
1035
+ class DateTime < Date
1036
+ def <=>(other); end
1037
+ def acts_like_date?; end
1038
+ def acts_like_time?; end
1039
+ def advance(options); end
1040
+ def ago(seconds); end
1041
+ def as_json(options = nil); end
1042
+ def at_beginning_of_day; end
1043
+ def at_beginning_of_hour; end
1044
+ def at_beginning_of_minute; end
1045
+ def at_end_of_day; end
1046
+ def at_end_of_hour; end
1047
+ def at_end_of_minute; end
1048
+ def at_midday; end
1049
+ def at_middle_of_day; end
1050
+ def at_midnight; end
1051
+ def at_noon; end
1052
+ def beginning_of_day; end
1053
+ def beginning_of_hour; end
1054
+ def beginning_of_minute; end
1055
+ def blank?; end
1056
+ def change(options); end
1057
+ def default_inspect; end
1058
+ def end_of_day; end
1059
+ def end_of_hour; end
1060
+ def end_of_minute; end
1061
+ def formatted_offset(colon = nil, alternate_utc_string = nil); end
1062
+ def getgm; end
1063
+ def getlocal(utc_offset = nil); end
1064
+ def getutc; end
1065
+ def gmtime; end
1066
+ def in(seconds); end
1067
+ def inspect; end
1068
+ def localtime(utc_offset = nil); end
1069
+ def midday; end
1070
+ def middle_of_day; end
1071
+ def midnight; end
1072
+ def noon; end
1073
+ def nsec; end
1074
+ def offset_in_seconds; end
1075
+ def readable_inspect; end
1076
+ def seconds_since_midnight; end
1077
+ def seconds_since_unix_epoch; end
1078
+ def seconds_until_end_of_day; end
1079
+ def self.civil_from_format(utc_or_local, year, month = nil, day = nil, hour = nil, min = nil, sec = nil); end
1080
+ def self.current; end
1081
+ def since(seconds); end
1082
+ def subsec; end
1083
+ def to_default_s; end
1084
+ def to_f; end
1085
+ def to_formatted_s(format = nil); end
1086
+ def to_i; end
1087
+ def usec; end
1088
+ def utc; end
1089
+ def utc?; end
1090
+ def utc_offset; end
1091
+ include DateAndTime::Compatibility
1092
+ end
1093
+ module ActiveSupport::XmlMini_REXML
1094
+ def collapse(element, depth); end
1095
+ def empty_content?(element); end
1096
+ def get_attributes(element); end
1097
+ def merge!(hash, key, value); end
1098
+ def merge_element!(hash, element, depth); end
1099
+ def merge_texts!(hash, element); end
1100
+ def parse(data); end
1101
+ extend ActiveSupport::XmlMini_REXML
1102
+ end
1103
+ module ActiveSupport::XmlMini
1104
+ def _dasherize(key); end
1105
+ def _parse_binary(bin, entity); end
1106
+ def _parse_file(file, entity); end
1107
+ def backend; end
1108
+ def backend=(name); end
1109
+ def cast_backend_name_to_module(name); end
1110
+ def current_thread_backend; end
1111
+ def current_thread_backend=(name); end
1112
+ def depth; end
1113
+ def depth=(arg0); end
1114
+ def parse(*args, &block); end
1115
+ def rename_key(key, options = nil); end
1116
+ def to_tag(key, value, options); end
1117
+ def with_backend(name); end
1118
+ extend ActiveSupport::XmlMini
1119
+ end
1120
+ module ActiveSupport::XmlMini::FileLike
1121
+ def content_type; end
1122
+ def content_type=(arg0); end
1123
+ def original_filename; end
1124
+ def original_filename=(arg0); end
1125
+ end
1126
+ class ActiveSupport::Duration
1127
+ def %(other); end
1128
+ def *(other); end
1129
+ def +(other); end
1130
+ def -(other); end
1131
+ def -@; end
1132
+ def /(other); end
1133
+ def <=>(other); end
1134
+ def ==(other); end
1135
+ def after(time = nil); end
1136
+ def ago(time = nil); end
1137
+ def as_json(options = nil); end
1138
+ def before(time = nil); end
1139
+ def coerce(other); end
1140
+ def encode_with(coder); end
1141
+ def eql?(other); end
1142
+ def from_now(time = nil); end
1143
+ def hash; end
1144
+ def init_with(coder); end
1145
+ def initialize(value, parts); end
1146
+ def inspect; end
1147
+ def instance_of?(klass); end
1148
+ def is_a?(klass); end
1149
+ def iso8601(precision: nil); end
1150
+ def kind_of?(klass); end
1151
+ def method_missing(method, *args, &block); end
1152
+ def parts; end
1153
+ def parts=(arg0); end
1154
+ def raise_type_error(other); end
1155
+ def respond_to_missing?(method, _); end
1156
+ def self.===(other); end
1157
+ def self.build(value); end
1158
+ def self.calculate_total_seconds(parts); end
1159
+ def self.days(value); end
1160
+ def self.hours(value); end
1161
+ def self.minutes(value); end
1162
+ def self.months(value); end
1163
+ def self.parse(iso8601duration); end
1164
+ def self.seconds(value); end
1165
+ def self.weeks(value); end
1166
+ def self.years(value); end
1167
+ def since(time = nil); end
1168
+ def sum(sign, time = nil); end
1169
+ def to_i; end
1170
+ def to_s; end
1171
+ def until(time = nil); end
1172
+ def value; end
1173
+ def value=(arg0); end
1174
+ end
1175
+ class ActiveSupport::Duration::Scalar < Numeric
1176
+ def %(other); end
1177
+ def *(other); end
1178
+ def +(other); end
1179
+ def -(other); end
1180
+ def -@; end
1181
+ def /(other); end
1182
+ def <=>(other); end
1183
+ def calculate(op, other); end
1184
+ def coerce(other); end
1185
+ def initialize(value); end
1186
+ def raise_type_error(other); end
1187
+ def to_f(*args, &block); end
1188
+ def to_i(*args, &block); end
1189
+ def to_s(*args, &block); end
1190
+ def value; end
1191
+ end
1192
+ class ActiveSupport::TimeZone
1193
+ def <=>(zone); end
1194
+ def =~(re); end
1195
+ def at(*args); end
1196
+ def encode_with(coder); end
1197
+ def formatted_offset(colon = nil, alternate_utc_string = nil); end
1198
+ def init_with(coder); end
1199
+ def initialize(name, utc_offset = nil, tzinfo = nil); end
1200
+ def iso8601(str); end
1201
+ def local(*args); end
1202
+ def local_to_utc(time, dst = nil); end
1203
+ def name; end
1204
+ def now; end
1205
+ def parse(str, now = nil); end
1206
+ def parts_to_time(parts, now); end
1207
+ def period_for_local(time, dst = nil); end
1208
+ def period_for_utc(time); end
1209
+ def periods_for_local(time); end
1210
+ def rfc3339(str); end
1211
+ def self.[](arg); end
1212
+ def self.all; end
1213
+ def self.clear; end
1214
+ def self.country_zones(country_code); end
1215
+ def self.create(*arg0); end
1216
+ def self.find_tzinfo(name); end
1217
+ def self.load_country_zones(code); end
1218
+ def self.new(name); end
1219
+ def self.seconds_to_utc_offset(seconds, colon = nil); end
1220
+ def self.us_zones; end
1221
+ def self.zones_map; end
1222
+ def strptime(str, format, now = nil); end
1223
+ def time_now; end
1224
+ def to_s; end
1225
+ def today; end
1226
+ def tomorrow; end
1227
+ def tzinfo; end
1228
+ def utc_offset; end
1229
+ def utc_to_local(time); end
1230
+ def yesterday; end
1231
+ include Comparable
1232
+ end
1233
+ class ActiveSupport::TimeWithZone
1234
+ def +(other); end
1235
+ def -(other); end
1236
+ def <=>(other); end
1237
+ def acts_like_time?; end
1238
+ def advance(options); end
1239
+ def after?(arg0); end
1240
+ def ago(other); end
1241
+ def as_json(options = nil); end
1242
+ def before?(arg0); end
1243
+ def between?(min, max); end
1244
+ def blank?; end
1245
+ def change(options); end
1246
+ def comparable_time; end
1247
+ def day; end
1248
+ def dst?; end
1249
+ def duration_of_variable_length?(obj); end
1250
+ def encode_with(coder); end
1251
+ def eql?(other); end
1252
+ def formatted_offset(colon = nil, alternate_utc_string = nil); end
1253
+ def freeze; end
1254
+ def future?; end
1255
+ def get_period_and_ensure_valid_local_time(period); end
1256
+ def getgm; end
1257
+ def getlocal(utc_offset = nil); end
1258
+ def getutc; end
1259
+ def gmt?; end
1260
+ def gmt_offset; end
1261
+ def gmtime; end
1262
+ def gmtoff; end
1263
+ def hash; end
1264
+ def hour; end
1265
+ def httpdate; end
1266
+ def in(other); end
1267
+ def in_time_zone(new_zone = nil); end
1268
+ def init_with(coder); end
1269
+ def initialize(utc_time, time_zone, local_time = nil, period = nil); end
1270
+ def inspect; end
1271
+ def is_a?(klass); end
1272
+ def isdst; end
1273
+ def iso8601(fraction_digits = nil); end
1274
+ def kind_of?(klass); end
1275
+ def localtime(utc_offset = nil); end
1276
+ def marshal_dump; end
1277
+ def marshal_load(variables); end
1278
+ def mday; end
1279
+ def method_missing(sym, *args, &block); end
1280
+ def min; end
1281
+ def mon; end
1282
+ def month; end
1283
+ def nsec; end
1284
+ def past?; end
1285
+ def period; end
1286
+ def respond_to?(sym, include_priv = nil); end
1287
+ def respond_to_missing?(sym, include_priv); end
1288
+ def rfc2822; end
1289
+ def rfc3339(fraction_digits = nil); end
1290
+ def rfc822; end
1291
+ def sec; end
1292
+ def self.name; end
1293
+ def since(other); end
1294
+ def strftime(format); end
1295
+ def time; end
1296
+ def time_zone; end
1297
+ def to_a; end
1298
+ def to_date; end
1299
+ def to_datetime; end
1300
+ def to_f; end
1301
+ def to_formatted_s(format = nil); end
1302
+ def to_i; end
1303
+ def to_r; end
1304
+ def to_s(format = nil); end
1305
+ def to_time; end
1306
+ def today?; end
1307
+ def transfer_time_values_to_utc_constructor(time); end
1308
+ def tv_sec; end
1309
+ def usec; end
1310
+ def utc; end
1311
+ def utc?; end
1312
+ def utc_offset; end
1313
+ def wday; end
1314
+ def wrap_with_time_zone(time); end
1315
+ def xmlschema(fraction_digits = nil); end
1316
+ def yday; end
1317
+ def year; end
1318
+ def zone; end
1319
+ include Comparable
1320
+ end
1321
+ module DateAndTime::Zones
1322
+ def in_time_zone(zone = nil); end
1323
+ def time_with_zone(time, zone); end
1324
+ end
1325
+ module DateAndTime::Calculations
1326
+ def after?(date_or_time); end
1327
+ def all_day; end
1328
+ def all_month; end
1329
+ def all_quarter; end
1330
+ def all_week(start_day = nil); end
1331
+ def all_year; end
1332
+ def at_beginning_of_month; end
1333
+ def at_beginning_of_quarter; end
1334
+ def at_beginning_of_week(start_day = nil); end
1335
+ def at_beginning_of_year; end
1336
+ def at_end_of_month; end
1337
+ def at_end_of_quarter; end
1338
+ def at_end_of_week(start_day = nil); end
1339
+ def at_end_of_year; end
1340
+ def before?(date_or_time); end
1341
+ def beginning_of_month; end
1342
+ def beginning_of_quarter; end
1343
+ def beginning_of_week(start_day = nil); end
1344
+ def beginning_of_year; end
1345
+ def copy_time_to(other); end
1346
+ def days_ago(days); end
1347
+ def days_since(days); end
1348
+ def days_span(day); end
1349
+ def days_to_week_start(start_day = nil); end
1350
+ def end_of_month; end
1351
+ def end_of_quarter; end
1352
+ def end_of_week(start_day = nil); end
1353
+ def end_of_year; end
1354
+ def first_hour(date_or_time); end
1355
+ def future?; end
1356
+ def last_hour(date_or_time); end
1357
+ def last_month; end
1358
+ def last_quarter; end
1359
+ def last_week(start_day = nil, same_time: nil); end
1360
+ def last_weekday; end
1361
+ def last_year; end
1362
+ def monday; end
1363
+ def months_ago(months); end
1364
+ def months_since(months); end
1365
+ def next_occurring(day_of_week); end
1366
+ def next_quarter; end
1367
+ def next_week(given_day_in_next_week = nil, same_time: nil); end
1368
+ def next_weekday; end
1369
+ def on_weekday?; end
1370
+ def on_weekend?; end
1371
+ def past?; end
1372
+ def prev_occurring(day_of_week); end
1373
+ def prev_quarter; end
1374
+ def prev_week(start_day = nil, same_time: nil); end
1375
+ def prev_weekday; end
1376
+ def sunday; end
1377
+ def today?; end
1378
+ def tomorrow; end
1379
+ def weeks_ago(weeks); end
1380
+ def weeks_since(weeks); end
1381
+ def years_ago(years); end
1382
+ def years_since(years); end
1383
+ def yesterday; end
1384
+ end
1385
+ class Date
1386
+ def acts_like_date?; end
1387
+ def advance(options); end
1388
+ def ago(seconds); end
1389
+ def as_json(options = nil); end
1390
+ def at_beginning_of_day; end
1391
+ def at_end_of_day; end
1392
+ def at_midday; end
1393
+ def at_middle_of_day; end
1394
+ def at_midnight; end
1395
+ def at_noon; end
1396
+ def beginning_of_day; end
1397
+ def blank?; end
1398
+ def change(options); end
1399
+ def compare_with_coercion(other); end
1400
+ def compare_without_coercion(arg0); end
1401
+ def default_inspect; end
1402
+ def end_of_day; end
1403
+ def in(seconds); end
1404
+ def midday; end
1405
+ def middle_of_day; end
1406
+ def midnight; end
1407
+ def minus_with_duration(other); end
1408
+ def minus_without_duration(arg0); end
1409
+ def noon; end
1410
+ def plus_with_duration(other); end
1411
+ def plus_without_duration(arg0); end
1412
+ def readable_inspect; end
1413
+ def self.beginning_of_week; end
1414
+ def self.beginning_of_week=(week_start); end
1415
+ def self.beginning_of_week_default; end
1416
+ def self.beginning_of_week_default=(arg0); end
1417
+ def self.current; end
1418
+ def self.find_beginning_of_week!(week_start); end
1419
+ def self.tomorrow; end
1420
+ def self.yesterday; end
1421
+ def since(seconds); end
1422
+ def to_default_s; end
1423
+ def to_formatted_s(format = nil); end
1424
+ include DateAndTime::Calculations
1425
+ include DateAndTime::Zones
1426
+ end
1427
+ class Integer < Numeric
1428
+ def month; end
1429
+ def months; end
1430
+ def year; end
1431
+ def years; end
1432
+ end
1433
+ class ActiveSupport::XMLConverter
1434
+ def become_array?(value); end
1435
+ def become_content?(value); end
1436
+ def become_empty_string?(value); end
1437
+ def become_hash?(value); end
1438
+ def deep_to_h(value); end
1439
+ def garbage?(value); end
1440
+ def initialize(xml, disallowed_types = nil); end
1441
+ def normalize_keys(params); end
1442
+ def nothing?(value); end
1443
+ def process_array(value); end
1444
+ def process_content(value); end
1445
+ def process_hash(value); end
1446
+ def to_h; end
1447
+ end
1448
+ class ActiveSupport::XMLConverter::DisallowedType < StandardError
1449
+ def initialize(type); end
1450
+ end
1451
+ module ActiveSupport::BigDecimalWithDefaultFormat
1452
+ def to_s(format = nil); end
1453
+ end
1454
+ module ActiveSupport::ToJsonWithActiveSupportEncoder
1455
+ def to_json(options = nil); end
1456
+ end
1457
+ class Struct
1458
+ def as_json(options = nil); end
1459
+ end
1460
+ class Symbol
1461
+ def as_json(options = nil); end
1462
+ end
1463
+ class Float < Numeric
1464
+ def as_json(options = nil); end
1465
+ end
1466
+ class BigDecimal < Numeric
1467
+ def as_json(options = nil); end
1468
+ end
1469
+ class Regexp
1470
+ def as_json(options = nil); end
1471
+ def multiline?; end
1472
+ end
1473
+ module Enumerable
1474
+ def _original_sum_with_required_identity(*arg0); end
1475
+ def as_json(options = nil); end
1476
+ def exclude?(object); end
1477
+ def excluding(*elements); end
1478
+ def including(*elements); end
1479
+ def index_by; end
1480
+ def index_with(default = nil); end
1481
+ def many?; end
1482
+ def pluck(*keys); end
1483
+ def without(*elements); end
1484
+ end
1485
+ class IO
1486
+ def as_json(options = nil); end
1487
+ end
1488
+ class Range
1489
+ def as_json(options = nil); end
1490
+ def overlaps?(other); end
1491
+ def sum(identity = nil); end
1492
+ end
1493
+ class URI::Generic
1494
+ def as_json(options = nil); end
1495
+ end
1496
+ class Pathname
1497
+ def as_json(options = nil); end
1498
+ end
1499
+ class Process::Status
1500
+ def as_json(options = nil); end
1501
+ end
1502
+ class ActiveSupport::OptionMerger
1503
+ def initialize(context, options); end
1504
+ def method_missing(method, *arguments, &block); end
1505
+ end
1506
+ module I18n
1507
+ end
1508
+ class I18n::Railtie < Rails::Railtie
1509
+ def self.include_fallbacks_module; end
1510
+ def self.init_fallbacks(fallbacks); end
1511
+ def self.initialize_i18n(app); end
1512
+ def self.validate_fallbacks(fallbacks); end
1513
+ def self.watched_dirs_with_extensions(paths); end
1514
+ end
1515
+ class ActiveSupport::Railtie < Rails::Railtie
1516
+ end
1517
+ class Class < Module
1518
+ def class_attribute(*attrs, instance_accessor: nil, instance_reader: nil, instance_writer: nil, instance_predicate: nil, default: nil); end
1519
+ def descendants; end
1520
+ def subclasses; end
1521
+ end
1522
+ class ActiveSupport::Messages::RotationConfiguration
1523
+ def encrypted; end
1524
+ def initialize; end
1525
+ def rotate(kind, *args); end
1526
+ def signed; end
1527
+ end
1528
+ class ActiveSupport::ParameterFilter
1529
+ def compiled_filter; end
1530
+ def filter(params); end
1531
+ def filter_param(key, value); end
1532
+ def initialize(filters = nil, mask: nil); end
1533
+ end
1534
+ class ActiveSupport::ParameterFilter::CompiledFilter
1535
+ def blocks; end
1536
+ def call(params, parents = nil, original_params = nil); end
1537
+ def deep_regexps; end
1538
+ def initialize(regexps, deep_regexps, blocks, mask:); end
1539
+ def regexps; end
1540
+ def self.compile(filters, mask:); end
1541
+ def value_for_key(key, value, parents = nil, original_params = nil); end
1542
+ end
1543
+ class ActiveSupport::Concurrency::LoadInterlockAwareMonitor < Monitor
1544
+ def mon_enter; end
1545
+ end
1546
+ module ActiveSupport::DescendantsTracker
1547
+ def descendants; end
1548
+ def direct_descendants; end
1549
+ def inherited(base); end
1550
+ def self.accumulate_descendants(klass, acc); end
1551
+ def self.clear; end
1552
+ def self.descendants(klass); end
1553
+ def self.direct_descendants(klass); end
1554
+ def self.store_inherited(klass, descendant); end
1555
+ end
1556
+ class ActiveSupport::DescendantsTracker::DescendantsArray
1557
+ def <<(klass); end
1558
+ def cleanup!; end
1559
+ def each; end
1560
+ def initialize; end
1561
+ def initialize_copy(orig); end
1562
+ def refs_size; end
1563
+ def reject!; end
1564
+ include Enumerable
1565
+ end
1566
+ module ActiveSupport::Callbacks
1567
+ def halted_callback_hook(filter); end
1568
+ def run_callbacks(kind); end
1569
+ extend ActiveSupport::Concern
1570
+ end
1571
+ module ActiveSupport::Callbacks::Conditionals
1572
+ end
1573
+ class ActiveSupport::Callbacks::Conditionals::Value
1574
+ def call(target, value); end
1575
+ def initialize(&block); end
1576
+ end
1577
+ module ActiveSupport::Callbacks::Filters
1578
+ end
1579
+ class ActiveSupport::Callbacks::Filters::Environment < Struct
1580
+ def halted; end
1581
+ def halted=(_); end
1582
+ def self.[](*arg0); end
1583
+ def self.inspect; end
1584
+ def self.members; end
1585
+ def self.new(*arg0); end
1586
+ def target; end
1587
+ def target=(_); end
1588
+ def value; end
1589
+ def value=(_); end
1590
+ end
1591
+ class ActiveSupport::Callbacks::Filters::Before
1592
+ def self.build(callback_sequence, user_callback, user_conditions, chain_config, filter); end
1593
+ def self.halting(callback_sequence, user_callback, halted_lambda, filter); end
1594
+ def self.halting_and_conditional(callback_sequence, user_callback, user_conditions, halted_lambda, filter); end
1595
+ end
1596
+ class ActiveSupport::Callbacks::Filters::After
1597
+ def self.build(callback_sequence, user_callback, user_conditions, chain_config); end
1598
+ def self.conditional(callback_sequence, user_callback, user_conditions); end
1599
+ def self.halting(callback_sequence, user_callback); end
1600
+ def self.halting_and_conditional(callback_sequence, user_callback, user_conditions); end
1601
+ def self.simple(callback_sequence, user_callback); end
1602
+ end
1603
+ class ActiveSupport::Callbacks::Callback
1604
+ def apply(callback_sequence); end
1605
+ def chain_config; end
1606
+ def check_conditionals(conditionals); end
1607
+ def compute_identifier(filter); end
1608
+ def conditions_lambdas; end
1609
+ def current_scopes; end
1610
+ def duplicates?(other); end
1611
+ def filter; end
1612
+ def initialize(name, filter, kind, options, chain_config); end
1613
+ def kind; end
1614
+ def kind=(arg0); end
1615
+ def matches?(_kind, _filter); end
1616
+ def merge_conditional_options(chain, if_option:, unless_option:); end
1617
+ def name; end
1618
+ def name=(arg0); end
1619
+ def raw_filter; end
1620
+ def self.build(chain, filter, kind, options); end
1621
+ end
1622
+ class ActiveSupport::Callbacks::CallTemplate
1623
+ def expand(target, value, block); end
1624
+ def initialize(target, method, arguments, block); end
1625
+ def inverted_lambda; end
1626
+ def make_lambda; end
1627
+ def self.build(filter, callback); end
1628
+ end
1629
+ class ActiveSupport::Callbacks::CallbackSequence
1630
+ def after(&after); end
1631
+ def around(call_template, user_conditions); end
1632
+ def before(&before); end
1633
+ def expand_call_template(arg, block); end
1634
+ def final?; end
1635
+ def initialize(nested = nil, call_template = nil, user_conditions = nil); end
1636
+ def invoke_after(arg); end
1637
+ def invoke_before(arg); end
1638
+ def nested; end
1639
+ def skip?(arg); end
1640
+ end
1641
+ class ActiveSupport::Callbacks::CallbackChain
1642
+ def append(*callbacks); end
1643
+ def append_one(callback); end
1644
+ def chain; end
1645
+ def clear; end
1646
+ def compile; end
1647
+ def config; end
1648
+ def default_terminator; end
1649
+ def delete(o); end
1650
+ def each(&block); end
1651
+ def empty?; end
1652
+ def index(o); end
1653
+ def initialize(name, config); end
1654
+ def initialize_copy(other); end
1655
+ def insert(index, o); end
1656
+ def name; end
1657
+ def prepend(*callbacks); end
1658
+ def prepend_one(callback); end
1659
+ def remove_duplicates(callback); end
1660
+ include Enumerable
1661
+ end
1662
+ module ActiveSupport::Callbacks::ClassMethods
1663
+ def __update_callbacks(name); end
1664
+ def define_callbacks(*names); end
1665
+ def get_callbacks(name); end
1666
+ def normalize_callback_params(filters, block); end
1667
+ def reset_callbacks(name); end
1668
+ def set_callback(name, *filter_list, &block); end
1669
+ def set_callbacks(name, callbacks); end
1670
+ def skip_callback(name, *filter_list, &block); end
1671
+ end
1672
+ module ActiveSupport::JSON
1673
+ def self.convert_dates_from(data); end
1674
+ def self.decode(json); end
1675
+ def self.encode(value, options = nil); end
1676
+ def self.parse_error; end
1677
+ end
1678
+ module ActiveSupport::JSON::Encoding
1679
+ def self.escape_html_entities_in_json; end
1680
+ def self.escape_html_entities_in_json=(arg0); end
1681
+ def self.json_encoder; end
1682
+ def self.json_encoder=(arg0); end
1683
+ def self.time_precision; end
1684
+ def self.time_precision=(arg0); end
1685
+ def self.use_standard_json_time_format; end
1686
+ def self.use_standard_json_time_format=(arg0); end
1687
+ end
1688
+ class ActiveSupport::JSON::Encoding::JSONGemEncoder
1689
+ def encode(value); end
1690
+ def initialize(options = nil); end
1691
+ def jsonify(value); end
1692
+ def options; end
1693
+ def stringify(jsonified); end
1694
+ end
1695
+ class ActiveSupport::JSON::Encoding::JSONGemEncoder::EscapedString < String
1696
+ def to_json(*arg0); end
1697
+ def to_s; end
1698
+ end
1699
+ class ActiveSupport::Multibyte::Chars
1700
+ def <=>(*args, &block); end
1701
+ def =~(*args, &block); end
1702
+ def acts_like_string?(*args, &block); end
1703
+ def as_json(options = nil); end
1704
+ def chars(string); end
1705
+ def compose; end
1706
+ def decompose; end
1707
+ def grapheme_length; end
1708
+ def initialize(string); end
1709
+ def limit(limit); end
1710
+ def method_missing(method, *args, &block); end
1711
+ def normalize(form = nil); end
1712
+ def respond_to_missing?(method, include_private); end
1713
+ def reverse!(*args); end
1714
+ def reverse; end
1715
+ def self.consumes?(string); end
1716
+ def slice!(*args); end
1717
+ def split(*args); end
1718
+ def tidy_bytes!(*args); end
1719
+ def tidy_bytes(force = nil); end
1720
+ def titlecase; end
1721
+ def titleize; end
1722
+ def to_s; end
1723
+ def to_str; end
1724
+ def wrapped_string; end
1725
+ include Comparable
1726
+ end
1727
+ module ActiveSupport::ActionableError
1728
+ def self.actions(error); end
1729
+ def self.dispatch(error, name); end
1730
+ extend ActiveSupport::Concern
1731
+ end
1732
+ class ActiveSupport::ActionableError::NonActionable < StandardError
1733
+ end
1734
+ module ActiveSupport::ActionableError::ClassMethods
1735
+ def action(name, &block); end
1736
+ end
1737
+ module Benchmark
1738
+ def self.ms; end
1739
+ end
1740
+ module ActiveSupport::Benchmarkable
1741
+ def benchmark(message = nil, options = nil); end
1742
+ end
1743
+ class ActiveSupport::Subscriber
1744
+ def self.add_event_subscriber(event); end
1745
+ def self.attach_to(namespace, subscriber = nil, notifier = nil); end
1746
+ def self.detach_from(namespace, notifier = nil); end
1747
+ def self.find_attached_subscriber; end
1748
+ def self.invalid_event?(event); end
1749
+ def self.method_added(event); end
1750
+ def self.namespace; end
1751
+ def self.notifier; end
1752
+ def self.pattern_subscribed?(pattern); end
1753
+ def self.prepare_pattern(event); end
1754
+ def self.remove_event_subscriber(event); end
1755
+ def self.subscriber; end
1756
+ def self.subscribers; end
1757
+ end
1758
+ class ActiveSupport::SubscriberQueueRegistry
1759
+ def get_queue(queue_key); end
1760
+ def initialize; end
1761
+ extend ActiveSupport::PerThreadRegistry
1762
+ end
1763
+ class ActiveSupport::LogSubscriber < ActiveSupport::Subscriber
1764
+ def self.colorize_logging; end
1765
+ def self.colorize_logging=(obj); end
1766
+ def self.flush_all!; end
1767
+ def self.log_subscribers; end
1768
+ def self.logger; end
1769
+ def self.logger=(arg0); end
1770
+ end
1771
+ class ActiveSupport::BacktraceCleaner
1772
+ def add_filter(&block); end
1773
+ def add_gem_filter; end
1774
+ def add_gem_silencer; end
1775
+ def add_silencer(&block); end
1776
+ def add_stdlib_silencer; end
1777
+ def clean(backtrace, kind = nil); end
1778
+ def filter(backtrace, kind = nil); end
1779
+ def filter_backtrace(backtrace); end
1780
+ def initialize; end
1781
+ def noise(backtrace); end
1782
+ def remove_filters!; end
1783
+ def remove_silencers!; end
1784
+ def silence(backtrace); end
1785
+ end
1786
+ class ActiveSupport::StringInquirer < String
1787
+ def method_missing(method_name, *arguments); end
1788
+ def respond_to_missing?(method_name, include_private = nil); end
1789
+ end
1790
+ class ActiveSupport::ArrayInquirer < Array
1791
+ def any?(*candidates); end
1792
+ def method_missing(name, *args); end
1793
+ def respond_to_missing?(name, include_private = nil); end
1794
+ end
1795
+ module ActiveSupport::RangeWithFormat
1796
+ def to_default_s(format = nil); end
1797
+ def to_formatted_s(format = nil); end
1798
+ def to_s(format = nil); end
1799
+ end
1800
+ module ActiveSupport::CompareWithRange
1801
+ def ===(value); end
1802
+ def cover?(value); end
1803
+ def include?(value); end
1804
+ end
1805
+ module ActiveSupport::IncludeTimeWithZone
1806
+ def include?(value); end
1807
+ end
1808
+ module ActiveSupport::EachTimeWithZone
1809
+ def each(&block); end
1810
+ def ensure_iteration_allowed; end
1811
+ def step(n = nil, &block); end
1812
+ end
1813
+ module URI
1814
+ def self.parser; end
1815
+ end
1816
+ module ActiveSupport::Testing
1817
+ end
1818
+ module ActiveSupport::Testing::TaggedLogging
1819
+ def before_setup; end
1820
+ def tagged_logger; end
1821
+ def tagged_logger=(arg0); end
1822
+ end
1823
+ module ActiveSupport::Testing::SetupAndTeardown
1824
+ def after_teardown; end
1825
+ def before_setup; end
1826
+ def self.prepended(klass); end
1827
+ end
1828
+ module ActiveSupport::Testing::SetupAndTeardown::ClassMethods
1829
+ def setup(*args, &block); end
1830
+ def teardown(*args, &block); end
1831
+ end
1832
+ module ActiveSupport::Testing::Assertions
1833
+ def assert_changes(expression, message = nil, from: nil, to: nil, &block); end
1834
+ def assert_difference(expression, *args, &block); end
1835
+ def assert_no_changes(expression, message = nil, &block); end
1836
+ def assert_no_difference(expression, message = nil, &block); end
1837
+ def assert_not(object, message = nil); end
1838
+ def assert_nothing_raised; end
1839
+ end
1840
+ module ActiveSupport::Testing::Deprecation
1841
+ def assert_deprecated(match = nil, deprecator = nil, &block); end
1842
+ def assert_not_deprecated(deprecator = nil, &block); end
1843
+ def collect_deprecations(deprecator = nil); end
1844
+ end
1845
+ module ActiveSupport::Testing::Declarative
1846
+ def test(name, &block); end
1847
+ end
1848
+ module ActiveSupport::Testing::Isolation
1849
+ def run; end
1850
+ def self.forking_env?; end
1851
+ def self.included(klass); end
1852
+ include ActiveSupport::Testing::Isolation::Forking
1853
+ end
1854
+ module ActiveSupport::Testing::Isolation::Forking
1855
+ def run_in_isolation(&blk); end
1856
+ end
1857
+ module ActiveSupport::Testing::Isolation::Subprocess
1858
+ def run_in_isolation(&blk); end
1859
+ end
1860
+ module ActiveSupport::Testing::ConstantLookup
1861
+ extend ActiveSupport::Concern
1862
+ end
1863
+ module ActiveSupport::Testing::ConstantLookup::ClassMethods
1864
+ def determine_constant_from_test_name(test_name); end
1865
+ end
1866
+ class ActiveSupport::Testing::SimpleStubs
1867
+ def initialize; end
1868
+ def stub_object(object, method_name, &block); end
1869
+ def stubbing(object, method_name); end
1870
+ def unstub_all!; end
1871
+ def unstub_object(stub); end
1872
+ end
1873
+ class ActiveSupport::Testing::SimpleStubs::Stub < Struct
1874
+ def method_name; end
1875
+ def method_name=(_); end
1876
+ def object; end
1877
+ def object=(_); end
1878
+ def original_method; end
1879
+ def original_method=(_); end
1880
+ def self.[](*arg0); end
1881
+ def self.inspect; end
1882
+ def self.members; end
1883
+ def self.new(*arg0); end
1884
+ end
1885
+ module ActiveSupport::Testing::TimeHelpers
1886
+ def after_teardown; end
1887
+ def freeze_time(&block); end
1888
+ def simple_stubs; end
1889
+ def travel(duration, &block); end
1890
+ def travel_back; end
1891
+ def travel_to(date_or_time); end
1892
+ def unfreeze_time; end
1893
+ end
1894
+ module ActiveSupport::Testing::FileFixtures
1895
+ def file_fixture(fixture_name); end
1896
+ extend ActiveSupport::Concern
1897
+ end
1898
+ class ActiveSupport::Testing::Parallelization
1899
+ def <<(work); end
1900
+ def add_setup_exception(result, setup_exception); end
1901
+ def after_fork(worker); end
1902
+ def after_fork_hooks; end
1903
+ def initialize(queue_size); end
1904
+ def run_cleanup(worker); end
1905
+ def run_cleanup_hooks; end
1906
+ def self.after_fork_hook(&blk); end
1907
+ def self.after_fork_hooks; end
1908
+ def self.run_cleanup_hook(&blk); end
1909
+ def self.run_cleanup_hooks; end
1910
+ def shutdown; end
1911
+ def start; end
1912
+ end
1913
+ class ActiveSupport::Testing::Parallelization::Server
1914
+ def <<(o); end
1915
+ def initialize; end
1916
+ def length; end
1917
+ def pop; end
1918
+ def record(reporter, result); end
1919
+ include DRb::DRbUndumped
1920
+ end
1921
+ class ActiveSupport::TestCase < Minitest::Test
1922
+ def __callbacks; end
1923
+ def __callbacks?; end
1924
+ def _run_setup_callbacks(&block); end
1925
+ def _run_teardown_callbacks(&block); end
1926
+ def _setup_callbacks; end
1927
+ def _teardown_callbacks; end
1928
+ def assert_no_match(matcher, obj, msg = nil); end
1929
+ def assert_not_empty(obj, msg = nil); end
1930
+ def assert_not_equal(exp, act, msg = nil); end
1931
+ def assert_not_in_delta(exp, act, delta = nil, msg = nil); end
1932
+ def assert_not_in_epsilon(a, b, epsilon = nil, msg = nil); end
1933
+ def assert_not_includes(collection, obj, msg = nil); end
1934
+ def assert_not_instance_of(cls, obj, msg = nil); end
1935
+ def assert_not_kind_of(cls, obj, msg = nil); end
1936
+ def assert_not_nil(obj, msg = nil); end
1937
+ def assert_not_operator(o1, op, o2 = nil, msg = nil); end
1938
+ def assert_not_predicate(o1, op, msg = nil); end
1939
+ def assert_not_respond_to(obj, meth, msg = nil); end
1940
+ def assert_not_same(exp, act, msg = nil); end
1941
+ def assert_raise(*exp); end
1942
+ def file_fixture_path; end
1943
+ def file_fixture_path?; end
1944
+ def method_name; end
1945
+ def self.__callbacks; end
1946
+ def self.__callbacks=(val); end
1947
+ def self.__callbacks?; end
1948
+ def self._setup_callbacks; end
1949
+ def self._setup_callbacks=(value); end
1950
+ def self._teardown_callbacks; end
1951
+ def self._teardown_callbacks=(value); end
1952
+ def self.file_fixture_path; end
1953
+ def self.file_fixture_path=(val); end
1954
+ def self.file_fixture_path?; end
1955
+ def self.parallelize(workers: nil, with: nil); end
1956
+ def self.parallelize_setup(&block); end
1957
+ def self.parallelize_teardown(&block); end
1958
+ def self.test_order; end
1959
+ def self.test_order=(new_order); end
1960
+ extend ActiveSupport::Callbacks::ClassMethods
1961
+ extend ActiveSupport::DescendantsTracker
1962
+ extend ActiveSupport::Testing::Declarative
1963
+ extend ActiveSupport::Testing::SetupAndTeardown::ClassMethods
1964
+ include ActiveSupport::Callbacks
1965
+ include ActiveSupport::Testing::Assertions
1966
+ include ActiveSupport::Testing::Deprecation
1967
+ include ActiveSupport::Testing::FileFixtures
1968
+ include ActiveSupport::Testing::TaggedLogging
1969
+ include ActiveSupport::Testing::TimeHelpers
1970
+ end