activeadmin-tom_select 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.actrc +20 -0
- data/.claude/commands/fix-tests.md +203 -0
- data/.github/workflows/ci.yml +174 -0
- data/.github/workflows/npm-publish.yml +50 -0
- data/.gitignore +35 -0
- data/.npmignore +58 -0
- data/.rspec +1 -0
- data/.rubocop.yml +75 -0
- data/.yardopts +2 -0
- data/AGENTS.md +39 -0
- data/Appraisals +9 -0
- data/CHANGELOG.md +64 -0
- data/CLAUDE.md +157 -0
- data/Gemfile +12 -0
- data/Gemfile.lock +368 -0
- data/LICENSE.txt +25 -0
- data/README.md +483 -0
- data/Rakefile +4 -0
- data/activeadmin-tom_select.gemspec +43 -0
- data/bin/rspec +17 -0
- data/config/database.yml +16 -0
- data/docs/activeadmin-4-detailed-reference.md +932 -0
- data/docs/activeadmin-4-gem-migration-guide.md +313 -0
- data/docs/combustion.md +213 -0
- data/docs/fail.png +0 -0
- data/docs/guide-update-your-app.md +283 -0
- data/docs/normal.png +0 -0
- data/docs/propshaft-readme.md +320 -0
- data/docs/propshaft-upgrade.md +484 -0
- data/docs/setup-activeadmin-app.md +552 -0
- data/docs/setup-activeadmin-gem.md +535 -0
- data/docs/tailwind/blog-page.md +341 -0
- data/docs/tailwind/upgrade-guide-enhanced.md +438 -0
- data/docs/tailwind/upgrade-guide.md +416 -0
- data/docs/tailwind-4/active_admin.rake +38 -0
- data/docs/tailwind-4/active_admin.tailwind.css +415 -0
- data/docs/tailwind-4/tailwind-active_admin.config.js +18 -0
- data/docs/test-app-change.md +154 -0
- data/docs/test-environment-fixes.md +58 -0
- data/docs/update-tom-select.md +184 -0
- data/docs/upload-system.md +225 -0
- data/gemfiles/rails_7.x_active_admin_4.x.gemfile +10 -0
- data/gemfiles/rails_7.x_active_admin_4.x.gemfile.lock +377 -0
- data/gemfiles/rails_8.x_active_admin_4.x.gemfile +10 -0
- data/gemfiles/rails_8.x_active_admin_4.x.gemfile.lock +372 -0
- data/lefthook.yml +17 -0
- data/lib/activeadmin/inputs/filters/searchable_select_input.rb +19 -0
- data/lib/activeadmin/inputs/searchable_select_input.rb +16 -0
- data/lib/activeadmin/tom_select/engine.rb +17 -0
- data/lib/activeadmin/tom_select/option_collection.rb +128 -0
- data/lib/activeadmin/tom_select/resource_dsl_extension.rb +56 -0
- data/lib/activeadmin/tom_select/resource_extension.rb +10 -0
- data/lib/activeadmin/tom_select/select_input_extension.rb +168 -0
- data/lib/activeadmin/tom_select/version.rb +5 -0
- data/lib/activeadmin/tom_select.rb +20 -0
- data/lib/activeadmin-tom_select.rb +5 -0
- data/lib/generators/active_admin/tom_select/install/install_generator.rb +180 -0
- data/npm-package/package-lock.json +51 -0
- data/npm-package/package.json +43 -0
- data/npm-package/src/index.js +153 -0
- data/npm-package/src/tom-select-tailwind.css +392 -0
- data/sonar-project.properties +25 -0
- data/spec/features/ajax_params_spec.rb +31 -0
- data/spec/features/asset_pipeline_diagnostic_spec.rb +155 -0
- data/spec/features/end_to_end_spec.rb +273 -0
- data/spec/features/filter_input_spec.rb +144 -0
- data/spec/features/form_input_spec.rb +122 -0
- data/spec/features/inline_ajax_setting_spec.rb +26 -0
- data/spec/features/input_errors_spec.rb +76 -0
- data/spec/features/input_html_options_spec.rb +30 -0
- data/spec/features/options_dsl_spec.rb +230 -0
- data/spec/features/production_build_spec.rb +108 -0
- data/spec/internal/.node-version +1 -0
- data/spec/internal/Gemfile +43 -0
- data/spec/internal/Gemfile.lock +333 -0
- data/spec/internal/Procfile.dev +3 -0
- data/spec/internal/README.md +24 -0
- data/spec/internal/Rakefile +6 -0
- data/spec/internal/app/admin/categories.rb +26 -0
- data/spec/internal/app/admin/dashboard.rb +29 -0
- data/spec/internal/app/admin/option_types.rb +19 -0
- data/spec/internal/app/admin/option_values.rb +30 -0
- data/spec/internal/app/admin/posts.rb +27 -0
- data/spec/internal/app/admin/products.rb +22 -0
- data/spec/internal/app/admin/rgb_colors.rb +25 -0
- data/spec/internal/app/admin/tag_names.rb +21 -0
- data/spec/internal/app/admin/test_ajax_params_category.rb +10 -0
- data/spec/internal/app/admin/test_ajax_params_post.rb +20 -0
- data/spec/internal/app/admin/test_form_post_class.rb +7 -0
- data/spec/internal/app/admin/test_form_post_custom.rb +11 -0
- data/spec/internal/app/admin/test_form_post_resource.rb +11 -0
- data/spec/internal/app/admin/test_form_post_resource_custom.rb +12 -0
- data/spec/internal/app/admin/test_inline_ajax_post.rb +9 -0
- data/spec/internal/app/admin/test_input_html_post.rb +11 -0
- data/spec/internal/app/admin/test_posts_display_text.rb +9 -0
- data/spec/internal/app/admin/test_posts_filter.rb +9 -0
- data/spec/internal/app/admin/test_posts_named.rb +9 -0
- data/spec/internal/app/admin/test_posts_pagination.rb +9 -0
- data/spec/internal/app/admin/test_posts_payload_lambda.rb +11 -0
- data/spec/internal/app/admin/test_posts_payload_proc.rb +9 -0
- data/spec/internal/app/admin/test_posts_scope_lambda.rb +8 -0
- data/spec/internal/app/admin/test_posts_scope_params.rb +8 -0
- data/spec/internal/app/admin/test_posts_scope_user.rb +8 -0
- data/spec/internal/app/admin/test_posts_text_attr.rb +5 -0
- data/spec/internal/app/admin/users.rb +23 -0
- data/spec/internal/app/admin/variants.rb +31 -0
- data/spec/internal/app/assets/config/manifest.js +2 -0
- data/spec/internal/app/assets/images/.keep +0 -0
- data/spec/internal/app/assets/stylesheets/active_admin.tailwind.css +16 -0
- data/spec/internal/app/assets/stylesheets/application.tailwind.css +15 -0
- data/spec/internal/app/controllers/application_controller.rb +9 -0
- data/spec/internal/app/controllers/concerns/.keep +0 -0
- data/spec/internal/app/helpers/application_helper.rb +2 -0
- data/spec/internal/app/javascript/active_admin.js +19 -0
- data/spec/internal/app/javascript/application.js +2 -0
- data/spec/internal/app/jobs/application_job.rb +7 -0
- data/spec/internal/app/mailers/application_mailer.rb +4 -0
- data/spec/internal/app/models/admin_user.rb +9 -0
- data/spec/internal/app/models/application_record.rb +3 -0
- data/spec/internal/app/models/article.rb +12 -0
- data/spec/internal/app/models/category.rb +12 -0
- data/spec/internal/app/models/color.rb +9 -0
- data/spec/internal/app/models/concerns/.keep +0 -0
- data/spec/internal/app/models/internal/tag_name.rb +14 -0
- data/spec/internal/app/models/internal_tag_name.rb +11 -0
- data/spec/internal/app/models/option_type.rb +12 -0
- data/spec/internal/app/models/option_value.rb +4 -0
- data/spec/internal/app/models/post.rb +15 -0
- data/spec/internal/app/models/product.rb +12 -0
- data/spec/internal/app/models/rgb_color.rb +16 -0
- data/spec/internal/app/models/tag.rb +12 -0
- data/spec/internal/app/models/tagging.rb +12 -0
- data/spec/internal/app/models/user.rb +12 -0
- data/spec/internal/app/models/variant.rb +12 -0
- data/spec/internal/app/views/layouts/application.html.erb +28 -0
- data/spec/internal/app/views/layouts/mailer.html.erb +13 -0
- data/spec/internal/app/views/layouts/mailer.text.erb +1 -0
- data/spec/internal/app/views/pwa/manifest.json.erb +22 -0
- data/spec/internal/app/views/pwa/service-worker.js +26 -0
- data/spec/internal/bin/bundle +117 -0
- data/spec/internal/bin/dev +11 -0
- data/spec/internal/bin/rackup +27 -0
- data/spec/internal/bin/rails +4 -0
- data/spec/internal/bin/rake +4 -0
- data/spec/internal/bin/setup +37 -0
- data/spec/internal/config/application.rb +50 -0
- data/spec/internal/config/boot.rb +3 -0
- data/spec/internal/config/credentials.yml.enc +1 -0
- data/spec/internal/config/database.yml +32 -0
- data/spec/internal/config/environment.rb +5 -0
- data/spec/internal/config/environments/development.rb +63 -0
- data/spec/internal/config/environments/production.rb +86 -0
- data/spec/internal/config/environments/test.rb +50 -0
- data/spec/internal/config/initializers/active_admin.rb +54 -0
- data/spec/internal/config/initializers/assets.rb +8 -0
- data/spec/internal/config/initializers/content_security_policy.rb +25 -0
- data/spec/internal/config/initializers/devise.rb +315 -0
- data/spec/internal/config/initializers/filter_parameter_logging.rb +8 -0
- data/spec/internal/config/initializers/inflections.rb +16 -0
- data/spec/internal/config/initializers/searchable_select.rb +6 -0
- data/spec/internal/config/locales/devise.en.yml +65 -0
- data/spec/internal/config/locales/en.yml +31 -0
- data/spec/internal/config/master.key +1 -0
- data/spec/internal/config/puma.rb +38 -0
- data/spec/internal/config/routes.rb +17 -0
- data/spec/internal/config.ru +6 -0
- data/spec/internal/db/schema.rb +174 -0
- data/spec/internal/db/seeds.rb +167 -0
- data/spec/internal/esbuild.config.js +34 -0
- data/spec/internal/lib/tasks/.keep +0 -0
- data/spec/internal/lib/tasks/active_admin.rake +55 -0
- data/spec/internal/log/.keep +0 -0
- data/spec/internal/package-lock.json +1954 -0
- data/spec/internal/package.json +21 -0
- data/spec/internal/public/400.html +114 -0
- data/spec/internal/public/404.html +114 -0
- data/spec/internal/public/406-unsupported-browser.html +114 -0
- data/spec/internal/public/422.html +114 -0
- data/spec/internal/public/500.html +114 -0
- data/spec/internal/public/icon.png +0 -0
- data/spec/internal/public/icon.svg +3 -0
- data/spec/internal/public/robots.txt +1 -0
- data/spec/internal/script/.keep +0 -0
- data/spec/internal/storage/.keep +0 -0
- data/spec/internal/tailwind.config.js +23 -0
- data/spec/internal/vendor/.keep +0 -0
- data/spec/internal/yarn.lock +824 -0
- data/spec/rails_helper.rb +62 -0
- data/spec/spec_helper.rb +138 -0
- data/spec/support/active_admin_helpers.rb +17 -0
- data/spec/support/capybara.rb +8 -0
- data/spec/support/models.rb +11 -0
- data/spec/support/pluck_polyfill.rb +12 -0
- data/spec/support/reset_settings.rb +5 -0
- metadata +497 -0
data/CHANGELOG.md
ADDED
@@ -0,0 +1,64 @@
|
|
1
|
+
# CHANGELOG
|
2
|
+
|
3
|
+
### Version 5.0.0 (Draft - Unreleased)
|
4
|
+
|
5
|
+
[Compare changes](https://github.com/glebtv/activeadmin-searchable_select/compare/1-8-stable...master)
|
6
|
+
|
7
|
+
#### 🚀 Major Breaking Change: Migration from Select2 to Tom Select
|
8
|
+
|
9
|
+
This release represents a complete overhaul of the underlying select library, moving from jQuery-based Select2 to the modern, vanilla JavaScript Tom Select library.
|
10
|
+
|
11
|
+
#### ✨ New Features
|
12
|
+
- **Tom Select Integration**: Replaced Select2 with Tom Select v2.4.3 for better performance and smaller bundle size
|
13
|
+
- **jQuery-Free**: Completely removed jQuery dependency, reducing bundle size significantly
|
14
|
+
- **Tailwind CSS Support**: Added full Tailwind CSS 3 support with custom styled components
|
15
|
+
- **Modern JavaScript**: Rewritten with ES6+ modules and native browser APIs
|
16
|
+
- **TypeScript Ready**: Tom Select provides TypeScript definitions out of the box
|
17
|
+
- **Improved Performance**: Faster initialization and better memory management
|
18
|
+
|
19
|
+
#### 💔 Breaking Changes
|
20
|
+
- **No jQuery Required**: Applications no longer need jQuery for searchable selects
|
21
|
+
- **CSS Class Changes**: All Select2 classes replaced with Tom Select equivalents:
|
22
|
+
- `.select2-container` → `.ts-wrapper` or `.ts-control`
|
23
|
+
- `.select2-dropdown` → `.ts-dropdown`
|
24
|
+
- `.select2-results__option` → `.ts-dropdown .option`
|
25
|
+
- `.select2-selection` → `.ts-control .item`
|
26
|
+
- `.select2-search__field` → `.ts-control input`
|
27
|
+
- **JavaScript API Changes**: Tom Select has different initialization and options
|
28
|
+
- **Removed Legacy Files**: `searchable_select/init.js` no longer exists
|
29
|
+
|
30
|
+
#### 🔧 Technical Improvements
|
31
|
+
- **Build Process**: Simplified build process using Tailwind CSS 3 and esbuild
|
32
|
+
- **CSS Architecture**: Consolidated all styles into a single `tom-select-tailwind.css` file
|
33
|
+
- **Test Updates**: Updated all test selectors to work with Tom Select
|
34
|
+
- **Package Exports**: Updated npm package exports for Tom Select styles
|
35
|
+
- **Documentation**: Added comprehensive migration guide at `/docs/update-tom-select.md`
|
36
|
+
|
37
|
+
#### 📦 Dependencies
|
38
|
+
- **Removed**:
|
39
|
+
- `jquery` (peer dependency)
|
40
|
+
- `select2` (peer dependency)
|
41
|
+
- **Added**:
|
42
|
+
- `tom-select@^2.4.3` (peer dependency)
|
43
|
+
- `tailwindcss@^3.4.0` (dev dependency for test app)
|
44
|
+
|
45
|
+
#### 🔄 Migration Path
|
46
|
+
Users upgrading to v5.0.0 will need to:
|
47
|
+
1. Remove jQuery and Select2 dependencies
|
48
|
+
2. Add Tom Select: `npm install tom-select@^2.4.3`
|
49
|
+
3. Update CSS imports to use Tom Select styles
|
50
|
+
4. Update any custom JavaScript that referenced Select2 APIs
|
51
|
+
5. See `/docs/update-tom-select.md` for detailed migration instructions
|
52
|
+
|
53
|
+
#### Previous Changes (v0.5.0 Draft)
|
54
|
+
- Forked from original repository to @rocket-sensei organization
|
55
|
+
- Updated package name to `@rocket-sensei/activeadmin-searchable_select` for NPM publishing
|
56
|
+
- Added GitHub Actions workflow for automated NPM publishing on release
|
57
|
+
- Fixed all RuboCop linting violations for improved code quality
|
58
|
+
- Updated CI configuration for better test stability
|
59
|
+
|
60
|
+
### Previous Releases
|
61
|
+
|
62
|
+
See
|
63
|
+
[1-8-stable branch](https://github.com/codevise/activeadmin-searchable_select/blob/1-8-stable/CHANGELOG.md)
|
64
|
+
for previous changes.
|
data/CLAUDE.md
ADDED
@@ -0,0 +1,157 @@
|
|
1
|
+
# CLAUDE.md
|
2
|
+
|
3
|
+
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
4
|
+
|
5
|
+
## Project Overview
|
6
|
+
|
7
|
+
ActiveAdmin Searchable Select is a Ruby gem that adds searchable select boxes (via Select2) to ActiveAdmin forms and filters. It extends the ActiveAdmin resource DSL to allow defining JSON endpoints for asynchronous option fetching.
|
8
|
+
|
9
|
+
## Development Commands
|
10
|
+
|
11
|
+
### Testing
|
12
|
+
```bash
|
13
|
+
# Run full test suite
|
14
|
+
bundle exec rspec
|
15
|
+
|
16
|
+
# Run tests against specific Rails/ActiveAdmin versions
|
17
|
+
appraisal install
|
18
|
+
appraisal rspec
|
19
|
+
|
20
|
+
# Run a specific test file
|
21
|
+
bundle exec rspec spec/features/end_to_end_spec.rb
|
22
|
+
|
23
|
+
# Run tests matching a pattern
|
24
|
+
bundle exec rspec -e "searchable select"
|
25
|
+
```
|
26
|
+
|
27
|
+
### Code Quality
|
28
|
+
```bash
|
29
|
+
# Run Rubocop for style checking
|
30
|
+
bundle exec rubocop
|
31
|
+
|
32
|
+
# Auto-fix Rubocop violations (when safe)
|
33
|
+
bundle exec rubocop -a
|
34
|
+
```
|
35
|
+
|
36
|
+
### Gem Management
|
37
|
+
```bash
|
38
|
+
# Install dependencies
|
39
|
+
bundle install
|
40
|
+
|
41
|
+
# Build gem
|
42
|
+
bundle exec rake build
|
43
|
+
|
44
|
+
# Release new version (via Semmy)
|
45
|
+
bundle exec rake release
|
46
|
+
```
|
47
|
+
|
48
|
+
### NPM Package
|
49
|
+
```bash
|
50
|
+
# Install npm dependencies
|
51
|
+
npm install
|
52
|
+
|
53
|
+
# Prepare source files for npm publishing
|
54
|
+
npm run prepublishOnly
|
55
|
+
```
|
56
|
+
|
57
|
+
## Architecture
|
58
|
+
|
59
|
+
### Core Components
|
60
|
+
|
61
|
+
1. **Input Extensions** (`lib/activeadmin/inputs/`)
|
62
|
+
- `SearchableSelectInput`: Main form input class that renders searchable select fields
|
63
|
+
- `filters/SearchableSelectInput`: Filter-specific variant for ActiveAdmin index pages
|
64
|
+
|
65
|
+
2. **Resource DSL Extension** (`lib/activeadmin/searchable_select/resource_dsl_extension.rb`)
|
66
|
+
- Adds `searchable_select_options` method to ActiveAdmin resources
|
67
|
+
- Defines collection actions that serve JSON endpoints for option fetching
|
68
|
+
|
69
|
+
3. **Option Collection** (`lib/activeadmin/searchable_select/option_collection.rb`)
|
70
|
+
- Handles scope filtering via Ransack
|
71
|
+
- Manages pagination and result formatting
|
72
|
+
- Supports custom text attributes and display text lambdas
|
73
|
+
|
74
|
+
4. **JavaScript Integration** (`app/assets/javascripts/active_admin/`)
|
75
|
+
- Initializes Select2 on searchable select inputs
|
76
|
+
- Handles AJAX configuration for remote data fetching
|
77
|
+
- Manages selected option rendering
|
78
|
+
|
79
|
+
### Request Flow for AJAX Options
|
80
|
+
|
81
|
+
1. User types in searchable select input
|
82
|
+
2. JavaScript sends AJAX request to `all_options_[resource]_path`
|
83
|
+
3. Collection action (defined by `searchable_select_options`) processes request
|
84
|
+
4. `OptionCollection` applies Ransack filtering and pagination
|
85
|
+
5. JSON response returned with results and pagination metadata
|
86
|
+
6. Select2 renders options in dropdown
|
87
|
+
|
88
|
+
### Key Design Patterns
|
89
|
+
|
90
|
+
- **Ransack Integration**: All filtering leverages Ransack's query interface
|
91
|
+
- **Lazy Loading**: Options can be fetched asynchronously to handle large datasets
|
92
|
+
- **Scope Flexibility**: Scopes can be static collections or dynamic lambdas
|
93
|
+
- **Multiple Endpoints**: Single resource can define multiple option collections
|
94
|
+
- **Test Mode**: `inline_ajax_options` setting renders all options statically for testing
|
95
|
+
|
96
|
+
## Testing Approach
|
97
|
+
|
98
|
+
Tests use RSpec with Capybara for feature specs. The `spec/internal` directory contains a full Rails 8 application for testing.
|
99
|
+
|
100
|
+
### Running the Test App
|
101
|
+
|
102
|
+
```bash
|
103
|
+
# Start the test app for manual testing/demo
|
104
|
+
cd spec/internal
|
105
|
+
bundle exec rackup
|
106
|
+
|
107
|
+
# Or from project root
|
108
|
+
cd spec/internal && bundle exec rackup
|
109
|
+
|
110
|
+
# The app will be available at http://localhost:9292
|
111
|
+
# Default admin credentials: admin@example.com / password
|
112
|
+
```
|
113
|
+
|
114
|
+
### Test App Structure
|
115
|
+
|
116
|
+
The test app is a full Rails 8 application with:
|
117
|
+
- ActiveAdmin configured with Tailwind CSS
|
118
|
+
- Tom Select integrated for searchable select functionality
|
119
|
+
- Sample models (User, Category, Post, Color) with seed data
|
120
|
+
- Various admin resources demonstrating different searchable select configurations
|
121
|
+
|
122
|
+
### Building Assets in Test App
|
123
|
+
|
124
|
+
```bash
|
125
|
+
cd spec/internal
|
126
|
+
|
127
|
+
# Build CSS (Tailwind)
|
128
|
+
bundle exec rake active_admin:build
|
129
|
+
|
130
|
+
# Build JavaScript
|
131
|
+
npm run build:js
|
132
|
+
|
133
|
+
# Watch for changes during development
|
134
|
+
bundle exec rake active_admin:watch # CSS
|
135
|
+
npm run watch:js # JavaScript
|
136
|
+
```
|
137
|
+
|
138
|
+
### Key Test Helpers
|
139
|
+
|
140
|
+
- `ActiveAdminHelpers`: Provides DSL for interacting with ActiveAdmin pages
|
141
|
+
- `inline_ajax_options` mode: Renders all options inline during feature tests
|
142
|
+
- Database cleaner ensures test isolation
|
143
|
+
- ABSOLUTELY NO GIT PUSH WITH --no-verify FLAG
|
144
|
+
- ABSOLUTELY NO GIT PUSH WITH --no-verify FLAG
|
145
|
+
|
146
|
+
## Recent Updates (2025)
|
147
|
+
|
148
|
+
### Tom Select Migration
|
149
|
+
- Migrated from Select2 to Tom Select for better performance and smaller bundle size
|
150
|
+
- Tom Select is now bundled with the gem (no external CDN dependency)
|
151
|
+
- Full Tailwind CSS styling support for Tom Select components
|
152
|
+
|
153
|
+
### Rails 8 Test App
|
154
|
+
- Replaced Combustion-based test app with full Rails 8 application
|
155
|
+
- Proper asset pipeline with esbuild and cssbundling-rails
|
156
|
+
- Tailwind CSS v3 integration with ActiveAdmin's Tailwind plugin
|
157
|
+
- Complete test environment for manual testing and development
|
data/Gemfile
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
source 'https://rubygems.org'
|
2
|
+
|
3
|
+
# Use ActiveAdmin 4.x beta
|
4
|
+
gem 'activeadmin', '4.0.0.beta16'
|
5
|
+
|
6
|
+
gemspec name: 'activeadmin-tom_select'
|
7
|
+
|
8
|
+
gem 'devise', '~> 4.9', group: :test
|
9
|
+
|
10
|
+
gem 'propshaft', '~> 1.2', group: :test
|
11
|
+
|
12
|
+
gem 'rails', '~> 8.0', group: :test
|
data/Gemfile.lock
ADDED
@@ -0,0 +1,368 @@
|
|
1
|
+
PATH
|
2
|
+
remote: .
|
3
|
+
specs:
|
4
|
+
activeadmin-tom_select (4.1.0)
|
5
|
+
activeadmin (>= 3.0, < 5)
|
6
|
+
ransack (>= 1.8, < 5)
|
7
|
+
|
8
|
+
GEM
|
9
|
+
remote: https://rubygems.org/
|
10
|
+
specs:
|
11
|
+
actioncable (8.0.2.1)
|
12
|
+
actionpack (= 8.0.2.1)
|
13
|
+
activesupport (= 8.0.2.1)
|
14
|
+
nio4r (~> 2.0)
|
15
|
+
websocket-driver (>= 0.6.1)
|
16
|
+
zeitwerk (~> 2.6)
|
17
|
+
actionmailbox (8.0.2.1)
|
18
|
+
actionpack (= 8.0.2.1)
|
19
|
+
activejob (= 8.0.2.1)
|
20
|
+
activerecord (= 8.0.2.1)
|
21
|
+
activestorage (= 8.0.2.1)
|
22
|
+
activesupport (= 8.0.2.1)
|
23
|
+
mail (>= 2.8.0)
|
24
|
+
actionmailer (8.0.2.1)
|
25
|
+
actionpack (= 8.0.2.1)
|
26
|
+
actionview (= 8.0.2.1)
|
27
|
+
activejob (= 8.0.2.1)
|
28
|
+
activesupport (= 8.0.2.1)
|
29
|
+
mail (>= 2.8.0)
|
30
|
+
rails-dom-testing (~> 2.2)
|
31
|
+
actionpack (8.0.2.1)
|
32
|
+
actionview (= 8.0.2.1)
|
33
|
+
activesupport (= 8.0.2.1)
|
34
|
+
nokogiri (>= 1.8.5)
|
35
|
+
rack (>= 2.2.4)
|
36
|
+
rack-session (>= 1.0.1)
|
37
|
+
rack-test (>= 0.6.3)
|
38
|
+
rails-dom-testing (~> 2.2)
|
39
|
+
rails-html-sanitizer (~> 1.6)
|
40
|
+
useragent (~> 0.16)
|
41
|
+
actiontext (8.0.2.1)
|
42
|
+
actionpack (= 8.0.2.1)
|
43
|
+
activerecord (= 8.0.2.1)
|
44
|
+
activestorage (= 8.0.2.1)
|
45
|
+
activesupport (= 8.0.2.1)
|
46
|
+
globalid (>= 0.6.0)
|
47
|
+
nokogiri (>= 1.8.5)
|
48
|
+
actionview (8.0.2.1)
|
49
|
+
activesupport (= 8.0.2.1)
|
50
|
+
builder (~> 3.1)
|
51
|
+
erubi (~> 1.11)
|
52
|
+
rails-dom-testing (~> 2.2)
|
53
|
+
rails-html-sanitizer (~> 1.6)
|
54
|
+
activeadmin (4.0.0.beta16)
|
55
|
+
arbre (~> 2.0)
|
56
|
+
csv
|
57
|
+
formtastic (>= 5.0)
|
58
|
+
formtastic_i18n (>= 0.7)
|
59
|
+
inherited_resources (~> 2.0)
|
60
|
+
kaminari (>= 1.2.1)
|
61
|
+
railties (>= 7.0)
|
62
|
+
ransack (>= 4.0)
|
63
|
+
activejob (8.0.2.1)
|
64
|
+
activesupport (= 8.0.2.1)
|
65
|
+
globalid (>= 0.3.6)
|
66
|
+
activemodel (8.0.2.1)
|
67
|
+
activesupport (= 8.0.2.1)
|
68
|
+
activerecord (8.0.2.1)
|
69
|
+
activemodel (= 8.0.2.1)
|
70
|
+
activesupport (= 8.0.2.1)
|
71
|
+
timeout (>= 0.4.0)
|
72
|
+
activestorage (8.0.2.1)
|
73
|
+
actionpack (= 8.0.2.1)
|
74
|
+
activejob (= 8.0.2.1)
|
75
|
+
activerecord (= 8.0.2.1)
|
76
|
+
activesupport (= 8.0.2.1)
|
77
|
+
marcel (~> 1.0)
|
78
|
+
activesupport (8.0.2.1)
|
79
|
+
base64
|
80
|
+
benchmark (>= 0.3)
|
81
|
+
bigdecimal
|
82
|
+
concurrent-ruby (~> 1.0, >= 1.3.1)
|
83
|
+
connection_pool (>= 2.2.5)
|
84
|
+
drb
|
85
|
+
i18n (>= 1.6, < 2)
|
86
|
+
logger (>= 1.4.2)
|
87
|
+
minitest (>= 5.1)
|
88
|
+
securerandom (>= 0.3)
|
89
|
+
tzinfo (~> 2.0, >= 2.0.5)
|
90
|
+
uri (>= 0.13.1)
|
91
|
+
addressable (2.8.7)
|
92
|
+
public_suffix (>= 2.0.2, < 7.0)
|
93
|
+
appraisal (2.5.0)
|
94
|
+
bundler
|
95
|
+
rake
|
96
|
+
thor (>= 0.14.0)
|
97
|
+
arbre (2.2.0)
|
98
|
+
activesupport (>= 7.0)
|
99
|
+
ast (2.4.3)
|
100
|
+
base64 (0.3.0)
|
101
|
+
bcrypt (3.1.20)
|
102
|
+
benchmark (0.4.1)
|
103
|
+
bigdecimal (3.2.3)
|
104
|
+
builder (3.3.0)
|
105
|
+
capybara (3.40.0)
|
106
|
+
addressable
|
107
|
+
matrix
|
108
|
+
mini_mime (>= 0.1.3)
|
109
|
+
nokogiri (~> 1.11)
|
110
|
+
rack (>= 1.6.0)
|
111
|
+
rack-test (>= 0.6.3)
|
112
|
+
regexp_parser (>= 1.5, < 3.0)
|
113
|
+
xpath (~> 3.2)
|
114
|
+
capybara-playwright-driver (0.5.7)
|
115
|
+
addressable
|
116
|
+
capybara
|
117
|
+
playwright-ruby-client (>= 1.16.0)
|
118
|
+
combustion (1.5.0)
|
119
|
+
activesupport (>= 3.0.0)
|
120
|
+
railties (>= 3.0.0)
|
121
|
+
thor (>= 0.14.6)
|
122
|
+
concurrent-ruby (1.3.5)
|
123
|
+
connection_pool (2.5.4)
|
124
|
+
crass (1.0.6)
|
125
|
+
csv (3.3.5)
|
126
|
+
database_cleaner-active_record (2.2.2)
|
127
|
+
activerecord (>= 5.a)
|
128
|
+
database_cleaner-core (~> 2.0)
|
129
|
+
database_cleaner-core (2.0.1)
|
130
|
+
date (3.4.1)
|
131
|
+
devise (4.9.4)
|
132
|
+
bcrypt (~> 3.0)
|
133
|
+
orm_adapter (~> 0.1)
|
134
|
+
railties (>= 4.1.0)
|
135
|
+
responders
|
136
|
+
warden (~> 1.2.3)
|
137
|
+
diff-lcs (1.6.2)
|
138
|
+
docile (1.4.1)
|
139
|
+
drb (2.2.3)
|
140
|
+
erb (5.0.2)
|
141
|
+
erubi (1.13.1)
|
142
|
+
formtastic (5.0.0)
|
143
|
+
actionpack (>= 6.0.0)
|
144
|
+
formtastic_i18n (0.7.0)
|
145
|
+
globalid (1.2.1)
|
146
|
+
activesupport (>= 6.1)
|
147
|
+
has_scope (0.8.2)
|
148
|
+
actionpack (>= 5.2)
|
149
|
+
activesupport (>= 5.2)
|
150
|
+
i18n (1.14.7)
|
151
|
+
concurrent-ruby (~> 1.0)
|
152
|
+
inherited_resources (2.1.0)
|
153
|
+
actionpack (>= 7.0)
|
154
|
+
has_scope (>= 0.6)
|
155
|
+
railties (>= 7.0)
|
156
|
+
responders (>= 2)
|
157
|
+
io-console (0.8.1)
|
158
|
+
irb (1.15.2)
|
159
|
+
pp (>= 0.6.0)
|
160
|
+
rdoc (>= 4.0.0)
|
161
|
+
reline (>= 0.4.2)
|
162
|
+
json (2.13.2)
|
163
|
+
kaminari (1.2.2)
|
164
|
+
activesupport (>= 4.1.0)
|
165
|
+
kaminari-actionview (= 1.2.2)
|
166
|
+
kaminari-activerecord (= 1.2.2)
|
167
|
+
kaminari-core (= 1.2.2)
|
168
|
+
kaminari-actionview (1.2.2)
|
169
|
+
actionview
|
170
|
+
kaminari-core (= 1.2.2)
|
171
|
+
kaminari-activerecord (1.2.2)
|
172
|
+
activerecord
|
173
|
+
kaminari-core (= 1.2.2)
|
174
|
+
kaminari-core (1.2.2)
|
175
|
+
logger (1.7.0)
|
176
|
+
loofah (2.24.1)
|
177
|
+
crass (~> 1.0.2)
|
178
|
+
nokogiri (>= 1.12.0)
|
179
|
+
mail (2.8.1)
|
180
|
+
mini_mime (>= 0.1.1)
|
181
|
+
net-imap
|
182
|
+
net-pop
|
183
|
+
net-smtp
|
184
|
+
marcel (1.0.4)
|
185
|
+
matrix (0.4.3)
|
186
|
+
mime-types (3.7.0)
|
187
|
+
logger
|
188
|
+
mime-types-data (~> 3.2025, >= 3.2025.0507)
|
189
|
+
mime-types-data (3.2025.0909)
|
190
|
+
mini_mime (1.1.5)
|
191
|
+
minitest (5.25.5)
|
192
|
+
net-imap (0.5.10)
|
193
|
+
date
|
194
|
+
net-protocol
|
195
|
+
net-pop (0.1.2)
|
196
|
+
net-protocol
|
197
|
+
net-protocol (0.2.2)
|
198
|
+
timeout
|
199
|
+
net-smtp (0.5.1)
|
200
|
+
net-protocol
|
201
|
+
nio4r (2.7.4)
|
202
|
+
nokogiri (1.18.9-x86_64-linux-gnu)
|
203
|
+
racc (~> 1.4)
|
204
|
+
orm_adapter (0.5.0)
|
205
|
+
parallel (1.27.0)
|
206
|
+
parser (3.3.9.0)
|
207
|
+
ast (~> 2.4.1)
|
208
|
+
racc
|
209
|
+
playwright-ruby-client (1.55.0)
|
210
|
+
concurrent-ruby (>= 1.1.6)
|
211
|
+
mime-types (>= 3.0)
|
212
|
+
pp (0.6.2)
|
213
|
+
prettyprint
|
214
|
+
prettyprint (0.2.0)
|
215
|
+
prism (1.4.0)
|
216
|
+
propshaft (1.2.1)
|
217
|
+
actionpack (>= 7.0.0)
|
218
|
+
activesupport (>= 7.0.0)
|
219
|
+
rack
|
220
|
+
psych (5.2.6)
|
221
|
+
date
|
222
|
+
stringio
|
223
|
+
public_suffix (6.0.2)
|
224
|
+
puma (6.6.1)
|
225
|
+
nio4r (~> 2.0)
|
226
|
+
racc (1.8.1)
|
227
|
+
rack (3.2.1)
|
228
|
+
rack-session (2.1.1)
|
229
|
+
base64 (>= 0.1.0)
|
230
|
+
rack (>= 3.0.0)
|
231
|
+
rack-test (2.2.0)
|
232
|
+
rack (>= 1.3)
|
233
|
+
rackup (2.2.1)
|
234
|
+
rack (>= 3)
|
235
|
+
rails (8.0.2.1)
|
236
|
+
actioncable (= 8.0.2.1)
|
237
|
+
actionmailbox (= 8.0.2.1)
|
238
|
+
actionmailer (= 8.0.2.1)
|
239
|
+
actionpack (= 8.0.2.1)
|
240
|
+
actiontext (= 8.0.2.1)
|
241
|
+
actionview (= 8.0.2.1)
|
242
|
+
activejob (= 8.0.2.1)
|
243
|
+
activemodel (= 8.0.2.1)
|
244
|
+
activerecord (= 8.0.2.1)
|
245
|
+
activestorage (= 8.0.2.1)
|
246
|
+
activesupport (= 8.0.2.1)
|
247
|
+
bundler (>= 1.15.0)
|
248
|
+
railties (= 8.0.2.1)
|
249
|
+
rails-dom-testing (2.3.0)
|
250
|
+
activesupport (>= 5.0.0)
|
251
|
+
minitest
|
252
|
+
nokogiri (>= 1.6)
|
253
|
+
rails-html-sanitizer (1.6.2)
|
254
|
+
loofah (~> 2.21)
|
255
|
+
nokogiri (>= 1.15.7, != 1.16.7, != 1.16.6, != 1.16.5, != 1.16.4, != 1.16.3, != 1.16.2, != 1.16.1, != 1.16.0.rc1, != 1.16.0)
|
256
|
+
railties (8.0.2.1)
|
257
|
+
actionpack (= 8.0.2.1)
|
258
|
+
activesupport (= 8.0.2.1)
|
259
|
+
irb (~> 1.13)
|
260
|
+
rackup (>= 1.0.0)
|
261
|
+
rake (>= 12.2)
|
262
|
+
thor (~> 1.0, >= 1.2.2)
|
263
|
+
zeitwerk (~> 2.6)
|
264
|
+
rainbow (2.2.2)
|
265
|
+
rake
|
266
|
+
rake (13.3.0)
|
267
|
+
ransack (4.3.0)
|
268
|
+
activerecord (>= 6.1.5)
|
269
|
+
activesupport (>= 6.1.5)
|
270
|
+
i18n
|
271
|
+
rdoc (6.14.2)
|
272
|
+
erb
|
273
|
+
psych (>= 4.0.0)
|
274
|
+
regexp_parser (2.11.2)
|
275
|
+
reline (0.6.2)
|
276
|
+
io-console (~> 0.5)
|
277
|
+
responders (3.1.1)
|
278
|
+
actionpack (>= 5.2)
|
279
|
+
railties (>= 5.2)
|
280
|
+
rexml (3.4.4)
|
281
|
+
rspec-core (3.13.5)
|
282
|
+
rspec-support (~> 3.13.0)
|
283
|
+
rspec-expectations (3.13.5)
|
284
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
285
|
+
rspec-support (~> 3.13.0)
|
286
|
+
rspec-mocks (3.13.5)
|
287
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
288
|
+
rspec-support (~> 3.13.0)
|
289
|
+
rspec-rails (6.1.5)
|
290
|
+
actionpack (>= 6.1)
|
291
|
+
activesupport (>= 6.1)
|
292
|
+
railties (>= 6.1)
|
293
|
+
rspec-core (~> 3.13)
|
294
|
+
rspec-expectations (~> 3.13)
|
295
|
+
rspec-mocks (~> 3.13)
|
296
|
+
rspec-support (~> 3.13)
|
297
|
+
rspec-support (3.13.5)
|
298
|
+
rspec_junit_formatter (0.6.0)
|
299
|
+
rspec-core (>= 2, < 4, != 2.12.0)
|
300
|
+
rubocop (1.50.2)
|
301
|
+
json (~> 2.3)
|
302
|
+
parallel (~> 1.10)
|
303
|
+
parser (>= 3.2.0.0)
|
304
|
+
rainbow (>= 2.2.2, < 4.0)
|
305
|
+
regexp_parser (>= 1.8, < 3.0)
|
306
|
+
rexml (>= 3.2.5, < 4.0)
|
307
|
+
rubocop-ast (>= 1.28.0, < 2.0)
|
308
|
+
ruby-progressbar (~> 1.7)
|
309
|
+
unicode-display_width (>= 2.4.0, < 3.0)
|
310
|
+
rubocop-ast (1.46.0)
|
311
|
+
parser (>= 3.3.7.2)
|
312
|
+
prism (~> 1.4)
|
313
|
+
rubocop-rspec (3.0.0)
|
314
|
+
rubocop (~> 1.40)
|
315
|
+
ruby-progressbar (1.13.0)
|
316
|
+
securerandom (0.4.1)
|
317
|
+
simplecov (0.22.0)
|
318
|
+
docile (~> 1.1)
|
319
|
+
simplecov-html (~> 0.11)
|
320
|
+
simplecov_json_formatter (~> 0.1)
|
321
|
+
simplecov-html (0.13.2)
|
322
|
+
simplecov_json_formatter (0.1.4)
|
323
|
+
sqlite3 (2.7.3-x86_64-linux-gnu)
|
324
|
+
stringio (3.1.7)
|
325
|
+
thor (1.4.0)
|
326
|
+
timeout (0.4.3)
|
327
|
+
tzinfo (2.0.6)
|
328
|
+
concurrent-ruby (~> 1.0)
|
329
|
+
unicode-display_width (2.6.0)
|
330
|
+
uri (1.0.3)
|
331
|
+
useragent (0.16.11)
|
332
|
+
warden (1.2.9)
|
333
|
+
rack (>= 2.0.9)
|
334
|
+
websocket-driver (0.8.0)
|
335
|
+
base64
|
336
|
+
websocket-extensions (>= 0.1.0)
|
337
|
+
websocket-extensions (0.1.5)
|
338
|
+
xpath (3.2.0)
|
339
|
+
nokogiri (~> 1.8)
|
340
|
+
zeitwerk (2.7.3)
|
341
|
+
|
342
|
+
PLATFORMS
|
343
|
+
x86_64-linux
|
344
|
+
|
345
|
+
DEPENDENCIES
|
346
|
+
activeadmin (= 4.0.0.beta16)
|
347
|
+
activeadmin-tom_select!
|
348
|
+
appraisal (~> 2.2)
|
349
|
+
bundler (>= 1.5, < 3)
|
350
|
+
capybara (~> 3.39)
|
351
|
+
capybara-playwright-driver (~> 0.5)
|
352
|
+
combustion (~> 1.5)
|
353
|
+
database_cleaner-active_record (~> 2.1)
|
354
|
+
devise (~> 4.9)
|
355
|
+
propshaft (~> 1.2)
|
356
|
+
puma (~> 6.0)
|
357
|
+
rails (~> 8.0)
|
358
|
+
rake
|
359
|
+
rspec-rails (~> 6.0)
|
360
|
+
rspec_junit_formatter
|
361
|
+
rubocop (~> 1.50)
|
362
|
+
rubocop-ast (~> 1.46.0)
|
363
|
+
rubocop-rspec (~> 3.0)
|
364
|
+
simplecov
|
365
|
+
sqlite3 (~> 2.1)
|
366
|
+
|
367
|
+
BUNDLED WITH
|
368
|
+
2.4.10
|
data/LICENSE.txt
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
|
2
|
+
Copyright for portions of `codevise/activeadmin-searchable_select`
|
3
|
+
held by Mark Fariburn, Praxitar Ltd, 2014 as part of
|
4
|
+
`mfairburn/activeadmin-select2` which this project is based on. All
|
5
|
+
other copyright for `codevise/activeadmin-searchable_select` held by
|
6
|
+
Codevise Solutions Ltd, 2017.
|
7
|
+
|
8
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
9
|
+
a copy of this software and associated documentation files (the
|
10
|
+
"Software"), to deal in the Software without restriction, including
|
11
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
12
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
13
|
+
permit persons to whom the Software is furnished to do so, subject to
|
14
|
+
the following conditions:
|
15
|
+
|
16
|
+
The above copyright notice and this permission notice shall be
|
17
|
+
included in all copies or substantial portions of the Software.
|
18
|
+
|
19
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
20
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
21
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
22
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
23
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
24
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
25
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|