collect-your-stuff 1.1.9 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/README.md +1265 -232
  2. package/browser/collect-your-stuff.js +131 -149
  3. package/browser/collect-your-stuff.min.js +1 -1
  4. package/dist/collections/arrayable/ArrayElement.d.ts +2 -3
  5. package/dist/collections/arrayable/ArrayElement.js +2 -2
  6. package/dist/collections/arrayable/ArrayElement.min.js +1 -1
  7. package/dist/collections/arrayable/Arrayable.d.ts +4 -5
  8. package/dist/collections/arrayable/Arrayable.js +7 -8
  9. package/dist/collections/arrayable/Arrayable.min.js +1 -1
  10. package/dist/collections/doubly-linked-list/DoubleLinker.d.ts +2 -3
  11. package/dist/collections/doubly-linked-list/DoubleLinker.js +4 -5
  12. package/dist/collections/doubly-linked-list/DoubleLinker.min.js +1 -1
  13. package/dist/collections/doubly-linked-list/DoublyLinkedList.d.ts +4 -5
  14. package/dist/collections/doubly-linked-list/DoublyLinkedList.js +11 -12
  15. package/dist/collections/doubly-linked-list/DoublyLinkedList.min.js +1 -1
  16. package/dist/collections/linked-list/LinkedList.d.ts +4 -5
  17. package/dist/collections/linked-list/LinkedList.js +9 -10
  18. package/dist/collections/linked-list/LinkedList.min.js +1 -1
  19. package/dist/collections/linked-list/Linker.d.ts +2 -3
  20. package/dist/collections/linked-list/Linker.js +4 -5
  21. package/dist/collections/linked-list/Linker.min.js +1 -1
  22. package/dist/collections/linked-tree-list/LinkedTreeList.d.ts +4 -5
  23. package/dist/collections/linked-tree-list/LinkedTreeList.js +15 -16
  24. package/dist/collections/linked-tree-list/LinkedTreeList.min.js +1 -1
  25. package/dist/collections/linked-tree-list/TreeLinker.d.ts +4 -5
  26. package/dist/collections/linked-tree-list/TreeLinker.js +8 -9
  27. package/dist/collections/linked-tree-list/TreeLinker.min.js +1 -1
  28. package/dist/collections/queue/Queue.d.ts +4 -5
  29. package/dist/collections/queue/Queue.js +8 -9
  30. package/dist/collections/queue/Queue.min.js +1 -1
  31. package/dist/collections/queue/Queueable.d.ts +2 -3
  32. package/dist/collections/queue/Queueable.js +4 -5
  33. package/dist/collections/queue/Queueable.min.js +1 -1
  34. package/dist/collections/stack/Stack.d.ts +4 -5
  35. package/dist/collections/stack/Stack.js +8 -9
  36. package/dist/collections/stack/Stack.min.js +1 -1
  37. package/dist/collections/stack/Stackable.d.ts +2 -3
  38. package/dist/collections/stack/Stackable.js +4 -5
  39. package/dist/collections/stack/Stackable.min.js +1 -1
  40. package/dist/main.d.ts +10 -10
  41. package/dist/main.js +16 -17
  42. package/dist/main.min.js +1 -1
  43. package/dist/recipes/ArrayIterator.d.ts +2 -3
  44. package/dist/recipes/ArrayIterator.js +2 -2
  45. package/dist/recipes/ArrayIterator.min.js +1 -1
  46. package/dist/recipes/DoubleLinkerIterator.d.ts +2 -3
  47. package/dist/recipes/DoubleLinkerIterator.js +2 -2
  48. package/dist/recipes/DoubleLinkerIterator.min.js +1 -1
  49. package/dist/recipes/IsArrayable.d.ts +2 -2
  50. package/dist/recipes/IsDoubleLinker.d.ts +2 -2
  51. package/dist/recipes/IsElement.d.ts +1 -1
  52. package/dist/recipes/IsLinker.d.ts +2 -2
  53. package/dist/recipes/IsTree.d.ts +3 -3
  54. package/dist/recipes/IsTreeNode.d.ts +4 -4
  55. package/dist/recipes/LinkerIterator.d.ts +2 -3
  56. package/dist/recipes/LinkerIterator.js +2 -2
  57. package/dist/recipes/LinkerIterator.min.js +1 -1
  58. package/dist/recipes/Runnable.d.ts +1 -1
  59. package/dist/recipes/Runnable.js +2 -2
  60. package/dist/recipes/Runnable.min.js +1 -1
  61. package/dist/recipes/TreeLinkerIterator.d.ts +2 -3
  62. package/dist/recipes/TreeLinkerIterator.js +4 -5
  63. package/dist/recipes/TreeLinkerIterator.min.js +1 -1
  64. package/dist/recipes/recipes.d.ts +3 -4
  65. package/dist/recipes/recipes.js +6 -8
  66. package/dist/recipes/recipes.min.js +1 -1
  67. package/dist/services/parseTree.d.ts +2 -3
  68. package/dist/services/parseTree.js +4 -5
  69. package/dist/services/parseTree.min.js +1 -1
  70. package/dist/services/parseTreeNext.d.ts +2 -3
  71. package/dist/services/parseTreeNext.js +2 -2
  72. package/dist/services/parseTreeNext.min.js +1 -1
  73. package/dist/services/services.d.ts +3 -4
  74. package/dist/services/services.js +6 -8
  75. package/dist/services/services.min.js +1 -1
  76. package/package.json +1 -1
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', {
4
4
  value: true
