clientnode 4.0.1428 → 4.0.1429
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/dist/Lock.js +100 -1
- package/dist/Logger.js +185 -1
- package/dist/Semaphore.js +65 -1
- package/dist/array.js +452 -1
- package/dist/cli.js +51 -1
- package/dist/constants.js +126 -1
- package/dist/context.js +40 -1
- package/dist/cookie.js +84 -1
- package/dist/data-transfer.js +216 -1
- package/dist/datetime.js +282 -1
- package/dist/domNode.js +331 -1
- package/dist/expression/evaluators.js +273 -1
- package/dist/expression/helper.js +97 -1
- package/dist/expression/index.js +26 -1
- package/dist/expression/indicator-functions.js +37 -1
- package/dist/expression/type.js +20 -0
- package/dist/filesystem.js +410 -1
- package/dist/function.js +75 -1
- package/dist/index.js +43 -1
- package/dist/indicators.js +121 -1
- package/dist/number.js +61 -1
- package/dist/object.js +934 -1
- package/dist/process.js +69 -1
- package/dist/property-types.js +115 -1
- package/dist/require.js +82 -1
- package/dist/scope.js +85 -1
- package/dist/string.js +806 -1
- package/dist/test-helper.js +341 -1
- package/dist/type.js +21 -1
- package/dist/utility.js +139 -1
- package/package.json +23 -22
- package/dist/Lock.d.ts +0 -39
- package/dist/Logger.d.ts +0 -102
- package/dist/Semaphore.d.ts +0 -29
- package/dist/array.d.ts +0 -150
- package/dist/bundle/Lock.js +0 -1
- package/dist/bundle/Logger.js +0 -1
- package/dist/bundle/Semaphore.js +0 -1
- package/dist/bundle/array.js +0 -1
- package/dist/bundle/cli.js +0 -1
- package/dist/bundle/constants.js +0 -1
- package/dist/bundle/context.js +0 -1
- package/dist/bundle/cookie.js +0 -1
- package/dist/bundle/data-transfer.js +0 -1
- package/dist/bundle/datetime.js +0 -1
- package/dist/bundle/domNode.js +0 -1
- package/dist/bundle/expression/evaluators.js +0 -1
- package/dist/bundle/expression/helper.js +0 -1
- package/dist/bundle/expression/index.js +0 -1
- package/dist/bundle/expression/indicator-functions.js +0 -1
- package/dist/bundle/expression/types.js +0 -1
- package/dist/bundle/filesystem.js +0 -1
- package/dist/bundle/function.js +0 -1
- package/dist/bundle/index.js +0 -1
- package/dist/bundle/indicators.js +0 -1
- package/dist/bundle/number.js +0 -1
- package/dist/bundle/object.js +0 -1
- package/dist/bundle/process.js +0 -1
- package/dist/bundle/property-types.js +0 -1
- package/dist/bundle/require.js +0 -1
- package/dist/bundle/scope.js +0 -1
- package/dist/bundle/string.js +0 -1
- package/dist/bundle/test-helper.js +0 -1
- package/dist/bundle/type.js +0 -1
- package/dist/bundle/utility.js +0 -1
- package/dist/cli.d.ts +0 -31
- package/dist/compatible/Lock.js +0 -1
- package/dist/compatible/Logger.js +0 -1
- package/dist/compatible/Semaphore.js +0 -1
- package/dist/compatible/array.js +0 -1
- package/dist/compatible/cli.js +0 -1
- package/dist/compatible/constants.js +0 -1
- package/dist/compatible/context.js +0 -1
- package/dist/compatible/cookie.js +0 -1
- package/dist/compatible/data-transfer.js +0 -1
- package/dist/compatible/datetime.js +0 -1
- package/dist/compatible/domNode.js +0 -1
- package/dist/compatible/expression/evaluators.js +0 -1
- package/dist/compatible/expression/helper.js +0 -1
- package/dist/compatible/expression/index.js +0 -1
- package/dist/compatible/expression/indicator-functions.js +0 -1
- package/dist/compatible/expression/types.js +0 -1
- package/dist/compatible/filesystem.js +0 -1
- package/dist/compatible/function.js +0 -1
- package/dist/compatible/index.js +0 -1
- package/dist/compatible/indicators.js +0 -1
- package/dist/compatible/number.js +0 -1
- package/dist/compatible/object.js +0 -1
- package/dist/compatible/process.js +0 -1
- package/dist/compatible/property-types.js +0 -1
- package/dist/compatible/require.js +0 -1
- package/dist/compatible/scope.js +0 -1
- package/dist/compatible/string.js +0 -1
- package/dist/compatible/test-helper.js +0 -1
- package/dist/compatible/type.js +0 -1
- package/dist/compatible/utility.js +0 -1
- package/dist/constants.d.ts +0 -99
- package/dist/context.d.ts +0 -9
- package/dist/cookie.d.ts +0 -31
- package/dist/data-transfer.d.ts +0 -45
- package/dist/datetime.d.ts +0 -37
- package/dist/domNode.d.ts +0 -82
- package/dist/expression/evaluators.d.ts +0 -55
- package/dist/expression/helper.d.ts +0 -4
- package/dist/expression/index.d.ts +0 -7
- package/dist/expression/indicator-functions.d.ts +0 -14
- package/dist/expression/types.d.ts +0 -70
- package/dist/expression/types.js +0 -1
- package/dist/filesystem.d.ts +0 -138
- package/dist/function.d.ts +0 -20
- package/dist/index.d.ts +0 -23
- package/dist/indicators.d.ts +0 -68
- package/dist/number.d.ts +0 -35
- package/dist/object.d.ts +0 -213
- package/dist/process.d.ts +0 -22
- package/dist/property-types.d.ts +0 -460
- package/dist/require.d.ts +0 -6
- package/dist/scope.d.ts +0 -44
- package/dist/string.d.ts +0 -299
- package/dist/test/Lock.d.ts +0 -1
- package/dist/test/Logger.d.ts +0 -1
- package/dist/test/Semaphore.d.ts +0 -1
- package/dist/test/array.d.ts +0 -1
- package/dist/test/cookie.d.ts +0 -1
- package/dist/test/data-transfer.d.ts +0 -1
- package/dist/test/datetime.d.ts +0 -1
- package/dist/test/domNode.d.ts +0 -1
- package/dist/test/expression/evaluators.d.ts +0 -1
- package/dist/test/expression/helper.d.ts +0 -1
- package/dist/test/expression/indicator-functions.d.ts +0 -1
- package/dist/test/filesystem.d.ts +0 -1
- package/dist/test/function.d.ts +0 -1
- package/dist/test/indicators.d.ts +0 -1
- package/dist/test/number.d.ts +0 -1
- package/dist/test/object.d.ts +0 -1
- package/dist/test/process.d.ts +0 -1
- package/dist/test/property-types.d.ts +0 -1
- package/dist/test/scope.d.ts +0 -1
- package/dist/test/string.d.ts +0 -1
- package/dist/test/utility.d.ts +0 -1
- package/dist/test-helper.d.ts +0 -143
- package/dist/type.d.ts +0 -211
- package/dist/utility.d.ts +0 -44
package/dist/cli.js
CHANGED
|
@@ -1 +1,51 @@
|
|
|
1
|
-
|
|
1
|
+
// #!/usr/bin/env babel-node
|
|
2
|
+
// -*- coding: utf-8 -*-
|
|
3
|
+
/** @module cli */
|
|
4
|
+
'use strict';
|
|
5
|
+
|
|
6
|
+
/* !
|
|
7
|
+
region header
|
|
8
|
+
[Project page](https://torben.website/clientnode)
|
|
9
|
+
|
|
10
|
+
Copyright Torben Sickert (info["~at~"]torben.website) 16.12.2012
|
|
11
|
+
|
|
12
|
+
License
|
|
13
|
+
-------
|
|
14
|
+
|
|
15
|
+
This library written by Torben Sickert stands under a creative commons
|
|
16
|
+
naming 3.0 unported license.
|
|
17
|
+
See https://creativecommons.org/licenses/by/3.0/deed.de
|
|
18
|
+
endregion
|
|
19
|
+
*/
|
|
20
|
+
export const CLI_COLOR = {
|
|
21
|
+
black: '\x1b[30m',
|
|
22
|
+
blink: '\x1b[5m',
|
|
23
|
+
blue: '\x1b[0;34m',
|
|
24
|
+
bold: '\x1b[1m',
|
|
25
|
+
cyan: '\x1b[36m',
|
|
26
|
+
darkGray: '\x1b[0;90m',
|
|
27
|
+
default: '\x1b[0m',
|
|
28
|
+
dim: '\x1b[2m',
|
|
29
|
+
green: '\x1b[32m',
|
|
30
|
+
invert: '\x1b[7m',
|
|
31
|
+
invisible: '\x1b[8m',
|
|
32
|
+
lightBlue: '\x1b[0;94m',
|
|
33
|
+
lightCyan: '\x1b[0;96m',
|
|
34
|
+
lightGray: '\x1b[0;37m',
|
|
35
|
+
lightGreen: '\x1b[0;92m',
|
|
36
|
+
lightMagenta: '\x1b[0;95m',
|
|
37
|
+
lightRed: '\x1b[0;91m',
|
|
38
|
+
lightYellow: '\x1b[0;93m',
|
|
39
|
+
magenta: '\x1b[35m',
|
|
40
|
+
nodim: '\x1b[22m',
|
|
41
|
+
noblink: '\x1b[25m',
|
|
42
|
+
nobold: '\x1b[21m',
|
|
43
|
+
noinvert: '\x1b[27m',
|
|
44
|
+
noinvisible: '\x1b[28m',
|
|
45
|
+
nounderline: '\x1b[24m',
|
|
46
|
+
red: '\x1b[31m',
|
|
47
|
+
underline: '\x1b[4m',
|
|
48
|
+
white: '\x1b[37m',
|
|
49
|
+
yellow: '\x1b[33m'
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL2NsaS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyAjIS91c3IvYmluL2VudiBiYWJlbC1ub2RlXG4vLyAtKi0gY29kaW5nOiB1dGYtOCAtKi1cbi8qKiBAbW9kdWxlIGNsaSAqL1xuJ3VzZSBzdHJpY3QnXG4vKiAhXG4gICAgcmVnaW9uIGhlYWRlclxuICAgIFtQcm9qZWN0IHBhZ2VdKGh0dHBzOi8vdG9yYmVuLndlYnNpdGUvY2xpZW50bm9kZSlcblxuICAgIENvcHlyaWdodCBUb3JiZW4gU2lja2VydCAoaW5mb1tcIn5hdH5cIl10b3JiZW4ud2Vic2l0ZSkgMTYuMTIuMjAxMlxuXG4gICAgTGljZW5zZVxuICAgIC0tLS0tLS1cblxuICAgIFRoaXMgbGlicmFyeSB3cml0dGVuIGJ5IFRvcmJlbiBTaWNrZXJ0IHN0YW5kcyB1bmRlciBhIGNyZWF0aXZlIGNvbW1vbnNcbiAgICBuYW1pbmcgMy4wIHVucG9ydGVkIGxpY2Vuc2UuXG4gICAgU2VlIGh0dHBzOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS8zLjAvZGVlZC5kZVxuICAgIGVuZHJlZ2lvblxuKi9cbmV4cG9ydCBjb25zdCBDTElfQ09MT1IgPSB7XG4gICAgYmxhY2s6ICdcXHgxYlszMG0nLFxuICAgIGJsaW5rOiAnXFx4MWJbNW0nLFxuICAgIGJsdWU6ICdcXHgxYlswOzM0bScsXG4gICAgYm9sZDogJ1xceDFiWzFtJyxcbiAgICBjeWFuOiAnXFx4MWJbMzZtJyxcbiAgICBkYXJrR3JheTogJ1xceDFiWzA7OTBtJyxcbiAgICBkZWZhdWx0OiAnXFx4MWJbMG0nLFxuICAgIGRpbTogJ1xceDFiWzJtJyxcbiAgICBncmVlbjogJ1xceDFiWzMybScsXG4gICAgaW52ZXJ0OiAnXFx4MWJbN20nLFxuICAgIGludmlzaWJsZTogJ1xceDFiWzhtJyxcbiAgICBsaWdodEJsdWU6ICdcXHgxYlswOzk0bScsXG4gICAgbGlnaHRDeWFuOiAnXFx4MWJbMDs5Nm0nLFxuICAgIGxpZ2h0R3JheTogJ1xceDFiWzA7MzdtJyxcbiAgICBsaWdodEdyZWVuOiAnXFx4MWJbMDs5Mm0nLFxuICAgIGxpZ2h0TWFnZW50YTogJ1xceDFiWzA7OTVtJyxcbiAgICBsaWdodFJlZDogJ1xceDFiWzA7OTFtJyxcbiAgICBsaWdodFllbGxvdzogJ1xceDFiWzA7OTNtJyxcbiAgICBtYWdlbnRhOiAnXFx4MWJbMzVtJyxcbiAgICBub2RpbTogJ1xceDFiWzIybScsXG4gICAgbm9ibGluazogJ1xceDFiWzI1bScsXG4gICAgbm9ib2xkOiAnXFx4MWJbMjFtJyxcbiAgICBub2ludmVydDogJ1xceDFiWzI3bScsXG4gICAgbm9pbnZpc2libGU6ICdcXHgxYlsyOG0nLFxuICAgIG5vdW5kZXJsaW5lOiAnXFx4MWJbMjRtJyxcbiAgICByZWQ6ICdcXHgxYlszMW0nLFxuICAgIHVuZGVybGluZTogJ1xceDFiWzRtJyxcbiAgICB3aGl0ZTogJ1xceDFiWzM3bScsXG4gICAgeWVsbG93OiAnXFx4MWJbMzNtJ1xufSBhcyBjb25zdFxuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQSxZQUFZOztBQUNaO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPLE1BQU0sU0FBUyxHQUFHO0VBQ3JCLEtBQUssRUFBRSxVQUFVO0VBQ2pCLEtBQUssRUFBRSxTQUFTO0VBQ2hCLElBQUksRUFBRSxZQUFZO0VBQ2xCLElBQUksRUFBRSxTQUFTO0VBQ2YsSUFBSSxFQUFFLFVBQVU7RUFDaEIsUUFBUSxFQUFFLFlBQVk7RUFDdEIsT0FBTyxFQUFFLFNBQVM7RUFDbEIsR0FBRyxFQUFFLFNBQVM7RUFDZCxLQUFLLEVBQUUsVUFBVTtFQUNqQixNQUFNLEVBQUUsU0FBUztFQUNqQixTQUFTLEVBQUUsU0FBUztFQUNwQixTQUFTLEVBQUUsWUFBWTtFQUN2QixTQUFTLEVBQUUsWUFBWTtFQUN2QixTQUFTLEVBQUUsWUFBWTtFQUN2QixVQUFVLEVBQUUsWUFBWTtFQUN4QixZQUFZLEVBQUUsWUFBWTtFQUMxQixRQUFRLEVBQUUsWUFBWTtFQUN0QixXQUFXLEVBQUUsWUFBWTtFQUN6QixPQUFPLEVBQUUsVUFBVTtFQUNuQixLQUFLLEVBQUUsVUFBVTtFQUNqQixPQUFPLEVBQUUsVUFBVTtFQUNuQixNQUFNLEVBQUUsVUFBVTtFQUNsQixRQUFRLEVBQUUsVUFBVTtFQUNwQixXQUFXLEVBQUUsVUFBVTtFQUN2QixXQUFXLEVBQUUsVUFBVTtFQUN2QixHQUFHLEVBQUUsVUFBVTtFQUNmLFNBQVMsRUFBRSxTQUFTO0VBQ3BCLEtBQUssRUFBRSxVQUFVO0VBQ2pCLE1BQU0sRUFBRTtBQUNaLENBQVUiLCJpZ25vcmVMaXN0IjpbXX0=
|
package/dist/constants.js
CHANGED
|
@@ -1 +1,126 @@
|
|
|
1
|
-
|
|
1
|
+
// #!/usr/bin/env babel-node
|
|
2
|
+
// -*- coding: utf-8 -*-
|
|
3
|
+
/** @module constants */
|
|
4
|
+
'use strict';
|
|
5
|
+
|
|
6
|
+
/* !
|
|
7
|
+
region header
|
|
8
|
+
[Project page](https://torben.website/clientnode)
|
|
9
|
+
|
|
10
|
+
Copyright Torben Sickert (info["~at~"]torben.website) 16.12.2012
|
|
11
|
+
|
|
12
|
+
License
|
|
13
|
+
-------
|
|
14
|
+
|
|
15
|
+
This library written by Torben Sickert stands under a creative commons
|
|
16
|
+
naming 3.0 unported license.
|
|
17
|
+
See https://creativecommons.org/licenses/by/3.0/deed.de
|
|
18
|
+
endregion
|
|
19
|
+
*/
|
|
20
|
+
export { Lock } from "./Lock.js";
|
|
21
|
+
export { Semaphore } from "./Semaphore.js";
|
|
22
|
+
export const DEFAULT_ENCODING = 'utf8';
|
|
23
|
+
export const CLOSE_EVENT_NAMES = ['close', 'exit', 'SIGINT', 'SIGTERM', 'SIGQUIT', 'uncaughtException'];
|
|
24
|
+
export const CONSOLE_METHODS = ['debug', 'error', 'info', 'log', 'warn'];
|
|
25
|
+
export const VALUE_COPY_SYMBOL = Symbol.for('clientnodeValue');
|
|
26
|
+
export const IGNORE_NULL_AND_UNDEFINED_SYMBOL = Symbol.for('clientnodeIgnoreNullAndUndefined');
|
|
27
|
+
|
|
28
|
+
// Lists all known abbreviation for proper camel case to delimited and back
|
|
29
|
+
// conversion.
|
|
30
|
+
export const ABBREVIATIONS = ['html', 'id', 'url', 'us', 'de', 'api', 'href'];
|
|
31
|
+
// Saves a string with all css3 browser specific animation end event names.
|
|
32
|
+
export const ANIMATION_END_EVENT_NAMES = 'animationend webkitAnimationEnd oAnimationEnd MSAnimationEnd';
|
|
33
|
+
// String representation to object type name mapping.
|
|
34
|
+
export const CLASS_TO_TYPE_MAPPING = {
|
|
35
|
+
'[object Array]': 'array',
|
|
36
|
+
'[object Boolean]': 'boolean',
|
|
37
|
+
'[object Date]': 'date',
|
|
38
|
+
'[object Error]': 'error',
|
|
39
|
+
'[object Function]': 'function',
|
|
40
|
+
'[object Map]': 'map',
|
|
41
|
+
'[object Number]': 'number',
|
|
42
|
+
'[object Object]': 'object',
|
|
43
|
+
'[object RegExp]': 'regexp',
|
|
44
|
+
'[object Set]': 'set',
|
|
45
|
+
'[object String]': 'string'
|
|
46
|
+
};
|
|
47
|
+
// Saves a mapping from key codes to their corresponding name.
|
|
48
|
+
export const KEY_CODES = {
|
|
49
|
+
BACKSPACE: 8,
|
|
50
|
+
SPACE: 32,
|
|
51
|
+
TAB: 9,
|
|
52
|
+
DELETE: 46,
|
|
53
|
+
ENTER: 13,
|
|
54
|
+
COMMA: 188,
|
|
55
|
+
PERIOD: 190,
|
|
56
|
+
END: 35,
|
|
57
|
+
ESCAPE: 27,
|
|
58
|
+
F1: 112,
|
|
59
|
+
F2: 113,
|
|
60
|
+
F3: 114,
|
|
61
|
+
F4: 115,
|
|
62
|
+
F5: 116,
|
|
63
|
+
F6: 117,
|
|
64
|
+
F7: 118,
|
|
65
|
+
F8: 119,
|
|
66
|
+
F9: 120,
|
|
67
|
+
F10: 121,
|
|
68
|
+
F11: 122,
|
|
69
|
+
F12: 123,
|
|
70
|
+
HOME: 36,
|
|
71
|
+
NUMPAD_ADD: 107,
|
|
72
|
+
NUMPAD_SUBTRACT: 109,
|
|
73
|
+
NUMPAD_DECIMAL: 110,
|
|
74
|
+
NUMPAD_DIVIDE: 111,
|
|
75
|
+
NUMPAD_ENTER: 108,
|
|
76
|
+
NUMPAD_MULTIPLY: 106,
|
|
77
|
+
PAGE_UP: 33,
|
|
78
|
+
PAGE_DOWN: 34,
|
|
79
|
+
UP: 38,
|
|
80
|
+
DOWN: 40,
|
|
81
|
+
LEFT: 37,
|
|
82
|
+
RIGHT: 39
|
|
83
|
+
};
|
|
84
|
+
export const KEYBOARD_CODES = {
|
|
85
|
+
BACKSPACE: 'Backspace',
|
|
86
|
+
SPACE: 'Space',
|
|
87
|
+
TAB: 'Tab',
|
|
88
|
+
DELETE: 'Delete',
|
|
89
|
+
ENTER: 'Enter',
|
|
90
|
+
COMMA: 'Comma',
|
|
91
|
+
PERIOD: 'Period',
|
|
92
|
+
END: 'End',
|
|
93
|
+
ESCAPE: 'Escape',
|
|
94
|
+
F1: 'F1',
|
|
95
|
+
F2: 'F2',
|
|
96
|
+
F3: 'F3',
|
|
97
|
+
F4: 'F4',
|
|
98
|
+
F5: 'F5',
|
|
99
|
+
F6: 'F6',
|
|
100
|
+
F7: 'F7',
|
|
101
|
+
F8: 'F8',
|
|
102
|
+
F9: 'F9',
|
|
103
|
+
F10: 'F10',
|
|
104
|
+
F11: 'F111',
|
|
105
|
+
F12: 'F12',
|
|
106
|
+
HOME: 'Home',
|
|
107
|
+
NUMPAD_ADD: 'NumpadAdd',
|
|
108
|
+
NUMPAD_SUBTRACT: 'NumpadSubtract',
|
|
109
|
+
NUMPAD_DECIMAL: 'NumpadDecimal',
|
|
110
|
+
NUMPAD_DIVIDE: 'NumpadDivide',
|
|
111
|
+
NUMPAD_ENTER: 'NumpadEnter',
|
|
112
|
+
NUMPAD_MULTIPLY: 'NumpadMultiply',
|
|
113
|
+
PAGE_UP: 'PageUp',
|
|
114
|
+
PAGE_DOWN: 'PageUp',
|
|
115
|
+
UP: 'ArrowUp',
|
|
116
|
+
DOWN: 'ArrowDown',
|
|
117
|
+
LEFT: 'ArrowLeft',
|
|
118
|
+
RIGHT: 'ArrowUp'
|
|
119
|
+
};
|
|
120
|
+
export const LOCALES = [];
|
|
121
|
+
export const PLAIN_OBJECT_PROTOTYPES = [Object.prototype];
|
|
122
|
+
// A list of special regular expression symbols.
|
|
123
|
+
export const SPECIAL_REGEX_SEQUENCES = ['-', '[', ']', '(', ')', '^', '$', '*', '+', '.', '{', '}'];
|
|
124
|
+
// Saves a string with all css3 browser specific transition end event names.
|
|
125
|
+
export const TRANSITION_END_EVENT_NAMES = 'transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd';
|
|
126
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL2NvbnN0YW50cy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyAjIS91c3IvYmluL2VudiBiYWJlbC1ub2RlXG4vLyAtKi0gY29kaW5nOiB1dGYtOCAtKi1cbi8qKiBAbW9kdWxlIGNvbnN0YW50cyAqL1xuJ3VzZSBzdHJpY3QnXG4vKiAhXG4gICAgcmVnaW9uIGhlYWRlclxuICAgIFtQcm9qZWN0IHBhZ2VdKGh0dHBzOi8vdG9yYmVuLndlYnNpdGUvY2xpZW50bm9kZSlcblxuICAgIENvcHlyaWdodCBUb3JiZW4gU2lja2VydCAoaW5mb1tcIn5hdH5cIl10b3JiZW4ud2Vic2l0ZSkgMTYuMTIuMjAxMlxuXG4gICAgTGljZW5zZVxuICAgIC0tLS0tLS1cblxuICAgIFRoaXMgbGlicmFyeSB3cml0dGVuIGJ5IFRvcmJlbiBTaWNrZXJ0IHN0YW5kcyB1bmRlciBhIGNyZWF0aXZlIGNvbW1vbnNcbiAgICBuYW1pbmcgMy4wIHVucG9ydGVkIGxpY2Vuc2UuXG4gICAgU2VlIGh0dHBzOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS8zLjAvZGVlZC5kZVxuICAgIGVuZHJlZ2lvblxuKi9cbmltcG9ydCB0eXBlIHtFbmNvZGluZywgRmlyc3RQYXJhbWV0ZXJ9IGZyb20gJy4vdHlwZSdcblxuZXhwb3J0IHtMb2NrfSBmcm9tICcuL0xvY2snXG5leHBvcnQge1NlbWFwaG9yZX0gZnJvbSAnLi9TZW1hcGhvcmUnXG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0VOQ09ESU5HOiBFbmNvZGluZyA9ICd1dGY4J1xuZXhwb3J0IGNvbnN0IENMT1NFX0VWRU5UX05BTUVTID0gW1xuICAgICdjbG9zZScsICdleGl0JywgJ1NJR0lOVCcsICdTSUdURVJNJywgJ1NJR1FVSVQnLCAndW5jYXVnaHRFeGNlcHRpb24nXG5dIGFzIGNvbnN0XG5leHBvcnQgY29uc3QgQ09OU09MRV9NRVRIT0RTID0gW1xuICAgICdkZWJ1ZycsICdlcnJvcicsICdpbmZvJywgJ2xvZycsICd3YXJuJ1xuXSBhcyBjb25zdFxuZXhwb3J0IGNvbnN0IFZBTFVFX0NPUFlfU1lNQk9MID0gU3ltYm9sLmZvcignY2xpZW50bm9kZVZhbHVlJylcbmV4cG9ydCBjb25zdCBJR05PUkVfTlVMTF9BTkRfVU5ERUZJTkVEX1NZTUJPTCA9XG4gICAgU3ltYm9sLmZvcignY2xpZW50bm9kZUlnbm9yZU51bGxBbmRVbmRlZmluZWQnKVxuXG4vLyBMaXN0cyBhbGwga25vd24gYWJicmV2aWF0aW9uIGZvciBwcm9wZXIgY2FtZWwgY2FzZSB0byBkZWxpbWl0ZWQgYW5kIGJhY2tcbi8vIGNvbnZlcnNpb24uXG5leHBvcnQgY29uc3QgQUJCUkVWSUFUSU9OUzogQXJyYXk8c3RyaW5nPiA9IFtcbiAgICAnaHRtbCcsICdpZCcsICd1cmwnLCAndXMnLCAnZGUnLCAnYXBpJywgJ2hyZWYnXG5dIGFzIGNvbnN0XG4vLyBTYXZlcyBhIHN0cmluZyB3aXRoIGFsbCBjc3MzIGJyb3dzZXIgc3BlY2lmaWMgYW5pbWF0aW9uIGVuZCBldmVudCBuYW1lcy5cbmV4cG9ydCBjb25zdCBBTklNQVRJT05fRU5EX0VWRU5UX05BTUVTID1cbiAgICAnYW5pbWF0aW9uZW5kIHdlYmtpdEFuaW1hdGlvbkVuZCBvQW5pbWF0aW9uRW5kIE1TQW5pbWF0aW9uRW5kJ1xuLy8gU3RyaW5nIHJlcHJlc2VudGF0aW9uIHRvIG9iamVjdCB0eXBlIG5hbWUgbWFwcGluZy5cbmV4cG9ydCBjb25zdCBDTEFTU19UT19UWVBFX01BUFBJTkcgPSB7XG4gICAgJ1tvYmplY3QgQXJyYXldJzogJ2FycmF5JyxcbiAgICAnW29iamVjdCBCb29sZWFuXSc6ICdib29sZWFuJyxcbiAgICAnW29iamVjdCBEYXRlXSc6ICdkYXRlJyxcbiAgICAnW29iamVjdCBFcnJvcl0nOiAnZXJyb3InLFxuICAgICdbb2JqZWN0IEZ1bmN0aW9uXSc6ICdmdW5jdGlvbicsXG4gICAgJ1tvYmplY3QgTWFwXSc6ICdtYXAnLFxuICAgICdbb2JqZWN0IE51bWJlcl0nOiAnbnVtYmVyJyxcbiAgICAnW29iamVjdCBPYmplY3RdJzogJ29iamVjdCcsXG4gICAgJ1tvYmplY3QgUmVnRXhwXSc6ICdyZWdleHAnLFxuICAgICdbb2JqZWN0IFNldF0nOiAnc2V0JyxcbiAgICAnW29iamVjdCBTdHJpbmddJzogJ3N0cmluZydcbn0gYXMgY29uc3Rcbi8vIFNhdmVzIGEgbWFwcGluZyBmcm9tIGtleSBjb2RlcyB0byB0aGVpciBjb3JyZXNwb25kaW5nIG5hbWUuXG5leHBvcnQgY29uc3QgS0VZX0NPREVTID0ge1xuICAgIEJBQ0tTUEFDRTogOCxcbiAgICBTUEFDRTogMzIsXG4gICAgVEFCOiA5LFxuXG4gICAgREVMRVRFOiA0NixcbiAgICBFTlRFUjogMTMsXG5cbiAgICBDT01NQTogMTg4LFxuICAgIFBFUklPRDogMTkwLFxuXG4gICAgRU5EOiAzNSxcbiAgICBFU0NBUEU6IDI3LFxuXG4gICAgRjE6IDExMixcbiAgICBGMjogMTEzLFxuICAgIEYzOiAxMTQsXG4gICAgRjQ6IDExNSxcbiAgICBGNTogMTE2LFxuICAgIEY2OiAxMTcsXG4gICAgRjc6IDExOCxcbiAgICBGODogMTE5LFxuICAgIEY5OiAxMjAsXG4gICAgRjEwOiAxMjEsXG4gICAgRjExOiAxMjIsXG4gICAgRjEyOiAxMjMsXG5cbiAgICBIT01FOiAzNixcblxuICAgIE5VTVBBRF9BREQ6IDEwNyxcbiAgICBOVU1QQURfU1VCVFJBQ1Q6IDEwOSxcbiAgICBOVU1QQURfREVDSU1BTDogMTEwLFxuICAgIE5VTVBBRF9ESVZJREU6IDExMSxcbiAgICBOVU1QQURfRU5URVI6IDEwOCxcbiAgICBOVU1QQURfTVVMVElQTFk6IDEwNixcblxuICAgIFBBR0VfVVA6IDMzLFxuICAgIFBBR0VfRE9XTjogMzQsXG5cbiAgICBVUDogMzgsXG4gICAgRE9XTjogNDAsXG4gICAgTEVGVDogMzcsXG4gICAgUklHSFQ6IDM5XG59IGFzIGNvbnN0XG5leHBvcnQgY29uc3QgS0VZQk9BUkRfQ09ERVMgPSB7XG4gICAgQkFDS1NQQUNFOiAnQmFja3NwYWNlJyxcbiAgICBTUEFDRTogJ1NwYWNlJyxcbiAgICBUQUI6ICdUYWInLFxuXG4gICAgREVMRVRFOiAnRGVsZXRlJyxcbiAgICBFTlRFUjogJ0VudGVyJyxcblxuICAgIENPTU1BOiAnQ29tbWEnLFxuICAgIFBFUklPRDogJ1BlcmlvZCcsXG5cbiAgICBFTkQ6ICdFbmQnLFxuICAgIEVTQ0FQRTogJ0VzY2FwZScsXG5cbiAgICBGMTogJ0YxJyxcbiAgICBGMjogJ0YyJyxcbiAgICBGMzogJ0YzJyxcbiAgICBGNDogJ0Y0JyxcbiAgICBGNTogJ0Y1JyxcbiAgICBGNjogJ0Y2JyxcbiAgICBGNzogJ0Y3JyxcbiAgICBGODogJ0Y4JyxcbiAgICBGOTogJ0Y5JyxcbiAgICBGMTA6ICdGMTAnLFxuICAgIEYxMTogJ0YxMTEnLFxuICAgIEYxMjogJ0YxMicsXG5cbiAgICBIT01FOiAnSG9tZScsXG5cbiAgICBOVU1QQURfQUREOiAnTnVtcGFkQWRkJyxcbiAgICBOVU1QQURfU1VCVFJBQ1Q6ICdOdW1wYWRTdWJ0cmFjdCcsXG4gICAgTlVNUEFEX0RFQ0lNQUw6ICdOdW1wYWREZWNpbWFsJyxcbiAgICBOVU1QQURfRElWSURFOiAnTnVtcGFkRGl2aWRlJyxcbiAgICBOVU1QQURfRU5URVI6ICdOdW1wYWRFbnRlcicsXG4gICAgTlVNUEFEX01VTFRJUExZOiAnTnVtcGFkTXVsdGlwbHknLFxuXG4gICAgUEFHRV9VUDogJ1BhZ2VVcCcsXG4gICAgUEFHRV9ET1dOOiAnUGFnZVVwJyxcblxuICAgIFVQOiAnQXJyb3dVcCcsXG4gICAgRE9XTjogJ0Fycm93RG93bicsXG4gICAgTEVGVDogJ0Fycm93TGVmdCcsXG4gICAgUklHSFQ6ICdBcnJvd1VwJ1xufSBhcyBjb25zdFxuXG5leHBvcnQgY29uc3QgTE9DQUxFUzogQXJyYXk8c3RyaW5nPiA9IFtdXG5leHBvcnQgY29uc3QgUExBSU5fT0JKRUNUX1BST1RPVFlQRVM6IEFycmF5PEZpcnN0UGFyYW1ldGVyPFxuICAgIHR5cGVvZiBPYmplY3QuZ2V0UHJvdG90eXBlT2Zcbj4+ID0gW09iamVjdC5wcm90b3R5cGVdXG4vLyBBIGxpc3Qgb2Ygc3BlY2lhbCByZWd1bGFyIGV4cHJlc3Npb24gc3ltYm9scy5cbmV4cG9ydCBjb25zdCBTUEVDSUFMX1JFR0VYX1NFUVVFTkNFUzogQXJyYXk8c3RyaW5nPiA9IFtcbiAgICAnLScsICdbJywgJ10nLCAnKCcsICcpJywgJ14nLCAnJCcsICcqJywgJysnLCAnLicsICd7JywgJ30nXG5dIGFzIGNvbnN0XG4vLyBTYXZlcyBhIHN0cmluZyB3aXRoIGFsbCBjc3MzIGJyb3dzZXIgc3BlY2lmaWMgdHJhbnNpdGlvbiBlbmQgZXZlbnQgbmFtZXMuXG5leHBvcnQgY29uc3QgVFJBTlNJVElPTl9FTkRfRVZFTlRfTkFNRVMgPVxuICAgICd0cmFuc2l0aW9uZW5kIHdlYmtpdFRyYW5zaXRpb25FbmQgb1RyYW5zaXRpb25FbmQgTVNUcmFuc2l0aW9uRW5kJ1xuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQSxZQUFZOztBQUNaO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFHQSxTQUFRLElBQUk7QUFDWixTQUFRLFNBQVM7QUFFakIsT0FBTyxNQUFNLGdCQUEwQixHQUFHLE1BQU07QUFDaEQsT0FBTyxNQUFNLGlCQUFpQixHQUFHLENBQzdCLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsbUJBQW1CLENBQzlEO0FBQ1YsT0FBTyxNQUFNLGVBQWUsR0FBRyxDQUMzQixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUNqQztBQUNWLE9BQU8sTUFBTSxpQkFBaUIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDO0FBQzlELE9BQU8sTUFBTSxnQ0FBZ0MsR0FDekMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxrQ0FBa0MsQ0FBQzs7QUFFbEQ7QUFDQTtBQUNBLE9BQU8sTUFBTSxhQUE0QixHQUFHLENBQ3hDLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FDeEM7QUFDVjtBQUNBLE9BQU8sTUFBTSx5QkFBeUIsR0FDbEMsOERBQThEO0FBQ2xFO0FBQ0EsT0FBTyxNQUFNLHFCQUFxQixHQUFHO0VBQ2pDLGdCQUFnQixFQUFFLE9BQU87RUFDekIsa0JBQWtCLEVBQUUsU0FBUztFQUM3QixlQUFlLEVBQUUsTUFBTTtFQUN2QixnQkFBZ0IsRUFBRSxPQUFPO0VBQ3pCLG1CQUFtQixFQUFFLFVBQVU7RUFDL0IsY0FBYyxFQUFFLEtBQUs7RUFDckIsaUJBQWlCLEVBQUUsUUFBUTtFQUMzQixpQkFBaUIsRUFBRSxRQUFRO0VBQzNCLGlCQUFpQixFQUFFLFFBQVE7RUFDM0IsY0FBYyxFQUFFLEtBQUs7RUFDckIsaUJBQWlCLEVBQUU7QUFDdkIsQ0FBVTtBQUNWO0FBQ0EsT0FBTyxNQUFNLFNBQVMsR0FBRztFQUNyQixTQUFTLEVBQUUsQ0FBQztFQUNaLEtBQUssRUFBRSxFQUFFO0VBQ1QsR0FBRyxFQUFFLENBQUM7RUFFTixNQUFNLEVBQUUsRUFBRTtFQUNWLEtBQUssRUFBRSxFQUFFO0VBRVQsS0FBSyxFQUFFLEdBQUc7RUFDVixNQUFNLEVBQUUsR0FBRztFQUVYLEdBQUcsRUFBRSxFQUFFO0VBQ1AsTUFBTSxFQUFFLEVBQUU7RUFFVixFQUFFLEVBQUUsR0FBRztFQUNQLEVBQUUsRUFBRSxHQUFHO0VBQ1AsRUFBRSxFQUFFLEdBQUc7RUFDUCxFQUFFLEVBQUUsR0FBRztFQUNQLEVBQUUsRUFBRSxHQUFHO0VBQ1AsRUFBRSxFQUFFLEdBQUc7RUFDUCxFQUFFLEVBQUUsR0FBRztFQUNQLEVBQUUsRUFBRSxHQUFHO0VBQ1AsRUFBRSxFQUFFLEdBQUc7RUFDUCxHQUFHLEVBQUUsR0FBRztFQUNSLEdBQUcsRUFBRSxHQUFHO0VBQ1IsR0FBRyxFQUFFLEdBQUc7RUFFUixJQUFJLEVBQUUsRUFBRTtFQUVSLFVBQVUsRUFBRSxHQUFHO0VBQ2YsZUFBZSxFQUFFLEdBQUc7RUFDcEIsY0FBYyxFQUFFLEdBQUc7RUFDbkIsYUFBYSxFQUFFLEdBQUc7RUFDbEIsWUFBWSxFQUFFLEdBQUc7RUFDakIsZUFBZSxFQUFFLEdBQUc7RUFFcEIsT0FBTyxFQUFFLEVBQUU7RUFDWCxTQUFTLEVBQUUsRUFBRTtFQUViLEVBQUUsRUFBRSxFQUFFO0VBQ04sSUFBSSxFQUFFLEVBQUU7RUFDUixJQUFJLEVBQUUsRUFBRTtFQUNSLEtBQUssRUFBRTtBQUNYLENBQVU7QUFDVixPQUFPLE1BQU0sY0FBYyxHQUFHO0VBQzFCLFNBQVMsRUFBRSxXQUFXO0VBQ3RCLEtBQUssRUFBRSxPQUFPO0VBQ2QsR0FBRyxFQUFFLEtBQUs7RUFFVixNQUFNLEVBQUUsUUFBUTtFQUNoQixLQUFLLEVBQUUsT0FBTztFQUVkLEtBQUssRUFBRSxPQUFPO0VBQ2QsTUFBTSxFQUFFLFFBQVE7RUFFaEIsR0FBRyxFQUFFLEtBQUs7RUFDVixNQUFNLEVBQUUsUUFBUTtFQUVoQixFQUFFLEVBQUUsSUFBSTtFQUNSLEVBQUUsRUFBRSxJQUFJO0VBQ1IsRUFBRSxFQUFFLElBQUk7RUFDUixFQUFFLEVBQUUsSUFBSTtFQUNSLEVBQUUsRUFBRSxJQUFJO0VBQ1IsRUFBRSxFQUFFLElBQUk7RUFDUixFQUFFLEVBQUUsSUFBSTtFQUNSLEVBQUUsRUFBRSxJQUFJO0VBQ1IsRUFBRSxFQUFFLElBQUk7RUFDUixHQUFHLEVBQUUsS0FBSztFQUNWLEdBQUcsRUFBRSxNQUFNO0VBQ1gsR0FBRyxFQUFFLEtBQUs7RUFFVixJQUFJLEVBQUUsTUFBTTtFQUVaLFVBQVUsRUFBRSxXQUFXO0VBQ3ZCLGVBQWUsRUFBRSxnQkFBZ0I7RUFDakMsY0FBYyxFQUFFLGVBQWU7RUFDL0IsYUFBYSxFQUFFLGNBQWM7RUFDN0IsWUFBWSxFQUFFLGFBQWE7RUFDM0IsZUFBZSxFQUFFLGdCQUFnQjtFQUVqQyxPQUFPLEVBQUUsUUFBUTtFQUNqQixTQUFTLEVBQUUsUUFBUTtFQUVuQixFQUFFLEVBQUUsU0FBUztFQUNiLElBQUksRUFBRSxXQUFXO0VBQ2pCLElBQUksRUFBRSxXQUFXO0VBQ2pCLEtBQUssRUFBRTtBQUNYLENBQVU7QUFFVixPQUFPLE1BQU0sT0FBc0IsR0FBRyxFQUFFO0FBQ3hDLE9BQU8sTUFBTSx1QkFFWCxHQUFHLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQztBQUN2QjtBQUNBLE9BQU8sTUFBTSx1QkFBc0MsR0FBRyxDQUNsRCxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FDcEQ7QUFDVjtBQUNBLE9BQU8sTUFBTSwwQkFBMEIsR0FDbkMsa0VBQWtFIiwiaWdub3JlTGlzdCI6W119
|
package/dist/context.js
CHANGED
|
@@ -1 +1,40 @@
|
|
|
1
|
-
|
|
1
|
+
// #!/usr/bin/env babel-node
|
|
2
|
+
// -*- coding: utf-8 -*-
|
|
3
|
+
/** @module context */
|
|
4
|
+
'use strict';
|
|
5
|
+
|
|
6
|
+
/* !
|
|
7
|
+
region header
|
|
8
|
+
[Project page](https://torben.website/clientnode)
|
|
9
|
+
|
|
10
|
+
Copyright Torben Sickert (info["~at~"]torben.website) 16.12.2012
|
|
11
|
+
|
|
12
|
+
License
|
|
13
|
+
-------
|
|
14
|
+
|
|
15
|
+
This library written by Torben Sickert stands under a creative commons
|
|
16
|
+
naming 3.0 unported license.
|
|
17
|
+
See https://creativecommons.org/licenses/by/3.0/deed.de
|
|
18
|
+
endregion
|
|
19
|
+
*/
|
|
20
|
+
import { CONSOLE_METHODS } from "./constants.js";
|
|
21
|
+
import { determineGlobalContext, optionalImport, optionalRequire } from "./require.js";
|
|
22
|
+
export let globalContext = determineGlobalContext();
|
|
23
|
+
export const setGlobalContext = context => {
|
|
24
|
+
globalContext = context;
|
|
25
|
+
};
|
|
26
|
+
globalContext.fetch = globalContext.fetch ? globalContext.fetch.bind(globalContext) : optionalRequire('node-fetch')?.default ?? ((...parameters) => optionalImport(/* webpackIgnore: true */'node-fetch').then(module => module.default(...parameters)));
|
|
27
|
+
export const MAXIMAL_NUMBER_OF_ITERATIONS = {
|
|
28
|
+
value: 100
|
|
29
|
+
};
|
|
30
|
+
// A no-op dummy function.
|
|
31
|
+
export const NOOP = () => {
|
|
32
|
+
// Do nothing.
|
|
33
|
+
};
|
|
34
|
+
export const mockConsole = () => {
|
|
35
|
+
// Avoid errors in browsers that lack a console.
|
|
36
|
+
if (!Object.prototype.hasOwnProperty.call(globalContext, 'console')) globalContext.console = {};
|
|
37
|
+
if (!globalContext.console) globalContext.console = {};
|
|
38
|
+
for (const methodName of CONSOLE_METHODS) if (!(methodName in globalContext.console)) globalContext.console[methodName] = NOOP;
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL2NvbnRleHQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gIyEvdXNyL2Jpbi9lbnYgYmFiZWwtbm9kZVxuLy8gLSotIGNvZGluZzogdXRmLTggLSotXG4vKiogQG1vZHVsZSBjb250ZXh0ICovXG4ndXNlIHN0cmljdCdcbi8qICFcbiAgICByZWdpb24gaGVhZGVyXG4gICAgW1Byb2plY3QgcGFnZV0oaHR0cHM6Ly90b3JiZW4ud2Vic2l0ZS9jbGllbnRub2RlKVxuXG4gICAgQ29weXJpZ2h0IFRvcmJlbiBTaWNrZXJ0IChpbmZvW1wifmF0flwiXXRvcmJlbi53ZWJzaXRlKSAxNi4xMi4yMDEyXG5cbiAgICBMaWNlbnNlXG4gICAgLS0tLS0tLVxuXG4gICAgVGhpcyBsaWJyYXJ5IHdyaXR0ZW4gYnkgVG9yYmVuIFNpY2tlcnQgc3RhbmRzIHVuZGVyIGEgY3JlYXRpdmUgY29tbW9uc1xuICAgIG5hbWluZyAzLjAgdW5wb3J0ZWQgbGljZW5zZS5cbiAgICBTZWUgaHR0cHM6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL2xpY2Vuc2VzL2J5LzMuMC9kZWVkLmRlXG4gICAgZW5kcmVnaW9uXG4qL1xuaW1wb3J0IHR5cGUge0FueUZ1bmN0aW9uLCBNYXBwaW5nfSBmcm9tICcuL3R5cGUnXG5cbmltcG9ydCB7Q09OU09MRV9NRVRIT0RTfSBmcm9tICcuL2NvbnN0YW50cydcbmltcG9ydCB7XG4gICAgZGV0ZXJtaW5lR2xvYmFsQ29udGV4dCwgb3B0aW9uYWxJbXBvcnQsIG9wdGlvbmFsUmVxdWlyZVxufSBmcm9tICcuL3JlcXVpcmUnXG5cbmV4cG9ydCBsZXQgZ2xvYmFsQ29udGV4dCA9IGRldGVybWluZUdsb2JhbENvbnRleHQoKVxuZXhwb3J0IGNvbnN0IHNldEdsb2JhbENvbnRleHQgPSAoY29udGV4dDogdHlwZW9mIGdsb2JhbFRoaXMpID0+IHtcbiAgICBnbG9iYWxDb250ZXh0ID0gY29udGV4dFxufVxuXG5nbG9iYWxDb250ZXh0LmZldGNoID1cbiAgICBnbG9iYWxDb250ZXh0LmZldGNoID9cbiAgICAgICAgZ2xvYmFsQ29udGV4dC5mZXRjaC5iaW5kKGdsb2JhbENvbnRleHQpIDpcbiAgICAgICAgb3B0aW9uYWxSZXF1aXJlPHtkZWZhdWx0OiB0eXBlb2YgZmV0Y2h9Pignbm9kZS1mZXRjaCcpPy5kZWZhdWx0ID8/XG4gICAgICAgICgoLi4ucGFyYW1ldGVyczogUGFyYW1ldGVyczx0eXBlb2YgZmV0Y2g+KTogUmV0dXJuVHlwZTx0eXBlb2YgZmV0Y2g+ID0+XG4gICAgICAgICAgICBvcHRpb25hbEltcG9ydCgvKiB3ZWJwYWNrSWdub3JlOiB0cnVlICovICdub2RlLWZldGNoJylcbiAgICAgICAgICAgICAgICAudGhlbigobW9kdWxlOiB1bmtub3duKTogUmV0dXJuVHlwZTx0eXBlb2YgZmV0Y2g+ID0+XG4gICAgICAgICAgICAgICAgICAgIChtb2R1bGUgYXMge2RlZmF1bHQ6IHR5cGVvZiBmZXRjaH0pLmRlZmF1bHQoXG4gICAgICAgICAgICAgICAgICAgICAgICAuLi5wYXJhbWV0ZXJzXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICApXG4gICAgICAgIClcblxuZXhwb3J0IGNvbnN0IE1BWElNQUxfTlVNQkVSX09GX0lURVJBVElPTlMgPSB7dmFsdWU6IDEwMH1cbi8vIEEgbm8tb3AgZHVtbXkgZnVuY3Rpb24uXG5leHBvcnQgY29uc3QgTk9PUDogQW55RnVuY3Rpb24gPSAoKSA9PiB7XG4gICAgLy8gRG8gbm90aGluZy5cbn1cbmV4cG9ydCBjb25zdCBtb2NrQ29uc29sZSA9ICgpID0+IHtcbiAgICAvLyBBdm9pZCBlcnJvcnMgaW4gYnJvd3NlcnMgdGhhdCBsYWNrIGEgY29uc29sZS5cbiAgICBpZiAoIU9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChnbG9iYWxDb250ZXh0LCAnY29uc29sZScpKVxuICAgICAgICAoZ2xvYmFsQ29udGV4dCBhcyB1bmtub3duIGFzIHtjb25zb2xlOiBNYXBwaW5nPEFueUZ1bmN0aW9uPn0pXG4gICAgICAgICAgICAuY29uc29sZSA9IHt9XG5cbiAgICBpZiAoIWdsb2JhbENvbnRleHQuY29uc29sZSlcbiAgICAgICAgZ2xvYmFsQ29udGV4dC5jb25zb2xlID0ge30gYXMgQ29uc29sZVxuXG4gICAgZm9yIChjb25zdCBtZXRob2ROYW1lIG9mIENPTlNPTEVfTUVUSE9EUylcbiAgICAgICAgaWYgKCEobWV0aG9kTmFtZSBpbiBnbG9iYWxDb250ZXh0LmNvbnNvbGUpKVxuICAgICAgICAgICAgZ2xvYmFsQ29udGV4dC5jb25zb2xlW21ldGhvZE5hbWUgYXMgJ2xvZyddID1cbiAgICAgICAgICAgICAgICBOT09QIGFzIENvbnNvbGVbJ2xvZyddXG59XG4iXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0E7QUFDQTtBQUNBLFlBQVk7O0FBQ1o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUdBLFNBQVEsZUFBZTtBQUN2QixTQUNJLHNCQUFzQixFQUFFLGNBQWMsRUFBRSxlQUFlO0FBRzNELE9BQU8sSUFBSSxhQUFhLEdBQUcsc0JBQXNCLENBQUMsQ0FBQztBQUNuRCxPQUFPLE1BQU0sZ0JBQWdCLEdBQUksT0FBMEIsSUFBSztFQUM1RCxhQUFhLEdBQUcsT0FBTztBQUMzQixDQUFDO0FBRUQsYUFBYSxDQUFDLEtBQUssR0FDZixhQUFhLENBQUMsS0FBSyxHQUNmLGFBQWEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUN2QyxlQUFlLENBQTBCLFlBQVksQ0FBQyxFQUFFLE9BQU8sS0FDOUQsQ0FBQyxHQUFHLFVBQW9DLEtBQ3JDLGNBQWMsQ0FBQyx5QkFBMEIsWUFBWSxDQUFDLENBQ2pELElBQUksQ0FBRSxNQUFlLElBQ2pCLE1BQU0sQ0FBNkIsT0FBTyxDQUN2QyxHQUFHLFVBQ1AsQ0FDSixDQUFDLENBQ1I7QUFFVCxPQUFPLE1BQU0sNEJBQTRCLEdBQUc7RUFBQyxLQUFLLEVBQUU7QUFBRyxDQUFDO0FBQ3hEO0FBQ0EsT0FBTyxNQUFNLElBQWlCLEdBQUcsTUFBTTtFQUNuQztBQUFBLENBQ0g7QUFDRCxPQUFPLE1BQU0sV0FBVyxHQUFHLE1BQU07RUFDN0I7RUFDQSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxTQUFTLENBQUMsRUFDOUQsYUFBYSxDQUNULE9BQU8sR0FBRyxDQUFDLENBQUM7RUFFckIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQ3RCLGFBQWEsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFZO0VBRXpDLEtBQUssTUFBTSxVQUFVLElBQUksZUFBZSxFQUNwQyxJQUFJLEVBQUUsVUFBVSxJQUFJLGFBQWEsQ0FBQyxPQUFPLENBQUMsRUFDdEMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQVUsR0FDdEMsSUFBc0I7QUFDdEMsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
|
package/dist/cookie.js
CHANGED
|
@@ -1 +1,84 @@
|
|
|
1
|
-
|
|
1
|
+
// #!/usr/bin/env babel-node
|
|
2
|
+
// -*- coding: utf-8 -*-
|
|
3
|
+
/** @module cookie */
|
|
4
|
+
'use strict';
|
|
5
|
+
|
|
6
|
+
/* !
|
|
7
|
+
region header
|
|
8
|
+
[Project page](https://torben.website/clientnode)
|
|
9
|
+
|
|
10
|
+
Copyright Torben Sickert (info["~at~"]torben.website) 16.12.2012
|
|
11
|
+
|
|
12
|
+
License
|
|
13
|
+
-------
|
|
14
|
+
|
|
15
|
+
This library written by Torben Sickert stands under a creative commons
|
|
16
|
+
naming 3.0 unported license.
|
|
17
|
+
See https://creativecommons.org/licenses/by/3.0/deed.de
|
|
18
|
+
endregion
|
|
19
|
+
*/
|
|
20
|
+
import { globalContext } from "./context.js";
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Deletes a cookie value by given name.
|
|
24
|
+
* @param name - Name to identify requested value.
|
|
25
|
+
*/
|
|
26
|
+
export const deleteCookie = name => {
|
|
27
|
+
if (globalContext.document) globalContext.document.cookie = `${name}=; Max-Age=-99999999;`;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Gets a cookie value by given name.
|
|
31
|
+
* @param name - Name to identify requested value.
|
|
32
|
+
* @returns Requested value.
|
|
33
|
+
*/
|
|
34
|
+
export const getCookie = name => {
|
|
35
|
+
if (globalContext.document) {
|
|
36
|
+
const key = `${name}=`;
|
|
37
|
+
const decodedCookie = decodeURIComponent(globalContext.document.cookie);
|
|
38
|
+
for (let date of decodedCookie.split(';')) {
|
|
39
|
+
while (date.startsWith(' ')) date = date.substring(1);
|
|
40
|
+
if (date.startsWith(key)) return date.substring(key.length, date.length);
|
|
41
|
+
}
|
|
42
|
+
return '';
|
|
43
|
+
}
|
|
44
|
+
return null;
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* Sets a cookie key-value-pair.
|
|
48
|
+
* @param name - Name to identify given value.
|
|
49
|
+
* @param value - Value to set.
|
|
50
|
+
* @param givenOptions - Cookie set options.
|
|
51
|
+
* @param givenOptions.domain - Domain to reference with given key-value-pair.
|
|
52
|
+
* @param givenOptions.httpOnly - Indicates if this cookie should be accessible
|
|
53
|
+
* from client or not.
|
|
54
|
+
* @param givenOptions.minimal - Set only minimum number of options.
|
|
55
|
+
* @param givenOptions.numberOfDaysUntilExpiration - Number of days until given
|
|
56
|
+
* key shouldn't be deleted.
|
|
57
|
+
* @param givenOptions.path - Path to reference with given key-value-pair.
|
|
58
|
+
* @param givenOptions.sameSite - Set same site policy to "Lax", "None" or
|
|
59
|
+
* "Strict".
|
|
60
|
+
* @param givenOptions.secure - Indicates if this cookie is only valid for
|
|
61
|
+
* "https" connections.
|
|
62
|
+
* @returns A boolean indicating whether cookie could be set or not.
|
|
63
|
+
*/
|
|
64
|
+
export const setCookie = (name, value, givenOptions = {}) => {
|
|
65
|
+
if (globalContext.document) {
|
|
66
|
+
const options = {
|
|
67
|
+
domain: '',
|
|
68
|
+
httpOnly: false,
|
|
69
|
+
minimal: false,
|
|
70
|
+
numberOfDaysUntilExpiration: 365,
|
|
71
|
+
path: '/',
|
|
72
|
+
sameSite: 'Lax',
|
|
73
|
+
secure: true,
|
|
74
|
+
...givenOptions
|
|
75
|
+
};
|
|
76
|
+
const now = new Date();
|
|
77
|
+
now.setTime(now.getTime() + options.numberOfDaysUntilExpiration * 24 * 60 * 60 * 1000);
|
|
78
|
+
if (options.domain === '' && globalContext.location?.hostname) options.domain = globalContext.location.hostname;
|
|
79
|
+
globalContext.document.cookie = `${name}=${value}` + (options.minimal ? '' : `;Expires="${now.toUTCString()}` + `;Path=${options.path}` + `;Domain=${options.domain}` + (options.sameSite ? `;SameSite=${options.sameSite}` : '') + (options.secure ? ';Secure' : '') + (options.httpOnly ? ';HttpOnly' : ''));
|
|
80
|
+
return true;
|
|
81
|
+
}
|
|
82
|
+
return false;
|
|
83
|
+
};
|
|
84
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL2Nvb2tpZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyAjIS91c3IvYmluL2VudiBiYWJlbC1ub2RlXG4vLyAtKi0gY29kaW5nOiB1dGYtOCAtKi1cbi8qKiBAbW9kdWxlIGNvb2tpZSAqL1xuJ3VzZSBzdHJpY3QnXG4vKiAhXG4gICAgcmVnaW9uIGhlYWRlclxuICAgIFtQcm9qZWN0IHBhZ2VdKGh0dHBzOi8vdG9yYmVuLndlYnNpdGUvY2xpZW50bm9kZSlcblxuICAgIENvcHlyaWdodCBUb3JiZW4gU2lja2VydCAoaW5mb1tcIn5hdH5cIl10b3JiZW4ud2Vic2l0ZSkgMTYuMTIuMjAxMlxuXG4gICAgTGljZW5zZVxuICAgIC0tLS0tLS1cblxuICAgIFRoaXMgbGlicmFyeSB3cml0dGVuIGJ5IFRvcmJlbiBTaWNrZXJ0IHN0YW5kcyB1bmRlciBhIGNyZWF0aXZlIGNvbW1vbnNcbiAgICBuYW1pbmcgMy4wIHVucG9ydGVkIGxpY2Vuc2UuXG4gICAgU2VlIGh0dHBzOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS8zLjAvZGVlZC5kZVxuICAgIGVuZHJlZ2lvblxuKi9cbmltcG9ydCB0eXBlIHtDb29raWVPcHRpb25zfSBmcm9tICcuL3R5cGUnXG5cbmltcG9ydCB7Z2xvYmFsQ29udGV4dH0gZnJvbSAnLi9jb250ZXh0J1xuXG4vKipcbiAqIERlbGV0ZXMgYSBjb29raWUgdmFsdWUgYnkgZ2l2ZW4gbmFtZS5cbiAqIEBwYXJhbSBuYW1lIC0gTmFtZSB0byBpZGVudGlmeSByZXF1ZXN0ZWQgdmFsdWUuXG4gKi9cbmV4cG9ydCBjb25zdCBkZWxldGVDb29raWUgPSAobmFtZTogc3RyaW5nKTogdm9pZCA9PiB7XG4gICAgaWYgKGdsb2JhbENvbnRleHQuZG9jdW1lbnQpXG4gICAgICAgIGdsb2JhbENvbnRleHQuZG9jdW1lbnQuY29va2llID0gYCR7bmFtZX09OyBNYXgtQWdlPS05OTk5OTk5OTtgXG59XG4vKipcbiAqIEdldHMgYSBjb29raWUgdmFsdWUgYnkgZ2l2ZW4gbmFtZS5cbiAqIEBwYXJhbSBuYW1lIC0gTmFtZSB0byBpZGVudGlmeSByZXF1ZXN0ZWQgdmFsdWUuXG4gKiBAcmV0dXJucyBSZXF1ZXN0ZWQgdmFsdWUuXG4gKi9cbmV4cG9ydCBjb25zdCBnZXRDb29raWUgPSAobmFtZTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCA9PiB7XG4gICAgaWYgKGdsb2JhbENvbnRleHQuZG9jdW1lbnQpIHtcbiAgICAgICAgY29uc3Qga2V5ID0gYCR7bmFtZX09YFxuICAgICAgICBjb25zdCBkZWNvZGVkQ29va2llOiBzdHJpbmcgPVxuICAgICAgICAgICAgZGVjb2RlVVJJQ29tcG9uZW50KGdsb2JhbENvbnRleHQuZG9jdW1lbnQuY29va2llKVxuICAgICAgICBmb3IgKGxldCBkYXRlIG9mIGRlY29kZWRDb29raWUuc3BsaXQoJzsnKSkge1xuICAgICAgICAgICAgd2hpbGUgKGRhdGUuc3RhcnRzV2l0aCgnICcpKVxuICAgICAgICAgICAgICAgIGRhdGUgPSBkYXRlLnN1YnN0cmluZygxKVxuXG4gICAgICAgICAgICBpZiAoZGF0ZS5zdGFydHNXaXRoKGtleSkpXG4gICAgICAgICAgICAgICAgcmV0dXJuIGRhdGUuc3Vic3RyaW5nKGtleS5sZW5ndGgsIGRhdGUubGVuZ3RoKVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuICcnXG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGxcbn1cbi8qKlxuICogU2V0cyBhIGNvb2tpZSBrZXktdmFsdWUtcGFpci5cbiAqIEBwYXJhbSBuYW1lIC0gTmFtZSB0byBpZGVudGlmeSBnaXZlbiB2YWx1ZS5cbiAqIEBwYXJhbSB2YWx1ZSAtIFZhbHVlIHRvIHNldC5cbiAqIEBwYXJhbSBnaXZlbk9wdGlvbnMgLSBDb29raWUgc2V0IG9wdGlvbnMuXG4gKiBAcGFyYW0gZ2l2ZW5PcHRpb25zLmRvbWFpbiAtIERvbWFpbiB0byByZWZlcmVuY2Ugd2l0aCBnaXZlbiBrZXktdmFsdWUtcGFpci5cbiAqIEBwYXJhbSBnaXZlbk9wdGlvbnMuaHR0cE9ubHkgLSBJbmRpY2F0ZXMgaWYgdGhpcyBjb29raWUgc2hvdWxkIGJlIGFjY2Vzc2libGVcbiAqIGZyb20gY2xpZW50IG9yIG5vdC5cbiAqIEBwYXJhbSBnaXZlbk9wdGlvbnMubWluaW1hbCAtIFNldCBvbmx5IG1pbmltdW0gbnVtYmVyIG9mIG9wdGlvbnMuXG4gKiBAcGFyYW0gZ2l2ZW5PcHRpb25zLm51bWJlck9mRGF5c1VudGlsRXhwaXJhdGlvbiAtIE51bWJlciBvZiBkYXlzIHVudGlsIGdpdmVuXG4gKiBrZXkgc2hvdWxkbid0IGJlIGRlbGV0ZWQuXG4gKiBAcGFyYW0gZ2l2ZW5PcHRpb25zLnBhdGggLSBQYXRoIHRvIHJlZmVyZW5jZSB3aXRoIGdpdmVuIGtleS12YWx1ZS1wYWlyLlxuICogQHBhcmFtIGdpdmVuT3B0aW9ucy5zYW1lU2l0ZSAtIFNldCBzYW1lIHNpdGUgcG9saWN5IHRvIFwiTGF4XCIsIFwiTm9uZVwiIG9yXG4gKiBcIlN0cmljdFwiLlxuICogQHBhcmFtIGdpdmVuT3B0aW9ucy5zZWN1cmUgLSBJbmRpY2F0ZXMgaWYgdGhpcyBjb29raWUgaXMgb25seSB2YWxpZCBmb3JcbiAqIFwiaHR0cHNcIiBjb25uZWN0aW9ucy5cbiAqIEByZXR1cm5zIEEgYm9vbGVhbiBpbmRpY2F0aW5nIHdoZXRoZXIgY29va2llIGNvdWxkIGJlIHNldCBvciBub3QuXG4gKi9cbmV4cG9ydCBjb25zdCBzZXRDb29raWUgPSAoXG4gICAgbmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nLCBnaXZlbk9wdGlvbnM6IFBhcnRpYWw8Q29va2llT3B0aW9ucz4gPSB7fVxuKTogYm9vbGVhbiA9PiB7XG4gICAgaWYgKGdsb2JhbENvbnRleHQuZG9jdW1lbnQpIHtcbiAgICAgICAgY29uc3Qgb3B0aW9uczogQ29va2llT3B0aW9ucyA9IHtcbiAgICAgICAgICAgIGRvbWFpbjogJycsXG4gICAgICAgICAgICBodHRwT25seTogZmFsc2UsXG4gICAgICAgICAgICBtaW5pbWFsOiBmYWxzZSxcbiAgICAgICAgICAgIG51bWJlck9mRGF5c1VudGlsRXhwaXJhdGlvbjogMzY1LFxuICAgICAgICAgICAgcGF0aDogJy8nLFxuICAgICAgICAgICAgc2FtZVNpdGU6ICdMYXgnLFxuICAgICAgICAgICAgc2VjdXJlOiB0cnVlLFxuICAgICAgICAgICAgLi4uZ2l2ZW5PcHRpb25zXG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBub3cgPSBuZXcgRGF0ZSgpXG4gICAgICAgIG5vdy5zZXRUaW1lKFxuICAgICAgICAgICAgbm93LmdldFRpbWUoKSArXG4gICAgICAgICAgICAob3B0aW9ucy5udW1iZXJPZkRheXNVbnRpbEV4cGlyYXRpb24gKiAyNCAqIDYwICogNjAgKiAxMDAwKVxuICAgICAgICApXG5cbiAgICAgICAgaWYgKG9wdGlvbnMuZG9tYWluID09PSAnJyAmJiBnbG9iYWxDb250ZXh0LmxvY2F0aW9uPy5ob3N0bmFtZSlcbiAgICAgICAgICAgIG9wdGlvbnMuZG9tYWluID0gZ2xvYmFsQ29udGV4dC5sb2NhdGlvbi5ob3N0bmFtZVxuXG4gICAgICAgIGdsb2JhbENvbnRleHQuZG9jdW1lbnQuY29va2llID1cbiAgICAgICAgICAgIGAke25hbWV9PSR7dmFsdWV9YCArXG4gICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgb3B0aW9ucy5taW5pbWFsID9cbiAgICAgICAgICAgICAgICAgICAgJycgOlxuICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICBgO0V4cGlyZXM9XCIke25vdy50b1VUQ1N0cmluZygpfWAgK1xuICAgICAgICAgICAgICAgICAgICAgICAgYDtQYXRoPSR7b3B0aW9ucy5wYXRofWAgK1xuICAgICAgICAgICAgICAgICAgICAgICAgYDtEb21haW49JHtvcHRpb25zLmRvbWFpbn1gICtcbiAgICAgICAgICAgICAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zLnNhbWVTaXRlID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYDtTYW1lU2l0ZT0ke29wdGlvbnMuc2FtZVNpdGV9YCA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcnXG4gICAgICAgICAgICAgICAgICAgICAgICApICtcbiAgICAgICAgICAgICAgICAgICAgICAgIChvcHRpb25zLnNlY3VyZSA/ICc7U2VjdXJlJyA6ICcnKSArXG4gICAgICAgICAgICAgICAgICAgICAgICAob3B0aW9ucy5odHRwT25seSA/ICc7SHR0cE9ubHknIDogJycpXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgIClcblxuICAgICAgICByZXR1cm4gdHJ1ZVxuICAgIH1cblxuICAgIHJldHVybiBmYWxzZVxufVxuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQSxZQUFZOztBQUNaO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFHQSxTQUFRLGFBQWE7O0FBRXJCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTyxNQUFNLFlBQVksR0FBSSxJQUFZLElBQVc7RUFDaEQsSUFBSSxhQUFhLENBQUMsUUFBUSxFQUN0QixhQUFhLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxHQUFHLElBQUksdUJBQXVCO0FBQ3RFLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsT0FBTyxNQUFNLFNBQVMsR0FBSSxJQUFZLElBQW9CO0VBQ3RELElBQUksYUFBYSxDQUFDLFFBQVEsRUFBRTtJQUN4QixNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksR0FBRztJQUN0QixNQUFNLGFBQXFCLEdBQ3ZCLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO0lBQ3JELEtBQUssSUFBSSxJQUFJLElBQUksYUFBYSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRTtNQUN2QyxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQ3ZCLElBQUksR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztNQUU1QixJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEVBQ3BCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDdEQ7SUFFQSxPQUFPLEVBQUU7RUFDYjtFQUVBLE9BQU8sSUFBSTtBQUNmLENBQUM7QUFDRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxPQUFPLE1BQU0sU0FBUyxHQUFHLENBQ3JCLElBQVksRUFBRSxLQUFhLEVBQUUsWUFBb0MsR0FBRyxDQUFDLENBQUMsS0FDNUQ7RUFDVixJQUFJLGFBQWEsQ0FBQyxRQUFRLEVBQUU7SUFDeEIsTUFBTSxPQUFzQixHQUFHO01BQzNCLE1BQU0sRUFBRSxFQUFFO01BQ1YsUUFBUSxFQUFFLEtBQUs7TUFDZixPQUFPLEVBQUUsS0FBSztNQUNkLDJCQUEyQixFQUFFLEdBQUc7TUFDaEMsSUFBSSxFQUFFLEdBQUc7TUFDVCxRQUFRLEVBQUUsS0FBSztNQUNmLE1BQU0sRUFBRSxJQUFJO01BQ1osR0FBRztJQUNQLENBQUM7SUFFRCxNQUFNLEdBQUcsR0FBRyxJQUFJLElBQUksQ0FBQyxDQUFDO0lBQ3RCLEdBQUcsQ0FBQyxPQUFPLENBQ1AsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQ1osT0FBTyxDQUFDLDJCQUEyQixHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLElBQzFELENBQUM7SUFFRCxJQUFJLE9BQU8sQ0FBQyxNQUFNLEtBQUssRUFBRSxJQUFJLGFBQWEsQ0FBQyxRQUFRLEVBQUUsUUFBUSxFQUN6RCxPQUFPLENBQUMsTUFBTSxHQUFHLGFBQWEsQ0FBQyxRQUFRLENBQUMsUUFBUTtJQUVwRCxhQUFhLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FDekIsR0FBRyxJQUFJLElBQUksS0FBSyxFQUFFLElBRWQsT0FBTyxDQUFDLE9BQU8sR0FDWCxFQUFFLEdBRUUsYUFBYSxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUMsRUFBRSxHQUNoQyxTQUFTLE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FDdkIsV0FBVyxPQUFPLENBQUMsTUFBTSxFQUFFLElBRXZCLE9BQU8sQ0FBQyxRQUFRLEdBQ1osYUFBYSxPQUFPLENBQUMsUUFBUSxFQUFFLEdBQy9CLEVBQUUsQ0FDVCxJQUNBLE9BQU8sQ0FBQyxNQUFNLEdBQUcsU0FBUyxHQUFHLEVBQUUsQ0FBQyxJQUNoQyxPQUFPLENBQUMsUUFBUSxHQUFHLFdBQVcsR0FBRyxFQUFFLENBQ3ZDLENBQ1I7SUFFTCxPQUFPLElBQUk7RUFDZjtFQUVBLE9BQU8sS0FBSztBQUNoQixDQUFDIiwiaWdub3JlTGlzdCI6W119
|