@speleotica/frcsdata 4.2.0 → 4.3.1

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 (81) hide show
  1. package/FrcsPlotFile.d.ts +1 -0
  2. package/FrcsPlotFile.d.ts.map +1 -0
  3. package/FrcsPlotFile.js +2 -1
  4. package/FrcsPlotFile.js.map +1 -0
  5. package/FrcsPlotShot.d.ts +1 -0
  6. package/FrcsPlotShot.d.ts.map +1 -0
  7. package/FrcsPlotShot.js +2 -1
  8. package/FrcsPlotShot.js.map +1 -0
  9. package/FrcsShot.d.ts +1 -0
  10. package/FrcsShot.d.ts.map +1 -0
  11. package/FrcsShot.js +2 -1
  12. package/FrcsShot.js.map +1 -0
  13. package/FrcsSurveyFile.d.ts +20 -0
  14. package/FrcsSurveyFile.d.ts.map +1 -0
  15. package/FrcsSurveyFile.js +20 -1
  16. package/FrcsSurveyFile.js.map +1 -0
  17. package/FrcsTrip.d.ts +1 -0
  18. package/FrcsTrip.d.ts.map +1 -0
  19. package/FrcsTrip.js +2 -1
  20. package/FrcsTrip.js.map +1 -0
  21. package/FrcsTripSummary.d.ts +1 -0
  22. package/FrcsTripSummary.d.ts.map +1 -0
  23. package/FrcsTripSummary.js +2 -1
  24. package/FrcsTripSummary.js.map +1 -0
  25. package/FrcsTripSummaryFile.d.ts +1 -0
  26. package/FrcsTripSummaryFile.d.ts.map +1 -0
  27. package/FrcsTripSummaryFile.js +2 -1
  28. package/FrcsTripSummaryFile.js.map +1 -0
  29. package/formatFrcsShot.d.ts +8 -2
  30. package/formatFrcsShot.d.ts.map +1 -0
  31. package/formatFrcsShot.js +85 -62
  32. package/formatFrcsShot.js.map +1 -0
  33. package/formatFrcsSurveyFile.d.ts +3 -0
  34. package/formatFrcsSurveyFile.d.ts.map +1 -0
  35. package/formatFrcsSurveyFile.js +165 -0
  36. package/formatFrcsSurveyFile.js.map +1 -0
  37. package/index.d.ts +3 -1
  38. package/index.d.ts.map +1 -0
  39. package/index.js +9 -1
  40. package/index.js.map +1 -0
  41. package/node/index.d.ts +2 -1
  42. package/node/index.d.ts.map +1 -0
  43. package/node/index.js +6 -2
  44. package/node/index.js.map +1 -0
  45. package/package.json +6 -3
  46. package/parseFrcsPlotFile.d.ts +1 -0
  47. package/parseFrcsPlotFile.d.ts.map +1 -0
  48. package/parseFrcsPlotFile.js +2 -1
  49. package/parseFrcsPlotFile.js.map +1 -0
  50. package/parseFrcsSurveyFile.d.ts +50 -46
  51. package/parseFrcsSurveyFile.d.ts.map +1 -0
  52. package/parseFrcsSurveyFile.js +281 -172
  53. package/parseFrcsSurveyFile.js.map +1 -0
  54. package/parseFrcsTripSummaryFile.d.ts +1 -0
  55. package/parseFrcsTripSummaryFile.d.ts.map +1 -0
  56. package/parseFrcsTripSummaryFile.js +2 -1
  57. package/parseFrcsTripSummaryFile.js.map +1 -0
  58. package/src/FrcsPlotFile.ts +9 -0
  59. package/src/FrcsPlotShot.ts +18 -0
  60. package/src/FrcsShot.ts +56 -0
  61. package/src/FrcsSurveyFile.ts +47 -0
  62. package/src/FrcsTrip.ts +25 -0
  63. package/src/FrcsTripSummary.ts +14 -0
  64. package/src/FrcsTripSummaryFile.ts +7 -0
  65. package/src/formatFrcsShot.ts +168 -0
  66. package/src/formatFrcsSurveyFile.ts +97 -0
  67. package/src/index.ts +29 -0
  68. package/src/node/index.ts +20 -0
  69. package/src/parseFrcsPlotFile.ts +168 -0
  70. package/src/parseFrcsSurveyFile.ts +788 -0
  71. package/src/parseFrcsTripSummaryFile.ts +76 -0
  72. package/src/string/index.ts +21 -0
  73. package/src/web/index.ts +119 -0
  74. package/string/index.d.ts +2 -1
  75. package/string/index.d.ts.map +1 -0
  76. package/string/index.js +6 -2
  77. package/string/index.js.map +1 -0
  78. package/web/index.d.ts +5 -4
  79. package/web/index.d.ts.map +1 -0
  80. package/web/index.js +15 -6
  81. package/web/index.js.map +1 -0
