1 | 'use strict';
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 |
|
7 | var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
|
8 |
|
9 | var filenameWithoutLoaders = exports.filenameWithoutLoaders = function filenameWithoutLoaders() {
|
10 | var filename = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
11 |
|
12 | var index = filename.lastIndexOf('!');
|
13 |
|
14 | return index < 0 ? filename : filename.substr(index + 1);
|
15 | };
|
16 |
|
17 | var filenameHasLoaders = exports.filenameHasLoaders = function filenameHasLoaders(filename) {
|
18 | var actualFilename = _get__('filenameWithoutLoaders')(filename);
|
19 |
|
20 | return actualFilename !== filename;
|
21 | };
|
22 |
|
23 | var filenameHasSchema = exports.filenameHasSchema = function filenameHasSchema(filename) {
|
24 | return (/^[\w]+\:/.test(filename)
|
25 | );
|
26 | };
|
27 |
|
28 | var isFilenameAbsolute = exports.isFilenameAbsolute = function isFilenameAbsolute(filename) {
|
29 | var actualFilename = _get__('filenameWithoutLoaders')(filename);
|
30 |
|
31 | if (actualFilename.indexOf('/') === 0) {
|
32 | return true;
|
33 | }
|
34 |
|
35 | return false;
|
36 | };
|
37 |
|
38 | var makeUrl = exports.makeUrl = function makeUrl(filename, scheme, line, column) {
|
39 | var actualFilename = _get__('filenameWithoutLoaders')(filename);
|
40 |
|
41 | if (_get__('filenameHasSchema')(filename)) {
|
42 | return actualFilename;
|
43 | }
|
44 |
|
45 | var url = 'file://' + actualFilename;
|
46 |
|
47 | if (scheme) {
|
48 | url = scheme + '://open?url=' + url;
|
49 |
|
50 | if (line && actualFilename === filename) {
|
51 | url = url + '&line=' + line;
|
52 |
|
53 | if (column) {
|
54 | url = url + '&column=' + column;
|
55 | }
|
56 | }
|
57 | }
|
58 |
|
59 | return url;
|
60 | };
|
61 |
|
62 | var makeLinkText = exports.makeLinkText = function makeLinkText(filename, line, column) {
|
63 | var text = _get__('filenameWithoutLoaders')(filename);
|
64 |
|
65 | if (line && text === filename) {
|
66 | text = text + ':' + line;
|
67 |
|
68 | if (column) {
|
69 | text = text + ':' + column;
|
70 | }
|
71 | }
|
72 |
|
73 | return text;
|
74 | };
|
75 |
|
76 | var _RewiredData__ = Object.create(null);
|
77 |
|
78 | var INTENTIONAL_UNDEFINED = '__INTENTIONAL_UNDEFINED__';
|
79 | var _RewireAPI__ = {};
|
80 |
|
81 | (function () {
|
82 | function addPropertyToAPIObject(name, value) {
|
83 | Object.defineProperty(_RewireAPI__, name, {
|
84 | value: value,
|
85 | enumerable: false,
|
86 | configurable: true
|
87 | });
|
88 | }
|
89 |
|
90 | addPropertyToAPIObject('__get__', _get__);
|
91 | addPropertyToAPIObject('__GetDependency__', _get__);
|
92 | addPropertyToAPIObject('__Rewire__', _set__);
|
93 | addPropertyToAPIObject('__set__', _set__);
|
94 | addPropertyToAPIObject('__reset__', _reset__);
|
95 | addPropertyToAPIObject('__ResetDependency__', _reset__);
|
96 | addPropertyToAPIObject('__with__', _with__);
|
97 | })();
|
98 |
|
99 | function _get__(variableName) {
|
100 | if (_RewiredData__ === undefined || _RewiredData__[variableName] === undefined) {
|
101 | return _get_original__(variableName);
|
102 | } else {
|
103 | var value = _RewiredData__[variableName];
|
104 |
|
105 | if (value === INTENTIONAL_UNDEFINED) {
|
106 | return undefined;
|
107 | } else {
|
108 | return value;
|
109 | }
|
110 | }
|
111 | }
|
112 |
|
113 | function _get_original__(variableName) {
|
114 | switch (variableName) {
|
115 | case 'filenameWithoutLoaders':
|
116 | return filenameWithoutLoaders;
|
117 |
|
118 | case 'filenameHasSchema':
|
119 | return filenameHasSchema;
|
120 | }
|
121 |
|
122 | return undefined;
|
123 | }
|
124 |
|
125 | function _assign__(variableName, value) {
|
126 | if (_RewiredData__ === undefined || _RewiredData__[variableName] === undefined) {
|
127 | return _set_original__(variableName, value);
|
128 | } else {
|
129 | return _RewiredData__[variableName] = value;
|
130 | }
|
131 | }
|
132 |
|
133 | function _set_original__(variableName, _value) {
|
134 | switch (variableName) {}
|
135 |
|
136 | return undefined;
|
137 | }
|
138 |
|
139 | function _update_operation__(operation, variableName, prefix) {
|
140 | var oldValue = _get__(variableName);
|
141 |
|
142 | var newValue = operation === '++' ? oldValue + 1 : oldValue - 1;
|
143 |
|
144 | _assign__(variableName, newValue);
|
145 |
|
146 | return prefix ? newValue : oldValue;
|
147 | }
|
148 |
|
149 | function _set__(variableName, value) {
|
150 | if ((typeof variableName === 'undefined' ? 'undefined' : _typeof(variableName)) === 'object') {
|
151 | Object.keys(variableName).forEach(function (name) {
|
152 | _RewiredData__[name] = variableName[name];
|
153 | });
|
154 | } else {
|
155 | if (value === undefined) {
|
156 | _RewiredData__[variableName] = INTENTIONAL_UNDEFINED;
|
157 | } else {
|
158 | _RewiredData__[variableName] = value;
|
159 | }
|
160 |
|
161 | return function () {
|
162 | _reset__(variableName);
|
163 | };
|
164 | }
|
165 | }
|
166 |
|
167 | function _reset__(variableName) {
|
168 | delete _RewiredData__[variableName];
|
169 | }
|
170 |
|
171 | function _with__(object) {
|
172 | var rewiredVariableNames = Object.keys(object);
|
173 | var previousValues = {};
|
174 |
|
175 | function reset() {
|
176 | rewiredVariableNames.forEach(function (variableName) {
|
177 | _RewiredData__[variableName] = previousValues[variableName];
|
178 | });
|
179 | }
|
180 |
|
181 | return function (callback) {
|
182 | rewiredVariableNames.forEach(function (variableName) {
|
183 | previousValues[variableName] = _RewiredData__[variableName];
|
184 | _RewiredData__[variableName] = object[variableName];
|
185 | });
|
186 | var result = callback();
|
187 |
|
188 | if (!!result && typeof result.then == 'function') {
|
189 | result.then(reset).catch(reset);
|
190 | } else {
|
191 | reset();
|
192 | }
|
193 |
|
194 | return result;
|
195 | };
|
196 | }
|
197 |
|
198 | exports.__get__ = _get__;
|
199 | exports.__GetDependency__ = _get__;
|
200 | exports.__Rewire__ = _set__;
|
201 | exports.__set__ = _set__;
|
202 | exports.__ResetDependency__ = _reset__;
|
203 | exports.__RewireAPI__ = _RewireAPI__;
|
204 | exports.default = _RewireAPI__; |
\ | No newline at end of file |