Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
function dragSetup() {
const containerSelector = '#discovered_list, #editor_holder';
const containers = document.querySelectorAll(containerSelector);
if (containers.length === 0) {
return false;
}
const sortable = new Sortable(containers, {
draggable: '.cfg-row',
handle: '.navbar-dark',
mirror: {
constrainDimensions: true,
},
plugins: [Plugins.ResizeMirror],
});
// sortable.on('sortable:start', () => console.log('drag:start'));
// sortable.on('sortable:move', () => console.log('drag:move'));
sortable.on('drag:stop', () => {
setTimeout(updateSlotID, 125);
});
}
function dragSetup() {
const containerSelector = '#discovered_list, #editor_holder';
const containers = document.querySelectorAll(containerSelector);
if (containers.length === 0) {
return false;
}
const sortable = new Sortable(containers, {
draggable: '.cfg-row',
handle: '.navbar-dark',
mirror: {
constrainDimensions: true,
},
plugins: [Plugins.ResizeMirror],
});
// sortable.on('sortable:start', () => console.log('drag:start'));
// sortable.on('sortable:move', () => console.log('drag:move'));
sortable.on('drag:stop', () => {
setTimeout(updateSlotID, 125);
});
}
export default function MultipleContainers() {
const containers = document.querySelectorAll('#MultipleContainers .StackedList');
if (containers.length === 0) {
return false;
}
const sortable = new Sortable(containers, {
draggable: `.${Classes.draggable}`,
mirror: {
constrainDimensions: true,
},
plugins: [Plugins.Releasable],
});
const containerTwoCapacity = 3;
const containerTwoParent = sortable.containers[1].parentNode;
let currentMediumChildren;
let capacityReached;
let lastOverContainer;
// --- Draggable events --- //
sortable.on('drag:start', (evt) => {
currentMediumChildren = sortable.getDraggableElementsForContainer(sortable.containers[1]).length;
export default function PluginsSnappable() {
const containerSelector = '#Snappable .BlockLayout';
const containers = document.querySelectorAll(containerSelector);
if (containers.length === 0) {
return false;
}
const swappable = new Swappable(containers, {
mirror: {
appendTo: containerSelector,
constrainDimensions: true,
},
plugins: [Plugins.Snappable],
});
// --- Draggable events --- //
swappable.on('drag:start', (evt) => {
if (evt.originalSource.classList.contains('Block--typeStripes')) {
evt.cancel();
}
});
return swappable;
}
export default function Home() {
const containerSelector = '#Home .PlateWrapper';
const container = document.querySelector(containerSelector);
if (!container) {
return false;
}
const draggable = new Draggable(container, {
draggable: '.Plate',
});
const plates = new Plate(container);
// --- Draggable events --- //
draggable.on('drag:start', (evt) => {
plates.setThreshold();
plates.setInitialMousePosition(evt.sensorEvent);
});
draggable.on('drag:move', (evt) => {
// rAF seems to cause the animation to get stuck?
// requestAnimationFrame(() => {});
plates.dragWarp(evt.source, evt.sensorEvent);
});
export default function DragEvents() {
const toggleClass = 'PillSwitch--isOn';
const containers = document.querySelectorAll('#DragEvents .PillSwitch');
if (containers.length === 0) {
return false;
}
const draggable = new Draggable(containers, {
draggable: '.PillSwitchControl',
delay: 0,
});
let isToggled = false;
let initialMousePosition;
let containerRect;
let dragRect;
let dragThreshold;
let headings;
let headingText;
// --- Draggable events --- //
draggable.on('drag:start', (evt) => {
initialMousePosition = {
x: evt.sensorEvent.clientX,
mounted() {
const container = document.querySelector('.gallery-container')
this.droppable = new Droppable(container, {
draggable: '.gallery--draggable .gallery-item--selected',
dropzone: '.gallery--dropzone',
delay: 250,
mirror: {
constrainDimensions: true,
xAxis: (this.view == 'grid'),
cursorOffsetX: 50,
cursorOffsetY: 57,
},
})
// Draggable events..
this.droppable.on('drag:start', (evt) => {
this.drag = evt.originalSource.dataset.draggable
this.drop = false
})
export default function PluginsCollidable() {
const containerSelector = '#Collidable .BlockLayout';
const containers = document.querySelectorAll(containerSelector);
const wallClass = 'CollidableWall';
const walls = document.querySelectorAll(`.${wallClass}`);
if (containers.length === 0) {
return false;
}
const droppable = new Droppable(containers, {
draggable: '.Block--isDraggable',
dropzone: '.BlockWrapper--isDropzone',
collidables: '.CollidableObstacle',
mirror: {
appendTo: containerSelector,
constrainDimensions: true,
},
plugins: [Plugins.Collidable],
});
// --- Draggable events --- //
droppable.on('collidable:in', ({collidingElement}) => {
if (collidingElement.classList.contains(wallClass)) {
walls.forEach((wall) => wall.classList.add('isColliding'));
} else {
collidingElement.classList.add('isColliding');
export default function UniqueDropzone() {
const containers = document.querySelectorAll('#UniqueDropzone .BlockLayout');
if (containers.length === 0) {
return false;
}
const droppable = new Droppable(containers, {
draggable: '.Block--isDraggable',
dropzone: '.BlockWrapper--isDropzone',
mirror: {
constrainDimensions: true,
},
});
let droppableOrigin;
// --- Draggable events --- //
droppable.on('drag:start', (evt) => {
droppableOrigin = evt.originalSource.parentNode.dataset.dropzone;
});
droppable.on('droppable:dropped', (evt) => {
if (droppableOrigin !== evt.dropzone.dataset.dropzone) {
const wallClass = 'CollidableWall';
const walls = document.querySelectorAll(`.${wallClass}`);
if (containers.length === 0) {
return false;
}
const droppable = new Droppable(containers, {
draggable: '.Block--isDraggable',
dropzone: '.BlockWrapper--isDropzone',
collidables: '.CollidableObstacle',
mirror: {
appendTo: containerSelector,
constrainDimensions: true,
},
plugins: [Plugins.Collidable],
});
// --- Draggable events --- //
droppable.on('collidable:in', ({collidingElement}) => {
if (collidingElement.classList.contains(wallClass)) {
walls.forEach((wall) => wall.classList.add('isColliding'));
} else {
collidingElement.classList.add('isColliding');
}
});
droppable.on('collidable:out', ({collidingElement}) => {
if (collidingElement.classList.contains(wallClass)) {
walls.forEach((wall) => wall.classList.remove('isColliding'));
} else {
collidingElement.classList.remove('isColliding');