jspm 2.0.0-beta.6 → 3.0.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.
Files changed (100) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +20 -26
  3. package/dist/cli.js +1391 -0
  4. package/jspm.js +10 -0
  5. package/package.json +23 -50
  6. package/CHANGELOG.md +0 -21
  7. package/bin/jspm +0 -46
  8. package/lib/api.d.ts +0 -10
  9. package/lib/api.js +0 -71
  10. package/lib/api.js.map +0 -1
  11. package/lib/build/index.d.ts +0 -24
  12. package/lib/build/index.js +0 -163
  13. package/lib/build/index.js.map +0 -1
  14. package/lib/cli.d.ts +0 -1
  15. package/lib/cli.js +0 -701
  16. package/lib/cli.js.map +0 -1
  17. package/lib/compile/cjs-convert.d.ts +0 -7
  18. package/lib/compile/cjs-convert.js +0 -375
  19. package/lib/compile/cjs-convert.js.map +0 -1
  20. package/lib/compile/dew-resolve.d.ts +0 -9
  21. package/lib/compile/dew-resolve.js +0 -117
  22. package/lib/compile/dew-resolve.js.map +0 -1
  23. package/lib/compile/dew-worker.d.ts +0 -1
  24. package/lib/compile/dew-worker.js +0 -302
  25. package/lib/compile/dew-worker.js.map +0 -1
  26. package/lib/config/config-file.d.ts +0 -67
  27. package/lib/config/config-file.js +0 -591
  28. package/lib/config/config-file.js.map +0 -1
  29. package/lib/config/global-config-file.d.ts +0 -8
  30. package/lib/config/global-config-file.js +0 -89
  31. package/lib/config/global-config-file.js.map +0 -1
  32. package/lib/config/index.d.ts +0 -15
  33. package/lib/config/index.js +0 -59
  34. package/lib/config/index.js.map +0 -1
  35. package/lib/config/jspm-file.d.ts +0 -8
  36. package/lib/config/jspm-file.js +0 -84
  37. package/lib/config/jspm-file.js.map +0 -1
  38. package/lib/config/package-json-file.d.ts +0 -49
  39. package/lib/config/package-json-file.js +0 -332
  40. package/lib/config/package-json-file.js.map +0 -1
  41. package/lib/exec/index.d.ts +0 -12
  42. package/lib/exec/index.js +0 -117
  43. package/lib/exec/index.js.map +0 -1
  44. package/lib/install/bin.d.ts +0 -2
  45. package/lib/install/bin.js +0 -86
  46. package/lib/install/bin.js.map +0 -1
  47. package/lib/install/binary-build.d.ts +0 -2
  48. package/lib/install/binary-build.js +0 -89
  49. package/lib/install/binary-build.js.map +0 -1
  50. package/lib/install/fetch.d.ts +0 -53
  51. package/lib/install/fetch.js +0 -270
  52. package/lib/install/fetch.js.map +0 -1
  53. package/lib/install/index.d.ts +0 -66
  54. package/lib/install/index.js +0 -1164
  55. package/lib/install/index.js.map +0 -1
  56. package/lib/install/package.d.ts +0 -142
  57. package/lib/install/package.js +0 -625
  58. package/lib/install/package.js.map +0 -1
  59. package/lib/install/publish.d.ts +0 -14
  60. package/lib/install/publish.js +0 -186
  61. package/lib/install/publish.js.map +0 -1
  62. package/lib/install/registry-manager.d.ts +0 -134
  63. package/lib/install/registry-manager.js +0 -521
  64. package/lib/install/registry-manager.js.map +0 -1
  65. package/lib/install/source.d.ts +0 -10
  66. package/lib/install/source.js +0 -378
  67. package/lib/install/source.js.map +0 -1
  68. package/lib/map/common.d.ts +0 -13
  69. package/lib/map/common.js +0 -180
  70. package/lib/map/common.js.map +0 -1
  71. package/lib/map/esm-lexer.d.ts +0 -17
  72. package/lib/map/esm-lexer.js +0 -506
  73. package/lib/map/esm-lexer.js.map +0 -1
  74. package/lib/map/index.d.ts +0 -15
  75. package/lib/map/index.js +0 -356
  76. package/lib/map/index.js.map +0 -1
  77. package/lib/map/utils.d.ts +0 -10
  78. package/lib/map/utils.js +0 -181
  79. package/lib/map/utils.js.map +0 -1
  80. package/lib/overrides.d.ts +0 -3
  81. package/lib/overrides.js +0 -29
  82. package/lib/overrides.js.map +0 -1
  83. package/lib/project.d.ts +0 -71
  84. package/lib/project.js +0 -434
  85. package/lib/project.js.map +0 -1
  86. package/lib/utils/cache.d.ts +0 -11
  87. package/lib/utils/cache.js +0 -121
  88. package/lib/utils/cache.js.map +0 -1
  89. package/lib/utils/common.d.ts +0 -55
  90. package/lib/utils/common.js +0 -267
  91. package/lib/utils/common.js.map +0 -1
  92. package/lib/utils/opts.d.ts +0 -6
  93. package/lib/utils/opts.js +0 -200
  94. package/lib/utils/opts.js.map +0 -1
  95. package/lib/utils/run-cmd.d.ts +0 -4
  96. package/lib/utils/run-cmd.js +0 -39
  97. package/lib/utils/run-cmd.js.map +0 -1
  98. package/lib/utils/ui.d.ts +0 -38
  99. package/lib/utils/ui.js +0 -496
  100. package/lib/utils/ui.js.map +0 -1
