1 | ;
|
2 | var __importDefault = (this && this.__importDefault) || function (mod) {
|
3 | return (mod && mod.__esModule) ? mod : { "default": mod };
|
4 | };
|
5 | Object.defineProperty(exports, "__esModule", { value: true });
|
6 | const slicer_core_1 = __importDefault(require("./core/slicer-core"));
|
7 | /**
|
8 | * The simpliest form a "Slicer"
|
9 | * @see SlicerCore
|
10 | */
|
11 | class Slicer extends slicer_core_1.default {
|
12 | constructor() {
|
13 | super(...arguments);
|
14 | /**
|
15 | * @private
|
16 | */
|
17 | this.order = 0;
|
18 | this.isFinished = false;
|
19 | }
|
20 | slicers() {
|
21 | return 1;
|
22 | }
|
23 | async handle() {
|
24 | if (this.isFinished)
|
25 | return true;
|
26 | const result = await this.slice();
|
27 | if (result == null && this.canComplete()) {
|
28 | this.isFinished = true;
|
29 | this.logger.info('slicer has completed its range');
|
30 | this.events.emit('slicer:done', 0);
|
31 | return true;
|
32 | }
|
33 | if (result == null)
|
34 | return false;
|
35 | if (Array.isArray(result)) {
|
36 | this.events.emit('slicer:subslice');
|
37 | result.forEach((item) => {
|
38 | this.order += 1;
|
39 | this.createSlice(item, this.order);
|
40 | });
|
41 | }
|
42 | else {
|
43 | this.order += 1;
|
44 | this.createSlice(result, this.order);
|
45 | }
|
46 | return false;
|
47 | }
|
48 | }
|
49 | exports.default = Slicer;
|
50 | //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpY2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL29wZXJhdGlvbnMvc2xpY2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EscUVBQTRDO0FBRTVDOzs7R0FHRztBQUVILE1BQThCLE1BQXFCLFNBQVEscUJBQWE7SUFBeEU7O1FBQ0k7O1VBRUU7UUFDUSxVQUFLLEdBQUcsQ0FBQyxDQUFDO1FBRXBCLGVBQVUsR0FBRyxLQUFLLENBQUM7SUFzQ3ZCLENBQUM7SUE5QkcsT0FBTztRQUNILE9BQU8sQ0FBQyxDQUFDO0lBQ2IsQ0FBQztJQUVELEtBQUssQ0FBQyxNQUFNO1FBQ1IsSUFBSSxJQUFJLENBQUMsVUFBVTtZQUFFLE9BQU8sSUFBSSxDQUFDO1FBRWpDLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2xDLElBQUksTUFBTSxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUU7WUFDdEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7WUFDdkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztZQUNuRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDbkMsT0FBTyxJQUFJLENBQUM7U0FDZjtRQUVELElBQUksTUFBTSxJQUFJLElBQUk7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUVqQyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDdkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQztZQUNwQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ3BCLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDO2dCQUNoQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDdkMsQ0FBQyxDQUFDLENBQUM7U0FDTjthQUFNO1lBQ0gsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUM7WUFDaEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3hDO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztDQUNKO0FBNUNELHlCQTRDQyJ9 |
\ | No newline at end of file |