Updated vue-easy-dnd to latest version supporting vue2

This commit is contained in:
PMKuipers 2023-08-23 23:03:53 +02:00
parent d940c009bc
commit 09605834ae
10 changed files with 397 additions and 1875 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -32,7 +32,7 @@ Vue.use(PortalVue);
import BootstrapVue from './bootstrap-vue/bootstrap-vue.esm'; import BootstrapVue from './bootstrap-vue/bootstrap-vue.esm';
Vue.use(BootstrapVue); Vue.use(BootstrapVue);
import {Drag, Drop, DropList} from './vue-easy-dnd/vue-easy-dnd'; import {Drag, Drop, DropList} from './vue-easy-dnd/vue-easy-dnd.esm';
Vue.component('drag',Drag); Vue.component('drag',Drag);
Vue.component('drop',Drop); Vue.component('drop',Drop);
Vue.component('drop-list',DropList); Vue.component('drop-list',DropList);

View File

@ -5,10 +5,56 @@ Instructions for downloading and integrating vue-easy-dnd
1. download vue-easy-dnd distribusion throuhg npm 1. download vue-easy-dnd distribusion throuhg npm
npm install vue-easy-dnd@1.22.0 npm install vue-easy-dnd@1.22.0
2. Copy node_modules/vue-easy-dnd/dist/vue-easy-dnd.esm.js to amd/src/vue-easy-dnd 2. Copy node_modules/vue-easy-dnd/dist/vue-easy-dnd.esm.js to amd/src/vue-easy-dnd/
3. Change import statements to 3. Change import statements to
import './reflect-metadata'; import './reflect-metadata';
import { Vue, Component, Prop } from './vue-property-decorator'; import { Vue, Component, Prop } from './vue-property-decorator';
4. add /* eslint-disable */ to top of file 4. add /* eslint-disable */ to top of file
--- Support libraries ----
This version if vue-easy-dnd requires some additional support libraries in the same folder
-- vue-class-component.js --
1. if not already installed during vue-easy-dnd install, download vue-class-component distribusion through npm
npm install vue-class-component@7.2.6
2. copy node_modules/vue-class-component/dist/vue-class-component.esm-browser.js to amd/src/vue-easy-dnd/vue-class-component.js
3. change Vue import statement to
import Vue from '../vue/vue';
4. add the following to the top of the file
/* eslint-disable */
/*eslint no-unused-vars: "off" */
5. Replace both export statements at the bottom of the file by the following:
export { Component, createDecorator, mixins };
-- vue-property-decorator --
1. if not already installed during vue-easy-dnd install, download vue-property-decorator distribusion through npm
npm install vue-property-decorator@8.5.1
2. copy node_modules/vue-property-decorator/lib/vue-property-decorator.js to amd/src/vue-easy-dnd/
3. change import statements to
import Vue from '../vue/vue';
import { Component, createDecorator, mixins } from './vue-class-component';
4. add the following to the top of the file
/* eslint-disable */
/*eslint no-unused-vars: "off" */
-- reflect-metadata.js --
1. if not already installed during vue-easy-dnd install, download reflect-metadata distribusion through npm
npm install reflect-metadata@0.1.13
2. copy node_modules/reflect-metadata/Reflect.js to amd/src/vue-easy-dnd/reflect-metadata.js
3. add the following to the top of the file
/* eslint-disable */
/*eslint no-unused-vars: "off" */
4. add the following after the copyright notice:
export {Reflect};

View File

