text-to-map 1.1.28 → 1.1.30

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 (58) hide show
  1. package/dist/bin/address-points.js +1 -0
  2. package/dist/bin/cities.js +1 -0
  3. package/dist/bin/clear-all.js +8 -18
  4. package/dist/bin/constants.js +1 -0
  5. package/dist/bin/generate-syntax-diagrams.js +1 -0
  6. package/dist/bin/init-db.js +5 -15
  7. package/dist/bin/knex.js +6 -16
  8. package/dist/bin/parse-ordinance.js +60 -71
  9. package/dist/bin/polygons.js +23 -32
  10. package/dist/bin/regions.js +1 -0
  11. package/dist/bin/schools.js +1 -0
  12. package/dist/bin/streets.js +1 -0
  13. package/dist/bin/sync-all.js +1 -0
  14. package/dist/db/address-points.js +43 -54
  15. package/dist/db/cities.d.ts +5 -3
  16. package/dist/db/cities.js +56 -25
  17. package/dist/db/db.js +24 -32
  18. package/dist/db/founders.js +104 -91
  19. package/dist/db/meta.js +12 -20
  20. package/dist/db/migrations/20230704125715_initial.js +291 -303
  21. package/dist/db/migrations/20230731232915_city_positions.js +9 -21
  22. package/dist/db/migrations/20240106224603_city_polygon.js +7 -19
  23. package/dist/db/migrations/20240320200534_district_polygon.js +11 -0
  24. package/dist/db/migrations/20240729211323_ordinance_city.js +11 -0
  25. package/dist/db/regions.js +20 -28
  26. package/dist/db/schools.d.ts +1 -1
  27. package/dist/db/schools.js +18 -23
  28. package/dist/db/street-sync.js +13 -21
  29. package/dist/db/sync-log.js +25 -33
  30. package/dist/db/types.d.ts +3 -1
  31. package/dist/db/types.js +2 -1
  32. package/dist/index.d.ts +2 -2
  33. package/dist/index.js +12 -22
  34. package/dist/open-data-sync/address-points.js +21 -29
  35. package/dist/open-data-sync/cities.js +10 -18
  36. package/dist/open-data-sync/common.js +8 -16
  37. package/dist/open-data-sync/regions.js +13 -21
  38. package/dist/open-data-sync/schools.js +20 -28
  39. package/dist/open-data-sync/streets.js +40 -39
  40. package/dist/smd-to-csv/json-to-csv.js +1 -0
  41. package/dist/smd-to-csv/ordinance-to-csv-rules.js +4 -12
  42. package/dist/smd-to-csv/txt-to-json.js +59 -69
  43. package/dist/street-markdown/municipality.js +26 -28
  44. package/dist/street-markdown/polygons.d.ts +7 -4
  45. package/dist/street-markdown/polygons.js +190 -44
  46. package/dist/street-markdown/roman-numerals.js +1 -0
  47. package/dist/street-markdown/smd-line-parser.js +6 -8
  48. package/dist/street-markdown/smd-parser.js +2 -2
  49. package/dist/street-markdown/smd.d.ts +7 -1
  50. package/dist/street-markdown/smd.js +190 -164
  51. package/dist/street-markdown/token-definition.js +1 -0
  52. package/dist/street-markdown/types.d.ts +21 -11
  53. package/dist/street-markdown/types.js +3 -2
  54. package/dist/utils/atom.js +9 -17
  55. package/dist/utils/helpers.d.ts +3 -1
  56. package/dist/utils/helpers.js +12 -4
  57. package/dist/utils/jtsk2wgs84.js +1 -0
  58. package/package.json +5 -1
