bullet_train-sortable 1.6.38 → 1.7.0
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fec5f34eba7c9e9ff94b7d2bea54a59b57c7091f79f2e324d7706804b36d4762
|
4
|
+
data.tar.gz: 90c54927d540b3023376bb85a89a6248c83bf504b8ee863a3713cf3fe664b1a6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9cb21dd3cca8a3764ae97fbce22e04bd5f204fb92a20fe55bd0a96313be374c1c49854c75377e53ac37138f50f220d032e4832c9a5dc5967f409b61d180bb70d
|
7
|
+
data.tar.gz: 4bc244e298398d5119f2147c7808c1c4a43de86248dadf68cfacea2ad89f6f6208a5f8d6df2666701c473566b1dca679dab091cf4f120038c303e225877ff309
|
data/app/javascript/index.js
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bullet_train-sortable
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew Culver
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-03-
|
11
|
+
date: 2024-03-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: standard
|
@@ -50,8 +50,6 @@ files:
|
|
50
50
|
- Rakefile
|
51
51
|
- app/assets/config/bullet_train_sortable_manifest.js
|
52
52
|
- app/controllers/concerns/sortable_actions.rb
|
53
|
-
- app/javascript/concerns/index.js
|
54
|
-
- app/javascript/concerns/reassignable.js
|
55
53
|
- app/javascript/controllers/index.js
|
56
54
|
- app/javascript/controllers/sortable_controller.js
|
57
55
|
- app/javascript/index.js
|
@@ -1 +0,0 @@
|
|
1
|
-
import "./reassignable"
|
@@ -1,63 +0,0 @@
|
|
1
|
-
require("dragula/dist/dragula.min.css")
|
2
|
-
|
3
|
-
import dragula from 'dragula';
|
4
|
-
|
5
|
-
function saveAssignments($container) {
|
6
|
-
var parents = $container.find('[data-reassignment-parent]').map(function(index,element) { return parseInt($(element).attr('data-id')); }).toArray();
|
7
|
-
var assignmentsById = {}
|
8
|
-
$.each(parents, function(_, parentId) {
|
9
|
-
assignmentsById[parentId] = $container.find("[data-reassignment-parent]").filter("[data-id='" + parentId + "']").find("[data-reassignable]").map(function(index,element) { return parseInt($(element).attr('data-id')); }).toArray();
|
10
|
-
});
|
11
|
-
$.post($container.attr('data-reassign'), {assignments_by_id: assignmentsById, dispatched_at: new Date().getTime()});
|
12
|
-
}
|
13
|
-
|
14
|
-
function enableReassignable($scope) {
|
15
|
-
setTimeout(function() {
|
16
|
-
var selector = '[data-reassign]';
|
17
|
-
var $reassignable = $scope.find(selector).addBack(selector);
|
18
|
-
|
19
|
-
$reassignable.each(function (_, container) {
|
20
|
-
|
21
|
-
console.log("🍩 Reassignable 💬 Found the following container:")
|
22
|
-
console.log(container);
|
23
|
-
|
24
|
-
var $container = $(container);
|
25
|
-
var dragulaObj = dragula($container.find('[data-reassignment-parent]').toArray(), {
|
26
|
-
moves: function(el, container, handle) {
|
27
|
-
if ($(handle).hasClass('undraggable') || ($(handle).closest('.undraggable').length > 0)) {
|
28
|
-
return false;
|
29
|
-
}
|
30
|
-
return !!$(handle).closest('[data-reassignable]').length;
|
31
|
-
},
|
32
|
-
accepts: function (el, target, source, sibling) {
|
33
|
-
if ($(sibling).hasClass('undraggable') && $(sibling).prev().hasClass('undraggable')) {
|
34
|
-
return false;
|
35
|
-
} else {
|
36
|
-
return true;
|
37
|
-
}
|
38
|
-
},
|
39
|
-
}).on('drag', function (el) {
|
40
|
-
$reassignable.addClass('show-reassignable-targets')
|
41
|
-
}).on('drop', function (el) {
|
42
|
-
$reassignable.removeClass('show-reassignable-targets')
|
43
|
-
saveAssignments($container);
|
44
|
-
}).on('cancel', function (el) {
|
45
|
-
$reassignable.removeClass('show-reassignable-targets')
|
46
|
-
saveAssignments($container);
|
47
|
-
}).on('over', function (el, container) {
|
48
|
-
$(document.activeElement).blur();
|
49
|
-
});
|
50
|
-
});
|
51
|
-
}, 500);
|
52
|
-
}
|
53
|
-
|
54
|
-
$(document).on('turbo:load', function() {
|
55
|
-
console.log("🍩 Reassignable: Enabling on <body> after a Turbo load.")
|
56
|
-
enableReassignable($('body'));
|
57
|
-
})
|
58
|
-
|
59
|
-
$(document).on('sprinkles:update', function(event) {
|
60
|
-
console.log("🍩 Reassignable: Enabling on the following element after a Sprinkles content update:")
|
61
|
-
console.log(event.target);
|
62
|
-
enableReassignable($(event.target));
|
63
|
-
})
|