@ -1,21 +1,19 @@
/* eslint-disable */ /* eslint-disable */
/*eslint no-unused-vars: "off" */ /*eslint no-unused-vars: "off" */
/** /**
* vue-class-component v7.2.5 * vue-class-component v7.2.6
* (c) 2015-present Evan You * (c) 2015-present Evan You
* @license MIT * @license MIT
*/ */
import Vue from '../vue/vue';
import Vue from './vue/vue'; // The rational behind the verbose Reflect-feature check below is the fact that there are polyfills
// which add an implementation for Reflect.defineMetadata but not for Reflect.getOwnMetadataKeys.
// Without this check consumers will encounter hard to track down runtime errors.
// The rational behind the verbose Reflect-feature check below is the fact that there are polyfills function reflectionIsSupported() {
// which add an implementation for Reflect.defineMetadata but not for Reflect.getOwnMetadataKeys.
// Without this check consumers will encounter hard to track down runtime errors.
function reflectionIsSupported() {
return typeof Reflect !== 'undefined' && Reflect.defineMetadata && Reflect.getOwnMetadataKeys; return typeof Reflect !== 'undefined' && Reflect.defineMetadata && Reflect.getOwnMetadataKeys;
} }
function copyReflectionMetadata(to, from) { function copyReflectionMetadata(to, from) {
forwardMetadata(to, from); forwardMetadata(to, from);
Object.getOwnPropertyNames(from.prototype).forEach(key => { Object.getOwnPropertyNames(from.prototype).forEach(key => {
forwardMetadata(to.prototype, from.prototype, key); forwardMetadata(to.prototype, from.prototype, key);
@ -23,9 +21,9 @@ import Vue from './vue/vue';
Object.getOwnPropertyNames(from).forEach(key => { Object.getOwnPropertyNames(from).forEach(key => {
forwardMetadata(to, from, key); forwardMetadata(to, from, key);
}); });
} }
function forwardMetadata(to, from, propertyKey) { function forwardMetadata(to, from, propertyKey) {
var metaKeys = propertyKey ? Reflect.getOwnMetadataKeys(from, propertyKey) : Reflect.getOwnMetadataKeys(from); var metaKeys = propertyKey ? Reflect.getOwnMetadataKeys(from, propertyKey) : Reflect.getOwnMetadataKeys(from);
metaKeys.forEach(metaKey => { metaKeys.forEach(metaKey => {
var metadata = propertyKey ? Reflect.getOwnMetadata(metaKey, from, propertyKey) : Reflect.getOwnMetadata(metaKey, from); var metadata = propertyKey ? Reflect.getOwnMetadata(metaKey, from, propertyKey) : Reflect.getOwnMetadata(metaKey, from);
@ -36,13 +34,13 @@ import Vue from './vue/vue';
Reflect.defineMetadata(metaKey, metadata, to); Reflect.defineMetadata(metaKey, metadata, to);
} }
}); });
} }
var fakeArray = { var fakeArray = {
__proto__: [] __proto__: []
}; };
var hasProto = fakeArray instanceof Array; var hasProto = fakeArray instanceof Array;
function createDecorator(factory) { function createDecorator(factory) {
return (target, key, index) => { return (target, key, index) => {
var Ctor = typeof target === 'function' ? target : target.constructor; var Ctor = typeof target === 'function' ? target : target.constructor;
@ -56,8 +54,8 @@ import Vue from './vue/vue';
Ctor.__decorators__.push(options => factory(options, key, index)); Ctor.__decorators__.push(options => factory(options, key, index));
}; };
} }
function mixins() { function mixins() {
for (var _len = arguments.length, Ctors = new Array(_len), _key = 0; _key < _len; _key++) { for (var _len = arguments.length, Ctors = new Array(_len), _key = 0; _key < _len; _key++) {
Ctors[_key] = arguments[_key]; Ctors[_key] = arguments[_key];
} }
@ -65,18 +63,18 @@ import Vue from './vue/vue';
return Vue.extend({ return Vue.extend({
mixins: Ctors mixins: Ctors
}); });
} }
function isPrimitive(value) { function isPrimitive(value) {
var type = typeof value; var type = typeof value;
return value == null || type !== 'object' && type !== 'function'; return value == null || type !== 'object' && type !== 'function';
} }
function warn(message) { function warn(message) {
if (typeof console !== 'undefined') { if (typeof console !== 'undefined') {
console.warn('[vue-class-component] ' + message); console.warn('[vue-class-component] ' + message);
} }
} }
function collectDataFromConstructor(vm, Component) { function collectDataFromConstructor(vm, Component) {
// override _init to prevent to init as Vue instance // override _init to prevent to init as Vue instance
var originalInit = Component.prototype._init; var originalInit = Component.prototype._init;
@ -122,11 +120,11 @@ import Vue from './vue/vue';
} }
return plainData; return plainData;
} }
var $internalHooks = ['data', 'beforeCreate', 'created', 'beforeMount', 'mounted', 'beforeDestroy', 'destroyed', 'beforeUpdate', 'updated', 'activated', 'deactivated', 'render', 'errorCaptured', 'serverPrefetch' // 2.6 var $internalHooks = ['data', 'beforeCreate', 'created', 'beforeMount', 'mounted', 'beforeDestroy', 'destroyed', 'beforeUpdate', 'updated', 'activated', 'deactivated', 'render', 'errorCaptured', 'serverPrefetch' // 2.6
]; ];
function componentFactory(Component) { function componentFactory(Component) {
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
options.name = options.name || Component._componentTag || Component.name; // prototype props. options.name = options.name || Component._componentTag || Component.name; // prototype props.
@ -192,20 +190,20 @@ import Vue from './vue/vue';
} }
return Extended; return Extended;
} }
var reservedPropertyNames = [// Unique id var reservedPropertyNames = [// Unique id
'cid', // Super Vue constructor 'cid', // Super Vue constructor
'super', // Component options that will be used by the component 'super', // Component options that will be used by the component
'options', 'superOptions', 'extendOptions', 'sealedOptions', // Private assets 'options', 'superOptions', 'extendOptions', 'sealedOptions', // Private assets
'component', 'directive', 'filter']; 'component', 'directive', 'filter'];
var shouldIgnore = { var shouldIgnore = {
prototype: true, prototype: true,
arguments: true, arguments: true,
callee: true, callee: true,
caller: true caller: true
}; };
function forwardStaticMembers(Extended, Original, Super) { function forwardStaticMembers(Extended, Original, Super) {
// We have to use getOwnPropertyNames since Babel registers methods as non-enumerable // We have to use getOwnPropertyNames since Babel registers methods as non-enumerable
Object.getOwnPropertyNames(Original).forEach(key => { Object.getOwnPropertyNames(Original).forEach(key => {
// Skip the properties that should not be overwritten // Skip the properties that should not be overwritten
@ -250,9 +248,9 @@ import Vue from './vue/vue';
Object.defineProperty(Extended, key, descriptor); Object.defineProperty(Extended, key, descriptor);
}); });
} }
function Component(options) { function Component(options) {
if (typeof options === 'function') { if (typeof options === 'function') {
return componentFactory(options); return componentFactory(options);
} }
@ -260,11 +258,10 @@ import Vue from './vue/vue';
return function (Component) { return function (Component) {
return componentFactory(Component, options); return componentFactory(Component, options);
}; };
} }
Component.registerHooks = function registerHooks(keys) { Component.registerHooks = function registerHooks(keys) {
$internalHooks.push(...keys); $internalHooks.push(...keys);
}; };
export { Component, createDecorator, mixins };
export { Component, createDecorator, mixins };

