@riverscapes/common 1.3.2 → 2.0.4

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 (133) hide show
  1. package/codegen.yml +48 -0
  2. package/dist/classes/BusinessLogicXML.d.ts +20 -0
  3. package/dist/classes/BusinessLogicXML.js +122 -0
  4. package/dist/classes/BusinessLogicXML.js.map +1 -0
  5. package/dist/classes/ProjectXML.d.ts +21 -0
  6. package/dist/classes/ProjectXML.js +291 -0
  7. package/dist/classes/ProjectXML.js.map +1 -0
  8. package/dist/classes/api.d.ts +32 -0
  9. package/dist/classes/api.js +307 -0
  10. package/dist/classes/api.js.map +1 -0
  11. package/dist/classes/index.d.ts +2 -0
  12. package/dist/classes/index.js +19 -0
  13. package/dist/classes/index.js.map +1 -0
  14. package/dist/classes/mock/BusinessLogic1_parsed.d.ts +173 -0
  15. package/dist/classes/mock/BusinessLogic1_parsed.js +254 -0
  16. package/dist/classes/mock/BusinessLogic1_parsed.js.map +1 -0
  17. package/dist/constants.d.ts +48 -0
  18. package/dist/constants.js +74 -0
  19. package/dist/constants.js.map +1 -0
  20. package/dist/dates.d.ts +1 -0
  21. package/dist/dates.js +12 -0
  22. package/dist/dates.js.map +1 -0
  23. package/dist/gen/gqlSchema.d.ts +2 -0
  24. package/dist/gen/gqlSchema.js +13 -0
  25. package/dist/gen/gqlSchema.js.map +1 -0
  26. package/dist/gen/ops.d.ts +1828 -0
  27. package/dist/gen/ops.js +259 -0
  28. package/dist/gen/ops.js.map +1 -0
  29. package/dist/gen/schema.types.d.ts +2483 -0
  30. package/dist/gen/schema.types.js +265 -0
  31. package/dist/gen/schema.types.js.map +1 -0
  32. package/dist/gqlSchema.d.ts +2 -0
  33. package/dist/gqlSchema.js +13 -0
  34. package/dist/gqlSchema.js.map +1 -0
  35. package/dist/graphql/auth.graphql.d.ts +2 -0
  36. package/dist/graphql/auth.graphql.js +12 -0
  37. package/dist/graphql/auth.graphql.js.map +1 -0
  38. package/dist/graphql/index.d.ts +3 -0
  39. package/dist/graphql/index.js +20 -0
  40. package/dist/graphql/index.js.map +1 -0
  41. package/dist/graphql/mutations.graphql.js +57 -0
  42. package/dist/graphql/mutations.graphql.js.map +1 -0
  43. package/dist/graphql/project.graphql.d.ts +1 -0
  44. package/dist/graphql/project.graphql.js +11 -0
  45. package/dist/graphql/project.graphql.js.map +1 -0
  46. package/dist/graphql/projects.graphql.d.ts +1 -0
  47. package/dist/graphql/projects.graphql.js +11 -0
  48. package/dist/graphql/projects.graphql.js.map +1 -0
  49. package/dist/graphql/upload.graphql.d.ts +4 -0
  50. package/dist/graphql/upload.graphql.js +14 -0
  51. package/dist/graphql/upload.graphql.js.map +1 -0
  52. package/dist/index.d.ts +9 -7
  53. package/dist/index.js +23 -9
  54. package/dist/index.js.map +1 -1
  55. package/dist/lib/dates.d.ts +2 -0
  56. package/dist/lib/dates.js +36 -0
  57. package/dist/lib/dates.js.map +1 -0
  58. package/dist/lib/geojson/createProjectBounds.d.ts +10 -0
  59. package/dist/lib/geojson/createProjectBounds.js +34 -0
  60. package/dist/lib/geojson/createProjectBounds.js.map +1 -0
  61. package/dist/lib/geojson/equality.d.ts +2 -0
  62. package/dist/lib/geojson/equality.js +81 -0
  63. package/dist/lib/geojson/equality.js.map +1 -0
  64. package/dist/lib/geojson/index.d.ts +3 -0
  65. package/dist/lib/geojson/index.js +13 -0
  66. package/dist/lib/geojson/index.js.map +1 -0
  67. package/dist/lib/geojson/precision.d.ts +4 -0
  68. package/dist/lib/geojson/precision.js +79 -0
  69. package/dist/lib/geojson/precision.js.map +1 -0
  70. package/dist/lib/graphql/auth.graphql.d.ts +1 -0
  71. package/dist/lib/graphql/auth.graphql.js +11 -0
  72. package/dist/lib/graphql/auth.graphql.js.map +1 -0
  73. package/dist/lib/graphql/index.d.ts +1 -0
  74. package/dist/lib/graphql/index.js +18 -0
  75. package/dist/lib/graphql/index.js.map +1 -0
  76. package/dist/lib/rsPaths.d.ts +8 -0
  77. package/dist/lib/rsPaths.js +150 -0
  78. package/dist/lib/rsPaths.js.map +1 -0
  79. package/dist/lib/tiles.d.ts +4 -0
  80. package/dist/lib/tiles.js +40 -0
  81. package/dist/lib/tiles.js.map +1 -0
  82. package/dist/lib/util.d.ts +3 -0
  83. package/dist/lib/util.js +42 -0
  84. package/dist/lib/util.js.map +1 -0
  85. package/dist/lib/xml.d.ts +6 -0
  86. package/dist/lib/xml.js +70 -0
  87. package/dist/lib/xml.js.map +1 -0
  88. package/dist/schema.graphql +2322 -0
  89. package/dist/schema.types.d.ts +1815 -0
  90. package/dist/schema.types.js +259 -0
  91. package/dist/schema.types.js.map +1 -0
  92. package/dist/types.d.ts +63 -341
  93. package/dist/types.js +7 -82
  94. package/dist/types.js.map +1 -1
  95. package/jest.config.js +4 -0
  96. package/package.json +31 -23
  97. package/resources/success.html +23 -0
  98. package/dist/api.d.ts +0 -71
  99. package/dist/api.js +0 -365
  100. package/dist/api.js.map +0 -1
  101. package/dist/authSchema.js +0 -1
  102. package/dist/authSchema.js.map +0 -1
  103. package/dist/classes/BusinessLogic.d.ts +0 -11
  104. package/dist/classes/BusinessLogic.js +0 -90
  105. package/dist/classes/BusinessLogic.js.map +0 -1
  106. package/dist/classes/FeatureFlags.d.ts +0 -6
  107. package/dist/classes/FeatureFlags.js +0 -25
  108. package/dist/classes/FeatureFlags.js.map +0 -1
  109. package/dist/classes/Program.d.ts +0 -15
  110. package/dist/classes/Program.js +0 -30
  111. package/dist/classes/Program.js.map +0 -1
  112. package/dist/classes/Project.d.ts +0 -43
  113. package/dist/classes/Project.js +0 -182
  114. package/dist/classes/Project.js.map +0 -1
  115. package/dist/classes/TileIndexJSON.d.ts +0 -21
  116. package/dist/classes/TileIndexJSON.js +0 -10
  117. package/dist/classes/TileIndexJSON.js.map +0 -1
  118. package/dist/classes/TileServiceJSONClass.d.ts +0 -22
  119. package/dist/classes/TileServiceJSONClass.js +0 -11
  120. package/dist/classes/TileServiceJSONClass.js.map +0 -1
  121. package/dist/classes/errors.d.ts +0 -4
  122. package/dist/classes/errors.js +0 -31
  123. package/dist/classes/errors.js.map +0 -1
  124. package/dist/mockdata.d.ts +0 -6
  125. package/dist/mockdata.js +0 -65
  126. package/dist/mockdata.js.map +0 -1
  127. package/dist/schema.graphql.d.ts +0 -2
  128. package/dist/schema.graphql.js +0 -15
  129. package/dist/schema.graphql.js.map +0 -1
  130. package/dist/xml.d.ts +0 -11
  131. package/dist/xml.js +0 -254
  132. package/dist/xml.js.map +0 -1
  133. /package/dist/{authSchema.d.ts → graphql/mutations.graphql.d.ts} +0 -0
