activeadmin_reorderable 0.2.1 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/MIT-LICENSE +1 -1
- data/README.md +21 -2
- data/app/assets/javascripts/activeadmin_reorderable.js +87 -58
- data/app/assets/stylesheets/activeadmin_reorderable.scss +4 -0
- data/lib/active_admin/reorderable/table_methods.rb +1 -1
- data/lib/activeadmin_reorderable/version.rb +1 -1
- data/package.json +3 -5
- metadata +182 -12
- data/.gitignore +0 -4
- data/CHANGELOG.md +0 -9
- data/CONTRIBUTING.md +0 -27
- data/Gemfile +0 -3
- data/activeadmin_reorderable.gemspec +0 -18
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b0cdf7b48ce9d9b388c2140c1278d5626386139523b4d5505a1a2b4186c9b401
|
4
|
+
data.tar.gz: 43d51f9f8abcd5519224855536a737cfb2bc6b5e9f6b607babbd36ac264809bd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6ad7ef181efc4d8cb1b3b636ec14a12adef97efd0c6ed1a33e8c52dea4cb4ce18438979a4f42cd67fe018fbd1afc9a33e20b69eaff8fd21cfe2d13d53a701601
|
7
|
+
data.tar.gz: 52bcb5b1dc53133d2e5cb39b6d7c4c4bbfe562f2061a3cc49f4a76df9aa662613650434dff80368a1c347999318c6a1bd9ef09f65ab906374e08398362df398a
|
data/MIT-LICENSE
CHANGED
data/README.md
CHANGED
@@ -9,14 +9,14 @@ Your resource classes must respond to `insert_at` ala the [`acts_as_list`](https
|
|
9
9
|
|
10
10
|
## Installation
|
11
11
|
### Sprockets
|
12
|
-
- Add `gem 'activeadmin_reorderable'` to `Gemfile`
|
12
|
+
- Add `gem 'activeadmin_reorderable'` to `Gemfile` and run `bundle install`
|
13
13
|
- Add `#= require activeadmin_reorderable` to `app/assets/javascripts/active_admin.js.coffee`
|
14
14
|
- Add `@import "activeadmin_reorderable";` as the last `@import` statement in `app/assets/stylesheets/active_admin.css.scss`
|
15
15
|
|
16
16
|
### Webpacker / npm
|
17
17
|
- `npm install --save activeadmin_reorderable` or `yarn add activeadmin_reorderable`
|
18
18
|
- Add `import "activeadmin_reorderable"` to your JS pack file
|
19
|
-
- Add `@import "activeadmin_reorderable/app/assets/styleseehts/activeadmin_reorderable.scss"
|
19
|
+
- Add `@import "activeadmin_reorderable/app/assets/styleseehts/activeadmin_reorderable.scss";` to your CSS style file
|
20
20
|
|
21
21
|
## Use
|
22
22
|
`parts.rb`
|
@@ -70,3 +70,22 @@ end
|
|
70
70
|
### Issue and PR reviews
|
71
71
|
|
72
72
|
Another way you can help is by reviewing issues, trying to reproduce bugs, and providing feedback on PRs.
|
73
|
+
|
74
|
+
## Pushing a new version
|
75
|
+
|
76
|
+
First, you must be authorized on both rubygems.org and npmjs.com. Then:
|
77
|
+
|
78
|
+
Update the ruby gem:
|
79
|
+
- Update the version in `lib/activeadmin_reorderable/version.rb`
|
80
|
+
- `gem build activeadmin_reorderable.gemspec`
|
81
|
+
- `gem push activeadmin_reorderable-X.Y.Z.gem`
|
82
|
+
|
83
|
+
Update the npm package:
|
84
|
+
- Update the version in `package.json`
|
85
|
+
- `npm publish`
|
86
|
+
|
87
|
+
Tag the version in git:
|
88
|
+
- `git tag X.Y.Z`
|
89
|
+
- `git push origin X.Y.Z`
|
90
|
+
|
91
|
+
Update the changelog
|
@@ -1,73 +1,102 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
function reorderableTableHelper(e, ui) {
|
4
|
-
ui.children().each(function () {
|
5
|
-
var $cell = $(this);
|
1
|
+
const setupReorderable = ({ table, onUpdate }) => {
|
2
|
+
const rows = table.getElementsByTagName('tbody')[0].rows
|
6
3
|
|
7
|
-
|
8
|
-
});
|
4
|
+
let dragSrc = null
|
9
5
|
|
10
|
-
|
11
|
-
|
6
|
+
for (var i = 0; i < rows.length; i++) {
|
7
|
+
const row = rows[i]
|
8
|
+
const handle = row.querySelector(".reorder-handle")
|
12
9
|
|
13
|
-
|
14
|
-
|
15
|
-
|
10
|
+
// Add draggable only when the handle is clicked, to prevent dragging from the rest of the row
|
11
|
+
handle.addEventListener("mousedown", () => row.setAttribute("draggable", "true"))
|
12
|
+
handle.addEventListener("mouseup", () => row.setAttribute("draggable", "false"))
|
16
13
|
|
17
|
-
|
18
|
-
|
14
|
+
row.addEventListener("dragstart", (e) => {
|
15
|
+
e.dataTransfer.effectAllowed = "move"
|
19
16
|
|
20
|
-
|
21
|
-
var $row = ui.item,
|
22
|
-
$rows = $row.parent().children('tr'),
|
23
|
-
$table = $row.closest('table'),
|
24
|
-
$handle = $row.find('.reorder-handle'),
|
25
|
-
url = $handle.data('reorder-url'),
|
17
|
+
dragSrc = row
|
26
18
|
|
27
|
-
|
19
|
+
// Apply styling a millisecond later, so the dragging image shows up correctly
|
20
|
+
setTimeout(() => { row.classList.add("dragged-row") }, 1)
|
21
|
+
})
|
28
22
|
|
29
|
-
|
30
|
-
|
31
|
-
|
23
|
+
row.addEventListener("dragover", (e) => {
|
24
|
+
e.preventDefault()
|
25
|
+
e.dataTransfer.dropEffect = "move"
|
32
26
|
|
33
|
-
|
27
|
+
// If dragged to a new location, move the dragged row
|
28
|
+
if (dragSrc != row) {
|
29
|
+
const sourceIndex = dragSrc.rowIndex
|
30
|
+
const targetIndex = row.rowIndex
|
34
31
|
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
32
|
+
if (sourceIndex < targetIndex) {
|
33
|
+
table.tBodies[0].insertBefore(dragSrc, row.nextSibling)
|
34
|
+
} else {
|
35
|
+
table.tBodies[0].insertBefore(dragSrc, row)
|
36
|
+
}
|
37
|
+
onUpdate(dragSrc)
|
39
38
|
}
|
39
|
+
})
|
40
|
+
|
41
|
+
row.addEventListener("dragend", () => {
|
42
|
+
// Disable dragging, so only the handle can start the dragging again
|
43
|
+
row.setAttribute("draggable", "false")
|
44
|
+
row.classList.remove("dragged-row")
|
45
|
+
dragSrc = null
|
46
|
+
})
|
47
|
+
}
|
48
|
+
}
|
49
|
+
|
50
|
+
const updateEvenOddClasses = (row, index) => {
|
51
|
+
row.classList.remove("odd")
|
52
|
+
row.classList.remove("even")
|
53
|
+
|
54
|
+
if ((index + 1) % 2 == 0) {
|
55
|
+
row.classList.add("even")
|
56
|
+
} else {
|
57
|
+
row.classList.add("odd")
|
58
|
+
}
|
59
|
+
}
|
40
60
|
|
41
|
-
|
42
|
-
|
61
|
+
const updatePositionText = (row, index) => {
|
62
|
+
row.querySelector(".position").textContent = index
|
63
|
+
}
|
43
64
|
|
44
|
-
|
45
|
-
|
46
|
-
});
|
47
|
-
var top_id = $row.prev().find('.reorder-handle').data("reorderId")
|
48
|
-
var bottom_id = $row.next().find('.reorder-handle').data("reorderId")
|
65
|
+
const updateBackend = (url, rowIndex) => {
|
66
|
+
let headers = { }
|
49
67
|
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
68
|
+
const csrfElement = document.querySelector("meta[name=csrf-token]")
|
69
|
+
if (csrfElement) {
|
70
|
+
headers["X-CSRF-Token"] = csrfElement.getAttribute("content")
|
71
|
+
} else {
|
72
|
+
console.warn("Rails CSRF element not present. AJAX requests may fail due to CORS issues.")
|
55
73
|
}
|
56
74
|
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
75
|
+
const formData = new FormData()
|
76
|
+
formData.append("position", rowIndex)
|
77
|
+
|
78
|
+
fetch(url, { method: "POST", headers, body: formData })
|
79
|
+
}
|
80
|
+
|
81
|
+
document.addEventListener("DOMContentLoaded", () => {
|
82
|
+
document.querySelectorAll(".aa-reorderable").forEach((table) => {
|
83
|
+
setupReorderable({
|
84
|
+
table,
|
85
|
+
onUpdate: (row) => {
|
86
|
+
const allRows = table.getElementsByTagName('tbody')[0].rows
|
87
|
+
const handle = row.querySelector(".reorder-handle")
|
88
|
+
const url = handle.dataset["reorderUrl"]
|
89
|
+
const rowIndex = Array.prototype.indexOf.call(allRows, row)
|
90
|
+
|
91
|
+
for (var i = 0; i < allRows.length; i++) {
|
92
|
+
const loopRow = allRows[i]
|
93
|
+
const index = i + 1
|
94
|
+
updateEvenOddClasses(loopRow, index)
|
95
|
+
updatePositionText(loopRow, index)
|
96
|
+
}
|
97
|
+
|
98
|
+
updateBackend(url, rowIndex + 1)
|
99
|
+
}
|
100
|
+
})
|
101
|
+
})
|
102
|
+
})
|
@@ -14,7 +14,7 @@ module ActiveAdmin
|
|
14
14
|
aa_resource = active_admin_namespace.resource_for(resource.class)
|
15
15
|
url = aa_resource.route_member_action_path(:reorder, resource)
|
16
16
|
|
17
|
-
span(reorder_handle_content, :class => 'reorder-handle', 'data-reorder-url' => url
|
17
|
+
span(reorder_handle_content, :class => 'reorder-handle', 'data-reorder-url' => url)
|
18
18
|
end
|
19
19
|
|
20
20
|
def reorder_handle_content
|
data/package.json
CHANGED
@@ -1,17 +1,15 @@
|
|
1
1
|
{
|
2
2
|
"name": "activeadmin_reorderable",
|
3
|
-
"version": "0.
|
3
|
+
"version": "0.3.0",
|
4
4
|
"description": "Drag and drop to reorder your ActiveAdmin tables.",
|
5
5
|
"main": "app/assets/javascripts/activeadmin_reorderable.js",
|
6
6
|
"files": [
|
7
7
|
"app/**/*"
|
8
8
|
],
|
9
9
|
"repository": "https://github.com/dkniffin/activeadmin_reorderable",
|
10
|
-
"author": "
|
10
|
+
"author": "Derek Kniffin <derek.kniffin@gmail.com>",
|
11
11
|
"license": "MIT",
|
12
12
|
"scripts": { },
|
13
13
|
"devDependencies": { },
|
14
|
-
"dependencies": {
|
15
|
-
"jquery": "^3.5.1"
|
16
|
-
}
|
14
|
+
"dependencies": { }
|
17
15
|
}
|
metadata
CHANGED
@@ -1,44 +1,214 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: activeadmin_reorderable
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
+
- Derek Kniffin
|
7
8
|
- Chris Jones
|
8
9
|
- Lawson Kurtz
|
9
10
|
autorequire:
|
10
11
|
bindir: bin
|
11
12
|
cert_chain: []
|
12
|
-
date:
|
13
|
+
date: 2024-07-11 00:00:00.000000000 Z
|
13
14
|
dependencies:
|
14
15
|
- !ruby/object:Gem::Dependency
|
15
16
|
name: activeadmin
|
17
|
+
requirement: !ruby/object:Gem::Requirement
|
18
|
+
requirements:
|
19
|
+
- - "~>"
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '3.0'
|
22
|
+
type: :development
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
requirements:
|
26
|
+
- - "~>"
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
version: '3.0'
|
29
|
+
- !ruby/object:Gem::Dependency
|
30
|
+
name: acts_as_list
|
31
|
+
requirement: !ruby/object:Gem::Requirement
|
32
|
+
requirements:
|
33
|
+
- - ">="
|
34
|
+
- !ruby/object:Gem::Version
|
35
|
+
version: '0'
|
36
|
+
type: :development
|
37
|
+
prerelease: false
|
38
|
+
version_requirements: !ruby/object:Gem::Requirement
|
39
|
+
requirements:
|
40
|
+
- - ">="
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: '0'
|
43
|
+
- !ruby/object:Gem::Dependency
|
44
|
+
name: capybara
|
45
|
+
requirement: !ruby/object:Gem::Requirement
|
46
|
+
requirements:
|
47
|
+
- - ">="
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: '0'
|
50
|
+
type: :development
|
51
|
+
prerelease: false
|
52
|
+
version_requirements: !ruby/object:Gem::Requirement
|
53
|
+
requirements:
|
54
|
+
- - ">="
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: '0'
|
57
|
+
- !ruby/object:Gem::Dependency
|
58
|
+
name: database_cleaner
|
59
|
+
requirement: !ruby/object:Gem::Requirement
|
60
|
+
requirements:
|
61
|
+
- - ">="
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: '0'
|
64
|
+
type: :development
|
65
|
+
prerelease: false
|
66
|
+
version_requirements: !ruby/object:Gem::Requirement
|
67
|
+
requirements:
|
68
|
+
- - ">="
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
version: '0'
|
71
|
+
- !ruby/object:Gem::Dependency
|
72
|
+
name: factory_bot_rails
|
73
|
+
requirement: !ruby/object:Gem::Requirement
|
74
|
+
requirements:
|
75
|
+
- - ">="
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
78
|
+
type: :development
|
79
|
+
prerelease: false
|
80
|
+
version_requirements: !ruby/object:Gem::Requirement
|
81
|
+
requirements:
|
82
|
+
- - ">="
|
83
|
+
- !ruby/object:Gem::Version
|
84
|
+
version: '0'
|
85
|
+
- !ruby/object:Gem::Dependency
|
86
|
+
name: pry
|
87
|
+
requirement: !ruby/object:Gem::Requirement
|
88
|
+
requirements:
|
89
|
+
- - ">="
|
90
|
+
- !ruby/object:Gem::Version
|
91
|
+
version: '0'
|
92
|
+
type: :development
|
93
|
+
prerelease: false
|
94
|
+
version_requirements: !ruby/object:Gem::Requirement
|
95
|
+
requirements:
|
96
|
+
- - ">="
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: '0'
|
99
|
+
- !ruby/object:Gem::Dependency
|
100
|
+
name: puma
|
101
|
+
requirement: !ruby/object:Gem::Requirement
|
102
|
+
requirements:
|
103
|
+
- - ">="
|
104
|
+
- !ruby/object:Gem::Version
|
105
|
+
version: '0'
|
106
|
+
type: :development
|
107
|
+
prerelease: false
|
108
|
+
version_requirements: !ruby/object:Gem::Requirement
|
109
|
+
requirements:
|
110
|
+
- - ">="
|
111
|
+
- !ruby/object:Gem::Version
|
112
|
+
version: '0'
|
113
|
+
- !ruby/object:Gem::Dependency
|
114
|
+
name: rails
|
115
|
+
requirement: !ruby/object:Gem::Requirement
|
116
|
+
requirements:
|
117
|
+
- - "~>"
|
118
|
+
- !ruby/object:Gem::Version
|
119
|
+
version: '6.1'
|
120
|
+
- - ">="
|
121
|
+
- !ruby/object:Gem::Version
|
122
|
+
version: 6.1.4.4
|
123
|
+
type: :development
|
124
|
+
prerelease: false
|
125
|
+
version_requirements: !ruby/object:Gem::Requirement
|
126
|
+
requirements:
|
127
|
+
- - "~>"
|
128
|
+
- !ruby/object:Gem::Version
|
129
|
+
version: '6.1'
|
130
|
+
- - ">="
|
131
|
+
- !ruby/object:Gem::Version
|
132
|
+
version: 6.1.4.4
|
133
|
+
- !ruby/object:Gem::Dependency
|
134
|
+
name: rspec-rails
|
135
|
+
requirement: !ruby/object:Gem::Requirement
|
136
|
+
requirements:
|
137
|
+
- - ">="
|
138
|
+
- !ruby/object:Gem::Version
|
139
|
+
version: '0'
|
140
|
+
type: :development
|
141
|
+
prerelease: false
|
142
|
+
version_requirements: !ruby/object:Gem::Requirement
|
143
|
+
requirements:
|
144
|
+
- - ">="
|
145
|
+
- !ruby/object:Gem::Version
|
146
|
+
version: '0'
|
147
|
+
- !ruby/object:Gem::Dependency
|
148
|
+
name: selenium-webdriver
|
149
|
+
requirement: !ruby/object:Gem::Requirement
|
150
|
+
requirements:
|
151
|
+
- - "~>"
|
152
|
+
- !ruby/object:Gem::Version
|
153
|
+
version: '4.10'
|
154
|
+
type: :development
|
155
|
+
prerelease: false
|
156
|
+
version_requirements: !ruby/object:Gem::Requirement
|
157
|
+
requirements:
|
158
|
+
- - "~>"
|
159
|
+
- !ruby/object:Gem::Version
|
160
|
+
version: '4.10'
|
161
|
+
- !ruby/object:Gem::Dependency
|
162
|
+
name: site_prism
|
163
|
+
requirement: !ruby/object:Gem::Requirement
|
164
|
+
requirements:
|
165
|
+
- - ">="
|
166
|
+
- !ruby/object:Gem::Version
|
167
|
+
version: '0'
|
168
|
+
type: :development
|
169
|
+
prerelease: false
|
170
|
+
version_requirements: !ruby/object:Gem::Requirement
|
171
|
+
requirements:
|
172
|
+
- - ">="
|
173
|
+
- !ruby/object:Gem::Version
|
174
|
+
version: '0'
|
175
|
+
- !ruby/object:Gem::Dependency
|
176
|
+
name: sqlite3
|
177
|
+
requirement: !ruby/object:Gem::Requirement
|
178
|
+
requirements:
|
179
|
+
- - "~>"
|
180
|
+
- !ruby/object:Gem::Version
|
181
|
+
version: '1.4'
|
182
|
+
type: :development
|
183
|
+
prerelease: false
|
184
|
+
version_requirements: !ruby/object:Gem::Requirement
|
185
|
+
requirements:
|
186
|
+
- - "~>"
|
187
|
+
- !ruby/object:Gem::Version
|
188
|
+
version: '1.4'
|
189
|
+
- !ruby/object:Gem::Dependency
|
190
|
+
name: sassc-rails
|
16
191
|
requirement: !ruby/object:Gem::Requirement
|
17
192
|
requirements:
|
18
193
|
- - ">="
|
19
194
|
- !ruby/object:Gem::Version
|
20
|
-
version: '0
|
195
|
+
version: '0'
|
21
196
|
type: :development
|
22
197
|
prerelease: false
|
23
198
|
version_requirements: !ruby/object:Gem::Requirement
|
24
199
|
requirements:
|
25
200
|
- - ">="
|
26
201
|
- !ruby/object:Gem::Version
|
27
|
-
version: '0
|
202
|
+
version: '0'
|
28
203
|
description: Add drag and drop reordering to ActiveAdmin tables.
|
29
204
|
email:
|
30
|
-
-
|
205
|
+
- derek.kniffin@gmail.com
|
31
206
|
executables: []
|
32
207
|
extensions: []
|
33
208
|
extra_rdoc_files: []
|
34
209
|
files:
|
35
|
-
- ".gitignore"
|
36
|
-
- CHANGELOG.md
|
37
|
-
- CONTRIBUTING.md
|
38
|
-
- Gemfile
|
39
210
|
- MIT-LICENSE
|
40
211
|
- README.md
|
41
|
-
- activeadmin_reorderable.gemspec
|
42
212
|
- app/assets/javascripts/activeadmin_reorderable.js
|
43
213
|
- app/assets/stylesheets/activeadmin_reorderable.scss
|
44
214
|
- lib/active_admin/reorderable/dsl.rb
|
@@ -49,7 +219,7 @@ files:
|
|
49
219
|
- lib/activeadmin_reorderable/engine.rb
|
50
220
|
- lib/activeadmin_reorderable/version.rb
|
51
221
|
- package.json
|
52
|
-
homepage: http://www.github.com/
|
222
|
+
homepage: http://www.github.com/dkniffin/activeadmin_reorderable
|
53
223
|
licenses:
|
54
224
|
- MIT
|
55
225
|
metadata: {}
|
@@ -68,7 +238,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
68
238
|
- !ruby/object:Gem::Version
|
69
239
|
version: '0'
|
70
240
|
requirements: []
|
71
|
-
rubygems_version: 3.
|
241
|
+
rubygems_version: 3.3.26
|
72
242
|
signing_key:
|
73
243
|
specification_version: 4
|
74
244
|
summary: Drag and drop reordering for ActiveAdmin tables
|
data/.gitignore
DELETED
data/CHANGELOG.md
DELETED
data/CONTRIBUTING.md
DELETED
@@ -1,27 +0,0 @@
|
|
1
|
-
# Contributing
|
2
|
-
|
3
|
-
Thank you for considering a contribution to this project!
|
4
|
-
|
5
|
-
## Deployment
|
6
|
-
|
7
|
-
`activeadmin_reorderable` is published on http://rubygems.org. The
|
8
|
-
following steps are necessary to push a new version:
|
9
|
-
|
10
|
-
### Build the gem
|
11
|
-
|
12
|
-
`gem build activeadmin_reorderable.gemspec`
|
13
|
-
|
14
|
-
This will produce an artifact named roughly
|
15
|
-
`activeadmin_reorderable-<version>.gem`.
|
16
|
-
|
17
|
-
### Publish the gem
|
18
|
-
|
19
|
-
`gem push activeadmin_reorderable-<version>.gem`
|
20
|
-
|
21
|
-
You may bump into permissions issues if you have not been added as an
|
22
|
-
owner on the gem. Consult the Viget development team for acess.
|
23
|
-
|
24
|
-
## Reviews
|
25
|
-
|
26
|
-
All changes should be submitted through pull request. Ideally, at
|
27
|
-
least two :+1:s should be given before a pull request is merge.
|
data/Gemfile
DELETED
@@ -1,18 +0,0 @@
|
|
1
|
-
$:.push File.expand_path("../lib", __FILE__)
|
2
|
-
|
3
|
-
require "activeadmin_reorderable/version"
|
4
|
-
|
5
|
-
Gem::Specification.new do |s|
|
6
|
-
s.name = "activeadmin_reorderable"
|
7
|
-
s.version = ActiveadminReorderable::VERSION
|
8
|
-
s.authors = ["Chris Jones", "Lawson Kurtz"]
|
9
|
-
s.email = ["lawson.kurtz@viget.com"]
|
10
|
-
s.homepage = "http://www.github.com/vigetlabs/activeadmin_reorderable"
|
11
|
-
s.summary = "Drag and drop reordering for ActiveAdmin tables"
|
12
|
-
s.description = "Add drag and drop reordering to ActiveAdmin tables."
|
13
|
-
s.license = "MIT"
|
14
|
-
|
15
|
-
s.files = `git ls-files`.split($/)
|
16
|
-
|
17
|
-
s.add_development_dependency "activeadmin", ">= 0.6"
|
18
|
-
end
|