5
5
  })
6
- exports.default = void 0
6
+ exports.LinkerIterator = void 0
7
7
  /**
8
8
  * Class LinkerIterator returns the next value when using linkers of linked type lists.
9
9
  */
@@ -21,4 +21,4 @@ class LinkerIterator {
21
21
  return result
22
22
  }
23
23
  }
24
- var _default = exports.default = LinkerIterator
24
+ exports.LinkerIterator = LinkerIterator
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;class LinkerIterator{constructor(t){this.current=t}next(t){const e={value:this.current,done:!this.current};return this.current=this.current?this.current.next:null,e}}var _default=exports.default=LinkerIterator;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.LinkerIterator=void 0;class LinkerIterator{constructor(r){this.current=r}next(r){const t={value:this.current,done:!this.current};return this.current=this.current?this.current.next:null,t}}exports.LinkerIterator=LinkerIterator;
@@ -27,7 +27,7 @@ export interface IsRunnable {
27
27
  /**
28
28
  * Identify a class that can be run.
29
29
  */
30
- export default class Runnable implements IsRunnable {
30
+ export declare class Runnable implements IsRunnable {
31
31
  data: any;
32
32
  /**
33
33
  * Instantiate a Runnable class.
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', {
4
4
  value: true
5
5
  })
6
- exports.default = void 0
6
+ exports.Runnable = void 0
7
7
  /**
8
8
  * @file Runnable class recipe.
9
9
  * @author Joshua Heagle <joshuaheagle@gmail.com>
@@ -66,4 +66,4 @@ class Runnable {
66
66
  return typeof thing.run === 'function'
67
67
  }
68
68
  }
69
- exports.default = Runnable
69
+ exports.Runnable = Runnable
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;class Runnable{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;this.data=null,this.data=t}get task(){return"function"==typeof this.data?this.data:()=>this.data}run(){return this.task()}static isRunnable(t){return void 0===t?this instanceof Runnable:"object"==typeof t&&("function"==typeof t.task&&"function"==typeof t.run)}}exports.default=Runnable;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Runnable=void 0;class Runnable{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;this.data=null,this.data=t}get task(){return"function"==typeof this.data?this.data:()=>this.data}run(){return this.task()}static isRunnable(t){return void 0===t?this instanceof Runnable:"object"==typeof t&&("function"==typeof t.task&&"function"==typeof t.run)}}exports.Runnable=Runnable;
@@ -1,10 +1,9 @@
1
- import IsTreeNode from './IsTreeNode';
1
+ import { IsTreeNode } from './IsTreeNode';
2
2
  /**
3
3
  * Class TreeLinkerIterator returns the next value taking a left-first approach down a tree.
4
4
  */
5
- declare class TreeLinkerIterator implements Iterator<IsTreeNode> {
5
+ export declare class TreeLinkerIterator implements Iterator<IsTreeNode> {
6
6
  private current;
7
7
  constructor(current: IsTreeNode);
8
8
  next(value?: any): IteratorResult<IsTreeNode>;
9
9
  }
10
- export default TreeLinkerIterator;
@@ -3,9 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', {
4
4
  value: true
5
5
  })
6
- exports.default = void 0
7
- var _parseTreeNext = _interopRequireDefault(require('../services/parseTreeNext'))
8
- function _interopRequireDefault (obj) { return obj && obj.__esModule ? obj : { default: obj } }
6
+ exports.TreeLinkerIterator = void 0
7
+ var _parseTreeNext = require('../services/parseTreeNext')
9
8
  /**
10
9
  * Class TreeLinkerIterator returns the next value taking a left-first approach down a tree.
11
10
  */
@@ -19,8 +18,8 @@ class TreeLinkerIterator {
19
18
  value: this.current,
20
19
  done: !this.current
21
20
  }
22
- this.current = (0, _parseTreeNext.default)(this.current)
21
+ this.current = (0, _parseTreeNext.parseTreeNext)(this.current)
23
22
  return result
24
23
  }
25
24
  }