File diff suppressed because it is too large Load Diff

View File

@ -1,12 +1,10 @@
/* eslint-disable */ /* eslint-disable */
/*eslint no-unused-vars: "off" */ /*eslint no-unused-vars: "off" */
/** vue-property-decorator verson 9.0.0 MIT LICENSE copyright 2020 kaorun343 */ /** vue-property-decorator verson 8.5.1 MIT LICENSE copyright 2020 kaorun343 */
/// <reference types='reflect-metadata'/>
'use strict'; 'use strict';
import Vue from '../vue/vue';
import Vue from './vue/vue'; import { Component, createDecorator, mixins } from './vue-class-component';
import {Component, createDecorator, mixins } from './vue-class-component';
export { Component, Vue, mixins as Mixins }; export { Component, Vue, mixins as Mixins };
/** Used for keying reactive provide/inject properties */ /** Used for keying reactive provide/inject properties */
var reactiveInjectKey = '__reactiveInject__'; var reactiveInjectKey = '__reactiveInject__';

View File

@ -1,18 +1,6 @@
<?xml version="1.0"?> <?xml version="1.0"?>
<libraries> <libraries>
<!-- Example from lib/thirdpartylibs.xml
<library>
<location>amd/src/popper.js</location>
<name>Popper.js</name>
<description>A kickass library used to created Poppers in web applications.</description>
<version>v1.12.6</version>
<license>MIT</license>
<repository>https://github.com/floating-ui/floating-ui</repository>
<copyrights>
<copyright>2016 Federico Zivolo and contributors</copyright>
</copyrights>
</library>
-->
<library> <library>
<location>amd/src/bootstrap-vue/</location> <location>amd/src/bootstrap-vue/</location>
<name>Bootstrap-Vue.js</name> <name>Bootstrap-Vue.js</name>
@ -24,6 +12,19 @@
<copyright>2016-2023 - BootstrapVue</copyright> <copyright>2016-2023 - BootstrapVue</copyright>
</copyrights> </copyrights>
</library> </library>
<library>
<location>css/bootstrap-vue/</location>
<name>Bootstrap-Vue.js</name>
<description>Vue components for Bootstrap</description>
<version>2.23.0</version>
<license>MIT</license>
<repository>https://github.com/bootstrap-vue/bootstrap-vue</repository>
<copyrights>
<copyright>2016-2023 - BootstrapVue</copyright>
</copyrights>
</library>
<library> <library>
<location>amd/src/portal-vue/</location> <location>amd/src/portal-vue/</location>
<name>Portal-Vue.js</name> <name>Portal-Vue.js</name>
@ -35,16 +36,82 @@
<copyright>2021 Thorsten Lünborg</copyright> <copyright>2021 Thorsten Lünborg</copyright>
</copyrights> </copyrights>
</library> </library>
<library> <library>
<location>amd/src/vue-easy-dnd/</location> <location>amd/src/vue</location>
<name>Vu</name>
<description>Vue is a progressive framework for building user interfaces.</description>
<version>2.7.14</version>
<license>MIT</license>
<repository>https://github.com/vuejs/vue</repository>
<copyrights>
<copyright>2014-2022 Evan You</copyright>
</copyrights>
</library>
<library>
<location>amd/src/vue-easy-dnd/vue-easy-dnd.esm.js</location>
<name>Vue-Easy-DnD</name> <name>Vue-Easy-DnD</name>
<description>A drag and drop implementation for Vue that uses only standard mouse events instead of the HTML5 drag and drop API</description> <description>A drag and drop implementation for Vue that uses only standard mouse events instead of the HTML5 drag and drop API</description>
<version>2.1.3</version> <version>2.1.3</version>
<license>MIT</license> <license>Apache 2.0</license>
<repository>https://github.com/rlemaigre/Easy-DnD</repository> <repository>https://github.com/rlemaigre/Easy-DnD</repository>
<copyrights> <copyrights>
<copyright>2019 Régis Lemaigre</copyright> <copyright>2019 Régis Lemaigre</copyright>
</copyrights> </copyrights>
</library> </library>
<library>
<location>amd/src/vue-easy-dnd/reflect-metadata.js</location>
<name>reflect-metadata</name>
<description>Metadata Reflection API for javascript</description>
<version>0.1.13</version>
<license>Apache 2.0</license>
<repository>https://github.com/rbuckton/reflect-metadata</repository>
<copyrights>
<copyright>Cy Brown</copyright>
<copyright>Oleh Dokuka</copyright>
<copyright>Ron Buckton</copyright>
<copyright>William Buchwalter</copyright>
</copyrights>
</library>
<library>
<location>amd/src/vue-easy-dnd/vue-class-component.js</location>
<name>vue-class-component</name>
<description>Vue Class Component</description>
<version>0.1.13</version>
<license>MIT</license>
<repository>https://github.com/vuejs/vue-class-component</repository>
<copyrights>
<copyright>2015-present Evan You</copyright>
</copyrights>
</library>
<library>
<location>amd/src/vue-easy-dnd/vue-property-decorator.js</location>
<name>vue-property-decorator</name>
<description>Vue Property Decorator</description>
<version>8.5.1</version>
<license>MIT</license>
<repository>https://github.com/kaorun343/vue-property-decorator</repository>
<copyrights>
<copyright>2015-present Evan You</copyright>
</copyrights>
</library>
<library>
<location>amd/src/simpleline</location>
<name>SimpleLine</name>
<description>Simpleline is a simple and lightweight tool to draw lines and arrows between two html elements.</description>
<version>1.0.0</version>
<license>MIT</license>
<repository>https://github.com/miqraeng/simpleline</repository>
<copyrights>
<copyright>2023 P.M. Kuipers</copyright>
<copyright>Morglod/jchnkl</copyright>
</copyrights>
</library>
</libraries> </libraries>