Retire Packaging Deb project repos
This commit is part of a series to retire the Packaging Deb project. Step 2 is to remove all content from the project repos, replacing it with a README notification where to find ongoing work, and how to recover the repo if needed at some future point (as in https://docs.openstack.org/infra/manual/drivers.html#retiring-a-project). Change-Id: I81c894c1adff0fe7d25a721c245e663b4326bd8c
This commit is contained in:
parent
880d542062
commit
3c83f7438d
|
@ -1,4 +0,0 @@
|
||||||
[gerrit]
|
|
||||||
host=review.openstack.org
|
|
||||||
port=29418
|
|
||||||
project=openstack/xstatic-angular-lrdragndrop.git
|
|
21
LICENCE
21
LICENCE
|
@ -1,21 +0,0 @@
|
||||||
Copyright (C) 2013 Laurent Renard.
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person
|
|
||||||
obtaining a copy of this software and associated documentation files
|
|
||||||
(the "Software"), to deal in the Software without restriction,
|
|
||||||
including without limitation the rights to use, copy, modify, merge,
|
|
||||||
publish, distribute, sublicense, and/or sell copies of the Software,
|
|
||||||
and to permit persons to whom the Software is furnished to do so,
|
|
||||||
subject to the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be
|
|
||||||
included in all copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
||||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
|
|
||||||
BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
|
|
||||||
ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
||||||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
||||||
SOFTWARE.
|
|
|
@ -1,7 +0,0 @@
|
||||||
include README.txt
|
|
||||||
recursive-include xstatic/pkg/angular_lrdragndrop *
|
|
||||||
|
|
||||||
global-exclude *.pyc
|
|
||||||
global-exclude *.pyo
|
|
||||||
global-exclude *.orig
|
|
||||||
global-exclude *.rej
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
This project is no longer maintained.
|
||||||
|
|
||||||
|
The contents of this repository are still available in the Git
|
||||||
|
source code management system. To see the contents of this
|
||||||
|
repository before it reached its end of life, please check out the
|
||||||
|
previous commit with "git checkout HEAD^1".
|
||||||
|
|
||||||
|
For ongoing work on maintaining OpenStack packages in the Debian
|
||||||
|
distribution, please see the Debian OpenStack packaging team at
|
||||||
|
https://wiki.debian.org/OpenStack/.
|
||||||
|
|
||||||
|
For any further questions, please email
|
||||||
|
openstack-dev@lists.openstack.org or join #openstack-dev on
|
||||||
|
Freenode.
|
14
README.txt
14
README.txt
|
@ -1,14 +0,0 @@
|
||||||
|
|
||||||
XStatic-Angular-lrdragndrop
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
lrDragNDrop javascript library packaged for setuptools (easy_install) / pip.
|
|
||||||
|
|
||||||
This package is intended to be used by **any** project that needs these files.
|
|
||||||
|
|
||||||
It intentionally does **not** provide any extra code except some metadata
|
|
||||||
**nor** has any extra requirements. You MAY use some minimal support code from
|
|
||||||
the XStatic base package, if you like.
|
|
||||||
|
|
||||||
You can find more info about the xstatic packaging way in the package
|
|
||||||
`XStatic`.
|
|
27
setup.py
27
setup.py
|
@ -1,27 +0,0 @@
|
||||||
|
|
||||||
from xstatic.pkg import angular_lrdragndrop as xs
|
|
||||||
|
|
||||||
# The README.txt file should be written in reST so that PyPI can use
|
|
||||||
# it to generate your project's PyPI page.
|
|
||||||
long_description = open('README.txt').read()
|
|
||||||
|
|
||||||
from setuptools import setup, find_packages
|
|
||||||
|
|
||||||
setup(
|
|
||||||
name=xs.PACKAGE_NAME,
|
|
||||||
version=xs.PACKAGE_VERSION,
|
|
||||||
description=xs.DESCRIPTION,
|
|
||||||
long_description=long_description,
|
|
||||||
classifiers=xs.CLASSIFIERS,
|
|
||||||
keywords=xs.KEYWORDS,
|
|
||||||
maintainer=xs.MAINTAINER,
|
|
||||||
maintainer_email=xs.MAINTAINER_EMAIL,
|
|
||||||
license=xs.LICENSE,
|
|
||||||
url=xs.HOMEPAGE,
|
|
||||||
platforms=xs.PLATFORMS,
|
|
||||||
packages=find_packages(),
|
|
||||||
namespace_packages=['xstatic', 'xstatic.pkg', ],
|
|
||||||
include_package_data=True,
|
|
||||||
zip_safe=False,
|
|
||||||
install_requires=[],
|
|
||||||
)
|
|
8
tox.ini
8
tox.ini
|
@ -1,8 +0,0 @@
|
||||||
[tox]
|
|
||||||
minversion = 1.6
|
|
||||||
skipsdist = True
|
|
||||||
envlist = py27,py33,py34
|
|
||||||
|
|
||||||
[testenv:venv]
|
|
||||||
commands = {posargs}
|
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
__import__('pkg_resources').declare_namespace(__name__)
|
|
|
@ -1 +0,0 @@
|
||||||
__import__('pkg_resources').declare_namespace(__name__)
|
|
|
@ -1,57 +0,0 @@
|
||||||
|
|
||||||
"""
|
|
||||||
XStatic resource package
|
|
||||||
|
|
||||||
See package 'XStatic' for documentation and basic tools.
|
|
||||||
"""
|
|
||||||
|
|
||||||
# official name, upper/lowercase allowed, no spaces
|
|
||||||
DISPLAY_NAME = 'Angular-lrdragndrop'
|
|
||||||
|
|
||||||
# name used for PyPi
|
|
||||||
PACKAGE_NAME = 'XStatic-%s' % DISPLAY_NAME
|
|
||||||
|
|
||||||
NAME = __name__.split('.')[-1] # package name (e.g. 'foo' or 'foo_bar')
|
|
||||||
# please use a all-lowercase valid python
|
|
||||||
# package name
|
|
||||||
|
|
||||||
VERSION = '1.0.2' # version of the packaged files, please use the upstream
|
|
||||||
# version number
|
|
||||||
BUILD = '2' # our package build number, so we can release new builds
|
|
||||||
# with fixes for xstatic stuff.
|
|
||||||
PACKAGE_VERSION = VERSION + '.' + BUILD # version used for PyPi
|
|
||||||
|
|
||||||
DESCRIPTION = "%s %s (XStatic packaging standard)" % (DISPLAY_NAME, VERSION)
|
|
||||||
|
|
||||||
PLATFORMS = 'any'
|
|
||||||
CLASSIFIERS = []
|
|
||||||
KEYWORDS = 'drag-n-drop angular table lrdragndrop xstatic'
|
|
||||||
|
|
||||||
# XStatic-* package maintainer:
|
|
||||||
MAINTAINER = 'Thai Tran'
|
|
||||||
MAINTAINER_EMAIL = 'tqtran@us.ibm.com'
|
|
||||||
|
|
||||||
# this refers to the project homepage of the stuff we packaged:
|
|
||||||
HOMEPAGE = 'https://github.com/lorenzofox3/lrDragNDrop'
|
|
||||||
|
|
||||||
# this refers to all files:
|
|
||||||
LICENSE = 'MIT'
|
|
||||||
|
|
||||||
from os.path import join, dirname
|
|
||||||
BASE_DIR = join(dirname(__file__), 'data')
|
|
||||||
# linux package maintainers just can point to their file locations like this:
|
|
||||||
#BASE_DIR = '/usr/share/javascript/' + NAME
|
|
||||||
|
|
||||||
# location of the Javascript file that's the entry point for this package, if
|
|
||||||
# one exists, relative to BASE_DIR
|
|
||||||
MAIN='lrdragndrop.js'
|
|
||||||
|
|
||||||
LOCATIONS = {
|
|
||||||
# CDN locations (if no public CDN exists, use an empty dict)
|
|
||||||
# if value is a string, it is a base location, just append relative
|
|
||||||
# path/filename. if value is a dict, do another lookup using the
|
|
||||||
# relative path/filename you want.
|
|
||||||
# your relative path/filenames should usually be without version
|
|
||||||
# information, because either the base dir/url is exactly for this
|
|
||||||
# version or the mapping will care for accessing this version.
|
|
||||||
}
|
|
|
@ -1,184 +0,0 @@
|
||||||
(function (ng) {
|
|
||||||
'use strict';
|
|
||||||
|
|
||||||
function isJqueryEventDataTransfer(){
|
|
||||||
return window.jQuery && (-1 == window.jQuery.event.props.indexOf('dataTransfer'));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (isJqueryEventDataTransfer()) {
|
|
||||||
window.jQuery.event.props.push('dataTransfer');
|
|
||||||
}
|
|
||||||
|
|
||||||
var module = ng.module('lrDragNDrop', []);
|
|
||||||
|
|
||||||
module.service('lrDragStore', ['$document', function (document) {
|
|
||||||
|
|
||||||
var store = {};
|
|
||||||
|
|
||||||
this.hold = function hold(key, item, collectionFrom, safe) {
|
|
||||||
store[key] = {
|
|
||||||
item: item,
|
|
||||||
collection: collectionFrom,
|
|
||||||
safe: safe === true
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
this.get = function (namespace) {
|
|
||||||
var
|
|
||||||
modelItem = store[namespace], itemIndex;
|
|
||||||
|
|
||||||
if (modelItem) {
|
|
||||||
itemIndex = modelItem.collection.indexOf(modelItem.item);
|
|
||||||
return modelItem.safe === true ? modelItem.item : modelItem.collection.splice(itemIndex, 1)[0];
|
|
||||||
} else {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
this.clean = function clean() {
|
|
||||||
store = {};
|
|
||||||
};
|
|
||||||
|
|
||||||
this.isHolding = function (namespace) {
|
|
||||||
return store[namespace] !== undefined;
|
|
||||||
};
|
|
||||||
|
|
||||||
document.bind('dragend', this.clean);
|
|
||||||
}]);
|
|
||||||
|
|
||||||
module.service('lrDragHelper', function () {
|
|
||||||
var th = this;
|
|
||||||
|
|
||||||
th.parseRepeater = function(scope, attr) {
|
|
||||||
var
|
|
||||||
repeatExpression = attr.ngRepeat,
|
|
||||||
match;
|
|
||||||
|
|
||||||
if (!repeatExpression) {
|
|
||||||
throw Error('this directive must be used with ngRepeat directive');
|
|
||||||
}
|
|
||||||
match = repeatExpression.match(/^(.*\sin).(\S*)/);
|
|
||||||
if (!match) {
|
|
||||||
throw Error("Expected ngRepeat in form of '_item_ in _collection_' but got '" +
|
|
||||||
repeatExpression + "'.");
|
|
||||||
}
|
|
||||||
|
|
||||||
return scope.$eval(match[2]);
|
|
||||||
};
|
|
||||||
|
|
||||||
th.lrDragSrcDirective = function(store, safe) {
|
|
||||||
return function compileFunc(el, iattr) {
|
|
||||||
iattr.$set('draggable', true);
|
|
||||||
return function linkFunc(scope, element, attr) {
|
|
||||||
var
|
|
||||||
collection,
|
|
||||||
key = (safe === true ? attr.lrDragSrcSafe : attr.lrDragSrc ) || 'temp';
|
|
||||||
|
|
||||||
if(attr.lrDragData) {
|
|
||||||
scope.$watch(attr.lrDragData, function (newValue) {
|
|
||||||
collection = newValue;
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
collection = th.parseRepeater(scope, attr);
|
|
||||||
}
|
|
||||||
|
|
||||||
element.bind('dragstart', function (evt) {
|
|
||||||
store.hold(key, collection[scope.$index], collection, safe);
|
|
||||||
if(angular.isDefined(evt.dataTransfer)) {
|
|
||||||
evt.dataTransfer.setData('text/html', null); //FF/jQuery fix
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
module.directive('lrDragSrc', ['lrDragStore', 'lrDragHelper', function (store, dragHelper) {
|
|
||||||
return{
|
|
||||||
compile: dragHelper.lrDragSrcDirective(store)
|
|
||||||
};
|
|
||||||
}]);
|
|
||||||
|
|
||||||
module.directive('lrDragSrcSafe', ['lrDragStore', 'lrDragHelper', function (store, dragHelper) {
|
|
||||||
return{
|
|
||||||
compile: dragHelper.lrDragSrcDirective(store, true)
|
|
||||||
};
|
|
||||||
}]);
|
|
||||||
|
|
||||||
module.directive('lrDropTarget', ['lrDragStore', 'lrDragHelper', '$parse', function (store, dragHelper, $parse) {
|
|
||||||
return {
|
|
||||||
link: function (scope, element, attr) {
|
|
||||||
|
|
||||||
var
|
|
||||||
collection,
|
|
||||||
key = attr.lrDropTarget || 'temp',
|
|
||||||
classCache = null;
|
|
||||||
|
|
||||||
function isAfter(x, y) {
|
|
||||||
//check if below or over the diagonal of the box element
|
|
||||||
return (element[0].offsetHeight - x * element[0].offsetHeight / element[0].offsetWidth) < y;
|
|
||||||
}
|
|
||||||
|
|
||||||
function resetStyle() {
|
|
||||||
if (classCache !== null) {
|
|
||||||
element.removeClass(classCache);
|
|
||||||
classCache = null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if(attr.lrDragData) {
|
|
||||||
scope.$watch(attr.lrDragData, function (newValue) {
|
|
||||||
collection = newValue;
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
collection = dragHelper.parseRepeater(scope, attr);
|
|
||||||
}
|
|
||||||
|
|
||||||
element.bind('drop', function (evt) {
|
|
||||||
var
|
|
||||||
collectionCopy = ng.copy(collection),
|
|
||||||
item = store.get(key),
|
|
||||||
dropIndex, i, l;
|
|
||||||
if (item !== null) {
|
|
||||||
dropIndex = scope.$index;
|
|
||||||
dropIndex = isAfter(evt.offsetX, evt.offsetY) ? dropIndex + 1 : dropIndex;
|
|
||||||
//srcCollection=targetCollection => we may need to apply a correction
|
|
||||||
if (collectionCopy.length > collection.length) {
|
|
||||||
for (i = 0, l = Math.min(dropIndex, collection.length - 1); i <= l; i++) {
|
|
||||||
if (!ng.equals(collectionCopy[i], collection[i])) {
|
|
||||||
dropIndex = dropIndex - 1;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
scope.$apply(function () {
|
|
||||||
collection.splice(dropIndex, 0, item);
|
|
||||||
var fn = $parse(attr.lrDropSuccess) || ng.noop;
|
|
||||||
fn(scope, {e: evt, item: item, collection: collection});
|
|
||||||
});
|
|
||||||
evt.preventDefault();
|
|
||||||
resetStyle();
|
|
||||||
store.clean();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
element.bind('dragleave', resetStyle);
|
|
||||||
|
|
||||||
element.bind('dragover', function (evt) {
|
|
||||||
var className;
|
|
||||||
if (store.isHolding(key)) {
|
|
||||||
className = isAfter(evt.offsetX, evt.offsetY) ? 'lr-drop-target-after' : 'lr-drop-target-before';
|
|
||||||
if (classCache !== className && classCache !== null) {
|
|
||||||
element.removeClass(classCache);
|
|
||||||
}
|
|
||||||
if (classCache !== className) {
|
|
||||||
element.addClass(className);
|
|
||||||
}
|
|
||||||
classCache = className;
|
|
||||||
}
|
|
||||||
evt.preventDefault();
|
|
||||||
});
|
|
||||||
}
|
|
||||||
};
|
|
||||||
}]);
|
|
||||||
})(angular);
|
|
Loading…
Reference in New Issue