路泰科技体检小程序UI设计新版本
1
wwl
6 天以前 a6cdbcfe28fcc40ebb4919f57d60fb20122e8e57
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
/*
    MIT License http://www.opensource.org/licenses/mit-license.php
    Author Tobias Koppers @sokra
*/
 
"use strict";
 
/**
 * @typedef {object} MapOptions
 * @property {boolean=} columns need columns?
 * @property {boolean=} module is module
 */
 
/**
 * @typedef {object} RawSourceMap
 * @property {number} version version
 * @property {string[]} sources sources
 * @property {string[]} names names
 * @property {string=} sourceRoot source root
 * @property {string[]=} sourcesContent sources content
 * @property {string} mappings mappings
 * @property {string} file file
 * @property {string=} debugId debug id
 * @property {number[]=} ignoreList ignore list
 */
 
/** @typedef {string | Buffer} SourceValue */
 
/**
 * @typedef {object} SourceAndMap
 * @property {SourceValue} source source
 * @property {RawSourceMap | null} map map
 */
 
/**
 * @typedef {object} HashLike
 * @property {(data: string | Buffer, inputEncoding?: string) => HashLike} update make hash update
 * @property {(encoding?: string) => string | Buffer} digest get hash digest
 */
 
class Source {
    /**
     * @returns {SourceValue} source
     */
    source() {
        throw new Error("Abstract");
    }
 
    buffer() {
        const source = this.source();
        if (Buffer.isBuffer(source)) return source;
        return Buffer.from(source, "utf8");
    }
 
    size() {
        return this.buffer().length;
    }
 
    /**
     * @param {MapOptions=} options map options
     * @returns {RawSourceMap | null} map
     */
    // eslint-disable-next-line no-unused-vars
    map(options) {
        return null;
    }
 
    /**
     * @param {MapOptions=} options map options
     * @returns {SourceAndMap} source and map
     */
    sourceAndMap(options) {
        return {
            source: this.source(),
            map: this.map(options),
        };
    }
 
    /**
     * @param {HashLike} hash hash
     * @returns {void}
     */
    // eslint-disable-next-line no-unused-vars
    updateHash(hash) {
        throw new Error("Abstract");
    }
}
 
module.exports = Source;