Skip to content

Commit

Permalink
Merge branch 'tapir'
Browse files Browse the repository at this point in the history
  • Loading branch information
acadet committed Nov 6, 2014
2 parents 9c9303d + e4cf843 commit 7caadc2
Show file tree
Hide file tree
Showing 46 changed files with 217 additions and 1,533 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -18,3 +18,5 @@ app/ui/js/output.js
testing/out
**/*.css


*.cfg
6 changes: 3 additions & 3 deletions Gruntfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -140,9 +140,9 @@ module.exports = function (grunt) {
atBegin : true
}
},
testing : {
test : {
files : ['**/*.ts'],
tasks : ['ts:testing', 'shell:testing', 'clean:build'],
tasks : ['ts:build', 'ts:testing', 'shell:testing', 'clean:build'],
options : {
interrupt : true,
atBegin : true
Expand Down Expand Up @@ -178,7 +178,7 @@ module.exports = function (grunt) {
});

grunt.registerTask('build', ['watch:build']);
grunt.registerTask('testing', ['watch:testing']);
grunt.registerTask('test', ['watch:test']);
grunt.registerTask(
'release',
[
Expand Down
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,6 @@ using it. Please open a ticket in tracker to notify me :) I'll appreciate.

* Based on Node-Webkit framework
* Uses TypeScript to produce JS code
- [Ludivine](https://github.com/acadet/ludivine) as core
- [Oscar](https://github.com/acadet/oscar) for testing
* HTML5/CSS3/SASS for front-end
19 changes: 2 additions & 17 deletions app/dependencies.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,24 +2,17 @@

/// <reference path="libs/jquery.d.ts" />
/// <reference path="libs/jqueryui.d.ts" />
/// <reference path="libs/ludivine.1.1.0.min.ts" />

// System part

/// <reference path="system/TSObject.ts" />
/// <reference path="system/NumberHelper.ts" />
/// <reference path="system/Timer.ts" />
/// <reference path="system/Action.ts" />
/// <reference path="system/Func.ts" />
/// <reference path="system/Exception.ts" />
/// <reference path="system/DOMElement.ts" />
/// <reference path="system/DOMTree.ts" />
/// <reference path="system/strings/StringBuffer.ts" />
/// <reference path="system/node-webkit/NodeWindow.ts" />
/// <reference path="system/node-webkit/Presenter.ts" />
/// <reference path="system/Regex.ts" />
/// <reference path="system/Log.ts" />
/// <reference path="system/Pair.ts" />
/// <reference path="system/Guid.ts" />
/// <reference path="system/MathHelper.ts" />
/// <reference path="system/StringHelper.ts" />
/// <reference path="helpers/FormHelper.ts" />
Expand All @@ -28,15 +21,6 @@
/// <reference path="system/storage/FileAPI.ts" />
/// <reference path="system/Random.ts" />

// Collections parts

/// <reference path="system/collections/utils/CollectionException.ts" />
/// <reference path="system/collections/IList.ts" />
/// <reference path="system/collections/impl/ArrayList.ts" />
/// <reference path="system/collections/IDictionary.ts" />
/// <reference path="system/collections/impl/Dictionary.ts" />
/// <reference path="system/collections/Queue.ts" />

// Storage part

/// <reference path="system/storage/SQLAPI.ts" />
Expand All @@ -56,6 +40,7 @@

// Helpers part

/// <reference path="helpers/ActionHelper.ts" />
/// <reference path="helpers/ExceptionHandler.ts" />
/// <reference path="helpers/URLHelper.ts" />
/// <reference path="helpers/URLDetailsProvider.ts" />
Expand Down
22 changes: 1 addition & 21 deletions app/system/Action.ts → app/helpers/ActionHelper.ts
Original file line number Diff line number Diff line change
@@ -1,25 +1,5 @@
/// <reference path="../dependencies.ts" />

interface Action0 {
() : void;
}

interface Action<T> {
(t : T) : void;
}

interface Action2<T, U> {
(t : T, u : U) : void;
}

interface Action3<T, U, V> {
(t : T, u : U, v : V) : void;
}

interface Action4<T, U, V, W> {
(t : T, u : U, v : V, w : W) : void;
}

class ActionHelper {
static getValueOrDefaultNoArgs(action : Action0) : Action0 {
var mock : Action0;
Expand All @@ -38,4 +18,4 @@ class ActionHelper {

return (TSObject.exists(action)) ? action : mock;
}
}
}
4 changes: 2 additions & 2 deletions app/helpers/VersionHelper.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ class VersionHelper {
//region Fields

private static _target : string = 'http://yimello.adriencadet.com/version';
private static _version : string = '0.3.1';
private static _version : string = '0.3.2';

//endregion Fields

Expand All @@ -21,7 +21,7 @@ class VersionHelper {

//region Public Methods

static isUpToDate(callback : Action<boolean>, errorHandler : Action<string> = null) : void {
static isUpToDate(callback : Action<boolean>, errorHandler? : Action<string>) : void {
var get : GetRequest;

if (Environment.isOnline()) {
Expand Down
1 change: 1 addition & 0 deletions app/libs/ludivine.1.1.0.min.ts

Large diffs are not rendered by default.

24 changes: 12 additions & 12 deletions app/models/business/impl/TagBookmarkBusiness.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ class TagBookmarkBusiness implements ITagBookmarkBusiness {
private _browseDLNode(
node : DOMElement,
currentTags : IList<Tag>,
collection : IList<Pair<Bookmark, IList<Tag>>>)
collection : IList<KeyValuePair<Bookmark, IList<Tag>>>)
: void
{
var i : number;
Expand All @@ -38,7 +38,7 @@ class TagBookmarkBusiness implements ITagBookmarkBusiness {
b.setURL(a.getAttribute('href'));
b.setTitle(a.getText());

collection.add(new Pair<Bookmark, IList<Tag>>(b, currentTags));
collection.add(new KeyValuePair<Bookmark, IList<Tag>>(b, currentTags));
}
);

Expand All @@ -61,7 +61,7 @@ class TagBookmarkBusiness implements ITagBookmarkBusiness {
(e) => {
var l : IList<Tag>;

l = currentTags.clone();
l = <IList<Tag>>currentTags.select(x => true);
l.add(collectedTags.getAt(i));
this._browseDLNode(e, l, collection);
i++;
Expand All @@ -71,10 +71,10 @@ class TagBookmarkBusiness implements ITagBookmarkBusiness {

private _addRecursiveBookmark(
index : number,
coll : IList<Pair<Bookmark, IList<Tag>>>,
coll : IList<KeyValuePair<Bookmark, IList<Tag>>>,
callback? : Action0,
errorHandler? : Action<string>) : void {
var p : Pair<Bookmark, IList<Tag>>;
var p : KeyValuePair<Bookmark, IList<Tag>>;

callback = ActionHelper.getValueOrDefaultNoArgs(callback);
errorHandler = ActionHelper.getValueOrDefault(errorHandler);
Expand All @@ -90,7 +90,7 @@ class TagBookmarkBusiness implements ITagBookmarkBusiness {
._args
.getBookmarkBusiness()
.isNotAlreadyExisting(
p.getFirst().getURL(),
p.getKey().getURL(),
(success) => {
if (!success) {
Log.error(new BusinessException('Unable to import bookmark, one has already same URL'));
Expand All @@ -102,15 +102,15 @@ class TagBookmarkBusiness implements ITagBookmarkBusiness {
._args
.getTagBusiness()
.merge(
p.getSecond(),
p.getValue(),
(outcome) => {
var tags : IList<Tag> = outcome;

this
._args
.getBookmarkBusiness()
.add(
p.getFirst(),
p.getKey(),
(outcome) => {
this.bindTags(
outcome,
Expand Down Expand Up @@ -512,7 +512,7 @@ class TagBookmarkBusiness implements ITagBookmarkBusiness {
reader.onload =
(e) => {
var dlRoot : DOMElement;
var coll : IList<Pair<Bookmark, IList<Tag>>>;
var coll : IList<KeyValuePair<Bookmark, IList<Tag>>>;
var tags : IList<Tag>;
var defaultTag : Tag;

Expand All @@ -525,7 +525,7 @@ class TagBookmarkBusiness implements ITagBookmarkBusiness {
DOMElement
.fromString('<ROOT>' + reader.result + '</ROOT>')
.findSingle('> DL');
coll = new ArrayList<Pair<Bookmark, IList<Tag>>>();
coll = new ArrayList<KeyValuePair<Bookmark, IList<Tag>>>();
this._browseDLNode(dlRoot, tags, coll);
this._addRecursiveBookmark(
0,
Expand Down Expand Up @@ -600,8 +600,8 @@ class TagBookmarkBusiness implements ITagBookmarkBusiness {
(pair) => {
var sbk : ScoredBookmark;
var currentScore : number;
var bk : Bookmark = pair.getFirst();
var tagList : IList<Tag> = pair.getSecond();
var bk : Bookmark = pair.getKey();
var tagList : IList<Tag> = pair.getValue();

sbk = new ScoredBookmark();
bk.hydrate(sbk);
Expand Down
2 changes: 1 addition & 1 deletion app/models/business/impl/TagBusiness.ts
Original file line number Diff line number Diff line change
Expand Up @@ -324,7 +324,7 @@ class TagBusiness implements IInternalTagBusiness {
tag.setLabel(StringHelper.trim(tag.getLabel()));

// Find a tag with same name
o = outcome.findFirst(e => StringHelper.compare(e.getLabel(), tag.getLabel()));
o = outcome.find(e => StringHelper.compare(e.getLabel(), tag.getLabel()));

if (o !== null) {
// A tag with same is already existing, nothing to do
Expand Down
2 changes: 1 addition & 1 deletion app/models/dao/ITagBookmarkDAO.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,5 +17,5 @@ interface ITagBookmarkDAO {

sortBookmarksByTitleAscForTag(tag : Tag, callback : Action<IList<Bookmark>>) : void;

sortBookmarksByTitleAscWithBoundTagsByLabelAsc(callback : Action<IList<Pair<Bookmark, IList<Tag>>>>) : void;
sortBookmarksByTitleAscWithBoundTagsByLabelAsc(callback : Action<IList<KeyValuePair<Bookmark, IList<Tag>>>>) : void;
}
10 changes: 5 additions & 5 deletions app/models/dao/impl/BookmarkDAO.ts
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ class BookmarkDAO extends DataAccessObject implements IBookmarkDAO {

update(bookmark : Bookmark, callback? : Action<Bookmark>) : void {
var dict : IDictionary<string, any>;
var selector : Pair<string, any>;
var selector : KeyValuePair<string, any>;

callback = ActionHelper.getValueOrDefault(callback);

Expand All @@ -99,7 +99,7 @@ class BookmarkDAO extends DataAccessObject implements IBookmarkDAO {
dict.add('description', bookmark.getDescription());
dict.add('views', bookmark.getViews());

selector = new Pair<string, any>('id', bookmark.getId());
selector = new KeyValuePair<string, any>('id', bookmark.getId());

this.getARO().update(
DAOTables.Bookmarks,
Expand Down Expand Up @@ -136,7 +136,7 @@ class BookmarkDAO extends DataAccessObject implements IBookmarkDAO {
.getARO()
.delete(
DAOTables.Bookmarks,
new Pair<string, any>('id', bookmark.getId()),
new KeyValuePair<string, any>('id', bookmark.getId()),
(success2) => {
callback(success1 && success2);
}
Expand All @@ -154,7 +154,7 @@ class BookmarkDAO extends DataAccessObject implements IBookmarkDAO {
.getARO()
.find(
DAOTables.Bookmarks,
new Pair<string, any>('id', id),
new KeyValuePair<string, any>('id', id),
callback,
Bookmark.fromObject
);
Expand All @@ -165,7 +165,7 @@ class BookmarkDAO extends DataAccessObject implements IBookmarkDAO {
.getARO()
.find(
DAOTables.Bookmarks,
new Pair<string, any>('url', url),
new KeyValuePair<string, any>('url', url),
callback,
Bookmark.fromObject
);
Expand Down
20 changes: 10 additions & 10 deletions app/models/dao/impl/TagBookmarkDAO.ts
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,7 @@ class TagBookmarkDAO extends DataAccessObject implements ITagBookmarkDAO {
}

removeBookmarkRelations(bookmark : Bookmark, callback? : Action<boolean>) : void {
var selector : Pair<string, any>;
var selector : KeyValuePair<string, any>;

callback = ActionHelper.getValueOrDefault(callback);

Expand All @@ -135,7 +135,7 @@ class TagBookmarkDAO extends DataAccessObject implements ITagBookmarkDAO {
return;
}

selector = new Pair<string, any>('bookmark_id', bookmark.getId());
selector = new KeyValuePair<string, any>('bookmark_id', bookmark.getId());
this
.getARO()
.delete(
Expand All @@ -153,7 +153,7 @@ class TagBookmarkDAO extends DataAccessObject implements ITagBookmarkDAO {
}

removeTagRelations(tag : Tag, callback? : Action<boolean>) : void {
var selector : Pair<string, any>;
var selector : KeyValuePair<string, any>;

callback = ActionHelper.getValueOrDefault(callback);

Expand All @@ -163,7 +163,7 @@ class TagBookmarkDAO extends DataAccessObject implements ITagBookmarkDAO {
return;
}

selector = new Pair<string, any>('tag_id', tag.getId());
selector = new KeyValuePair<string, any>('tag_id', tag.getId());
this
.getARO()
.delete(
Expand Down Expand Up @@ -237,7 +237,7 @@ class TagBookmarkDAO extends DataAccessObject implements ITagBookmarkDAO {
);
}

sortBookmarksByTitleAscWithBoundTagsByLabelAsc(callback : Action<IList<Pair<Bookmark, IList<Tag>>>>) : void {
sortBookmarksByTitleAscWithBoundTagsByLabelAsc(callback : Action<IList<KeyValuePair<Bookmark, IList<Tag>>>>) : void {
var request : StringBuffer;

request = new StringBuffer('SELECT bk.id AS id, bk.url as url, bk.title AS title, bk.description AS description, ');
Expand All @@ -257,13 +257,13 @@ class TagBookmarkDAO extends DataAccessObject implements ITagBookmarkDAO {
.executeSQL(
request.toString(),
(set) => {
var pairList : IList<Pair<Bookmark, IList<Tag>>>;
var pairList : IList<KeyValuePair<Bookmark, IList<Tag>>>;
var bk : Bookmark = null;
var l : IList<Tag>;
var outcome : SQLRowSet;
var p : Pair<Bookmark, IList<Tag>>;
var p : KeyValuePair<Bookmark, IList<Tag>>;

pairList = new ArrayList<Pair<Bookmark, IList<Tag>>>();
pairList = new ArrayList<KeyValuePair<Bookmark, IList<Tag>>>();

if (!TSObject.exists(set)) {
callback(pairList);
Expand All @@ -278,7 +278,7 @@ class TagBookmarkDAO extends DataAccessObject implements ITagBookmarkDAO {

if (bk === null || bk.getId() !== item.id) {
if (bk !== null) {
p = new Pair<Bookmark, IList<Tag>>(bk, l);
p = new KeyValuePair<Bookmark, IList<Tag>>(bk, l);
pairList.add(p);
}

Expand All @@ -301,7 +301,7 @@ class TagBookmarkDAO extends DataAccessObject implements ITagBookmarkDAO {
}

if (bk !== null) {
p = new Pair<Bookmark, IList<Tag>>(bk, l);
p = new KeyValuePair<Bookmark, IList<Tag>>(bk, l);
pairList.add(p);
}

Expand Down
Loading

0 comments on commit 7caadc2

Please sign in to comment.