package/index.d.ts CHANGED
@@ -9,4 +9,6 @@ import { FrcsTripSummary } from './FrcsTripSummary';
9
9
  import { FrcsTripSummaryFile } from './FrcsTripSummaryFile';
10
10
  import parseFrcsTripSummaryFile from './parseFrcsTripSummaryFile';
11
11
  import formatFrcsShot from './formatFrcsShot';
12
- export { FrcsShot, FrcsShotKind, FrcsSurveyFile, FrcsTrip, FrcsTripHeader, parseFrcsSurveyFile, FrcsPlotShot, FrcsPlotFile, parseFrcsPlotFile, FrcsTripSummary, FrcsTripSummaryFile, parseFrcsTripSummaryFile, formatFrcsShot, };
12
+ import { formatFrcsSurveyFile } from './formatFrcsSurveyFile';
13
+ export { FrcsShot, FrcsShotKind, FrcsSurveyFile, FrcsTrip, FrcsTripHeader, parseFrcsSurveyFile, FrcsPlotShot, FrcsPlotFile, parseFrcsPlotFile, FrcsTripSummary, FrcsTripSummaryFile, parseFrcsTripSummaryFile, formatFrcsShot, formatFrcsSurveyFile, };
14
+ //# sourceMappingURL=index.d.ts.map
package/index.d.ts.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AACrD,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,mBAAmB,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAC7C,OAAO,iBAAiB,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,wBAAwB,MAAM,4BAA4B,CAAA;AACjE,OAAO,cAAc,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAE7D,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,QAAQ,EACR,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,YAAY,EACZ,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,cAAc,EACd,oBAAoB,GACrB,CAAA"}
package/index.js CHANGED
@@ -64,6 +64,12 @@ Object.defineProperty(exports, "formatFrcsShot", {
64
64
  return _formatFrcsShot["default"];
65
65
  }
66
66
  });