26
- var _default = exports.default = TreeLinkerIterator
25
+ exports.TreeLinkerIterator = TreeLinkerIterator
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _parseTreeNext=_interopRequireDefault(require("../services/parseTreeNext"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}class TreeLinkerIterator{constructor(e){this.current=e}next(e){const r={value:this.current,done:!this.current};return this.current=(0,_parseTreeNext.default)(this.current),r}}var _default=exports.default=TreeLinkerIterator;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.TreeLinkerIterator=void 0;var _parseTreeNext=require("../services/parseTreeNext");class TreeLinkerIterator{constructor(e){this.current=e}next(e){const r={value:this.current,done:!this.current};return this.current=(0,_parseTreeNext.parseTreeNext)(this.current),r}}exports.TreeLinkerIterator=TreeLinkerIterator;
@@ -4,13 +4,12 @@
4
4
  * @version 1.0.0
5
5
  * @memberOf module:collect-your-stuff
6
6
  */
7
- import ArrayIterator from './ArrayIterator';
8
- import Runnable from './Runnable';
7
+ import { ArrayIterator } from './ArrayIterator';
8
+ import { Runnable } from './Runnable';
9
9
  /**
10
10
  * List of class declarations that can be used to specify attributes for a style of object / class.
11
11
  */
12
- declare const recipes: {
12
+ export declare const recipes: {
13
13
  ArrayIterator: typeof ArrayIterator;
14
14
  Runnable: typeof Runnable;
15
15
  };
16
- export default recipes;
@@ -3,10 +3,9 @@
3
3
  Object.defineProperty(exports, '__esModule', {
4
4
  value: true
5
5
  })
6
- exports.default = void 0
7
- var _ArrayIterator = _interopRequireDefault(require('./ArrayIterator'))
8
- var _Runnable = _interopRequireDefault(require('./Runnable'))
9
- function _interopRequireDefault (obj) { return obj && obj.__esModule ? obj : { default: obj } }
6
+ exports.recipes = void 0
7
+ var _ArrayIterator = require('./ArrayIterator')
8
+ var _Runnable = require('./Runnable')
10
9
  /**
11
10
  * @file sample classes which follow a pattern (have certain members or methods).
12
11
  * @author Joshua Heagle <joshuaheagle@gmail.com>
@@ -17,8 +16,7 @@ function _interopRequireDefault (obj) { return obj && obj.__esModule ? obj : { d
17
16
  /**
18
17
  * List of class declarations that can be used to specify attributes for a style of object / class.
19
18
  */
20
- const recipes = {
21
- ArrayIterator: _ArrayIterator.default,
22
- Runnable: _Runnable.default
19
+ const recipes = exports.recipes = {
20
+ ArrayIterator: _ArrayIterator.ArrayIterator,
21
+ Runnable: _Runnable.Runnable
23
22
  }
24
- var _default = exports.default = recipes
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _ArrayIterator=_interopRequireDefault(require("./ArrayIterator")),_Runnable=_interopRequireDefault(require("./Runnable"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const recipes={ArrayIterator:_ArrayIterator.default,Runnable:_Runnable.default};var _default=exports.default=recipes;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.recipes=void 0;var _ArrayIterator=require("./ArrayIterator"),_Runnable=require("./Runnable");const recipes=exports.recipes={ArrayIterator:_ArrayIterator.ArrayIterator,Runnable:_Runnable.Runnable};
@@ -1,10 +1,9 @@
1
1
  import { forEachCallback } from '../recipes/IsArrayable';
2
- import IsTree from '../recipes/IsTree';
2
+ import { IsTree } from '../recipes/IsTree';
3
3
  /**
4
4
  * Loop over all the nodes in a tree starting from left and apply a callback for each
5
5
  * @param {IsArrayable<IsTreeNode>} tree
6
6
  * @param {forEachCallback} callback
7
7
  * @returns {IsArrayable<IsTreeNode>}
8
8
  */
9
- declare const parseTree: (tree: IsTree, callback: forEachCallback) => IsTree;
10
- export default parseTree;
9
+ export declare const parseTree: (tree: IsTree, callback: forEachCallback) => IsTree;
@@ -3,9 +3,8 @@
3
3
  Object.defineProperty(exports, '__esModule', {
4
4
  value: true
5
5
  })
6
- exports.default = void 0
7
- var _parseTreeNext = _interopRequireDefault(require('./parseTreeNext'))
8
- function _interopRequireDefault (obj) { return obj && obj.__esModule ? obj : { default: obj } }
6
+ exports.parseTree = void 0
7
+ var _parseTreeNext = require('./parseTreeNext')
9
8
  /**
10
9
  * Loop over all the nodes in a tree starting from left and apply a callback for each
11
10
  * @param {IsArrayable<IsTreeNode>} tree
@@ -17,9 +16,9 @@ const parseTree = (tree, callback) => {
17
16
  let current = tree.rootParent
18
17
  while (current !== null) {
19
18
  callback(current, index, tree)
20
- current = (0, _parseTreeNext.default)(current)
19
+ current = (0, _parseTreeNext.parseTreeNext)(current)
21
20
  ++index
22
21
  }
23
22
  return tree
24
23
  }
25
- var _default = exports.default = parseTree
24
+ exports.parseTree = parseTree
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _parseTreeNext=_interopRequireDefault(require("./parseTreeNext"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const parseTree=(e,r)=>{let t=0,u=e.rootParent;for(;null!==u;)r(u,t,e),u=(0,_parseTreeNext.default)(u),++t;return e};var _default=exports.default=parseTree;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.parseTree=void 0;var _parseTreeNext=require("./parseTreeNext");const parseTree=(e,r)=>{let t=0,s=e.rootParent;for(;null!==s;)r(s,t,e),s=(0,_parseTreeNext.parseTreeNext)(s),++t;return e};exports.parseTree=parseTree;
@@ -1,4 +1,4 @@
1
- import IsTreeNode from '../recipes/IsTreeNode';
1
+ import { IsTreeNode } from '../recipes/IsTreeNode';
2
2
  /**
3
3
  * Be able to parse over every node in a tree.
4
4
  * 1. Start at root (get root parent)
@@ -11,5 +11,4 @@ import IsTreeNode from '../recipes/IsTreeNode';
11
11
  * @param {IsTreeNode} treeNode Provide a node in a tree and get the next node (left-first approach)
12
12
  * @returns {IsTreeNode|null}
13
13
  */
14
- declare const parseTreeNext: (treeNode: IsTreeNode) => IsTreeNode | null;
15
- export default parseTreeNext;
14
+ export declare const parseTreeNext: (treeNode: IsTreeNode) => IsTreeNode | null;
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', {
4
4
  value: true
5
5
  })
6
- exports.default = void 0
6
+ exports.parseTreeNext = void 0
7
7
  /**
8
8
  * Be able to parse over every node in a tree.
9
9
  * 1. Start at root (get root parent)
@@ -44,4 +44,4 @@ const parseTreeNext = treeNode => {
44
44
  // Finally, either use the node we found, or it may be null
45
45
  return test
46
46
  }
47
- var _default = exports.default = parseTreeNext
47
+ exports.parseTreeNext = parseTreeNext
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;const parseTreeNext=e=>{if(!e)return null;let t=null;if(e.children&&e.children.length&&(t=e.children.first),t||(t=e.next),!t&&e.parent){let r=e.parent.next,n=e.parent;for(;n&&!r;)r=n.next,n=n.parent;t=r}return t};var _default=exports.default=parseTreeNext;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.parseTreeNext=void 0;const parseTreeNext=e=>{if(!e)return null;let r=null;if(e.children&&e.children.length&&(r=e.children.first),r||(r=e.next),!r&&e.parent){let t=e.parent.next,n=e.parent;for(;n&&!t;)t=n.next,n=n.parent;r=t}return r};exports.parseTreeNext=parseTreeNext;
@@ -7,8 +7,7 @@
7
7
  /**
8
8
  * List helpful functions when dealing with collections.
9
9
  */
10
- declare const services: {
11
- parseTree: (tree: import("../recipes/IsTree").default, callback: import("../recipes/IsArrayable").forEachCallback) => import("../recipes/IsTree").default;
12
- parseTreeNext: (treeNode: import("../recipes/IsTreeNode").default) => import("../recipes/IsTreeNode").default;
10
+ export declare const services: {
11
+ parseTree: (tree: import("../recipes/IsTree").IsTree, callback: import("../recipes/IsArrayable").forEachCallback) => import("../recipes/IsTree").IsTree;
12
+ parseTreeNext: (treeNode: import("../recipes/IsTreeNode").IsTreeNode) => import("../recipes/IsTreeNode").IsTreeNode;
13
13
  };
14
- export default services;
@@ -3,10 +3,9 @@
3
3
  Object.defineProperty(exports, '__esModule', {
4
4
  value: true
5
5
  })
6
- exports.default = void 0
7
- var _parseTree = _interopRequireDefault(require('./parseTree'))
8
- var _parseTreeNext = _interopRequireDefault(require('./parseTreeNext'))
9
- function _interopRequireDefault (obj) { return obj && obj.__esModule ? obj : { default: obj } }
6
+ exports.services = void 0
7
+ var _parseTree = require('./parseTree')
8
+ var _parseTreeNext = require('./parseTreeNext')
10
9
  /**
11
10
  * @file some useful resources when working with collections.
12
11
  * @author Joshua Heagle <joshuaheagle@gmail.com>
@@ -17,8 +16,7 @@ function _interopRequireDefault (obj) { return obj && obj.__esModule ? obj : { d
17
16
  /**
18
17
  * List helpful functions when dealing with collections.
19
18
  */
20
- const services = {
21
- parseTree: _parseTree.default,
22
- parseTreeNext: _parseTreeNext.default
19
+ const services = exports.services = {
20
+ parseTree: _parseTree.parseTree,
21
+ parseTreeNext: _parseTreeNext.parseTreeNext
23
22
  }
24
- var _default = exports.default = services
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _parseTree=_interopRequireDefault(require("./parseTree")),_parseTreeNext=_interopRequireDefault(require("./parseTreeNext"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}const services={parseTree:_parseTree.default,parseTreeNext:_parseTreeNext.default};var _default=exports.default=services;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.services=void 0;var _parseTree=require("./parseTree"),_parseTreeNext=require("./parseTreeNext");const services=exports.services={parseTree:_parseTree.parseTree,parseTreeNext:_parseTreeNext.parseTreeNext};
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "collect-your-stuff",
3
3
  "description": "Use a variety of collections to collect your stuff when building code.",
4
- "version": "1.1.9",
4
+ "version": "1.2.0",
5
5
  "main": "dist/main.js",
6
6
  "types": "dist/main.d.ts",
7
7
  "author": "Joshua Heagle",