package/dist/xml.js DELETED
@@ -1,254 +0,0 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
- return new (P || (P = Promise))(function (resolve, reject) {
16
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
- step((generator = generator.apply(thisArg, _arguments || [])).next());
20
- });
21
- };
22
- var __generator = (this && this.__generator) || function (thisArg, body) {
23
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
- function verb(n) { return function (v) { return step([n, v]); }; }
26
- function step(op) {
27
- if (f) throw new TypeError("Generator is already executing.");
28
- while (_) try {
29
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
- if (y = 0, t) op = [op[0] & 2, t.value];
31
- switch (op[0]) {
32
- case 0: case 1: t = op; break;
33
- case 4: _.label++; return { value: op[1], done: false };
34
- case 5: _.label++; y = op[1]; op = [0]; continue;
35
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
- default:
37
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
- if (t[2]) _.ops.pop();
42
- _.trys.pop(); continue;
43
- }
44
- op = body.call(thisArg, _);
45
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
- }
48
- };
49
- var __rest = (this && this.__rest) || function (s, e) {
50
- var t = {};
51
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
52
- t[p] = s[p];
53
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
54
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
55
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
56
- t[p[i]] = s[p[i]];
57
- }
58
- return t;
59
- };
60
- var __importDefault = (this && this.__importDefault) || function (mod) {
61
- return (mod && mod.__esModule) ? mod : { "default": mod };
62
- };
63
- Object.defineProperty(exports, "__esModule", { value: true });
64
- exports.verifyMeta = exports.augmentXML = exports.parseProjectXML = exports.parseProgramXML = exports.parseXMLMeta = exports.getXML = void 0;
65
- var xml2js_1 = require("xml2js");
66
- var axios_1 = __importDefault(require("axios"));
67
- var _1 = require("./");
68
- var xmldom_1 = __importDefault(require("xmldom"));
69
- var loglevel_1 = __importDefault(require("loglevel"));
70
- function getXML(url) {
71
- return __awaiter(this, void 0, void 0, function () {
72
- var start, result, duration;
73
- return __generator(this, function (_a) {
74
- switch (_a.label) {
75
- case 0:
76
- start = Date.now();
77
- return [4, (0, axios_1.default)({
78
- url: url,
79
- method: 'get'
80
- })];
81
- case 1:
82
- result = _a.sent();
83
- duration = (Date.now() - start) / 1000;
84
- if (duration > 10)
85
- loglevel_1.default.warn("getXML took ".concat(duration.toFixed(1), " seconds"));
86
- if (!result.data)
87
- throw new Error('Error retrieving XML file');
88
- return [2, result.data];
89
- }
90
- });
91
- });
92
- }
93
- exports.getXML = getXML;
94
- function parseXMLMeta(metaArr) {
95
- try {
96
- return metaArr.reduce(function (acc, _a) {
97
- var _b;
98
- var $ = _a.$, _ = _a._;
99
- return (__assign(__assign({}, acc), (_b = {}, _b[$.name] = _ && _.trim(), _b)));
100
- }, {});
101
- }
102
- catch (_a) {
103
- return {};
104
- }
105
- }
106
- exports.parseXMLMeta = parseXMLMeta;
107
- function _recursePaths(xmlDom, products, groups, collections) {
108
- var HierarchyNode = xmlDom.getElementsByTagName('Hierarchy')[0];
109
- var productsInHierarchy = Array.from(HierarchyNode.getElementsByTagName('Product'));
110
- var retVal = [];
111
- productsInHierarchy.forEach(function (prodEl) {
112
- var pathArr = [];
113
- var ref = prodEl.getAttribute('ref');
114
- var product = products.find(function (o) { return o.id === ref; });
115
- if (!product)
116
- throw new Error("Product not found for ref='".concat(ref, "'"));
117
- var currEl = prodEl.parentNode;
118
- var _loop_1 = function () {
119
- var ref_1 = currEl.getAttribute('ref');
120
- var tag = currEl.tagName;
121
- var def = tag === 'Group' ? groups.find(function (g) { return g.id === ref_1; }) : collections.find(function (g) { return g.id === ref_1; });
122
- var folder = def.folder, name_1 = def.name;
123
- pathArr.push({
124
- type: tag,
125
- id: ref_1,
126
- folder: folder,
127
- name: name_1
128
- });
129
- currEl = currEl.parentNode;
130
- };
131
- while (currEl && currEl.parentNode && currEl.tagName !== 'Hierarchy') {
132
- _loop_1();
133
- }
134
- retVal.push(__assign(__assign({}, product), { pathArr: pathArr.reverse() }));
135
- });
136
- return retVal;
137
- }
138
- function parseProgramXML(rawXML) {
139
- return __awaiter(this, void 0, void 0, function () {
140
- var parsedProgramJSON, _a, projectFile, projectXSDs, meta, collections, groups, productsRaw, xmlDom, products;
141
- return __generator(this, function (_b) {
142
- switch (_b.label) {
143
- case 0: return [4, (0, xml2js_1.parseStringPromise)(rawXML).catch(function (err) {
144
- throw new _1.ValidationError('Error parsing XML file. This likely means a broken or unclosed tag.', [err.message]);
145
- })];
146
- case 1:
147
- parsedProgramJSON = _b.sent();
148
- _a = parseXMLMeta(parsedProgramJSON.Program.MetaData[0].Meta), projectFile = _a.projectFile, projectXSDs = _a.projectXSDs, meta = __rest(_a, ["projectFile", "projectXSDs"]);
149
- collections = parsedProgramJSON.Program.Definitions[0].Collections[0].Collection.map(function (_a) {
150
- var $ = _a.$, Allow = _a.Allow, AllowRegex = _a.AllowRegex;
151
- return (__assign(__assign({}, $), { Allow: Allow ? (Array.isArray(Allow) ? Allow.map(function (a) { return a.$; }) : [Allow]) : undefined, AllowRegex: AllowRegex
152
- ? Array.isArray(AllowRegex)
153
- ? AllowRegex.map(function (a) { return a.$.pattern; })
154
- : [AllowRegex.pattern]
155
- : undefined }));
156
- });
157
- groups = [];
158
- if (parsedProgramJSON.Program.Definitions[0].Groups[0].Group) {
159
- if (Array.isArray(parsedProgramJSON.Program.Definitions[0].Groups[0].Group))
160
- groups = parsedProgramJSON.Program.Definitions[0].Groups[0].Group.map(function (a) { return a.$; });
161
- else
162
- groups = [parsedProgramJSON.Program.Definitions[0].Groups[0].Group];
163
- }
164
- productsRaw = [];
165
- if (parsedProgramJSON.Program.Definitions[0].Products[0].Product) {
166
- if (Array.isArray(parsedProgramJSON.Program.Definitions[0].Products[0].Product))
167
- productsRaw = parsedProgramJSON.Program.Definitions[0].Products[0].Product.map(function (a) { return a.$; });
168
- else
169
- productsRaw = [parsedProgramJSON.Program.Definitions[0].Products[0].Product];
170
- }
171
- xmlDom = new xmldom_1.default.DOMParser().parseFromString(rawXML);
172
- products = _recursePaths(xmlDom, productsRaw, groups, collections);
173
- return [2, Promise.resolve(new _1.Program({
174
- name: parsedProgramJSON.Program.Name[0],
175
- machineName: parsedProgramJSON.Program.MachineName[0],
176
- projectXSDs: projectXSDs,
177
- projectFile: projectFile,
178
- meta: meta,
179
- products: products,
180
- collections: collections,
181
- groups: groups
182
- }))];
183
- }
184
- });
185
- });
186
- }
187
- exports.parseProgramXML = parseProgramXML;
188
- function parseProjectXML(rawXML) {
189
- return __awaiter(this, void 0, void 0, function () {
190
- var parsedProjectJSON, retVal, whMeta, meta;
191
- return __generator(this, function (_a) {
192
- switch (_a.label) {
193
- case 0: return [4, (0, xml2js_1.parseStringPromise)(rawXML).catch(function (err) {
194
- throw new _1.ValidationError('Error parsing XML file. This likely means a broken or unclosed tag.', [err.message]);
195
- })];
196
- case 1:
197
- parsedProjectJSON = _a.sent();
198
- retVal = parsedProjectJSON.Project;
199
- whMeta = {};
200
- if (retVal.Warehouse) {
201
- whMeta = parseXMLMeta(retVal.Warehouse[0].Meta);
202
- }
203
- meta = {};
204
- if (retVal.MetaData) {
205
- meta = parseXMLMeta(retVal.MetaData[0].Meta);
206
- }
207
- return [2, Promise.resolve({
208
- id: whMeta.id,
209
- name: retVal.Name[0],
210
- projType: retVal.ProjectType[0],
211
- Warehouse: whMeta,
212
- program: whMeta.program,
213
- meta: meta,
214
- tags: _1.Project.parseTagString(whMeta.tags),
215
- xml: rawXML,
216
- parsedProjectJSON: parsedProjectJSON,
217
- rawXML: rawXML
218
- })];
219
- }
220
- });
221
- });
222
- }
223
- exports.parseProjectXML = parseProjectXML;
224
- function augmentXML(newMeta, xmlfile) {
225
- var parsed = new xmldom_1.default.DOMParser().parseFromString(xmlfile);
226
- var metadata = parsed.getElementsByTagName('MetaData')[0];
227
- if (parsed.getElementsByTagName('Warehouse').length > 0) {
228
- parsed.removeChild(parsed.getElementsByTagName('Warehouse')[0]);
229
- }
230
- var warehouseNode = parsed.createElement('Warehouse');
231
- Object.keys(newMeta).forEach(function (k) {
232
- var mNode = parsed.createElement('Meta');
233
- mNode.setAttribute('name', k);
234
- mNode.appendChild(parsed.createTextNode(newMeta[k]));
235
- warehouseNode.appendChild(mNode);
236
- });
237
- parsed.insertBefore(warehouseNode, metadata);
238
- var formatted = new xmldom_1.default.XMLSerializer().serializeToString(parsed);
239
- return formatted;
240
- }
241
- exports.augmentXML = augmentXML;
242
- function verifyMeta(projType, projectMeta, program) {
243
- var projectDef = program.products.find(function (p) { return p.id === projType; });
244
- if (!projectDef) {
245
- throw new Error("No project type '".concat(projType, "' found in program '").concat(program.name, "'"));
246
- }
247
- var collectionathArrs = projectDef.pathArr.filter(function (f) { return f.type === 'Collection'; });
248
- return collectionathArrs.map(function (arrEl) { return ({
249
- name: arrEl.name,
250
- value: projectMeta[arrEl.name]
251
- }); });
252
- }
253
- exports.verifyMeta = verifyMeta;
254
- //# sourceMappingURL=xml.js.map
package/dist/xml.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"xml.js","sourceRoot":"","sources":["../src/xml.ts"],"names":[],"mappings":"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"}