@@ -1,591 +0,0 @@
1
- "use strict";
2
- /*
3
- * Copyright 2014-2019 Guy Bedford (http://guybedford.com)
4
- *
5
- * Licensed under the Apache License, Version 2.0 (the "License");
6
- * you may not use this file except in compliance with the License.
7
- * You may obtain a copy of the License at
8
- *
9
- * http://www.apache.org/licenses/LICENSE-2.0
10
- *
11
- * Unless required by applicable law or agreed to in writing, software
12
- * distributed under the License is distributed on an "AS IS" BASIS,
13
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
- * See the License for the specific language governing permissions and
15
- * limitations under the License.
16
- */
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- const path = require("path");
19
- const fs = require("graceful-fs");
20
- const mkdirp = require("mkdirp");
21
- const lockfile = require("proper-lockfile");
22
- const common_1 = require("../utils/common");
23
- /*
24
- * Configuration base class
25
- * For creating and managing configurations which sync to files
26
- */
27
- class ConfigFile {
28
- constructor(fileName, ordering) {
29
- this.style = null;
30
- this.timestamp = null;
31
- /*
32
- * Properties are stored as an ordered array of { key, value } paris
33
- * Nested object are in turn array values
34
- * Value properties are { value } objects
35
- */
36
- this.properties = [];
37
- this.changeEvents = [];
38
- // we only write when the file has actually changed
39
- this.changed = false;
40
- // keep track of originalName when renaming
41
- this.originalName = undefined;
42
- this.locked = false;
43
- this.fileName = path.resolve(fileName);
44
- this.ordering = ordering;
45
- }
46
- rename(newName) {
47
- newName = path.resolve(newName);
48
- if (this.fileName === newName)
49
- return;
50
- this.originalName = this.originalName || this.timestamp !== -1 && this.fileName;
51
- this.fileName = newName;
52
- try {
53
- this.timestamp = fs.statSync(this.fileName).mtime.getTime();
54
- }
55
- catch (e) {
56
- if (e.code !== 'ENOENT')
57
- throw e;
58
- this.timestamp = -1;
59
- }
60
- this.changed = true;
61
- }
62
- // only applies to values
63
- // Returns undefined for no value
64
- // throws if an object, with a fileName reference
65
- // member lookups not in objects throw
66
- // type is optional, and can be 'array', 'number', 'boolean', 'string' to add simple type checking
67
- getValue(memberArray, type) {
68
- var parentProps = this.getProperties(memberArray.slice(0, memberArray.length - 1));
69
- if (!parentProps)
70
- return;
71
- var prop = getProperty(parentProps, memberArray[memberArray.length - 1]).property;
72
- if (prop === undefined)
73
- return;
74
- if (Array.isArray(prop.value))
75
- configError.call(this, memberArray, 'must be a value');
76
- var value = prop.value.value;
77
- if (type === 'array' && !Array.isArray(value) || (type && type !== 'array' && typeof value !== type))
78
- configError.call(this, memberArray, 'must be a' + (type === 'array' ? 'n ' : ' ') + type + ' value');
79
- return value;
80
- }
81
- // returns properties array
82
- // If not a properties array, returns undefined
83
- // If any member is a value instead of an object, returns undefined
84
- // When createIfUndefined is set, object is created with the correct ordering
85
- // setting changed: true in the process if necessary
86
- // If any member is a value with createIfUndefined, throws an error
87
- getProperties(memberArray, createIfUndefined = false) {
88
- var properties = this.properties;
89
- var ordering = this.ordering;
90
- var self = this;
91
- memberArray.some((member, index) => {
92
- var prop = getProperty(properties, member).property;
93
- if (prop) {
94
- properties = prop.value;
95
- if (!Array.isArray(properties)) {
96
- if (createIfUndefined) {
97
- configError.call(self, memberArray.slice(0, index + 1), 'should be an object');
98
- }
99
- else {
100
- properties = undefined;
101
- return true;
102
- }
103
- }
104
- }
105
- else {
106
- if (createIfUndefined) {
107
- setProperty(properties, member, properties = [], ordering);
108
- self.onChange(memberArray);
109
- }
110
- else {
111
- properties = undefined;
112
- return true;
113
- }
114
- }
115
- ordering = getOrdering([member], ordering);
116
- });
117
- return properties;
118
- }
119
- // returns properties array as a readable JS object of values.
120
- // Nested objects throw nice error unless nested is set to true
121
- // if the object does not exist, returns undefined
122
- // if the property corresponds to a value, throws
123
- getObject(memberArray = [], nested = true, createIfUndefined = false) {
124
- var properties = this.getProperties(memberArray, createIfUndefined);
125
- if (!properties)
126
- return;
127
- var obj = propertiesToObject(properties);
128
- var self = this;
129
- if (!nested)
130
- Object.keys(obj).forEach(key => {
131
- if (typeof obj[key] === 'object' && obj[key] !== null && !Array.isArray(obj[key]))
132
- configError.call(self, memberArray, 'should not contain a nested object at %' + key + '%');
133
- });
134
- return obj;
135
- }
136
- has(memberArray) {
137
- var parentProps = this.getProperties(memberArray.slice(0, memberArray.length - 1));
138
- if (!parentProps)
139
- return false;
140
- return getProperty(parentProps, memberArray[memberArray.length - 1]).property !== undefined;
141
- }
142
- // removes the given property member name if it exists
143
- remove(memberArray, clearParentsIfMadeEmpty = false) {
144
- var parentProps = this.getProperties(memberArray.slice(0, memberArray.length - 1));
145
- if (!parentProps)
146
- return false;
147
- var self = this;
148
- var removed = parentProps.some((prop, index) => {
149
- if (prop.key === memberArray[memberArray.length - 1]) {
150
- parentProps.splice(index, 1);
151
- self.onChange(memberArray.slice(0, memberArray.length - 1));
152
- return true;
153
- }
154
- });
155
- if (clearParentsIfMadeEmpty && removed && parentProps.length === 0 && memberArray.length > 1)
156
- this.remove(memberArray.slice(0, memberArray.length - 1), true);
157
- return removed;
158
- }
159
- clearIfEmpty(memberArray) {
160
- var props = this.getProperties(memberArray);
161
- if (props && !props.length)
162
- this.remove(memberArray);
163
- }
164
- // sets this.changed if a change
165
- // retains property ordering
166
- // overwrites anything already existing
167
- // creates objects if not existing, at correct ordered location
168
- setValue(memberArray, value, overwrite = true) {
169
- var properties = this.getProperties(memberArray.slice(0, memberArray.length - 1), true);
170
- var ordering = getOrdering(memberArray.slice(0, memberArray.length - 1), this.ordering);
171
- if (setProperty(properties, memberArray[memberArray.length - 1], { value: value }, ordering, overwrite))
172
- this.onChange(memberArray);
173
- }
174
- // handles nested objects, memberArray can be 0 length for base-level population
175
- // where target object already exists, it overwrites retaining the same ordering
176
- // default behaviour is to not write empty objects, but to also not clear objects made empty
177
- // also avoids unnecessary changes
178
- setProperties(memberArray, properties, clearIfEmpty = false, keepOrder = false, extend = true, overwrite = false) {
179
- var targetProperties;
180
- if (!properties.length) {
181
- targetProperties = this.getProperties(memberArray);
182
- if (targetProperties && targetProperties.length) {
183
- if (clearIfEmpty)
184
- this.remove(memberArray);
185
- else
186
- targetProperties.splice(0, targetProperties.length);
187
- this.onChange(memberArray);
188
- }
189
- else if (!clearIfEmpty)
190
- this.getProperties(memberArray, true);
191
- return;
192
- }
193
- targetProperties = this.getProperties(memberArray, true);
194
- var ordering;
195
- if (!keepOrder)
196
- ordering = getOrdering(memberArray.slice(0, memberArray.length - 1), this.ordering);
197
- var self = this;
198
- var setKeys = [];
199
- properties.forEach(prop => {
200
- setKeys.push(prop.key);
201
- if (setProperty(targetProperties, prop.key, prop.value, ordering, overwrite))
202
- self.onChange(memberArray);
203
- });
204
- if (!extend)
205
- for (var i = 0; i < targetProperties.length; i++) {
206
- var prop = targetProperties[i];
207
- if (setKeys.indexOf(prop.key) === -1) {
208
- targetProperties.splice(i--, 1);
209
- self.onChange(memberArray);
210
- }
211
- }
212
- }
213
- // ensures the given property is first in its containing object property
214
- // skips if the property does not exist
215
- orderFirst(memberArray) {
216
- var properties = this.getProperties(memberArray.slice(0, memberArray.length - 1));
217
- if (!properties)
218
- return;
219
- var propIndex = getProperty(properties, memberArray[memberArray.length - 1]).index;
220
- if (propIndex !== -1 && propIndex !== 0) {
221
- properties.unshift(properties.splice(propIndex, 1)[0]);
222
- this.onChange(memberArray.slice(0, memberArray.length - 1));
223
- }
224
- }
225
- // ensures the given property is last in its containing object property
226
- // skips if the property does not exist
227
- orderLast(memberArray) {
228
- var properties = this.getProperties(memberArray.slice(0, memberArray.length - 1));
229
- if (!properties)
230
- return;
231
- var propIndex = getProperty(properties, memberArray[memberArray.length - 1]).index;
232
- if (propIndex !== -1 && propIndex !== properties.length - 1) {
233
- properties.push(properties.splice(propIndex, 1)[0]);
234
- this.onChange(memberArray.slice(0, memberArray.length - 1));
235
- }
236
- }
237
- // only clears on empty if not already existing as empty
238
- // sets this.changed, retains ordering and overwrites as with setValue
239
- // keepOrder indicates if new properties should be added in current iteration order
240
- // instead of applying the ordering algorithm
241
- setObject(memberArray = [], obj, clearIfEmpty = false, keepOrder = false) {
242
- // convert object into a properties array
243
- return this.setProperties(memberArray, objectToProperties(obj), clearIfEmpty, keepOrder, false);
244
- }
245
- extendObject(memberArray, obj, keepOrder = false) {
246
- if (!Array.isArray(memberArray)) {
247
- obj = memberArray;
248
- memberArray = [];
249
- }
250
- return this.setProperties(memberArray, objectToProperties(obj), false, keepOrder, true);
251
- }
252
- prependObject(memberArray, obj, keepOrder = false) {
253
- if (!Array.isArray(memberArray)) {
254
- obj = memberArray;
255
- memberArray = [];
256
- }
257
- return this.setProperties(memberArray, objectToProperties(obj), false, keepOrder, true, false);
258
- }
259
- // default serialization is as a JSON file, but these can be overridden
260
- serialize(obj) {
261
- return serializeJson(obj, this.style);
262
- }
263
- deserialize(source) {
264
- return JSON.parse(source);
265
- }
266
- // note that the given proprety is changed
267
- // also triggers change events
268
- onChange(memberArray) {
269
- // run any attached change events
270
- if (!this.changeEvents.reduce((stopPropagation, evt) => stopPropagation || evt(memberArray), false))
271
- this.changed = true;
272
- }
273
- lock(symlink = true) {
274
- try {
275
- this._unlock = lockfile.lockSync(this.fileName, symlink ? undefined : { realpath: false });
276
- this.locked = true;
277
- }
278
- catch (e) {
279
- if (symlink && e.code === 'ENOENT')
280
- return this.lock(false);
281
- if (e.code === 'ELOCKED')
282
- throw new common_1.JspmUserError(`Configuration file ${common_1.bold(this.fileName)} is currently locked by another jspm process.`);
283
- throw e;
284
- }
285
- }
286
- unlock() {
287
- if (this._unlock) {
288
- this._unlock();
289
- this._unlock = undefined;
290
- this.locked = false;
291
- }
292
- }
293
- exists() {
294
- if (this.timestamp === null)
295
- this.read();
296
- return this.timestamp === -1 ? false : true;
297
- }
298
- // read and write are sync functions
299
- read() {
300
- var contents;
301
- try {
302
- this.timestamp = fs.statSync(this.fileName).mtime.getTime();
303
- contents = fs.readFileSync(this.fileName).toString();
304
- }
305
- catch (e) {
306
- if (e.code !== 'ENOENT')
307
- throw e;
308
- this.timestamp = -1;
309
- contents = '';
310
- }
311
- this.style = detectStyle(contents);
312
- var deserializedObj;
313
- try {
314
- deserializedObj = this.deserialize(contents || '{}') || {};
315
- }
316
- catch (e) {
317
- configError.call(this, e.toString());
318
- }
319
- this.properties = [];
320
- this._original = deserializedObj;
321
- this.setObject([], deserializedObj, false, true);
322
- this.changed = false;
323
- }
324
- write() {
325
- var timestamp;
326
- try {
327
- timestamp = fs.statSync(this.fileName).mtime.getTime();
328
- }
329
- catch (e) {
330
- if (e.code !== 'ENOENT')
331
- throw e;
332
- timestamp = -1;
333
- }
334
- if (timestamp !== this.timestamp)
335
- throw new common_1.JspmUserError('Configuration file ' + path.relative(process.cwd(), this.fileName) + ' has been modified by another process.');
336
- if (this.changed || timestamp === -1) {
337
- // if the file doesn't exist make sure the folder exists
338
- mkdirp.sync(path.dirname(this.fileName));
339
- var obj = this.getObject([], true);
340
- fs.writeFileSync(this.fileName, this.serialize(obj));
341
- this.timestamp = fs.statSync(this.fileName).mtime.getTime();
342
- this.changed = false;
343
- // if the file was renamed, remove the old file now after writing
344
- if (this.originalName) {
345
- fs.unlinkSync(this.originalName);
346
- this.originalName = null;
347
- }
348
- return true;
349
- }
350
- return false;
351
- }
352
- }
353
- exports.default = ConfigFile;
354
- ;
355
- function configError(memberArray, msg) {
356
- if (arguments.length === 1) {
357
- msg = memberArray;
358
- memberArray = [];
359
- }
360
- throw new common_1.JspmUserError(`Error reading ${common_1.bold(path.relative(process.cwd(), this.fileName))}\n\t` +
361
- (memberArray.length ? common_1.bold(memberArray.join('.')) + ' ' : 'File ') + msg + '.');
362
- }
363
- function propertyEquals(propA, propB) {
364
- if (Array.isArray(propA) || Array.isArray(propB)) {
365
- if (!(Array.isArray(propA) && Array.isArray(propB)))
366
- return false;
367
- if (propA.length !== propB.length)
368
- return false;
369
- return !propA.some((itemA, index) => {
370
- var itemB = propB[index];
371
- return itemA.key !== itemB.key || !propertyEquals(itemA.value, itemB.value);
372
- });
373
- }
374
- else {
375
- return propA.value === propB.value;
376
- }
377
- }
378
- // adds the new property to the given properties object
379
- // if the property exists, it is updated to the new value
380
- // if not the property is placed at the first appropriate position alphabetically
381
- // returns true when an actual change is made
382
- // ordering is an array representing the property order suggestion, to use to apply ordering algorithm
383
- function setProperty(properties, key, value, ordering, overwrite = true) {
384
- var changed = false;
385
- if (properties.some(prop => {
386
- if (prop.key === key) {
387
- if (!overwrite)
388
- return false;
389
- // determine equality
390
- if (!propertyEquals(prop.value, value))
391
- changed = true;
392
- prop.value = value;
393
- return true;
394
- }
395
- }))
396
- return changed;
397
- if (!ordering || !ordering.length) {
398
- properties.push({
399
- key: key,
400
- value: value
401
- });
402
- return true;
403
- }
404
- // apply ordering algorithm
405
- var orderIndex = orderingIndex(ordering, key);
406
- // find the max and minimum index in this property list given the ordering spec
407
- var maxOrderIndex = properties.length, minOrderIndex = 0;
408
- if (orderIndex !== -1)
409
- properties.forEach((prop, index) => {
410
- // get the ordering index of the current property
411
- var propOrderIndex = orderingIndex(ordering, prop.key);
412
- if (propOrderIndex !== -1) {
413
- if (propOrderIndex < orderIndex && index + 1 > minOrderIndex && index < maxOrderIndex)
414
- minOrderIndex = index + 1;
415
- if (propOrderIndex > orderIndex && index < maxOrderIndex && index >= minOrderIndex)
416
- maxOrderIndex = index;
417
- }
418
- });
419
- // within the ordering range, use alphabetical ordering
420
- orderIndex = -1;
421
- for (var i = minOrderIndex; i < maxOrderIndex; i++)
422
- if (properties[i].key > key) {
423
- orderIndex = i;
424
- break;
425
- }
426
- if (orderIndex === -1)
427
- orderIndex = maxOrderIndex;
428
- properties.splice(orderIndex, 0, {
429
- key: key,
430
- value: value
431
- });
432
- return true;
433
- }
434
- // returns a property object for a given key from the property list
435
- // returns undefined if not found
436
- // properties is already assumed to be an array
437
- function getProperty(properties, key) {
438
- var propMatch = {
439
- index: -1,
440
- property: undefined
441
- };
442
- properties.some((prop, index) => {
443
- if (prop.key === key) {
444
- propMatch = {
445
- property: prop,
446
- index: index
447
- };
448
- return true;
449
- }
450
- });
451
- return propMatch;
452
- }
453
- function orderingIndex(ordering, key) {
454
- for (var i = 0; i < ordering.length; i++)
455
- if (ordering[i] === key || Array.isArray(ordering[i]) && ordering[i][0] === key)
456
- return i;
457
- return -1;
458
- }
459
- function getOrdering(memberArray, ordering) {
460
- memberArray.some(member => {
461
- let orderIndex = orderingIndex(ordering, member);
462
- let orderingValue;
463
- if (orderIndex !== -1)
464
- orderingValue = ordering[orderIndex];
465
- if (Array.isArray(orderingValue)) {
466
- ordering = orderingValue[1];
467
- }
468
- else {
469
- ordering = [];
470
- return true;
471
- }
472
- });
473
- return ordering;
474
- }
475
- function propertiesToObject(properties) {
476
- var obj = {};
477
- properties.forEach(p => {
478
- var prop = p.key;
479
- var val = p.value;
480
- if (Array.isArray(val))
481
- obj[prop] = propertiesToObject(val);
482
- else
483
- obj[prop] = val.value;
484
- });
485
- return obj;
486
- }
487
- function objectToProperties(obj) {
488
- var properties = [];
489
- Object.keys(obj).forEach(key => {
490
- var value = obj[key];
491
- if (typeof value === 'object' && !Array.isArray(value) && value !== null)
492
- value = objectToProperties(value);
493
- else
494
- value = { value: value };
495
- properties.push({
496
- key: key,
497
- value: value
498
- });
499
- });
500
- return properties;
501
- }
502
- ;
503
- async function readJSONStyled(filePath) {
504
- try {
505
- var source = await new Promise((resolve, reject) => {
506
- fs.readFile(filePath, (err, source) => err ? reject(err) : resolve(source.toString()));
507
- });
508
- }
509
- catch (e) {
510
- if (e.code === 'ENOENT')
511
- return { json, style };
512
- throw e;
513
- }
514
- // remove any byte order mark
515
- if (source.startsWith('\uFEFF'))
516
- source = source.substr(1);
517
- var style = detectStyle(source);
518
- try {
519
- var json = JSON.parse(source);
520
- }
521
- catch (e) {
522
- throw new common_1.JspmError(`Error parsing JSON file ${filePath}.`);
523
- }
524
- return { json, style };
525
- }
526
- exports.readJSONStyled = readJSONStyled;
527
- async function writeJSONStyled(filePath, json, style) {
528
- await new Promise((resolve, reject) => fs.writeFile(filePath, serializeJson(json, style), err => err ? reject(err) : resolve()));
529
- }
530
- exports.writeJSONStyled = writeJSONStyled;
531
- exports.defaultStyle = {
532
- tab: ' ',
533
- newline: require('os').EOL,
534
- trailingNewline: true,
535
- quote: '"'
536
- };
537
- function detectStyle(string) {
538
- let style = Object.assign({}, exports.defaultStyle);
539
- let newLineMatch = string.match(/\r?\n|\r(?!\n)/);
540
- if (newLineMatch)
541
- style.newline = newLineMatch[0];
542
- // best-effort tab detection
543
- // yes this is overkill, but it avoids possibly annoying edge cases
544
- let tabSpaces = string.split(style.newline).map(line => line.match(/^[ \t]*/)[0]) || [];
545
- let tabDifferenceFreqs = {};
546
- let lastLength = 0;
547
- tabSpaces.forEach(tabSpace => {
548
- let diff = Math.abs(tabSpace.length - lastLength);
549
- if (diff !== 0)
550
- tabDifferenceFreqs[diff] = (tabDifferenceFreqs[diff] || 0) + 1;
551
- lastLength = tabSpace.length;
552
- });
553
- let bestTabLength;
554
- Object.keys(tabDifferenceFreqs).forEach(tabLength => {
555
- if (!bestTabLength || tabDifferenceFreqs[tabLength] >= tabDifferenceFreqs[bestTabLength])
556
- bestTabLength = tabLength;
557
- });
558
- // having determined the most common spacing difference length,
559
- // generate samples of this tab length from the end of each line space
560
- // the most common sample is then the tab string
561
- let tabSamples = {};
562
- tabSpaces.forEach(tabSpace => {
563
- let sample = tabSpace.substr(tabSpace.length - bestTabLength);
564
- tabSamples[sample] = (tabSamples[sample] || 0) + 1;
565
- });
566
- let bestTabSample;
567
- Object.keys(tabSamples).forEach(sample => {
568
- if (!bestTabSample || tabSamples[sample] > tabSamples[bestTabSample])
569
- bestTabSample = sample;
570
- });
571
- if (bestTabSample)
572
- style.tab = bestTabSample;
573
- let quoteMatch = string.match(/"|'/);
574
- if (quoteMatch)
575
- style.quote = quoteMatch[0];
576
- if (string && !string.match(new RegExp(style.newline + '$')))
577
- style.trailingNewline = false;
578
- return style;
579
- }
580
- exports.detectStyle = detectStyle;
581
- function serializeJson(json, style) {
582
- let jsonString = JSON.stringify(json, null, style.tab);
583
- if (style.trailingNewline)
584
- jsonString += style.newline;
585
- return jsonString
586
- .replace(/([^\\])""/g, '$1' + style.quote + style.quote) // empty strings
587
- .replace(/([^\\])"/g, '$1' + style.quote)
588
- .replace(/\n/g, style.newline);
589
- }
590
- exports.serializeJson = serializeJson;
591
- //# sourceMappingURL=config-file.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config-file.js","sourceRoot":"","sources":["../../src/config/config-file.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- import ConfigFile from './config-file';
2
- export declare class GlobalConfig extends ConfigFile {
3
- constructor();
4
- get(configName: string | string[]): any;
5
- set(configName: string | string[], configValue: any[] | number | boolean | string): void;
6
- }
7
- declare const _default: GlobalConfig;
8
- export default _default;