67
+ Object.defineProperty(exports, "formatFrcsSurveyFile", {
68
+ enumerable: true,
69
+ get: function get() {
70
+ return _formatFrcsSurveyFile.formatFrcsSurveyFile;
71
+ }
72
+ });
67
73
  Object.defineProperty(exports, "parseFrcsPlotFile", {
68
74
  enumerable: true,
69
75
  get: function get() {
@@ -92,4 +98,6 @@ var _parseFrcsPlotFile = _interopRequireDefault(require("./parseFrcsPlotFile.js"
92
98
  var _FrcsTripSummary = require("./FrcsTripSummary.js");
93
99
  var _FrcsTripSummaryFile = require("./FrcsTripSummaryFile.js");
94
100
  var _parseFrcsTripSummaryFile = _interopRequireDefault(require("./parseFrcsTripSummaryFile.js"));
95
- var _formatFrcsShot = _interopRequireDefault(require("./formatFrcsShot.js"));
101
+ var _formatFrcsShot = _interopRequireDefault(require("./formatFrcsShot.js"));
102
+ var _formatFrcsSurveyFile = require("./formatFrcsSurveyFile.js");
103
+ //# sourceMappingURL=index.js.map
package/index.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_FrcsTrip","require","_FrcsShot","_FrcsSurveyFile","_parseFrcsSurveyFile","_interopRequireDefault","_FrcsPlotShot","_FrcsPlotFile","_parseFrcsPlotFile","_FrcsTripSummary","_FrcsTripSummaryFile","_parseFrcsTripSummaryFile","_formatFrcsShot","_formatFrcsSurveyFile"],"sources":["src/index.ts"],"sourcesContent":["import { FrcsTrip, FrcsTripHeader } from './FrcsTrip'\nimport { FrcsShot, FrcsShotKind } from './FrcsShot'\nimport { FrcsSurveyFile } from './FrcsSurveyFile'\nimport parseFrcsSurveyFile from './parseFrcsSurveyFile'\nimport { FrcsPlotShot } from './FrcsPlotShot'\nimport { FrcsPlotFile } from './FrcsPlotFile'\nimport parseFrcsPlotFile from './parseFrcsPlotFile'\nimport { FrcsTripSummary } from './FrcsTripSummary'\nimport { FrcsTripSummaryFile } from './FrcsTripSummaryFile'\nimport parseFrcsTripSummaryFile from './parseFrcsTripSummaryFile'\nimport formatFrcsShot from './formatFrcsShot'\nimport { formatFrcsSurveyFile } from './formatFrcsSurveyFile'\n\nexport {\n FrcsShot,\n FrcsShotKind,\n FrcsSurveyFile,\n FrcsTrip,\n FrcsTripHeader,\n parseFrcsSurveyFile,\n FrcsPlotShot,\n FrcsPlotFile,\n parseFrcsPlotFile,\n FrcsTripSummary,\n FrcsTripSummaryFile,\n parseFrcsTripSummaryFile,\n formatFrcsShot,\n formatFrcsSurveyFile,\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AACA,IAAAE,eAAA,GAAAF,OAAA;AACA,IAAAG,oBAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,aAAA,GAAAL,OAAA;AACA,IAAAM,aAAA,GAAAN,OAAA;AACA,IAAAO,kBAAA,GAAAH,sBAAA,CAAAJ,OAAA;AACA,IAAAQ,gBAAA,GAAAR,OAAA;AACA,IAAAS,oBAAA,GAAAT,OAAA;AACA,IAAAU,yBAAA,GAAAN,sBAAA,CAAAJ,OAAA;AACA,IAAAW,eAAA,GAAAP,sBAAA,CAAAJ,OAAA;AACA,IAAAY,qBAAA,GAAAZ,OAAA","ignoreList":[]}
package/node/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
- export declare const parseFrcsSurveyFile: (file: string) => Promise<import("..").FrcsSurveyFile>;
1
+ export declare const parseFrcsSurveyFile: (file: string, rest_0?: import("../parseFrcsSurveyFile").ParseFrcsSurveyFileOptions | undefined) => Promise<import("..").FrcsSurveyFile>;
2
2
  export declare const parseFrcsPlotFile: (file: string) => Promise<import("..").FrcsPlotFile>;
3
3
  export declare const parseFrcsTripSummaryFile: (file: string) => Promise<import("..").FrcsTripSummaryFile>;
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/node/index.ts"],"names":[],"mappings":"AAiBA,eAAO,MAAM,mBAAmB,SAHvB,MAAM,2HAGiD,CAAA;AAChE,eAAO,MAAM,iBAAiB,SAJrB,MAAM,uCAI6C,CAAA;AAC5D,eAAO,MAAM,wBAAwB,SAL5B,MAAM,8CAK2D,CAAA"}
package/node/index.js CHANGED
@@ -12,9 +12,13 @@ var _parseFrcsPlotFile2 = _interopRequireDefault(require("../parseFrcsPlotFile.j
12
12
  var _parseFrcsTripSummaryFile2 = _interopRequireDefault(require("../parseFrcsTripSummaryFile.js"));
13
13
  var convert = function convert(fn) {
14
14
  return function (file) {
15
- return fn(file, _readline["default"].createInterface(_fs["default"].createReadStream(file)));
15
+ for (var _len = arguments.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
16
+ rest[_key - 1] = arguments[_key];
17
+ }
18
+ return fn.apply(void 0, [file, _readline["default"].createInterface(_fs["default"].createReadStream(file))].concat(rest));
16
19
  };
17
20
  };
18
21
  var parseFrcsSurveyFile = exports.parseFrcsSurveyFile = convert(_parseFrcsSurveyFile2["default"]);
19
22
  var parseFrcsPlotFile = exports.parseFrcsPlotFile = convert(_parseFrcsPlotFile2["default"]);
20
- var parseFrcsTripSummaryFile = exports.parseFrcsTripSummaryFile = convert(_parseFrcsTripSummaryFile2["default"]);
23
+ var parseFrcsTripSummaryFile = exports.parseFrcsTripSummaryFile = convert(_parseFrcsTripSummaryFile2["default"]);
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_fs","_interopRequireDefault","require","_readline","_parseFrcsSurveyFile2","_parseFrcsPlotFile2","_parseFrcsTripSummaryFile2","convert","fn","file","_len","arguments","length","rest","Array","_key","apply","readline","createInterface","fs","createReadStream","concat","parseFrcsSurveyFile","exports","_parseFrcsSurveyFile","parseFrcsPlotFile","_parseFrcsPlotFile","parseFrcsTripSummaryFile","_parseFrcsTripSummaryFile"],"sources":["../../src/node/index.ts"],"sourcesContent":["import fs from 'fs'\nimport readline from 'readline'\nimport _parseFrcsSurveyFile from '../parseFrcsSurveyFile'\nimport _parseFrcsPlotFile from '../parseFrcsPlotFile'\nimport _parseFrcsTripSummaryFile from '../parseFrcsTripSummaryFile'\n\nconst convert =\n <T, Rest extends any[]>(\n fn: (\n file: string,\n lines: AsyncIterable<string>,\n ...rest: Rest\n ) => Promise<T>\n ) =>\n (file: string, ...rest: Rest): Promise<T> =>\n fn(file, readline.createInterface(fs.createReadStream(file)), ...rest)\n\nexport const parseFrcsSurveyFile = convert(_parseFrcsSurveyFile)\nexport const parseFrcsPlotFile = convert(_parseFrcsPlotFile)\nexport const parseFrcsTripSummaryFile = convert(_parseFrcsTripSummaryFile)\n"],"mappings":";;;;;;;AAAA,IAAAA,GAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,qBAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,mBAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,0BAAA,GAAAL,sBAAA,CAAAC,OAAA;AAEA,IAAMK,OAAO,GACX,SADIA,OAAOA,CAETC,EAIe;EAAA,OAEjB,UAACC,IAAY;IAAA,SAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAKC,IAAI,OAAAC,KAAA,CAAAJ,IAAA,OAAAA,IAAA,WAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAAJF,IAAI,CAAAE,IAAA,QAAAJ,SAAA,CAAAI,IAAA;IAAA;IAAA,OACpBP,EAAE,CAAAQ,KAAA,UAACP,IAAI,EAAEQ,oBAAQ,CAACC,eAAe,CAACC,cAAE,CAACC,gBAAgB,CAACX,IAAI,CAAC,CAAC,EAAAY,MAAA,CAAKR,IAAI,EAAC;EAAA;AAAA;AAEnE,IAAMS,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,GAAGf,OAAO,CAACiB,gCAAoB,CAAC;AACzD,IAAMC,iBAAiB,GAAAF,OAAA,CAAAE,iBAAA,GAAGlB,OAAO,CAACmB,8BAAkB,CAAC;AACrD,IAAMC,wBAAwB,GAAAJ,OAAA,CAAAI,wBAAA,GAAGpB,OAAO,CAACqB,qCAAyB,CAAC","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@speleotica/frcsdata",
3
- "version": "4.2.0",
3
+ "version": "4.3.1",
4
4
  "description": "parser for Chip Hopper's survey data format used in Fisher Ridge Cave System",
5
5
  "sideEffects": false,
6
6
  "publishConfig": {
@@ -22,7 +22,7 @@
22
22
  "dependencies": {
23
23
  "@babel/runtime": "^7.18.6",
24
24
  "@speleotica/unitized": "^2.0.0",
25
- "parse-segment": "^1.5.1"
25
+ "parse-segment": "^1.5.4"
26
26
  },
27
27
  "main": "index.js",
28
28
  "types": "index.d.ts",
@@ -52,5 +52,8 @@
52
52
  "engines": {
53
53
  "node": ">=16"
54
54
  },
55
- "packageManager": "pnpm@8.11.0"
55
+ "packageManager": "pnpm@8.11.0",
56
+ "@jcoreio/toolchain": {
57
+ "migratedVersion": "4.9.0"
58
+ }
56
59
  }
@@ -14,3 +14,4 @@ import { FrcsPlotFile } from './FrcsPlotFile';
14
14
  AE11 9 10 -1516 1289 -3919 -348 195 610 -342 50 10 1</pre>
15
15
  */
16
16
  export default function parseFrcsPlotFile(file: string, lines: AsyncIterable<string>): Promise<FrcsPlotFile>;
17
+ //# sourceMappingURL=parseFrcsPlotFile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseFrcsPlotFile.d.ts","sourceRoot":"","sources":["src/parseFrcsPlotFile.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAI7C;;;;;;;;;;;;;GAaG;AACH,wBAA8B,iBAAiB,CAC7C,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,GAC3B,OAAO,CAAC,YAAY,CAAC,CAiJvB"}
@@ -265,4 +265,5 @@ function _parseFrcsPlotFile() {
265
265
  }));
266
266
  return _parseFrcsPlotFile.apply(this, arguments);
267
267
  }
268
- module.exports = exports.default;
268
+ module.exports = exports.default;
269
+ //# sourceMappingURL=parseFrcsPlotFile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseFrcsPlotFile.js","names":["_unitized","require","_parseSegment","_asyncIterator","r","n","t","o","e","Symbol","asyncIterator","iterator","call","AsyncFromSyncIterator","TypeError","AsyncFromSyncIteratorContinuation","Object","Promise","reject","done","resolve","value","then","s","next","prototype","apply","arguments","_return","_throw","parseFrcsPlotFile","_x","_x2","_parseFrcsPlotFile","_asyncToGenerator2","_regenerator","mark","_callee","file","lines","totalLength","shots","errors","lineNumber","error","parseUint","parseOptionalUint","parseLength","_iteratorAbruptCompletion","_didIteratorError","_iteratorError","_iterator","_step","line","toName","isSurface","fromNumber","toNumber","easting","northing","elevation","leftEasting","leftNorthing","rightEasting","rightNorthing","up","down","tripNumber","wrap","_callee$","_context","prev","_parseLength","startColumn","endColumn","fieldName","divisor","str","substring","test","concat","parseFloat","isNaN","Unitize","feet","_parseOptionalUint","parseInt","_parseUint","NaN","message","push","SegmentParseError","Segment","source","startLine","startCol","sent","abrupt","trim","t0","finish","stop","module","exports","default"],"sources":["src/parseFrcsPlotFile.ts"],"sourcesContent":["import { FrcsPlotShot } from './FrcsPlotShot'\nimport { FrcsPlotFile } from './FrcsPlotFile'\nimport { Length, UnitizedNumber, Unitize } from '@speleotica/unitized'\nimport { Segment, SegmentParseError } from 'parse-segment'\n\n/**\n * Parses data from a calculated survey file. These look like so:\n<pre> 123.182259\n AE20 1 1 0 0 0 153 -257 -51 85 0 20 1\n AE19 1 2 653 402 -548 1046 -587 -174 97 0 200 1\n AE18 2 3 669 449 -3002 995 94 -597 -56 250 0 1\n AE17 3 4 539 1217 -2770 497 47 -298 -28 0 0 1\n AE16 4 5 544 1230 -3441 411 -284 -246 170 60 10 1\n AE15 5 6 1679 1663 -3833 0 0 -282 283 20 10 1\n AE14 6 7 2026 2617 -3730 446 225 -446 -225 0 30 1\n AE13 7 8 391 3152 -5788 -111 691 0 0 200 50 1\n AE12 8 9 -1019 2175 -4630 -369 336 221 -201 40 40 1\n AE11 9 10 -1516 1289 -3919 -348 195 610 -342 50 10 1</pre>\n */\nexport default async function parseFrcsPlotFile(\n file: string,\n lines: AsyncIterable<string>\n): Promise<FrcsPlotFile> {\n let totalLength: UnitizedNumber<Length> = Unitize.feet(NaN)\n const shots: Array<FrcsPlotShot> = []\n const errors: Array<SegmentParseError> = []\n\n let lineNumber = 0\n\n const error = (\n message: string,\n line: string,\n startColumn: number,\n endColumn: number\n ): void => {\n errors.push(\n new SegmentParseError(\n message,\n new Segment({\n value: line,\n source: file,\n startLine: lineNumber - 1,\n startCol: 0,\n }).substring(startColumn, endColumn)\n )\n )\n }\n\n function parseUint(\n line: string,\n startColumn: number,\n endColumn: number,\n fieldName: string\n ): number | null {\n const str = line.substring(startColumn, endColumn)\n if (!/\\S/.test(str)) {\n error(`Missing ${fieldName}`, line, startColumn, endColumn)\n return null\n }\n if (!/^\\s*\\d+\\s*$/.test(str)) {\n error(`Invalid ${fieldName}`, line, startColumn, endColumn)\n return null\n }\n return parseInt(str)\n }\n\n function parseOptionalUint(\n line: string,\n startColumn: number,\n endColumn: number,\n fieldName: string\n ): number | null {\n const str = line.substring(startColumn, endColumn)\n if (!/\\S/.test(str)) {\n return null\n }\n if (!/^\\s*\\d+\\s*$/.test(str)) {\n error(`Invalid ${fieldName}`, line, startColumn, endColumn)\n return null\n }\n return parseInt(str)\n }\n\n function parseLength(\n line: string,\n startColumn: number,\n endColumn: number,\n fieldName: string,\n divisor: number\n ): UnitizedNumber<Length> | null {\n const str = line.substring(startColumn, endColumn)\n if (!/^\\s*-?\\d+\\s*$/.test(str)) {\n error(`Invalid ${fieldName}`, line, startColumn, endColumn)\n return null\n }\n const value = parseFloat(str)\n if (isNaN(value)) {\n error(`Missing ${fieldName}`, line, startColumn, endColumn)\n return null\n }\n return Unitize.feet(value / divisor)\n }\n\n for await (const line of lines) {\n lineNumber++\n if (lineNumber === 1) {\n totalLength = Unitize.feet(parseFloat(line))\n continue\n }\n if (!/\\S/.test(line)) continue\n const toName = line.substring(0, 6).trim()\n if (!toName) {\n error('Invalid to station name', line, 0, 6)\n continue\n }\n if (/[^ S]/.test(line[6])) {\n error('Invalid flag', line, 6, 7)\n continue\n }\n const isSurface = line[6] === 'S'\n const fromNumber = parseUint(line, 7, 12, 'from station number')\n if (fromNumber == null) continue\n const toNumber = parseUint(line, 12, 17, 'to station number')\n if (toNumber == null) continue\n const easting = parseLength(line, 17, 25, 'easting', 100)\n if (!easting) continue\n const northing = parseLength(line, 25, 33, 'northing', 100)\n if (!northing) continue\n const elevation = parseLength(line, 33, 40, 'elevation', 100)\n if (!elevation) continue\n const leftEasting = parseLength(line, 40, 46, 'left wall easting', 100)\n if (!leftEasting) continue\n const leftNorthing = parseLength(line, 46, 52, 'left wall northing', 100)\n if (!leftNorthing) continue\n const rightEasting = parseLength(line, 52, 58, 'right wall easting', 100)\n if (!rightEasting) continue\n const rightNorthing = parseLength(line, 58, 64, 'right wall northing', 100)\n if (!rightNorthing) continue\n const up = parseLength(line, 64, 68, 'up', 10)\n if (!up) continue\n const down = parseLength(line, 68, 72, 'down', 10)\n if (!down) continue\n const tripNumber = parseOptionalUint(line, 72, 78, 'trip number')\n\n shots.push({\n toName,\n isSurface,\n fromNumber,\n toNumber,\n easting,\n northing,\n elevation,\n leftEasting,\n leftNorthing,\n rightEasting,\n rightNorthing,\n up,\n down,\n tripNumber,\n })\n }\n\n return {\n totalLength,\n shots,\n errors,\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,48 +1,52 @@
1
- import { FrcsSurveyFile } from './FrcsSurveyFile';
1
+ import { FrcsShotColumnConfig, FrcsSurveyFile } from './FrcsSurveyFile';
2
+ export type ParseFrcsSurveyFileOptions = {
3
+ columns?: FrcsShotColumnConfig;
4
+ };
2
5
  /**
3
- * Parses a raw cdata.fr survey file. These look like so:
4
- *
5
- <pre> Fisher Ridge Cave System, Hart Co., KY
6
- ENTRANCE DROPS, JOE'S "I LOVE MY WIFE TRAVERSE", TRICKY TRAVERSE
7
- PETER QUICK, KEITH ORTIZ - 2-15-81
8
- This File has Crumps test connected. 11/20/12
9
- *
10
- FT C DD A
11
- AE20 0 1 3 0 2
12
- * %FS
13
- * AE20 0 0 0 Bug-can't put before so put after-so can't make 2 fixed 10/28/12
14
- AE19 AE20 9.3 60.0 60.0-36.0 2 12 0 20
15
- AE18 AE19 24.5 0.0 0.0-90.0 6 10 25 0
16
- AE17 AE18 8.0 350.5 350.5 17.0 3 5 0 0
17
- AE16 AE17 6.7 0.0 0.0-90.0 3 5 6 1
18
- AE15 AE16 12.6 70.5 71.0-18.0 4 0 2 1
19
- AE14 AE15 10.0 21.5 20.0 6.0 5 5 0 3
20
- AE13 AE14 26.8 288.0 286.0-50.0 0 7 20 5
21
- *
22
- *SHORT CANYON AT THE BASE OF THE SECOND DROP
23
- AE12 AE13 20.7 236.0 236.0 34.0 3 5 4 4
24
- AE11 AE12 12.4 210.0 210.0 35.0 7 4 5 1
25
- AE10 AE13 25.7 40.0 40.0 -9.0 2 2 3 6
26
- *
27
- *AE10 AT JOE'S " I LOVE MY WIFE TRAVERSE "
28
- AE9 AE10 17.8 32.5 31.0 23.0 4 5 20 15
29
- AE1 AE9 13.7 82.0 82.0-13.0
30
- A1 AE1 34.3 46.0 48.0-17.5
31
- *
32
- *SURVEY TO DOME NEAR THE ENTRANCE DOME (ABOVE THE SECOND DROP)
33
- AD1 AE15 8.0 200.0 200.0 0.0 3 1 1 1
34
- AD2 AD1 17.7 161.0 161.0 7.0 1 4 25 1
35
- AD3 AD2 10.4 180.0 180.0 50.0 4 1 15 5
36
- *
37
- TRICKY TRAVERSE AND THEN FIRST SURVEY IN UPPER CROWLWAY
38
- DAN CROWL, KEITH ORTIZ, CHIP HOPPER, PETER QUICK, LARRY BEAN 14 FEB 1981
39
- *
40
- FI B DD
41
- A2 A1 48 10 292.0 110.0-42.0 5 10 35 5
42
- A3 A2 12 5 333.5 153.5 35.0 3 1 15 5
43
- A4 A3 4 2 0.0 0.0 90.0 3 1 10 10
44
- ...</pre>
45
- *
46
- */
6
+ * Parses a raw cdata.fr survey file. These look like so:
7
+ *
8
+ <pre> Fisher Ridge Cave System, Hart Co., KY
9
+ ENTRANCE DROPS, JOE'S "I LOVE MY WIFE TRAVERSE", TRICKY TRAVERSE
10
+ PETER QUICK, KEITH ORTIZ - 2-15-81
11
+ This File has Crumps test connected. 11/20/12
12
+ *
13
+ FT C DD A
14
+ AE20 0 1 3 0 2
15
+ * %FS
16
+ * AE20 0 0 0 Bug-can't put before so put after-so can't make 2 fixed 10/28/12
17
+ AE19 AE20 9.3 60.0 60.0-36.0 2 12 0 20
18
+ AE18 AE19 24.5 0.0 0.0-90.0 6 10 25 0
19
+ AE17 AE18 8.0 350.5 350.5 17.0 3 5 0 0
20
+ AE16 AE17 6.7 0.0 0.0-90.0 3 5 6 1
21
+ AE15 AE16 12.6 70.5 71.0-18.0 4 0 2 1
22
+ AE14 AE15 10.0 21.5 20.0 6.0 5 5 0 3
23
+ AE13 AE14 26.8 288.0 286.0-50.0 0 7 20 5
24
+ *
25
+ *SHORT CANYON AT THE BASE OF THE SECOND DROP
26
+ AE12 AE13 20.7 236.0 236.0 34.0 3 5 4 4
27
+ AE11 AE12 12.4 210.0 210.0 35.0 7 4 5 1
28
+ AE10 AE13 25.7 40.0 40.0 -9.0 2 2 3 6
29
+ *
30
+ *AE10 AT JOE'S " I LOVE MY WIFE TRAVERSE "
31
+ AE9 AE10 17.8 32.5 31.0 23.0 4 5 20 15
32
+ AE1 AE9 13.7 82.0 82.0-13.0
33
+ A1 AE1 34.3 46.0 48.0-17.5
34
+ *
35
+ *SURVEY TO DOME NEAR THE ENTRANCE DOME (ABOVE THE SECOND DROP)
36
+ AD1 AE15 8.0 200.0 200.0 0.0 3 1 1 1
37
+ AD2 AD1 17.7 161.0 161.0 7.0 1 4 25 1
38
+ AD3 AD2 10.4 180.0 180.0 50.0 4 1 15 5
39
+ *
40
+ TRICKY TRAVERSE AND THEN FIRST SURVEY IN UPPER CROWLWAY
41
+ DAN CROWL, KEITH ORTIZ, CHIP HOPPER, PETER QUICK, LARRY BEAN 14 FEB 1981
42
+ *
43
+ FI B DD
44
+ A2 A1 48 10 292.0 110.0-42.0 5 10 35 5
45
+ A3 A2 12 5 333.5 153.5 35.0 3 1 15 5
46
+ A4 A3 4 2 0.0 0.0 90.0 3 1 10 10
47
+ ...</pre>
48
+ *
49
+ */
47
50
  export default function parseFrcsSurveyFile(file: any, // eslint-disable-line @typescript-eslint/no-explicit-any
48
- lines: AsyncIterable<string>): Promise<FrcsSurveyFile>;
51
+ lines: AsyncIterable<string>, { columns }?: ParseFrcsSurveyFileOptions): Promise<FrcsSurveyFile>;
52
+ //# sourceMappingURL=parseFrcsSurveyFile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseFrcsSurveyFile.d.ts","sourceRoot":"","sources":["src/parseFrcsSurveyFile.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,cAAc,EAEf,MAAM,kBAAkB,CAAA;AA8LzB,MAAM,MAAM,0BAA0B,GAAG;IAAE,OAAO,CAAC,EAAE,oBAAoB,CAAA;CAAE,CAAA;AAE3E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA4CI;AACJ,wBAA8B,mBAAmB,CAC/C,IAAI,EAAE,GAAG,EAAE,yDAAyD;AACpE,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAC5B,EAAE,OAAqC,EAAE,GAAE,0BAA+B,GACzE,OAAO,CAAC,cAAc,CAAC,CA8hBzB"}