├── .gitattributes
├── .github
└── workflows
│ ├── lint.yml
│ └── unit_tests.yml
├── .gitignore
├── .remove_sorbet_standard.yml
├── .rubocop_more.yml
├── .ruby-version
├── .simplecov
├── .standard.yml
├── .standard_no_sorbet.yml
├── .standard_sorbet.yml
├── .yardopts
├── Appraisals
├── CHANGELOG.md
├── CONTRIBUTING.md
├── Gemfile
├── Gemfile.lock
├── LICENSE
├── README.md
├── Rakefile
├── app
├── assets
│ ├── config
│ │ └── super_manifest.js
│ ├── javascripts
│ │ └── super
│ │ │ ├── .keep
│ │ │ └── application.js
│ └── stylesheets
│ │ └── super
│ │ ├── .keep
│ │ └── application.css
├── controllers
│ ├── .keep
│ └── super
│ │ ├── application_controller.rb
│ │ ├── foundation_controller.rb
│ │ ├── sitewide_controller.rb
│ │ ├── substructure_controller.rb
│ │ └── view_controller.rb
├── helpers
│ └── .keep
└── views
│ ├── .keep
│ ├── layouts
│ └── super
│ │ └── application.html.erb
│ └── super
│ ├── application
│ ├── _batch_button.html.erb
│ ├── _batch_checkbox.csv.erb
│ ├── _batch_checkbox.html.erb
│ ├── _batch_form.html.erb
│ ├── _collection_header.html.erb
│ ├── _csv_button.html.erb
│ ├── _display_actions.html.erb
│ ├── _display_index.html.erb
│ ├── _display_rich_text.html.erb
│ ├── _display_show.html.erb
│ ├── _filter.html.erb
│ ├── _flash.html.erb
│ ├── _form.html.erb
│ ├── _form_field.html.erb
│ ├── _form_field__destroy.html.erb
│ ├── _form_fieldset.html.erb
│ ├── _form_has_many.html.erb
│ ├── _form_has_one.html.erb
│ ├── _layout.html.erb
│ ├── _link.html.erb
│ ├── _member_header.html.erb
│ ├── _pagination.html.erb
│ ├── _panel.html.erb
│ ├── _query.html.erb
│ ├── _site_footer.html.erb
│ ├── _site_header.html.erb
│ ├── _sort.html.erb
│ ├── _sort_expression.html.erb
│ ├── _view_chain.html.erb
│ ├── edit.html.erb
│ ├── index.csv.erb
│ ├── index.html.erb
│ ├── new.html.erb
│ ├── nothing.html.erb
│ └── show.html.erb
│ └── feather
│ ├── README.md
│ └── _x.html
├── bin
├── appraisal
├── bundle
├── foreach
├── multitask
├── prepare_release
├── rails
├── rake
├── release
├── remove_sorbet
├── rubocop
├── spoom
├── srb
├── srb-rbi
├── standardrb
├── tapioca
├── thoroughly_test.rb
├── yard
├── yardoc
├── yarn
└── yri
├── config
└── locales
│ └── en.yml
├── dummy_path.rb
├── frontend
└── super-frontend
│ ├── dist
│ ├── .keep
│ ├── application.css
│ ├── application.js
│ └── package.json
│ └── source
│ ├── .babelrc.json
│ ├── .gitignore
│ ├── .node-version
│ ├── package.json
│ ├── postcss.config.js
│ ├── rollup.config.js
│ ├── rollup.duplicate.js
│ ├── src
│ ├── icons
│ │ └── feather
│ │ │ ├── LICENSE
│ │ │ ├── README.md
│ │ │ └── chevron-down.svg
│ ├── javascripts
│ │ ├── application.js
│ │ ├── apply_template_controller.js
│ │ ├── batch_controller.js
│ │ ├── clean_filter_param_controller.js
│ │ ├── clean_filter_params_controller.js
│ │ ├── delete_controller.js
│ │ ├── flatpickr_controller.js
│ │ ├── tab_container_controller.js
│ │ ├── tab_controller.js
│ │ └── toggle_pending_destruction_controller.js
│ └── stylesheets
│ │ ├── application.css
│ │ ├── super_base.css
│ │ └── super_components.css
│ ├── tailwind.config.js
│ └── yarn.lock
├── gemfiles
├── rails50_sprockets3.gemfile
├── rails50_sprockets3.gemfile.lock
├── rails50_sprockets3_ruby23.gemfile
├── rails50_sprockets3_ruby23.gemfile.lock
├── rails51_sprockets3.gemfile
├── rails51_sprockets3.gemfile.lock
├── rails52_sprockets4.gemfile
├── rails52_sprockets4.gemfile.lock
├── rails60_sprockets4.gemfile
├── rails60_sprockets4.gemfile.lock
├── rails61_sprockets4.gemfile
├── rails61_sprockets4.gemfile.lock
├── rails70_sprockets4.gemfile
└── rails70_sprockets4.gemfile.lock
├── lib
├── generators
│ └── super
│ │ ├── action_text
│ │ ├── USAGE
│ │ ├── action_text_generator.rb
│ │ └── templates
│ │ │ ├── pack_super_action_text.css
│ │ │ └── pack_super_action_text.js
│ │ ├── install
│ │ ├── USAGE
│ │ ├── install_generator.rb
│ │ └── templates
│ │ │ ├── base_controller.rb.tt
│ │ │ └── initializer.rb.tt
│ │ ├── resource
│ │ ├── USAGE
│ │ ├── resource_generator.rb
│ │ └── templates
│ │ │ └── resources_controller.rb.tt
│ │ └── webpacker
│ │ ├── USAGE
│ │ ├── templates
│ │ └── pack_super_application.js.tt
│ │ └── webpacker_generator.rb
├── super.rb
├── super
│ ├── action_inquirer.rb
│ ├── assets.rb
│ ├── badge.rb
│ ├── cheat.rb
│ ├── client_error.rb
│ ├── compatibility.rb
│ ├── configuration.rb
│ ├── display.rb
│ ├── display
│ │ ├── guesser.rb
│ │ └── schema_types.rb
│ ├── error.rb
│ ├── filter.rb
│ ├── filter
│ │ ├── form_object.rb
│ │ ├── guesser.rb
│ │ ├── operator.rb
│ │ └── schema_types.rb
│ ├── form.rb
│ ├── form
│ │ ├── field_transcript.rb
│ │ ├── guesser.rb
│ │ ├── inline_errors.rb
│ │ ├── schema_types.rb
│ │ └── strong_params.rb
│ ├── form_builder.rb
│ ├── form_builder
│ │ ├── action_text_methods.rb
│ │ ├── base_methods.rb
│ │ ├── flatpickr_methods.rb
│ │ └── option_methods.rb
│ ├── form_builder_helper.rb
│ ├── layout.rb
│ ├── link.rb
│ ├── link_builder.rb
│ ├── navigation.rb
│ ├── packaged_asset.rb
│ ├── pagination.rb
│ ├── panel.rb
│ ├── partial.rb
│ ├── partial
│ │ └── resolving.rb
│ ├── plugin.rb
│ ├── query.rb
│ ├── query
│ │ └── form_object_interface.rb
│ ├── railtie.rb
│ ├── render_helper.rb
│ ├── reorderable_hash.rb
│ ├── reset.rb
│ ├── schema.rb
│ ├── schema
│ │ ├── common.rb
│ │ └── guesser.rb
│ ├── sort.rb
│ ├── useful
│ │ ├── builder.rb
│ │ ├── deprecations.rb
│ │ ├── enum.rb
│ │ └── i19.rb
│ ├── version.rb
│ ├── view_chain.rb
│ └── view_helper.rb
└── tasks
│ └── super
│ └── cheat.rake
├── multitask.yaml
├── sorbet
├── config
├── rbi
│ ├── annotations
│ │ ├── actionmailer.rbi
│ │ ├── actionpack.rbi
│ │ ├── actionview.rbi
│ │ ├── activemodel.rbi
│ │ ├── activerecord.rbi
│ │ ├── activesupport.rbi
│ │ ├── globalid.rbi
│ │ ├── railties.rbi
│ │ └── rainbow.rbi
│ ├── dsl
│ │ ├── abstract_controller
│ │ │ ├── caching.rbi
│ │ │ ├── caching
│ │ │ │ └── fragments.rbi
│ │ │ ├── callbacks.rbi
│ │ │ ├── helpers.rbi
│ │ │ ├── rendering.rbi
│ │ │ └── url_for.rbi
│ │ ├── action_controller
│ │ │ ├── caching.rbi
│ │ │ ├── conditional_get.rbi
│ │ │ ├── content_security_policy.rbi
│ │ │ ├── data_streaming.rbi
│ │ │ ├── etag_with_flash.rbi
│ │ │ ├── etag_with_template_digest.rbi
│ │ │ ├── flash.rbi
│ │ │ ├── form_builder.rbi
│ │ │ ├── helpers.rbi
│ │ │ ├── params_wrapper.rbi
│ │ │ ├── redirecting.rbi
│ │ │ ├── renderers.rbi
│ │ │ ├── renderers
│ │ │ │ └── all.rbi
│ │ │ ├── request_forgery_protection.rbi
│ │ │ ├── rescue.rbi
│ │ │ ├── test_case
│ │ │ │ └── behavior.rbi
│ │ │ └── url_for.rbi
│ │ ├── action_dispatch
│ │ │ ├── integration_test.rbi
│ │ │ └── routing
│ │ │ │ ├── route_set
│ │ │ │ └── mounted_helpers.rbi
│ │ │ │ └── url_for.rbi
│ │ ├── action_mailer
│ │ │ ├── delivery_methods.rbi
│ │ │ ├── mail_delivery_job.rbi
│ │ │ └── rescuable.rbi
│ │ ├── action_view
│ │ │ ├── helpers.rbi
│ │ │ ├── helpers
│ │ │ │ ├── form_helper.rbi
│ │ │ │ ├── form_tag_helper.rbi
│ │ │ │ └── text_helper.rbi
│ │ │ ├── layouts.rbi
│ │ │ └── rendering.rbi
│ │ ├── active_job
│ │ │ ├── callbacks.rbi
│ │ │ ├── exceptions.rbi
│ │ │ ├── execution.rbi
│ │ │ ├── logging.rbi
│ │ │ ├── queue_adapter.rbi
│ │ │ ├── queue_name.rbi
│ │ │ ├── queue_priority.rbi
│ │ │ └── test_helper
│ │ │ │ └── test_queue_adapter.rbi
│ │ ├── active_model
│ │ │ ├── attribute_methods.rbi
│ │ │ ├── attributes.rbi
│ │ │ ├── dirty.rbi
│ │ │ ├── serializers
│ │ │ │ └── json.rbi
│ │ │ ├── validations.rbi
│ │ │ └── validations
│ │ │ │ └── callbacks.rbi
│ │ ├── active_record
│ │ │ ├── attribute_methods.rbi
│ │ │ ├── attribute_methods
│ │ │ │ ├── dirty.rbi
│ │ │ │ └── time_zone_conversion.rbi
│ │ │ ├── attributes.rbi
│ │ │ ├── callbacks.rbi
│ │ │ ├── core.rbi
│ │ │ ├── destroy_association_async_job.rbi
│ │ │ ├── encryption
│ │ │ │ └── encryptable_record.rbi
│ │ │ ├── inheritance.rbi
│ │ │ ├── integration.rbi
│ │ │ ├── locking
│ │ │ │ └── optimistic.rbi
│ │ │ ├── model_schema.rbi
│ │ │ ├── nested_attributes.rbi
│ │ │ ├── readonly_attributes.rbi
│ │ │ ├── reflection.rbi
│ │ │ ├── scoping.rbi
│ │ │ ├── scoping
│ │ │ │ └── default.rbi
│ │ │ ├── serialization.rbi
│ │ │ ├── signed_id.rbi
│ │ │ ├── test_fixtures.rbi
│ │ │ ├── timestamp.rbi
│ │ │ └── validations.rbi
│ │ ├── active_storage
│ │ │ └── reflection
│ │ │ │ └── active_record_extensions.rbi
│ │ ├── active_support
│ │ │ ├── actionable_error.rbi
│ │ │ ├── callbacks.rbi
│ │ │ ├── rescuable.rbi
│ │ │ └── testing
│ │ │ │ └── file_fixtures.rbi
│ │ ├── admin
│ │ │ ├── favorite_things_controller.rbi
│ │ │ ├── members_controller.rbi
│ │ │ ├── ships_controller.rbi
│ │ │ └── sinks_controller.rbi
│ │ ├── admin_controller.rbi
│ │ ├── application_controller.rbi
│ │ ├── favorite_thing.rbi
│ │ ├── generated_path_helpers_module.rbi
│ │ ├── generated_url_helpers_module.rbi
│ │ ├── member.rbi
│ │ ├── ship.rbi
│ │ ├── sink.rbi
│ │ ├── sprockets
│ │ │ └── rails
│ │ │ │ ├── context.rbi
│ │ │ │ └── helper.rbi
│ │ └── super
│ │ │ ├── application_controller.rbi
│ │ │ ├── foundation_controller.rbi
│ │ │ ├── sitewide_controller.rbi
│ │ │ ├── substructure_controller.rbi
│ │ │ └── view_controller.rbi
│ └── gems
│ │ ├── actioncable@7.0.7.2.rbi
│ │ ├── actionmailbox@7.0.7.2.rbi
│ │ ├── actionmailer@7.0.7.2.rbi
│ │ ├── actionpack@7.0.7.2.rbi
│ │ ├── actiontext@7.0.7.2.rbi
│ │ ├── actionview@7.0.7.2.rbi
│ │ ├── activejob@7.0.7.2.rbi
│ │ ├── activemodel@7.0.7.2.rbi
│ │ ├── activerecord@7.0.7.2.rbi
│ │ ├── activestorage@7.0.7.2.rbi
│ │ ├── activesupport@7.0.7.2.rbi
│ │ ├── addressable@2.8.5.rbi
│ │ ├── appraisal@2.5.0.rbi
│ │ ├── ast@2.4.2.rbi
│ │ ├── base64@0.1.1.rbi
│ │ ├── builder@3.2.4.rbi
│ │ ├── capybara@3.39.2.rbi
│ │ ├── childprocess@3.0.0.rbi
│ │ ├── coderay@1.1.3.rbi
│ │ ├── concurrent-ruby@1.2.2.rbi
│ │ ├── crass@1.0.6.rbi
│ │ ├── date@3.3.3.rbi
│ │ ├── diff-lcs@1.5.0.rbi
│ │ ├── docile@1.4.0.rbi
│ │ ├── erubi@1.12.0.rbi
│ │ ├── erubis@2.7.0.rbi
│ │ ├── globalid@1.2.1.rbi
│ │ ├── i18n-debug@1.2.0.rbi
│ │ ├── i18n@1.14.1.rbi
│ │ ├── json@2.6.3.rbi
│ │ ├── language_server-protocol@3.17.0.3.rbi
│ │ ├── lint_roller@1.1.0.rbi
│ │ ├── loofah@2.21.3.rbi
│ │ ├── mail@2.8.1.rbi
│ │ ├── marcel@1.0.2.rbi
│ │ ├── matrix@0.4.2.rbi
│ │ ├── method_source@1.0.0.rbi
│ │ ├── mini_mime@1.1.5.rbi
│ │ ├── mini_portile2@2.8.4.rbi
│ │ ├── minitest-bisect@1.7.0.rbi
│ │ ├── minitest-server@1.0.7.rbi
│ │ ├── minitest@5.20.0.rbi
│ │ ├── mocha@2.1.0.rbi
│ │ ├── net-imap@0.3.7.rbi
│ │ ├── net-pop@0.1.2.rbi
│ │ ├── net-protocol@0.2.1.rbi
│ │ ├── net-smtp@0.3.3.rbi
│ │ ├── netrc@0.11.0.rbi
│ │ ├── nio4r@2.5.9.rbi
│ │ ├── nokogiri@1.15.4.rbi
│ │ ├── parallel@1.23.0.rbi
│ │ ├── parser@3.2.2.3.rbi
│ │ ├── path_expander@1.1.1.rbi
│ │ ├── pry-rails@0.3.9.rbi
│ │ ├── pry@0.14.2.rbi
│ │ ├── public_suffix@5.0.3.rbi
│ │ ├── puma@4.3.12.rbi
│ │ ├── racc@1.7.1.rbi
│ │ ├── rack-test@2.1.0.rbi
│ │ ├── rack@2.2.8.rbi
│ │ ├── rails-dom-testing@2.2.0.rbi
│ │ ├── rails-html-sanitizer@1.6.0.rbi
│ │ ├── rails@7.0.7.2.rbi
│ │ ├── rails_anonymous_controller_testing@0.0.5.rbi
│ │ ├── railties@7.0.7.2.rbi
│ │ ├── rainbow@3.1.1.rbi
│ │ ├── rake@13.0.6.rbi
│ │ ├── rbi@0.0.17.rbi
│ │ ├── regexp_parser@2.8.1.rbi
│ │ ├── rexml@3.2.6.rbi
│ │ ├── rubocop-ast@1.29.0.rbi
│ │ ├── rubocop-no_sorbet@0.0.0-6baabac52abb42fd85fcdf84cd702ae038a4d063.rbi
│ │ ├── rubocop-performance@1.19.0.rbi
│ │ ├── rubocop-sorbet@0.7.3.rbi
│ │ ├── rubocop@1.56.2.rbi
│ │ ├── ruby-progressbar@1.13.0.rbi
│ │ ├── ruby2_keywords@0.0.5.rbi
│ │ ├── rubyzip@2.3.2.rbi
│ │ ├── selenium-webdriver@3.142.7.rbi
│ │ ├── simplecov-html@0.12.3.rbi
│ │ ├── simplecov@0.22.0.rbi
│ │ ├── simplecov_json_formatter@0.1.4.rbi
│ │ ├── spoom@1.2.1.rbi
│ │ ├── spring@4.1.1.rbi
│ │ ├── sprockets-rails@3.4.2.rbi
│ │ ├── sprockets@4.2.1.rbi
│ │ ├── sqlite3@1.4.4.rbi
│ │ ├── standard-custom@1.0.2.rbi
│ │ ├── standard-performance@1.2.0.rbi
│ │ ├── standard@1.31.0.rbi
│ │ ├── tapioca@0.11.8.rbi
│ │ ├── thor@1.2.2.rbi
│ │ ├── timeout@0.4.0.rbi
│ │ ├── tzinfo@2.0.6.rbi
│ │ ├── unicode-display_width@2.4.2.rbi
│ │ ├── unparser@0.6.8.rbi
│ │ ├── webdrivers@4.7.0.rbi
│ │ ├── websocket-driver@0.7.6.rbi
│ │ ├── websocket-extensions@0.1.5.rbi
│ │ ├── xpath@3.2.0.rbi
│ │ ├── yard-sorbet@0.8.1.rbi
│ │ ├── yard@0.9.34.rbi
│ │ └── zeitwerk@2.6.11.rbi
└── tapioca
│ ├── config.yml
│ └── require.rb
├── super.gemspec
├── super_test_engine
├── .gitignore
├── .travis.yml
├── Gemfile
├── Gemfile.lock
├── README.md
├── Rakefile
├── bin
│ ├── console
│ └── setup
├── lib
│ ├── super_test_engine.rb
│ └── super_test_engine
│ │ ├── copy_app_templates
│ │ ├── controllers
│ │ │ ├── admin
│ │ │ │ ├── favorite_things_controller.rb
│ │ │ │ ├── members_controller.rb
│ │ │ │ ├── ships_controller.rb
│ │ │ │ └── sinks_controller.rb
│ │ │ └── admin_controller.rb
│ │ ├── migrations
│ │ │ ├── 20190216224956_create_members.rb
│ │ │ ├── 20190803143320_create_ships.rb
│ │ │ ├── 20190806014121_add_ship_to_members.rb
│ │ │ ├── 20191126050453_create_favorite_things.rb
│ │ │ └── 20210411180249_create_sinks.rb
│ │ ├── models
│ │ │ ├── favorite_thing.rb
│ │ │ ├── member.rb
│ │ │ ├── ship.rb
│ │ │ └── sink.rb
│ │ ├── routes.rb
│ │ ├── seeds.rb
│ │ └── views
│ │ │ └── members
│ │ │ └── _favorite_things.html.erb
│ │ ├── fixtures
│ │ ├── favorite_things.yml
│ │ ├── members.yml
│ │ └── ships.yml
│ │ ├── generate_copy_app.rb
│ │ ├── generate_dummy.rb
│ │ └── starfleet_seeder.rb
└── super_test_engine.gemspec
└── test
├── dummy
├── rails50_sprockets3
│ ├── Rakefile
│ ├── app
│ │ ├── assets
│ │ │ ├── config
│ │ │ │ └── manifest.js
│ │ │ ├── images
│ │ │ │ └── .keep
│ │ │ ├── javascripts
│ │ │ │ ├── application.js
│ │ │ │ └── channels
│ │ │ │ │ └── .keep
│ │ │ └── stylesheets
│ │ │ │ └── application.css
│ │ ├── controllers
│ │ │ ├── admin
│ │ │ │ ├── .keep
│ │ │ │ ├── favorite_things_controller.rb
│ │ │ │ ├── members_controller.rb
│ │ │ │ ├── ships_controller.rb
│ │ │ │ └── sinks_controller.rb
│ │ │ ├── admin_controller.rb
│ │ │ ├── application_controller.rb
│ │ │ └── concerns
│ │ │ │ └── .keep
│ │ ├── helpers
│ │ │ └── application_helper.rb
│ │ ├── jobs
│ │ │ └── application_job.rb
│ │ ├── models
│ │ │ ├── application_record.rb
│ │ │ ├── concerns
│ │ │ │ └── .keep
│ │ │ ├── favorite_thing.rb
│ │ │ ├── member.rb
│ │ │ ├── ship.rb
│ │ │ └── sink.rb
│ │ └── views
│ │ │ ├── admin
│ │ │ └── members
│ │ │ │ └── _favorite_things.html.erb
│ │ │ └── layouts
│ │ │ └── application.html.erb
│ ├── bin
│ │ ├── bundle
│ │ ├── rails
│ │ ├── rake
│ │ ├── setup
│ │ └── update
│ ├── config.ru
│ ├── config
│ │ ├── application.rb
│ │ ├── boot.rb
│ │ ├── cable.yml
│ │ ├── database.yml
│ │ ├── environment.rb
│ │ ├── environments
│ │ │ ├── development.rb
│ │ │ ├── production.rb
│ │ │ └── test.rb
│ │ ├── initializers
│ │ │ ├── application_controller_renderer.rb
│ │ │ ├── assets.rb
│ │ │ ├── backtrace_silencers.rb
│ │ │ ├── cookies_serializer.rb
│ │ │ ├── filter_parameter_logging.rb
│ │ │ ├── inflections.rb
│ │ │ ├── mime_types.rb
│ │ │ ├── new_framework_defaults.rb
│ │ │ ├── session_store.rb
│ │ │ ├── super.rb
│ │ │ └── wrap_parameters.rb
│ │ ├── locales
│ │ │ └── en.yml
│ │ ├── puma.rb
│ │ ├── routes.rb
│ │ ├── secrets.yml
│ │ └── spring.rb
│ ├── db
│ │ ├── migrate
│ │ │ ├── 20190216224956_create_members.rb
│ │ │ ├── 20190803143320_create_ships.rb
│ │ │ ├── 20190806014121_add_ship_to_members.rb
│ │ │ ├── 20191126050453_create_favorite_things.rb
│ │ │ └── 20210411180249_create_sinks.rb
│ │ ├── schema.rb
│ │ └── seeds.rb
│ ├── lib
│ │ └── assets
│ │ │ └── .keep
│ ├── log
│ │ └── .keep
│ └── public
│ │ ├── 404.html
│ │ ├── 422.html
│ │ ├── 500.html
│ │ └── favicon.ico
├── rails51_sprockets3
│ ├── Rakefile
│ ├── app
│ │ ├── assets
│ │ │ ├── config
│ │ │ │ └── manifest.js
│ │ │ ├── images
│ │ │ │ └── .keep
│ │ │ ├── javascripts
│ │ │ │ ├── application.js
│ │ │ │ └── channels
│ │ │ │ │ └── .keep
│ │ │ └── stylesheets
│ │ │ │ └── application.css
│ │ ├── controllers
│ │ │ ├── admin
│ │ │ │ ├── .keep
│ │ │ │ ├── favorite_things_controller.rb
│ │ │ │ ├── members_controller.rb
│ │ │ │ ├── ships_controller.rb
│ │ │ │ └── sinks_controller.rb
│ │ │ ├── admin_controller.rb
│ │ │ ├── application_controller.rb
│ │ │ └── concerns
│ │ │ │ └── .keep
│ │ ├── helpers
│ │ │ └── application_helper.rb
│ │ ├── jobs
│ │ │ └── application_job.rb
│ │ ├── models
│ │ │ ├── application_record.rb
│ │ │ ├── concerns
│ │ │ │ └── .keep
│ │ │ ├── favorite_thing.rb
│ │ │ ├── member.rb
│ │ │ ├── ship.rb
│ │ │ └── sink.rb
│ │ └── views
│ │ │ ├── admin
│ │ │ └── members
│ │ │ │ └── _favorite_things.html.erb
│ │ │ └── layouts
│ │ │ └── application.html.erb
│ ├── bin
│ │ ├── bundle
│ │ ├── rails
│ │ ├── rake
│ │ ├── setup
│ │ ├── update
│ │ └── yarn
│ ├── config.ru
│ ├── config
│ │ ├── application.rb
│ │ ├── boot.rb
│ │ ├── cable.yml
│ │ ├── database.yml
│ │ ├── environment.rb
│ │ ├── environments
│ │ │ ├── development.rb
│ │ │ ├── production.rb
│ │ │ └── test.rb
│ │ ├── initializers
│ │ │ ├── application_controller_renderer.rb
│ │ │ ├── assets.rb
│ │ │ ├── backtrace_silencers.rb
│ │ │ ├── cookies_serializer.rb
│ │ │ ├── filter_parameter_logging.rb
│ │ │ ├── inflections.rb
│ │ │ ├── mime_types.rb
│ │ │ ├── super.rb
│ │ │ └── wrap_parameters.rb
│ │ ├── locales
│ │ │ └── en.yml
│ │ ├── puma.rb
│ │ ├── routes.rb
│ │ ├── secrets.yml
│ │ └── spring.rb
│ ├── db
│ │ ├── migrate
│ │ │ ├── 20190216224956_create_members.rb
│ │ │ ├── 20190803143320_create_ships.rb
│ │ │ ├── 20190806014121_add_ship_to_members.rb
│ │ │ ├── 20191126050453_create_favorite_things.rb
│ │ │ └── 20210411180249_create_sinks.rb
│ │ ├── schema.rb
│ │ └── seeds.rb
│ ├── lib
│ │ └── assets
│ │ │ └── .keep
│ ├── log
│ │ └── .keep
│ ├── package.json
│ └── public
│ │ ├── 404.html
│ │ ├── 422.html
│ │ ├── 500.html
│ │ └── favicon.ico
├── rails52_sprockets4
│ ├── Rakefile
│ ├── app
│ │ ├── assets
│ │ │ ├── config
│ │ │ │ └── manifest.js
│ │ │ ├── images
│ │ │ │ └── .keep
│ │ │ ├── javascripts
│ │ │ │ └── application.js
│ │ │ └── stylesheets
│ │ │ │ └── application.css
│ │ ├── controllers
│ │ │ ├── admin
│ │ │ │ ├── .keep
│ │ │ │ ├── favorite_things_controller.rb
│ │ │ │ ├── members_controller.rb
│ │ │ │ ├── ships_controller.rb
│ │ │ │ └── sinks_controller.rb
│ │ │ ├── admin_controller.rb
│ │ │ ├── application_controller.rb
│ │ │ └── concerns
│ │ │ │ └── .keep
│ │ ├── helpers
│ │ │ └── application_helper.rb
│ │ ├── jobs
│ │ │ └── application_job.rb
│ │ ├── models
│ │ │ ├── application_record.rb
│ │ │ ├── concerns
│ │ │ │ └── .keep
│ │ │ ├── favorite_thing.rb
│ │ │ ├── member.rb
│ │ │ ├── ship.rb
│ │ │ └── sink.rb
│ │ └── views
│ │ │ ├── admin
│ │ │ └── members
│ │ │ │ └── _favorite_things.html.erb
│ │ │ └── layouts
│ │ │ └── application.html.erb
│ ├── bin
│ │ ├── bundle
│ │ ├── rails
│ │ ├── rake
│ │ ├── setup
│ │ ├── update
│ │ └── yarn
│ ├── config.ru
│ ├── config
│ │ ├── application.rb
│ │ ├── boot.rb
│ │ ├── database.yml
│ │ ├── environment.rb
│ │ ├── environments
│ │ │ ├── development.rb
│ │ │ ├── production.rb
│ │ │ └── test.rb
│ │ ├── initializers
│ │ │ ├── application_controller_renderer.rb
│ │ │ ├── assets.rb
│ │ │ ├── backtrace_silencers.rb
│ │ │ ├── content_security_policy.rb
│ │ │ ├── cookies_serializer.rb
│ │ │ ├── filter_parameter_logging.rb
│ │ │ ├── inflections.rb
│ │ │ ├── mime_types.rb
│ │ │ ├── super.rb
│ │ │ └── wrap_parameters.rb
│ │ ├── locales
│ │ │ └── en.yml
│ │ ├── puma.rb
│ │ ├── routes.rb
│ │ └── spring.rb
│ ├── db
│ │ ├── migrate
│ │ │ ├── 20190216224956_create_members.rb
│ │ │ ├── 20190803143320_create_ships.rb
│ │ │ ├── 20190806014121_add_ship_to_members.rb
│ │ │ ├── 20191126050453_create_favorite_things.rb
│ │ │ └── 20210411180249_create_sinks.rb
│ │ ├── schema.rb
│ │ └── seeds.rb
│ ├── lib
│ │ └── assets
│ │ │ └── .keep
│ ├── log
│ │ └── .keep
│ ├── package.json
│ └── public
│ │ ├── 404.html
│ │ ├── 422.html
│ │ ├── 500.html
│ │ └── favicon.ico
├── rails60_sprockets4
│ ├── Rakefile
│ ├── app
│ │ ├── assets
│ │ │ ├── config
│ │ │ │ └── manifest.js
│ │ │ ├── images
│ │ │ │ └── .keep
│ │ │ └── stylesheets
│ │ │ │ └── application.css
│ │ ├── controllers
│ │ │ ├── admin
│ │ │ │ ├── .keep
│ │ │ │ ├── favorite_things_controller.rb
│ │ │ │ ├── members_controller.rb
│ │ │ │ ├── ships_controller.rb
│ │ │ │ └── sinks_controller.rb
│ │ │ ├── admin_controller.rb
│ │ │ ├── application_controller.rb
│ │ │ └── concerns
│ │ │ │ └── .keep
│ │ ├── helpers
│ │ │ └── application_helper.rb
│ │ ├── javascript
│ │ │ └── packs
│ │ │ │ └── application.js
│ │ ├── jobs
│ │ │ └── application_job.rb
│ │ ├── models
│ │ │ ├── application_record.rb
│ │ │ ├── concerns
│ │ │ │ └── .keep
│ │ │ ├── favorite_thing.rb
│ │ │ ├── member.rb
│ │ │ ├── ship.rb
│ │ │ └── sink.rb
│ │ └── views
│ │ │ ├── admin
│ │ │ └── members
│ │ │ │ └── _favorite_things.html.erb
│ │ │ └── layouts
│ │ │ └── application.html.erb
│ ├── bin
│ │ ├── rails
│ │ ├── rake
│ │ └── setup
│ ├── config.ru
│ ├── config
│ │ ├── application.rb
│ │ ├── boot.rb
│ │ ├── database.yml
│ │ ├── environment.rb
│ │ ├── environments
│ │ │ ├── development.rb
│ │ │ ├── production.rb
│ │ │ └── test.rb
│ │ ├── initializers
│ │ │ ├── application_controller_renderer.rb
│ │ │ ├── assets.rb
│ │ │ ├── backtrace_silencers.rb
│ │ │ ├── content_security_policy.rb
│ │ │ ├── cookies_serializer.rb
│ │ │ ├── filter_parameter_logging.rb
│ │ │ ├── inflections.rb
│ │ │ ├── mime_types.rb
│ │ │ ├── super.rb
│ │ │ └── wrap_parameters.rb
│ │ ├── locales
│ │ │ └── en.yml
│ │ ├── puma.rb
│ │ ├── routes.rb
│ │ └── spring.rb
│ ├── db
│ │ ├── migrate
│ │ │ ├── 20190216224956_create_members.rb
│ │ │ ├── 20190803143320_create_ships.rb
│ │ │ ├── 20190806014121_add_ship_to_members.rb
│ │ │ ├── 20191126050453_create_favorite_things.rb
│ │ │ └── 20210411180249_create_sinks.rb
│ │ ├── schema.rb
│ │ └── seeds.rb
│ ├── lib
│ │ └── assets
│ │ │ └── .keep
│ ├── log
│ │ └── .keep
│ └── public
│ │ ├── 404.html
│ │ ├── 422.html
│ │ ├── 500.html
│ │ └── favicon.ico
├── rails61_sprockets4
│ ├── Rakefile
│ ├── app
│ │ ├── assets
│ │ │ ├── config
│ │ │ │ └── manifest.js
│ │ │ ├── images
│ │ │ │ └── .keep
│ │ │ └── stylesheets
│ │ │ │ └── application.css
│ │ ├── controllers
│ │ │ ├── admin
│ │ │ │ ├── .keep
│ │ │ │ ├── favorite_things_controller.rb
│ │ │ │ ├── members_controller.rb
│ │ │ │ ├── ships_controller.rb
│ │ │ │ └── sinks_controller.rb
│ │ │ ├── admin_controller.rb
│ │ │ ├── application_controller.rb
│ │ │ └── concerns
│ │ │ │ └── .keep
│ │ ├── helpers
│ │ │ └── application_helper.rb
│ │ ├── javascript
│ │ │ └── packs
│ │ │ │ └── application.js
│ │ ├── jobs
│ │ │ └── application_job.rb
│ │ ├── models
│ │ │ ├── application_record.rb
│ │ │ ├── concerns
│ │ │ │ └── .keep
│ │ │ ├── favorite_thing.rb
│ │ │ ├── member.rb
│ │ │ ├── ship.rb
│ │ │ └── sink.rb
│ │ └── views
│ │ │ ├── admin
│ │ │ └── members
│ │ │ │ └── _favorite_things.html.erb
│ │ │ └── layouts
│ │ │ └── application.html.erb
│ ├── bin
│ │ ├── rails
│ │ ├── rake
│ │ └── setup
│ ├── config.ru
│ ├── config
│ │ ├── application.rb
│ │ ├── boot.rb
│ │ ├── database.yml
│ │ ├── environment.rb
│ │ ├── environments
│ │ │ ├── development.rb
│ │ │ ├── production.rb
│ │ │ └── test.rb
│ │ ├── initializers
│ │ │ ├── application_controller_renderer.rb
│ │ │ ├── assets.rb
│ │ │ ├── backtrace_silencers.rb
│ │ │ ├── content_security_policy.rb
│ │ │ ├── cookies_serializer.rb
│ │ │ ├── filter_parameter_logging.rb
│ │ │ ├── inflections.rb
│ │ │ ├── mime_types.rb
│ │ │ ├── permissions_policy.rb
│ │ │ ├── super.rb
│ │ │ └── wrap_parameters.rb
│ │ ├── locales
│ │ │ └── en.yml
│ │ ├── puma.rb
│ │ └── routes.rb
│ ├── db
│ │ ├── migrate
│ │ │ ├── 20190216224956_create_members.rb
│ │ │ ├── 20190803143320_create_ships.rb
│ │ │ ├── 20190806014121_add_ship_to_members.rb
│ │ │ ├── 20191126050453_create_favorite_things.rb
│ │ │ └── 20210411180249_create_sinks.rb
│ │ ├── schema.rb
│ │ └── seeds.rb
│ ├── lib
│ │ └── assets
│ │ │ └── .keep
│ ├── log
│ │ └── .keep
│ └── public
│ │ ├── 404.html
│ │ ├── 422.html
│ │ ├── 500.html
│ │ └── favicon.ico
└── rails70_sprockets4
│ ├── Rakefile
│ ├── app
│ ├── assets
│ │ ├── config
│ │ │ └── manifest.js
│ │ ├── images
│ │ │ └── .keep
│ │ └── stylesheets
│ │ │ └── application.css
│ ├── controllers
│ │ ├── admin
│ │ │ ├── .keep
│ │ │ ├── favorite_things_controller.rb
│ │ │ ├── members_controller.rb
│ │ │ ├── ships_controller.rb
│ │ │ └── sinks_controller.rb
│ │ ├── admin_controller.rb
│ │ ├── application_controller.rb
│ │ └── concerns
│ │ │ └── .keep
│ ├── helpers
│ │ └── application_helper.rb
│ ├── jobs
│ │ └── application_job.rb
│ ├── models
│ │ ├── application_record.rb
│ │ ├── concerns
│ │ │ └── .keep
│ │ ├── favorite_thing.rb
│ │ ├── member.rb
│ │ ├── ship.rb
│ │ └── sink.rb
│ └── views
│ │ ├── admin
│ │ └── members
│ │ │ └── _favorite_things.html.erb
│ │ └── layouts
│ │ └── application.html.erb
│ ├── bin
│ ├── rails
│ ├── rake
│ └── setup
│ ├── config.ru
│ ├── config
│ ├── application.rb
│ ├── boot.rb
│ ├── database.yml
│ ├── environment.rb
│ ├── environments
│ │ ├── development.rb
│ │ ├── production.rb
│ │ └── test.rb
│ ├── initializers
│ │ ├── assets.rb
│ │ ├── content_security_policy.rb
│ │ ├── filter_parameter_logging.rb
│ │ ├── inflections.rb
│ │ ├── permissions_policy.rb
│ │ └── super.rb
│ ├── locales
│ │ └── en.yml
│ ├── puma.rb
│ └── routes.rb
│ ├── db
│ ├── migrate
│ │ ├── 20190216224956_create_members.rb
│ │ ├── 20190803143320_create_ships.rb
│ │ ├── 20190806014121_add_ship_to_members.rb
│ │ ├── 20191126050453_create_favorite_things.rb
│ │ └── 20210411180249_create_sinks.rb
│ ├── schema.rb
│ └── seeds.rb
│ ├── lib
│ └── assets
│ │ └── .keep
│ ├── log
│ └── .keep
│ └── public
│ ├── 404.html
│ ├── 422.html
│ ├── 500.html
│ └── favicon.ico
├── features
├── batch_actions_test.rb
├── csv_test.rb
└── member_and_collection_actions_test.rb
├── integration
├── accepts_nested_attributes_for_many_test.rb
├── error_flash_message_test.rb
├── filter_test.rb
├── flatpickr_test.rb
├── nested_resource_test.rb
├── pagination_test.rb
├── resource_with_explicit_controls_test.rb
└── validations_test.rb
├── lib
├── generators
│ └── super
│ │ ├── action_text_generator_test.rb
│ │ ├── install_generator_test.rb
│ │ ├── resource_generator_test.rb
│ │ └── webpacker_generator_test.rb
└── super
│ ├── action_inquirer_test.rb
│ ├── assets_test.rb
│ ├── badge_test.rb
│ ├── cheat_test.rb
│ ├── controllers
│ ├── application_customized_test.rb
│ ├── application_reset_test.rb
│ └── destroy_error_test.rb
│ ├── display
│ └── guesser_test.rb
│ ├── display_test.rb
│ ├── filter
│ └── operator_test.rb
│ ├── filter_test.rb
│ ├── form
│ ├── schema_types_test.rb
│ └── strong_params_test.rb
│ ├── form_test.rb
│ ├── link_builder_test.rb
│ ├── link_test.rb
│ ├── navigation_test.rb
│ ├── packaged_asset_test.rb
│ ├── plugin_test.rb
│ ├── reorderable_hash_test.rb
│ ├── reset_test.rb
│ ├── sort
│ └── form_object_test.rb
│ ├── useful
│ ├── enum_test.rb
│ └── i19_test.rb
│ └── view_chain_test.rb
├── support
├── ad_hoc_view_helpers.rb
├── custom_database_schema.rb
└── input_flatpickr.rb
└── test_helper.rb
/.gitattributes:
--------------------------------------------------------------------------------
1 | /app/assets/**/* linguist-generated
2 | /test/dummy/**/* linguist-generated
3 | /frontend/super-frontend/dist/**/* linguist-generated
4 |
--------------------------------------------------------------------------------
/.github/workflows/lint.yml:
--------------------------------------------------------------------------------
1 | name: Lint
2 |
3 | on: [push]
4 |
5 | jobs:
6 | ruby:
7 | runs-on: ubuntu-latest
8 | steps:
9 | - uses: actions/checkout@v2
10 | - uses: ruby/setup-ruby@v1
11 | with:
12 | ruby-version: "2.7"
13 | bundler-cache: true
14 | - run: bin/standardrb --parallel
15 | - run: bin/rubocop --parallel --config .rubocop_more.yml
16 | js:
17 | runs-on: ubuntu-latest
18 | steps:
19 | - uses: actions/checkout@v2
20 | - uses: actions/setup-node@v2
21 | with:
22 | node-version: "12"
23 | - run: yarn install
24 | working-directory: frontend/super-frontend/source
25 | - run: yarn run lintci
26 | working-directory: frontend/super-frontend/source
27 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .bundle/
2 | log/*.log
3 | pkg/
4 | test/dummy/**/db/*.sqlite3
5 | test/dummy/**/db/*.sqlite3-journal
6 | test/dummy/**/log/*.log
7 | test/dummy/**/node_modules/
8 | test/dummy/**/yarn-error.log
9 | test/dummy/**/storage/
10 | test/dummy/**/tmp/
11 | test/dummy/**/public/packs*
12 |
13 | node_modules
14 | /tmp/
15 | /coverage
16 |
17 | .yardoc/
18 |
--------------------------------------------------------------------------------
/.remove_sorbet_standard.yml:
--------------------------------------------------------------------------------
1 | ---
2 | ruby_version: 2.4
3 | extend_config:
4 | - .standard_no_sorbet.yml
5 | ignore:
6 | - "test/dummy/**/*"
7 |
--------------------------------------------------------------------------------
/.rubocop_more.yml:
--------------------------------------------------------------------------------
1 | ---
2 | AllCops:
3 | DisabledByDefault: true
4 |
5 | Style/FrozenStringLiteralComment:
6 | Enabled: Yes
7 | Exclude:
8 | - "gemfiles/**/*"
9 | - "test/**/*"
10 | - "super_test_engine/**/*"
11 |
--------------------------------------------------------------------------------
/.ruby-version:
--------------------------------------------------------------------------------
1 | 3.0.6
2 |
--------------------------------------------------------------------------------
/.simplecov:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | # vim: syntax=ruby
4 |
5 | SimpleCov.command_name("minitest:#{File.basename(SUPER_DUMMY_PATH)}")
6 |
--------------------------------------------------------------------------------
/.standard.yml:
--------------------------------------------------------------------------------
1 | ---
2 | ruby_version: 2.4
3 | extend_config:
4 | - .standard_sorbet.yml
5 | ignore:
6 | - "test/dummy/**/*"
7 |
--------------------------------------------------------------------------------
/.standard_no_sorbet.yml:
--------------------------------------------------------------------------------
1 | ---
2 | require:
3 | - rubocop-no_sorbet
4 |
5 | AllCops:
6 | TargetRubyVersion: 2.4
7 | DisabledByDefault: true
8 | Exclude:
9 | - "**/node_modules/**/*"
10 | - "**/tmp/**/*"
11 | - "**/vendor/**/*"
12 | - "test/dummy/**/*"
13 | - "super_test_engine/**/*"
14 | - "sorbet/**/*"
15 |
16 | NoSorbet:
17 | Enabled: Yes
18 |
--------------------------------------------------------------------------------
/.standard_sorbet.yml:
--------------------------------------------------------------------------------
1 | ---
2 | require:
3 | - rubocop-sorbet
4 |
5 | Sorbet:
6 | DisabledByDefault: false
7 |
--------------------------------------------------------------------------------
/.yardopts:
--------------------------------------------------------------------------------
1 | --exclude lib/generators
2 | --markup markdown
3 | -
4 | LICENSE
5 |
--------------------------------------------------------------------------------
/app/assets/config/super_manifest.js:
--------------------------------------------------------------------------------
1 | //= link super/application.css
2 | //= link super/application.js
3 |
--------------------------------------------------------------------------------
/app/assets/javascripts/super/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/app/assets/javascripts/super/.keep
--------------------------------------------------------------------------------
/app/assets/stylesheets/super/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/app/assets/stylesheets/super/.keep
--------------------------------------------------------------------------------
/app/controllers/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/app/controllers/.keep
--------------------------------------------------------------------------------
/app/helpers/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/app/helpers/.keep
--------------------------------------------------------------------------------
/app/views/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/app/views/.keep
--------------------------------------------------------------------------------
/app/views/super/application/_batch_checkbox.csv.erb:
--------------------------------------------------------------------------------
1 | <%= batch_checkbox.locals[:value] -%>
2 |
--------------------------------------------------------------------------------
/app/views/super/application/_batch_checkbox.html.erb:
--------------------------------------------------------------------------------
1 | <% if current_action.collection? %>
2 |
3 | <% html_id = "batch-checkbox-#{value.to_s.gsub(/[^a-z0-9]+/, "-")}" %>
4 |
5 |
6 |
7 | <% else %>
8 | <%= value %>
9 | <% end %>
10 |
--------------------------------------------------------------------------------
/app/views/super/application/_batch_form.html.erb:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/app/views/super/application/_collection_header.html.erb:
--------------------------------------------------------------------------------
1 |
2 |
3 | <%= title %>
4 |
5 |
6 | <% resolved_collection_actions.each do |link| %>
7 | <%= super_render(
8 | link,
9 | default_options: {
10 | class: "super-button super-button--border-blue super-button-sm inline-block"
11 | }
12 | ) %>
13 | <% end %>
14 |
15 |
16 | <%= yield if block_given? %>
17 |
--------------------------------------------------------------------------------
/app/views/super/application/_display_actions.html.erb:
--------------------------------------------------------------------------------
1 |
2 | <% resolved_member_actions(record).each do |link| %>
3 | <%= super_render link %>
4 | <% end %>
5 |
6 |
--------------------------------------------------------------------------------
/app/views/super/application/_display_rich_text.html.erb:
--------------------------------------------------------------------------------
1 | <%= display_rich_text.locals[:rich_text] %>
2 |
--------------------------------------------------------------------------------
/app/views/super/application/_display_show.html.erb:
--------------------------------------------------------------------------------
1 |
2 | <% display_show.each_attribute do |attribute_name, attribute_definition| %>
3 |
4 |
5 | <%=
6 | if attribute_definition.respond_to?(:attribute_name) && attribute_definition.attribute_name
7 | attribute_definition.attribute_name
8 | else
9 | model.human_attribute_name(attribute_name)
10 | end
11 | %>
12 | |
13 | <%= display_show.render_attribute(template: self, record: @record, column: attribute_name) %> |
14 |
15 | <% end %>
16 |
17 |
--------------------------------------------------------------------------------
/app/views/super/application/_flash.html.erb:
--------------------------------------------------------------------------------
1 | <% if flash.any? %>
2 | <% colors = {
3 | "notice" => { bg: "bg-blue-100", fg: "text-blue-400", border: "border-blue-600" },
4 | "alert" => { bg: "bg-red-100", fg: "text-red-400", border: "border-red-600" },
5 | } %>
6 |
7 |
8 | <% flash.each do |level, messages| %>
9 | <% Array(messages).each do |message| %>
10 | <% color = colors[level.to_s] || colors["notice"] %>
11 |
s %s border-l-4 %s p-4 mt-2" % color %>">
12 | <%= message %>
13 |
14 | <% end %>
15 | <% end %>
16 |
17 | <% end %>
18 |
--------------------------------------------------------------------------------
/app/views/super/application/_form.html.erb:
--------------------------------------------------------------------------------
1 | <%= super_form_for(form_record(@record), url: form_action(@record)) do |f| %>
2 |
3 | <% form.each_attribute do |field, type| %>
4 | <%= super_render(
5 | type,
6 | form: f,
7 | column: field
8 | ) %>
9 | <% end %>
10 |
11 |
12 | <%= f.super.submit class: "super-button--fill-blue mt-2" %>
13 |
14 |
15 | <% end %>
16 |
--------------------------------------------------------------------------------
/app/views/super/application/_form_field.html.erb:
--------------------------------------------------------------------------------
1 | <% if form_field.super_builder %>
2 | <%= form.super.public_send(form_field.method_name, column, *form_field.args, **form_field.kwargs) %>
3 | <% else %>
4 | <%= form.public_send(form_field.method_name, column, *form_field.args, **form_field.kwargs) %>
5 | <% end %>
6 |
--------------------------------------------------------------------------------
/app/views/super/application/_form_field__destroy.html.erb:
--------------------------------------------------------------------------------
1 | <%= form.super.check_box!(column, field: { data: { action: "toggle-pending-destruction#call" } }) %>
2 |
--------------------------------------------------------------------------------
/app/views/super/application/_form_fieldset.html.erb:
--------------------------------------------------------------------------------
1 |
9 |
--------------------------------------------------------------------------------
/app/views/super/application/_form_has_one.html.erb:
--------------------------------------------------------------------------------
1 |
2 | <%
3 | if form.object.public_send(form_has_one.reader).nil?
4 | form.object.public_send("build_" + form_has_one.reader.to_s)
5 | end
6 | %>
7 |
8 | <%= form.fields_for(form_has_one.reader) do |ff| %>
9 | <%= super_render "form_fieldset", form_fieldset: form_has_one, form: ff %>
10 | <% end %>
11 |
12 |
--------------------------------------------------------------------------------
/app/views/super/application/_layout.html.erb:
--------------------------------------------------------------------------------
1 | <% if layout.header %>
2 | <%= super_render layout.header %>
3 | <% end %>
4 |
5 | <% if layout.aside %>
6 |
7 |
8 | <% if layout.main %>
9 | <%= super_render layout.main %>
10 | <% end %>
11 |
12 |
13 |
14 | <%= super_render layout.aside %>
15 |
16 |
17 | <% else %>
18 | <% if layout.main %>
19 | <%= super_render layout.main %>
20 | <% end %>
21 | <% end %>
22 |
23 | <% if layout.footer %>
24 | <%= super_render layout.footer %>
25 | <%= super_render(partial) %>
26 | <% end %>
27 |
--------------------------------------------------------------------------------
/app/views/super/application/_link.html.erb:
--------------------------------------------------------------------------------
1 | <%=
2 | link.to_link(self, local_assigns)
3 | %>
4 |
--------------------------------------------------------------------------------
/app/views/super/application/_member_header.html.erb:
--------------------------------------------------------------------------------
1 |
2 |
3 | <%= title %>
4 |
5 |
6 | <% resolved_member_actions(@record).each do |link| %>
7 | <%= super_render(
8 | link,
9 | default_options: {
10 | class: "super-button super-button--border-blue super-button-sm inline-block"
11 | }
12 | ) %>
13 | <% end %>
14 |
15 |
16 | <%= yield if block_given? %>
17 |
--------------------------------------------------------------------------------
/app/views/super/application/_pagination.html.erb:
--------------------------------------------------------------------------------
1 | <%= yield %>
2 | <% if @pagination.necessary? %>
3 |
4 |
5 | <% @pagination.each do |page_query_params, is_current_page, display| %>
6 | <%= link_to(
7 | display,
8 | paginated_link(page_query_params),
9 | class: "inline-block ml-2 text-lg #{is_current_page ? " text-gray-900" : ""}"
10 | ) %>
11 | <% end %>
12 |
13 |
14 | <% end %>
15 |
--------------------------------------------------------------------------------
/app/views/super/application/_panel.html.erb:
--------------------------------------------------------------------------------
1 | <% if panel.resolve(self, block_given? ? Proc.new { yield } : nil).resolved_parts.any? %>
2 |
3 | <% panel.resolved_parts.each do |partial| %>
4 | <%= super_render(partial) %>
5 | <% end %>
6 |
7 | <% end %>
8 |
--------------------------------------------------------------------------------
/app/views/super/application/_query.html.erb:
--------------------------------------------------------------------------------
1 | <% if filters_enabled? || sort_enabled? %>
2 | Query
3 |
4 | <%= form_tag(query.path, method: :get, data: { controller: "clean-filter-params", action: "submit->clean-filter-params#call" }) do %>
5 | <% if filters_enabled? %>
6 | <%= super_render @filter_form %>
7 | <% end %>
8 | <% if sort_enabled? %>
9 | <% if filters_enabled? %>
10 |
11 | <% end %>
12 | <%= super_render @sort_form %>
13 | <% end %>
14 |
15 | <%= submit_tag("Apply", class: "super-button super-button--border-gray mt-6") %>
16 | <% end %>
17 | <% end %>
18 |
19 | <%= yield if block_given? %>
20 |
--------------------------------------------------------------------------------
/app/views/super/application/_site_footer.html.erb:
--------------------------------------------------------------------------------
1 |
2 | <%= t("super.layout.powered_by_html", env: Rails.env.capitalize, version: Super::VERSION) %>
3 |
4 |
--------------------------------------------------------------------------------
/app/views/super/application/_view_chain.html.erb:
--------------------------------------------------------------------------------
1 | <%= view_chain.handle_super_render(self, local_assigns) %>
2 |
--------------------------------------------------------------------------------
/app/views/super/application/edit.html.erb:
--------------------------------------------------------------------------------
1 | <% raise Super::Error::NothingToRender, "edit" if @view.nil? %>
2 | <%= super_render(@view) %>
3 |
--------------------------------------------------------------------------------
/app/views/super/application/index.csv.erb:
--------------------------------------------------------------------------------
1 | <%=
2 | attribute_names = @display.each_attribute_name.to_a
3 |
4 | CSV
5 | .generate(write_headers: true, headers: attribute_names) do |csv|
6 | @records.each do |record|
7 | row = attribute_names.map do |attribute_name|
8 | @display.render_attribute(template: self, record: record, column: attribute_name)
9 | end
10 | csv << row
11 | end
12 | end
13 | .html_safe
14 | -%>
15 |
--------------------------------------------------------------------------------
/app/views/super/application/index.html.erb:
--------------------------------------------------------------------------------
1 | <% raise Super::Error::NothingToRender, "index" if @view.nil? %>
2 | <%= super_render(@view) %>
3 |
--------------------------------------------------------------------------------
/app/views/super/application/new.html.erb:
--------------------------------------------------------------------------------
1 | <% raise Super::Error::NothingToRender, "new" if @view.nil? %>
2 | <%= super_render(@view) %>
3 |
--------------------------------------------------------------------------------
/app/views/super/application/nothing.html.erb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/app/views/super/application/nothing.html.erb
--------------------------------------------------------------------------------
/app/views/super/application/show.html.erb:
--------------------------------------------------------------------------------
1 | <% raise Super::Error::NothingToRender, "show" if @view.nil? %>
2 | <%= super_render(@view) %>
3 |
--------------------------------------------------------------------------------
/app/views/super/feather/_x.html:
--------------------------------------------------------------------------------
1 |
16 |
--------------------------------------------------------------------------------
/bin/foreach:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | # frozen_string_literal: true
3 |
4 | require "optparse"
5 | require "open3"
6 | require_relative "../dummy_path"
7 |
8 | SUPER_RAILS_ROOTS.each do |_gemfile, path|
9 | Dir.chdir(path) do
10 | out, _pid = Open3.capture2e(*ARGV)
11 | $stdout.print(out)
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/bin/remove_sorbet:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -euxo pipefail
4 |
5 | bundle exec standardrb --config .remove_sorbet_standard.yml --fix || true
6 |
--------------------------------------------------------------------------------
/bin/yarn:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | # frozen_string_literal: true
3 |
4 | require_relative "../dummy_path"
5 |
6 | APP_ROOT = File.expand_path(File.join("..", SUPER_DUMMY_PATH), __dir__)
7 |
8 | Dir.chdir(APP_ROOT) do
9 | begin
10 | exec "yarnpkg", *ARGV
11 | rescue Errno::ENOENT
12 | $stderr.puts "Yarn executable was not detected in the system."
13 | $stderr.puts "Download Yarn at https://yarnpkg.com/en/docs/install"
14 | exit 1
15 | end
16 | end
17 |
--------------------------------------------------------------------------------
/frontend/super-frontend/dist/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/frontend/super-frontend/dist/.keep
--------------------------------------------------------------------------------
/frontend/super-frontend/dist/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@superadministration/super",
3 | "description": "The frontend code for Super, a Rails admin framework",
4 | "homepage": "https://github.com/superadministration/super",
5 | "license": "LGPL-3.0-only",
6 | "main": "application.js",
7 | "files": [
8 | "application.js",
9 | "application.css",
10 | "package.json"
11 | ],
12 | "version": "0.20.0"
13 | }
14 |
--------------------------------------------------------------------------------
/frontend/super-frontend/source/.babelrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | "@babel/env"
4 | ]
5 | }
6 |
--------------------------------------------------------------------------------
/frontend/super-frontend/source/.gitignore:
--------------------------------------------------------------------------------
1 | /tmp
2 |
--------------------------------------------------------------------------------
/frontend/super-frontend/source/.node-version:
--------------------------------------------------------------------------------
1 | 16.20.0
2 |
--------------------------------------------------------------------------------
/frontend/super-frontend/source/postcss.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | plugins: [
3 | require("postcss-import")(),
4 | require("postcss-inline-svg"),
5 | require("tailwindcss")("./tailwind.config.js"),
6 | require("autoprefixer"),
7 | ],
8 | };
9 |
--------------------------------------------------------------------------------
/frontend/super-frontend/source/rollup.duplicate.js:
--------------------------------------------------------------------------------
1 | const fs = require("fs");
2 | const path = require("path");
3 |
4 | export default function duplicateFile() {
5 | return {
6 | name: "duplicateFile",
7 | writeBundle: function writeBundle(options, bundle) {
8 | for (let key in bundle) {
9 | let value = bundle[key];
10 | var basename = path.basename(value.fileName);
11 | var destDir = path.join(__dirname, "../dist");
12 | var destPath = path.join(destDir, basename);
13 |
14 | if (value.source) {
15 | fs.writeFileSync(destPath, value.source);
16 | } else if (value.code) {
17 | fs.writeFileSync(destPath, value.code);
18 | }
19 | }
20 | },
21 | };
22 | }
23 |
--------------------------------------------------------------------------------
/frontend/super-frontend/source/src/icons/feather/chevron-down.svg:
--------------------------------------------------------------------------------
1 |
14 |
--------------------------------------------------------------------------------
/frontend/super-frontend/source/src/javascripts/apply_template_controller.js:
--------------------------------------------------------------------------------
1 | import { Controller } from "stimulus";
2 |
3 | export default class extends Controller {
4 | static get targets() {
5 | return ["template"];
6 | }
7 |
8 | call(event) {
9 | event.preventDefault();
10 |
11 | const unixtime = new Date().getTime();
12 | let content = this.templateTarget.innerHTML.replace(
13 | /TEMPLATEINDEX/g,
14 | unixtime.toString()
15 | );
16 |
17 | this.templateTarget.insertAdjacentHTML("beforebegin", content);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/frontend/super-frontend/source/src/javascripts/clean_filter_param_controller.js:
--------------------------------------------------------------------------------
1 | import { Controller } from "stimulus";
2 |
3 | export default class extends Controller {
4 | static get targets() {
5 | return ["candidate", "control"];
6 | }
7 |
8 | call() {
9 | let allControlsBlank = this.controlTargets.every(function(el) {
10 | return el.value === "";
11 | });
12 |
13 | if (!allControlsBlank) {
14 | return;
15 | }
16 |
17 | this.candidateTargets.forEach(function(el) {
18 | el.disabled = true;
19 | });
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/frontend/super-frontend/source/src/javascripts/clean_filter_params_controller.js:
--------------------------------------------------------------------------------
1 | import { Controller } from "stimulus";
2 |
3 | export default class extends Controller {
4 | call(event) {
5 | this.element
6 | .querySelectorAll("[data-controller='clean-filter-param']")
7 | .forEach(
8 | function(el) {
9 | let controller = this.application.getControllerForElementAndIdentifier(
10 | el,
11 | "clean-filter-param"
12 | );
13 | controller.call();
14 | }.bind(this)
15 | );
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/frontend/super-frontend/source/src/javascripts/delete_controller.js:
--------------------------------------------------------------------------------
1 | import { Controller } from "stimulus";
2 |
3 | export default class extends Controller {
4 | call(event) {
5 | event.preventDefault();
6 | this.element.remove();
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/frontend/super-frontend/source/src/javascripts/flatpickr_controller.js:
--------------------------------------------------------------------------------
1 | import { Controller } from "stimulus";
2 | import flatpickr from "flatpickr";
3 |
4 | export default class extends Controller {
5 | static get values() {
6 | return {
7 | options: Object,
8 | };
9 | }
10 |
11 | connect() {
12 | this.flatpickrInstance = flatpickr(this.element, this.optionsValue);
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/frontend/super-frontend/source/src/javascripts/toggle_pending_destruction_controller.js:
--------------------------------------------------------------------------------
1 | import { Controller } from "stimulus";
2 |
3 | export default class extends Controller {
4 | call(event) {
5 | let target = event.target;
6 |
7 | if (target) {
8 | if (target.checked) {
9 | this.element.classList.add("opacity-75", "bg-gray-100");
10 | } else {
11 | this.element.classList.remove("opacity-75", "bg-gray-100");
12 | }
13 | }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/frontend/super-frontend/source/src/stylesheets/application.css:
--------------------------------------------------------------------------------
1 | @import "tailwindcss/base";
2 | @import "@github/details-dialog-element/dist/index.css";
3 | @import "./super_base.css";
4 |
5 | @import "tailwindcss/components";
6 | @import "flatpickr/dist/themes/light.css";
7 | @import "./super_components.css";
8 |
9 | @import "tailwindcss/utilities";
10 |
--------------------------------------------------------------------------------
/frontend/super-frontend/source/src/stylesheets/super_base.css:
--------------------------------------------------------------------------------
1 | html {
2 | font-size: 15px;
3 | }
4 |
5 | a {
6 | @apply text-blue-700;
7 | }
8 |
--------------------------------------------------------------------------------
/gemfiles/rails50_sprockets3.gemfile:
--------------------------------------------------------------------------------
1 | # This file was generated by Appraisal
2 |
3 | source "https://rubygems.org"
4 |
5 | gem "rails", "~> 5.0.0"
6 | gem "sprockets", "~> 3.0"
7 | gem "capybara", "~> 3.32.2"
8 | gem "sqlite3", "~> 1.3.0"
9 | gem "minitest", "~> 5.9.0"
10 | gem "nokogiri", "~> 1.10.10"
11 | gem "simplecov", "~> 0.17.0"
12 | gem "simplecov-html", "~> 0.10.0"
13 | gem "docile", "~> 1.3.5"
14 | gem "globalid", "~> 0.4.2"
15 |
16 | gemspec path: "../"
17 |
--------------------------------------------------------------------------------
/gemfiles/rails50_sprockets3_ruby23.gemfile:
--------------------------------------------------------------------------------
1 | # This file was generated by Appraisal
2 |
3 | source "https://rubygems.org"
4 |
5 | gem "rails", "~> 5.0.0"
6 | gem "sprockets", "~> 3.0"
7 | gem "capybara", "~> 3.15.0"
8 | gem "sqlite3", "~> 1.3.0"
9 | gem "minitest", "~> 5.9.0"
10 | gem "nio4r", "~> 2.4.0"
11 | gem "rubyzip", "~> 1.0"
12 | gem "webdrivers", "~> 4.2.0"
13 | gem "nokogiri", "~> 1.10.10"
14 | gem "simplecov", "~> 0.17.0"
15 | gem "simplecov-html", "~> 0.10.0"
16 | gem "docile", "~> 1.3.5"
17 | gem "globalid", "~> 0.4.2"
18 |
19 | gemspec path: "../"
20 |
--------------------------------------------------------------------------------
/gemfiles/rails51_sprockets3.gemfile:
--------------------------------------------------------------------------------
1 | # This file was generated by Appraisal
2 |
3 | source "https://rubygems.org"
4 |
5 | gem "rails", "~> 5.1.0"
6 | gem "sprockets", "~> 3.0"
7 | gem "sqlite3", "~> 1.3.0"
8 | gem "globalid", "~> 0.4.2"
9 |
10 | gemspec path: "../"
11 |
--------------------------------------------------------------------------------
/gemfiles/rails52_sprockets4.gemfile:
--------------------------------------------------------------------------------
1 | # This file was generated by Appraisal
2 |
3 | source "https://rubygems.org"
4 |
5 | gem "rails", "~> 5.2.0"
6 | gem "sprockets", "~> 4.0"
7 | gem "sqlite3", "~> 1.3.0"
8 | gem "globalid", "~> 0.4.2"
9 |
10 | gemspec path: "../"
11 |
--------------------------------------------------------------------------------
/gemfiles/rails60_sprockets4.gemfile:
--------------------------------------------------------------------------------
1 | # This file was generated by Appraisal
2 |
3 | source "https://rubygems.org"
4 |
5 | gem "rails", "~> 6.0.0"
6 | gem "sprockets", "~> 4.0"
7 | gem "sqlite3", "~> 1.4.0"
8 |
9 | gemspec path: "../"
10 |
--------------------------------------------------------------------------------
/gemfiles/rails61_sprockets4.gemfile:
--------------------------------------------------------------------------------
1 | # This file was generated by Appraisal
2 |
3 | source "https://rubygems.org"
4 |
5 | gem "rails", "~> 6.1.0"
6 | gem "sprockets", "~> 4.0"
7 | gem "sqlite3", "~> 1.4.0"
8 | gem "rexml"
9 |
10 | gemspec path: "../"
11 |
--------------------------------------------------------------------------------
/gemfiles/rails70_sprockets4.gemfile:
--------------------------------------------------------------------------------
1 | # This file was generated by Appraisal
2 |
3 | source "https://rubygems.org"
4 |
5 | gem "rails", "~> 7.0.0"
6 | gem "sprockets-rails", "~> 3.4"
7 | gem "sqlite3", "~> 1.4.0"
8 | gem "rexml"
9 |
10 | gemspec path: "../"
11 |
--------------------------------------------------------------------------------
/lib/generators/super/action_text/templates/pack_super_action_text.js:
--------------------------------------------------------------------------------
1 | import * as ActiveStorage from "@rails/activestorage"
2 | ActiveStorage.start()
3 | require("trix")
4 | require("@rails/actiontext")
5 |
--------------------------------------------------------------------------------
/lib/generators/super/install/templates/base_controller.rb.tt:
--------------------------------------------------------------------------------
1 | class <%= parent_controller_name.classify %>Controller < Super::ApplicationController
2 | end
3 |
--------------------------------------------------------------------------------
/lib/generators/super/install/templates/initializer.rb.tt:
--------------------------------------------------------------------------------
1 | Super.configuration do |c|
2 | c.title = "My Admin Site"
3 | <% if route_namespace != "admin" -%>
4 | c.path = "/<%= route_namespace %>"
5 | <% end -%>
6 | <% if route_namespace != "admin" -%>
7 | c.generator_as = "<%= route_namespace.gsub(%r{/}, "_") %>"
8 | <% end -%>
9 | <% if controller_namespace != "admin" -%>
10 | c.generator_module = "<%= controller_namespace %>"
11 | <% end -%>
12 | end
13 |
--------------------------------------------------------------------------------
/lib/generators/super/resource/USAGE:
--------------------------------------------------------------------------------
1 | Description:
2 | Creates a controller
3 |
4 | Example:
5 | rails generate super:resource Thing
6 |
7 | This will create:
8 | app/controllers/admin/things_controller.rb
9 |
--------------------------------------------------------------------------------
/lib/generators/super/resource/templates/resources_controller.rb.tt:
--------------------------------------------------------------------------------
1 | <% module_namespacing do -%>
2 | class <%= controller_class_name %>Controller < <%= parent_controller_name.classify %>Controller
3 | private
4 |
5 | def model
6 | <%= class_name %>
7 | end
8 | end
9 | <% end -%>
10 |
--------------------------------------------------------------------------------
/lib/generators/super/webpacker/USAGE:
--------------------------------------------------------------------------------
1 | Description:
2 | Creates the necessary files for assets to be served under Webpacker
3 |
4 | Example:
5 | rails generate super:webpacker
6 |
7 | This will:
8 | Create app/javascript/packs/super/application.js
9 | Modify config/initializers/super.rb
10 |
--------------------------------------------------------------------------------
/lib/generators/super/webpacker/templates/pack_super_application.js.tt:
--------------------------------------------------------------------------------
1 | import Super from "@superadministration/super";
2 | import "@superadministration/super/application.css";
3 |
--------------------------------------------------------------------------------
/lib/super/filter.rb:
--------------------------------------------------------------------------------
1 | # typed: true
2 | # frozen_string_literal: true
3 |
4 | module Super
5 | class Filter
6 | def initialize
7 | @schema_type = SchemaTypes.new
8 | @fields = Schema::Fields.new
9 |
10 | yield(@fields, @schema_type)
11 | end
12 |
13 | attr_reader :fields
14 | end
15 | end
16 |
--------------------------------------------------------------------------------
/lib/super/form/strong_params.rb:
--------------------------------------------------------------------------------
1 | # typed: true
2 | # frozen_string_literal: true
3 |
4 | module Super
5 | class Form
6 | class StrongParams
7 | def initialize(form_schema)
8 | @form_schema = form_schema
9 | end
10 |
11 | def require(model)
12 | model.model_name.singular
13 | end
14 |
15 | def permit
16 | unfurl(@form_schema)
17 | end
18 |
19 | private
20 |
21 | def unfurl(responds_to_each_attribute)
22 | responds_to_each_attribute.each_attribute.map do |name, type|
23 | if type.nested_fields&.any?
24 | {name => [:id, *unfurl(type)]}
25 | else
26 | name
27 | end
28 | end
29 | end
30 | end
31 | end
32 | end
33 |
--------------------------------------------------------------------------------
/lib/super/form_builder/action_text_methods.rb:
--------------------------------------------------------------------------------
1 | # typed: true
2 | # frozen_string_literal: true
3 |
4 | module Super
5 | class FormBuilder
6 | class Wrappers
7 | def rich_text_area(attribute, options = {})
8 | options, defaults = split_defaults(options, class: "trix-content super-input w-full")
9 | options[:class] = join_classes(defaults[:class], options[:class])
10 |
11 | @builder.rich_text_area(attribute, options)
12 | end
13 |
14 | define_convenience :rich_text_area
15 | end
16 | end
17 | end
18 |
--------------------------------------------------------------------------------
/lib/super/layout.rb:
--------------------------------------------------------------------------------
1 | # typed: true
2 | # frozen_string_literal: true
3 |
4 | require "super/partial/resolving"
5 |
6 | module Super
7 | class Layout
8 | include Super::Partial::Resolving
9 |
10 | def initialize(header: nil, aside: nil, main: nil, footer: nil)
11 | @header = header
12 | @aside = aside
13 | @main = main
14 | @footer = footer
15 | end
16 |
17 | attr_reader :header
18 | attr_reader :aside
19 | attr_reader :main
20 | attr_reader :footer
21 |
22 | def to_partial_path
23 | "layout"
24 | end
25 | end
26 | end
27 |
--------------------------------------------------------------------------------
/lib/super/panel.rb:
--------------------------------------------------------------------------------
1 | # typed: true
2 | # frozen_string_literal: true
3 |
4 | require "super/partial/resolving"
5 |
6 | module Super
7 | class Panel
8 | include Super::Partial::Resolving
9 |
10 | def initialize(*parts)
11 | if block_given?
12 | @parts = Array.new(yield)
13 | end
14 |
15 | @parts = parts
16 | end
17 |
18 | attr_reader :parts
19 |
20 | def resolve(template, block)
21 | @resolved_parts ||= resolve_for_rendering(template, parts, block)
22 | self
23 | end
24 |
25 | def resolved_parts
26 | @resolved_parts || []
27 | end
28 |
29 | def to_partial_path
30 | "panel"
31 | end
32 | end
33 | end
34 |
--------------------------------------------------------------------------------
/lib/super/partial.rb:
--------------------------------------------------------------------------------
1 | # typed: true
2 | # frozen_string_literal: true
3 |
4 | module Super
5 | class Partial
6 | def initialize(path, locals: {})
7 | @to_partial_path = path
8 | @locals = locals
9 | end
10 |
11 | attr_reader :to_partial_path
12 | attr_reader :locals
13 | end
14 | end
15 |
--------------------------------------------------------------------------------
/lib/super/partial/resolving.rb:
--------------------------------------------------------------------------------
1 | # typed: true
2 | # frozen_string_literal: true
3 |
4 | module Super
5 | class Partial
6 | module Resolving
7 | module_function
8 |
9 | def resolve_for_rendering(template, partials, block)
10 | if block
11 | partials = [block.call, *partials]
12 | end
13 |
14 | partials =
15 | partials.map do |partial|
16 | if partial.is_a?(Symbol)
17 | template.instance_variable_get(partial)
18 | else
19 | partial
20 | end
21 | end
22 |
23 | partials.compact
24 | end
25 | end
26 | end
27 | end
28 |
--------------------------------------------------------------------------------
/lib/super/query/form_object_interface.rb:
--------------------------------------------------------------------------------
1 | # typed: strict
2 | # frozen_string_literal: true
3 |
4 | module Super::Query::FormObjectInterface
5 | extend T::Sig
6 | extend T::Helpers
7 | interface!
8 |
9 | sig { abstract.params(relation: ActiveRecord::Relation).returns(ActiveRecord::Relation) }
10 | def apply_changes(relation)
11 | end
12 |
13 | sig { abstract.returns(String) }
14 | def to_partial_path
15 | end
16 | end
17 |
--------------------------------------------------------------------------------
/lib/super/schema/common.rb:
--------------------------------------------------------------------------------
1 | # typed: true
2 | # frozen_string_literal: true
3 |
4 | module Super
5 | class Schema
6 | module Common
7 | def each_attribute_name
8 | if Kernel.block_given?
9 | @fields.keys.each do |key|
10 | yield(key)
11 | end
12 | end
13 |
14 | T.unsafe(self).enum_for(:each_attribute_name)
15 | end
16 |
17 | def each_attribute
18 | if Kernel.block_given?
19 | @fields.each do |key, value|
20 | yield(key, value)
21 | end
22 | end
23 |
24 | T.unsafe(self).enum_for(:each_attribute)
25 | end
26 | end
27 | end
28 | end
29 |
--------------------------------------------------------------------------------
/lib/super/useful/deprecations.rb:
--------------------------------------------------------------------------------
1 | # typed: true
2 | # frozen_string_literal: true
3 |
4 | require "active_support/deprecation"
5 |
6 | module Super
7 | module Useful
8 | class Deprecation
9 | VERSIONS = {}
10 | private_constant :VERSIONS
11 |
12 | def self.[](version)
13 | VERSIONS.fetch(version)
14 | end
15 | end
16 | end
17 | end
18 |
--------------------------------------------------------------------------------
/lib/super/version.rb:
--------------------------------------------------------------------------------
1 | # typed: strict
2 | # frozen_string_literal: true
3 |
4 | module Super
5 | VERSION = "0.22.0"
6 | end
7 |
--------------------------------------------------------------------------------
/lib/super/view_helper.rb:
--------------------------------------------------------------------------------
1 | # typed: true
2 | # frozen_string_literal: true
3 |
4 | module Super
5 | module ViewHelper
6 | module_function
7 |
8 | # For example, calling `classes("always", ["sometimes", condition])` would
9 | # return the string "always sometimes" or "always"
10 | def classes(*list)
11 | result = list.map do |c|
12 | case c
13 | when String
14 | c
15 | when Array
16 | if c.size != 2
17 | Kernel.raise %(Expected exactly two elements (["class", some_condition]), got: #{c.inspect})
18 | end
19 |
20 | c.first if c.last
21 | end
22 | end
23 |
24 | result.compact.join(" ")
25 | end
26 | end
27 | end
28 |
--------------------------------------------------------------------------------
/lib/tasks/super/cheat.rake:
--------------------------------------------------------------------------------
1 | # typed: false
2 | # frozen_string_literal: true
3 |
4 | namespace :super do
5 | task :cheat do
6 | require "super/cheat"
7 | cheat = Super::Cheat.new
8 | cheat.controller
9 | end
10 | end
11 |
--------------------------------------------------------------------------------
/sorbet/config:
--------------------------------------------------------------------------------
1 | --dir
2 | .
3 | --ignore=tmp/
4 | --ignore=vendor/
5 |
--------------------------------------------------------------------------------
/sorbet/rbi/annotations/actionmailer.rbi:
--------------------------------------------------------------------------------
1 | # typed: strict
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This file was pulled from a central RBI files repository.
5 | # Please run `bin/tapioca annotations` to update it.
6 |
7 | class ActionMailer::Base
8 | sig { params(headers: T.untyped, block: T.nilable(T.proc.void)).returns(Mail::Message) }
9 | def mail(headers = nil, &block); end
10 | end
11 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/abstract_controller/callbacks.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `AbstractController::Callbacks`.
5 | # Please instead update this file by running `bin/tapioca dsl AbstractController::Callbacks`.
6 |
7 | module AbstractController::Callbacks
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods ::ActiveSupport::Callbacks::ClassMethods
11 | mixes_in_class_methods GeneratedClassMethods
12 |
13 | module GeneratedClassMethods
14 | def __callbacks; end
15 | def __callbacks=(value); end
16 | def __callbacks?; end
17 | end
18 |
19 | module GeneratedInstanceMethods
20 | def __callbacks; end
21 | def __callbacks?; end
22 | end
23 | end
24 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/abstract_controller/helpers.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `AbstractController::Helpers`.
5 | # Please instead update this file by running `bin/tapioca dsl AbstractController::Helpers`.
6 |
7 | module AbstractController::Helpers
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def _helper_methods; end
14 | def _helper_methods=(value); end
15 | def _helper_methods?; end
16 | end
17 |
18 | module GeneratedInstanceMethods
19 | def _helper_methods; end
20 | def _helper_methods=(value); end
21 | def _helper_methods?; end
22 | end
23 | end
24 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/abstract_controller/rendering.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `AbstractController::Rendering`.
5 | # Please instead update this file by running `bin/tapioca dsl AbstractController::Rendering`.
6 |
7 | module AbstractController::Rendering
8 | mixes_in_class_methods ::ActionView::ViewPaths::ClassMethods
9 | end
10 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/abstract_controller/url_for.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `AbstractController::UrlFor`.
5 | # Please instead update this file by running `bin/tapioca dsl AbstractController::UrlFor`.
6 |
7 | module AbstractController::UrlFor
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def default_url_options; end
14 | def default_url_options=(value); end
15 | def default_url_options?; end
16 | end
17 |
18 | module GeneratedInstanceMethods
19 | def default_url_options; end
20 | def default_url_options=(value); end
21 | def default_url_options?; end
22 | end
23 | end
24 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/action_controller/conditional_get.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActionController::ConditionalGet`.
5 | # Please instead update this file by running `bin/tapioca dsl ActionController::ConditionalGet`.
6 |
7 | module ActionController::ConditionalGet
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def etaggers; end
14 | def etaggers=(value); end
15 | def etaggers?; end
16 | end
17 |
18 | module GeneratedInstanceMethods
19 | def etaggers; end
20 | def etaggers=(value); end
21 | def etaggers?; end
22 | end
23 | end
24 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/action_controller/data_streaming.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActionController::DataStreaming`.
5 | # Please instead update this file by running `bin/tapioca dsl ActionController::DataStreaming`.
6 |
7 | module ActionController::DataStreaming
8 | mixes_in_class_methods ::ActionController::Rendering::ClassMethods
9 | end
10 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/action_controller/flash.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActionController::Flash`.
5 | # Please instead update this file by running `bin/tapioca dsl ActionController::Flash`.
6 |
7 | module ActionController::Flash
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def _flash_types; end
14 | def _flash_types=(value); end
15 | def _flash_types?; end
16 | end
17 |
18 | module GeneratedInstanceMethods; end
19 | end
20 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/action_controller/form_builder.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActionController::FormBuilder`.
5 | # Please instead update this file by running `bin/tapioca dsl ActionController::FormBuilder`.
6 |
7 | module ActionController::FormBuilder
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def _default_form_builder; end
14 | def _default_form_builder=(value); end
15 | def _default_form_builder?; end
16 | end
17 |
18 | module GeneratedInstanceMethods; end
19 | end
20 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/action_controller/params_wrapper.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActionController::ParamsWrapper`.
5 | # Please instead update this file by running `bin/tapioca dsl ActionController::ParamsWrapper`.
6 |
7 | module ActionController::ParamsWrapper
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def _wrapper_options; end
14 | def _wrapper_options=(value); end
15 | def _wrapper_options?; end
16 | end
17 |
18 | module GeneratedInstanceMethods
19 | def _wrapper_options; end
20 | def _wrapper_options=(value); end
21 | def _wrapper_options?; end
22 | end
23 | end
24 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/action_controller/renderers.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActionController::Renderers`.
5 | # Please instead update this file by running `bin/tapioca dsl ActionController::Renderers`.
6 |
7 | module ActionController::Renderers
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def _renderers; end
14 | def _renderers=(value); end
15 | def _renderers?; end
16 | end
17 |
18 | module GeneratedInstanceMethods
19 | def _renderers; end
20 | def _renderers=(value); end
21 | def _renderers?; end
22 | end
23 | end
24 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/action_dispatch/integration_test.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActionDispatch::IntegrationTest`.
5 | # Please instead update this file by running `bin/tapioca dsl ActionDispatch::IntegrationTest`.
6 |
7 | class ActionDispatch::IntegrationTest
8 | include GeneratedUrlHelpersModule
9 | include GeneratedPathHelpersModule
10 | end
11 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/action_dispatch/routing/url_for.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActionDispatch::Routing::UrlFor`.
5 | # Please instead update this file by running `bin/tapioca dsl ActionDispatch::Routing::UrlFor`.
6 |
7 | module ActionDispatch::Routing::UrlFor
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def default_url_options; end
14 | def default_url_options=(value); end
15 | def default_url_options?; end
16 | end
17 |
18 | module GeneratedInstanceMethods
19 | def default_url_options; end
20 | def default_url_options=(value); end
21 | def default_url_options?; end
22 | end
23 | end
24 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/action_view/helpers.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActionView::Helpers`.
5 | # Please instead update this file by running `bin/tapioca dsl ActionView::Helpers`.
6 |
7 | module ActionView::Helpers
8 | include GeneratedUrlHelpersModule
9 | include GeneratedPathHelpersModule
10 |
11 | mixes_in_class_methods ::ActionView::Helpers::UrlHelper::ClassMethods
12 | mixes_in_class_methods ::ActionView::Helpers::SanitizeHelper::ClassMethods
13 | end
14 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/action_view/helpers/form_helper.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActionView::Helpers::FormHelper`.
5 | # Please instead update this file by running `bin/tapioca dsl ActionView::Helpers::FormHelper`.
6 |
7 | module ActionView::Helpers::FormHelper
8 | mixes_in_class_methods ::ActionView::Helpers::UrlHelper::ClassMethods
9 | mixes_in_class_methods ::ActionView::Helpers::SanitizeHelper::ClassMethods
10 | end
11 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/action_view/helpers/form_tag_helper.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActionView::Helpers::FormTagHelper`.
5 | # Please instead update this file by running `bin/tapioca dsl ActionView::Helpers::FormTagHelper`.
6 |
7 | module ActionView::Helpers::FormTagHelper
8 | mixes_in_class_methods ::ActionView::Helpers::UrlHelper::ClassMethods
9 | mixes_in_class_methods ::ActionView::Helpers::SanitizeHelper::ClassMethods
10 | end
11 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/action_view/helpers/text_helper.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActionView::Helpers::TextHelper`.
5 | # Please instead update this file by running `bin/tapioca dsl ActionView::Helpers::TextHelper`.
6 |
7 | module ActionView::Helpers::TextHelper
8 | mixes_in_class_methods ::ActionView::Helpers::SanitizeHelper::ClassMethods
9 | end
10 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/action_view/rendering.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActionView::Rendering`.
5 | # Please instead update this file by running `bin/tapioca dsl ActionView::Rendering`.
6 |
7 | module ActionView::Rendering
8 | mixes_in_class_methods ::ActionView::ViewPaths::ClassMethods
9 | end
10 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_job/callbacks.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveJob::Callbacks`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveJob::Callbacks`.
6 |
7 | module ActiveJob::Callbacks
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods ::ActiveSupport::Callbacks::ClassMethods
11 | mixes_in_class_methods GeneratedClassMethods
12 |
13 | module GeneratedClassMethods
14 | def __callbacks; end
15 | def __callbacks=(value); end
16 | def __callbacks?; end
17 | end
18 |
19 | module GeneratedInstanceMethods
20 | def __callbacks; end
21 | def __callbacks?; end
22 | end
23 | end
24 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_job/exceptions.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveJob::Exceptions`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveJob::Exceptions`.
6 |
7 | module ActiveJob::Exceptions
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def retry_jitter; end
14 | def retry_jitter=(value); end
15 | end
16 |
17 | module GeneratedInstanceMethods; end
18 | end
19 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_job/logging.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveJob::Logging`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveJob::Logging`.
6 |
7 | module ActiveJob::Logging
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def log_arguments; end
14 | def log_arguments=(value); end
15 | def log_arguments?; end
16 | end
17 |
18 | module GeneratedInstanceMethods; end
19 | end
20 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_job/queue_adapter.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveJob::QueueAdapter`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveJob::QueueAdapter`.
6 |
7 | module ActiveJob::QueueAdapter
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def _queue_adapter; end
14 | def _queue_adapter=(value); end
15 | def _queue_adapter_name; end
16 | def _queue_adapter_name=(value); end
17 | end
18 |
19 | module GeneratedInstanceMethods; end
20 | end
21 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_job/queue_priority.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveJob::QueuePriority`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveJob::QueuePriority`.
6 |
7 | module ActiveJob::QueuePriority
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def priority; end
14 | def priority=(value); end
15 | def priority?; end
16 | end
17 |
18 | module GeneratedInstanceMethods; end
19 | end
20 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_job/test_helper/test_queue_adapter.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveJob::TestHelper::TestQueueAdapter`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveJob::TestHelper::TestQueueAdapter`.
6 |
7 | module ActiveJob::TestHelper::TestQueueAdapter
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def _test_adapter; end
14 | def _test_adapter=(value); end
15 | end
16 |
17 | module GeneratedInstanceMethods; end
18 | end
19 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_model/serializers/json.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveModel::Serializers::JSON`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveModel::Serializers::JSON`.
6 |
7 | module ActiveModel::Serializers::JSON
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def include_root_in_json; end
14 | def include_root_in_json=(value); end
15 | def include_root_in_json?; end
16 | end
17 |
18 | module GeneratedInstanceMethods
19 | def include_root_in_json; end
20 | def include_root_in_json?; end
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_model/validations/callbacks.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveModel::Validations::Callbacks`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveModel::Validations::Callbacks`.
6 |
7 | module ActiveModel::Validations::Callbacks
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def __callbacks; end
14 | def __callbacks=(value); end
15 | def __callbacks?; end
16 | end
17 |
18 | module GeneratedInstanceMethods
19 | def __callbacks; end
20 | def __callbacks?; end
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_record/attributes.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveRecord::Attributes`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveRecord::Attributes`.
6 |
7 | module ActiveRecord::Attributes
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def attributes_to_define_after_schema_loads; end
14 | def attributes_to_define_after_schema_loads=(value); end
15 | def attributes_to_define_after_schema_loads?; end
16 | end
17 |
18 | module GeneratedInstanceMethods; end
19 | end
20 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_record/callbacks.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveRecord::Callbacks`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveRecord::Callbacks`.
6 |
7 | module ActiveRecord::Callbacks
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def __callbacks; end
14 | def __callbacks=(value); end
15 | def __callbacks?; end
16 | end
17 |
18 | module GeneratedInstanceMethods
19 | def __callbacks; end
20 | def __callbacks?; end
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_record/locking/optimistic.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveRecord::Locking::Optimistic`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveRecord::Locking::Optimistic`.
6 |
7 | module ActiveRecord::Locking::Optimistic
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def lock_optimistically; end
14 | def lock_optimistically=(value); end
15 | def lock_optimistically?; end
16 | end
17 |
18 | module GeneratedInstanceMethods
19 | def lock_optimistically; end
20 | def lock_optimistically?; end
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_record/nested_attributes.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveRecord::NestedAttributes`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveRecord::NestedAttributes`.
6 |
7 | module ActiveRecord::NestedAttributes
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def nested_attributes_options; end
14 | def nested_attributes_options=(value); end
15 | def nested_attributes_options?; end
16 | end
17 |
18 | module GeneratedInstanceMethods
19 | def nested_attributes_options; end
20 | def nested_attributes_options?; end
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_record/readonly_attributes.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveRecord::ReadonlyAttributes`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveRecord::ReadonlyAttributes`.
6 |
7 | module ActiveRecord::ReadonlyAttributes
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def _attr_readonly; end
14 | def _attr_readonly=(value); end
15 | def _attr_readonly?; end
16 | end
17 |
18 | module GeneratedInstanceMethods; end
19 | end
20 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_record/scoping.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveRecord::Scoping`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveRecord::Scoping`.
6 |
7 | module ActiveRecord::Scoping
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def default_scope_override; end
14 | def default_scope_override=(value); end
15 | def default_scopes; end
16 | def default_scopes=(value); end
17 | end
18 |
19 | module GeneratedInstanceMethods
20 | def default_scope_override; end
21 | def default_scopes; end
22 | end
23 | end
24 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_record/scoping/default.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveRecord::Scoping::Default`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveRecord::Scoping::Default`.
6 |
7 | module ActiveRecord::Scoping::Default
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def default_scope_override; end
14 | def default_scope_override=(value); end
15 | def default_scopes; end
16 | def default_scopes=(value); end
17 | end
18 |
19 | module GeneratedInstanceMethods
20 | def default_scope_override; end
21 | def default_scopes; end
22 | end
23 | end
24 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_record/serialization.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveRecord::Serialization`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveRecord::Serialization`.
6 |
7 | module ActiveRecord::Serialization
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def include_root_in_json; end
14 | def include_root_in_json=(value); end
15 | def include_root_in_json?; end
16 | end
17 |
18 | module GeneratedInstanceMethods
19 | def include_root_in_json; end
20 | def include_root_in_json?; end
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_record/signed_id.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveRecord::SignedId`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveRecord::SignedId`.
6 |
7 | module ActiveRecord::SignedId
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def signed_id_verifier_secret; end
14 | def signed_id_verifier_secret=(value); end
15 | def signed_id_verifier_secret?; end
16 | end
17 |
18 | module GeneratedInstanceMethods
19 | def signed_id_verifier_secret; end
20 | def signed_id_verifier_secret?; end
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_record/timestamp.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveRecord::Timestamp`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveRecord::Timestamp`.
6 |
7 | module ActiveRecord::Timestamp
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def record_timestamps; end
14 | def record_timestamps=(value); end
15 | def record_timestamps?; end
16 | end
17 |
18 | module GeneratedInstanceMethods
19 | def record_timestamps; end
20 | def record_timestamps=(value); end
21 | def record_timestamps?; end
22 | end
23 | end
24 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_support/actionable_error.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveSupport::ActionableError`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveSupport::ActionableError`.
6 |
7 | module ActiveSupport::ActionableError
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def _actions; end
14 | def _actions=(value); end
15 | def _actions?; end
16 | end
17 |
18 | module GeneratedInstanceMethods
19 | def _actions; end
20 | def _actions=(value); end
21 | def _actions?; end
22 | end
23 | end
24 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_support/callbacks.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveSupport::Callbacks`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveSupport::Callbacks`.
6 |
7 | module ActiveSupport::Callbacks
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def __callbacks; end
14 | def __callbacks=(value); end
15 | def __callbacks?; end
16 | end
17 |
18 | module GeneratedInstanceMethods
19 | def __callbacks; end
20 | def __callbacks?; end
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_support/rescuable.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveSupport::Rescuable`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveSupport::Rescuable`.
6 |
7 | module ActiveSupport::Rescuable
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def rescue_handlers; end
14 | def rescue_handlers=(value); end
15 | def rescue_handlers?; end
16 | end
17 |
18 | module GeneratedInstanceMethods
19 | def rescue_handlers; end
20 | def rescue_handlers=(value); end
21 | def rescue_handlers?; end
22 | end
23 | end
24 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/active_support/testing/file_fixtures.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ActiveSupport::Testing::FileFixtures`.
5 | # Please instead update this file by running `bin/tapioca dsl ActiveSupport::Testing::FileFixtures`.
6 |
7 | module ActiveSupport::Testing::FileFixtures
8 | include GeneratedInstanceMethods
9 |
10 | mixes_in_class_methods GeneratedClassMethods
11 |
12 | module GeneratedClassMethods
13 | def file_fixture_path; end
14 | def file_fixture_path=(value); end
15 | def file_fixture_path?; end
16 | end
17 |
18 | module GeneratedInstanceMethods
19 | def file_fixture_path; end
20 | def file_fixture_path?; end
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/admin/members_controller.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `Admin::MembersController`.
5 | # Please instead update this file by running `bin/tapioca dsl Admin::MembersController`.
6 |
7 | class Admin::MembersController
8 | sig { returns(HelperProxy) }
9 | def helpers; end
10 |
11 | module HelperMethods
12 | include ::ActionController::Base::HelperMethods
13 | include ::Super::FoundationController::HelperMethods
14 | include ::Super::SubstructureController::HelperMethods
15 | include ::Super::SitewideController::HelperMethods
16 | include ::Super::ViewHelper
17 | end
18 |
19 | class HelperProxy < ::ActionView::Base
20 | include HelperMethods
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/admin/ships_controller.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `Admin::ShipsController`.
5 | # Please instead update this file by running `bin/tapioca dsl Admin::ShipsController`.
6 |
7 | class Admin::ShipsController
8 | sig { returns(HelperProxy) }
9 | def helpers; end
10 |
11 | module HelperMethods
12 | include ::ActionController::Base::HelperMethods
13 | include ::Super::FoundationController::HelperMethods
14 | include ::Super::SubstructureController::HelperMethods
15 | include ::Super::SitewideController::HelperMethods
16 | include ::Super::ViewHelper
17 | end
18 |
19 | class HelperProxy < ::ActionView::Base
20 | include HelperMethods
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/admin/sinks_controller.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `Admin::SinksController`.
5 | # Please instead update this file by running `bin/tapioca dsl Admin::SinksController`.
6 |
7 | class Admin::SinksController
8 | sig { returns(HelperProxy) }
9 | def helpers; end
10 |
11 | module HelperMethods
12 | include ::ActionController::Base::HelperMethods
13 | include ::Super::FoundationController::HelperMethods
14 | include ::Super::SubstructureController::HelperMethods
15 | include ::Super::SitewideController::HelperMethods
16 | include ::Super::ViewHelper
17 | end
18 |
19 | class HelperProxy < ::ActionView::Base
20 | include HelperMethods
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/application_controller.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `ApplicationController`.
5 | # Please instead update this file by running `bin/tapioca dsl ApplicationController`.
6 |
7 | class ApplicationController
8 | include GeneratedUrlHelpersModule
9 | include GeneratedPathHelpersModule
10 |
11 | sig { returns(HelperProxy) }
12 | def helpers; end
13 |
14 | module HelperMethods
15 | include ::ActionController::Base::HelperMethods
16 | include ::ApplicationHelper
17 | end
18 |
19 | class HelperProxy < ::ActionView::Base
20 | include HelperMethods
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/super/foundation_controller.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `Super::FoundationController`.
5 | # Please instead update this file by running `bin/tapioca dsl Super::FoundationController`.
6 |
7 | class Super::FoundationController
8 | sig { returns(HelperProxy) }
9 | def helpers; end
10 |
11 | module HelperMethods
12 | include ::ActionController::Base::HelperMethods
13 |
14 | sig { returns(T.untyped) }
15 | def current_action; end
16 | end
17 |
18 | class HelperProxy < ::ActionView::Base
19 | include HelperMethods
20 | end
21 | end
22 |
--------------------------------------------------------------------------------
/sorbet/rbi/dsl/super/view_controller.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for dynamic methods in `Super::ViewController`.
5 | # Please instead update this file by running `bin/tapioca dsl Super::ViewController`.
6 |
7 | class Super::ViewController
8 | sig { returns(HelperProxy) }
9 | def helpers; end
10 |
11 | module HelperMethods
12 | include ::ActionController::Base::HelperMethods
13 | include ::Super::FoundationController::HelperMethods
14 | include ::Super::SubstructureController::HelperMethods
15 | include ::Super::SitewideController::HelperMethods
16 | include ::Super::ViewHelper
17 | end
18 |
19 | class HelperProxy < ::ActionView::Base
20 | include HelperMethods
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/sorbet/rbi/gems/builder@3.2.4.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for types exported from the `builder` gem.
5 | # Please instead update this file by running `bin/tapioca gem builder`.
6 |
7 | # THIS IS AN EMPTY RBI FILE.
8 | # see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
9 |
--------------------------------------------------------------------------------
/sorbet/rbi/gems/diff-lcs@1.5.0.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for types exported from the `diff-lcs` gem.
5 | # Please instead update this file by running `bin/tapioca gem diff-lcs`.
6 |
7 | # THIS IS AN EMPTY RBI FILE.
8 | # see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
9 |
--------------------------------------------------------------------------------
/sorbet/rbi/gems/marcel@1.0.2.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for types exported from the `marcel` gem.
5 | # Please instead update this file by running `bin/tapioca gem marcel`.
6 |
7 | # THIS IS AN EMPTY RBI FILE.
8 | # see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
9 |
--------------------------------------------------------------------------------
/sorbet/rbi/gems/mini_portile2@2.8.4.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for types exported from the `mini_portile2` gem.
5 | # Please instead update this file by running `bin/tapioca gem mini_portile2`.
6 |
7 | # THIS IS AN EMPTY RBI FILE.
8 | # see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
9 |
--------------------------------------------------------------------------------
/sorbet/rbi/gems/net-pop@0.1.2.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for types exported from the `net-pop` gem.
5 | # Please instead update this file by running `bin/tapioca gem net-pop`.
6 |
7 | # THIS IS AN EMPTY RBI FILE.
8 | # see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
9 |
--------------------------------------------------------------------------------
/sorbet/rbi/gems/net-smtp@0.3.3.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for types exported from the `net-smtp` gem.
5 | # Please instead update this file by running `bin/tapioca gem net-smtp`.
6 |
7 | # THIS IS AN EMPTY RBI FILE.
8 | # see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
9 |
--------------------------------------------------------------------------------
/sorbet/rbi/gems/rails@7.0.7.2.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for types exported from the `rails` gem.
5 | # Please instead update this file by running `bin/tapioca gem rails`.
6 |
7 | # THIS IS AN EMPTY RBI FILE.
8 | # see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
9 |
--------------------------------------------------------------------------------
/sorbet/rbi/gems/rubocop-performance@1.19.0.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for types exported from the `rubocop-performance` gem.
5 | # Please instead update this file by running `bin/tapioca gem rubocop-performance`.
6 |
7 | # THIS IS AN EMPTY RBI FILE.
8 | # see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
9 |
--------------------------------------------------------------------------------
/sorbet/rbi/gems/ruby2_keywords@0.0.5.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for types exported from the `ruby2_keywords` gem.
5 | # Please instead update this file by running `bin/tapioca gem ruby2_keywords`.
6 |
7 | # THIS IS AN EMPTY RBI FILE.
8 | # see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
9 |
--------------------------------------------------------------------------------
/sorbet/rbi/gems/simplecov_json_formatter@0.1.4.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for types exported from the `simplecov_json_formatter` gem.
5 | # Please instead update this file by running `bin/tapioca gem simplecov_json_formatter`.
6 |
7 | # THIS IS AN EMPTY RBI FILE.
8 | # see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
9 |
--------------------------------------------------------------------------------
/sorbet/rbi/gems/spring@4.1.1.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for types exported from the `spring` gem.
5 | # Please instead update this file by running `bin/tapioca gem spring`.
6 |
7 | # source://spring//lib/spring/version.rb#1
8 | module Spring; end
9 |
10 | # source://spring//lib/spring/version.rb#2
11 | Spring::VERSION = T.let(T.unsafe(nil), String)
12 |
--------------------------------------------------------------------------------
/sorbet/rbi/gems/standard-custom@1.0.2.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for types exported from the `standard-custom` gem.
5 | # Please instead update this file by running `bin/tapioca gem standard-custom`.
6 |
7 | # THIS IS AN EMPTY RBI FILE.
8 | # see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
9 |
--------------------------------------------------------------------------------
/sorbet/rbi/gems/standard-performance@1.2.0.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for types exported from the `standard-performance` gem.
5 | # Please instead update this file by running `bin/tapioca gem standard-performance`.
6 |
7 | # THIS IS AN EMPTY RBI FILE.
8 | # see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
9 |
--------------------------------------------------------------------------------
/sorbet/rbi/gems/websocket-extensions@0.1.5.rbi:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | # DO NOT EDIT MANUALLY
4 | # This is an autogenerated file for types exported from the `websocket-extensions` gem.
5 | # Please instead update this file by running `bin/tapioca gem websocket-extensions`.
6 |
7 | # THIS IS AN EMPTY RBI FILE.
8 | # see https://github.com/Shopify/tapioca#manually-requiring-parts-of-a-gem
9 |
--------------------------------------------------------------------------------
/sorbet/tapioca/config.yml:
--------------------------------------------------------------------------------
1 | gem:
2 | # Add your `gem` command parameters here:
3 | #
4 | # exclude:
5 | # - gem_name
6 | doc: false
7 | # workers: 5
8 | dsl:
9 | # Add your `dsl` command parameters here:
10 | #
11 | # exclude:
12 | # - SomeGeneratorName
13 | # workers: 5
14 | app_root: "test/dummy/rails70_sprockets4"
15 |
--------------------------------------------------------------------------------
/sorbet/tapioca/require.rb:
--------------------------------------------------------------------------------
1 | # typed: strict
2 | # frozen_string_literal: true
3 |
4 | # Add your extra requires here (`bin/tapioca require` can be used to bootstrap this list)
5 | require "rails/all"
6 | require "rails/generators"
7 | require "mocha"
8 | require "mocha/mock"
9 | require "spring/version"
10 |
--------------------------------------------------------------------------------
/super_test_engine/.gitignore:
--------------------------------------------------------------------------------
1 | /.bundle/
2 | /.yardoc
3 | /_yardoc/
4 | /coverage/
5 | /doc/
6 | /pkg/
7 | /spec/reports/
8 | /tmp/
9 |
--------------------------------------------------------------------------------
/super_test_engine/.travis.yml:
--------------------------------------------------------------------------------
1 | ---
2 | sudo: false
3 | language: ruby
4 | cache: bundler
5 | rvm:
6 | - 2.6.6
7 | before_install: gem install bundler -v 1.17.3
8 |
--------------------------------------------------------------------------------
/super_test_engine/Gemfile:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | source "https://rubygems.org"
4 |
5 | git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
6 |
7 | # Specify your gem's dependencies in super_test_engine.gemspec
8 | gemspec
9 |
--------------------------------------------------------------------------------
/super_test_engine/Gemfile.lock:
--------------------------------------------------------------------------------
1 | PATH
2 | remote: .
3 | specs:
4 | super_test_engine (0.1.1)
5 |
6 | GEM
7 | remote: https://rubygems.org/
8 | specs:
9 | minitest (5.14.4)
10 | rake (13.0.3)
11 |
12 | PLATFORMS
13 | ruby
14 |
15 | DEPENDENCIES
16 | minitest (~> 5.0)
17 | rake
18 | super_test_engine!
19 |
20 | BUNDLED WITH
21 | 1.17.3
22 |
--------------------------------------------------------------------------------
/super_test_engine/Rakefile:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | require "bundler/gem_tasks"
4 | require "rake/testtask"
5 |
6 | Rake::TestTask.new(:test) do |t|
7 | t.libs << "test"
8 | t.libs << "lib"
9 | t.test_files = FileList["test/**/*_test.rb"]
10 | end
11 |
12 | task default: :test
13 |
--------------------------------------------------------------------------------
/super_test_engine/bin/console:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | # frozen_string_literal: true
3 |
4 | require "bundler/setup"
5 | require "super_test_engine"
6 |
7 | # You can add fixtures and/or initialization code here to make experimenting
8 | # with your gem easier. You can also use a different console, if you like.
9 |
10 | # (If you use this, don't forget to add pry to your Gemfile!)
11 | # require "pry"
12 | # Pry.start
13 |
14 | require "irb"
15 | IRB.start(__FILE__)
16 |
--------------------------------------------------------------------------------
/super_test_engine/bin/setup:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 | set -euo pipefail
3 | IFS=$'\n\t'
4 | set -vx
5 |
6 | bundle install
7 |
8 | # Do any other automated setup that you need to do here
9 |
--------------------------------------------------------------------------------
/super_test_engine/lib/super_test_engine.rb:
--------------------------------------------------------------------------------
1 | # typed: strict
2 | # frozen_string_literal: true
3 |
4 | module SuperTestEngine
5 | VERSION = "0.1.1"
6 | end
7 |
--------------------------------------------------------------------------------
/super_test_engine/lib/super_test_engine/copy_app_templates/controllers/admin/sinks_controller.rb:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | class Admin::SinksController < AdminController
4 | private
5 |
6 | def model
7 | Sink
8 | end
9 | end
10 |
--------------------------------------------------------------------------------
/super_test_engine/lib/super_test_engine/copy_app_templates/controllers/admin_controller.rb:
--------------------------------------------------------------------------------
1 | # typed: true
2 |
3 | class AdminController < Super::ApplicationController
4 | private
5 |
6 | def site_navigation
7 | Super::Navigation.new do |nav|
8 | nav.link(Member)
9 | nav.link(Ship)
10 | nav.menu("Other") do
11 | nav.rest
12 | end
13 | end
14 | end
15 | end
16 |
--------------------------------------------------------------------------------
/super_test_engine/lib/super_test_engine/copy_app_templates/migrations/20190216224956_create_members.rb:
--------------------------------------------------------------------------------
1 | # typed: true
2 | # frozen_string_literal: true
3 |
4 | class CreateMembers < ActiveRecord::Migration[5.0]
5 | def change
6 | create_table :members do |t|
7 | t.string :name, null: false
8 | t.string :rank, null: false
9 | t.string :position
10 |
11 | t.timestamps
12 | end
13 | end
14 | end
15 |
--------------------------------------------------------------------------------
/super_test_engine/lib/super_test_engine/copy_app_templates/migrations/20190803143320_create_ships.rb:
--------------------------------------------------------------------------------
1 | # typed: true
2 | # frozen_string_literal: true
3 |
4 | class CreateShips < ActiveRecord::Migration[5.0]
5 | def change
6 | create_table :ships do |t|
7 | t.string :name
8 | t.string :registry
9 | t.string :class_name
10 |
11 | t.timestamps
12 | end
13 | end
14 | end
15 |
--------------------------------------------------------------------------------
/super_test_engine/lib/super_test_engine/copy_app_templates/migrations/20190806014121_add_ship_to_members.rb:
--------------------------------------------------------------------------------
1 | # typed: true
2 | # frozen_string_literal: true
3 |
4 | class AddShipToMembers < ActiveRecord::Migration[5.0]
5 | def change
6 | add_reference :members, :ship, foreign_key: true
7 | end
8 | end
9 |
--------------------------------------------------------------------------------
/super_test_engine/lib/super_test_engine/copy_app_templates/migrations/20191126050453_create_favorite_things.rb:
--------------------------------------------------------------------------------
1 | # typed: true
2 | # frozen_string_literal: true
3 |
4 | class CreateFavoriteThings < ActiveRecord::Migration[5.0]
5 | def change
6 | create_table :favorite_things do |t|
7 | t.references :member, null: false, foreign_key: true
8 | t.text :name
9 |
10 | t.timestamps
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/super_test_engine/lib/super_test_engine/copy_app_templates/migrations/20210411180249_create_sinks.rb:
--------------------------------------------------------------------------------
1 | # typed: true
2 | # frozen_string_literal: true
3 |
4 | class CreateSinks < ActiveRecord::Migration[5.0]
5 | def change
6 | create_table :sinks do |t|
7 | t.string :string_column
8 | t.text :text_column
9 | t.integer :integer_column
10 | t.bigint :bigint_column
11 | t.float :float_column
12 | t.decimal :decimal_column
13 | t.numeric :numeric_column
14 | t.datetime :datetime_column
15 | t.time :time_column
16 | t.date :date_column
17 | t.binary :binary_column
18 | t.boolean :boolean_column
19 |
20 | t.timestamps
21 | end
22 | end
23 | end
24 |
--------------------------------------------------------------------------------
/super_test_engine/lib/super_test_engine/copy_app_templates/models/favorite_thing.rb:
--------------------------------------------------------------------------------
1 | # typed: strict
2 | # frozen_string_literal: true
3 |
4 | class FavoriteThing < ApplicationRecord
5 | belongs_to :member
6 |
7 | validates :name, presence: true
8 |
9 | accepts_nested_attributes_for :member
10 | end
11 |
--------------------------------------------------------------------------------
/super_test_engine/lib/super_test_engine/copy_app_templates/models/ship.rb:
--------------------------------------------------------------------------------
1 | # typed: strict
2 | # frozen_string_literal: true
3 |
4 | class Ship < ApplicationRecord
5 | has_many :members
6 | end
7 |
--------------------------------------------------------------------------------
/super_test_engine/lib/super_test_engine/copy_app_templates/models/sink.rb:
--------------------------------------------------------------------------------
1 | # typed: strict
2 | # frozen_string_literal: true
3 |
4 | class Sink < ApplicationRecord
5 | end
6 |
--------------------------------------------------------------------------------
/super_test_engine/lib/super_test_engine/copy_app_templates/routes.rb:
--------------------------------------------------------------------------------
1 | # typed: strict
2 | # frozen_string_literal: true
3 |
4 | Rails.application.routes.draw do
5 | namespace :admin do
6 | resources :members do
7 | post :batch_noop, on: :collection
8 | resources :favorite_things, shallow: true
9 | end
10 | resources :ships
11 | resources :sinks
12 |
13 | root to: redirect("admin/members", status: 302)
14 | end
15 |
16 | root to: redirect("admin/members", status: 302)
17 | end
18 |
--------------------------------------------------------------------------------
/super_test_engine/lib/super_test_engine/copy_app_templates/seeds.rb:
--------------------------------------------------------------------------------
1 | # typed: strict
2 | # frozen_string_literal: true
3 |
4 | require "super_test_engine/starfleet_seeder"
5 | StarfleetSeeder.seed
6 |
--------------------------------------------------------------------------------
/super_test_engine/lib/super_test_engine/copy_app_templates/views/members/_favorite_things.html.erb:
--------------------------------------------------------------------------------
1 | <%= yield %>
2 | <% if @record.favorite_things.any? %>
3 | <%= render(Super::Panel.new) do %>
4 | Favorite Things
5 |
6 |
7 | <% @record.favorite_things.each do |favorite_thing| %>
8 | - <%= favorite_thing.name %>
9 | <% end %>
10 |
11 | <% end %>
12 | <% end %>
13 |
--------------------------------------------------------------------------------
/super_test_engine/lib/super_test_engine/fixtures/favorite_things.yml:
--------------------------------------------------------------------------------
1 | # Read about fixtures at https://api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html
2 |
3 | tea:
4 | member: picard
5 | name: Tea, earl grey, hot
6 |
7 | spot:
8 | member: data
9 | name: Spot
10 |
--------------------------------------------------------------------------------
/super_test_engine/lib/super_test_engine/fixtures/ships.yml:
--------------------------------------------------------------------------------
1 | ---
2 | uss_enterprise_d:
3 | name: USS Enterprise
4 | registry: NCC-1701-D
5 | class_name: Galaxy
6 |
7 | uss_jenolan:
8 | name: USS Jenolan
9 | registry: NCC-2010
10 | class_name: Sydney
11 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/Rakefile:
--------------------------------------------------------------------------------
1 | # Add your own tasks in files placed in lib/tasks ending in .rake,
2 | # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
3 |
4 | require_relative 'config/application'
5 |
6 | Rails.application.load_tasks
7 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/app/assets/config/manifest.js:
--------------------------------------------------------------------------------
1 |
2 | //= link_tree ../images
3 | //= link_directory ../javascripts .js
4 | //= link_directory ../stylesheets .css
5 | //= link super_manifest.js
6 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/app/assets/images/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails50_sprockets3/app/assets/images/.keep
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/app/assets/javascripts/application.js:
--------------------------------------------------------------------------------
1 | // This is a manifest file that'll be compiled into application.js, which will include all the files
2 | // listed below.
3 | //
4 | // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
5 | // or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path.
6 | //
7 | // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
8 | // compiled file. JavaScript code in this file should be added after the last require_* statement.
9 | //
10 | // Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
11 | // about supported directives.
12 | //
13 | //= require_tree .
14 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/app/assets/javascripts/channels/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails50_sprockets3/app/assets/javascripts/channels/.keep
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/app/controllers/admin/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails50_sprockets3/app/controllers/admin/.keep
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/app/controllers/admin/sinks_controller.rb:
--------------------------------------------------------------------------------
1 | class Admin::SinksController < AdminController
2 | private
3 |
4 | def model
5 | Sink
6 | end
7 | end
8 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/app/controllers/admin_controller.rb:
--------------------------------------------------------------------------------
1 | class AdminController < Super::ApplicationController
2 | private
3 |
4 | def site_navigation
5 | Super::Navigation.new do |nav|
6 | nav.link(Member)
7 | nav.link(Ship)
8 | nav.menu("Other") do
9 | nav.rest
10 | end
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/app/controllers/application_controller.rb:
--------------------------------------------------------------------------------
1 | class ApplicationController < ActionController::Base
2 | protect_from_forgery with: :exception
3 | end
4 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/app/controllers/concerns/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails50_sprockets3/app/controllers/concerns/.keep
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/app/helpers/application_helper.rb:
--------------------------------------------------------------------------------
1 | module ApplicationHelper
2 | end
3 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/app/jobs/application_job.rb:
--------------------------------------------------------------------------------
1 | class ApplicationJob < ActiveJob::Base
2 | end
3 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/app/models/application_record.rb:
--------------------------------------------------------------------------------
1 | class ApplicationRecord < ActiveRecord::Base
2 | self.abstract_class = true
3 | end
4 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/app/models/concerns/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails50_sprockets3/app/models/concerns/.keep
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/app/models/favorite_thing.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class FavoriteThing < ApplicationRecord
4 | belongs_to :member
5 |
6 | validates :name, presence: true
7 |
8 | accepts_nested_attributes_for :member
9 | end
10 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/app/models/member.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class Member < ApplicationRecord
4 | enum rank: {
5 | captain: "Captain",
6 | commander: "Commander",
7 | lieutenant_commander: "Lieutenant Commander",
8 | lieutenant: "Lieutenant",
9 | lieutenant_junior_grade: "Lieutenant Junior Grade",
10 | ensign: "Ensign",
11 | nco: "NCO",
12 | }
13 |
14 | belongs_to :ship
15 | has_many :favorite_things, dependent: :delete_all
16 |
17 | accepts_nested_attributes_for(
18 | :favorite_things,
19 | allow_destroy: true,
20 | reject_if: -> (record) { record[:name].blank? }
21 | )
22 |
23 | validates :name, presence: true
24 | validates :rank, presence: true
25 | validates :position, presence: true
26 | end
27 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/app/models/ship.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class Ship < ApplicationRecord
4 | has_many :members
5 | end
6 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/app/models/sink.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class Sink < ApplicationRecord
4 | end
5 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/app/views/admin/members/_favorite_things.html.erb:
--------------------------------------------------------------------------------
1 | <%= yield %>
2 | <% if @record.favorite_things.any? %>
3 | <%= render(Super::Panel.new) do %>
4 | Favorite Things
5 |
6 |
7 | <% @record.favorite_things.each do |favorite_thing| %>
8 | - <%= favorite_thing.name %>
9 | <% end %>
10 |
11 | <% end %>
12 | <% end %>
13 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/app/views/layouts/application.html.erb:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Dummy
5 | <%= csrf_meta_tags %>
6 |
7 | <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
8 | <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
9 |
10 |
11 |
12 | <%= yield %>
13 |
14 |
15 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/bin/bundle:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
3 | load Gem.bin_path('bundler', 'bundle')
4 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/bin/rails:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | APP_PATH = File.expand_path('../config/application', __dir__)
3 | require_relative '../config/boot'
4 | require 'rails/commands'
5 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/bin/rake:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | require_relative '../config/boot'
3 | require 'rake'
4 | Rake.application.run
5 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/config.ru:
--------------------------------------------------------------------------------
1 | # This file is used by Rack-based servers to start the application.
2 |
3 | require_relative 'config/environment'
4 |
5 | run Rails.application
6 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/config/boot.rb:
--------------------------------------------------------------------------------
1 | # Set up gems listed in the Gemfile.
2 | ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../../Gemfile', __dir__)
3 |
4 | require 'bundler/setup' if File.exist?(ENV['BUNDLE_GEMFILE'])
5 | $LOAD_PATH.unshift File.expand_path('../../../lib', __dir__)
6 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/config/cable.yml:
--------------------------------------------------------------------------------
1 | development:
2 | adapter: async
3 |
4 | test:
5 | adapter: async
6 |
7 | production:
8 | adapter: redis
9 | url: redis://localhost:6379/1
10 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/config/database.yml:
--------------------------------------------------------------------------------
1 | # SQLite version 3.x
2 | # gem install sqlite3
3 | #
4 | # Ensure the SQLite 3 gem is defined in your Gemfile
5 | # gem 'sqlite3'
6 | #
7 | default: &default
8 | adapter: sqlite3
9 | pool: 5
10 | timeout: 5000
11 |
12 | development:
13 | <<: *default
14 | database: db/development.sqlite3
15 |
16 | # Warning: The database defined as "test" will be erased and
17 | # re-generated from your development database when you run "rake".
18 | # Do not set this db to the same as development or production.
19 | test:
20 | <<: *default
21 | database: db/test.sqlite3
22 |
23 | production:
24 | <<: *default
25 | database: db/production.sqlite3
26 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/config/environment.rb:
--------------------------------------------------------------------------------
1 | # Load the Rails application.
2 | require_relative 'application'
3 |
4 | # Initialize the Rails application.
5 | Rails.application.initialize!
6 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/config/initializers/application_controller_renderer.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # ActiveSupport::Reloader.to_prepare do
4 | # ApplicationController.renderer.defaults.merge!(
5 | # http_host: 'example.org',
6 | # https: false
7 | # )
8 | # end
9 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/config/initializers/assets.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Version of your assets, change this if you want to expire all your assets.
4 | Rails.application.config.assets.version = '1.0'
5 |
6 | # Add additional assets to the asset load path
7 | # Rails.application.config.assets.paths << Emoji.images_path
8 |
9 | # Precompile additional assets.
10 | # application.js, application.css, and all non-JS/CSS in app/assets folder are already added.
11 | # Rails.application.config.assets.precompile += %w( search.js )
12 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/config/initializers/backtrace_silencers.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces.
4 | # Rails.backtrace_cleaner.add_silencer { |line| line =~ /my_noisy_library/ }
5 |
6 | # You can also remove all the silencers if you're trying to debug a problem that might stem from framework code.
7 | # Rails.backtrace_cleaner.remove_silencers!
8 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/config/initializers/cookies_serializer.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Specify a serializer for the signed and encrypted cookie jars.
4 | # Valid options are :json, :marshal, and :hybrid.
5 | Rails.application.config.action_dispatch.cookies_serializer = :json
6 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/config/initializers/filter_parameter_logging.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Configure sensitive parameters which will be filtered from the log file.
4 | Rails.application.config.filter_parameters += [:password]
5 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/config/initializers/inflections.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Add new inflection rules using the following format. Inflections
4 | # are locale specific, and you may define rules for as many different
5 | # locales as you wish. All of these examples are active by default:
6 | # ActiveSupport::Inflector.inflections(:en) do |inflect|
7 | # inflect.plural /^(ox)$/i, '\1en'
8 | # inflect.singular /^(ox)en/i, '\1'
9 | # inflect.irregular 'person', 'people'
10 | # inflect.uncountable %w( fish sheep )
11 | # end
12 |
13 | # These inflection rules are supported but not enabled by default:
14 | # ActiveSupport::Inflector.inflections(:en) do |inflect|
15 | # inflect.acronym 'RESTful'
16 | # end
17 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/config/initializers/mime_types.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Add new mime types for use in respond_to blocks:
4 | # Mime::Type.register "text/richtext", :rtf
5 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/config/initializers/session_store.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | Rails.application.config.session_store :cookie_store, key: '_dummy_session'
4 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/config/initializers/super.rb:
--------------------------------------------------------------------------------
1 | Super.configuration do |c|
2 | c.title = "My Admin Site"
3 | end
4 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/config/initializers/wrap_parameters.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # This file contains settings for ActionController::ParamsWrapper which
4 | # is enabled by default.
5 |
6 | # Enable parameter wrapping for JSON. You can disable this by setting :format to an empty array.
7 | ActiveSupport.on_load(:action_controller) do
8 | wrap_parameters format: [:json]
9 | end
10 |
11 | # To enable root element in JSON for ActiveRecord objects.
12 | # ActiveSupport.on_load(:active_record) do
13 | # self.include_root_in_json = true
14 | # end
15 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/config/locales/en.yml:
--------------------------------------------------------------------------------
1 | # Files in the config/locales directory are used for internationalization
2 | # and are automatically loaded by Rails. If you want to use locales other
3 | # than English, add the necessary files in this directory.
4 | #
5 | # To use the locales, use `I18n.t`:
6 | #
7 | # I18n.t 'hello'
8 | #
9 | # In views, this is aliased to just `t`:
10 | #
11 | # <%= t('hello') %>
12 | #
13 | # To use a different locale, set it with `I18n.locale`:
14 | #
15 | # I18n.locale = :es
16 | #
17 | # This would use the information in config/locales/es.yml.
18 | #
19 | # To learn more, please read the Rails Internationalization guide
20 | # available at http://guides.rubyonrails.org/i18n.html.
21 |
22 | en:
23 | hello: "Hello world"
24 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/config/routes.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | Rails.application.routes.draw do
4 | namespace :admin do
5 | resources :members do
6 | post :batch_noop, on: :collection
7 | resources :favorite_things, shallow: true
8 | end
9 | resources :ships
10 | resources :sinks
11 |
12 | root to: redirect("admin/members", status: 302)
13 | end
14 |
15 | root to: redirect("admin/members", status: 302)
16 | end
17 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/config/spring.rb:
--------------------------------------------------------------------------------
1 | %w(
2 | .ruby-version
3 | .rbenv-vars
4 | tmp/restart.txt
5 | tmp/caching-dev.txt
6 | ).each { |path| Spring.watch(path) }
7 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/db/migrate/20190216224956_create_members.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateMembers < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :members do |t|
6 | t.string :name, null: false
7 | t.string :rank, null: false
8 | t.string :position
9 |
10 | t.timestamps
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/db/migrate/20190803143320_create_ships.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateShips < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :ships do |t|
6 | t.string :name
7 | t.string :registry
8 | t.string :class_name
9 |
10 | t.timestamps
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/db/migrate/20190806014121_add_ship_to_members.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class AddShipToMembers < ActiveRecord::Migration[5.0]
4 | def change
5 | add_reference :members, :ship, foreign_key: true
6 | end
7 | end
8 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/db/migrate/20191126050453_create_favorite_things.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateFavoriteThings < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :favorite_things do |t|
6 | t.references :member, null: false, foreign_key: true
7 | t.text :name
8 |
9 | t.timestamps
10 | end
11 | end
12 | end
13 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/db/migrate/20210411180249_create_sinks.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateSinks < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :sinks do |t|
6 | t.string :string_column
7 | t.text :text_column
8 | t.integer :integer_column
9 | t.bigint :bigint_column
10 | t.float :float_column
11 | t.decimal :decimal_column
12 | t.numeric :numeric_column
13 | t.datetime :datetime_column
14 | t.time :time_column
15 | t.date :date_column
16 | t.binary :binary_column
17 | t.boolean :boolean_column
18 |
19 | t.timestamps
20 | end
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/db/seeds.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | require "super_test_engine/starfleet_seeder"
4 | StarfleetSeeder.seed
5 |
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/lib/assets/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails50_sprockets3/lib/assets/.keep
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/log/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails50_sprockets3/log/.keep
--------------------------------------------------------------------------------
/test/dummy/rails50_sprockets3/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails50_sprockets3/public/favicon.ico
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/Rakefile:
--------------------------------------------------------------------------------
1 | # Add your own tasks in files placed in lib/tasks ending in .rake,
2 | # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
3 |
4 | require_relative 'config/application'
5 |
6 | Rails.application.load_tasks
7 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/app/assets/config/manifest.js:
--------------------------------------------------------------------------------
1 |
2 | //= link_tree ../images
3 | //= link_directory ../javascripts .js
4 | //= link_directory ../stylesheets .css
5 | //= link super_manifest.js
6 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/app/assets/images/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails51_sprockets3/app/assets/images/.keep
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/app/assets/javascripts/application.js:
--------------------------------------------------------------------------------
1 | // This is a manifest file that'll be compiled into application.js, which will include all the files
2 | // listed below.
3 | //
4 | // Any JavaScript/Coffee file within this directory, lib/assets/javascripts, vendor/assets/javascripts,
5 | // or any plugin's vendor/assets/javascripts directory can be referenced here using a relative path.
6 | //
7 | // It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
8 | // compiled file. JavaScript code in this file should be added after the last require_* statement.
9 | //
10 | // Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
11 | // about supported directives.
12 | //
13 | //= require_tree .
14 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/app/assets/javascripts/channels/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails51_sprockets3/app/assets/javascripts/channels/.keep
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/app/controllers/admin/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails51_sprockets3/app/controllers/admin/.keep
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/app/controllers/admin/sinks_controller.rb:
--------------------------------------------------------------------------------
1 | class Admin::SinksController < AdminController
2 | private
3 |
4 | def model
5 | Sink
6 | end
7 | end
8 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/app/controllers/admin_controller.rb:
--------------------------------------------------------------------------------
1 | class AdminController < Super::ApplicationController
2 | private
3 |
4 | def site_navigation
5 | Super::Navigation.new do |nav|
6 | nav.link(Member)
7 | nav.link(Ship)
8 | nav.menu("Other") do
9 | nav.rest
10 | end
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/app/controllers/application_controller.rb:
--------------------------------------------------------------------------------
1 | class ApplicationController < ActionController::Base
2 | protect_from_forgery with: :exception
3 | end
4 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/app/controllers/concerns/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails51_sprockets3/app/controllers/concerns/.keep
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/app/helpers/application_helper.rb:
--------------------------------------------------------------------------------
1 | module ApplicationHelper
2 | end
3 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/app/jobs/application_job.rb:
--------------------------------------------------------------------------------
1 | class ApplicationJob < ActiveJob::Base
2 | end
3 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/app/models/application_record.rb:
--------------------------------------------------------------------------------
1 | class ApplicationRecord < ActiveRecord::Base
2 | self.abstract_class = true
3 | end
4 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/app/models/concerns/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails51_sprockets3/app/models/concerns/.keep
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/app/models/favorite_thing.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class FavoriteThing < ApplicationRecord
4 | belongs_to :member
5 |
6 | validates :name, presence: true
7 |
8 | accepts_nested_attributes_for :member
9 | end
10 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/app/models/member.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class Member < ApplicationRecord
4 | enum rank: {
5 | captain: "Captain",
6 | commander: "Commander",
7 | lieutenant_commander: "Lieutenant Commander",
8 | lieutenant: "Lieutenant",
9 | lieutenant_junior_grade: "Lieutenant Junior Grade",
10 | ensign: "Ensign",
11 | nco: "NCO",
12 | }
13 |
14 | belongs_to :ship
15 | has_many :favorite_things, dependent: :delete_all
16 |
17 | accepts_nested_attributes_for(
18 | :favorite_things,
19 | allow_destroy: true,
20 | reject_if: -> (record) { record[:name].blank? }
21 | )
22 |
23 | validates :name, presence: true
24 | validates :rank, presence: true
25 | validates :position, presence: true
26 | end
27 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/app/models/ship.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class Ship < ApplicationRecord
4 | has_many :members
5 | end
6 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/app/models/sink.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class Sink < ApplicationRecord
4 | end
5 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/app/views/admin/members/_favorite_things.html.erb:
--------------------------------------------------------------------------------
1 | <%= yield %>
2 | <% if @record.favorite_things.any? %>
3 | <%= render(Super::Panel.new) do %>
4 | Favorite Things
5 |
6 |
7 | <% @record.favorite_things.each do |favorite_thing| %>
8 | - <%= favorite_thing.name %>
9 | <% end %>
10 |
11 | <% end %>
12 | <% end %>
13 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/app/views/layouts/application.html.erb:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Dummy
5 | <%= csrf_meta_tags %>
6 |
7 | <%= stylesheet_link_tag 'application', media: 'all' %>
8 | <%= javascript_include_tag 'application' %>
9 |
10 |
11 |
12 | <%= yield %>
13 |
14 |
15 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/bin/bundle:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../Gemfile', __FILE__)
3 | load Gem.bin_path('bundler', 'bundle')
4 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/bin/rails:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | APP_PATH = File.expand_path('../config/application', __dir__)
3 | require_relative '../config/boot'
4 | require 'rails/commands'
5 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/bin/rake:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | require_relative '../config/boot'
3 | require 'rake'
4 | Rake.application.run
5 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/bin/yarn:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | VENDOR_PATH = File.expand_path('..', __dir__)
3 | Dir.chdir(VENDOR_PATH) do
4 | begin
5 | exec "yarnpkg #{ARGV.join(" ")}"
6 | rescue Errno::ENOENT
7 | $stderr.puts "Yarn executable was not detected in the system."
8 | $stderr.puts "Download Yarn at https://yarnpkg.com/en/docs/install"
9 | exit 1
10 | end
11 | end
12 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/config.ru:
--------------------------------------------------------------------------------
1 | # This file is used by Rack-based servers to start the application.
2 |
3 | require_relative 'config/environment'
4 |
5 | run Rails.application
6 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/config/boot.rb:
--------------------------------------------------------------------------------
1 | # Set up gems listed in the Gemfile.
2 | ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../../Gemfile', __dir__)
3 |
4 | require 'bundler/setup' if File.exist?(ENV['BUNDLE_GEMFILE'])
5 | $LOAD_PATH.unshift File.expand_path('../../../lib', __dir__)
6 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/config/cable.yml:
--------------------------------------------------------------------------------
1 | development:
2 | adapter: async
3 |
4 | test:
5 | adapter: async
6 |
7 | production:
8 | adapter: redis
9 | url: redis://localhost:6379/1
10 | channel_prefix: dummy_production
11 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/config/database.yml:
--------------------------------------------------------------------------------
1 | # SQLite version 3.x
2 | # gem install sqlite3
3 | #
4 | # Ensure the SQLite 3 gem is defined in your Gemfile
5 | # gem 'sqlite3'
6 | #
7 | default: &default
8 | adapter: sqlite3
9 | pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
10 | timeout: 5000
11 |
12 | development:
13 | <<: *default
14 | database: db/development.sqlite3
15 |
16 | # Warning: The database defined as "test" will be erased and
17 | # re-generated from your development database when you run "rake".
18 | # Do not set this db to the same as development or production.
19 | test:
20 | <<: *default
21 | database: db/test.sqlite3
22 |
23 | production:
24 | <<: *default
25 | database: db/production.sqlite3
26 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/config/environment.rb:
--------------------------------------------------------------------------------
1 | # Load the Rails application.
2 | require_relative 'application'
3 |
4 | # Initialize the Rails application.
5 | Rails.application.initialize!
6 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/config/initializers/application_controller_renderer.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # ActiveSupport::Reloader.to_prepare do
4 | # ApplicationController.renderer.defaults.merge!(
5 | # http_host: 'example.org',
6 | # https: false
7 | # )
8 | # end
9 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/config/initializers/assets.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Version of your assets, change this if you want to expire all your assets.
4 | Rails.application.config.assets.version = '1.0'
5 |
6 | # Add additional assets to the asset load path.
7 | # Rails.application.config.assets.paths << Emoji.images_path
8 | # Add Yarn node_modules folder to the asset load path.
9 | Rails.application.config.assets.paths << Rails.root.join('node_modules')
10 |
11 | # Precompile additional assets.
12 | # application.js, application.css, and all non-JS/CSS in the app/assets
13 | # folder are already added.
14 | # Rails.application.config.assets.precompile += %w( admin.js admin.css )
15 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/config/initializers/backtrace_silencers.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces.
4 | # Rails.backtrace_cleaner.add_silencer { |line| line =~ /my_noisy_library/ }
5 |
6 | # You can also remove all the silencers if you're trying to debug a problem that might stem from framework code.
7 | # Rails.backtrace_cleaner.remove_silencers!
8 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/config/initializers/cookies_serializer.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Specify a serializer for the signed and encrypted cookie jars.
4 | # Valid options are :json, :marshal, and :hybrid.
5 | Rails.application.config.action_dispatch.cookies_serializer = :json
6 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/config/initializers/filter_parameter_logging.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Configure sensitive parameters which will be filtered from the log file.
4 | Rails.application.config.filter_parameters += [:password]
5 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/config/initializers/inflections.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Add new inflection rules using the following format. Inflections
4 | # are locale specific, and you may define rules for as many different
5 | # locales as you wish. All of these examples are active by default:
6 | # ActiveSupport::Inflector.inflections(:en) do |inflect|
7 | # inflect.plural /^(ox)$/i, '\1en'
8 | # inflect.singular /^(ox)en/i, '\1'
9 | # inflect.irregular 'person', 'people'
10 | # inflect.uncountable %w( fish sheep )
11 | # end
12 |
13 | # These inflection rules are supported but not enabled by default:
14 | # ActiveSupport::Inflector.inflections(:en) do |inflect|
15 | # inflect.acronym 'RESTful'
16 | # end
17 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/config/initializers/mime_types.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Add new mime types for use in respond_to blocks:
4 | # Mime::Type.register "text/richtext", :rtf
5 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/config/initializers/super.rb:
--------------------------------------------------------------------------------
1 | Super.configuration do |c|
2 | c.title = "My Admin Site"
3 | end
4 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/config/initializers/wrap_parameters.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # This file contains settings for ActionController::ParamsWrapper which
4 | # is enabled by default.
5 |
6 | # Enable parameter wrapping for JSON. You can disable this by setting :format to an empty array.
7 | ActiveSupport.on_load(:action_controller) do
8 | wrap_parameters format: [:json]
9 | end
10 |
11 | # To enable root element in JSON for ActiveRecord objects.
12 | # ActiveSupport.on_load(:active_record) do
13 | # self.include_root_in_json = true
14 | # end
15 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/config/routes.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | Rails.application.routes.draw do
4 | namespace :admin do
5 | resources :members do
6 | post :batch_noop, on: :collection
7 | resources :favorite_things, shallow: true
8 | end
9 | resources :ships
10 | resources :sinks
11 |
12 | root to: redirect("admin/members", status: 302)
13 | end
14 |
15 | root to: redirect("admin/members", status: 302)
16 | end
17 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/config/spring.rb:
--------------------------------------------------------------------------------
1 | %w(
2 | .ruby-version
3 | .rbenv-vars
4 | tmp/restart.txt
5 | tmp/caching-dev.txt
6 | ).each { |path| Spring.watch(path) }
7 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/db/migrate/20190216224956_create_members.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateMembers < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :members do |t|
6 | t.string :name, null: false
7 | t.string :rank, null: false
8 | t.string :position
9 |
10 | t.timestamps
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/db/migrate/20190803143320_create_ships.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateShips < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :ships do |t|
6 | t.string :name
7 | t.string :registry
8 | t.string :class_name
9 |
10 | t.timestamps
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/db/migrate/20190806014121_add_ship_to_members.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class AddShipToMembers < ActiveRecord::Migration[5.0]
4 | def change
5 | add_reference :members, :ship, foreign_key: true
6 | end
7 | end
8 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/db/migrate/20191126050453_create_favorite_things.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateFavoriteThings < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :favorite_things do |t|
6 | t.references :member, null: false, foreign_key: true
7 | t.text :name
8 |
9 | t.timestamps
10 | end
11 | end
12 | end
13 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/db/migrate/20210411180249_create_sinks.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateSinks < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :sinks do |t|
6 | t.string :string_column
7 | t.text :text_column
8 | t.integer :integer_column
9 | t.bigint :bigint_column
10 | t.float :float_column
11 | t.decimal :decimal_column
12 | t.numeric :numeric_column
13 | t.datetime :datetime_column
14 | t.time :time_column
15 | t.date :date_column
16 | t.binary :binary_column
17 | t.boolean :boolean_column
18 |
19 | t.timestamps
20 | end
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/db/seeds.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | require "super_test_engine/starfleet_seeder"
4 | StarfleetSeeder.seed
5 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/lib/assets/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails51_sprockets3/lib/assets/.keep
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/log/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails51_sprockets3/log/.keep
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "dummy",
3 | "private": true,
4 | "dependencies": {}
5 | }
6 |
--------------------------------------------------------------------------------
/test/dummy/rails51_sprockets3/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails51_sprockets3/public/favicon.ico
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/Rakefile:
--------------------------------------------------------------------------------
1 | # Add your own tasks in files placed in lib/tasks ending in .rake,
2 | # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
3 |
4 | require_relative 'config/application'
5 |
6 | Rails.application.load_tasks
7 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/app/assets/config/manifest.js:
--------------------------------------------------------------------------------
1 | //= link_tree ../images
2 | //= link_directory ../javascripts .js
3 | //= link_directory ../stylesheets .css
4 | //= link super_manifest.js
5 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/app/assets/images/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails52_sprockets4/app/assets/images/.keep
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/app/controllers/admin/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails52_sprockets4/app/controllers/admin/.keep
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/app/controllers/admin/sinks_controller.rb:
--------------------------------------------------------------------------------
1 | class Admin::SinksController < AdminController
2 | private
3 |
4 | def model
5 | Sink
6 | end
7 | end
8 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/app/controllers/admin_controller.rb:
--------------------------------------------------------------------------------
1 | class AdminController < Super::ApplicationController
2 | private
3 |
4 | def site_navigation
5 | Super::Navigation.new do |nav|
6 | nav.link(Member)
7 | nav.link(Ship)
8 | nav.menu("Other") do
9 | nav.rest
10 | end
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/app/controllers/application_controller.rb:
--------------------------------------------------------------------------------
1 | class ApplicationController < ActionController::Base
2 | end
3 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/app/controllers/concerns/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails52_sprockets4/app/controllers/concerns/.keep
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/app/helpers/application_helper.rb:
--------------------------------------------------------------------------------
1 | module ApplicationHelper
2 | end
3 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/app/jobs/application_job.rb:
--------------------------------------------------------------------------------
1 | class ApplicationJob < ActiveJob::Base
2 | end
3 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/app/models/application_record.rb:
--------------------------------------------------------------------------------
1 | class ApplicationRecord < ActiveRecord::Base
2 | self.abstract_class = true
3 | end
4 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/app/models/concerns/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails52_sprockets4/app/models/concerns/.keep
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/app/models/favorite_thing.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class FavoriteThing < ApplicationRecord
4 | belongs_to :member
5 |
6 | validates :name, presence: true
7 |
8 | accepts_nested_attributes_for :member
9 | end
10 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/app/models/member.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class Member < ApplicationRecord
4 | enum rank: {
5 | captain: "Captain",
6 | commander: "Commander",
7 | lieutenant_commander: "Lieutenant Commander",
8 | lieutenant: "Lieutenant",
9 | lieutenant_junior_grade: "Lieutenant Junior Grade",
10 | ensign: "Ensign",
11 | nco: "NCO",
12 | }
13 |
14 | belongs_to :ship
15 | has_many :favorite_things, dependent: :delete_all
16 |
17 | accepts_nested_attributes_for(
18 | :favorite_things,
19 | allow_destroy: true,
20 | reject_if: -> (record) { record[:name].blank? }
21 | )
22 |
23 | validates :name, presence: true
24 | validates :rank, presence: true
25 | validates :position, presence: true
26 | end
27 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/app/models/ship.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class Ship < ApplicationRecord
4 | has_many :members
5 | end
6 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/app/models/sink.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class Sink < ApplicationRecord
4 | end
5 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/app/views/admin/members/_favorite_things.html.erb:
--------------------------------------------------------------------------------
1 | <%= yield %>
2 | <% if @record.favorite_things.any? %>
3 | <%= render(Super::Panel.new) do %>
4 | Favorite Things
5 |
6 |
7 | <% @record.favorite_things.each do |favorite_thing| %>
8 | - <%= favorite_thing.name %>
9 | <% end %>
10 |
11 | <% end %>
12 | <% end %>
13 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/app/views/layouts/application.html.erb:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Dummy
5 | <%= csrf_meta_tags %>
6 | <%= csp_meta_tag %>
7 |
8 | <%= stylesheet_link_tag 'application', media: 'all' %>
9 | <%= javascript_include_tag 'application' %>
10 |
11 |
12 |
13 | <%= yield %>
14 |
15 |
16 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/bin/bundle:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../Gemfile', __dir__)
3 | load Gem.bin_path('bundler', 'bundle')
4 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/bin/rails:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | APP_PATH = File.expand_path('../config/application', __dir__)
3 | require_relative '../config/boot'
4 | require 'rails/commands'
5 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/bin/rake:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | require_relative '../config/boot'
3 | require 'rake'
4 | Rake.application.run
5 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/bin/yarn:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | APP_ROOT = File.expand_path('..', __dir__)
3 | Dir.chdir(APP_ROOT) do
4 | begin
5 | exec "yarnpkg", *ARGV
6 | rescue Errno::ENOENT
7 | $stderr.puts "Yarn executable was not detected in the system."
8 | $stderr.puts "Download Yarn at https://yarnpkg.com/en/docs/install"
9 | exit 1
10 | end
11 | end
12 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/config.ru:
--------------------------------------------------------------------------------
1 | # This file is used by Rack-based servers to start the application.
2 |
3 | require_relative 'config/environment'
4 |
5 | run Rails.application
6 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/config/boot.rb:
--------------------------------------------------------------------------------
1 | # Set up gems listed in the Gemfile.
2 | ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../../Gemfile', __dir__)
3 |
4 | require 'bundler/setup' if File.exist?(ENV['BUNDLE_GEMFILE'])
5 | $LOAD_PATH.unshift File.expand_path('../../../lib', __dir__)
6 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/config/database.yml:
--------------------------------------------------------------------------------
1 | # SQLite version 3.x
2 | # gem install sqlite3
3 | #
4 | # Ensure the SQLite 3 gem is defined in your Gemfile
5 | # gem 'sqlite3'
6 | #
7 | default: &default
8 | adapter: sqlite3
9 | pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
10 | timeout: 5000
11 |
12 | development:
13 | <<: *default
14 | database: db/development.sqlite3
15 |
16 | # Warning: The database defined as "test" will be erased and
17 | # re-generated from your development database when you run "rake".
18 | # Do not set this db to the same as development or production.
19 | test:
20 | <<: *default
21 | database: db/test.sqlite3
22 |
23 | production:
24 | <<: *default
25 | database: db/production.sqlite3
26 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/config/environment.rb:
--------------------------------------------------------------------------------
1 | # Load the Rails application.
2 | require_relative 'application'
3 |
4 | # Initialize the Rails application.
5 | Rails.application.initialize!
6 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/config/initializers/application_controller_renderer.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # ActiveSupport::Reloader.to_prepare do
4 | # ApplicationController.renderer.defaults.merge!(
5 | # http_host: 'example.org',
6 | # https: false
7 | # )
8 | # end
9 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/config/initializers/assets.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Version of your assets, change this if you want to expire all your assets.
4 | Rails.application.config.assets.version = '1.0'
5 |
6 | # Add additional assets to the asset load path.
7 | # Rails.application.config.assets.paths << Emoji.images_path
8 | # Add Yarn node_modules folder to the asset load path.
9 | Rails.application.config.assets.paths << Rails.root.join('node_modules')
10 |
11 | # Precompile additional assets.
12 | # application.js, application.css, and all non-JS/CSS in the app/assets
13 | # folder are already added.
14 | # Rails.application.config.assets.precompile += %w( admin.js admin.css )
15 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/config/initializers/backtrace_silencers.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces.
4 | # Rails.backtrace_cleaner.add_silencer { |line| line =~ /my_noisy_library/ }
5 |
6 | # You can also remove all the silencers if you're trying to debug a problem that might stem from framework code.
7 | # Rails.backtrace_cleaner.remove_silencers!
8 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/config/initializers/cookies_serializer.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Specify a serializer for the signed and encrypted cookie jars.
4 | # Valid options are :json, :marshal, and :hybrid.
5 | Rails.application.config.action_dispatch.cookies_serializer = :json
6 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/config/initializers/filter_parameter_logging.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Configure sensitive parameters which will be filtered from the log file.
4 | Rails.application.config.filter_parameters += [:password]
5 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/config/initializers/inflections.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Add new inflection rules using the following format. Inflections
4 | # are locale specific, and you may define rules for as many different
5 | # locales as you wish. All of these examples are active by default:
6 | # ActiveSupport::Inflector.inflections(:en) do |inflect|
7 | # inflect.plural /^(ox)$/i, '\1en'
8 | # inflect.singular /^(ox)en/i, '\1'
9 | # inflect.irregular 'person', 'people'
10 | # inflect.uncountable %w( fish sheep )
11 | # end
12 |
13 | # These inflection rules are supported but not enabled by default:
14 | # ActiveSupport::Inflector.inflections(:en) do |inflect|
15 | # inflect.acronym 'RESTful'
16 | # end
17 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/config/initializers/mime_types.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Add new mime types for use in respond_to blocks:
4 | # Mime::Type.register "text/richtext", :rtf
5 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/config/initializers/super.rb:
--------------------------------------------------------------------------------
1 | Super.configuration do |c|
2 | c.title = "My Admin Site"
3 | end
4 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/config/initializers/wrap_parameters.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # This file contains settings for ActionController::ParamsWrapper which
4 | # is enabled by default.
5 |
6 | # Enable parameter wrapping for JSON. You can disable this by setting :format to an empty array.
7 | ActiveSupport.on_load(:action_controller) do
8 | wrap_parameters format: [:json]
9 | end
10 |
11 | # To enable root element in JSON for ActiveRecord objects.
12 | # ActiveSupport.on_load(:active_record) do
13 | # self.include_root_in_json = true
14 | # end
15 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/config/routes.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | Rails.application.routes.draw do
4 | namespace :admin do
5 | resources :members do
6 | post :batch_noop, on: :collection
7 | resources :favorite_things, shallow: true
8 | end
9 | resources :ships
10 | resources :sinks
11 |
12 | root to: redirect("admin/members", status: 302)
13 | end
14 |
15 | root to: redirect("admin/members", status: 302)
16 | end
17 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/config/spring.rb:
--------------------------------------------------------------------------------
1 | %w[
2 | .ruby-version
3 | .rbenv-vars
4 | tmp/restart.txt
5 | tmp/caching-dev.txt
6 | ].each { |path| Spring.watch(path) }
7 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/db/migrate/20190216224956_create_members.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateMembers < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :members do |t|
6 | t.string :name, null: false
7 | t.string :rank, null: false
8 | t.string :position
9 |
10 | t.timestamps
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/db/migrate/20190803143320_create_ships.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateShips < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :ships do |t|
6 | t.string :name
7 | t.string :registry
8 | t.string :class_name
9 |
10 | t.timestamps
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/db/migrate/20190806014121_add_ship_to_members.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class AddShipToMembers < ActiveRecord::Migration[5.0]
4 | def change
5 | add_reference :members, :ship, foreign_key: true
6 | end
7 | end
8 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/db/migrate/20191126050453_create_favorite_things.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateFavoriteThings < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :favorite_things do |t|
6 | t.references :member, null: false, foreign_key: true
7 | t.text :name
8 |
9 | t.timestamps
10 | end
11 | end
12 | end
13 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/db/migrate/20210411180249_create_sinks.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateSinks < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :sinks do |t|
6 | t.string :string_column
7 | t.text :text_column
8 | t.integer :integer_column
9 | t.bigint :bigint_column
10 | t.float :float_column
11 | t.decimal :decimal_column
12 | t.numeric :numeric_column
13 | t.datetime :datetime_column
14 | t.time :time_column
15 | t.date :date_column
16 | t.binary :binary_column
17 | t.boolean :boolean_column
18 |
19 | t.timestamps
20 | end
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/db/seeds.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | require "super_test_engine/starfleet_seeder"
4 | StarfleetSeeder.seed
5 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/lib/assets/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails52_sprockets4/lib/assets/.keep
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/log/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails52_sprockets4/log/.keep
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "dummy",
3 | "private": true,
4 | "dependencies": {}
5 | }
6 |
--------------------------------------------------------------------------------
/test/dummy/rails52_sprockets4/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails52_sprockets4/public/favicon.ico
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/Rakefile:
--------------------------------------------------------------------------------
1 | # Add your own tasks in files placed in lib/tasks ending in .rake,
2 | # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
3 |
4 | require_relative 'config/application'
5 |
6 | Rails.application.load_tasks
7 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/app/assets/config/manifest.js:
--------------------------------------------------------------------------------
1 | //= link_tree ../images
2 | //= link_directory ../stylesheets .css
3 | //= link super_manifest.js
4 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/app/assets/images/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails60_sprockets4/app/assets/images/.keep
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/app/controllers/admin/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails60_sprockets4/app/controllers/admin/.keep
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/app/controllers/admin/sinks_controller.rb:
--------------------------------------------------------------------------------
1 | class Admin::SinksController < AdminController
2 | private
3 |
4 | def model
5 | Sink
6 | end
7 | end
8 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/app/controllers/admin_controller.rb:
--------------------------------------------------------------------------------
1 | class AdminController < Super::ApplicationController
2 | private
3 |
4 | def site_navigation
5 | Super::Navigation.new do |nav|
6 | nav.link(Member)
7 | nav.link(Ship)
8 | nav.menu("Other") do
9 | nav.rest
10 | end
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/app/controllers/application_controller.rb:
--------------------------------------------------------------------------------
1 | class ApplicationController < ActionController::Base
2 | end
3 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/app/controllers/concerns/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails60_sprockets4/app/controllers/concerns/.keep
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/app/helpers/application_helper.rb:
--------------------------------------------------------------------------------
1 | module ApplicationHelper
2 | end
3 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/app/jobs/application_job.rb:
--------------------------------------------------------------------------------
1 | class ApplicationJob < ActiveJob::Base
2 | # Automatically retry jobs that encountered a deadlock
3 | # retry_on ActiveRecord::Deadlocked
4 |
5 | # Most jobs are safe to ignore if the underlying records are no longer available
6 | # discard_on ActiveJob::DeserializationError
7 | end
8 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/app/models/application_record.rb:
--------------------------------------------------------------------------------
1 | class ApplicationRecord < ActiveRecord::Base
2 | self.abstract_class = true
3 | end
4 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/app/models/concerns/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails60_sprockets4/app/models/concerns/.keep
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/app/models/favorite_thing.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class FavoriteThing < ApplicationRecord
4 | belongs_to :member
5 |
6 | validates :name, presence: true
7 |
8 | accepts_nested_attributes_for :member
9 | end
10 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/app/models/member.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class Member < ApplicationRecord
4 | enum rank: {
5 | captain: "Captain",
6 | commander: "Commander",
7 | lieutenant_commander: "Lieutenant Commander",
8 | lieutenant: "Lieutenant",
9 | lieutenant_junior_grade: "Lieutenant Junior Grade",
10 | ensign: "Ensign",
11 | nco: "NCO",
12 | }
13 |
14 | belongs_to :ship
15 | has_many :favorite_things, dependent: :delete_all
16 |
17 | accepts_nested_attributes_for(
18 | :favorite_things,
19 | allow_destroy: true,
20 | reject_if: -> (record) { record[:name].blank? }
21 | )
22 |
23 | validates :name, presence: true
24 | validates :rank, presence: true
25 | validates :position, presence: true
26 | end
27 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/app/models/ship.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class Ship < ApplicationRecord
4 | has_many :members
5 | end
6 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/app/models/sink.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class Sink < ApplicationRecord
4 | end
5 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/app/views/admin/members/_favorite_things.html.erb:
--------------------------------------------------------------------------------
1 | <%= yield %>
2 | <% if @record.favorite_things.any? %>
3 | <%= render(Super::Panel.new) do %>
4 | Favorite Things
5 |
6 |
7 | <% @record.favorite_things.each do |favorite_thing| %>
8 | - <%= favorite_thing.name %>
9 | <% end %>
10 |
11 | <% end %>
12 | <% end %>
13 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/app/views/layouts/application.html.erb:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Dummy
5 | <%= csrf_meta_tags %>
6 | <%= csp_meta_tag %>
7 |
8 | <%= stylesheet_link_tag 'application', media: 'all' %>
9 |
10 |
11 |
12 | <%= yield %>
13 |
14 |
15 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/bin/rails:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | APP_PATH = File.expand_path('../config/application', __dir__)
3 | require_relative '../config/boot'
4 | require 'rails/commands'
5 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/bin/rake:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | require_relative '../config/boot'
3 | require 'rake'
4 | Rake.application.run
5 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/config.ru:
--------------------------------------------------------------------------------
1 | # This file is used by Rack-based servers to start the application.
2 |
3 | require_relative 'config/environment'
4 |
5 | run Rails.application
6 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/config/boot.rb:
--------------------------------------------------------------------------------
1 | # Set up gems listed in the Gemfile.
2 | ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../../Gemfile', __dir__)
3 |
4 | require 'bundler/setup' if File.exist?(ENV['BUNDLE_GEMFILE'])
5 | $LOAD_PATH.unshift File.expand_path('../../../lib', __dir__)
6 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/config/database.yml:
--------------------------------------------------------------------------------
1 | # SQLite. Versions 3.8.0 and up are supported.
2 | # gem install sqlite3
3 | #
4 | # Ensure the SQLite 3 gem is defined in your Gemfile
5 | # gem 'sqlite3'
6 | #
7 | default: &default
8 | adapter: sqlite3
9 | pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
10 | timeout: 5000
11 |
12 | development:
13 | <<: *default
14 | database: db/development.sqlite3
15 |
16 | # Warning: The database defined as "test" will be erased and
17 | # re-generated from your development database when you run "rake".
18 | # Do not set this db to the same as development or production.
19 | test:
20 | <<: *default
21 | database: db/test.sqlite3
22 |
23 | production:
24 | <<: *default
25 | database: db/production.sqlite3
26 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/config/environment.rb:
--------------------------------------------------------------------------------
1 | # Load the Rails application.
2 | require_relative 'application'
3 |
4 | # Initialize the Rails application.
5 | Rails.application.initialize!
6 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/config/initializers/application_controller_renderer.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # ActiveSupport::Reloader.to_prepare do
4 | # ApplicationController.renderer.defaults.merge!(
5 | # http_host: 'example.org',
6 | # https: false
7 | # )
8 | # end
9 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/config/initializers/assets.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Version of your assets, change this if you want to expire all your assets.
4 | Rails.application.config.assets.version = '1.0'
5 |
6 | # Add additional assets to the asset load path.
7 | # Rails.application.config.assets.paths << Emoji.images_path
8 |
9 | # Precompile additional assets.
10 | # application.js, application.css, and all non-JS/CSS in the app/assets
11 | # folder are already added.
12 | # Rails.application.config.assets.precompile += %w( admin.js admin.css )
13 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/config/initializers/backtrace_silencers.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces.
4 | # Rails.backtrace_cleaner.add_silencer { |line| line =~ /my_noisy_library/ }
5 |
6 | # You can also remove all the silencers if you're trying to debug a problem that might stem from framework code.
7 | # Rails.backtrace_cleaner.remove_silencers!
8 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/config/initializers/cookies_serializer.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Specify a serializer for the signed and encrypted cookie jars.
4 | # Valid options are :json, :marshal, and :hybrid.
5 | Rails.application.config.action_dispatch.cookies_serializer = :json
6 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/config/initializers/filter_parameter_logging.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Configure sensitive parameters which will be filtered from the log file.
4 | Rails.application.config.filter_parameters += [:password]
5 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/config/initializers/inflections.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Add new inflection rules using the following format. Inflections
4 | # are locale specific, and you may define rules for as many different
5 | # locales as you wish. All of these examples are active by default:
6 | # ActiveSupport::Inflector.inflections(:en) do |inflect|
7 | # inflect.plural /^(ox)$/i, '\1en'
8 | # inflect.singular /^(ox)en/i, '\1'
9 | # inflect.irregular 'person', 'people'
10 | # inflect.uncountable %w( fish sheep )
11 | # end
12 |
13 | # These inflection rules are supported but not enabled by default:
14 | # ActiveSupport::Inflector.inflections(:en) do |inflect|
15 | # inflect.acronym 'RESTful'
16 | # end
17 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/config/initializers/mime_types.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Add new mime types for use in respond_to blocks:
4 | # Mime::Type.register "text/richtext", :rtf
5 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/config/initializers/super.rb:
--------------------------------------------------------------------------------
1 | Super.configuration do |c|
2 | c.title = "My Admin Site"
3 | end
4 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/config/initializers/wrap_parameters.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # This file contains settings for ActionController::ParamsWrapper which
4 | # is enabled by default.
5 |
6 | # Enable parameter wrapping for JSON. You can disable this by setting :format to an empty array.
7 | ActiveSupport.on_load(:action_controller) do
8 | wrap_parameters format: [:json]
9 | end
10 |
11 | # To enable root element in JSON for ActiveRecord objects.
12 | # ActiveSupport.on_load(:active_record) do
13 | # self.include_root_in_json = true
14 | # end
15 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/config/routes.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | Rails.application.routes.draw do
4 | namespace :admin do
5 | resources :members do
6 | post :batch_noop, on: :collection
7 | resources :favorite_things, shallow: true
8 | end
9 | resources :ships
10 | resources :sinks
11 |
12 | root to: redirect("admin/members", status: 302)
13 | end
14 |
15 | root to: redirect("admin/members", status: 302)
16 | end
17 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/config/spring.rb:
--------------------------------------------------------------------------------
1 | Spring.watch(
2 | ".ruby-version",
3 | ".rbenv-vars",
4 | "tmp/restart.txt",
5 | "tmp/caching-dev.txt"
6 | )
7 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/db/migrate/20190216224956_create_members.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateMembers < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :members do |t|
6 | t.string :name, null: false
7 | t.string :rank, null: false
8 | t.string :position
9 |
10 | t.timestamps
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/db/migrate/20190803143320_create_ships.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateShips < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :ships do |t|
6 | t.string :name
7 | t.string :registry
8 | t.string :class_name
9 |
10 | t.timestamps
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/db/migrate/20190806014121_add_ship_to_members.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class AddShipToMembers < ActiveRecord::Migration[5.0]
4 | def change
5 | add_reference :members, :ship, foreign_key: true
6 | end
7 | end
8 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/db/migrate/20191126050453_create_favorite_things.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateFavoriteThings < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :favorite_things do |t|
6 | t.references :member, null: false, foreign_key: true
7 | t.text :name
8 |
9 | t.timestamps
10 | end
11 | end
12 | end
13 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/db/migrate/20210411180249_create_sinks.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateSinks < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :sinks do |t|
6 | t.string :string_column
7 | t.text :text_column
8 | t.integer :integer_column
9 | t.bigint :bigint_column
10 | t.float :float_column
11 | t.decimal :decimal_column
12 | t.numeric :numeric_column
13 | t.datetime :datetime_column
14 | t.time :time_column
15 | t.date :date_column
16 | t.binary :binary_column
17 | t.boolean :boolean_column
18 |
19 | t.timestamps
20 | end
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/db/seeds.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | require "super_test_engine/starfleet_seeder"
4 | StarfleetSeeder.seed
5 |
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/lib/assets/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails60_sprockets4/lib/assets/.keep
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/log/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails60_sprockets4/log/.keep
--------------------------------------------------------------------------------
/test/dummy/rails60_sprockets4/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails60_sprockets4/public/favicon.ico
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/Rakefile:
--------------------------------------------------------------------------------
1 | # Add your own tasks in files placed in lib/tasks ending in .rake,
2 | # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
3 |
4 | require_relative "config/application"
5 |
6 | Rails.application.load_tasks
7 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/app/assets/config/manifest.js:
--------------------------------------------------------------------------------
1 | //= link_tree ../images
2 | //= link_directory ../stylesheets .css
3 | //= link super_manifest.js
4 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/app/assets/images/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails61_sprockets4/app/assets/images/.keep
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/app/controllers/admin/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails61_sprockets4/app/controllers/admin/.keep
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/app/controllers/admin/sinks_controller.rb:
--------------------------------------------------------------------------------
1 | class Admin::SinksController < AdminController
2 | private
3 |
4 | def model
5 | Sink
6 | end
7 | end
8 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/app/controllers/admin_controller.rb:
--------------------------------------------------------------------------------
1 | class AdminController < Super::ApplicationController
2 | private
3 |
4 | def site_navigation
5 | Super::Navigation.new do |nav|
6 | nav.link(Member)
7 | nav.link(Ship)
8 | nav.menu("Other") do
9 | nav.rest
10 | end
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/app/controllers/application_controller.rb:
--------------------------------------------------------------------------------
1 | class ApplicationController < ActionController::Base
2 | end
3 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/app/controllers/concerns/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails61_sprockets4/app/controllers/concerns/.keep
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/app/helpers/application_helper.rb:
--------------------------------------------------------------------------------
1 | module ApplicationHelper
2 | end
3 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/app/jobs/application_job.rb:
--------------------------------------------------------------------------------
1 | class ApplicationJob < ActiveJob::Base
2 | # Automatically retry jobs that encountered a deadlock
3 | # retry_on ActiveRecord::Deadlocked
4 |
5 | # Most jobs are safe to ignore if the underlying records are no longer available
6 | # discard_on ActiveJob::DeserializationError
7 | end
8 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/app/models/application_record.rb:
--------------------------------------------------------------------------------
1 | class ApplicationRecord < ActiveRecord::Base
2 | self.abstract_class = true
3 | end
4 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/app/models/concerns/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails61_sprockets4/app/models/concerns/.keep
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/app/models/favorite_thing.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class FavoriteThing < ApplicationRecord
4 | belongs_to :member
5 |
6 | validates :name, presence: true
7 |
8 | accepts_nested_attributes_for :member
9 | end
10 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/app/models/member.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class Member < ApplicationRecord
4 | enum rank: {
5 | captain: "Captain",
6 | commander: "Commander",
7 | lieutenant_commander: "Lieutenant Commander",
8 | lieutenant: "Lieutenant",
9 | lieutenant_junior_grade: "Lieutenant Junior Grade",
10 | ensign: "Ensign",
11 | nco: "NCO",
12 | }
13 |
14 | belongs_to :ship
15 | has_many :favorite_things, dependent: :delete_all
16 |
17 | accepts_nested_attributes_for(
18 | :favorite_things,
19 | allow_destroy: true,
20 | reject_if: -> (record) { record[:name].blank? }
21 | )
22 |
23 | validates :name, presence: true
24 | validates :rank, presence: true
25 | validates :position, presence: true
26 | end
27 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/app/models/ship.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class Ship < ApplicationRecord
4 | has_many :members
5 | end
6 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/app/models/sink.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class Sink < ApplicationRecord
4 | end
5 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/app/views/admin/members/_favorite_things.html.erb:
--------------------------------------------------------------------------------
1 | <%= yield %>
2 | <% if @record.favorite_things.any? %>
3 | <%= render(Super::Panel.new) do %>
4 | Favorite Things
5 |
6 |
7 | <% @record.favorite_things.each do |favorite_thing| %>
8 | - <%= favorite_thing.name %>
9 | <% end %>
10 |
11 | <% end %>
12 | <% end %>
13 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/app/views/layouts/application.html.erb:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Dummy
5 |
6 | <%= csrf_meta_tags %>
7 | <%= csp_meta_tag %>
8 |
9 | <%= stylesheet_link_tag 'application', media: 'all' %>
10 |
11 |
12 |
13 | <%= yield %>
14 |
15 |
16 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/bin/rails:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | APP_PATH = File.expand_path('../config/application', __dir__)
3 | require_relative "../config/boot"
4 | require "rails/commands"
5 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/bin/rake:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | require_relative "../config/boot"
3 | require "rake"
4 | Rake.application.run
5 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/config.ru:
--------------------------------------------------------------------------------
1 | # This file is used by Rack-based servers to start the application.
2 |
3 | require_relative "config/environment"
4 |
5 | run Rails.application
6 | Rails.application.load_server
7 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/config/boot.rb:
--------------------------------------------------------------------------------
1 | # Set up gems listed in the Gemfile.
2 | ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../../../Gemfile', __dir__)
3 |
4 | require "bundler/setup" if File.exist?(ENV["BUNDLE_GEMFILE"])
5 | $LOAD_PATH.unshift File.expand_path('../../../lib', __dir__)
6 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/config/database.yml:
--------------------------------------------------------------------------------
1 | # SQLite. Versions 3.8.0 and up are supported.
2 | # gem install sqlite3
3 | #
4 | # Ensure the SQLite 3 gem is defined in your Gemfile
5 | # gem 'sqlite3'
6 | #
7 | default: &default
8 | adapter: sqlite3
9 | pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
10 | timeout: 5000
11 |
12 | development:
13 | <<: *default
14 | database: db/development.sqlite3
15 |
16 | # Warning: The database defined as "test" will be erased and
17 | # re-generated from your development database when you run "rake".
18 | # Do not set this db to the same as development or production.
19 | test:
20 | <<: *default
21 | database: db/test.sqlite3
22 |
23 | production:
24 | <<: *default
25 | database: db/production.sqlite3
26 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/config/environment.rb:
--------------------------------------------------------------------------------
1 | # Load the Rails application.
2 | require_relative "application"
3 |
4 | # Initialize the Rails application.
5 | Rails.application.initialize!
6 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/config/initializers/application_controller_renderer.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # ActiveSupport::Reloader.to_prepare do
4 | # ApplicationController.renderer.defaults.merge!(
5 | # http_host: 'example.org',
6 | # https: false
7 | # )
8 | # end
9 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/config/initializers/assets.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Version of your assets, change this if you want to expire all your assets.
4 | Rails.application.config.assets.version = '1.0'
5 |
6 | # Add additional assets to the asset load path.
7 | # Rails.application.config.assets.paths << Emoji.images_path
8 |
9 | # Precompile additional assets.
10 | # application.js, application.css, and all non-JS/CSS in the app/assets
11 | # folder are already added.
12 | # Rails.application.config.assets.precompile += %w( admin.js admin.css )
13 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/config/initializers/backtrace_silencers.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces.
4 | # Rails.backtrace_cleaner.add_silencer { |line| /my_noisy_library/.match?(line) }
5 |
6 | # You can also remove all the silencers if you're trying to debug a problem that might stem from framework code
7 | # by setting BACKTRACE=1 before calling your invocation, like "BACKTRACE=1 ./bin/rails runner 'MyClass.perform'".
8 | Rails.backtrace_cleaner.remove_silencers! if ENV["BACKTRACE"]
9 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/config/initializers/cookies_serializer.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Specify a serializer for the signed and encrypted cookie jars.
4 | # Valid options are :json, :marshal, and :hybrid.
5 | Rails.application.config.action_dispatch.cookies_serializer = :json
6 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/config/initializers/filter_parameter_logging.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Configure sensitive parameters which will be filtered from the log file.
4 | Rails.application.config.filter_parameters += [
5 | :passw, :secret, :token, :_key, :crypt, :salt, :certificate, :otp, :ssn
6 | ]
7 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/config/initializers/inflections.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Add new inflection rules using the following format. Inflections
4 | # are locale specific, and you may define rules for as many different
5 | # locales as you wish. All of these examples are active by default:
6 | # ActiveSupport::Inflector.inflections(:en) do |inflect|
7 | # inflect.plural /^(ox)$/i, '\1en'
8 | # inflect.singular /^(ox)en/i, '\1'
9 | # inflect.irregular 'person', 'people'
10 | # inflect.uncountable %w( fish sheep )
11 | # end
12 |
13 | # These inflection rules are supported but not enabled by default:
14 | # ActiveSupport::Inflector.inflections(:en) do |inflect|
15 | # inflect.acronym 'RESTful'
16 | # end
17 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/config/initializers/mime_types.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Add new mime types for use in respond_to blocks:
4 | # Mime::Type.register "text/richtext", :rtf
5 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/config/initializers/permissions_policy.rb:
--------------------------------------------------------------------------------
1 | # Define an application-wide HTTP permissions policy. For further
2 | # information see https://developers.google.com/web/updates/2018/06/feature-policy
3 | #
4 | # Rails.application.config.permissions_policy do |f|
5 | # f.camera :none
6 | # f.gyroscope :none
7 | # f.microphone :none
8 | # f.usb :none
9 | # f.fullscreen :self
10 | # f.payment :self, "https://secure.example.com"
11 | # end
12 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/config/initializers/super.rb:
--------------------------------------------------------------------------------
1 | Super.configuration do |c|
2 | c.title = "My Admin Site"
3 | end
4 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/config/initializers/wrap_parameters.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # This file contains settings for ActionController::ParamsWrapper which
4 | # is enabled by default.
5 |
6 | # Enable parameter wrapping for JSON. You can disable this by setting :format to an empty array.
7 | ActiveSupport.on_load(:action_controller) do
8 | wrap_parameters format: [:json]
9 | end
10 |
11 | # To enable root element in JSON for ActiveRecord objects.
12 | # ActiveSupport.on_load(:active_record) do
13 | # self.include_root_in_json = true
14 | # end
15 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/config/routes.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | Rails.application.routes.draw do
4 | namespace :admin do
5 | resources :members do
6 | post :batch_noop, on: :collection
7 | resources :favorite_things, shallow: true
8 | end
9 | resources :ships
10 | resources :sinks
11 |
12 | root to: redirect("admin/members", status: 302)
13 | end
14 |
15 | root to: redirect("admin/members", status: 302)
16 | end
17 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/db/migrate/20190216224956_create_members.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateMembers < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :members do |t|
6 | t.string :name, null: false
7 | t.string :rank, null: false
8 | t.string :position
9 |
10 | t.timestamps
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/db/migrate/20190803143320_create_ships.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateShips < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :ships do |t|
6 | t.string :name
7 | t.string :registry
8 | t.string :class_name
9 |
10 | t.timestamps
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/db/migrate/20190806014121_add_ship_to_members.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class AddShipToMembers < ActiveRecord::Migration[5.0]
4 | def change
5 | add_reference :members, :ship, foreign_key: true
6 | end
7 | end
8 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/db/migrate/20191126050453_create_favorite_things.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateFavoriteThings < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :favorite_things do |t|
6 | t.references :member, null: false, foreign_key: true
7 | t.text :name
8 |
9 | t.timestamps
10 | end
11 | end
12 | end
13 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/db/migrate/20210411180249_create_sinks.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateSinks < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :sinks do |t|
6 | t.string :string_column
7 | t.text :text_column
8 | t.integer :integer_column
9 | t.bigint :bigint_column
10 | t.float :float_column
11 | t.decimal :decimal_column
12 | t.numeric :numeric_column
13 | t.datetime :datetime_column
14 | t.time :time_column
15 | t.date :date_column
16 | t.binary :binary_column
17 | t.boolean :boolean_column
18 |
19 | t.timestamps
20 | end
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/db/seeds.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | require "super_test_engine/starfleet_seeder"
4 | StarfleetSeeder.seed
5 |
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/lib/assets/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails61_sprockets4/lib/assets/.keep
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/log/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails61_sprockets4/log/.keep
--------------------------------------------------------------------------------
/test/dummy/rails61_sprockets4/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails61_sprockets4/public/favicon.ico
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/Rakefile:
--------------------------------------------------------------------------------
1 | # Add your own tasks in files placed in lib/tasks ending in .rake,
2 | # for example lib/tasks/capistrano.rake, and they will automatically be available to Rake.
3 |
4 | require_relative "config/application"
5 |
6 | Rails.application.load_tasks
7 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/app/assets/config/manifest.js:
--------------------------------------------------------------------------------
1 | //= link_tree ../images
2 | //= link_directory ../stylesheets .css
3 | //= link super_manifest.js
4 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/app/assets/images/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails70_sprockets4/app/assets/images/.keep
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/app/controllers/admin/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails70_sprockets4/app/controllers/admin/.keep
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/app/controllers/admin/sinks_controller.rb:
--------------------------------------------------------------------------------
1 | class Admin::SinksController < AdminController
2 | private
3 |
4 | def model
5 | Sink
6 | end
7 | end
8 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/app/controllers/admin_controller.rb:
--------------------------------------------------------------------------------
1 | class AdminController < Super::ApplicationController
2 | private
3 |
4 | def site_navigation
5 | Super::Navigation.new do |nav|
6 | nav.link(Member)
7 | nav.link(Ship)
8 | nav.menu("Other") do
9 | nav.rest
10 | end
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/app/controllers/application_controller.rb:
--------------------------------------------------------------------------------
1 | class ApplicationController < ActionController::Base
2 | end
3 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/app/controllers/concerns/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails70_sprockets4/app/controllers/concerns/.keep
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/app/helpers/application_helper.rb:
--------------------------------------------------------------------------------
1 | module ApplicationHelper
2 | end
3 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/app/jobs/application_job.rb:
--------------------------------------------------------------------------------
1 | class ApplicationJob < ActiveJob::Base
2 | # Automatically retry jobs that encountered a deadlock
3 | # retry_on ActiveRecord::Deadlocked
4 |
5 | # Most jobs are safe to ignore if the underlying records are no longer available
6 | # discard_on ActiveJob::DeserializationError
7 | end
8 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/app/models/application_record.rb:
--------------------------------------------------------------------------------
1 | class ApplicationRecord < ActiveRecord::Base
2 | primary_abstract_class
3 | end
4 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/app/models/concerns/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails70_sprockets4/app/models/concerns/.keep
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/app/models/favorite_thing.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class FavoriteThing < ApplicationRecord
4 | belongs_to :member
5 |
6 | validates :name, presence: true
7 |
8 | accepts_nested_attributes_for :member
9 | end
10 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/app/models/ship.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class Ship < ApplicationRecord
4 | has_many :members
5 | end
6 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/app/models/sink.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class Sink < ApplicationRecord
4 | end
5 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/app/views/admin/members/_favorite_things.html.erb:
--------------------------------------------------------------------------------
1 | <%= yield %>
2 | <% if @record.favorite_things.any? %>
3 | <%= render(Super::Panel.new) do %>
4 | Favorite Things
5 |
6 |
7 | <% @record.favorite_things.each do |favorite_thing| %>
8 | - <%= favorite_thing.name %>
9 | <% end %>
10 |
11 | <% end %>
12 | <% end %>
13 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/app/views/layouts/application.html.erb:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Dummy
5 |
6 | <%= csrf_meta_tags %>
7 | <%= csp_meta_tag %>
8 |
9 | <%= stylesheet_link_tag "application" %>
10 |
11 |
12 |
13 | <%= yield %>
14 |
15 |
16 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/bin/rails:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | APP_PATH = File.expand_path("../config/application", __dir__)
3 | require_relative "../config/boot"
4 | require "rails/commands"
5 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/bin/rake:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env ruby
2 | require_relative "../config/boot"
3 | require "rake"
4 | Rake.application.run
5 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/config.ru:
--------------------------------------------------------------------------------
1 | # This file is used by Rack-based servers to start the application.
2 |
3 | require_relative "config/environment"
4 |
5 | run Rails.application
6 | Rails.application.load_server
7 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/config/boot.rb:
--------------------------------------------------------------------------------
1 | # Set up gems listed in the Gemfile.
2 | ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../../Gemfile", __dir__)
3 |
4 | require "bundler/setup" if File.exist?(ENV["BUNDLE_GEMFILE"])
5 | $LOAD_PATH.unshift File.expand_path("../../../lib", __dir__)
6 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/config/database.yml:
--------------------------------------------------------------------------------
1 | # SQLite. Versions 3.8.0 and up are supported.
2 | # gem install sqlite3
3 | #
4 | # Ensure the SQLite 3 gem is defined in your Gemfile
5 | # gem "sqlite3"
6 | #
7 | default: &default
8 | adapter: sqlite3
9 | pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
10 | timeout: 5000
11 |
12 | development:
13 | <<: *default
14 | database: db/development.sqlite3
15 |
16 | # Warning: The database defined as "test" will be erased and
17 | # re-generated from your development database when you run "rake".
18 | # Do not set this db to the same as development or production.
19 | test:
20 | <<: *default
21 | database: db/test.sqlite3
22 |
23 | production:
24 | <<: *default
25 | database: db/production.sqlite3
26 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/config/environment.rb:
--------------------------------------------------------------------------------
1 | # Load the Rails application.
2 | require_relative "application"
3 |
4 | # Initialize the Rails application.
5 | Rails.application.initialize!
6 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/config/initializers/assets.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Version of your assets, change this if you want to expire all your assets.
4 | Rails.application.config.assets.version = "1.0"
5 |
6 | # Add additional assets to the asset load path.
7 | # Rails.application.config.assets.paths << Emoji.images_path
8 |
9 | # Precompile additional assets.
10 | # application.js, application.css, and all non-JS/CSS in the app/assets
11 | # folder are already added.
12 | # Rails.application.config.assets.precompile += %w( admin.js admin.css )
13 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/config/initializers/filter_parameter_logging.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Configure sensitive parameters which will be filtered from the log file.
4 | Rails.application.config.filter_parameters += [
5 | :passw, :secret, :token, :_key, :crypt, :salt, :certificate, :otp, :ssn
6 | ]
7 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/config/initializers/inflections.rb:
--------------------------------------------------------------------------------
1 | # Be sure to restart your server when you modify this file.
2 |
3 | # Add new inflection rules using the following format. Inflections
4 | # are locale specific, and you may define rules for as many different
5 | # locales as you wish. All of these examples are active by default:
6 | # ActiveSupport::Inflector.inflections(:en) do |inflect|
7 | # inflect.plural /^(ox)$/i, "\\1en"
8 | # inflect.singular /^(ox)en/i, "\\1"
9 | # inflect.irregular "person", "people"
10 | # inflect.uncountable %w( fish sheep )
11 | # end
12 |
13 | # These inflection rules are supported but not enabled by default:
14 | # ActiveSupport::Inflector.inflections(:en) do |inflect|
15 | # inflect.acronym "RESTful"
16 | # end
17 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/config/initializers/permissions_policy.rb:
--------------------------------------------------------------------------------
1 | # Define an application-wide HTTP permissions policy. For further
2 | # information see https://developers.google.com/web/updates/2018/06/feature-policy
3 | #
4 | # Rails.application.config.permissions_policy do |f|
5 | # f.camera :none
6 | # f.gyroscope :none
7 | # f.microphone :none
8 | # f.usb :none
9 | # f.fullscreen :self
10 | # f.payment :self, "https://secure.example.com"
11 | # end
12 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/config/initializers/super.rb:
--------------------------------------------------------------------------------
1 | Super.configuration do |c|
2 | c.title = "My Admin Site"
3 | end
4 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/config/routes.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | Rails.application.routes.draw do
4 | namespace :admin do
5 | resources :members do
6 | post :batch_noop, on: :collection
7 | resources :favorite_things, shallow: true
8 | end
9 | resources :ships
10 | resources :sinks
11 |
12 | root to: redirect("admin/members", status: 302)
13 | end
14 |
15 | root to: redirect("admin/members", status: 302)
16 | end
17 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/db/migrate/20190216224956_create_members.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateMembers < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :members do |t|
6 | t.string :name, null: false
7 | t.string :rank, null: false
8 | t.string :position
9 |
10 | t.timestamps
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/db/migrate/20190803143320_create_ships.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateShips < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :ships do |t|
6 | t.string :name
7 | t.string :registry
8 | t.string :class_name
9 |
10 | t.timestamps
11 | end
12 | end
13 | end
14 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/db/migrate/20190806014121_add_ship_to_members.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class AddShipToMembers < ActiveRecord::Migration[5.0]
4 | def change
5 | add_reference :members, :ship, foreign_key: true
6 | end
7 | end
8 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/db/migrate/20191126050453_create_favorite_things.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateFavoriteThings < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :favorite_things do |t|
6 | t.references :member, null: false, foreign_key: true
7 | t.text :name
8 |
9 | t.timestamps
10 | end
11 | end
12 | end
13 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/db/migrate/20210411180249_create_sinks.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | class CreateSinks < ActiveRecord::Migration[5.0]
4 | def change
5 | create_table :sinks do |t|
6 | t.string :string_column
7 | t.text :text_column
8 | t.integer :integer_column
9 | t.bigint :bigint_column
10 | t.float :float_column
11 | t.decimal :decimal_column
12 | t.numeric :numeric_column
13 | t.datetime :datetime_column
14 | t.time :time_column
15 | t.date :date_column
16 | t.binary :binary_column
17 | t.boolean :boolean_column
18 |
19 | t.timestamps
20 | end
21 | end
22 | end
23 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/db/seeds.rb:
--------------------------------------------------------------------------------
1 | # frozen_string_literal: true
2 |
3 | require "super_test_engine/starfleet_seeder"
4 | StarfleetSeeder.seed
5 |
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/lib/assets/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails70_sprockets4/lib/assets/.keep
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/log/.keep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails70_sprockets4/log/.keep
--------------------------------------------------------------------------------
/test/dummy/rails70_sprockets4/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/superadministration/super/20fa9fc358349c83ea57674c78206c4d54615a14/test/dummy/rails70_sprockets4/public/favicon.ico
--------------------------------------------------------------------------------
/test/features/csv_test.rb:
--------------------------------------------------------------------------------
1 | # typed: false
2 |
3 | require "test_helper"
4 |
5 | class CsvTest < ActionDispatch::IntegrationTest
6 | test "get index csv gets a csv" do
7 | get admin_members_path(format: "csv")
8 | CSV.parse(response.body)
9 | end
10 | end
11 |
12 | class CsvDisabledTest < ActionDispatch::IntegrationTest
13 | controller(Admin::MembersController) do
14 | def csv_enabled?
15 | false
16 | end
17 | end
18 |
19 | test "get index csv redirects back to the index html" do
20 | get anonymous_path(format: "csv", something: "random")
21 | assert_redirected_to(anonymous_path(something: "random"))
22 | end
23 | end
24 |
--------------------------------------------------------------------------------
/test/integration/accepts_nested_attributes_for_many_test.rb:
--------------------------------------------------------------------------------
1 | # typed: false
2 |
3 | require "test_helper"
4 |
5 | class AcceptsNestedAttributesForManyTest < CapybaraTest
6 | selenium!
7 |
8 | def test_it_works
9 | visit(edit_admin_member_path(members(:riker)))
10 |
11 | click_on("Add Favorite thing")
12 |
13 | within_fieldset("Favorite thing") do
14 | fill_in("Name", with: "Trumpet")
15 | end
16 |
17 | assert_difference(-> { members(:riker).reload.favorite_things.size }, 1) do
18 | click_on("Update Member")
19 | end
20 |
21 | assert_equal(admin_member_path(members(:riker)), page.current_path)
22 | assert(page.has_content?("Trumpet"))
23 | end
24 | end
25 |
--------------------------------------------------------------------------------
/test/integration/error_flash_message_test.rb:
--------------------------------------------------------------------------------
1 | # typed: false
2 |
3 | require "test_helper"
4 |
5 | class ErrorFlashMessageTest < CapybaraTest
6 | def test_default_error_message
7 | Admin::ShipsController.any_instance.stubs(:index).raises(Super::ClientError::BadRequest)
8 |
9 | visit(admin_ships_path)
10 |
11 | assert(page.has_content?("Bad request"))
12 | assert_equal(400, page.status_code)
13 | end
14 |
15 | def test_custom_error_message
16 | Admin::ShipsController
17 | .any_instance
18 | .stubs(:index)
19 | .raises(Super::ClientError::Unauthorized, "Hello!")
20 |
21 | visit(admin_ships_path)
22 |
23 | assert(page.has_content?("Hello!"))
24 | assert_equal(401, page.status_code)
25 | end
26 | end
27 |
--------------------------------------------------------------------------------
/test/lib/super/badge_test.rb:
--------------------------------------------------------------------------------
1 | # typed: false
2 |
3 | require "test_helper"
4 |
5 | class BadgeTest < ActiveSupport::TestCase
6 | test %(Badge.new("text", style: :light)) do
7 | badge = build("text", style: :light)
8 |
9 | assert_includes(badge.attr("class"), Super::Badge::STYLES[:light].join(" "))
10 | end
11 |
12 | test %(Badge.new("test", style: :doesnt_exist)) do
13 | assert_raises(Super::Error::Initialization) do
14 | build("text", style: :doesnt_exist)
15 | end
16 | end
17 |
18 | private
19 |
20 | def build(*args, **kwargs)
21 | badge = Super::Badge.new(*args, **kwargs)
22 | Nokogiri::HTML.fragment(badge.to_s).first_element_child
23 | end
24 | end
25 |
--------------------------------------------------------------------------------
/test/lib/super/controllers/application_customized_test.rb:
--------------------------------------------------------------------------------
1 | # typed: false
2 |
3 | require "test_helper"
4 |
5 | class ApplicationCustomizedTest < ActionDispatch::IntegrationTest
6 | controller(Super::ApplicationController) do
7 | def index
8 | end
9 | end
10 |
11 | views["index.html.erb"] = <<~HTML
12 | Hi
13 | HTML
14 |
15 | def test_it_loads
16 | get "/anonymous"
17 | assert_select "title", Super.configuration.title
18 | assert_select "h1", "Hi"
19 | end
20 | end
21 |
--------------------------------------------------------------------------------
/test/lib/super/controllers/application_reset_test.rb:
--------------------------------------------------------------------------------
1 | # typed: false
2 |
3 | require "test_helper"
4 |
5 | class ApplicationResetTest < ActionDispatch::IntegrationTest
6 | controller(Super::ApplicationController) do
7 | include Super::Reset
8 | end
9 |
10 | views["index.html.erb"] = <<~HTML
11 | Hi
12 | HTML
13 |
14 | def test_it_loads
15 | get "/anonymous"
16 | assert_select "title", Super.configuration.title
17 | assert_select "h1", "Hi"
18 | end
19 | end
20 |
--------------------------------------------------------------------------------
/test/lib/super/controllers/destroy_error_test.rb:
--------------------------------------------------------------------------------
1 | # typed: false
2 |
3 | require "test_helper"
4 |
5 | class DestroyErrorTest < ActionDispatch::IntegrationTest
6 | def test_invalid_foreign_key
7 | Admin::ShipsController
8 | .any_instance
9 | .stubs(:destroy_record)
10 | .raises(ActiveRecord::InvalidForeignKey)
11 |
12 | delete(admin_ship_path(Ship.first))
13 | follow_redirect!
14 | assert_includes(response.body.gsub("'", "'"), I18n.t("super.destroy_error.invalid_foreign_key"))
15 | end
16 | end
17 |
--------------------------------------------------------------------------------
/test/lib/super/useful/i19_test.rb:
--------------------------------------------------------------------------------
1 | # typed: strict
2 |
3 | require "test_helper"
4 |
5 | class Super::Useful::I19Test < ActiveSupport::TestCase
6 | test "build_chain" do
7 | result = Super::Useful::I19.build_chain("a", [1, 2, 3], "z")
8 |
9 | assert_equal(
10 | [
11 | :"a.1.2.3.z",
12 | :"a.1.2.z",
13 | :"a.1.z",
14 | :"a.z"
15 | ],
16 | result
17 | )
18 | end
19 | end
20 |
--------------------------------------------------------------------------------
/test/lib/super/view_chain_test.rb:
--------------------------------------------------------------------------------
1 | # typed: strict
2 |
3 | require "test_helper"
4 |
5 | class ViewChainTest < ActiveSupport::TestCase
6 | test "#erb" do
7 | end
8 | end
9 |
--------------------------------------------------------------------------------
/test/support/ad_hoc_view_helpers.rb:
--------------------------------------------------------------------------------
1 | # typed: false
2 |
3 | module AdHocViewHelpers
4 | extend ActiveSupport::Concern
5 |
6 | included do
7 | setup do
8 | if respond_to?(:ad_hoc_view_helpers)
9 | view.extend(ad_hoc_view_helpers)
10 | end
11 | end
12 | end
13 |
14 | class_methods do
15 | def ad_hoc_view_helpers(&block)
16 | define_method(:ad_hoc_view_helpers) do
17 | @ad_hoc_view_helpers = Module.new(&block)
18 | end
19 | end
20 | end
21 | end
22 |
--------------------------------------------------------------------------------
/test/support/input_flatpickr.rb:
--------------------------------------------------------------------------------
1 | # typed: false
2 |
3 | module InputFlatpickr
4 | def set_date!(date)
5 | page.first(".flatpickr-monthDropdown-month[value='#{date.month - 1}']").select_option
6 | page.first(".flatpickr-calendar .cur-year").fill_in(with: date.year)
7 | page.find(".flatpickr-day:not(.prevMonthDay):not(.nextMonthDay)", text: /^#{date.day}$/).click
8 | end
9 |
10 | def set_time!(time)
11 | page.first(".flatpickr-hour").fill_in(with: time.hour)
12 | page.first(".flatpickr-minute").fill_in(with: time.min)
13 | page.first(".flatpickr-second").fill_in(with: time.sec)
14 | end
15 | end
16 |
--------------------------------------------------------------------------------