@@ -151,3 +151,4 @@ export function districtsToCsvRules(districts, includeDistrictName = false) {
151
151
  // console.log(error);
152
152
  // return;
153
153
  // }
154
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi10by1jc3YuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc21kLXRvLWNzdi9qc29uLXRvLWNzdi5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBRWxDLE1BQU0saUJBQWlCLEdBQUcseUJBQXlCLENBQUM7QUFDcEQsTUFBTSx1QkFBdUIsR0FBRyw2QkFBNkIsQ0FBQztBQUM5RCxNQUFNLFlBQVksR0FDaEIsMEVBQTBFLENBQUM7QUFDN0UsTUFBTSxhQUFhLEdBQUcsS0FBSyxDQUFDO0FBRTVCLE1BQU0sYUFBYSxHQUFHLFVBQVUsQ0FBQztBQUNqQyxNQUFNLGNBQWMsR0FBRyxTQUFTLENBQUM7QUFDakMsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDO0FBQzNCLE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQztBQUU3QixNQUFNLHNCQUFzQixHQUFHO0lBQzdCLEdBQUcsRUFBRSxLQUFLO0lBQ1YsSUFBSSxFQUFFLE1BQU07SUFDWixFQUFFLEVBQUUsSUFBSTtJQUNSLEdBQUcsRUFBRSxLQUFLO0NBQ1gsQ0FBQztBQUVGLE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQztBQUNmLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQztBQUNuQixNQUFNLGdCQUFnQixHQUFHO0lBQ3ZCLE9BQU8sRUFBRSxJQUFJO0lBQ2IsS0FBSyxFQUFFLElBQUk7SUFDWCxTQUFTLEVBQUU7UUFDVCxJQUFJLEVBQUUsc0JBQXNCLENBQUMsR0FBRztRQUNoQyxJQUFJLEVBQUUsSUFBSTtRQUNWLEVBQUUsRUFBRSxJQUFJO0tBQ1Q7Q0FDRixDQUFDO0FBRUYsTUFBTSxnQkFBZ0IsR0FBRyxDQUN2QixJQUFJLEVBQ0osSUFBSSxHQUFHLGdCQUFnQixDQUFDLE9BQU8sRUFDL0IsRUFBRSxHQUFHLGdCQUFnQixDQUFDLEtBQUssRUFDM0IsRUFBRTtJQUNGLE9BQU87UUFDTCxJQUFJLEVBQUUs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SyxJQUFJLElBQUksSUFBSSxLQUFLLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRTtvQkFDdEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLENBQUM7b0JBQ2xDLE9BQU87aUJBQ1I7Z0JBQ0QsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO29CQUNyQixLQUFLLENBQUMsSUFBSSxDQUNSLFVBQVU7d0JBQ1IsR0FBRzt3QkFDSCxJQUFJLENBQUMsSUFBSTt3QkFDVCxHQUFHO3dCQUNILElBQUksQ0FBQyxFQUFFO3dCQUNQLEdBQUc7d0JBQ0gsSUFBSSxDQUFDLElBQUk7d0JBQ1QsR0FBRzt3QkFDSCxNQUFNLENBQUMsSUFBSTt3QkFDWCxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQ25ELENBQUM7Z0JBQ0osQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7SUFFSCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDMUIsQ0FBQztBQUVELCtDQUErQztBQUMvQyxpQkFBaUI7QUFDakIsUUFBUTtBQUNSLGlDQUFpQztBQUNqQyxvQkFBb0I7QUFDcEIsd0JBQXdCO0FBQ3hCLFlBQVk7QUFDWixJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVhZEZpbGVTeW5jIH0gZnJvbSBcImZzXCI7XHJcblxyXG5jb25zdCBzdHJlZXROYW1lUGF0dGVybiA9IC9eKFteIC1dKyhbIC1dP1teIC1dKykqKS87XHJcbmNvbnN0IHN0cmVldFNlcmllc1BhcnRQYXR0ZXJuID0gLyhsaWNow6EgxI0ufHN1ZMOhIMSNLnzEjS4gcC58xI0uKS87XHJcbmNvbnN0IHJhbmdlUGF0dGVybiA9XHJcbiAgLyhcXGQrW2Etel0/ID9bLV0gP1xcZCtbYS16XT98KG9kICk/XFxkK1thLXpdPyggYSk/IHbDvcWhZXxcXGQrW2Etel0/KSgsID98IGEgKS87XHJcbmNvbnN0IG51bWJlclBhdHRlcm4gPSAvXFxkKy87XHJcblxyXG5jb25zdCBPZGRUeXBlU3RyaW5nID0gXCJsaWNow6EgxI0uXCI7XHJcbmNvbnN0IEV2ZW5UeXBlU3RyaW5nID0gXCJzdWTDoSDEjS5cIjtcclxuY29uc3QgQWxsVHlwZVN0cmluZyA9IFwixI0uXCI7XHJcbmNvbnN0IENQVHlwZVN0cmluZyA9IFwixI0uIHAuXCI7XHJcblxyXG5jb25zdCBTdHJlZXROdW1iZXJTZXJpZXNUeXBlID0ge1xyXG4gIE9kZDogXCJvZGRcIixcclxuICBFdmVuOiBcImV2ZW5cIixcclxuICBDUDogXCJjcFwiLFxyXG4gIEFsbDogXCJhbGxcIixcclxufTtcclxuXHJcbmNvbnN0IF9taW4gPSAwO1xyXG5jb25zdCBfbWF4ID0gMTAwMDA7XHJcbmNvbnN0IFN0cmVldE51bWJlclJ1bGUgPSB7XHJcbiAgTWluRnJvbTogX21pbixcclxuICBNYXhUbzogX21heCxcclxuICBFbXB0eVJ1bGU6IHtcclxuICAgIHR5cGU6IFN0cmVldE51bWJlclNlcmllc1R5cGUuQWxsLFxyXG4gICAgZnJvbTogX21pbixcclxuICAgIHRvOiBfbWF4LFxyXG4gIH0sXHJcbn07XHJcblxyXG5jb25zdCBjcmVhdGVTdHJlZXRSdWxlID0gKFxyXG4gIHR5cGUsXHJcbiAgZnJvbSA9IFN0cmVldE51bWJlclJ1bGUuTWluRnJvbSxcclxuICB0byA9IFN0cmVldE51bWJlclJ1bGUuTWF4VG9cclxuKSA9PiB7XHJcbiAgcmV0dXJuIHtcclxuICAgIHR5cGU6IHR5cGUsXHJcbiAgICBmcm9tOiBmcm9tLFxyXG4gICAgdG86IHRvLFxyXG4gIH07XHJcbn07XHJcblxyXG5jb25zdCBnZXRTdHJlZXRSdWxlcyA9IChudW1iZXJTcGVjaWZpY2F0aW9uKSA9PiB7XHJcbiAgbGV0IHJ1bGVzID0gW107XHJcbiAgbGV0IHBvc2l0aW9uID0gMDtcclxuXHJcbiAgaWYgKG51bWJlclNwZWNpZmljYXRpb24gPT0gXCJcIikge1xyXG4gICAgcmV0dXJuIFtTdHJlZXROdW1iZXJSdWxlLkVtcHR5UnVsZV07XHJcbiAgfVxyXG5cclxuICB3aGlsZSAocG9zaXRpb24gPCBudW1iZXJTcGVjaWZpY2F0aW9uLmxlbmd0aCkge1xyXG4gICAgdmFyIHJlbWFpbmRlciA9IG51bWJlclNwZWNpZmljYXRpb24uc3Vic3RyKHBvc2l0aW9uKTtcclxuICAgIHZhciBtYXRjaCA9IHN0cmVldFNlcmllc1BhcnRQYXR0ZXJuLmV4ZWMocmVtYWluZGVyKTtcclxuICAgIC8vIGlmIG5vIHNlcmllcyB0eXBlIGlzIGZvdW5kLCBpdCdzIGFuIGVycm9yXHJcbiAgICBpZiAobWF0Y2ggPT0gbnVsbCB8fCBtYXRjaC5pbmRleCAhPSAwKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gICAgdmFyIHR5cGUgPSBnZXRTZXJpZXNUeXBlKG1hdGNoWzBdKTtcclxuICAgIHBvc2l0aW9uICs9IG1hdGNoWzBdLmxlbmd0aDtcclxuICAgIHJlbWFpbmRlciA9IG51bWJlclNwZWNpZmljYXRpb24uc3Vic3RyKHBvc2l0aW9uKTtcclxuICAgIG1hdGNoID0gc3RyZWV0U2VyaWVzUGFydFBhdHRlcm4uZXhlYyhyZW1haW5kZXIpO1xyXG4gICAgdmFyIGVuZCA9IG51bWJlclNwZWNpZmljYXRpb24ubGVuZ3RoO1xyXG4gICAgaWYgKG1hdGNoICE9IG51bGwpIHtcclxuICAgICAgZW5kID0gcG9zaXRpb24gKyBtYXRjaC5pbmRleDtcclxuICAgIH1cclxuICAgIHZhciByYW5nZVBhcnQgPSBudW1iZXJTcGVjaWZpY2F0aW9uLnN1YnN0cihwb3NpdGlvbiwgZW5kIC0gcG9zaXRpb24pO1xyXG4gICAgcnVsZXMgPSBydWxlcy5jb25jYXQoZ2V0UnVsZXNGcm9tUmFuZ2VQYXJ0KHJhbmdlUGFydCwgdHlwZSkpO1xyXG4gICAgcG9zaXRpb24gPSBlbmQ7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gcnVsZXM7XHJcbn07XHJcblxyXG5jb25zdCBnZXRSdWxlc0Zyb21SYW5nZVBhcnQgPSAocmFuZ2VQYXJ0LCBzZXJpZXNUeXBlKSA9PiB7XHJcbiAgbGV0IHJ1bGVzID0gW107XHJcblxyXG4gIGlmIChyZW1vdmVTZXBhcmF0b3JGcm9tRW5kKHJhbmdlUGFydCkgPT0gXCJcIikge1xyXG4gICAgcnVsZXMucHVzaChjcmVhdGVTdHJlZXRSdWxlKHNlcmllc1R5cGUpKTtcclxuICAgIHJldHVybiBydWxlcztcclxuICB9XHJcblxyXG4gIGxldCBwb3NpdGlvbiA9IDA7XHJcbiAgcmFuZ2VQYXJ0ID0gcmFuZ2VQYXJ0LnRyaW0oKSArIFwiLCBcIjtcclxuICB3aGlsZSAocG9zaXRpb24gPCByYW5nZVBhcnQubGVuZ3RoKSB7XHJcbiAgICB2YXIgbWF0Y2ggPSByYW5nZVBhdHRlcm4uZXhlYyhyYW5nZVBhcnQuc3Vic3RyKHBvc2l0aW9uKSk7XHJcbiAgICBpZiAobWF0Y2ggPT0gbnVsbCkge1xyXG4gICAgICBicmVhaztcclxuICAgIH1cclxuICAgIHBvc2l0aW9uICs9IG1hdGNoLmluZGV4ICsgbWF0Y2hbMF0ubGVuZ3RoO1xyXG5cclxuICAgIHZhciB2YWx1ZSA9IHJlbW92ZVNlcGFyYXRvckZyb21FbmQobWF0Y2hbMF0pO1xyXG4gICAgaWYgKHZhbHVlLmluZGV4T2YoXCItXCIpICE9IC0xKSB7XHJcbiAgICAgIHZhciBmcm9tVG8gPSB2YWx1ZS5zcGxpdChcIi1cIik7XHJcbiAgICAgIHJ1bGVzLnB1c2goY3JlYXRlU3RyZWV0UnVsZShzZXJpZXNUeXBlLCBwYXJzZUludChmcm9tVG9bMF0pLCBmcm9tVG9bMV0pKTtcclxuICAgIH0gZWxzZSBpZiAodmFsdWUuaW5kZXhPZihcInbDvcWhZVwiKSAhPSAtMSkge1xyXG4gICAgICB2YXIgbnVtYmVyID0gcGFyc2VJbnQobnVtYmVyUGF0dGVybi5leGVjKHZhbHVlKVswXSk7XHJcbiAgICAgIHJ1bGVzLnB1c2goY3JlYXRlU3RyZWV0UnVsZShzZXJpZXNUeXBlLCBudW1iZXIpKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHZhciBudW1iZXIgPSBwYXJzZUludChudW1iZXJQYXR0ZXJuLmV4ZWModmFsdWUpWzBdKTtcclxuICAgICAgcnVsZXMucHVzaChjcmVhdGVTdHJlZXRSdWxlKHNlcmllc1R5cGUsIG51bWJlciwgbnVtYmVyKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZXR1cm4gcnVsZXM7XHJcbn07XHJcblxyXG5jb25zdCBnZXRTZXJpZXNUeXBlID0gKHBhdHRlcm4pID0+IHtcclxuICBzd2l0Y2ggKHBhdHRlcm4pIHtcclxuICAgIGNhc2UgT2RkVHlwZVN0cmluZzpcclxuICAgICAgcmV0dXJuIFN0cmVldE51bWJlclNlcmllc1R5cGUuT2RkO1xyXG4gICAgY2FzZSBFdmVuVHlwZVN0cmluZzpcclxuICAgICAgcmV0dXJuIFN0cmVldE51bWJlclNlcmllc1R5cGUuRXZlbjtcclxuICAgIGNhc2UgQ1BUeXBlU3RyaW5nOlxyXG4gICAgICByZXR1cm4gU3RyZWV0TnVtYmVyU2VyaWVzVHlwZS5DUDtcclxuICAgIGNhc2UgQWxsVHlwZVN0cmluZzpcclxuICAgIGRlZmF1bHQ6XHJcbiAgICAgIHJldHVybiBTdHJlZXROdW1iZXJTZXJpZXNUeXBlLkFsbDtcclxuICB9XHJcbn07XHJcblxyXG5jb25zdCByZW1vdmVTZXBhcmF0b3JGcm9tRW5kID0gKHRleHQpID0+IHtcclxuICB0ZXh0ID0gdGV4dC50cmltKCk7XHJcbiAgaWYgKHRleHRbdGV4dC5sZW5ndGggLSAxXSA9PSBcImFcIiB8fCB0ZXh0W3RleHQubGVuZ3RoIC0gMV0gPT0gXCIsXCIpIHtcclxuICAgIHRleHQgPSB0ZXh0LnN1YnN0cigwLCB0ZXh0Lmxlbmd0aCAtIDEpO1xyXG4gIH1cclxuICByZXR1cm4gdGV4dC50cmltKCk7XHJcbn07XHJcblxyXG4vLyBkZXNpcmVkIG91dHB1dCBmb3JtYXQ6XHJcbi8vIFDFmcOtxI1uw6Eoc3RyKTtmcm9tKGludCk7dG8oaW50KTtbb2RkfGV2ZW58YWxsfGNwXTtzY2hvb2woc3RyKVxyXG5leHBvcnQgZnVuY3Rpb24gZGlzdHJpY3RzVG9Dc3ZSdWxlcyhkaXN0cmljdHMsIGluY2x1ZGVEaXN0cmljdE5hbWUgPSBmYWxzZSkge1xyXG4gIGNvbnN0IGxpbmVzID0gW107XHJcbiAgZGlzdHJpY3RzLmZvckVhY2goKGRpc3RyaWN0KSA9PiB7XHJcbiAgICBkaXN0cmljdC5zY2hvb2xzLmZvckVhY2goKHNjaG9vbCkgPT4ge1xyXG4gICAgICBzY2hvb2wubGluZXMuZm9yRWFjaCgoc3RyZWV0KSA9PiB7XHJcbiAgICAgICAgaWYgKHN0cmVldFswXSA9PSBcIiFcIiB8fCBzdHJlZXQgPT0gXCJcIikge1xyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBsZXQgcmVzdWx0ID0gc3RyZWV0TmFtZVBhdHRlcm4uZXhlYyhzdHJlZXQpO1xyXG4gICAgICAgIGxldCBzdHJlZXROYW1lID0gcmVzdWx0WzBdO1xyXG4gICAgICAgIGxldCBudW1iZXJTcGVjaWZpY2F0aW9uID0gc3RyZWV0LnN1YnN0cihzdHJlZXROYW1lLmxlbmd0aCArIDMpLnRyaW0oKTtcclxuICAgICAgICBsZXQgcnVsZXMgPSBnZXRTdHJlZXRSdWxlcyhudW1iZXJTcGVjaWZpY2F0aW9uKTtcclxuICAgICAgICBpZiAocnVsZXMgPT0gbnVsbCB8fCBydWxlcy5sZW5ndGggPT0gMCkge1xyXG4gICAgICAgICAgY29uc29sZS5lcnJvcihcIkVycm9yOiBcIiArIHN0cmVldCk7XHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJ1bGVzLmZvckVhY2goKHJ1bGUpID0+IHtcclxuICAgICAgICAgIGxpbmVzLnB1c2goXHJcbiAgICAgICAgICAgIHN0cmVldE5hbWUgK1xyXG4gICAgICAgICAgICAgIFwiO1wiICtcclxuICAgICAgICAgICAgICBydWxlLmZyb20gK1xyXG4gICAgICAgICAgICAgIFwiO1wiICtcclxuICAgICAgICAgICAgICBydWxlLnRvICtcclxuICAgICAgICAgICAgICBcIjtcIiArXHJcbiAgICAgICAgICAgICAgcnVsZS50eXBlICtcclxuICAgICAgICAgICAgICBcIjtcIiArXHJcbiAgICAgICAgICAgICAgc2Nob29sLm5hbWUgK1xyXG4gICAgICAgICAgICAgIChpbmNsdWRlRGlzdHJpY3ROYW1lID8gXCI7XCIgKyBkaXN0cmljdC5uYW1lIDogXCJcIilcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfSk7XHJcblxyXG4gIHJldHVybiBsaW5lcy5qb2luKFwiXFxuXCIpO1xyXG59XHJcblxyXG4vLyBsZXQgcmF3ID0gcmVhZEZpbGVTeW5jKFwib3V0Lmpzb25cIiwgXCJ1dGYtOFwiKTtcclxuLy8gbGV0IGRpc3RyaWN0cztcclxuLy8gdHJ5IHtcclxuLy8gICBkaXN0cmljdHMgPSBKU09OLnBhcnNlKHJhdyk7XHJcbi8vIH0gY2F0Y2ggKGVycm9yKSB7XHJcbi8vICAgY29uc29sZS5sb2coZXJyb3IpO1xyXG4vLyAgIHJldHVybjtcclxuLy8gfVxyXG4iXX0=
@@ -1,23 +1,14 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
1
  import { districtsToCsvRules } from "./json-to-csv.js";
11
2
  import { getParsedDistricts } from "./txt-to-json.js";
12
3
  import { writeFileSync } from "fs";
13
- const main = () => __awaiter(void 0, void 0, void 0, function* () {
4
+ const main = async () => {
14
5
  // take first node argument as a file name
15
6
  if (process.argv.length < 3) {
16
7
  console.error("Missing file name argument");
17
8
  process.exit(1);
18
9
  }
19
10
  const fileName = process.argv[2];
20
- const districts = yield getParsedDistricts(fileName);
11
+ const districts = await getParsedDistricts(fileName);
21
12
  const csv = districtsToCsvRules(districts);
22
13
  if (process.argv.length >= 4) {
23
14
  const outputFileName = process.argv[3];
@@ -27,5 +18,6 @@ const main = () => __awaiter(void 0, void 0, void 0, function* () {
27
18
  else {
28
19
  console.log(csv);
29
20
  }
30
- });
21
+ };
31
22
  main();
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkaW5hbmNlLXRvLWNzdi1ydWxlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zbWQtdG8tY3N2L29yZGluYW5jZS10by1jc3YtcnVsZXMuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFdEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLElBQUksQ0FBQztBQUVuQyxNQUFNLElBQUksR0FBRyxLQUFLLElBQUksRUFBRTtJQUN0QiwwQ0FBMEM7SUFDMUMsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7UUFDM0IsT0FBTyxDQUFDLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1FBQzVDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDakI7SUFFRCxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRWpDLE1BQU0sU0FBUyxHQUFHLE1BQU0sa0JBQWtCLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDckQsTUFBTSxHQUFHLEdBQUcsbUJBQW1CLENBQUMsU0FBUyxDQUFDLENBQUM7SUFFM0MsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQUU7UUFDNUIsTUFBTSxjQUFjLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN2QyxPQUFPLENBQUMsR0FBRyxDQUFDLHFCQUFxQixjQUFjLEVBQUUsQ0FBQyxDQUFDO1FBQ25ELGFBQWEsQ0FBQyxjQUFjLEVBQUUsR0FBRyxDQUFDLENBQUM7S0FDcEM7U0FBTTtRQUNMLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7S0FDbEI7QUFDSCxDQUFDLENBQUM7QUFFRixJQUFJLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGRpc3RyaWN0c1RvQ3N2UnVsZXMgfSBmcm9tIFwiLi9qc29uLXRvLWNzdi5qc1wiO1xyXG5pbXBvcnQgeyBnZXRQYXJzZWREaXN0cmljdHMgfSBmcm9tIFwiLi90eHQtdG8tanNvbi5qc1wiO1xyXG5cclxuaW1wb3J0IHsgd3JpdGVGaWxlU3luYyB9IGZyb20gXCJmc1wiO1xyXG5cclxuY29uc3QgbWFpbiA9IGFzeW5jICgpID0+IHtcclxuICAvLyB0YWtlIGZpcnN0IG5vZGUgYXJndW1lbnQgYXMgYSBmaWxlIG5hbWVcclxuICBpZiAocHJvY2Vzcy5hcmd2Lmxlbmd0aCA8IDMpIHtcclxuICAgIGNvbnNvbGUuZXJyb3IoXCJNaXNzaW5nIGZpbGUgbmFtZSBhcmd1bWVudFwiKTtcclxuICAgIHByb2Nlc3MuZXhpdCgxKTtcclxuICB9XHJcblxyXG4gIGNvbnN0IGZpbGVOYW1lID0gcHJvY2Vzcy5hcmd2WzJdO1xyXG5cclxuICBjb25zdCBkaXN0cmljdHMgPSBhd2FpdCBnZXRQYXJzZWREaXN0cmljdHMoZmlsZU5hbWUpO1xyXG4gIGNvbnN0IGNzdiA9IGRpc3RyaWN0c1RvQ3N2UnVsZXMoZGlzdHJpY3RzKTtcclxuXHJcbiAgaWYgKHByb2Nlc3MuYXJndi5sZW5ndGggPj0gNCkge1xyXG4gICAgY29uc3Qgb3V0cHV0RmlsZU5hbWUgPSBwcm9jZXNzLmFyZ3ZbM107XHJcbiAgICBjb25zb2xlLmxvZyhgV3JpdGluZyBvdXRwdXQgdG8gJHtvdXRwdXRGaWxlTmFtZX1gKTtcclxuICAgIHdyaXRlRmlsZVN5bmMob3V0cHV0RmlsZU5hbWUsIGNzdik7XHJcbiAgfSBlbHNlIHtcclxuICAgIGNvbnNvbGUubG9nKGNzdik7XHJcbiAgfVxyXG59O1xyXG5cclxubWFpbigpO1xyXG4iXX0=
@@ -1,12 +1,3 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
1
  import { createReadStream } from "fs";
11
2
  import { once } from "events";
12
3
  import { createInterface } from "readline";
@@ -23,80 +14,79 @@ function getNewSchool(name) {
23
14
  lines: [],
24
15
  };
25
16
  }
26
- export function getParsedDistricts(filePath) {
27
- return __awaiter(this, void 0, void 0, function* () {
28
- const rl = createInterface({
29
- input: createReadStream(filePath),
30
- });
31
- let lineNumber = 1;
32
- let districts = [];
33
- let currentDistrict = null;
34
- let currentSchool = null;
35
- rl.on("line", function (line) {
36
- let s = line
37
- .trim()
38
- .replace(/ +(?= )/g, "")
39
- .replace(/–/g, "-")
40
- .replace(/nábř\./g, "nábřeží")
41
- .replace(/Nábř\./g, "Nábřeží")
42
- .replace(/nám\./g, "náměstí")
43
- .replace(/Nám\./g, "Náměstí");
44
- if (s[0] == "#") {
45
- if (currentSchool != null) {
46
- if (currentDistrict == null) {
47
- currentDistrict = getNewDistrict("");
48
- }
49
- currentDistrict.schools.push(currentSchool);
50
- currentSchool = null;
51
- }
52
- if (currentDistrict != null) {
53
- districts.push(currentDistrict);
17
+ export async function getParsedDistricts(filePath) {
18
+ const rl = createInterface({
19
+ input: createReadStream(filePath),
20
+ });
21
+ let lineNumber = 1;
22
+ let districts = [];
23
+ let currentDistrict = null;
24
+ let currentSchool = null;
25
+ rl.on("line", function (line) {
26
+ let s = line
27
+ .trim()
28
+ .replace(/ +(?= )/g, "")
29
+ .replace(/–/g, "-")
30
+ .replace(/nábř\./g, "nábřeží")
31
+ .replace(/Nábř\./g, "Nábřeží")
32
+ .replace(/nám\./g, "náměstí")
33
+ .replace(/Nám\./g, "Náměstí");
34
+ if (s[0] == "#") {
35
+ if (currentSchool != null) {
36
+ if (currentDistrict == null) {
37
+ currentDistrict = getNewDistrict("");
54
38
  }
55
- currentDistrict = getNewDistrict(s.substring(1).trim());
39
+ currentDistrict.schools.push(currentSchool);
56
40
  currentSchool = null;
57
41
  }
58
- else if (s == "") {
59
- if (currentSchool != null) {
60
- if (currentDistrict == null) {
61
- currentDistrict = getNewDistrict("");
62
- }
63
- currentDistrict.schools.push(currentSchool);
64
- currentSchool = null;
42
+ if (currentDistrict != null) {
43
+ districts.push(currentDistrict);
44
+ }
45
+ currentDistrict = getNewDistrict(s.substring(1).trim());
46
+ currentSchool = null;
47
+ }
48
+ else if (s == "") {
49
+ if (currentSchool != null) {
50
+ if (currentDistrict == null) {
51
+ currentDistrict = getNewDistrict("");
65
52
  }
53
+ currentDistrict.schools.push(currentSchool);
54
+ currentSchool = null;
55
+ }
56
+ }
57
+ else {
58
+ if (currentSchool == null) {
59
+ currentSchool = getNewSchool(s);
66
60
  }
67
61
  else {
68
- if (currentSchool == null) {
69
- currentSchool = getNewSchool(s);
62
+ if (s[0] == "!") {
63
+ currentSchool.lines.push(s);
70
64
  }
71
65
  else {
72
- if (s[0] == "!") {
66
+ if (pattern.test(s)) {
73
67
  currentSchool.lines.push(s);
74
68
  }
75
69
  else {
76
- if (pattern.test(s)) {
77
- currentSchool.lines.push(s);
78
- }
79
- else {
80
- console.error("Invalid street line on line " + lineNumber + ": " + s);
81
- }
70
+ console.error("Invalid street line on line " + lineNumber + ": " + s);
82
71
  }
83
72
  }
84
73
  }
85
- lineNumber++;
86
- });
87
- rl.on("close", function () {
88
- if (currentSchool != null) {
89
- if (currentDistrict == null) {
90
- currentDistrict = getNewDistrict("");
91
- }
92
- currentDistrict.schools.push(currentSchool);
93
- }
94
- if (currentDistrict != null) {
95
- districts.push(currentDistrict);
74
+ }
75
+ lineNumber++;
76
+ });
77
+ rl.on("close", function () {
78
+ if (currentSchool != null) {
79
+ if (currentDistrict == null) {
80
+ currentDistrict = getNewDistrict("");
96
81
  }
97
- // console.log(JSON.stringify(districts));
98
- });
99
- yield once(rl, "close");
100
- return districts;
82
+ currentDistrict.schools.push(currentSchool);
83
+ }
84
+ if (currentDistrict != null) {
85
+ districts.push(currentDistrict);
86
+ }
87
+ // console.log(JSON.stringify(districts));
101
88
  });
89
+ await once(rl, "close");
90
+ return districts;
102
91
  }
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHh0LXRvLWpzb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc21kLXRvLWNzdi90eHQtdG8tanNvbi5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFDdEMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUM5QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRTNDLE1BQU0sT0FBTyxHQUNYLCtiQUErYixDQUFDO0FBRWxjLFNBQVMsY0FBYyxDQUFDLElBQUk7SUFDMUIsT0FBTztRQUNMLElBQUksRUFBRSxJQUFJO1FBQ1YsT0FBTyxFQUFFLEVBQUU7S0FDWixDQUFDO0FBQ0osQ0FBQztBQUVELFNBQVMsWUFBWSxDQUFDLElBQUk7SUFDeEIsT0FBTztRQUNMLElBQUksRUFBRSxJQUFJO1FBQ1YsS0FBSyxFQUFFLEVBQUU7S0FDVixDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sQ0FBQyxLQUFLLFVBQVUsa0JBQWtCLENBQUMsUUFBUTtJQUMvQyxNQUFNLEVBQUUsR0FBRyxlQUFlLENBQUM7UUFDekIsS0FBSyxFQUFFLGdCQUFnQixDQUFDLFFBQVEsQ0FBQztLQUNsQyxDQUFDLENBQUM7SUFFSCxJQUFJLFVBQVUsR0FBRyxDQUFDLENBQUM7SUFDbkIsSUFBSSxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ25CLElBQUksZUFBZSxHQUFHLElBQUksQ0FBQztJQUMzQixJQUFJLGFBQWEsR0FBRyxJQUFJLENBQUM7SUFFekIsRUFBRSxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsVUFBVSxJQUFJO1FBQzFCLElBQUksQ0FBQyxHQUFHLElBQUk7YUFDVCxJQUFJLEVBQUU7YUFDTixPQUFPLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQzthQUN2QixPQUFPLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQzthQUNsQixPQUFPLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQzthQUM3QixPQUFPLENBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQzthQUM3QixPQUFPLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQzthQUM1QixPQUFPLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBRWhDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsRUFBRTtZQUNmLElBQUksYUFBYSxJQUFJLElBQUksRUFBRTtnQkFDekIsSUFBSSxlQUFlLElBQUksSUFBSSxFQUFFO29CQUMzQixlQUFlLEdBQUcsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2lCQUN0QztnQkFDRCxlQUFlLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztnQkFDNUMsYUFBYSxHQUFHLElBQUksQ0FBQzthQUN0QjtZQUVELElBQUksZUFBZSxJQUFJLElBQUksRUFBRTtnQkFDM0IsU0FBUyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQzthQUNqQztZQUVELGVBQWUsR0FBRyxjQUFjLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBRXhELGFBQWEsR0FBRyxJQUFJLENBQUM7U0FDdEI7YUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDbEIsSUFBSSxhQUFhLElBQUksSUFBSSxFQUFFO2dCQUN6QixJQUFJLGVBQWUsSUFBSSxJQUFJLEVBQUU7b0JBQzNCLGVBQWUsR0FBRyxjQUFjLENBQUMsRUFBRSxDQUFDLENBQUM7aUJBQ3RDO2dCQUNELGVBQWUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2dCQUM1QyxhQUFhLEdBQUcsSUFBSSxDQUFDO2FBQ3RCO1NBQ0Y7YUFBTTtZQUNMLElBQUksYUFBYSxJQUFJLElBQUksRUFBRTtnQkFDekIsYUFBYSxHQUFHLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNqQztpQkFBTTtnQkFDTCxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLEVBQUU7b0JBQ2YsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQzdCO3FCQUFNO29CQUNMLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRTt3QkFDbkIsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7cUJBQzdCO3lCQUFNO3dCQUNMLE9BQU8sQ0FBQyxLQUFLLENBQ1gsOEJBQThCLEdBQUcsVUFBVSxHQUFHLElBQUksR0FBRyxDQUFDLENBQ3ZELENBQUM7cUJBQ0g7aUJBQ0Y7YUFDRjtTQUNGO1FBRUQsVUFBVSxFQUFFLENBQUM7SUFDZixDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFO1FBQ2IsSUFBSSxhQUFhLElBQUksSUFBSSxFQUFFO1lBQ3pCLElBQUksZUFBZSxJQUFJLElBQUksRUFBRTtnQkFDM0IsZUFBZSxHQUFHLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQzthQUN0QztZQUNELGVBQWUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQzdDO1FBRUQsSUFBSSxlQUFlLElBQUksSUFBSSxFQUFFO1lBQzNCLFNBQVMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDakM7UUFFRCwwQ0FBMEM7SUFDNUMsQ0FBQyxDQUFDLENBQUM7SUFFSCxNQUFNLElBQUksQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDeEIsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZVJlYWRTdHJlYW0gfSBmcm9tIFwiZnNcIjtcclxuaW1wb3J0IHsgb25jZSB9IGZyb20gXCJldmVudHNcIjtcclxuaW1wb3J0IHsgY3JlYXRlSW50ZXJmYWNlIH0gZnJvbSBcInJlYWRsaW5lXCI7XHJcblxyXG5jb25zdCBwYXR0ZXJuID1cclxuICAvXihbXiDigJMsLV0rKFsg4oCTLV1bXiAs4oCTLV0rKSopKCBb4oCTLV0gKGxpY2jDoSDEjS58c3Vkw6EgxI0ufMSNLnzEjS4gcC4pKCAoXFxkK1thLXpBLVpdPyA/W+KAky1dID9cXGQrW2EtekEtWl0/fChvZCApP1xcZCtbYS16QS1aXT8oIGEpPyB2w73FoWV8XFxkK1thLXpBLVpdPykoKCwgP3wgP2EgPykoXFxkK1thLXpBLVpdPyA/W+KAky1dID9cXGQrW2EtekEtWl0/fChvZCApP1xcZCtbYS16QS1aXT8oIGEpPyB2w73FoWV8XFxkK1thLXpBLVpdPykpKik/KCgsID98ID9hID8pKGxpY2jDoSDEjS58c3Vkw6EgxI0ufMSNLnzEjS4gcC4pKCAoXFxkK1thLXpBLVpdPyA/W+KAky1dID9cXGQrW2EtekEtWl0/fChvZCApP1xcZCtbYS16QS1aXT8oIGEpPyB2w73FoWV8XFxkK1thLXpBLVpdPykoKCwgP3wgP2EgPykoXFxkK1thLXpBLVpdPyA/W+KAky1dID9cXGQrW2EtekEtWl0/fChvZCApP1xcZCtbYS16QS1aXT8oIGEpPyB2w73FoWV8XFxkK1thLXpBLVpdPykpKik/KSopPyQvO1xyXG5cclxuZnVuY3Rpb24gZ2V0TmV3RGlzdHJpY3QobmFtZSkge1xyXG4gIHJldHVybiB7XHJcbiAgICBuYW1lOiBuYW1lLFxyXG4gICAgc2Nob29sczogW10sXHJcbiAgfTtcclxufVxyXG5cclxuZnVuY3Rpb24gZ2V0TmV3U2Nob29sKG5hbWUpIHtcclxuICByZXR1cm4ge1xyXG4gICAgbmFtZTogbmFtZSxcclxuICAgIGxpbmVzOiBbXSxcclxuICB9O1xyXG59XHJcblxyXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0UGFyc2VkRGlzdHJpY3RzKGZpbGVQYXRoKSB7XHJcbiAgY29uc3QgcmwgPSBjcmVhdGVJbnRlcmZhY2Uoe1xyXG4gICAgaW5wdXQ6IGNyZWF0ZVJlYWRTdHJlYW0oZmlsZVBhdGgpLFxyXG4gIH0pO1xyXG5cclxuICBsZXQgbGluZU51bWJlciA9IDE7XHJcbiAgbGV0IGRpc3RyaWN0cyA9IFtdO1xyXG4gIGxldCBjdXJyZW50RGlzdHJpY3QgPSBudWxsO1xyXG4gIGxldCBjdXJyZW50U2Nob29sID0gbnVsbDtcclxuXHJcbiAgcmwub24oXCJsaW5lXCIsIGZ1bmN0aW9uIChsaW5lKSB7XHJcbiAgICBsZXQgcyA9IGxpbmVcclxuICAgICAgLnRyaW0oKVxyXG4gICAgICAucmVwbGFjZSgvICsoPz0gKS9nLCBcIlwiKVxyXG4gICAgICAucmVwbGFjZSgv4oCTL2csIFwiLVwiKVxyXG4gICAgICAucmVwbGFjZSgvbsOhYsWZXFwuL2csIFwibsOhYsWZZcW+w61cIilcclxuICAgICAgLnJlcGxhY2UoL07DoWLFmVxcLi9nLCBcIk7DoWLFmWXFvsOtXCIpXHJcbiAgICAgIC5yZXBsYWNlKC9uw6FtXFwuL2csIFwibsOhbcSbc3TDrVwiKVxyXG4gICAgICAucmVwbGFjZSgvTsOhbVxcLi9nLCBcIk7DoW3Em3N0w61cIik7XHJcblxyXG4gICAgaWYgKHNbMF0gPT0gXCIjXCIpIHtcclxuICAgICAgaWYgKGN1cnJlbnRTY2hvb2wgIT0gbnVsbCkge1xyXG4gICAgICAgIGlmIChjdXJyZW50RGlzdHJpY3QgPT0gbnVsbCkge1xyXG4gICAgICAgICAgY3VycmVudERpc3RyaWN0ID0gZ2V0TmV3RGlzdHJpY3QoXCJcIik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGN1cnJlbnREaXN0cmljdC5zY2hvb2xzLnB1c2goY3VycmVudFNjaG9vbCk7XHJcbiAgICAgICAgY3VycmVudFNjaG9vbCA9IG51bGw7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChjdXJyZW50RGlzdHJpY3QgIT0gbnVsbCkge1xyXG4gICAgICAgIGRpc3RyaWN0cy5wdXNoKGN1cnJlbnREaXN0cmljdCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGN1cnJlbnREaXN0cmljdCA9IGdldE5ld0Rpc3RyaWN0KHMuc3Vic3RyaW5nKDEpLnRyaW0oKSk7XHJcblxyXG4gICAgICBjdXJyZW50U2Nob29sID0gbnVsbDtcclxuICAgIH0gZWxzZSBpZiAocyA9PSBcIlwiKSB7XHJcbiAgICAgIGlmIChjdXJyZW50U2Nob29sICE9IG51bGwpIHtcclxuICAgICAgICBpZiAoY3VycmVudERpc3RyaWN0ID09IG51bGwpIHtcclxuICAgICAgICAgIGN1cnJlbnREaXN0cmljdCA9IGdldE5ld0Rpc3RyaWN0KFwiXCIpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBjdXJyZW50RGlzdHJpY3Quc2Nob29scy5wdXNoKGN1cnJlbnRTY2hvb2wpO1xyXG4gICAgICAgIGN1cnJlbnRTY2hvb2wgPSBudWxsO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAoY3VycmVudFNjaG9vbCA9PSBudWxsKSB7XHJcbiAgICAgICAgY3VycmVudFNjaG9vbCA9IGdldE5ld1NjaG9vbChzKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBpZiAoc1swXSA9PSBcIiFcIikge1xyXG4gICAgICAgICAgY3VycmVudFNjaG9vbC5saW5lcy5wdXNoKHMpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBpZiAocGF0dGVybi50ZXN0KHMpKSB7XHJcbiAgICAgICAgICAgIGN1cnJlbnRTY2hvb2wubGluZXMucHVzaChzKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoXHJcbiAgICAgICAgICAgICAgXCJJbnZhbGlkIHN0cmVldCBsaW5lIG9uIGxpbmUgXCIgKyBsaW5lTnVtYmVyICsgXCI6IFwiICsgc1xyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGxpbmVOdW1iZXIrKztcclxuICB9KTtcclxuXHJcbiAgcmwub24oXCJjbG9zZVwiLCBmdW5jdGlvbiAoKSB7XHJcbiAgICBpZiAoY3VycmVudFNjaG9vbCAhPSBudWxsKSB7XHJcbiAgICAgIGlmIChjdXJyZW50RGlzdHJpY3QgPT0gbnVsbCkge1xyXG4gICAgICAgIGN1cnJlbnREaXN0cmljdCA9IGdldE5ld0Rpc3RyaWN0KFwiXCIpO1xyXG4gICAgICB9XHJcbiAgICAgIGN1cnJlbnREaXN0cmljdC5zY2hvb2xzLnB1c2goY3VycmVudFNjaG9vbCk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKGN1cnJlbnREaXN0cmljdCAhPSBudWxsKSB7XHJcbiAgICAgIGRpc3RyaWN0cy5wdXNoKGN1cnJlbnREaXN0cmljdCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gY29uc29sZS5sb2coSlNPTi5zdHJpbmdpZnkoZGlzdHJpY3RzKSk7XHJcbiAgfSk7XHJcblxyXG4gIGF3YWl0IG9uY2UocmwsIFwiY2xvc2VcIik7XHJcbiAgcmV0dXJuIGRpc3RyaWN0cztcclxufVxyXG4iXX0=
@@ -1,12 +1,3 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
1
  import { findMunicipalityByNameAndType, findMunicipalityPartByName, } from "../db/founders";
11
2
  import { MunicipalityType } from "../db/types";
12
3
  const municipalitySwitchStartPattern = /^navíc ulice /;
@@ -19,7 +10,7 @@ const restOfMunicipalityPartPattern = /^zbytek části (obce|města) (?<name>.+)
19
10
  export const isMunicipalitySwitch = (line) => {
20
11
  return municipalitySwitchStartPattern.test(line);
21
12
  };
22
- export const getSwitchMunicipality = (line, founder) => __awaiter(void 0, void 0, void 0, function* () {
13
+ export const getSwitchMunicipality = async (line, founder) => {
23
14
  const match = municipalitySwitchPattern.exec(line);
24
15
  if (match === null) {
25
16
  return {
@@ -34,8 +25,8 @@ export const getSwitchMunicipality = (line, founder) => __awaiter(void 0, void 0
34
25
  };
35
26
  }
36
27
  const { type, name } = match.groups;
37
- return yield getMunicipalityResult(type, cleanName(name), line, founder);
38
- });
28
+ return await getMunicipalityResult(type, cleanName(name), line, founder);
29
+ };
39
30
  export const isWholeMunicipality = (line) => {
40
31
  return wholeMunicipalityStartPattern.test(line);
41
32
  };
@@ -48,7 +39,7 @@ export const isRestOfMunicipalityLine = (line) => {
48
39
  export const isRestOfMunicipalityPartLine = (line) => {
49
40
  return restOfMunicipalityPartPattern.test(line);
50
41
  };
51
- export const getRestOfMunicipalityPart = (line, founder) => __awaiter(void 0, void 0, void 0, function* () {
42
+ export const getRestOfMunicipalityPart = async (line, founder) => {
52
43
  const match = restOfMunicipalityPartPattern.exec(line);
53
44
  if (match === null) {
54
45
  return {
@@ -63,9 +54,9 @@ export const getRestOfMunicipalityPart = (line, founder) => __awaiter(void 0, vo
63
54
  };
64
55
  }
65
56
  const { name } = match.groups;
66
- return yield getMunicipalityPartResult(name, line, founder);
67
- });
68
- export const getWholeMunicipality = (line, founder) => __awaiter(void 0, void 0, void 0, function* () {
57
+ return await getMunicipalityPartResult(name, line, founder);
58
+ };
59
+ export const getWholeMunicipality = async (line, founder) => {
69
60
  const match = wholeMunicipalityPattern.exec(line);
70
61
  if (match === null) {
71
62
  return {
@@ -80,29 +71,35 @@ export const getWholeMunicipality = (line, founder) => __awaiter(void 0, void 0,
80
71
  };
81
72
  }
82
73
  const { type, name } = match.groups;
83
- return yield getMunicipalityResult(type, cleanName(name), line, founder);
84
- });
85
- const getMunicipalityResult = (type, name, line, founder) => __awaiter(void 0, void 0, void 0, function* () {
74
+ return await getMunicipalityResult(type, cleanName(name), line, founder);
75
+ };
76
+ const getMunicipalityResult = async (type, name, line, founder) => {
86
77
  const typeValue = getMunicipalityType(type);
87
- const { municipality, errors } = yield findMunicipalityByNameAndType(name, typeValue, founder);
78
+ const { municipality, errors } = await findMunicipalityByNameAndType(name, typeValue, founder);
88
79
  const startOffset = line.indexOf(name);
89
80
  const endOffset = startOffset + name.length + 1;
90
81
  return {
91
82
  municipality,
92
- errors: errors.map((error) => (Object.assign(Object.assign({}, error), { startOffset,
93
- endOffset }))),
83
+ errors: errors.map((error) => ({
84
+ ...error,
85
+ startOffset,
86
+ endOffset,
87
+ })),
94
88
  };
95
- });
96
- export const getMunicipalityPartResult = (name, line, founder) => __awaiter(void 0, void 0, void 0, function* () {
97
- const { municipalityPartCode, errors } = yield findMunicipalityPartByName(name, founder);
89
+ };
90
+ export const getMunicipalityPartResult = async (name, line, founder) => {
91
+ const { municipalityPartCode, errors } = await findMunicipalityPartByName(name, founder);
98
92
  const startOffset = line.indexOf(name);
99
93
  const endOffset = startOffset + name.length + 1;
100
94
  return {
101
95
  municipalityPartCode,
102
- errors: errors.map((error) => (Object.assign(Object.assign({}, error), { startOffset,
103
- endOffset }))),
96
+ errors: errors.map((error) => ({
97
+ ...error,
98
+ startOffset,
99
+ endOffset,
100
+ })),
104
101
  };
105
- });
102
+ };
106
103
  const getMunicipalityType = (type) => {
107
104
  switch (type) {
108
105
  case "městské části":
@@ -116,3 +113,4 @@ const getMunicipalityType = (type) => {
116
113
  const cleanName = (name) => {
117
114
  return name.trim();
118
115
  };
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVuaWNpcGFsaXR5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0cmVldC1tYXJrZG93bi9tdW5pY2lwYWxpdHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLDZCQUE2QixFQUM3QiwwQkFBMEIsR0FDM0IsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQVcsZ0JBQWdCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFHeEQsTUFBTSw4QkFBOEIsR0FBRyxlQUFlLENBQUM7QUFFdkQsTUFBTSx5QkFBeUIsR0FDN0Isb0ZBQW9GLENBQUM7QUFFdkYsTUFBTSw2QkFBNkIsR0FBRyxTQUFTLENBQUM7QUFFaEQsTUFBTSx3QkFBd0IsR0FDNUIsd0VBQXdFLENBQUM7QUFFM0UsTUFBTSwyQkFBMkIsR0FDL0IsNkNBQTZDLENBQUM7QUFFaEQsTUFBTSx5QkFBeUIsR0FDN0IsZ0VBQWdFLENBQUM7QUFDbkUsTUFBTSw2QkFBNkIsR0FDakMsNENBQTRDLENBQUM7QUFFL0MsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxJQUFZLEVBQVcsRUFBRTtJQUM1RCxPQUFPLDhCQUE4QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUNuRCxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxLQUFLLEVBQ3hDLElBQVksRUFDWixPQUFnQixFQUNlLEVBQUU7SUFDakMsTUFBTSxLQUFLLEdBQUcseUJBQXlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ25ELElBQUksS0FBSyxLQUFLLElBQUksRUFBRTtRQUNsQixPQUFPO1lBQ0wsTUFBTSxFQUFFO2dCQUNOO29CQUNFLE9BQU8sRUFDTCxtTEFBbUw7b0JBQ3JMLFdBQVcsRUFBRSxDQUFDO29CQUNkLFNBQVMsRUFBRSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUM7aUJBQzNCO2FBQ0Y7WUFDRCxZQUFZLEVBQUUs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S0FBSyxPQUFPO1lBQ1YsT0FBTyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUM7S0FDaEM7QUFDSCxDQUFDLENBQUM7QUFFRixNQUFNLFNBQVMsR0FBRyxDQUFDLElBQVksRUFBVSxFQUFFO0lBQ3pDLE9BQU8sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0FBQ3JCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgZmluZE11bmljaXBhbGl0eUJ5TmFtZUFuZFR5cGUsXHJcbiAgZmluZE11bmljaXBhbGl0eVBhcnRCeU5hbWUsXHJcbn0gZnJvbSBcIi4uL2RiL2ZvdW5kZXJzXCI7XHJcbmltcG9ydCB7IEZvdW5kZXIsIE11bmljaXBhbGl0eVR5cGUgfSBmcm9tIFwiLi4vZGIvdHlwZXNcIjtcclxuaW1wb3J0IHsgRGJNdW5pY2lwYWxpdHlSZXN1bHQsIE11bmljaXBhbGl0eVBhcnRSZXN1bHQgfSBmcm9tIFwiLi90eXBlc1wiO1xyXG5cclxuY29uc3QgbXVuaWNpcGFsaXR5U3dpdGNoU3RhcnRQYXR0ZXJuID0gL15uYXbDrWMgdWxpY2UgLztcclxuXHJcbmNvbnN0IG11bmljaXBhbGl0eVN3aXRjaFBhdHRlcm4gPVxyXG4gIC9ebmF2w61jIHVsaWNlICh6ICk/KD88dHlwZT5txJtzdHNrw6kgxI3DoXN0aXxtxJtzdHNrw6lobyBvYnZvZHV8b2JjZXxtxJtzdGEpICg/PG5hbWU+LispOiQvO1xyXG5cclxuY29uc3Qgd2hvbGVNdW5pY2lwYWxpdHlTdGFydFBhdHRlcm4gPSAvXsO6emVtw60gLztcclxuXHJcbmNvbnN0IHdob2xlTXVuaWNpcGFsaXR5UGF0dGVybiA9XHJcbiAgL17DunplbcOtICg/PHR5cGU+bcSbc3Rza8OpIMSNw6FzdGl8bcSbc3Rza8OpaG8gb2J2b2R1fG9iY2V8bcSbc3RhKSAoPzxuYW1lPi4rKSQvO1xyXG5cclxuY29uc3QgcmVzdFdpdGhOb1N0cmVldE5hbWVQYXR0ZXJuID1cclxuICAvXnbFoWVjaG55IG9zdGF0bsOtIGJ1ZG92eSBiZXogbsOhenZ1IHVsaWNlXFxzKiQvO1xyXG5cclxuY29uc3QgcmVzdE9mTXVuaWNpcGFsaXR5UGF0dGVybiA9XHJcbiAgL156Ynl0ZWsgKD88dHlwZT5txJtzdHNrw6kgxI3DoXN0aXxtxJtzdHNrw6lobyBvYnZvZHV8b2JjZXxtxJtzdGEpXFxzKiQvO1xyXG5jb25zdCByZXN0T2ZNdW5pY2lwYWxpdHlQYXJ0UGF0dGVybiA9XHJcbiAgL156Ynl0ZWsgxI3DoXN0aSAob2JjZXxtxJtzdGEpICg/PG5hbWU+LispXFxzKiQvO1xyXG5cclxuZXhwb3J0IGNvbnN0IGlzTXVuaWNpcGFsaXR5U3dpdGNoID0gKGxpbmU6IHN0cmluZyk6IGJvb2xlYW4gPT4ge1xyXG4gIHJldHVybiBtdW5pY2lwYWxpdHlTd2l0Y2hTdGFydFBhdHRlcm4udGVzdChsaW5lKTtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBnZXRTd2l0Y2hNdW5pY2lwYWxpdHkgPSBhc3luYyAoXHJcbiAgbGluZTogc3RyaW5nLFxyXG4gIGZvdW5kZXI6IEZvdW5kZXJcclxuKTogUHJvbWlzZTxEYk11bmljaXBhbGl0eVJlc3VsdD4gPT4ge1xyXG4gIGNvbnN0IG1hdGNoID0gbXVuaWNpcGFsaXR5U3dpdGNoUGF0dGVybi5leGVjKGxpbmUpO1xyXG4gIGlmIChtYXRjaCA9PT0gbnVsbCkge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgZXJyb3JzOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbWVzc2FnZTpcclxuICAgICAgICAgICAgXCJOZXBsYXRuw70gesOhcGlzIHBybyBkb8SNYXNub3Ugem3Em251IG9iY2UgdiBkZWZpbmljaSB1bGljLiBTcHLDoXZuw70gesOhcGlzIGplOiBuYXbDrWMgdWxpY2UgPHR5cD4gPG7DoXpldiBvYmNlPi4gTmFwxZkuOiAnbmF2w61jIHVsaWNlIG9iY2UgTW9rcsOhIExob3RhOicgKG7DoXpldiBvYmNlIG11c8OtIGLDvXQgdiAxLiBww6FkxJspLlwiLFxyXG4gICAgICAgICAgc3RhcnRPZmZzZXQ6IDAsXHJcbiAgICAgICAgICBlbmRPZmZzZXQ6IGxpbmUubGVuZ3RoICsgMSxcclxuICAgICAgICB9LFxyXG4gICAgICBdLFxyXG4gICAgICBtdW5pY2lwYWxpdHk6IG51bGwsXHJcbiAgICB9O1xyXG4gIH1cclxuICBjb25zdCB7IHR5cGUsIG5hbWUgfSA9IG1hdGNoLmdyb3VwcztcclxuICByZXR1cm4gYXdhaXQgZ2V0TXVuaWNpcGFsaXR5UmVzdWx0KHR5cGUsIGNsZWFuTmFtZShuYW1lKSwgbGluZSwgZm91bmRlcik7XHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgaXNXaG9sZU11bmljaXBhbGl0eSA9IChsaW5lOiBzdHJpbmcpOiBib29sZWFuID0+IHtcclxuICByZXR1cm4gd2hvbGVNdW5pY2lwYWxpdHlTdGFydFBhdHRlcm4udGVzdChsaW5lKTtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBpc1Jlc3RXaXRoTm9TdHJlZXROYW1lTGluZSA9IChsaW5lOiBzdHJpbmcpOiBib29sZWFuID0+IHtcclxuICByZXR1cm4gcmVzdFdpdGhOb1N0cmVldE5hbWVQYXR0ZXJuLnRlc3QobGluZSk7XHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgaXNSZXN0T2ZNdW5pY2lwYWxpdHlMaW5lID0gKGxpbmU6IHN0cmluZyk6IGJvb2xlYW4gPT4ge1xyXG4gIHJldHVybiByZXN0T2ZNdW5pY2lwYWxpdHlQYXR0ZXJuLnRlc3QobGluZSk7XHJcbn07XHJcblxyXG5leHBvcnQgY29uc3QgaXNSZXN0T2ZNdW5pY2lwYWxpdHlQYXJ0TGluZSA9IChsaW5lOiBzdHJpbmcpOiBib29sZWFuID0+IHtcclxuICByZXR1cm4gcmVzdE9mTXVuaWNpcGFsaXR5UGFydFBhdHRlcm4udGVzdChsaW5lKTtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBnZXRSZXN0T2ZNdW5pY2lwYWxpdHlQYXJ0ID0gYXN5bmMgKFxyXG4gIGxpbmU6IHN0cmluZyxcclxuICBmb3VuZGVyOiBGb3VuZGVyXHJcbik6IFByb21pc2U8TXVuaWNpcGFsaXR5UGFydFJlc3VsdD4gPT4ge1xyXG4gIGNvbnN0IG1hdGNoID0gcmVzdE9mTXVuaWNpcGFsaXR5UGFydFBhdHRlcm4uZXhlYyhsaW5lKTtcclxuICBpZiAobWF0Y2ggPT09IG51bGwpIHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIGVycm9yczogW1xyXG4gICAgICAgIHtcclxuICAgICAgICAgIG1lc3NhZ2U6XHJcbiAgICAgICAgICAgIFwiTmVwbGF0bsO9IHrDoXBpcyBwcm8gcMWZaWTDoW7DrSB6Ynl0a3UgxI3DoXN0aSBvYmNlLiBTcHLDoXZuw70gesOhcGlzIGplOiB6Ynl0ZWsgxI3DoXN0aSA8dHlwPiA8bsOhemV2IG9iY2U+LiBOYXDFmS46ICd6Ynl0ZWsgxI3DoXN0aSBvYmNlIE1hbMWhb3ZpY2UnIChuw6F6ZXYgxI3DoXN0aSBvYmNlIG11c8OtIGLDvXQgdiAxLiBww6FkxJspLlwiLFxyXG4gICAgICAgICAgc3RhcnRPZmZzZXQ6IDAsXHJcbiAgICAgICAgICBlbmRPZmZzZXQ6IGxpbmUubGVuZ3RoICsgMSxcclxuICAgICAgICB9LFxyXG4gICAgICBdLFxyXG4gICAgICBtdW5pY2lwYWxpdHlQYXJ0Q29kZTogbnVsbCxcclxuICAgIH07XHJcbiAgfVxyXG4gIGNvbnN0IHsgbmFtZSB9ID0gbWF0Y2guZ3JvdXBzO1xyXG4gIHJldHVybiBhd2FpdCBnZXRNdW5pY2lwYWxpdHlQYXJ0UmVzdWx0KG5hbWUsIGxpbmUsIGZvdW5kZXIpO1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IGdldFdob2xlTXVuaWNpcGFsaXR5ID0gYXN5bmMgKFxyXG4gIGxpbmU6IHN0cmluZyxcclxuICBmb3VuZGVyOiBGb3VuZGVyXHJcbik6IFByb21pc2U8RGJNdW5pY2lwYWxpdHlSZXN1bHQ+ID0+IHtcclxuICBjb25zdCBtYXRjaCA9IHdob2xlTXVuaWNpcGFsaXR5UGF0dGVybi5leGVjKGxpbmUpO1xyXG4gIGlmIChtYXRjaCA9PT0gbnVsbCkge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgZXJyb3JzOiBbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgbWVzc2FnZTpcclxuICAgICAgICAgICAgXCJOZXBsYXRuw70gesOhcGlzIHBybyBwxZlpZMOhbsOtIGNlbMOpIG9iY2UuIFNwcsOhdm7DvSB6w6FwaXMgamU6IMO6emVtw60gPHR5cD4gPG7DoXpldiBvYmNlPi4gTmFwxZkuOiAnw7p6ZW3DrSBvYmNlIEtsYWRubycgKG7DoXpldiBvYmNlIG11c8OtIGLDvXQgdiAxLiBww6FkxJspLlwiLFxyXG4gICAgICAgICAgc3RhcnRPZmZzZXQ6IDAsXHJcbiAgICAgICAgICBlbmRPZmZzZXQ6IGxpbmUubGVuZ3RoICsgMSxcclxuICAgICAgICB9LFxyXG4gICAgICBdLFxyXG4gICAgICBtdW5pY2lwYWxpdHk6IG51bGwsXHJcbiAgICB9O1xyXG4gIH1cclxuICBjb25zdCB7IHR5cGUsIG5hbWUgfSA9IG1hdGNoLmdyb3VwcztcclxuICByZXR1cm4gYXdhaXQgZ2V0TXVuaWNpcGFsaXR5UmVzdWx0KHR5cGUsIGNsZWFuTmFtZShuYW1lKSwgbGluZSwgZm91bmRlcik7XHJcbn07XHJcblxyXG5jb25zdCBnZXRNdW5pY2lwYWxpdHlSZXN1bHQgPSBhc3luYyAoXHJcbiAgdHlwZTogc3RyaW5nLFxyXG4gIG5hbWU6IHN0cmluZyxcclxuICBsaW5lOiBzdHJpbmcsXHJcbiAgZm91bmRlcjogRm91bmRlclxyXG4pOiBQcm9taXNlPERiTXVuaWNpcGFsaXR5UmVzdWx0PiA9PiB7XHJcbiAgY29uc3QgdHlwZVZhbHVlID0gZ2V0TXVuaWNpcGFsaXR5VHlwZSh0eXBlKTtcclxuICBjb25zdCB7IG11bmljaXBhbGl0eSwgZXJyb3JzIH0gPSBhd2FpdCBmaW5kTXVuaWNpcGFsaXR5QnlOYW1lQW5kVHlwZShcclxuICAgIG5hbWUsXHJcbiAgICB0eXBlVmFsdWUsXHJcbiAgICBmb3VuZGVyXHJcbiAgKTtcclxuXHJcbiAgY29uc3Qgc3RhcnRPZmZzZXQgPSBsaW5lLmluZGV4T2YobmFtZSk7XHJcbiAgY29uc3QgZW5kT2Zmc2V0ID0gc3RhcnRPZmZzZXQgKyBuYW1lLmxlbmd0aCArIDE7XHJcblxyXG4gIHJldHVybiB7XHJcbiAgICBtdW5pY2lwYWxpdHksXHJcbiAgICBlcnJvcnM6IGVycm9ycy5tYXAoKGVycm9yKSA9PiAoe1xyXG4gICAgICAuLi5lcnJvcixcclxuICAgICAgc3RhcnRPZmZzZXQsXHJcbiAgICAgIGVuZE9mZnNldCxcclxuICAgIH0pKSxcclxuICB9O1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IGdldE11bmljaXBhbGl0eVBhcnRSZXN1bHQgPSBhc3luYyAoXHJcbiAgbmFtZTogc3RyaW5nLFxyXG4gIGxpbmU6IHN0cmluZyxcclxuICBmb3VuZGVyOiBGb3VuZGVyXHJcbik6IFByb21pc2U8TXVuaWNpcGFsaXR5UGFydFJlc3VsdD4gPT4ge1xyXG4gIGNvbnN0IHsgbXVuaWNpcGFsaXR5UGFydENvZGUsIGVycm9ycyB9ID0gYXdhaXQgZmluZE11bmljaXBhbGl0eVBhcnRCeU5hbWUoXHJcbiAgICBuYW1lLFxyXG4gICAgZm91bmRlclxyXG4gICk7XHJcblxyXG4gIGNvbnN0IHN0YXJ0T2Zmc2V0ID0gbGluZS5pbmRleE9mKG5hbWUpO1xyXG4gIGNvbnN0IGVuZE9mZnNldCA9IHN0YXJ0T2Zmc2V0ICsgbmFtZS5sZW5ndGggKyAxO1xyXG5cclxuICByZXR1cm4ge1xyXG4gICAgbXVuaWNpcGFsaXR5UGFydENvZGUsXHJcbiAgICBlcnJvcnM6IGVycm9ycy5tYXAoKGVycm9yKSA9PiAoe1xyXG4gICAgICAuLi5lcnJvcixcclxuICAgICAgc3RhcnRPZmZzZXQsXHJcbiAgICAgIGVuZE9mZnNldCxcclxuICAgIH0pKSxcclxuICB9O1xyXG59O1xyXG5cclxuY29uc3QgZ2V0TXVuaWNpcGFsaXR5VHlwZSA9ICh0eXBlOiBzdHJpbmcpOiBNdW5pY2lwYWxpdHlUeXBlID0+IHtcclxuICBzd2l0Y2ggKHR5cGUpIHtcclxuICAgIGNhc2UgXCJtxJtzdHNrw6kgxI3DoXN0aVwiOlxyXG4gICAgY2FzZSBcIm3Em3N0c2vDqWhvIG9idm9kdVwiOlxyXG4gICAgICByZXR1cm4gTXVuaWNpcGFsaXR5VHlwZS5EaXN0cmljdDtcclxuICAgIGNhc2UgXCJvYmNlXCI6XHJcbiAgICBjYXNlIFwibcSbc3RhXCI6XHJcbiAgICAgIHJldHVybiBNdW5pY2lwYWxpdHlUeXBlLkNpdHk7XHJcbiAgfVxyXG59O1xyXG5cclxuY29uc3QgY2xlYW5OYW1lID0gKG5hbWU6IHN0cmluZyk6IHN0cmluZyA9PiB7XHJcbiAgcmV0dXJuIG5hbWUudHJpbSgpO1xyXG59O1xyXG4iXX0=
@@ -1,4 +1,7 @@
1
- import { Municipality } from "./types";
2
- import { FeatureCollection, MultiPolygon, Polygon } from "@turf/helpers";
3
- export declare const municipalityToPolygons: (municipality: Municipality) => Promise<FeatureCollection>;
4
- export declare const createPolygons: (municipality: Municipality, cityPolygons: Record<number, FeatureCollection<Polygon | MultiPolygon>>) => FeatureCollection;
1
+ import { Area, Municipality } from "./types";
2
+ import { Feature, FeatureCollection, MultiPolygon, Polygon, featureCollection } from "@turf/helpers";
3
+ export declare const municipalitiesToPolygons: (municipalities: Municipality[]) => Promise<Record<number, FeatureCollection>>;
4
+ export declare const createPolygons: (municipality: Municipality, extraAreas: Area[], municipalityPolygons: Record<number, FeatureCollection<Polygon | MultiPolygon>>) => {
5
+ featureCollection: FeatureCollection<Polygon | MultiPolygon>;
6
+ extraPolygons: Map<number, Feature<Polygon | MultiPolygon>>;
7
+ };