si-funciona 2.3.3 → 2.4.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.
- package/README.md +1337 -1244
- package/browser/siFunciona.js +24205 -24146
- package/dist/helpers/arrays/BasicQueue.d.ts +65 -61
- package/dist/helpers/arrays/BasicQueue.js +62 -59
- package/dist/helpers/arrays/addUniqueToArray.d.ts +10 -10
- package/dist/helpers/arrays/addUniqueToArray.js +17 -17
- package/dist/helpers/arrays/buildArray.d.ts +11 -11
- package/dist/helpers/arrays/buildArray.js +26 -26
- package/dist/helpers/arrays/buildArrayOfReferences.d.ts +11 -11
- package/dist/helpers/arrays/buildArrayOfReferences.js +23 -23
- package/dist/helpers/arrays/compareArrays.d.ts +97 -97
- package/dist/helpers/arrays/compareArrays.js +97 -97
- package/dist/helpers/arrays/mergeArrays.d.ts +9 -9
- package/dist/helpers/arrays/mergeArrays.js +22 -22
- package/dist/helpers/arrays/uniqueArray.d.ts +9 -9
- package/dist/helpers/arrays/uniqueArray.js +17 -17
- package/dist/helpers/arrays.d.ts +21 -20
- package/dist/helpers/arrays.js +33 -32
- package/dist/helpers/descriptors/assignDescriptor.d.ts +14 -11
- package/dist/helpers/descriptors/assignDescriptor.js +58 -55
- package/dist/helpers/descriptors/assignDescriptorDetail.d.ts +14 -11
- package/dist/helpers/descriptors/assignDescriptorDetail.js +37 -34
- package/dist/helpers/descriptors/checkClearValues.d.ts +12 -11
- package/dist/helpers/descriptors/checkClearValues.js +21 -20
- package/dist/helpers/descriptors/checkDescriptorComplete.d.ts +11 -10
- package/dist/helpers/descriptors/checkDescriptorComplete.js +20 -19
- package/dist/helpers/descriptors/cloneDescriptor.d.ts +10 -10
- package/dist/helpers/descriptors/cloneDescriptor.js +36 -36
- package/dist/helpers/descriptors/cloneDescriptorDetail.d.ts +10 -10
- package/dist/helpers/descriptors/cloneDescriptorDetail.js +27 -27
- package/dist/helpers/descriptors/compareDescriptor.d.ts +13 -11
- package/dist/helpers/descriptors/compareDescriptor.js +33 -31
- package/dist/helpers/descriptors/describeObject.d.ts +15 -13
- package/dist/helpers/descriptors/describeObject.js +53 -51
- package/dist/helpers/descriptors/describeObjectDetail.d.ts +14 -12
- package/dist/helpers/descriptors/describeObjectDetail.js +38 -36
- package/dist/helpers/descriptors/describeObjectMap.d.ts +36 -20
- package/dist/helpers/descriptors/describeObjectMap.js +108 -92
- package/dist/helpers/descriptors/nextReference.d.ts +13 -11
- package/dist/helpers/descriptors/nextReference.js +31 -29
- package/dist/helpers/descriptors/sameDescriptor.d.ts +13 -11
- package/dist/helpers/descriptors/sameDescriptor.js +22 -20
- package/dist/helpers/descriptors/samples/descriptor.d.ts +34 -27
- package/dist/helpers/descriptors/samples/descriptor.js +22 -22
- package/dist/helpers/descriptors/samples/descriptorDetail.d.ts +42 -34
- package/dist/helpers/descriptors/samples/descriptorDetail.js +24 -24
- package/dist/helpers/descriptors/samples/descriptorMap.d.ts +16 -12
- package/dist/helpers/descriptors/samples/descriptorMap.js +14 -14
- package/dist/helpers/descriptors/samples/mappedDescriptorMap.d.ts +10 -7
- package/dist/helpers/descriptors/samples/mappedDescriptorMap.js +287 -284
- package/dist/helpers/descriptors.d.ts +44 -28
- package/dist/helpers/descriptors.js +58 -42
- package/dist/helpers/functions/callWithParams.d.ts +11 -11
- package/dist/helpers/functions/callWithParams.js +17 -17
- package/dist/helpers/functions/curry.d.ts +11 -11
- package/dist/helpers/functions/curry.js +17 -17
- package/dist/helpers/functions/delay.d.ts +21 -21
- package/dist/helpers/functions/delay.js +32 -32
- package/dist/helpers/functions/makeBasicQueue.d.ts +10 -10
- package/dist/helpers/functions/makeBasicQueue.js +19 -19
- package/dist/helpers/functions/onBodyLoad.d.ts +10 -10
- package/dist/helpers/functions/onBodyLoad.js +74 -74
- package/dist/helpers/functions/pipe.d.ts +10 -10
- package/dist/helpers/functions/pipe.js +18 -18
- package/dist/helpers/functions/preloadParams.d.ts +20 -20
- package/dist/helpers/functions/preloadParams.js +21 -21
- package/dist/helpers/functions/queueManager.d.ts +49 -47
- package/dist/helpers/functions/queueManager.js +124 -122
- package/dist/helpers/functions/queueTimeout.d.ts +21 -21
- package/dist/helpers/functions/queueTimeout.js +23 -23
- package/dist/helpers/functions/relevancyFilter.d.ts +35 -35
- package/dist/helpers/functions/relevancyFilter.js +34 -34
- package/dist/helpers/functions/trace.d.ts +14 -12
- package/dist/helpers/functions/trace.js +25 -23
- package/dist/helpers/functions.d.ts +29 -29
- package/dist/helpers/functions.js +40 -40
- package/dist/helpers/numbers/absoluteMax.d.ts +10 -10
- package/dist/helpers/numbers/absoluteMax.js +16 -16
- package/dist/helpers/numbers/absoluteMin.d.ts +10 -10
- package/dist/helpers/numbers/absoluteMin.js +16 -16
- package/dist/helpers/numbers/compare.d.ts +13 -13
- package/dist/helpers/numbers/compare.js +19 -19
- package/dist/helpers/numbers/greatestCommonDivisor.d.ts +10 -10
- package/dist/helpers/numbers/greatestCommonDivisor.js +16 -16
- package/dist/helpers/numbers/leastCommonMultiple.d.ts +10 -10
- package/dist/helpers/numbers/leastCommonMultiple.js +18 -18
- package/dist/helpers/numbers/lowestCommonDenominator.d.ts +10 -10
- package/dist/helpers/numbers/lowestCommonDenominator.js +20 -20
- package/dist/helpers/numbers/randomInteger.d.ts +13 -13
- package/dist/helpers/numbers/randomInteger.js +19 -19
- package/dist/helpers/numbers/randomNumber.d.ts +13 -13
- package/dist/helpers/numbers/randomNumber.js +19 -19
- package/dist/helpers/numbers/simplestRatio.d.ts +9 -9
- package/dist/helpers/numbers/simplestRatio.js +29 -29
- package/dist/helpers/numbers.d.ts +21 -21
- package/dist/helpers/numbers.js +36 -36
- package/dist/helpers/objects/cloneObject.d.ts +20 -20
- package/dist/helpers/objects/cloneObject.js +32 -32
- package/dist/helpers/objects/dotGet.d.ts +12 -12
- package/dist/helpers/objects/dotGet.js +60 -60
- package/dist/helpers/objects/dotNotate.d.ts +28 -28
- package/dist/helpers/objects/dotNotate.js +80 -80
- package/dist/helpers/objects/dotSet.d.ts +12 -12
- package/dist/helpers/objects/dotSet.js +54 -54
- package/dist/helpers/objects/dotUnset.d.ts +11 -11
- package/dist/helpers/objects/dotUnset.js +53 -53
- package/dist/helpers/objects/emptyObject.d.ts +9 -9
- package/dist/helpers/objects/emptyObject.js +18 -18
- package/dist/helpers/objects/filterObject.d.ts +27 -27
- package/dist/helpers/objects/filterObject.js +32 -32
- package/dist/helpers/objects/isCloneable.d.ts +9 -9
- package/dist/helpers/objects/isCloneable.js +17 -17
- package/dist/helpers/objects/isInstanceObject.d.ts +9 -9
- package/dist/helpers/objects/isInstanceObject.js +27 -27
- package/dist/helpers/objects/isObject.d.ts +9 -9
- package/dist/helpers/objects/isObject.js +15 -15
- package/dist/helpers/objects/mapObject.d.ts +26 -26
- package/dist/helpers/objects/mapObject.js +26 -26
- package/dist/helpers/objects/mergeObjects.d.ts +13 -13
- package/dist/helpers/objects/mergeObjects.js +20 -20
- package/dist/helpers/objects/mergeObjectsBase.d.ts +36 -36
- package/dist/helpers/objects/mergeObjectsBase.js +92 -92
- package/dist/helpers/objects/mergeObjectsMutable.d.ts +13 -13
- package/dist/helpers/objects/mergeObjectsMutable.js +18 -18
- package/dist/helpers/objects/objectKeys.d.ts +14 -14
- package/dist/helpers/objects/objectKeys.js +40 -40
- package/dist/helpers/objects/objectValues.d.ts +14 -14
- package/dist/helpers/objects/objectValues.js +21 -21
- package/dist/helpers/objects/reduceObject.d.ts +31 -31
- package/dist/helpers/objects/reduceObject.js +26 -26
- package/dist/helpers/objects/setAndReturnValue.d.ts +14 -14
- package/dist/helpers/objects/setAndReturnValue.js +20 -20
- package/dist/helpers/objects/setValue.d.ts +15 -15
- package/dist/helpers/objects/setValue.js +22 -22
- package/dist/helpers/objects.d.ts +100 -100
- package/dist/helpers/objects.js +56 -56
- package/dist/helpers/strings/camelCase.d.ts +9 -9
- package/dist/helpers/strings/camelCase.js +20 -20
- package/dist/helpers/strings/kabobCase.d.ts +9 -9
- package/dist/helpers/strings/kabobCase.js +19 -19
- package/dist/helpers/strings/makeFilepath.d.ts +9 -9
- package/dist/helpers/strings/makeFilepath.js +49 -49
- package/dist/helpers/strings/makeRelativePath.d.ts +9 -9
- package/dist/helpers/strings/makeRelativePath.js +43 -43
- package/dist/helpers/strings/regexEscape.d.ts +8 -8
- package/dist/helpers/strings/regexEscape.js +15 -15
- package/dist/helpers/strings/snakeCase.d.ts +9 -9
- package/dist/helpers/strings/snakeCase.js +19 -19
- package/dist/helpers/strings/strAfter.d.ts +10 -10
- package/dist/helpers/strings/strAfter.js +19 -19
- package/dist/helpers/strings/strAfterLast.d.ts +10 -10
- package/dist/helpers/strings/strAfterLast.js +19 -19
- package/dist/helpers/strings/strBefore.d.ts +10 -10
- package/dist/helpers/strings/strBefore.js +19 -19
- package/dist/helpers/strings/strBeforeLast.d.ts +10 -10
- package/dist/helpers/strings/strBeforeLast.js +19 -19
- package/dist/helpers/strings/titleCase.d.ts +9 -9
- package/dist/helpers/strings/titleCase.js +20 -20
- package/dist/helpers/strings/ucFirst.d.ts +9 -9
- package/dist/helpers/strings/ucFirst.js +15 -15
- package/dist/helpers/strings/words.d.ts +10 -9
- package/dist/helpers/strings/words.js +16 -15
- package/dist/helpers/strings.d.ts +25 -25
- package/dist/helpers/strings.js +44 -44
- package/dist/main.d.ts +9 -9
- package/dist/main.js +30 -30
- package/package.json +2 -5
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import 'core-js/stable';
|
|
2
|
-
/**
|
|
3
|
-
* The return function which takes the missing parameter in order to call the preloaded function.
|
|
4
|
-
* @typedef {Function} module:functionHelpers~callWithMissing
|
|
5
|
-
* @memberOf module:functionHelpers
|
|
6
|
-
* @param {*} missing - The missing parameter to be applied
|
|
7
|
-
* @returns {*}
|
|
8
|
-
*/
|
|
9
|
-
type callWithMissing = (missing: any) => any;
|
|
10
|
-
/**
|
|
11
|
-
* Provide an array of parameters to be used with a function, allow the function to be called later
|
|
12
|
-
* with the missing parameter.
|
|
13
|
-
* @memberOf module:functionHelpers
|
|
14
|
-
* @param {Function} fn - The function to be called
|
|
15
|
-
* @param {Array} params - The parameters to preload
|
|
16
|
-
* @param {number} [unassignedParam=0] - Position of missing parameter (zero indexed)
|
|
17
|
-
* @returns {module:functionHelpers~callWithMissing}
|
|
18
|
-
*/
|
|
19
|
-
declare const preloadParams: (fn: Function, params?: Array<any>, unassignedParam?: number) => callWithMissing;
|
|
20
|
-
export default preloadParams;
|
|
1
|
+
import 'core-js/stable';
|
|
2
|
+
/**
|
|
3
|
+
* The return function which takes the missing parameter in order to call the preloaded function.
|
|
4
|
+
* @typedef {Function} module:functionHelpers~callWithMissing
|
|
5
|
+
* @memberOf module:functionHelpers
|
|
6
|
+
* @param {*} missing - The missing parameter to be applied
|
|
7
|
+
* @returns {*}
|
|
8
|
+
*/
|
|
9
|
+
type callWithMissing = (missing: any) => any;
|
|
10
|
+
/**
|
|
11
|
+
* Provide an array of parameters to be used with a function, allow the function to be called later
|
|
12
|
+
* with the missing parameter.
|
|
13
|
+
* @memberOf module:functionHelpers
|
|
14
|
+
* @param {Function} fn - The function to be called
|
|
15
|
+
* @param {Array} params - The parameters to preload
|
|
16
|
+
* @param {number} [unassignedParam=0] - Position of missing parameter (zero indexed)
|
|
17
|
+
* @returns {module:functionHelpers~callWithMissing}
|
|
18
|
+
*/
|
|
19
|
+
declare const preloadParams: (fn: Function, params?: Array<any>, unassignedParam?: number) => callWithMissing;
|
|
20
|
+
export default preloadParams;
|
|
21
21
|
//# sourceMappingURL=preloadParams.d.ts.map
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
'use strict'
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', {
|
|
4
|
-
value: true
|
|
5
|
-
})
|
|
6
|
-
exports.default = void 0
|
|
7
|
-
require('core-js/stable')
|
|
8
|
-
/**
|
|
9
|
-
* Provide an array of parameters to be used with a function, allow the function to be called later
|
|
10
|
-
* with the missing parameter.
|
|
11
|
-
* @memberOf module:functionHelpers
|
|
12
|
-
* @param {Function} fn - The function to be called
|
|
13
|
-
* @param {Array} params - The parameters to preload
|
|
14
|
-
* @param {number} [unassignedParam=0] - Position of missing parameter (zero indexed)
|
|
15
|
-
* @returns {module:functionHelpers~callWithMissing}
|
|
16
|
-
*/
|
|
17
|
-
const preloadParams = (fn, params = [], unassignedParam = 0) => missing => {
|
|
18
|
-
params.splice(unassignedParam, 0, missing)
|
|
19
|
-
return fn(...params)
|
|
20
|
-
}
|
|
21
|
-
var _default = exports.default = preloadParams
|
|
1
|
+
'use strict'
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', {
|
|
4
|
+
value: true
|
|
5
|
+
})
|
|
6
|
+
exports.default = void 0
|
|
7
|
+
require('core-js/stable')
|
|
8
|
+
/**
|
|
9
|
+
* Provide an array of parameters to be used with a function, allow the function to be called later
|
|
10
|
+
* with the missing parameter.
|
|
11
|
+
* @memberOf module:functionHelpers
|
|
12
|
+
* @param {Function} fn - The function to be called
|
|
13
|
+
* @param {Array} params - The parameters to preload
|
|
14
|
+
* @param {number} [unassignedParam=0] - Position of missing parameter (zero indexed)
|
|
15
|
+
* @returns {module:functionHelpers~callWithMissing}
|
|
16
|
+
*/
|
|
17
|
+
const preloadParams = (fn, params = [], unassignedParam = 0) => missing => {
|
|
18
|
+
params.splice(unassignedParam, 0, missing)
|
|
19
|
+
return fn(...params)
|
|
20
|
+
}
|
|
21
|
+
var _default = exports.default = preloadParams
|
|
@@ -1,48 +1,50 @@
|
|
|
1
|
-
import 'core-js/stable';
|
|
2
|
-
import 'regenerator-runtime/runtime';
|
|
3
|
-
import { IsQueue, queuedItem } from '../arrays/BasicQueue';
|
|
4
|
-
/**
|
|
5
|
-
* Each time queue handle is called the passed function is added to the queue to be called when ready.
|
|
6
|
-
* @typedef {Object} module:functionHelpers~queueedRunnable
|
|
7
|
-
* @memberOf module:functionHelpers
|
|
8
|
-
* @property {Object.<fn|args, Function|Array.<*>>} item - Stores the function and the arguments to apply to it when called
|
|
9
|
-
* @property {Generator} generator - The generator instance which can be used to yield function results
|
|
10
|
-
*/
|
|
11
|
-
export type queuedRunnable = {
|
|
12
|
-
item: {
|
|
13
|
-
fn: Function | queuedItem;
|
|
14
|
-
args: any[];
|
|
15
|
-
};
|
|
16
|
-
generator: Generator;
|
|
17
|
-
};
|
|
18
|
-
/**
|
|
19
|
-
* The pushed function is added to the queue to be called when ready.
|
|
20
|
-
* @typedef {Function} module:functionHelpers~queueManagerPush
|
|
21
|
-
* @memberOf module:functionHelpers
|
|
22
|
-
* @param {Function} fn - A function to enqueue
|
|
23
|
-
* @param {...*} args - Arguments to be passed to the function once it is ready
|
|
24
|
-
* @returns {Promise}
|
|
25
|
-
*/
|
|
26
|
-
export type queuePush = (fn: Function, ...args: any) => Promise<any>;
|
|
27
|
-
/**
|
|
28
|
-
* Each time queue handle is called the passed function is added to the queue to be called when ready.
|
|
29
|
-
* @typedef {Object} module:functionHelpers~queueManagerHandle
|
|
30
|
-
* @memberOf module:functionHelpers
|
|
31
|
-
* @property {Function} start - Callable property that will disable paused state and run the next queue
|
|
32
|
-
* @property {Function} pause - Callable property that will switch state to paused
|
|
33
|
-
* @property {module:functionHelpers~queueManagerPush} push - Callable property that takes a function to add to the queue
|
|
34
|
-
*/
|
|
35
|
-
export type queueManagerHandle = {
|
|
36
|
-
start: () => void;
|
|
37
|
-
pause: () => void;
|
|
38
|
-
push: queuePush;
|
|
39
|
-
};
|
|
40
|
-
/**
|
|
41
|
-
* Manage functions to run sequentially.
|
|
42
|
-
* @memberOf module:functionHelpers
|
|
43
|
-
* @param {IsQueue} [queue=
|
|
44
|
-
* @
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
1
|
+
import 'core-js/stable';
|
|
2
|
+
import 'regenerator-runtime/runtime';
|
|
3
|
+
import { IsQueue, queuedItem } from '../arrays/BasicQueue';
|
|
4
|
+
/**
|
|
5
|
+
* Each time queue handle is called the passed function is added to the queue to be called when ready.
|
|
6
|
+
* @typedef {Object} module:functionHelpers~queueedRunnable
|
|
7
|
+
* @memberOf module:functionHelpers
|
|
8
|
+
* @property {Object.<fn|args, Function|Array.<*>>} item - Stores the function and the arguments to apply to it when called
|
|
9
|
+
* @property {Generator} generator - The generator instance which can be used to yield function results
|
|
10
|
+
*/
|
|
11
|
+
export type queuedRunnable = {
|
|
12
|
+
item: {
|
|
13
|
+
fn: Function | queuedItem;
|
|
14
|
+
args: any[];
|
|
15
|
+
};
|
|
16
|
+
generator: Generator;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* The pushed function is added to the queue to be called when ready.
|
|
20
|
+
* @typedef {Function} module:functionHelpers~queueManagerPush
|
|
21
|
+
* @memberOf module:functionHelpers
|
|
22
|
+
* @param {Function} fn - A function to enqueue
|
|
23
|
+
* @param {...*} args - Arguments to be passed to the function once it is ready
|
|
24
|
+
* @returns {Promise}
|
|
25
|
+
*/
|
|
26
|
+
export type queuePush = (fn: Function, ...args: any) => Promise<any>;
|
|
27
|
+
/**
|
|
28
|
+
* Each time queue handle is called the passed function is added to the queue to be called when ready.
|
|
29
|
+
* @typedef {Object} module:functionHelpers~queueManagerHandle
|
|
30
|
+
* @memberOf module:functionHelpers
|
|
31
|
+
* @property {Function} start - Callable property that will disable paused state and run the next queue
|
|
32
|
+
* @property {Function} pause - Callable property that will switch state to paused
|
|
33
|
+
* @property {module:functionHelpers~queueManagerPush} push - Callable property that takes a function to add to the queue
|
|
34
|
+
*/
|
|
35
|
+
export type queueManagerHandle = {
|
|
36
|
+
start: () => void;
|
|
37
|
+
pause: () => void;
|
|
38
|
+
push: queuePush;
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* Manage functions to run sequentially.
|
|
42
|
+
* @memberOf module:functionHelpers
|
|
43
|
+
* @param {IsQueue|Array} [queue=null] - The queue to manage. Pass a plain array to have it converted into a
|
|
44
|
+
* {@link module:arrayHelpers.BasicQueue} automatically, or a custom queue implementing `IsQueue`; omit it (or pass
|
|
45
|
+
* `null`) to have one created for you.
|
|
46
|
+
* @returns {module:functionHelpers~queueManagerHandle}
|
|
47
|
+
*/
|
|
48
|
+
declare const queueManager: (queue?: IsQueue<queuedItem>) => queueManagerHandle;
|
|
49
|
+
export default queueManager;
|
|
48
50
|
//# sourceMappingURL=queueManager.d.ts.map
|
|
@@ -1,122 +1,124 @@
|
|
|
1
|
-
'use strict'
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', {
|
|
4
|
-
value: true
|
|
5
|
-
})
|
|
6
|
-
exports.default = void 0
|
|
7
|
-
require('core-js/modules/esnext.iterator.constructor.js')
|
|
8
|
-
require('core-js/modules/esnext.iterator.for-each.js')
|
|
9
|
-
require('core-js/stable')
|
|
10
|
-
require('regenerator-runtime/runtime')
|
|
11
|
-
var _makeBasicQueue = _interopRequireDefault(require('./makeBasicQueue'))
|
|
12
|
-
function _interopRequireDefault (e) { return e && e.__esModule ? e : { default: e } }
|
|
13
|
-
/**
|
|
14
|
-
* Manage functions to run sequentially.
|
|
15
|
-
* @memberOf module:functionHelpers
|
|
16
|
-
* @param {IsQueue} [queue=
|
|
17
|
-
* @
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
*
|
|
26
|
-
* @param {
|
|
27
|
-
* @param {
|
|
28
|
-
* @
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
*
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
return
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
*
|
|
96
|
-
* @
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
queueArray
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
1
|
+
'use strict'
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', {
|
|
4
|
+
value: true
|
|
5
|
+
})
|
|
6
|
+
exports.default = void 0
|
|
7
|
+
require('core-js/modules/esnext.iterator.constructor.js')
|
|
8
|
+
require('core-js/modules/esnext.iterator.for-each.js')
|
|
9
|
+
require('core-js/stable')
|
|
10
|
+
require('regenerator-runtime/runtime')
|
|
11
|
+
var _makeBasicQueue = _interopRequireDefault(require('./makeBasicQueue'))
|
|
12
|
+
function _interopRequireDefault (e) { return e && e.__esModule ? e : { default: e } }
|
|
13
|
+
/**
|
|
14
|
+
* Manage functions to run sequentially.
|
|
15
|
+
* @memberOf module:functionHelpers
|
|
16
|
+
* @param {IsQueue|Array} [queue=null] - The queue to manage. Pass a plain array to have it converted into a
|
|
17
|
+
* {@link module:arrayHelpers.BasicQueue} automatically, or a custom queue implementing `IsQueue`; omit it (or pass
|
|
18
|
+
* `null`) to have one created for you.
|
|
19
|
+
* @returns {module:functionHelpers~queueManagerHandle}
|
|
20
|
+
*/
|
|
21
|
+
const queueManager = (queue = null) => {
|
|
22
|
+
let isRunning = false
|
|
23
|
+
let isPaused = true
|
|
24
|
+
/**
|
|
25
|
+
* Convert a function to a queueable object.
|
|
26
|
+
* @param {Promise.resolve} resolve
|
|
27
|
+
* @param {Promise.reject} reject
|
|
28
|
+
* @param {Function} fn
|
|
29
|
+
* @param {...*} args
|
|
30
|
+
* @returns {queuedRunnable}
|
|
31
|
+
*/
|
|
32
|
+
const makeQueuedRunnable = (resolve, reject, fn, ...args) => {
|
|
33
|
+
const generator = (function * () {
|
|
34
|
+
const item = yield
|
|
35
|
+
return typeof item.fn === 'function' ? resolve(item.fn(...item.args)) : reject(item)
|
|
36
|
+
}())
|
|
37
|
+
// Prepare the generator to be used on the subsequent call
|
|
38
|
+
generator.next()
|
|
39
|
+
return {
|
|
40
|
+
item: {
|
|
41
|
+
fn: fn,
|
|
42
|
+
args: args
|
|
43
|
+
},
|
|
44
|
+
generator: generator
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* After an item is run, THEN run this function to reset isRunning
|
|
49
|
+
* @param {*} result
|
|
50
|
+
* @returns {*}
|
|
51
|
+
*/
|
|
52
|
+
const postRun = result => {
|
|
53
|
+
isRunning = false
|
|
54
|
+
runNextItem()
|
|
55
|
+
return result
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* When ready, runs the next queued runnable generator.
|
|
59
|
+
* @returns {IteratorYieldResult|null}
|
|
60
|
+
*/
|
|
61
|
+
const runNextItem = () => {
|
|
62
|
+
if (!isPaused && !queue.empty() && !isRunning) {
|
|
63
|
+
isRunning = true
|
|
64
|
+
let toRun = queue.dequeue()
|
|
65
|
+
if (typeof toRun === 'undefined' || toRun === null) {
|
|
66
|
+
return null
|
|
67
|
+
}
|
|
68
|
+
if (typeof toRun === 'function') {
|
|
69
|
+
new Promise((resolve, reject) => {
|
|
70
|
+
toRun = makeQueuedRunnable(resolve, reject, toRun)
|
|
71
|
+
runNextItem()
|
|
72
|
+
}).then(postRun)
|
|
73
|
+
}
|
|
74
|
+
if ('success' in toRun) {
|
|
75
|
+
// Some run responses return an object with 'success' property.
|
|
76
|
+
console.info(toRun.success)
|
|
77
|
+
return null
|
|
78
|
+
}
|
|
79
|
+
if (!toRun.generator || 'error' in toRun) {
|
|
80
|
+
// Some run responses return an object with an 'error' property
|
|
81
|
+
let errorMessage = 'Verify queued function implements "done()" state.'
|
|
82
|
+
if ('error' in toRun && toRun.error) {
|
|
83
|
+
errorMessage = `[${toRun.error}]: ${errorMessage}`
|
|
84
|
+
}
|
|
85
|
+
throw new Error(errorMessage)
|
|
86
|
+
}
|
|
87
|
+
if (toRun.generator && toRun.item) {
|
|
88
|
+
// Ensure the returned result has both the generator and the item to be valid
|
|
89
|
+
return toRun.generator.next(toRun.item)
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
return null
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Add a function into the queue to be run when ready.
|
|
96
|
+
* @param {Function} fn - The function to run when ready
|
|
97
|
+
* @param {...*} args - Optional arguments to apply when the function is ready to be run
|
|
98
|
+
* @returns Promise
|
|
99
|
+
*/
|
|
100
|
+
const pushAnother = (fn, ...args) => new Promise((resolve, reject) => {
|
|
101
|
+
queue.enqueue(makeQueuedRunnable(resolve, reject, fn, ...args))
|
|
102
|
+
runNextItem()
|
|
103
|
+
}).then(postRun)
|
|
104
|
+
if (Array.isArray(queue)) {
|
|
105
|
+
const queueArray = queue
|
|
106
|
+
queue = (0, _makeBasicQueue.default)()
|
|
107
|
+
queueArray.forEach(queued => pushAnother(queued))
|
|
108
|
+
}
|
|
109
|
+
if (queue === null) {
|
|
110
|
+
queue = (0, _makeBasicQueue.default)()
|
|
111
|
+
}
|
|
112
|
+
runNextItem()
|
|
113
|
+
return {
|
|
114
|
+
start: () => {
|
|
115
|
+
isPaused = false
|
|
116
|
+
runNextItem()
|
|
117
|
+
},
|
|
118
|
+
pause: () => {
|
|
119
|
+
isPaused = true
|
|
120
|
+
},
|
|
121
|
+
push: pushAnother
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
var _default = exports.default = queueManager
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import 'core-js/stable';
|
|
2
|
-
import 'regenerator-runtime/runtime';
|
|
3
|
-
import { queueManagerHandle } from './queueManager';
|
|
4
|
-
/**
|
|
5
|
-
* Run Timeout functions one after the otherin queue.
|
|
6
|
-
* @typedef {Function} module:functionHelpers~queueTimeoutHandle
|
|
7
|
-
* @memberOf module:functionHelpers
|
|
8
|
-
* @param {Function} fn - A callback function to be performed at some time in the future.
|
|
9
|
-
* @param {number} time - The time in milliseconds to delay.
|
|
10
|
-
* @param {...*} args - Arguments to be passed to the callback once it is implemented.
|
|
11
|
-
* @returns {Promise}
|
|
12
|
-
*/
|
|
13
|
-
type queueTimeoutHandle = (fn: Function, time: number, ...args: any) => Promise<any>;
|
|
14
|
-
/**
|
|
15
|
-
* Manage functions to run sequentially with delays.
|
|
16
|
-
* @memberOf module:functionHelpers
|
|
17
|
-
* @param {module:functionHelpers~queueManagerHandle} [queueManagerHandle=null]
|
|
18
|
-
* @returns {module:functionHelpers~queueTimeoutHandle}
|
|
19
|
-
*/
|
|
20
|
-
declare const queueTimeout: (queueManagerHandle?: queueManagerHandle) => queueTimeoutHandle;
|
|
21
|
-
export default queueTimeout;
|
|
1
|
+
import 'core-js/stable';
|
|
2
|
+
import 'regenerator-runtime/runtime';
|
|
3
|
+
import { queueManagerHandle } from './queueManager';
|
|
4
|
+
/**
|
|
5
|
+
* Run Timeout functions one after the otherin queue.
|
|
6
|
+
* @typedef {Function} module:functionHelpers~queueTimeoutHandle
|
|
7
|
+
* @memberOf module:functionHelpers
|
|
8
|
+
* @param {Function} fn - A callback function to be performed at some time in the future.
|
|
9
|
+
* @param {number} time - The time in milliseconds to delay.
|
|
10
|
+
* @param {...*} args - Arguments to be passed to the callback once it is implemented.
|
|
11
|
+
* @returns {Promise}
|
|
12
|
+
*/
|
|
13
|
+
type queueTimeoutHandle = (fn: Function, time: number, ...args: any) => Promise<any>;
|
|
14
|
+
/**
|
|
15
|
+
* Manage functions to run sequentially with delays.
|
|
16
|
+
* @memberOf module:functionHelpers
|
|
17
|
+
* @param {module:functionHelpers~queueManagerHandle} [queueManagerHandle=null]
|
|
18
|
+
* @returns {module:functionHelpers~queueTimeoutHandle}
|
|
19
|
+
*/
|
|
20
|
+
declare const queueTimeout: (queueManagerHandle?: queueManagerHandle) => queueTimeoutHandle;
|
|
21
|
+
export default queueTimeout;
|
|
22
22
|
//# sourceMappingURL=queueTimeout.d.ts.map
|
|
@@ -1,23 +1,23 @@
|
|
|
1
|
-
'use strict'
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, '__esModule', {
|
|
4
|
-
value: true
|
|
5
|
-
})
|
|
6
|
-
exports.default = void 0
|
|
7
|
-
require('core-js/stable')
|
|
8
|
-
require('regenerator-runtime/runtime')
|
|
9
|
-
var _delay = _interopRequireDefault(require('./delay'))
|
|
10
|
-
var _queueManager = _interopRequireDefault(require('./queueManager'))
|
|
11
|
-
function _interopRequireDefault (e) { return e && e.__esModule ? e : { default: e } }
|
|
12
|
-
/**
|
|
13
|
-
* Manage functions to run sequentially with delays.
|
|
14
|
-
* @memberOf module:functionHelpers
|
|
15
|
-
* @param {module:functionHelpers~queueManagerHandle} [queueManagerHandle=null]
|
|
16
|
-
* @returns {module:functionHelpers~queueTimeoutHandle}
|
|
17
|
-
*/
|
|
18
|
-
const queueTimeout = (queueManagerHandle = null) => {
|
|
19
|
-
const manager = queueManagerHandle || (0, _queueManager.default)()
|
|
20
|
-
manager.start()
|
|
21
|
-
return (fn, time = 0, ...args) => manager.push(() => (0, _delay.default)(time).resolver.then(() => fn(...args)))
|
|
22
|
-
}
|
|
23
|
-
var _default = exports.default = queueTimeout
|
|
1
|
+
'use strict'
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', {
|
|
4
|
+
value: true
|
|
5
|
+
})
|
|
6
|
+
exports.default = void 0
|
|
7
|
+
require('core-js/stable')
|
|
8
|
+
require('regenerator-runtime/runtime')
|
|
9
|
+
var _delay = _interopRequireDefault(require('./delay'))
|
|
10
|
+
var _queueManager = _interopRequireDefault(require('./queueManager'))
|
|
11
|
+
function _interopRequireDefault (e) { return e && e.__esModule ? e : { default: e } }
|
|
12
|
+
/**
|
|
13
|
+
* Manage functions to run sequentially with delays.
|
|
14
|
+
* @memberOf module:functionHelpers
|
|
15
|
+
* @param {module:functionHelpers~queueManagerHandle} [queueManagerHandle=null]
|
|
16
|
+
* @returns {module:functionHelpers~queueTimeoutHandle}
|
|
17
|
+
*/
|
|
18
|
+
const queueTimeout = (queueManagerHandle = null) => {
|
|
19
|
+
const manager = queueManagerHandle || (0, _queueManager.default)()
|
|
20
|
+
manager.start()
|
|
21
|
+
return (fn, time = 0, ...args) => manager.push(() => (0, _delay.default)(time).resolver.then(() => fn(...args)))
|
|
22
|
+
}
|
|
23
|
+
var _default = exports.default = queueTimeout
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
import 'core-js/stable';
|
|
2
|
-
/**
|
|
3
|
-
* An object having an integer valued property named 'relevance'.
|
|
4
|
-
* @typedef {Object} relevanceObject
|
|
5
|
-
* @memberOf module:functionHelpers
|
|
6
|
-
* @property {Array|Object} source
|
|
7
|
-
* @property {Array|Object} object
|
|
8
|
-
* @property {number} relevance
|
|
9
|
-
*/
|
|
10
|
-
export type relevanceObject = {
|
|
11
|
-
source: Array<any> | Object;
|
|
12
|
-
object: Array<any> | Object;
|
|
13
|
-
relevance: number;
|
|
14
|
-
};
|
|
15
|
-
/**
|
|
16
|
-
* A map of relevanceObjects which can be manipulated to filter results.
|
|
17
|
-
* @typedef {Array.<relevanceObject>} relevanceMap
|
|
18
|
-
* @memberOf module:functionHelpers
|
|
19
|
-
*/
|
|
20
|
-
export type relevanceMap = Array<relevanceObject>;
|
|
21
|
-
type relevancyFilterOptions = {
|
|
22
|
-
mapLimit?: number;
|
|
23
|
-
relevancyRange?: number;
|
|
24
|
-
};
|
|
25
|
-
/**
|
|
26
|
-
* Remove elements out of relevance range and update the max relevance.
|
|
27
|
-
* @memberOf module:functionHelpers
|
|
28
|
-
* @param {relevanceMap} map
|
|
29
|
-
* @param {Object} [options={}]
|
|
30
|
-
* @param {
|
|
31
|
-
* @param {
|
|
32
|
-
* @returns {relevanceMap}
|
|
33
|
-
*/
|
|
34
|
-
declare const relevancyFilter: (map: relevanceMap, { mapLimit, relevancyRange }?: relevancyFilterOptions) => relevanceMap;
|
|
35
|
-
export default relevancyFilter;
|
|
1
|
+
import 'core-js/stable';
|
|
2
|
+
/**
|
|
3
|
+
* An object having an integer valued property named 'relevance'.
|
|
4
|
+
* @typedef {Object} relevanceObject
|
|
5
|
+
* @memberOf module:functionHelpers
|
|
6
|
+
* @property {Array|Object} source
|
|
7
|
+
* @property {Array|Object} object
|
|
8
|
+
* @property {number} relevance
|
|
9
|
+
*/
|
|
10
|
+
export type relevanceObject = {
|
|
11
|
+
source: Array<any> | Object;
|
|
12
|
+
object: Array<any> | Object;
|
|
13
|
+
relevance: number;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* A map of relevanceObjects which can be manipulated to filter results.
|
|
17
|
+
* @typedef {Array.<relevanceObject>} relevanceMap
|
|
18
|
+
* @memberOf module:functionHelpers
|
|
19
|
+
*/
|
|
20
|
+
export type relevanceMap = Array<relevanceObject>;
|
|
21
|
+
type relevancyFilterOptions = {
|
|
22
|
+
mapLimit?: number;
|
|
23
|
+
relevancyRange?: number;
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Remove elements out of relevance range and update the max relevance.
|
|
27
|
+
* @memberOf module:functionHelpers
|
|
28
|
+
* @param {relevanceMap} map
|
|
29
|
+
* @param {Object} [options={}]
|
|
30
|
+
* @param {number} [options.mapLimit=1000] - Only filter once the map exceeds this many entries.
|
|
31
|
+
* @param {number} [options.relevancyRange=100] - How many of the most-recent relevance values to keep.
|
|
32
|
+
* @returns {relevanceMap}
|
|
33
|
+
*/
|
|
34
|
+
declare const relevancyFilter: (map: relevanceMap, { mapLimit, relevancyRange }?: relevancyFilterOptions) => relevanceMap;
|
|
35
|
+
export default relevancyFilter;
|
|
36
36
|
//# sourceMappingURL=relevancyFilter.d.ts.map
|