UNPKG

540 kBSource Map (JSON)View Raw
1{"version":3,"file":"index.js","sources":["../../../node_modules/whatwg-fetch/fetch.js","../src/__package__.ts","../../../node_modules/tslib/tslib.es6.js","../src/connection.ts","../src/espConnection.ts","../src/services/wsAccount.ts","../src/services/wsDFU.ts","../src/services/wsEcl.ts","../../../node_modules/d3-array/src/ascending.js","../../../node_modules/d3-array/src/bisector.js","../../../node_modules/d3-array/src/bisect.js","../../../node_modules/d3-array/src/number.js","../../../node_modules/d3-array/src/max.js","../../../node_modules/d3-array/src/mean.js","../src/services/wsMachine.ts","../src/services/wsSMC.ts","../src/services/wsStore.ts","../src/services/wsTopology.ts","../src/services/wsWorkunits.ts","../../../node_modules/d3-time/src/interval.js","../../../node_modules/d3-time/src/millisecond.js","../../../node_modules/d3-time/src/duration.js","../../../node_modules/d3-time/src/second.js","../../../node_modules/d3-time/src/minute.js","../../../node_modules/d3-time/src/hour.js","../../../node_modules/d3-time/src/day.js","../../../node_modules/d3-time/src/week.js","../../../node_modules/d3-time/src/month.js","../../../node_modules/d3-time/src/year.js","../../../node_modules/d3-time/src/utcMinute.js","../../../node_modules/d3-time/src/utcHour.js","../../../node_modules/d3-time/src/utcDay.js","../../../node_modules/d3-time/src/utcWeek.js","../../../node_modules/d3-time/src/utcMonth.js","../../../node_modules/d3-time/src/utcYear.js","../../../node_modules/d3-time-format/src/locale.js","../../../node_modules/d3-time-format/src/defaultLocale.js","../../../node_modules/d3-time-format/src/isoFormat.js","../../../node_modules/d3-time-format/src/isoParse.js","../src/ecl/graph.ts","../src/ecl/resource.ts","../src/ecl/xsdParser.ts","../src/ecl/result.ts","../src/ecl/scope.ts","../src/ecl/sourceFile.ts","../src/ecl/timer.ts","../src/ecl/workunit.ts","../src/ecl/activity.ts","../src/ecl/logicalFile.ts","../src/ecl/machine.ts","../src/ecl/query.ts","../src/ecl/store.ts","../src/ecl/targetCluster.ts","../src/ecl/topology.ts"],"sourcesContent":["(function(self) {\n 'use strict';\n\n if (self.fetch) {\n return\n }\n\n var support = {\n searchParams: 'URLSearchParams' in self,\n iterable: 'Symbol' in self && 'iterator' in Symbol,\n blob: 'FileReader' in self && 'Blob' in self && (function() {\n try {\n new Blob()\n return true\n } catch(e) {\n return false\n }\n })(),\n formData: 'FormData' in self,\n arrayBuffer: 'ArrayBuffer' in self\n }\n\n if (support.arrayBuffer) {\n var viewClasses = [\n '[object Int8Array]',\n '[object Uint8Array]',\n '[object Uint8ClampedArray]',\n '[object Int16Array]',\n '[object Uint16Array]',\n '[object Int32Array]',\n '[object Uint32Array]',\n '[object Float32Array]',\n '[object Float64Array]'\n ]\n\n var isDataView = function(obj) {\n return obj && DataView.prototype.isPrototypeOf(obj)\n }\n\n var isArrayBufferView = ArrayBuffer.isView || function(obj) {\n return obj && viewClasses.indexOf(Object.prototype.toString.call(obj)) > -1\n }\n }\n\n function normalizeName(name) {\n if (typeof name !== 'string') {\n name = String(name)\n }\n if (/[^a-z0-9\\-#$%&'*+.\\^_`|~]/i.test(name)) {\n throw new TypeError('Invalid character in header field name')\n }\n return name.toLowerCase()\n }\n\n function normalizeValue(value) {\n if (typeof value !== 'string') {\n value = String(value)\n }\n return value\n }\n\n // Build a destructive iterator for the value list\n function iteratorFor(items) {\n var iterator = {\n next: function() {\n var value = items.shift()\n return {done: value === undefined, value: value}\n }\n }\n\n if (support.iterable) {\n iterator[Symbol.iterator] = function() {\n return iterator\n }\n }\n\n return iterator\n }\n\n function Headers(headers) {\n this.map = {}\n\n if (headers instanceof Headers) {\n headers.forEach(function(value, name) {\n this.append(name, value)\n }, this)\n } else if (Array.isArray(headers)) {\n headers.forEach(function(header) {\n this.append(header[0], header[1])\n }, this)\n } else if (headers) {\n Object.getOwnPropertyNames(headers).forEach(function(name) {\n this.append(name, headers[name])\n }, this)\n }\n }\n\n Headers.prototype.append = function(name, value) {\n name = normalizeName(name)\n value = normalizeValue(value)\n var oldValue = this.map[name]\n this.map[name] = oldValue ? oldValue+','+value : value\n }\n\n Headers.prototype['delete'] = function(name) {\n delete this.map[normalizeName(name)]\n }\n\n Headers.prototype.get = function(name) {\n name = normalizeName(name)\n return this.has(name) ? this.map[name] : null\n }\n\n Headers.prototype.has = function(name) {\n return this.map.hasOwnProperty(normalizeName(name))\n }\n\n Headers.prototype.set = function(name, value) {\n this.map[normalizeName(name)] = normalizeValue(value)\n }\n\n Headers.prototype.forEach = function(callback, thisArg) {\n for (var name in this.map) {\n if (this.map.hasOwnProperty(name)) {\n callback.call(thisArg, this.map[name], name, this)\n }\n }\n }\n\n Headers.prototype.keys = function() {\n var items = []\n this.forEach(function(value, name) { items.push(name) })\n return iteratorFor(items)\n }\n\n Headers.prototype.values = function() {\n var items = []\n this.forEach(function(value) { items.push(value) })\n return iteratorFor(items)\n }\n\n Headers.prototype.entries = function() {\n var items = []\n this.forEach(function(value, name) { items.push([name, value]) })\n return iteratorFor(items)\n }\n\n if (support.iterable) {\n Headers.prototype[Symbol.iterator] = Headers.prototype.entries\n }\n\n function consumed(body) {\n if (body.bodyUsed) {\n return Promise.reject(new TypeError('Already read'))\n }\n body.bodyUsed = true\n }\n\n function fileReaderReady(reader) {\n return new Promise(function(resolve, reject) {\n reader.onload = function() {\n resolve(reader.result)\n }\n reader.onerror = function() {\n reject(reader.error)\n }\n })\n }\n\n function readBlobAsArrayBuffer(blob) {\n var reader = new FileReader()\n var promise = fileReaderReady(reader)\n reader.readAsArrayBuffer(blob)\n return promise\n }\n\n function readBlobAsText(blob) {\n var reader = new FileReader()\n var promise = fileReaderReady(reader)\n reader.readAsText(blob)\n return promise\n }\n\n function readArrayBufferAsText(buf) {\n var view = new Uint8Array(buf)\n var chars = new Array(view.length)\n\n for (var i = 0; i < view.length; i++) {\n chars[i] = String.fromCharCode(view[i])\n }\n return chars.join('')\n }\n\n function bufferClone(buf) {\n if (buf.slice) {\n return buf.slice(0)\n } else {\n var view = new Uint8Array(buf.byteLength)\n view.set(new Uint8Array(buf))\n return view.buffer\n }\n }\n\n function Body() {\n this.bodyUsed = false\n\n this._initBody = function(body) {\n this._bodyInit = body\n if (!body) {\n this._bodyText = ''\n } else if (typeof body === 'string') {\n this._bodyText = body\n } else if (support.blob && Blob.prototype.isPrototypeOf(body)) {\n this._bodyBlob = body\n } else if (support.formData && FormData.prototype.isPrototypeOf(body)) {\n this._bodyFormData = body\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this._bodyText = body.toString()\n } else if (support.arrayBuffer && support.blob && isDataView(body)) {\n this._bodyArrayBuffer = bufferClone(body.buffer)\n // IE 10-11 can't handle a DataView body.\n this._bodyInit = new Blob([this._bodyArrayBuffer])\n } else if (support.arrayBuffer && (ArrayBuffer.prototype.isPrototypeOf(body) || isArrayBufferView(body))) {\n this._bodyArrayBuffer = bufferClone(body)\n } else {\n throw new Error('unsupported BodyInit type')\n }\n\n if (!this.headers.get('content-type')) {\n if (typeof body === 'string') {\n this.headers.set('content-type', 'text/plain;charset=UTF-8')\n } else if (this._bodyBlob && this._bodyBlob.type) {\n this.headers.set('content-type', this._bodyBlob.type)\n } else if (support.searchParams && URLSearchParams.prototype.isPrototypeOf(body)) {\n this.headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8')\n }\n }\n }\n\n if (support.blob) {\n this.blob = function() {\n var rejected = consumed(this)\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return Promise.resolve(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(new Blob([this._bodyArrayBuffer]))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as blob')\n } else {\n return Promise.resolve(new Blob([this._bodyText]))\n }\n }\n\n this.arrayBuffer = function() {\n if (this._bodyArrayBuffer) {\n return consumed(this) || Promise.resolve(this._bodyArrayBuffer)\n } else {\n return this.blob().then(readBlobAsArrayBuffer)\n }\n }\n }\n\n this.text = function() {\n var rejected = consumed(this)\n if (rejected) {\n return rejected\n }\n\n if (this._bodyBlob) {\n return readBlobAsText(this._bodyBlob)\n } else if (this._bodyArrayBuffer) {\n return Promise.resolve(readArrayBufferAsText(this._bodyArrayBuffer))\n } else if (this._bodyFormData) {\n throw new Error('could not read FormData body as text')\n } else {\n return Promise.resolve(this._bodyText)\n }\n }\n\n if (support.formData) {\n this.formData = function() {\n return this.text().then(decode)\n }\n }\n\n this.json = function() {\n return this.text().then(JSON.parse)\n }\n\n return this\n }\n\n // HTTP methods whose capitalization should be normalized\n var methods = ['DELETE', 'GET', 'HEAD', 'OPTIONS', 'POST', 'PUT']\n\n function normalizeMethod(method) {\n var upcased = method.toUpperCase()\n return (methods.indexOf(upcased) > -1) ? upcased : method\n }\n\n function Request(input, options) {\n options = options || {}\n var body = options.body\n\n if (input instanceof Request) {\n if (input.bodyUsed) {\n throw new TypeError('Already read')\n }\n this.url = input.url\n this.credentials = input.credentials\n if (!options.headers) {\n this.headers = new Headers(input.headers)\n }\n this.method = input.method\n this.mode = input.mode\n if (!body && input._bodyInit != null) {\n body = input._bodyInit\n input.bodyUsed = true\n }\n } else {\n this.url = String(input)\n }\n\n this.credentials = options.credentials || this.credentials || 'omit'\n if (options.headers || !this.headers) {\n this.headers = new Headers(options.headers)\n }\n this.method = normalizeMethod(options.method || this.method || 'GET')\n this.mode = options.mode || this.mode || null\n this.referrer = null\n\n if ((this.method === 'GET' || this.method === 'HEAD') && body) {\n throw new TypeError('Body not allowed for GET or HEAD requests')\n }\n this._initBody(body)\n }\n\n Request.prototype.clone = function() {\n return new Request(this, { body: this._bodyInit })\n }\n\n function decode(body) {\n var form = new FormData()\n body.trim().split('&').forEach(function(bytes) {\n if (bytes) {\n var split = bytes.split('=')\n var name = split.shift().replace(/\\+/g, ' ')\n var value = split.join('=').replace(/\\+/g, ' ')\n form.append(decodeURIComponent(name), decodeURIComponent(value))\n }\n })\n return form\n }\n\n function parseHeaders(rawHeaders) {\n var headers = new Headers()\n rawHeaders.split(/\\r?\\n/).forEach(function(line) {\n var parts = line.split(':')\n var key = parts.shift().trim()\n if (key) {\n var value = parts.join(':').trim()\n headers.append(key, value)\n }\n })\n return headers\n }\n\n Body.call(Request.prototype)\n\n function Response(bodyInit, options) {\n if (!options) {\n options = {}\n }\n\n this.type = 'default'\n this.status = 'status' in options ? options.status : 200\n this.ok = this.status >= 200 && this.status < 300\n this.statusText = 'statusText' in options ? options.statusText : 'OK'\n this.headers = new Headers(options.headers)\n this.url = options.url || ''\n this._initBody(bodyInit)\n }\n\n Body.call(Response.prototype)\n\n Response.prototype.clone = function() {\n return new Response(this._bodyInit, {\n status: this.status,\n statusText: this.statusText,\n headers: new Headers(this.headers),\n url: this.url\n })\n }\n\n Response.error = function() {\n var response = new Response(null, {status: 0, statusText: ''})\n response.type = 'error'\n return response\n }\n\n var redirectStatuses = [301, 302, 303, 307, 308]\n\n Response.redirect = function(url, status) {\n if (redirectStatuses.indexOf(status) === -1) {\n throw new RangeError('Invalid status code')\n }\n\n return new Response(null, {status: status, headers: {location: url}})\n }\n\n self.Headers = Headers\n self.Request = Request\n self.Response = Response\n\n self.fetch = function(input, init) {\n return new Promise(function(resolve, reject) {\n var request = new Request(input, init)\n var xhr = new XMLHttpRequest()\n\n xhr.onload = function() {\n var options = {\n status: xhr.status,\n statusText: xhr.statusText,\n headers: parseHeaders(xhr.getAllResponseHeaders() || '')\n }\n options.url = 'responseURL' in xhr ? xhr.responseURL : options.headers.get('X-Request-URL')\n var body = 'response' in xhr ? xhr.response : xhr.responseText\n resolve(new Response(body, options))\n }\n\n xhr.onerror = function() {\n reject(new TypeError('Network request failed'))\n }\n\n xhr.ontimeout = function() {\n reject(new TypeError('Network request failed'))\n }\n\n xhr.open(request.method, request.url, true)\n\n if (request.credentials === 'include') {\n xhr.withCredentials = true\n }\n\n if ('responseType' in xhr && support.blob) {\n xhr.responseType = 'blob'\n }\n\n request.headers.forEach(function(value, name) {\n xhr.setRequestHeader(name, value)\n })\n\n xhr.send(typeof request._bodyInit === 'undefined' ? null : request._bodyInit)\n })\n }\n self.fetch.polyfill = true\n})(typeof self !== 'undefined' ? self : this);\n","export const PKG_NAME = \"@hpcc-js/comms\";\r\nexport const PKG_VERSION = \"2.20.0\";\r\nexport const BUILD_VERSION = \"2.28.0\";\r\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n 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;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator], i = 0;\r\n if (m) return m.call(o);\r\n return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n","import { join, promiseTimeout, scopedLogger } from \"@hpcc-js/util\";\n\nconst logger = scopedLogger(\"comms/connection.ts\");\n\nexport type RequestType = \"post\" | \"get\" | \"jsonp\";\nexport type ResponseType = \"json\" | \"text\";\n\nexport type IOptionsSend = (options: IOptions, action: string, request: any, responseType: ResponseType, defaultSend: SendFunc, header?: any) => Promise<any>;\nexport interface IOptions {\n baseUrl: string;\n type?: RequestType;\n userID?: string;\n password?: string;\n rejectUnauthorized?: boolean;\n timeoutSecs?: number;\n hookSend?: IOptionsSend;\n encodeRequest?: boolean; // defaults to true\n}\nexport function instanceOfIOptions(object: any): object is IOptions {\n return \"baseUrl\" in object;\n}\n\nconst DefaultOptions: IOptions = {\n type: \"post\",\n baseUrl: \"\",\n userID: \"\",\n password: \"\",\n rejectUnauthorized: true,\n timeoutSecs: 60\n};\n\nexport interface IConnection {\n opts(_: Partial<IOptions>): this;\n opts(): IOptions;\n baseUrl: string;\n\n send(action: string, request: any, responseType?: ResponseType): Promise<any>;\n clone(): IConnection;\n}\nexport function instanceOfIConnection(object: any): object is IConnection {\n return typeof object.opts === \"function\" &&\n typeof object.send === \"function\" &&\n typeof object.clone === \"function\";\n}\n\n// comms ---\n\nfunction encode(uriComponent: string | number | boolean, encodeRequest: boolean): string {\n return (encodeRequest === undefined || encodeRequest === true) ? encodeURIComponent(uriComponent) : \"\" + uriComponent;\n}\n\nexport function serializeRequest(obj: any, encodeRequest: boolean = true, prefix: string = \"\"): string {\n if (prefix) {\n prefix += \".\";\n }\n if (typeof obj !== \"object\") {\n return encode(obj, encodeRequest);\n }\n\n const str: string[] = [];\n for (const key in obj) {\n if (obj.hasOwnProperty(key)) {\n if (obj[key] instanceof Array) {\n // Specific to ESP - but no REST standard exists...\n let includeItemCount = false;\n obj[key].forEach((row: any, i: number) => {\n if (typeof row === \"object\") {\n includeItemCount = true;\n str.push(serializeRequest(row, encodeRequest, prefix + encode(`${key}.${i}`, encodeRequest)));\n } else {\n str.push(prefix + encode(`${key}_i${i}`, encodeRequest) + \"=\" + serializeRequest(row, encodeRequest));\n }\n });\n if (includeItemCount) {\n str.push(prefix + encode(`${key}.itemcount`, encodeRequest) + \"=\" + obj[key].length);\n }\n } else if (typeof obj[key] === \"object\") {\n if (obj[key] && obj[key][\"Item\"] instanceof Array) { // Specific to ws_machine.GetTargetClusterInfo?\n str.push(serializeRequest(obj[key][\"Item\"], encodeRequest, prefix + encode(key, encodeRequest)));\n str.push(prefix + encode(`${key}.itemcount`, encodeRequest) + \"=\" + obj[key][\"Item\"].length);\n } else {\n str.push(serializeRequest(obj[key], encodeRequest, prefix + encode(key, encodeRequest)));\n }\n } else if (obj[key] !== undefined) {\n str.push(prefix + encode(key, encodeRequest) + \"=\" + encode(obj[key], encodeRequest));\n } else {\n str.push(prefix + encode(key, encodeRequest));\n }\n }\n }\n return str.join(\"&\");\n}\n\nexport function deserializeResponse(body: string) {\n return JSON.parse(body);\n}\n\nexport function jsonp(opts: IOptions, action: string, request: any = {}, responseType: ResponseType = \"json\", header?: any): Promise<any> {\n if (header) {\n console.warn(\"Header attributes ignored for JSONP connections\");\n }\n return new Promise<any>((resolve, reject) => {\n let respondedTimeout = opts.timeoutSecs! * 1000;\n const respondedTick = 5000;\n const callbackName = \"jsonp_callback_\" + Math.round(Math.random() * 999999);\n (window as any)[callbackName] = function (response: any) {\n respondedTimeout = 0;\n doCallback();\n resolve(responseType === \"json\" && typeof response === \"string\" ? deserializeResponse(response) : response);\n };\n const script = document.createElement(\"script\");\n let url = join(opts.baseUrl, action);\n url += url.indexOf(\"?\") >= 0 ? \"&\" : \"?\";\n script.src = url + \"jsonp=\" + callbackName + \"&\" + serializeRequest(request, opts.encodeRequest);\n document.body.appendChild(script);\n const progress = setInterval(function () {\n if (respondedTimeout <= 0) {\n clearInterval(progress);\n } else {\n respondedTimeout -= respondedTick;\n if (respondedTimeout <= 0) {\n clearInterval(progress);\n logger.error(\"Request timeout: \" + script.src);\n doCallback();\n reject(Error(\"Request timeout: \" + script.src));\n } else {\n logger.debug(\"Request pending (\" + respondedTimeout / 1000 + \" sec): \" + script.src);\n }\n }\n }, respondedTick);\n\n function doCallback() {\n delete (window as any)[callbackName];\n document.body.removeChild(script);\n }\n });\n}\n\nfunction authHeader(opts: IOptions): object {\n return opts.userID ? { Authorization: `Basic ${btoa(`${opts.userID}:${opts.password}`)}` } : {};\n}\n\n// _omitMap is a workaround for older HPCC-Platform instances without credentials ---\nconst _omitMap: { [baseUrl: string]: boolean } = {};\nfunction doFetch(opts: IOptions, action: string, requestInit: RequestInit, headersInit: HeadersInit, responseType: string) {\n headersInit = {\n ...authHeader(opts),\n ...headersInit\n };\n\n requestInit = {\n credentials: _omitMap[opts.baseUrl] ? \"omit\" : \"include\",\n ...requestInit,\n headers: headersInit\n };\n\n if (opts.rejectUnauthorized === false && fetch[\"__agent\"] && opts.baseUrl.indexOf(\"https:\") === 0) {\n // NodeJS / node-fetch only ---\n requestInit[\"agent\"] = fetch[\"__agent\"];\n }\n\n function handleResponse(response: Response): Promise<any> {\n if (response.ok) {\n return responseType === \"json\" ? response.json() : response.text();\n }\n throw new Error(response.statusText);\n }\n\n return promiseTimeout(opts.timeoutSecs! * 1000, fetch(join(opts.baseUrl, action), requestInit)\n .then(handleResponse)\n .catch(e => {\n // Try again with the opposite credentials mode ---\n requestInit.credentials = !_omitMap[opts.baseUrl] ? \"omit\" : \"include\";\n return fetch(join(opts.baseUrl, action), requestInit)\n .then(handleResponse)\n .then(responseBody => {\n _omitMap[opts.baseUrl] = !_omitMap[opts.baseUrl]; // The \"opposite\" credentials mode is known to work ---\n return responseBody;\n });\n })\n );\n}\n\nexport function post(opts: IOptions, action: string, request: any, responseType: ResponseType = \"json\", header?: any): Promise<any> {\n return doFetch(opts, action, {\n method: \"post\",\n body: serializeRequest(request, opts.encodeRequest)\n }, {\n \"Content-Type\": \"application/x-www-form-urlencoded\",\n ...header\n } as any, responseType);\n}\n\nexport function get(opts: IOptions, action: string, request: any, responseType: ResponseType = \"json\", header?: any): Promise<any> {\n return doFetch(opts, `${action}?${serializeRequest(request, opts.encodeRequest)}`, {\n method: \"get\"\n }, {\n ...header\n } as any, responseType);\n}\n\nexport type SendFunc = (opts: IOptions, action: string, request: any, responseType: ResponseType, header?: any) => Promise<any>;\nexport function send(opts: IOptions, action: string, request: any, responseType: ResponseType = \"json\", header?: any): Promise<any> {\n let retVal: Promise<any>;\n switch (opts.type) {\n case \"jsonp\":\n retVal = jsonp(opts, action, request, responseType, header);\n break;\n case \"get\":\n retVal = get(opts, action, request, responseType, header);\n break;\n case \"post\":\n default:\n retVal = post(opts, action, request, responseType, header);\n break;\n }\n return retVal;\n}\n\nlet hookedSend: SendFunc = send;\nexport function hookSend(newSend?: SendFunc): SendFunc {\n const retVal = hookedSend;\n if (newSend) {\n hookedSend = newSend;\n }\n return retVal;\n}\n\nexport class Connection implements IConnection {\n protected _opts: IOptions;\n get baseUrl() { return this._opts.baseUrl; }\n\n constructor(opts: IOptions) {\n this.opts(opts);\n }\n\n // IConnection ---\n opts(_: Partial<IOptions>): this;\n opts(): IOptions;\n opts(_?: Partial<IOptions>): this | IOptions {\n if (arguments.length === 0) return this._opts;\n this._opts = { ...DefaultOptions, ..._ };\n return this;\n }\n\n send(action: string, request: any, responseType: ResponseType = \"json\", header?: any): Promise<any> {\n if (this._opts.hookSend) {\n return this._opts.hookSend(this._opts, action, request, responseType, hookedSend, header);\n }\n return hookedSend(this._opts, action, request, responseType, header);\n }\n\n clone() {\n return new Connection(this.opts());\n }\n}\n\nexport type IConnectionFactory = (opts: IOptions) => IConnection;\nexport let createConnection: IConnectionFactory = function (opts: IOptions): IConnection {\n return new Connection(opts);\n};\n\nexport function setTransportFactory(newFunc: IConnectionFactory): IConnectionFactory {\n const retVal = createConnection;\n createConnection = newFunc;\n return retVal;\n}\n","import { join } from \"@hpcc-js/util\";\nimport { createConnection, IConnection, IOptions, ResponseType } from \"./connection\";\n\nexport type ESPResponseType = ResponseType | \"json2\" | \"xsd\";\n\nexport function isArray(arg: any) {\n return Object.prototype.toString.call(arg) === \"[object Array]\";\n}\n\nexport interface Exception {\n Code: number;\n Message: string;\n}\n\nexport interface Exceptions {\n Source: string;\n Exception: Exception[];\n}\n\nexport class ESPExceptions extends Error implements Exceptions {\n isESPExceptions = true;\n action: string;\n request: string;\n Source: string;\n Exception: Exception[];\n\n constructor(action: string, request: any, exceptions: Exceptions) {\n super(\"ESPException: \" + exceptions.Source);\n this.action = action;\n this.request = request;\n this.Source = exceptions.Source;\n this.Exception = exceptions.Exception;\n if (exceptions.Exception.length) {\n this.message = `${exceptions.Exception[0].Code}: ${exceptions.Exception[0].Message}`;\n }\n }\n}\n\nfunction isConnection(optsConnection: IOptions | IConnection): optsConnection is IConnection {\n return (optsConnection as IConnection).send !== undefined;\n}\n\nexport class ESPConnection implements IConnection {\n private _connection: IConnection;\n get baseUrl() { return this._connection.opts().baseUrl; }\n private _service: string;\n private _version: string;\n\n constructor(optsConnection: IOptions | IConnection, service: string, version: string) {\n this._connection = isConnection(optsConnection) ? optsConnection : createConnection(optsConnection);\n this._service = service;\n this._version = version;\n }\n\n service(): string;\n service(_: string): ESPConnection;\n service(_?: string): string | ESPConnection {\n if (_ === void 0) return this._service;\n this._service = _;\n return this;\n }\n\n version(): string;\n version(_: string): ESPConnection;\n version(_?: string): string | ESPConnection {\n if (_ === void 0) return this._version;\n this._version = _;\n return this;\n }\n\n toESPStringArray(target: any, arrayName: string): any {\n if (isArray(target[arrayName])) {\n for (let i = 0; i < target[arrayName].length; ++i) {\n target[arrayName + \"_i\" + i] = target[arrayName][i];\n }\n delete target[arrayName];\n }\n return target;\n }\n\n // IConnection ---\n opts(_: Partial<IOptions>): this;\n opts(): IOptions;\n opts(_?: Partial<IOptions>): this | IOptions {\n if (_ === void 0) return this._connection.opts();\n this._connection.opts(_);\n return this;\n }\n\n send(action: string, _request: any = {}, espResponseType: ESPResponseType = \"json\", largeUpload: boolean = false): Promise<any> {\n const request = { ..._request, ...{ ver_: this._version } };\n if (largeUpload) {\n request[\"upload_\"] = true;\n }\n let serviceAction: string;\n let responseType: ResponseType = \"json\";\n switch (espResponseType) {\n case \"text\":\n serviceAction = join(this._service, action);\n responseType = \"text\";\n break;\n case \"xsd\":\n serviceAction = join(this._service, action + \".xsd\");\n responseType = \"text\";\n break;\n case \"json2\":\n serviceAction = join(this._service, action + \"/json\");\n espResponseType = \"json\";\n const actionParts = action.split(\"/\");\n action = actionParts.pop()!;\n break;\n default:\n serviceAction = join(this._service, action + \".json\");\n }\n return this._connection.send(serviceAction, request, responseType).then((response) => {\n if (espResponseType === \"json\") {\n let retVal;\n if (response && response.Exceptions) {\n throw new ESPExceptions(action, request, response.Exceptions);\n } else if (response) {\n retVal = response[`${action === \"WUCDebug\" ? \"WUDebug\" : action}Response`];\n }\n if (!retVal) {\n throw new ESPExceptions(action, request, {\n Source: \"ESPConnection.send\",\n Exception: [{ Code: 0, Message: \"Missing Response\" }]\n });\n }\n return retVal;\n }\n return response;\n }).catch(e => {\n if (e.isESPExceptions) {\n throw e;\n }\n throw new ESPExceptions(action, request, {\n Source: \"ESPConnection.send\",\n Exception: [{ Code: 0, Message: e.message }]\n });\n });\n }\n\n clone() {\n return new ESPConnection(this._connection.clone(), this._service, this._version);\n }\n}\n\nexport class Service {\n protected _connection: ESPConnection;\n get baseUrl() { return this._connection.opts().baseUrl; }\n\n constructor(optsConnection: IOptions | IConnection, service: string, version: string) {\n this._connection = new ESPConnection(optsConnection, service, version);\n }\n}\n","import { IConnection, IOptions } from \"../connection\";\nimport { ESPConnection } from \"../espConnection\";\n\n/*\n Response structures generated via:\n * http://192.168.3.22:8010/Ws_Account/VerifyUser?respjson_\n * http://json2ts.com/\n*/\nexport namespace VerifyUser {\n\n export interface Request {\n application: string;\n version: string;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n retcode: number;\n }\n}\n\nexport class AccountService {\n private _connection: ESPConnection;\n\n constructor(optsConnection: IOptions | IConnection) {\n this._connection = new ESPConnection(optsConnection, \"Ws_Account\", \"1.03\");\n }\n\n connectionOptions(): IOptions {\n return this._connection.opts();\n }\n\n VerifyUser(request: VerifyUser.Request): Promise<VerifyUser.Response> {\n return this._connection.send(\"VerifyUser\", request);\n }\n}\n","import { IConnection, IOptions } from \"../connection\";\nimport { Service } from \"../espConnection\";\n\n/*\n Response structures generated via:\n * http://localhost:8010/WsDfu/?ver_=1.5&reqjson_\n * http://localhost:8010/WsDfu/?ver_=1.5&respjson_\n * http://json2ts.com/\n*/\n\nexport namespace WsDfu {\n export interface AddRequest {\n dstname: string;\n xmlmap: string;\n }\n\n export interface AddRemoteRequest {\n dstname: string;\n srcname: string;\n srcdali: string;\n srcusername: string;\n srcpassword: string;\n }\n\n export interface Names {\n Item: string[];\n }\n\n export interface AddtoSuperfileRequest {\n Superfile: string;\n Subfiles: string;\n names: Names;\n ExistingFile: boolean;\n BackToPage: string;\n }\n\n export interface LogicalFiles {\n Item: string[];\n }\n\n export interface DFUArrayActionRequest {\n Type: string;\n NoDelete: boolean;\n BackToPage: string;\n LogicalFiles: LogicalFiles;\n removeFromSuperfiles: boolean;\n removeRecursively: boolean;\n }\n\n export interface DFUBrowseDataRequest {\n LogicalName: string;\n FilterBy: string;\n ShowColumns: string;\n SchemaOnly: boolean;\n StartForGoback: number;\n CountForGoback: number;\n ChooseFile: number;\n Cluster: string;\n ClusterType: string;\n ParentName: string;\n Start: number;\n Count: number;\n DisableUppercaseTranslation: boolean;\n }\n\n export interface DFUDefFileRequest {\n Name: string;\n Format: string;\n }\n\n export interface RequestBase {\n Name: string;\n Cluster: string;\n JobId: string;\n ExpirySeconds: number;\n AccessRole: string;\n AccessType: string;\n ReturnJsonTypeInfo: boolean;\n ReturnBinTypeInfo: boolean;\n }\n\n export interface DFUFileAccessRequest {\n RequestBase: RequestBase;\n }\n\n export interface DFUFileAccessV2Request {\n Name: string;\n Cluster: string;\n RequestId: string;\n ExpirySeconds: number;\n ReturnTextResponse: boolean;\n }\n\n export interface PartLocations {\n Item: string[];\n }\n\n export interface RequestBase2 {\n Name: string;\n Cluster: string;\n JobId: string;\n ExpirySeconds: number;\n AccessRole: string;\n AccessType: string;\n ReturnJsonTypeInfo: boolean;\n ReturnBinTypeInfo: boolean;\n }\n\n export interface DFUFileCreateRequest {\n ECLRecordDefinition: string;\n PartLocations: PartLocations;\n RequestBase: RequestBase2;\n }\n\n export interface DFUFileCreateV2Request {\n Name: string;\n Cluster: string;\n Type: string;\n ECLRecordDefinition: string;\n RequestId: string;\n ExpirySeconds: number;\n ReturnTextResponse: boolean;\n Compressed: boolean;\n }\n\n export interface DFUFilePublishRequest {\n FileId: string;\n Overwrite: boolean;\n FileDescriptorBlob: string;\n ECLRecordDefinition: string;\n RecordCount: number;\n FileSize: number;\n }\n\n export interface DFUFileViewRequest {\n Scope: string;\n IncludeSuperOwner: boolean;\n }\n\n export interface DFUGetDataColumnsRequest {\n OpenLogicalName: string;\n LogicalName: string;\n FilterBy: string;\n ShowColumns: string;\n ChooseFile: number;\n Cluster: string;\n ClusterType: string;\n StartIndex: number;\n EndIndex: number;\n }\n\n export interface DFUGetFileMetaDataRequest {\n LogicalFileName: string;\n ClusterName: string;\n IncludeXmlSchema: boolean;\n AddHeaderInXmlSchema: boolean;\n IncludeXmlXPathSchema: boolean;\n AddHeaderInXmlXPathSchema: boolean;\n }\n\n export interface DFUInfoRequest {\n Name: string;\n Cluster: string;\n UpdateDescription?: boolean;\n QuerySet?: string;\n Query?: string;\n FileDesc?: string;\n IncludeJsonTypeInfo?: boolean;\n IncludeBinTypeInfo?: boolean;\n Protect?: string;\n }\n\n export interface DFUQueryRequest {\n Prefix?: string;\n NodeGroup?: string;\n ContentType?: string;\n LogicalName?: string;\n Owner?: string;\n StartDate?: string;\n EndDate?: string;\n FileType?: string;\n FileSizeFrom?: number;\n FileSizeTo?: number;\n FirstN?: number;\n PageSize?: number;\n PageStartFrom?: number;\n Sortby?: string;\n Descending?: boolean;\n OneLevelDirFileReturn?: boolean;\n CacheHint?: number;\n MaxNumberOfFiles?: number;\n IncludeSuperOwner?: boolean;\n }\n\n export interface DFURecordTypeInfoRequest {\n Name: string;\n IncludeJsonTypeInfo: boolean;\n IncludeBinTypeInfo: boolean;\n }\n\n export interface DFUSearchRequest {\n ShowExample: string;\n }\n\n export interface DFUSearchDataRequest {\n Cluster: string;\n ClusterType: string;\n OpenLogicalName: string;\n FilterBy: string;\n ShowColumns: string;\n ChooseFile: number;\n StartIndex: number;\n EndIndex: number;\n LogicalName: string;\n ParentName: string;\n StartForGoback: number;\n CountForGoback: number;\n Start: number;\n Count: number;\n File: string;\n Key: string;\n SchemaOnly: boolean;\n RoxieSelections: boolean;\n DisableUppercaseTranslation: boolean;\n SelectedKey: string;\n }\n\n export interface DFUSpaceRequest {\n CountBy: string;\n ScopeUnder: string;\n OwnerUnder: string;\n Interval: string;\n StartDate: string;\n EndDate: string;\n }\n\n export interface EclRecordTypeInfoRequest {\n Ecl: string;\n IncludeJsonTypeInfo: boolean;\n IncludeBinTypeInfo: boolean;\n }\n\n export interface EraseHistoryRequest {\n Name: string;\n }\n\n export interface ListHistoryRequest {\n Name: string;\n }\n\n export interface WsDfuPingRequest {\n }\n\n export interface SavexmlRequest {\n name: string;\n }\n\n export interface Subfiles {\n Item: string[];\n }\n\n export interface SuperfileActionRequest {\n action: string;\n superfile: string;\n subfiles: Subfiles;\n before: string;\n delete: boolean;\n removeSuperfile: boolean;\n }\n\n export interface SuperfileListRequest {\n superfile: string;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface AddResponse {\n Exceptions: Exceptions;\n }\n\n export interface AddRemoteResponse {\n Exceptions: Exceptions;\n }\n\n export interface SubfileNames {\n SubfileName: string[];\n }\n\n export interface AddtoSuperfileResponse {\n Exceptions: Exceptions;\n Subfiles: string;\n BackToPage: string;\n SubfileNames: SubfileNames;\n }\n\n export interface DFUActionInfo {\n FileName: string;\n NodeGroup: string;\n ActionResult: string;\n Failed: boolean;\n }\n\n export interface ActionResults {\n DFUActionInfo: DFUActionInfo[];\n }\n\n export interface DFUArrayActionResponse {\n Exceptions: Exceptions;\n BackToPage: string;\n RedirectTo: string;\n ActionResults: ActionResults;\n }\n\n export interface DataColumns {\n DFUDataColumn: any[];\n }\n\n export interface ColumnHidden {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns;\n }\n\n export interface ColumnsHidden {\n ColumnHidden: ColumnHidden[];\n }\n\n export interface DFUBrowseDataResponse {\n Exceptions: Exceptions;\n Name: string;\n LogicalName: string;\n FilterBy: string;\n FilterForGoBack: string;\n ColumnsHidden: ColumnsHidden;\n ColumnCount: number;\n StartForGoback: number;\n CountForGoback: number;\n ChooseFile: number;\n SchemaOnly: boolean;\n Cluster: string;\n ClusterType: string;\n ParentName: string;\n Start: number;\n Count: number;\n PageSize: number;\n Total: number;\n Result: string;\n MsgToDisplay: string;\n DisableUppercaseTranslation: boolean;\n }\n\n export interface DFUDefFileResponse {\n Exceptions: Exceptions;\n defFile: string;\n }\n\n export interface DFUPartLocation {\n LocationIndex: number;\n Host: string;\n }\n\n export interface FileLocations {\n DFUPartLocation: DFUPartLocation[];\n }\n\n export interface DFUFileCopy {\n CopyIndex: number;\n LocationIndex: number;\n Path: string;\n }\n\n export interface Copies {\n DFUFileCopy: DFUFileCopy[];\n }\n\n export interface DFUFilePart {\n PartIndex: number;\n Copies: Copies;\n }\n\n export interface FileParts {\n DFUFilePart: DFUFilePart[];\n }\n\n export interface AccessInfo {\n MetaInfoBlob: string;\n ExpiryTime: string;\n NumParts: number;\n FileLocations: FileLocations;\n FileParts: FileParts;\n RecordTypeInfoJson: string;\n fileAccessPort: number;\n fileAccessSSL: boolean;\n }\n\n export interface DFUFileAccessResponse {\n Exceptions: Exceptions;\n AccessInfo: AccessInfo;\n }\n\n export interface DFUPartLocation2 {\n LocationIndex: number;\n Host: string;\n }\n\n export interface FileLocations2 {\n DFUPartLocation: DFUPartLocation2[];\n }\n\n export interface DFUFileCopy2 {\n CopyIndex: number;\n LocationIndex: number;\n Path: string;\n }\n\n export interface Copies2 {\n DFUFileCopy: DFUFileCopy2[];\n }\n\n export interface DFUFilePart2 {\n PartIndex: number;\n Copies: Copies2;\n }\n\n export interface FileParts2 {\n DFUFilePart: DFUFilePart2[];\n }\n\n export interface AccessInfo2 {\n MetaInfoBlob: string;\n ExpiryTime: string;\n NumParts: number;\n FileLocations: FileLocations2;\n FileParts: FileParts2;\n RecordTypeInfoJson: string;\n fileAccessPort: number;\n fileAccessSSL: boolean;\n }\n\n export interface DFUFileCreateResponse {\n Exceptions: Exceptions;\n FileId: string;\n Warning: string;\n AccessInfo: AccessInfo2;\n }\n\n export interface DFUFilePublishResponse {\n Exceptions: Exceptions;\n }\n\n export interface DFULogicalFile {\n Prefix: string;\n NodeGroup: string;\n Directory: string;\n Description: string;\n Parts: string;\n Name: string;\n Owner: string;\n Totalsize: string;\n RecordCount: string;\n Modified: string;\n LongSize: string;\n LongRecordCount: string;\n isSuperfile: boolean;\n isDirectory: boolean;\n Replicate: boolean;\n IntSize: number;\n IntRecordCount: number;\n FromRoxieCluster: boolean;\n BrowseData: boolean;\n IsCompressed: boolean;\n ContentType: string;\n CompressedFileSize: number;\n SuperOwners: string;\n Persistent: boolean;\n IsProtected: boolean;\n KeyType: string;\n }\n\n export interface DFULogicalFiles {\n DFULogicalFile: DFULogicalFile[];\n }\n\n export interface DFUFileViewResponse {\n Exceptions: Exceptions;\n Scope: string;\n NumFiles: number;\n DFULogicalFiles: DFULogicalFiles;\n }\n\n export interface DataColumns2 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns2;\n }\n\n export interface DFUDataKeyedColumns1 {\n DFUDataColumn: DFUDataColumn[];\n }\n\n export interface DataColumns3 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn2 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns3;\n }\n\n export interface DFUDataKeyedColumns2 {\n DFUDataColumn: DFUDataColumn2[];\n }\n\n export interface DataColumns4 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn3 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns4;\n }\n\n export interface DFUDataKeyedColumns3 {\n DFUDataColumn: DFUDataColumn3[];\n }\n\n export interface DataColumns5 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn4 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns5;\n }\n\n export interface DFUDataKeyedColumns4 {\n DFUDataColumn: DFUDataColumn4[];\n }\n\n export interface DataColumns6 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn5 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns6;\n }\n\n export interface DFUDataKeyedColumns5 {\n DFUDataColumn: DFUDataColumn5[];\n }\n\n export interface DataColumns7 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn6 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns7;\n }\n\n export interface DFUDataKeyedColumns6 {\n DFUDataColumn: DFUDataColumn6[];\n }\n\n export interface DataColumns8 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn7 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns8;\n }\n\n export interface DFUDataKeyedColumns7 {\n DFUDataColumn: DFUDataColumn7[];\n }\n\n export interface DataColumns9 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn8 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns9;\n }\n\n export interface DFUDataKeyedColumns8 {\n DFUDataColumn: DFUDataColumn8[];\n }\n\n export interface DataColumns10 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn9 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns10;\n }\n\n export interface DFUDataKeyedColumns9 {\n DFUDataColumn: DFUDataColumn9[];\n }\n\n export interface DataColumns11 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn10 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns11;\n }\n\n export interface DFUDataKeyedColumns10 {\n DFUDataColumn: DFUDataColumn10[];\n }\n\n export interface DataColumns12 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn11 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns12;\n }\n\n export interface DFUDataKeyedColumns11 {\n DFUDataColumn: DFUDataColumn11[];\n }\n\n export interface DataColumns13 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn12 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns13;\n }\n\n export interface DFUDataKeyedColumns12 {\n DFUDataColumn: DFUDataColumn12[];\n }\n\n export interface DataColumns14 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn13 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns14;\n }\n\n export interface DFUDataKeyedColumns13 {\n DFUDataColumn: DFUDataColumn13[];\n }\n\n export interface DataColumns15 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn14 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns15;\n }\n\n export interface DFUDataKeyedColumns14 {\n DFUDataColumn: DFUDataColumn14[];\n }\n\n export interface DataColumns16 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn15 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns16;\n }\n\n export interface DFUDataKeyedColumns15 {\n DFUDataColumn: DFUDataColumn15[];\n }\n\n export interface DataColumns17 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn16 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns17;\n }\n\n export interface DFUDataKeyedColumns16 {\n DFUDataColumn: DFUDataColumn16[];\n }\n\n export interface DataColumns18 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn17 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns18;\n }\n\n export interface DFUDataKeyedColumns17 {\n DFUDataColumn: DFUDataColumn17[];\n }\n\n export interface DataColumns19 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn18 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns19;\n }\n\n export interface DFUDataKeyedColumns18 {\n DFUDataColumn: DFUDataColumn18[];\n }\n\n export interface DataColumns20 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn19 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns20;\n }\n\n export interface DFUDataKeyedColumns19 {\n DFUDataColumn: DFUDataColumn19[];\n }\n\n export interface DataColumns21 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn20 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns21;\n }\n\n export interface DFUDataKeyedColumns20 {\n DFUDataColumn: DFUDataColumn20[];\n }\n\n export interface DataColumns22 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn21 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns22;\n }\n\n export interface DFUDataNonKeyedColumns1 {\n DFUDataColumn: DFUDataColumn21[];\n }\n\n export interface DataColumns23 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn22 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns23;\n }\n\n export interface DFUDataNonKeyedColumns2 {\n DFUDataColumn: DFUDataColumn22[];\n }\n\n export interface DataColumns24 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn23 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns24;\n }\n\n export interface DFUDataNonKeyedColumns3 {\n DFUDataColumn: DFUDataColumn23[];\n }\n\n export interface DataColumns25 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn24 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns25;\n }\n\n export interface DFUDataNonKeyedColumns4 {\n DFUDataColumn: DFUDataColumn24[];\n }\n\n export interface DataColumns26 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn25 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns26;\n }\n\n export interface DFUDataNonKeyedColumns5 {\n DFUDataColumn: DFUDataColumn25[];\n }\n\n export interface DataColumns27 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn26 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns27;\n }\n\n export interface DFUDataNonKeyedColumns6 {\n DFUDataColumn: DFUDataColumn26[];\n }\n\n export interface DataColumns28 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn27 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns28;\n }\n\n export interface DFUDataNonKeyedColumns7 {\n DFUDataColumn: DFUDataColumn27[];\n }\n\n export interface DataColumns29 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn28 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns29;\n }\n\n export interface DFUDataNonKeyedColumns8 {\n DFUDataColumn: DFUDataColumn28[];\n }\n\n export interface DataColumns30 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn29 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns30;\n }\n\n export interface DFUDataNonKeyedColumns9 {\n DFUDataColumn: DFUDataColumn29[];\n }\n\n export interface DataColumns31 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn30 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns31;\n }\n\n export interface DFUDataNonKeyedColumns10 {\n DFUDataColumn: DFUDataColumn30[];\n }\n\n export interface DataColumns32 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn31 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns32;\n }\n\n export interface DFUDataNonKeyedColumns11 {\n DFUDataColumn: DFUDataColumn31[];\n }\n\n export interface DataColumns33 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn32 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns33;\n }\n\n export interface DFUDataNonKeyedColumns12 {\n DFUDataColumn: DFUDataColumn32[];\n }\n\n export interface DataColumns34 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn33 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns34;\n }\n\n export interface DFUDataNonKeyedColumns13 {\n DFUDataColumn: DFUDataColumn33[];\n }\n\n export interface DataColumns35 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn34 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns35;\n }\n\n export interface DFUDataNonKeyedColumns14 {\n DFUDataColumn: DFUDataColumn34[];\n }\n\n export interface DataColumns36 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn35 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns36;\n }\n\n export interface DFUDataNonKeyedColumns15 {\n DFUDataColumn: DFUDataColumn35[];\n }\n\n export interface DataColumns37 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn36 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns37;\n }\n\n export interface DFUDataNonKeyedColumns16 {\n DFUDataColumn: DFUDataColumn36[];\n }\n\n export interface DataColumns38 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn37 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns38;\n }\n\n export interface DFUDataNonKeyedColumns17 {\n DFUDataColumn: DFUDataColumn37[];\n }\n\n export interface DataColumns39 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn38 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns39;\n }\n\n export interface DFUDataNonKeyedColumns18 {\n DFUDataColumn: DFUDataColumn38[];\n }\n\n export interface DataColumns40 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn39 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns40;\n }\n\n export interface DFUDataNonKeyedColumns19 {\n DFUDataColumn: DFUDataColumn39[];\n }\n\n export interface DataColumns41 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn40 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns41;\n }\n\n export interface DFUDataNonKeyedColumns20 {\n DFUDataColumn: DFUDataColumn40[];\n }\n\n export interface DFUGetDataColumnsResponse {\n Exceptions: Exceptions;\n LogicalName: string;\n StartIndex: number;\n EndIndex: number;\n DFUDataKeyedColumns1: DFUDataKeyedColumns1;\n DFUDataKeyedColumns2: DFUDataKeyedColumns2;\n DFUDataKeyedColumns3: DFUDataKeyedColumns3;\n DFUDataKeyedColumns4: DFUDataKeyedColumns4;\n DFUDataKeyedColumns5: DFUDataKeyedColumns5;\n DFUDataKeyedColumns6: DFUDataKeyedColumns6;\n DFUDataKeyedColumns7: DFUDataKeyedColumns7;\n DFUDataKeyedColumns8: DFUDataKeyedColumns8;\n DFUDataKeyedColumns9: DFUDataKeyedColumns9;\n DFUDataKeyedColumns10: DFUDataKeyedColumns10;\n DFUDataKeyedColumns11: DFUDataKeyedColumns11;\n DFUDataKeyedColumns12: DFUDataKeyedColumns12;\n DFUDataKeyedColumns13: DFUDataKeyedColumns13;\n DFUDataKeyedColumns14: DFUDataKeyedColumns14;\n DFUDataKeyedColumns15: DFUDataKeyedColumns15;\n DFUDataKeyedColumns16: DFUDataKeyedColumns16;\n DFUDataKeyedColumns17: DFUDataKeyedColumns17;\n DFUDataKeyedColumns18: DFUDataKeyedColumns18;\n DFUDataKeyedColumns19: DFUDataKeyedColumns19;\n DFUDataKeyedColumns20: DFUDataKeyedColumns20;\n DFUDataNonKeyedColumns1: DFUDataNonKeyedColumns1;\n DFUDataNonKeyedColumns2: DFUDataNonKeyedColumns2;\n DFUDataNonKeyedColumns3: DFUDataNonKeyedColumns3;\n DFUDataNonKeyedColumns4: DFUDataNonKeyedColumns4;\n DFUDataNonKeyedColumns5: DFUDataNonKeyedColumns5;\n DFUDataNonKeyedColumns6: DFUDataNonKeyedColumns6;\n DFUDataNonKeyedColumns7: DFUDataNonKeyedColumns7;\n DFUDataNonKeyedColumns8: DFUDataNonKeyedColumns8;\n DFUDataNonKeyedColumns9: DFUDataNonKeyedColumns9;\n DFUDataNonKeyedColumns10: DFUDataNonKeyedColumns10;\n DFUDataNonKeyedColumns11: DFUDataNonKeyedColumns11;\n DFUDataNonKeyedColumns12: DFUDataNonKeyedColumns12;\n DFUDataNonKeyedColumns13: DFUDataNonKeyedColumns13;\n DFUDataNonKeyedColumns14: DFUDataNonKeyedColumns14;\n DFUDataNonKeyedColumns15: DFUDataNonKeyedColumns15;\n DFUDataNonKeyedColumns16: DFUDataNonKeyedColumns16;\n DFUDataNonKeyedColumns17: DFUDataNonKeyedColumns17;\n DFUDataNonKeyedColumns18: DFUDataNonKeyedColumns18;\n DFUDataNonKeyedColumns19: DFUDataNonKeyedColumns19;\n DFUDataNonKeyedColumns20: DFUDataNonKeyedColumns20;\n RowCount: number;\n ShowColumns: string;\n ChooseFile: number;\n Cluster: string;\n ClusterType: string;\n }\n\n export interface DataColumns43 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn41 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns43;\n }\n\n export interface DataColumns42 {\n DFUDataColumn: DFUDataColumn41[];\n }\n\n export interface DFUGetFileMetaDataResponse {\n Exceptions: Exceptions;\n TotalColumnCount: number;\n KeyedColumnCount: number;\n DataColumns: DataColumns42;\n XmlSchema: string;\n XmlXPathSchema: string;\n TotalResultRows: number;\n }\n\n export interface Stat {\n MinSkew: string;\n MaxSkew: string;\n MinSkewInt64: number;\n MaxSkewInt64: number;\n }\n\n export interface DFUPart {\n Id: number;\n Copy: number;\n Ip: string;\n Partsize: string;\n PartSizeInt64: number;\n }\n\n export interface DFUFileParts {\n DFUPart: DFUPart[];\n }\n\n export interface DFUFilePartsOnCluster {\n Cluster: string;\n BaseDir: string;\n ReplicateDir: string;\n Replicate: boolean;\n CanReplicate: boolean;\n DFUFileParts: DFUFileParts;\n }\n\n export interface DFUFilePartsOnClusters {\n DFUFilePartsOnCluster: DFUFilePartsOnCluster[];\n }\n\n export interface Subfiles {\n Item: string[];\n }\n\n export interface DFULogicalFile2 {\n Prefix: string;\n NodeGroup: string;\n Directory: string;\n Description: string;\n Parts: string;\n Name: string;\n Owner: string;\n Totalsize: string;\n RecordCount: string;\n Modified: string;\n LongSize: string;\n LongRecordCount: string;\n isSuperfile: boolean;\n isDirectory: boolean;\n Replicate: boolean;\n IntSize: number;\n IntRecordCount: number;\n FromRoxieCluster: boolean;\n BrowseData: boolean;\n IsCompressed: boolean;\n ContentType: string;\n CompressedFileSize: number;\n SuperOwners: string;\n Persistent: boolean;\n IsProtected: boolean;\n KeyType: string;\n }\n\n export interface Superfiles {\n DFULogicalFile: DFULogicalFile2[];\n }\n\n export interface DFUFileProtect {\n Owner: string;\n Count: number;\n Modified: string;\n }\n\n export interface ProtectList {\n DFUFileProtect: DFUFileProtect[];\n }\n\n export interface Graphs {\n ECLGraph: string[];\n }\n\n export interface FieldNames {\n Item: string[];\n }\n\n export interface Partition {\n FieldMask: number;\n FieldNames: FieldNames;\n }\n\n export interface FieldNames2 {\n Item: string[];\n }\n\n export interface DFUFileBloom {\n FieldMask: number;\n FieldNames: FieldNames2;\n Limit: number;\n Probability: string;\n }\n\n export interface Blooms {\n DFUFileBloom: DFUFileBloom[];\n }\n\n export interface FileDetail {\n Name: string;\n Filename: string;\n Prefix: string;\n NodeGroup: string;\n NumParts: number;\n Description: string;\n Dir: string;\n PathMask: string;\n Filesize: string;\n FileSizeInt64: number;\n RecordSize: string;\n RecordCount: string;\n RecordSizeInt64: number;\n RecordCountInt64: number;\n Wuid: string;\n Owner: string;\n JobName: string;\n Persistent: string;\n Format: string;\n MaxRecordSize: string;\n CsvSeparate: string;\n CsvQuote: string;\n CsvTerminate: string;\n CsvEscape: string;\n Modified: string;\n Ecl: string;\n Stat: Stat;\n DFUFilePartsOnClusters: DFUFilePartsOnClusters;\n isSuperfile: boolean;\n ShowFileContent: boolean;\n subfiles: Subfiles;\n Superfiles: Superfiles;\n ProtectList: ProtectList;\n FromRoxieCluster: boolean;\n Graphs: Graphs;\n UserPermission: string;\n ContentType: string;\n CompressedFileSize: number;\n PercentCompressed: string;\n IsCompressed: boolean;\n BrowseData: boolean;\n jsonInfo: string;\n binInfo: string;\n PackageID: string;\n Partition: Partition;\n Blooms: Blooms;\n ExpireDays: number;\n KeyType: string;\n }\n\n export interface DFUInfoResponse {\n Exceptions: Exceptions;\n FileDetail: FileDetail;\n }\n\n export interface DFULogicalFile3 {\n Prefix: string;\n NodeGroup: string;\n Directory: string;\n Description: string;\n Parts: string;\n Name: string;\n Owner: string;\n Totalsize: string;\n RecordCount: string;\n Modified: string;\n LongSize: string;\n LongRecordCount: string;\n isSuperfile: boolean;\n isDirectory: boolean;\n Replicate: boolean;\n IntSize: number;\n IntRecordCount: number;\n FromRoxieCluster: boolean;\n BrowseData: boolean;\n IsCompressed: boolean;\n ContentType: string;\n CompressedFileSize: number;\n SuperOwners: string;\n Persistent: boolean;\n IsProtected: boolean;\n KeyType: string;\n }\n\n export interface DFULogicalFiles2 {\n DFULogicalFile: DFULogicalFile3[];\n }\n\n export interface DFUQueryResponse {\n Exceptions: Exceptions;\n DFULogicalFiles: DFULogicalFiles2;\n Prefix: string;\n NodeGroup: string;\n LogicalName: string;\n Description: string;\n Owner: string;\n StartDate: string;\n EndDate: string;\n FileType: string;\n FileSizeFrom: number;\n FileSizeTo: number;\n FirstN: number;\n PageSize: number;\n PageStartFrom: number;\n LastPageFrom: number;\n PageEndAt: number;\n PrevPageFrom: number;\n NextPageFrom: number;\n NumFiles: number;\n Sortby: string;\n Descending: boolean;\n BasicQuery: string;\n ParametersForPaging: string;\n Filters: string;\n CacheHint: number;\n IsSubsetOfFiles: boolean;\n Warning: string;\n }\n\n export interface DFURecordTypeInfoResponse {\n jsonInfo: string;\n binInfo: string;\n }\n\n export interface ClusterNames {\n ClusterName: string[];\n }\n\n export interface FileTypes {\n FileType: string[];\n }\n\n export interface DFUSearchResponse {\n Exceptions: Exceptions;\n ShowExample: string;\n ClusterNames: ClusterNames;\n FileTypes: FileTypes;\n }\n\n export interface DataColumns44 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn42 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns44;\n }\n\n export interface DFUDataKeyedColumns110 {\n DFUDataColumn: DFUDataColumn42[];\n }\n\n export interface DataColumns45 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn43 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns45;\n }\n\n export interface DFUDataKeyedColumns22 {\n DFUDataColumn: DFUDataColumn43[];\n }\n\n export interface DataColumns46 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn44 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns46;\n }\n\n export interface DFUDataKeyedColumns32 {\n DFUDataColumn: DFUDataColumn44[];\n }\n\n export interface DataColumns47 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn45 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns47;\n }\n\n export interface DFUDataKeyedColumns42 {\n DFUDataColumn: DFUDataColumn45[];\n }\n\n export interface DataColumns48 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn46 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns48;\n }\n\n export interface DFUDataKeyedColumns52 {\n DFUDataColumn: DFUDataColumn46[];\n }\n\n export interface DataColumns49 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn47 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns49;\n }\n\n export interface DFUDataKeyedColumns62 {\n DFUDataColumn: DFUDataColumn47[];\n }\n\n export interface DataColumns50 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn48 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns50;\n }\n\n export interface DFUDataKeyedColumns72 {\n DFUDataColumn: DFUDataColumn48[];\n }\n\n export interface DataColumns51 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn49 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns51;\n }\n\n export interface DFUDataKeyedColumns82 {\n DFUDataColumn: DFUDataColumn49[];\n }\n\n export interface DataColumns52 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn50 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns52;\n }\n\n export interface DFUDataKeyedColumns92 {\n DFUDataColumn: DFUDataColumn50[];\n }\n\n export interface DataColumns53 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn51 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns53;\n }\n\n export interface DFUDataKeyedColumns102 {\n DFUDataColumn: DFUDataColumn51[];\n }\n\n export interface DataColumns54 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn52 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns54;\n }\n\n export interface DFUDataKeyedColumns112 {\n DFUDataColumn: DFUDataColumn52[];\n }\n\n export interface DataColumns55 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn53 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns55;\n }\n\n export interface DFUDataKeyedColumns122 {\n DFUDataColumn: DFUDataColumn53[];\n }\n\n export interface DataColumns56 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn54 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns56;\n }\n\n export interface DFUDataKeyedColumns132 {\n DFUDataColumn: DFUDataColumn54[];\n }\n\n export interface DataColumns57 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn55 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns57;\n }\n\n export interface DFUDataKeyedColumns142 {\n DFUDataColumn: DFUDataColumn55[];\n }\n\n export interface DataColumns58 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn56 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns58;\n }\n\n export interface DFUDataKeyedColumns152 {\n DFUDataColumn: DFUDataColumn56[];\n }\n\n export interface DataColumns59 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn57 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns59;\n }\n\n export interface DFUDataKeyedColumns162 {\n DFUDataColumn: DFUDataColumn57[];\n }\n\n export interface DataColumns60 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn58 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns60;\n }\n\n export interface DFUDataKeyedColumns172 {\n DFUDataColumn: DFUDataColumn58[];\n }\n\n export interface DataColumns61 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn59 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns61;\n }\n\n export interface DFUDataKeyedColumns182 {\n DFUDataColumn: DFUDataColumn59[];\n }\n\n export interface DataColumns62 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn60 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns62;\n }\n\n export interface DFUDataKeyedColumns192 {\n DFUDataColumn: DFUDataColumn60[];\n }\n\n export interface DataColumns63 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn61 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns63;\n }\n\n export interface DFUDataKeyedColumns202 {\n DFUDataColumn: DFUDataColumn61[];\n }\n\n export interface DataColumns64 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn62 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns64;\n }\n\n export interface DFUDataNonKeyedColumns110 {\n DFUDataColumn: DFUDataColumn62[];\n }\n\n export interface DataColumns65 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn63 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns65;\n }\n\n export interface DFUDataNonKeyedColumns22 {\n DFUDataColumn: DFUDataColumn63[];\n }\n\n export interface DataColumns66 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn64 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns66;\n }\n\n export interface DFUDataNonKeyedColumns32 {\n DFUDataColumn: DFUDataColumn64[];\n }\n\n export interface DataColumns67 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn65 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns67;\n }\n\n export interface DFUDataNonKeyedColumns42 {\n DFUDataColumn: DFUDataColumn65[];\n }\n\n export interface DataColumns68 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn66 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns68;\n }\n\n export interface DFUDataNonKeyedColumns52 {\n DFUDataColumn: DFUDataColumn66[];\n }\n\n export interface DataColumns69 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn67 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns69;\n }\n\n export interface DFUDataNonKeyedColumns62 {\n DFUDataColumn: DFUDataColumn67[];\n }\n\n export interface DataColumns70 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn68 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns70;\n }\n\n export interface DFUDataNonKeyedColumns72 {\n DFUDataColumn: DFUDataColumn68[];\n }\n\n export interface DataColumns71 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn69 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns71;\n }\n\n export interface DFUDataNonKeyedColumns82 {\n DFUDataColumn: DFUDataColumn69[];\n }\n\n export interface DataColumns72 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn70 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns72;\n }\n\n export interface DFUDataNonKeyedColumns92 {\n DFUDataColumn: DFUDataColumn70[];\n }\n\n export interface DataColumns73 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn71 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns73;\n }\n\n export interface DFUDataNonKeyedColumns102 {\n DFUDataColumn: DFUDataColumn71[];\n }\n\n export interface DataColumns74 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn72 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns74;\n }\n\n export interface DFUDataNonKeyedColumns112 {\n DFUDataColumn: DFUDataColumn72[];\n }\n\n export interface DataColumns75 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn73 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns75;\n }\n\n export interface DFUDataNonKeyedColumns122 {\n DFUDataColumn: DFUDataColumn73[];\n }\n\n export interface DataColumns76 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn74 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns76;\n }\n\n export interface DFUDataNonKeyedColumns132 {\n DFUDataColumn: DFUDataColumn74[];\n }\n\n export interface DataColumns77 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn75 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns77;\n }\n\n export interface DFUDataNonKeyedColumns142 {\n DFUDataColumn: DFUDataColumn75[];\n }\n\n export interface DataColumns78 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn76 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns78;\n }\n\n export interface DFUDataNonKeyedColumns152 {\n DFUDataColumn: DFUDataColumn76[];\n }\n\n export interface DataColumns79 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn77 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns79;\n }\n\n export interface DFUDataNonKeyedColumns162 {\n DFUDataColumn: DFUDataColumn77[];\n }\n\n export interface DataColumns80 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn78 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns80;\n }\n\n export interface DFUDataNonKeyedColumns172 {\n DFUDataColumn: DFUDataColumn78[];\n }\n\n export interface DataColumns81 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn79 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns81;\n }\n\n export interface DFUDataNonKeyedColumns182 {\n DFUDataColumn: DFUDataColumn79[];\n }\n\n export interface DataColumns82 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn80 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns82;\n }\n\n export interface DFUDataNonKeyedColumns192 {\n DFUDataColumn: DFUDataColumn80[];\n }\n\n export interface DataColumns83 {\n DFUDataColumn: any[];\n }\n\n export interface DFUDataColumn81 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns83;\n }\n\n export interface DFUDataNonKeyedColumns202 {\n DFUDataColumn: DFUDataColumn81[];\n }\n\n export interface DataColumns84 {\n DFUDataColumn: any[];\n }\n\n export interface ColumnHidden2 {\n ColumnID: number;\n ColumnLabel: string;\n ColumnType: string;\n ColumnValue: string;\n ColumnSize: number;\n MaxSize: number;\n ColumnEclType: string;\n ColumnRawSize: number;\n IsNaturalColumn: boolean;\n IsKeyedColumn: boolean;\n DataColumns: DataColumns84;\n }\n\n export interface ColumnsHidden2 {\n ColumnHidden: ColumnHidden2[];\n }\n\n export interface DFUSearchDataResponse {\n Exceptions: Exceptions;\n OpenLogicalName: string;\n LogicalName: string;\n ParentName: string;\n StartIndex: number;\n EndIndex: number;\n DFUDataKeyedColumns1: DFUDataKeyedColumns110;\n DFUDataKeyedColumns2: DFUDataKeyedColumns22;\n DFUDataKeyedColumns3: DFUDataKeyedColumns32;\n DFUDataKeyedColumns4: DFUDataKeyedColumns42;\n DFUDataKeyedColumns5: DFUDataKeyedColumns52;\n DFUDataKeyedColumns6: DFUDataKeyedColumns62;\n DFUDataKeyedColumns7: DFUDataKeyedColumns72;\n DFUDataKeyedColumns8: DFUDataKeyedColumns82;\n DFUDataKeyedColumns9: DFUDataKeyedColumns92;\n DFUDataKeyedColumns10: DFUDataKeyedColumns102;\n DFUDataKeyedColumns11: DFUDataKeyedColumns112;\n DFUDataKeyedColumns12: DFUDataKeyedColumns122;\n DFUDataKeyedColumns13: DFUDataKeyedColumns132;\n DFUDataKeyedColumns14: DFUDataKeyedColumns142;\n DFUDataKeyedColumns15: DFUDataKeyedColumns152;\n DFUDataKeyedColumns16: DFUDataKeyedColumns162;\n DFUDataKeyedColumns17: DFUDataKeyedColumns172;\n DFUDataKeyedColumns18: DFUDataKeyedColumns182;\n DFUDataKeyedColumns19: DFUDataKeyedColumns192;\n DFUDataKeyedColumns20: DFUDataKeyedColumns202;\n DFUDataNonKeyedColumns1: DFUDataNonKeyedColumns110;\n DFUDataNonKeyedColumns2: DFUDataNonKeyedColumns22;\n DFUDataNonKeyedColumns3: DFUDataNonKeyedColumns32;\n DFUDataNonKeyedColumns4: DFUDataNonKeyedColumns42;\n DFUDataNonKeyedColumns5: DFUDataNonKeyedColumns52;\n DFUDataNonKeyedColumns6: DFUDataNonKeyedColumns62;\n DFUDataNonKeyedColumns7: DFUDataNonKeyedColumns72;\n DFUDataNonKeyedColumns8: DFUDataNonKeyedColumns82;\n DFUDataNonKeyedColumns9: DFUDataNonKeyedColumns92;\n DFUDataNonKeyedColumns10: DFUDataNonKeyedColumns102;\n DFUDataNonKeyedColumns11: DFUDataNonKeyedColumns112;\n DFUDataNonKeyedColumns12: DFUDataNonKeyedColumns122;\n DFUDataNonKeyedColumns13: DFUDataNonKeyedColumns132;\n DFUDataNonKeyedColumns14: DFUDataNonKeyedColumns142;\n DFUDataNonKeyedColumns15: DFUDataNonKeyedColumns152;\n DFUDataNonKeyedColumns16: DFUDataNonKeyedColumns162;\n DFUDataNonKeyedColumns17: DFUDataNonKeyedColumns172;\n DFUDataNonKeyedColumns18: DFUDataNonKeyedColumns182;\n DFUDataNonKeyedColumns19: DFUDataNonKeyedColumns192;\n DFUDataNonKeyedColumns20: DFUDataNonKeyedColumns202;\n RowCount: number;\n ShowColumns: string;\n ChooseFile: number;\n Name: string;\n FilterBy: string;\n FilterForGoBack: string;\n ColumnsHidden: ColumnsHidden2;\n ColumnCount: number;\n StartForGoback: number;\n CountForGoback: number;\n Start: number;\n Count: number;\n PageSize: number;\n Total: number;\n Result: string;\n MsgToDisplay: string;\n Cluster: string;\n ClusterType: string;\n File: string;\n Key: string;\n SchemaOnly: boolean;\n RoxieSelections: boolean;\n DisableUppercaseTranslation: boolean;\n AutoUppercaseTranslation: boolean;\n SelectedKey: string;\n }\n\n export interface DFUSpaceItem {\n Name: string;\n NumOfFiles: string;\n NumOfFilesUnknown: string;\n TotalSize: string;\n LargestFile: string;\n LargestSize: string;\n SmallestFile: string;\n SmallestSize: string;\n NumOfFilesInt64: number;\n NumOfFilesUnknownInt64: number;\n TotalSizeInt64: number;\n LargestSizeInt64: number;\n SmallestSizeInt64: number;\n }\n\n export interface DFUSpaceItems {\n DFUSpaceItem: DFUSpaceItem[];\n }\n\n export interface DFUSpaceResponse {\n Exceptions: Exceptions;\n CountBy: string;\n ScopeUnder: string;\n OwnerUnder: string;\n Interval: string;\n StartDate: string;\n EndDate: string;\n DFUSpaceItems: DFUSpaceItems;\n }\n\n export interface EclRecordTypeInfoResponse {\n jsonInfo: string;\n binInfo: string;\n }\n\n export interface Origin {\n Name: string;\n Operation: string;\n Timestamp: string;\n IP: string;\n Path: string;\n Owner: string;\n Workunit: string;\n }\n\n export interface History {\n Origin: Origin[];\n }\n\n export interface EraseHistoryResponse {\n Exceptions: Exceptions;\n History: History;\n }\n\n export interface Origin2 {\n Name: string;\n Operation: string;\n Timestamp: string;\n IP: string;\n Path: string;\n Owner: string;\n Workunit: string;\n }\n\n export interface History2 {\n Origin: Origin2[];\n }\n\n export interface ListHistoryResponse {\n Exceptions: Exceptions;\n History: History2;\n }\n\n export interface WsDfuPingResponse {\n }\n\n export interface SavexmlResponse {\n Exceptions: Exceptions;\n xmlmap: string;\n }\n\n export interface SuperfileActionResponse {\n Exceptions: Exceptions;\n superfile: string;\n retcode: number;\n }\n\n export interface Subfiles2 {\n Item: string[];\n }\n\n export interface SuperfileListResponse {\n Exceptions: Exceptions;\n superfile: string;\n subfiles: Subfiles2;\n }\n}\n\nexport class DFUService extends Service {\n\n constructor(optsConnection: IOptions | IConnection) {\n super(optsConnection, \"WsDfu\", \"1.5\");\n }\n\n DFUQuery(request: WsDfu.DFUQueryRequest): Promise<WsDfu.DFUQueryResponse> {\n return this._connection.send(\"DFUQuery\", request);\n }\n\n DFUInfo(request: WsDfu.DFUInfoRequest): Promise<WsDfu.DFUInfoResponse> {\n return this._connection.send(\"DFUInfo\", request);\n }\n}\n","import { DDL2 } from \"@hpcc-js/ddl-shim\";\nimport { IConnection, IOptions } from \"../connection\";\nimport { ESPExceptions, Service } from \"../espConnection\";\n\nexport type IFieldType = DDL2.IFieldType;\nexport type IField = DDL2.IField;\n\nexport type IWsEclRequest = IField[];\nexport type IWsEclResult = IField[];\nexport type IWsEclResponse = { [id: string]: IField[] };\n\nfunction jsonToIField(id: string, item: any): IField {\n const type = typeof item;\n switch (type) {\n case \"boolean\":\n case \"number\":\n case \"string\":\n return { id, type };\n case \"object\":\n if (item.Row instanceof Array) {\n item = item.Row;\n }\n if (item instanceof Array) {\n return {\n id,\n type: \"dataset\",\n children: jsonToIFieldArr(item[0])\n };\n } else if (item instanceof Object) {\n if (item.Item && item.Item instanceof Array && item.Item.length === 1) {\n const fieldType = typeof item.Item[0];\n if (fieldType === \"string\" || fieldType === \"number\") {\n return {\n id,\n type: \"set\",\n fieldType\n };\n }\n throw new Error(\"Unknown field type\");\n }\n return {\n id,\n type: \"object\",\n fields: jsonToIFieldObj(item)\n };\n }\n // Fall through ---\n default:\n throw new Error(\"Unknown field type\");\n }\n}\n\nfunction jsonToIFieldArr(json: any): IField[] {\n if (json.Row && json.Row instanceof Array) {\n json = json.Row[0];\n }\n const retVal: IField[] = [];\n for (const key in json) {\n retVal.push(jsonToIField(key, json[key]));\n }\n return retVal;\n}\n\nfunction jsonToIFieldObj(json: any): { [id: string]: IField } {\n const fields = {};\n for (const key in json) {\n fields[key] = jsonToIField(key, json[key]);\n }\n return fields;\n}\n\nexport class EclService extends Service {\n\n constructor(optsConnection: IOptions | IConnection) {\n super(optsConnection, \"WsEcl\", \"0\");\n }\n\n opts() {\n return this._connection.opts();\n }\n\n requestJson(querySet: string, queryId: string): Promise<IWsEclRequest> {\n // http://192.168.3.22:8002/WsEcl/example/request/query/roxie/peopleaccounts/json?display\n return this._connection.send(`example/request/query/${querySet}/${queryId}/json`, {}, \"text\").then(response => {\n const requestSchema = JSON.parse(response);\n for (const key in requestSchema) {\n return requestSchema[key];\n }\n return {};\n }).then(jsonToIFieldArr);\n }\n\n responseJson(querySet: string, queryId: string): Promise<IWsEclResponse> {\n // http://192.168.3.22:8002/WsEcl/example/response/query/roxie/peopleaccounts/json?display\n return this._connection.send(`example/response/query/${querySet}/${queryId}/json`, {}, \"text\").then(response => {\n const responseSchema = JSON.parse(response);\n for (const key in responseSchema) {\n return responseSchema[key].Results;\n }\n return {};\n }).then(resultsJson => {\n const retVal: IWsEclResponse = {};\n for (const key in resultsJson) {\n retVal[key] = jsonToIFieldArr(resultsJson[key]);\n }\n return retVal;\n });\n }\n\n submit(querySet: string, queryId: string, request: object) {\n // http://192.168.3.22:8002/WsEcl/submit/query/roxie/peopleaccounts.1/json\n const action = `submit/query/${querySet}/${queryId}`;\n return this._connection.send(action, request, \"json2\").then(response => {\n if (response.Results && response.Results.Exception) {\n throw new ESPExceptions(action, request, {\n Source: \"wsEcl.submit\",\n Exception: response.Results.Exception\n });\n }\n return response.Results;\n });\n }\n}\n","export default function(a, b) {\n return a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;\n}\n","import ascending from \"./ascending\";\n\nexport default function(compare) {\n if (compare.length === 1) compare = ascendingComparator(compare);\n return {\n left: function(a, x, lo, hi) {\n if (lo == null) lo = 0;\n if (hi == null) hi = a.length;\n while (lo < hi) {\n var mid = lo + hi >>> 1;\n if (compare(a[mid], x) < 0) lo = mid + 1;\n else hi = mid;\n }\n return lo;\n },\n right: function(a, x, lo, hi) {\n if (lo == null) lo = 0;\n if (hi == null) hi = a.length;\n while (lo < hi) {\n var mid = lo + hi >>> 1;\n if (compare(a[mid], x) > 0) hi = mid;\n else lo = mid + 1;\n }\n return lo;\n }\n };\n}\n\nfunction ascendingComparator(f) {\n return function(d, x) {\n return ascending(f(d), x);\n };\n}\n","import ascending from \"./ascending\";\nimport bisector from \"./bisector\";\n\nvar ascendingBisect = bisector(ascending);\nexport var bisectRight = ascendingBisect.right;\nexport var bisectLeft = ascendingBisect.left;\nexport default bisectRight;\n","export default function(x) {\n return x === null ? NaN : +x;\n}\n","export default function(values, valueof) {\n var n = values.length,\n i = -1,\n value,\n max;\n\n if (valueof == null) {\n while (++i < n) { // Find the first comparable value.\n if ((value = values[i]) != null && value >= value) {\n max = value;\n while (++i < n) { // Compare the remaining values.\n if ((value = values[i]) != null && value > max) {\n max = value;\n }\n }\n }\n }\n }\n\n else {\n while (++i < n) { // Find the first comparable value.\n if ((value = valueof(values[i], i, values)) != null && value >= value) {\n max = value;\n while (++i < n) { // Compare the remaining values.\n if ((value = valueof(values[i], i, values)) != null && value > max) {\n max = value;\n }\n }\n }\n }\n }\n\n return max;\n}\n","import number from \"./number\";\n\nexport default function(values, valueof) {\n var n = values.length,\n m = n,\n i = -1,\n value,\n sum = 0;\n\n if (valueof == null) {\n while (++i < n) {\n if (!isNaN(value = number(values[i]))) sum += value;\n else --m;\n }\n }\n\n else {\n while (++i < n) {\n if (!isNaN(value = number(valueof(values[i], i, values)))) sum += value;\n else --m;\n }\n }\n\n if (m) return sum / m;\n}\n","import { exists } from \"@hpcc-js/util\";\nimport { max as d3Max, mean as d3Mean } from \"d3-array\";\nimport { IConnection, IOptions } from \"../connection\";\nimport { ESPConnection } from \"../espConnection\";\n\n/*\n Response structures generated via:\n * http://192.168.3.22:8010/ws_machine/GetTargetClusterInfo?respjson_\n * http://json2ts.com/\n*/\n\nexport namespace GetTargetClusterInfo {\n\n export interface TargetClusters {\n Item: string[];\n }\n\n export interface Request {\n TargetClusters?: TargetClusters;\n AddProcessesToFilter?: string;\n ApplyProcessFilter?: boolean;\n GetProcessorInfo?: boolean;\n GetStorageInfo?: boolean;\n LocalFileSystemsOnly?: boolean;\n GetSoftwareInfo?: boolean;\n MemThreshold?: number;\n DiskThreshold?: number;\n CpuThreshold?: number;\n AutoRefresh?: number;\n MemThresholdType?: string;\n DiskThresholdType?: string;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface Columns {\n Item: string[];\n }\n\n export interface Addresses {\n Item: string[];\n }\n\n export interface RequestInfo {\n Addresses: Addresses;\n ClusterType: string;\n Cluster: string;\n OldIP: string;\n Path: string;\n AddProcessesToFilter: string;\n ApplyProcessFilter: boolean;\n GetProcessorInfo: boolean;\n GetStorageInfo: boolean;\n LocalFileSystemsOnly: boolean;\n GetSoftwareInfo: boolean;\n MemThreshold: number;\n DiskThreshold: number;\n CpuThreshold: number;\n AutoRefresh: number;\n MemThresholdType: string;\n DiskThresholdType: string;\n SecurityString: string;\n UserName: string;\n Password: string;\n EnableSNMP: boolean;\n }\n\n export interface ProcessorInfo {\n Type: string;\n Load: number;\n }\n\n export interface Processors {\n ProcessorInfo: ProcessorInfo[];\n }\n\n export interface StorageInfo {\n Description: string;\n Type: string;\n Available: number;\n PercentAvail: number;\n Total: number;\n Failures: number;\n }\n\n export interface Storage {\n StorageInfo: StorageInfo[];\n }\n\n export interface SWRunInfo {\n Name: string;\n Instances: number;\n State: number;\n }\n\n export interface Running {\n SWRunInfo: SWRunInfo[];\n }\n\n export interface PhysicalMemory {\n Description: string;\n Type: string;\n Available: number;\n PercentAvail: number;\n Total: number;\n Failures: number;\n }\n\n export interface VirtualMemory {\n Description: string;\n Type: string;\n Available: number;\n PercentAvail: number;\n Total: number;\n Failures: number;\n }\n\n export interface ComponentInfo {\n Condition: number;\n State: number;\n UpTime: string;\n }\n\n export interface MachineInfoEx {\n Address: string;\n ConfigAddress: string;\n Name: string;\n ProcessType: string;\n DisplayType: string;\n Description: string;\n AgentVersion: string;\n Contact: string;\n Location: string;\n UpTime: string;\n ComponentName: string;\n ComponentPath: string;\n RoxieState: string;\n RoxieStateDetails: string;\n OS: number;\n ProcessNumber: number;\n Processors: Processors;\n Storage: Storage;\n Running: Running;\n PhysicalMemory: PhysicalMemory;\n VirtualMemory: VirtualMemory;\n ComponentInfo: ComponentInfo;\n }\n\n export interface Processes {\n MachineInfoEx: MachineInfoEx[];\n }\n\n export interface TargetClusterInfo {\n Name: string;\n Type: string;\n Processes: Processes;\n }\n\n export interface TargetClusterInfoList {\n TargetClusterInfo: TargetClusterInfo[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n Columns: Columns;\n RequestInfo: RequestInfo;\n TargetClusterInfoList: TargetClusterInfoList;\n TimeStamp: string;\n AcceptLanguage: string;\n }\n}\n\nexport namespace GetTargetClusterUsage {\n\n export interface TargetClusters {\n Item: string[];\n }\n\n export interface Request {\n TargetClusters?: TargetClusters;\n BypassCachedResult: boolean;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface DiskUsage {\n Name: string;\n Path: string;\n Description: string;\n InUse: number;\n Available: number;\n PercentAvailable: number;\n }\n\n export interface DiskUsages {\n DiskUsage: DiskUsage[];\n }\n\n export interface MachineUsage {\n Name: string;\n NetAddress: string;\n Description: string;\n DiskUsages: DiskUsages;\n }\n\n export interface MachineUsages {\n MachineUsage: MachineUsage[];\n }\n\n export interface ComponentUsage {\n Type: string;\n Name: string;\n Description: string;\n MachineUsages: MachineUsages;\n }\n\n export interface ComponentUsages {\n ComponentUsage: ComponentUsage[];\n }\n\n export interface TargetClusterUsage {\n Name: string;\n Description: string;\n ComponentUsages: ComponentUsages;\n }\n\n export interface TargetClusterUsages {\n TargetClusterUsage: TargetClusterUsage[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n TargetClusterUsages: TargetClusterUsages;\n }\n}\n\nexport namespace GetTargetClusterUsageEx {\n\n export interface DiskUsage {\n Name: string;\n Path: string;\n Description: string;\n InUse: number;\n Available: number;\n Total: number;\n PercentAvailable: number;\n PercentUsed: number;\n }\n\n export interface MachineUsage {\n Name: string;\n NetAddress: string;\n Description: string;\n DiskUsages: DiskUsage[];\n mean: number;\n max: number;\n }\n\n export interface ComponentUsage {\n Type: string;\n Name: string;\n Description: string;\n MachineUsages: MachineUsage[];\n MachineUsagesDescription: string;\n mean: number;\n max: number;\n }\n\n export interface TargetClusterUsage {\n Name: string;\n Description: string;\n ComponentUsages: ComponentUsage[];\n ComponentUsagesDescription: string;\n mean: number;\n max: number;\n }\n}\n\nexport class MachineService {\n private _connection: ESPConnection;\n\n constructor(optsConnection: IOptions | IConnection) {\n this._connection = new ESPConnection(optsConnection, \"ws_machine\", \"1.13\");\n }\n\n GetTargetClusterInfo(request: GetTargetClusterInfo.Request = {}): Promise<GetTargetClusterInfo.Response> {\n return this._connection.send(\"GetTargetClusterInfo\", request);\n }\n\n GetTargetClusterUsage(targetClusters?: string[], bypassCachedResult: boolean = false): Promise<GetTargetClusterUsage.TargetClusterUsage[]> {\n return this._connection.send(\"GetTargetClusterUsage\", {\n TargetClusters: targetClusters ? { Item: targetClusters } : {},\n BypassCachedResult: bypassCachedResult\n }).then(response => {\n return exists(\"TargetClusterUsages.TargetClusterUsage\", response) ? response.TargetClusterUsages.TargetClusterUsage : [];\n });\n }\n\n GetTargetClusterUsageEx(targetClusters?: string[], bypassCachedResult: boolean = false): Promise<GetTargetClusterUsageEx.TargetClusterUsage[]> {\n return this.GetTargetClusterUsage(targetClusters, bypassCachedResult).then(response => {\n return response.filter(tcu => !!tcu.ComponentUsages).map(tcu => {\n const ComponentUsages: GetTargetClusterUsageEx.ComponentUsage[] = tcu.ComponentUsages.ComponentUsage.map(cu => {\n const MachineUsages = (cu.MachineUsages && cu.MachineUsages.MachineUsage ? cu.MachineUsages.MachineUsage : []).map(mu => {\n const DiskUsages: GetTargetClusterUsageEx.DiskUsage[] = mu.DiskUsages && mu.DiskUsages.DiskUsage ? mu.DiskUsages.DiskUsage.map(du => {\n return {\n ...du,\n Total: du.InUse + du.Available,\n PercentUsed: 100 - du.PercentAvailable\n };\n }) : [];\n return {\n Name: mu.Name,\n NetAddress: mu.NetAddress,\n Description: mu.Description,\n DiskUsages,\n mean: d3Mean(DiskUsages.filter(du => !isNaN(du.PercentUsed)), du => du.PercentUsed),\n max: d3Max(DiskUsages.filter(du => !isNaN(du.PercentUsed)), du => du.PercentUsed)\n };\n });\n return {\n Type: cu.Type,\n Name: cu.Name,\n Description: cu.Description,\n MachineUsages,\n MachineUsagesDescription: MachineUsages.reduce((prev, mu) => prev + (mu.Description || \"\"), \"\"),\n mean: d3Mean(MachineUsages.filter(mu => !isNaN(mu.mean)), mu => mu.mean),\n max: d3Max(MachineUsages.filter(mu => !isNaN(mu.max)), mu => mu.max)\n };\n });\n return {\n Name: tcu.Name,\n Description: tcu.Description,\n ComponentUsages,\n ComponentUsagesDescription: ComponentUsages.reduce((prev, cu) => prev + (cu.MachineUsagesDescription || \"\"), \"\"),\n mean: d3Mean(ComponentUsages.filter(cu => !isNaN(cu.mean)), cu => cu.mean),\n max: d3Max(ComponentUsages.filter(cu => !isNaN(cu.max)), cu => cu.max)\n };\n });\n });\n }\n}\n","import { IConnection, IOptions } from \"../connection\";\nimport { ESPConnection } from \"../espConnection\";\n\n/*\n Response structures generated via:\n * http://192.168.3.22:8010/WsSMC/Activity?respjson_\n * http://json2ts.com/\n*/\n\nexport namespace SMCActivity {\n export interface Request {\n ChatURL?: string;\n BannerContent?: string;\n BannerColor?: string;\n BannerSize?: string;\n BannerScroll?: string;\n BannerAction?: string;\n EnableChatURL?: boolean;\n FromSubmitBtn?: boolean;\n SortBy?: string;\n Descending?: boolean;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface TargetCluster {\n ClusterName: string;\n QueueName: string;\n QueueStatus: string;\n StatusDetails: string;\n Warning: string;\n ClusterType: number;\n ClusterSize: number;\n ClusterStatus: number;\n }\n\n export interface ThorClusterList {\n TargetCluster: TargetCluster[];\n }\n\n export interface TargetCluster2 {\n ClusterName: string;\n QueueName: string;\n QueueStatus: string;\n StatusDetails: string;\n Warning: string;\n ClusterType: number;\n ClusterSize: number;\n ClusterStatus: number;\n }\n\n export interface RoxieClusterList {\n TargetCluster: TargetCluster2[];\n }\n\n export interface TargetCluster3 {\n ClusterName: string;\n QueueName: string;\n QueueStatus: string;\n StatusDetails: string;\n Warning: string;\n ClusterType: number;\n ClusterSize: number;\n ClusterStatus: number;\n }\n\n export interface HThorClusterList {\n TargetCluster: TargetCluster3[];\n }\n\n export interface DFUJob {\n TimeStarted: string;\n Done: number;\n Total: number;\n Command: string;\n }\n\n export interface DFUJobs {\n DFUJob: DFUJob[];\n }\n\n export interface ActiveWorkunit {\n Wuid: string;\n State: string;\n StateID: number;\n Owner: string;\n Jobname: string;\n Server: string;\n Instance: string;\n Priority: string;\n Extra: string;\n GraphName: string;\n Duration: string;\n GID: string;\n QueueName: string;\n MemoryBlocked: number;\n IsPausing: boolean;\n Warning: string;\n ClusterName: string;\n ClusterType: string;\n ClusterQueueName: string;\n TargetClusterName: string;\n }\n\n export interface Running {\n ActiveWorkunit: ActiveWorkunit[];\n }\n\n export interface ServerJobQueue {\n QueueName: string;\n ServerName: string;\n ServerType: string;\n QueueStatus: string;\n StatusDetails: string;\n NetworkAddress: string;\n Port: number;\n }\n\n export interface ServerJobQueues {\n ServerJobQueue: ServerJobQueue[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n Build: string;\n ThorClusterList: ThorClusterList;\n RoxieClusterList: RoxieClusterList;\n HThorClusterList: HThorClusterList;\n DFUJobs: DFUJobs;\n Running: Running;\n BannerContent: string;\n BannerColor: string;\n BannerSize: string;\n BannerScroll: string;\n ChatURL: string;\n ShowBanner: number;\n ShowChatURL: number;\n SortBy: string;\n Descending: boolean;\n SuperUser: boolean;\n AccessRight: string;\n ServerJobQueues: ServerJobQueues;\n }\n}\n\nexport class SMCService {\n private _connection: ESPConnection;\n\n constructor(optsConnection: IOptions | IConnection) {\n this._connection = new ESPConnection(optsConnection, \"WsSMC\", \"1.19\");\n }\n\n connectionOptions(): IOptions {\n return this._connection.opts();\n }\n\n Activity(request: SMCActivity.Request): Promise<SMCActivity.Response> {\n return this._connection.send(\"Activity\", request).then(response => {\n return {\n Running: {\n ActiveWorkunit: []\n },\n ...response\n };\n });\n }\n}\n","import { IConnection, IOptions } from \"../connection\";\nimport { Service } from \"../espConnection\";\n\n/*\n Response structures generated via:\n * http://localhost:8010/wsstore/Fetch?reqjson_\n * http://localhost:8010/wsstore/Fetch?respjson_\n * http://json2ts.com/\n*/\n\nexport namespace WsStore {\n\n export interface CreateStoreRequest {\n Name: string;\n Type: string;\n Description: string;\n UserSpecific: boolean;\n }\n\n export interface DeleteRequest {\n StoreName: string;\n Namespace: string;\n Key: string;\n UserSpecific: boolean;\n TargetUser?: string;\n }\n\n export interface DeleteNamespaceRequest {\n StoreName: string;\n Namespace: string;\n UserSpecific: boolean;\n TargetUser: string;\n }\n\n export interface FetchRequest {\n StoreName: string;\n Namespace: string;\n Key: string;\n UserSpecific: boolean;\n }\n\n export interface FetchAllRequest {\n StoreName: string;\n Namespace: string;\n UserSpecific: boolean;\n }\n\n export interface FetchKeyMDRequest {\n StoreName: string;\n Namespace: string;\n Key: string;\n UserSpecific: boolean;\n }\n\n export interface ListKeysRequest {\n StoreName: string;\n Namespace: string;\n UserSpecific: boolean;\n }\n\n export interface ListNamespacesRequest {\n StoreName: string;\n UserSpecific: boolean;\n }\n\n export interface SetRequest {\n StoreName: string;\n Namespace: string;\n Key: string;\n Value: string;\n UserSpecific: boolean;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface CreateStoreResponse {\n Exceptions: Exceptions;\n Name: string;\n Type: string;\n Description: string;\n Owner: string;\n }\n\n export interface DeleteResponse {\n Exceptions: Exceptions;\n Success: boolean;\n }\n\n export interface DeleteNamespaceResponse {\n Exceptions: Exceptions;\n Success: boolean;\n }\n\n export interface FetchResponse {\n Exceptions: Exceptions;\n Value: string;\n }\n\n export interface Pair {\n Key: string;\n Value: string;\n }\n\n export interface Pairs {\n Pair: Pair[];\n }\n\n export interface FetchAllResponse {\n Exceptions: Exceptions;\n Namespace: string;\n Pairs: Pairs;\n }\n\n export interface Pair2 {\n Key: string;\n Value: string;\n }\n\n export interface Pairs2 {\n Pair: Pair2[];\n }\n\n export interface FetchKeyMDResponse {\n Exceptions: Exceptions;\n StoreName: string;\n Namespace: string;\n Key: string;\n Pairs: Pairs2;\n }\n\n export interface KeySet {\n Key: string[];\n }\n\n export interface ListKeysResponse {\n Exceptions: Exceptions;\n StoreName: string;\n Namespace: string;\n KeySet: KeySet;\n }\n\n export interface Namespaces {\n Namespace: string[];\n }\n\n export interface ListNamespacesResponse {\n Exceptions: Exceptions;\n StoreName: string;\n Namespaces: Namespaces;\n }\n\n export interface WsstorePingResponse {\n }\n\n export interface SetResponse {\n Exceptions: Exceptions;\n Success: boolean;\n }\n}\n\nexport class StoreService extends Service {\n\n constructor(optsConnection: IOptions | IConnection) {\n super(optsConnection, \"WsStore\", \"1\");\n }\n\n CreateStore(request: WsStore.CreateStoreRequest): Promise<WsStore.CreateStoreResponse> {\n return this._connection.send(\"Fetch\", request);\n }\n\n Delete(request: WsStore.DeleteRequest): Promise<WsStore.DeleteResponse> {\n return this._connection.send(\"Delete\", request).catch(e => {\n if (e.isESPExceptions && e.Exception.some(e => e.Code === -1)) {\n // \"Delete\" item does not exist ---\n return {\n Exceptions: undefined,\n Success: true\n } as WsStore.DeleteResponse;\n }\n throw e;\n });\n }\n\n DeleteNamespace(request: WsStore.DeleteNamespaceRequest): Promise<WsStore.DeleteNamespaceResponse> {\n return this._connection.send(\"DeleteNamespace\", request);\n }\n\n Fetch(request: WsStore.FetchRequest): Promise<WsStore.FetchResponse> {\n return this._connection.send(\"Fetch\", request).catch(e => {\n if (e.isESPExceptions && e.Exception.some(e => e.Code === -1)) {\n // \"Fetch\" item does not exist ---\n return {\n Exceptions: undefined,\n Value: undefined\n } as WsStore.FetchResponse;\n }\n throw e;\n });\n }\n\n FetchAll(request: WsStore.FetchAllRequest): Promise<WsStore.FetchAllResponse> {\n return this._connection.send(\"FetchAll\", request);\n }\n\n FetchKeyMD(request: WsStore.FetchKeyMDRequest): Promise<WsStore.FetchKeyMDResponse> {\n return this._connection.send(\"FetchKeyMD\", request);\n }\n\n ListKeys(request: WsStore.ListKeysRequest): Promise<WsStore.ListKeysResponse> {\n return this._connection.send(\"ListKeys\", request);\n }\n\n ListNamespaces(request: WsStore.ListNamespacesRequest): Promise<WsStore.ListNamespacesResponse> {\n return this._connection.send(\"ListNamespaces\", request);\n }\n\n Set(request: WsStore.SetRequest): Promise<WsStore.SetResponse> {\n return this._connection.send(\"Set\", request);\n }\n}\n","import { IConnection, IOptions } from \"../connection\";\nimport { Service } from \"../espConnection\";\n\n/*\n Response structures generated via:\n * http://192.168.3.22:8010/WsTopology/TpLogicalClusterQuery?respjson_\n * http://json2ts.com/\n*/\n\nexport namespace TpLogicalClusterQuery {\n export interface Request {\n EclServerQueue?: string;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface TpLogicalCluster {\n Name: string;\n Queue: string;\n LanguageVersion: string;\n Process: string;\n Type: string;\n }\n\n export interface TpLogicalClusters {\n TpLogicalCluster: TpLogicalCluster[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n TpLogicalClusters: TpLogicalClusters;\n }\n}\n\nexport namespace TpServiceQuery {\n export interface Request {\n Type?: string;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface TpMachine {\n Name: string;\n Netaddress: string;\n ConfigNetaddress: string;\n Domain: string;\n Directory: string;\n Type: string;\n Available: string;\n OS: number;\n Path: string;\n Port: number;\n ProcessNumber: number;\n }\n\n export interface TpMachines {\n TpMachine: TpMachine[];\n }\n\n export interface TpDali {\n Name: string;\n Description: string;\n Build: string;\n BackupComputer: string;\n BackupDirectory: string;\n Type: string;\n Path: string;\n LogDirectory: string;\n TpMachines: TpMachines;\n }\n\n export interface TpDalis {\n TpDali: TpDali[];\n }\n\n export interface TpMachine2 {\n Name: string;\n Netaddress: string;\n ConfigNetaddress: string;\n Domain: string;\n Directory: string;\n Type: string;\n Available: string;\n OS: number;\n Path: string;\n Port: number;\n ProcessNumber: number;\n }\n\n export interface TpMachines2 {\n TpMachine: TpMachine2[];\n }\n\n export interface TpDfuServer {\n Name: string;\n Description: string;\n Build: string;\n Queue: string;\n Type: string;\n Path: string;\n LogDirectory: string;\n TpMachines: TpMachines2;\n }\n\n export interface TpDfuServers {\n TpDfuServer: TpDfuServer[];\n }\n\n export interface TpMachine3 {\n Name: string;\n Netaddress: string;\n ConfigNetaddress: string;\n Domain: string;\n Directory: string;\n Type: string;\n Available: string;\n OS: number;\n Path: string;\n Port: number;\n ProcessNumber: number;\n }\n\n export interface TpMachines3 {\n TpMachine: TpMachine3[];\n }\n\n export interface TpDkcSlave {\n Name: string;\n Description: string;\n Build: string;\n Path: string;\n TpMachines: TpMachines3;\n }\n\n export interface TpDkcSlaves {\n TpDkcSlave: TpDkcSlave[];\n }\n\n export interface TpMachine4 {\n Name: string;\n Netaddress: string;\n ConfigNetaddress: string;\n Domain: string;\n Directory: string;\n Type: string;\n Available: string;\n OS: number;\n Path: string;\n Port: number;\n ProcessNumber: number;\n }\n\n export interface TpMachines4 {\n TpMachine: TpMachine4[];\n }\n\n export interface TpDropZone {\n Name: string;\n Description: string;\n Build: string;\n Path: string;\n ECLWatchVisible: boolean;\n UMask: string;\n TpMachines: TpMachines4;\n }\n\n export interface TpDropZones {\n TpDropZone: TpDropZone[];\n }\n\n export interface TpMachine5 {\n Name: string;\n Netaddress: string;\n ConfigNetaddress: string;\n Domain: string;\n Directory: string;\n Type: string;\n Available: string;\n OS: number;\n Path: string;\n Port: number;\n ProcessNumber: number;\n }\n\n export interface TpMachines5 {\n TpMachine: TpMachine5[];\n }\n\n export interface TpEclAgent {\n Name: string;\n Description: string;\n Build: string;\n Type: string;\n Path: string;\n DaliServer: string;\n LogDir: string;\n TpMachines: TpMachines5;\n }\n\n export interface TpEclAgents {\n TpEclAgent: TpEclAgent[];\n }\n\n export interface TpMachine6 {\n Name: string;\n Netaddress: string;\n ConfigNetaddress: string;\n Domain: string;\n Directory: string;\n Type: string;\n Available: string;\n OS: number;\n Path: string;\n Port: number;\n ProcessNumber: number;\n }\n\n export interface TpMachines6 {\n TpMachine: TpMachine6[];\n }\n\n export interface TpEclServer {\n Name: string;\n Description: string;\n Build: string;\n LogDirectory: string;\n Type: string;\n Path: string;\n TpMachines: TpMachines6;\n }\n\n export interface TpEclServers {\n TpEclServer: TpEclServer[];\n }\n\n export interface TpMachine7 {\n Name: string;\n Netaddress: string;\n ConfigNetaddress: string;\n Domain: string;\n Directory: string;\n Type: string;\n Available: string;\n OS: number;\n Path: string;\n Port: number;\n ProcessNumber: number;\n }\n\n export interface TpMachines7 {\n TpMachine: TpMachine7[];\n }\n\n export interface TpEclServer2 {\n Name: string;\n Description: string;\n Build: string;\n LogDirectory: string;\n Type: string;\n Path: string;\n TpMachines: TpMachines7;\n }\n\n export interface TpEclCCServers {\n TpEclServer: TpEclServer2[];\n }\n\n export interface TpMachine8 {\n Name: string;\n Netaddress: string;\n ConfigNetaddress: string;\n Domain: string;\n Directory: string;\n Type: string;\n Available: string;\n OS: number;\n Path: string;\n Port: number;\n ProcessNumber: number;\n }\n\n export interface TpMachines8 {\n TpMachine: TpMachine8[];\n }\n\n export interface TpEclScheduler {\n Name: string;\n Description: string;\n Build: string;\n LogDirectory: string;\n Type: string;\n Path: string;\n TpMachines: TpMachines8;\n }\n\n export interface TpEclSchedulers {\n TpEclScheduler: TpEclScheduler[];\n }\n\n export interface TpMachine9 {\n Name: string;\n Netaddress: string;\n ConfigNetaddress: string;\n Domain: string;\n Directory: string;\n Type: string;\n Available: string;\n OS: number;\n Path: string;\n Port: number;\n ProcessNumber: number;\n }\n\n export interface TpMachines9 {\n TpMachine: TpMachine9[];\n }\n\n export interface TpBinding {\n Name: string;\n Service: string;\n ServiceType: string;\n BindingType: string;\n ServiceBuildSet: string;\n Port: string;\n Protocol: string;\n }\n\n export interface TpBindings {\n TpBinding: TpBinding[];\n }\n\n export interface TpEspServer {\n Name: string;\n Description: string;\n Build: string;\n Type: string;\n Path: string;\n LogDirectory: string;\n TpMachines: TpMachines9;\n TpBindings: TpBindings;\n }\n\n export interface TpEspServers {\n TpEspServer: TpEspServer[];\n }\n\n export interface TpMachine10 {\n Name: string;\n Netaddress: string;\n ConfigNetaddress: string;\n Domain: string;\n Directory: string;\n Type: string;\n Available: string;\n OS: number;\n Path: string;\n Port: number;\n ProcessNumber: number;\n }\n\n export interface TpMachines10 {\n TpMachine: TpMachine10[];\n }\n\n export interface TpFTSlave {\n Name: string;\n Description: string;\n Build: string;\n Path: string;\n TpMachines: TpMachines10;\n }\n\n export interface TpFTSlaves {\n TpFTSlave: TpFTSlave[];\n }\n\n export interface TpMachine11 {\n Name: string;\n Netaddress: string;\n ConfigNetaddress: string;\n Domain: string;\n Directory: string;\n Type: string;\n Available: string;\n OS: number;\n Path: string;\n Port: number;\n ProcessNumber: number;\n }\n\n export interface TpMachines11 {\n TpMachine: TpMachine11[];\n }\n\n export interface TpGenesisServer {\n Name: string;\n Description: string;\n Build: string;\n Path: string;\n TpMachines: TpMachines11;\n }\n\n export interface TpGenesisServers {\n TpGenesisServer: TpGenesisServer[];\n }\n\n export interface TpMachine12 {\n Name: string;\n Netaddress: string;\n ConfigNetaddress: string;\n Domain: string;\n Directory: string;\n Type: string;\n Available: string;\n OS: number;\n Path: string;\n Port: number;\n ProcessNumber: number;\n }\n\n export interface TpMachines12 {\n TpMachine: TpMachine12[];\n }\n\n export interface TpLdapServer {\n Name: string;\n Description: string;\n Build: string;\n Path: string;\n TpMachines: TpMachines12;\n }\n\n export interface TpLdapServers {\n TpLdapServer: TpLdapServer[];\n }\n\n export interface TpMachine13 {\n Name: string;\n Netaddress: string;\n ConfigNetaddress: string;\n Domain: string;\n Directory: string;\n Type: string;\n Available: string;\n OS: number;\n Path: string;\n Port: number;\n ProcessNumber: number;\n }\n\n export interface TpMachines13 {\n TpMachine: TpMachine13[];\n }\n\n export interface TpMySqlServer {\n Name: string;\n Description: string;\n Build: string;\n Path: string;\n TpMachines: TpMachines13;\n }\n\n export interface TpMySqlServers {\n TpMySqlServer: TpMySqlServer[];\n }\n\n export interface TpMachine14 {\n Name: string;\n Netaddress: string;\n ConfigNetaddress: string;\n Domain: string;\n Directory: string;\n Type: string;\n Available: string;\n OS: number;\n Path: string;\n Port: number;\n ProcessNumber: number;\n }\n\n export interface TpMachines14 {\n TpMachine: TpMachine14[];\n }\n\n export interface TpSashaServer {\n Name: string;\n Description: string;\n Build: string;\n Path: string;\n LogDirectory: string;\n TpMachines: TpMachines14;\n }\n\n export interface TpSashaServers {\n TpSashaServer: TpSashaServer[];\n }\n\n export interface ServiceList {\n TpDalis: TpDalis;\n TpDfuServers: TpDfuServers;\n TpDkcSlaves: TpDkcSlaves;\n TpDropZones: TpDropZones;\n TpEclAgents: TpEclAgents;\n TpEclServers: TpEclServers;\n TpEclCCServers: TpEclCCServers;\n TpEclSchedulers: TpEclSchedulers;\n TpEspServers: TpEspServers;\n TpFTSlaves: TpFTSlaves;\n TpGenesisServers: TpGenesisServers;\n TpLdapServers: TpLdapServers;\n TpMySqlServers: TpMySqlServers;\n TpSashaServers: TpSashaServers;\n }\n\n export interface Response {\n Exceptions: Exceptions;\n MemThreshold: number;\n DiskThreshold: number;\n CpuThreshold: number;\n EncapsulatedSystem: boolean;\n EnableSNMP: boolean;\n PreflightProcessFilter: string;\n AcceptLanguage: string;\n MemThresholdType: string;\n DiskThresholdType: string;\n ServiceList: ServiceList;\n }\n}\n\nexport namespace TpTargetClusterQuery {\n\n export interface Request {\n Type?: string;\n Name?: string;\n ShowDetails?: boolean;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface TpMachine {\n Name: string;\n Netaddress: string;\n ConfigNetaddress: string;\n Domain: string;\n Directory: string;\n Type: string;\n Available: string;\n OS: number;\n Path: string;\n Port: number;\n ProcessNumber: number;\n }\n\n export interface TpMachines {\n TpMachine: TpMachine[];\n }\n\n export interface TpCluster {\n Type: string;\n Name: string;\n QueueName: string;\n Build: string;\n Directory: string;\n LogDirectory: string;\n Desc: string;\n Path: string;\n DataModel: string;\n OS: number;\n HasThorSpareProcess: boolean;\n TpMachines: TpMachines;\n }\n\n export interface TpClusters {\n TpCluster: TpCluster[];\n }\n\n export interface TpMachine2 {\n Name: string;\n Netaddress: string;\n ConfigNetaddress: string;\n Domain: string;\n Directory: string;\n Type: string;\n Available: string;\n OS: number;\n Path: string;\n Port: number;\n ProcessNumber: number;\n }\n\n export interface TpMachines2 {\n TpMachine: TpMachine2[];\n }\n\n export interface TpEclServer {\n Name: string;\n Description: string;\n Build: string;\n LogDirectory: string;\n Type: string;\n Path: string;\n TpMachines: TpMachines2;\n }\n\n export interface TpEclCCServers {\n TpEclServer: TpEclServer[];\n }\n\n export interface TpMachine3 {\n Name: string;\n Netaddress: string;\n ConfigNetaddress: string;\n Domain: string;\n Directory: string;\n Type: string;\n Available: string;\n OS: number;\n Path: string;\n Port: number;\n ProcessNumber: number;\n }\n\n export interface TpMachines3 {\n TpMachine: TpMachine3[];\n }\n\n export interface TpEclServer2 {\n Name: string;\n Description: string;\n Build: string;\n LogDirectory: string;\n Type: string;\n Path: string;\n TpMachines: TpMachines3;\n }\n\n export interface TpEclServers {\n TpEclServer: TpEclServer2[];\n }\n\n export interface TpMachine4 {\n Name: string;\n Netaddress: string;\n ConfigNetaddress: string;\n Domain: string;\n Directory: string;\n Type: string;\n Available: string;\n OS: number;\n Path: string;\n Port: number;\n ProcessNumber: number;\n }\n\n export interface TpMachines4 {\n TpMachine: TpMachine4[];\n }\n\n export interface TpEclAgent {\n Name: string;\n Description: string;\n Build: string;\n Type: string;\n Path: string;\n DaliServer: string;\n LogDir: string;\n TpMachines: TpMachines4;\n }\n\n export interface TpEclAgents {\n TpEclAgent: TpEclAgent[];\n }\n\n export interface TpMachine5 {\n Name: string;\n Netaddress: string;\n ConfigNetaddress: string;\n Domain: string;\n Directory: string;\n Type: string;\n Available: string;\n OS: number;\n Path: string;\n Port: number;\n ProcessNumber: number;\n }\n\n export interface TpMachines5 {\n TpMachine: TpMachine5[];\n }\n\n export interface TpEclScheduler {\n Name: string;\n Description: string;\n Build: string;\n LogDirectory: string;\n Type: string;\n Path: string;\n TpMachines: TpMachines5;\n }\n\n export interface TpEclSchedulers {\n TpEclScheduler: TpEclScheduler[];\n }\n\n export interface TpTargetCluster {\n Name: string;\n Prefix: string;\n Type: string;\n TpClusters: TpClusters;\n TpEclCCServers: TpEclCCServers;\n TpEclServers: TpEclServers;\n TpEclAgents: TpEclAgents;\n TpEclSchedulers: TpEclSchedulers;\n }\n\n export interface TpTargetClusters {\n TpTargetCluster: TpTargetCluster[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n ShowDetails: boolean;\n MemThreshold: number;\n DiskThreshold: number;\n CpuThreshold: number;\n MemThresholdType: string;\n DiskThresholdType: string;\n PreflightProcessFilter: string;\n AcceptLanguage: string;\n TpTargetClusters: TpTargetClusters;\n }\n}\n\nexport namespace TpListTargetClusters {\n\n export interface Request {\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface TpClusterNameType {\n Name: string;\n Type: string;\n IsDefault: boolean;\n }\n\n export interface TargetClusters {\n TpClusterNameType: TpClusterNameType[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n TargetClusters: TargetClusters;\n }\n\n}\n\nexport class TopologyService extends Service {\n\n constructor(optsConnection: IOptions | IConnection) {\n super(optsConnection, \"WsTopology\", \"1.25\");\n }\n\n connectionOptions(): IOptions {\n return this._connection.opts();\n }\n\n protocol(): string {\n const parts = this._connection.opts().baseUrl.split(\"//\");\n return parts[0];\n }\n\n ip(): string {\n const parts = this._connection.opts().baseUrl.split(\"//\");\n const parts2 = parts[1].split(\":\");\n return parts2[0];\n }\n\n TpLogicalClusterQuery(request: TpLogicalClusterQuery.Request = {}): Promise<TpLogicalClusterQuery.Response> {\n return this._connection.send(\"TpLogicalClusterQuery\", request);\n }\n\n DefaultTpLogicalClusterQuery(request: TpLogicalClusterQuery.Request = {}): Promise<TpLogicalClusterQuery.TpLogicalCluster> {\n return this.TpLogicalClusterQuery(request).then((response) => {\n if ((response as any).default) {\n return (response as any).default;\n }\n let firstHThor;\n let first;\n response.TpLogicalClusters.TpLogicalCluster.some((item, idx) => {\n if (idx === 0) {\n first = item;\n }\n if (item.Type === \"hthor\") {\n firstHThor = item;\n return true;\n }\n return false;\n });\n return firstHThor || first;\n });\n }\n\n TpServiceQuery(request: TpServiceQuery.Request): Promise<TpServiceQuery.Response> {\n return this._connection.send(\"TpServiceQuery\", request);\n }\n\n TpTargetClusterQuery(request: TpTargetClusterQuery.Request): Promise<TpTargetClusterQuery.Response> {\n return this._connection.send(\"TpTargetClusterQuery\", request);\n }\n\n TpListTargetClusters(request: TpListTargetClusters.Request): Promise<TpListTargetClusters.Response> {\n return this._connection.send(\"TpListTargetClusters\", request);\n }\n}\n","import { deepMixin, xml2json, XMLNode } from \"@hpcc-js/util\";\nimport { IConnection, IOptions } from \"../connection\";\nimport { ESPConnection, Service } from \"../espConnection\";\n\n/*\n Response structures generated via:\n * http://192.168.3.22:8010/WsWorkunits/WUQuery?respjson_\n * http://json2ts.com/\n*/\n\nexport enum WUStateID {\n Unknown = 0,\n Compiled,\n Running,\n Completed,\n Failed,\n Archived,\n Aborting,\n Aborted,\n Blocked,\n Submitted,\n Scheduled,\n Compiling,\n Wait,\n UploadingFiled,\n DebugPaused,\n DebugRunning,\n Paused,\n LAST,\n NotFound = 999\n}\n\nexport namespace WUInfo {\n export interface Request {\n Wuid: string;\n TruncateEclTo64k?: boolean;\n Type?: string;\n IncludeExceptions?: boolean;\n IncludeGraphs?: boolean;\n IncludeSourceFiles?: boolean;\n IncludeResults?: boolean;\n IncludeResultsViewNames?: boolean;\n IncludeVariables?: boolean;\n IncludeTimers?: boolean;\n IncludeDebugValues?: boolean;\n IncludeApplicationValues?: boolean;\n IncludeWorkflows?: boolean;\n IncludeXmlSchemas?: boolean;\n IncludeResourceURLs?: boolean;\n SuppressResultSchemas?: boolean;\n ThorSlaveIP?: string;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface Query {\n Text: string;\n Cpp: string;\n ResTxt: string;\n Dll: string;\n ThorLog: string;\n QueryMainDefinition: string;\n }\n\n export interface ECLHelpFile {\n Name: string;\n Type: string;\n IPAddress: string;\n Description: string;\n FileSize: number;\n PID: number;\n minActivityId: number;\n maxActivityId: number;\n }\n\n export interface Helpers {\n ECLHelpFile: ECLHelpFile[];\n }\n\n export interface ECLException {\n Source: string;\n Severity: string;\n Code: number;\n Message: string;\n FileName: string;\n LineNo: number;\n Column: number;\n Activity: number;\n }\n\n export interface Exceptions2 {\n ECLException: ECLException[];\n }\n\n export interface ECLGraph {\n Name: string;\n Label: string;\n Type: string;\n Running: boolean;\n Complete: boolean;\n Failed: boolean;\n RunningId: number;\n WhenStarted: string;\n WhenFinished: string;\n }\n\n export interface Graphs {\n ECLGraph: ECLGraph[];\n }\n\n export interface ECLSourceFiles {\n ECLSourceFile: any[];\n }\n\n export interface ECLSourceFile {\n FileCluster: string;\n Name: string;\n IsSuperFile: boolean;\n Subs: number;\n Count: number;\n ECLSourceFiles: ECLSourceFiles;\n }\n\n export interface SourceFiles {\n ECLSourceFile: ECLSourceFile[];\n }\n\n export interface ECLSchemaItem {\n ColumnName: string;\n ColumnType: string;\n ColumnTypeCode: number;\n isConditional: boolean;\n }\n\n export interface ECLSchemas {\n ECLSchemaItem: ECLSchemaItem[];\n }\n\n export interface ECLResult {\n Name: string;\n Sequence: number;\n Value: string;\n Link: string;\n FileName: string;\n IsSupplied: boolean;\n ShowFileContent: boolean;\n Total: number;\n ECLSchemas: ECLSchemas;\n XmlSchema: string;\n }\n\n export interface Results {\n ECLResult: ECLResult[];\n }\n\n export interface ECLSchemaItem2 {\n ColumnName: string;\n ColumnType: string;\n ColumnTypeCode: number;\n isConditional: boolean;\n }\n\n export interface ECLSchemas2 {\n ECLSchemaItem: ECLSchemaItem2[];\n }\n\n export interface ECLResult2 {\n Name: string;\n Sequence: number;\n Value: string;\n Link: string;\n FileName: string;\n IsSupplied: boolean;\n ShowFileContent: boolean;\n Total: number;\n ECLSchemas: ECLSchemas2;\n XmlSchema: string;\n }\n\n export interface Variables {\n ECLResult: ECLResult2[];\n }\n\n export interface ECLTimer {\n Name: string;\n Value: string;\n count: number;\n GraphName: string;\n SubGraphId: number;\n }\n\n export interface Timers {\n ECLTimer: ECLTimer[];\n }\n\n export interface DebugValue {\n Name: string;\n Value: string;\n }\n\n export interface DebugValues {\n DebugValue: DebugValue[];\n }\n\n export interface ApplicationValue {\n Application: string;\n Name: string;\n Value: string;\n }\n\n export interface ApplicationValues {\n ApplicationValue: ApplicationValue[];\n }\n\n export interface ECLWorkflow {\n WFID: string;\n EventName: string;\n EventText: string;\n Count: number;\n CountRemaining: number;\n }\n\n export interface Workflows {\n ECLWorkflow: ECLWorkflow[];\n }\n\n export interface ECLTimingData {\n Name: string;\n GraphNum: number;\n SubGraphNum: number;\n GID: number;\n Min: number;\n MS: number;\n }\n\n export interface TimingData {\n ECLTimingData: ECLTimingData[];\n }\n\n export interface AllowedClusters {\n AllowedCluster: string[];\n }\n\n export interface ThorLogInfo {\n ProcessName: string;\n ClusterGroup: string;\n LogDate: string;\n NumberSlaves: number;\n }\n\n export interface ThorLogList {\n ThorLogInfo: ThorLogInfo[];\n }\n\n export interface ResourceURLs {\n URL: string[];\n }\n\n export interface Workunit {\n Wuid: string;\n Owner: string;\n Cluster: string;\n RoxieCluster: string;\n Jobname: string;\n Queue: string;\n StateID: number;\n State: string;\n StateEx: string;\n Description: string;\n Protected: boolean;\n Active: boolean;\n Action: number;\n ActionEx: string;\n DateTimeScheduled: string;\n PriorityClass: number;\n PriorityLevel: number;\n Scope: string;\n Snapshot: string;\n ResultLimit: number;\n Archived: boolean;\n IsPausing: boolean;\n ThorLCR: boolean;\n EventSchedule: number;\n HaveSubGraphTimings: boolean;\n TotalClusterTime: string;\n AbortBy: string;\n AbortTime: string;\n Query: Query;\n Helpers: Helpers;\n Exceptions: Exceptions2;\n Graphs: Graphs;\n SourceFiles: SourceFiles;\n Results: Results;\n Variables: Variables;\n Timers: Timers;\n DebugValues: DebugValues;\n ApplicationValues: ApplicationValues;\n Workflows: Workflows;\n TimingData: TimingData;\n AllowedClusters: AllowedClusters;\n ErrorCount: number;\n WarningCount: number;\n InfoCount: number;\n AlertCount: number;\n GraphCount: number;\n SourceFileCount: number;\n ResultCount: number;\n VariableCount: number;\n TimerCount: number;\n HasDebugValue: boolean;\n ApplicationValueCount: number;\n XmlParams: string;\n AccessFlag: number;\n ClusterFlag: number;\n HelpersDesc: string;\n GraphsDesc: string;\n SourceFilesDesc: string;\n ResultsDesc: string;\n VariablesDesc: string;\n TimersDesc: string;\n DebugValuesDesc: string;\n ApplicationValuesDesc: string;\n WorkflowsDesc: string;\n HasArchiveQuery: boolean;\n ThorLogList: ThorLogList;\n ResourceURLs: ResourceURLs;\n ResultViewCount: number;\n ResourceURLCount: number;\n DebugValueCount: number;\n WorkflowCount: number;\n HelpersCount: number;\n }\n\n export interface ResultViews {\n View: string[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n Workunit: Workunit;\n AutoRefresh: number;\n CanCompile: boolean;\n ThorSlaveIP: string;\n ResultViews: ResultViews;\n SecMethod: string;\n }\n}\n\nexport namespace WUQuery {\n export interface ApplicationValue {\n Application: string;\n Name: string;\n Value: string;\n }\n\n export interface Request {\n Wuid?: string;\n Type?: string;\n Cluster?: string;\n RoxieCluster?: string;\n Owner?: string;\n State?: string;\n StartDate?: string;\n EndDate?: string;\n ECL?: string;\n Jobname?: string;\n LogicalFile?: string;\n LogicalFileSearchType?: string;\n ApplicationValues?: {\n ApplicationValue: ApplicationValue[]\n };\n After?: string;\n Before?: string;\n Count?: number;\n PageSize?: number;\n PageStartFrom?: number;\n PageEndAt?: number;\n LastNDays?: number;\n Sortby?: string;\n Descending?: boolean;\n CacheHint?: string;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface Query {\n Text: string;\n Cpp: string;\n ResTxt: string;\n Dll: string;\n ThorLog: string;\n QueryMainDefinition: string;\n }\n\n export interface ECLHelpFile {\n Name: string;\n Type: string;\n IPAddress: string;\n Description: string;\n FileSize: number;\n PID: number;\n minActivityId: number;\n maxActivityId: number;\n }\n\n export interface Helpers {\n ECLHelpFile: ECLHelpFile[];\n }\n\n export interface ECLException {\n Source: string;\n Severity: string;\n Code: number;\n Message: string;\n FileName: string;\n LineNo: number;\n Column: number;\n Activity: number;\n }\n\n export interface Exceptions2 {\n ECLException: ECLException[];\n }\n\n export interface ECLGraph {\n Name: string;\n Label: string;\n Type: string;\n Running: boolean;\n Complete: boolean;\n Failed: boolean;\n RunningId: number;\n WhenStarted: string;\n WhenFinished: string;\n }\n\n export interface Graphs {\n ECLGraph: ECLGraph[];\n }\n\n export interface ECLSourceFiles {\n ECLSourceFile: any[];\n }\n\n export interface ECLSourceFile {\n FileCluster: string;\n Name: string;\n IsSuperFile: boolean;\n Subs: number;\n Count: number;\n ECLSourceFiles: ECLSourceFiles;\n }\n\n export interface SourceFiles {\n ECLSourceFile: ECLSourceFile[];\n }\n\n export interface ECLSchemaItem {\n ColumnName: string;\n ColumnType: string;\n ColumnTypeCode: number;\n isConditional: boolean;\n }\n\n export interface ECLSchemas {\n ECLSchemaItem: ECLSchemaItem[];\n }\n\n export interface ECLResult {\n Name: string;\n Sequence: number;\n Value: string;\n Link: string;\n FileName: string;\n IsSupplied: boolean;\n ShowFileContent: boolean;\n Total: number;\n ECLSchemas: ECLSchemas;\n XmlSchema: string;\n }\n\n export interface Results {\n ECLResult: ECLResult[];\n }\n\n export interface ECLSchemaItem2 {\n ColumnName: string;\n ColumnType: string;\n ColumnTypeCode: number;\n isConditional: boolean;\n }\n\n export interface ECLSchemas2 {\n ECLSchemaItem: ECLSchemaItem2[];\n }\n\n export interface ECLResult2 {\n Name: string;\n Sequence: number;\n Value: string;\n Link: string;\n FileName: string;\n IsSupplied: boolean;\n ShowFileContent: boolean;\n Total: number;\n ECLSchemas: ECLSchemas2;\n XmlSchema: string;\n }\n\n export interface Variables {\n ECLResult: ECLResult2[];\n }\n\n export interface ECLTimer {\n Name: string;\n Value: string;\n count: number;\n GraphName: string;\n SubGraphId: number;\n }\n\n export interface Timers {\n ECLTimer: ECLTimer[];\n }\n\n export interface DebugValue {\n Name: string;\n Value: string;\n }\n\n export interface DebugValues {\n DebugValue: DebugValue[];\n }\n\n export interface ApplicationValue {\n Application: string;\n Name: string;\n Value: string;\n }\n\n export interface ApplicationValues {\n ApplicationValue: ApplicationValue[];\n }\n\n export interface ECLWorkflow {\n WFID: string;\n EventName: string;\n EventText: string;\n Count: number;\n CountRemaining: number;\n }\n\n export interface Workflows {\n ECLWorkflow: ECLWorkflow[];\n }\n\n export interface ECLTimingData {\n Name: string;\n GraphNum: number;\n SubGraphNum: number;\n GID: number;\n Min: number;\n MS: number;\n }\n\n export interface TimingData {\n ECLTimingData: ECLTimingData[];\n }\n\n export interface AllowedClusters {\n AllowedCluster: string[];\n }\n\n export interface ThorLogInfo {\n ProcessName: string;\n ClusterGroup: string;\n LogDate: string;\n NumberSlaves: number;\n }\n\n export interface ThorLogList {\n ThorLogInfo: ThorLogInfo[];\n }\n\n export interface ResourceURLs {\n URL: string[];\n }\n\n export interface ECLWorkunit {\n Wuid: string;\n Owner: string;\n Cluster: string;\n RoxieCluster: string;\n Jobname: string;\n Queue: string;\n StateID: number;\n State: string;\n StateEx: string;\n Description: string;\n Protected: boolean;\n Active: boolean;\n Action: number;\n ActionEx: string;\n DateTimeScheduled: string;\n PriorityClass: number;\n PriorityLevel: number;\n Scope: string;\n Snapshot: string;\n ResultLimit: number;\n Archived: boolean;\n IsPausing: boolean;\n ThorLCR: boolean;\n EventSchedule: number;\n HaveSubGraphTimings: boolean;\n TotalClusterTime: string;\n AbortBy: string;\n AbortTime: string;\n Query: Query;\n Helpers: Helpers;\n Exceptions: Exceptions2;\n Graphs: Graphs;\n SourceFiles: SourceFiles;\n Results: Results;\n Variables: Variables;\n Timers: Timers;\n DebugValues: DebugValues;\n ApplicationValues: ApplicationValues;\n Workflows: Workflows;\n TimingData: TimingData;\n AllowedClusters: AllowedClusters;\n ErrorCount: number;\n WarningCount: number;\n InfoCount: number;\n AlertCount: number;\n GraphCount: number;\n SourceFileCount: number;\n ResultCount: number;\n VariableCount: number;\n TimerCount: number;\n HasDebugValue: boolean;\n ApplicationValueCount: number;\n XmlParams: string;\n AccessFlag: number;\n ClusterFlag: number;\n HelpersDesc: string;\n GraphsDesc: string;\n SourceFilesDesc: string;\n ResultsDesc: string;\n VariablesDesc: string;\n TimersDesc: string;\n DebugValuesDesc: string;\n ApplicationValuesDesc: string;\n WorkflowsDesc: string;\n HasArchiveQuery: boolean;\n ThorLogList: ThorLogList;\n ResourceURLs: ResourceURLs;\n ResultViewCount: number;\n ResourceURLCount: number;\n DebugValueCount: number;\n WorkflowCount: number;\n HelpersCount: number;\n }\n\n export interface Workunits {\n ECLWorkunit: ECLWorkunit[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n Type: string;\n Cluster: string;\n RoxieCluster: string;\n Owner: string;\n State: string;\n StartDate: string;\n EndDate: string;\n ECL: string;\n Jobname: string;\n LogicalFile: string;\n LogicalFileSearchType: string;\n Current: string;\n Next: string;\n Count: number;\n PageSize: number;\n PrevPage: number;\n NextPage: number;\n LastPage: number;\n NumWUs: number;\n First: boolean;\n PageStartFrom: number;\n PageEndAt: number;\n LastNDays: number;\n Sortby: string;\n Descending: boolean;\n BasicQuery: string;\n Filters: string;\n CacheHint: number;\n Workunits: Workunits;\n }\n}\n\nexport namespace WUCreate {\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface Query {\n Text: string;\n Cpp: string;\n ResTxt: string;\n Dll: string;\n ThorLog: string;\n QueryMainDefinition: string;\n }\n\n export interface ECLHelpFile {\n Name: string;\n Type: string;\n IPAddress: string;\n Description: string;\n FileSize: number;\n PID: number;\n minActivityId: number;\n maxActivityId: number;\n }\n\n export interface Helpers {\n ECLHelpFile: ECLHelpFile[];\n }\n\n export interface ECLException {\n Source: string;\n Severity: string;\n Code: number;\n Message: string;\n FileName: string;\n LineNo: number;\n Column: number;\n Activity: number;\n }\n\n export interface Exceptions2 {\n ECLException: ECLException[];\n }\n\n export interface ECLGraph {\n Name: string;\n Label: string;\n Type: string;\n Running: boolean;\n Complete: boolean;\n Failed: boolean;\n RunningId: number;\n WhenStarted: string;\n WhenFinished: string;\n }\n\n export interface Graphs {\n ECLGraph: ECLGraph[];\n }\n\n export interface ECLSourceFiles {\n ECLSourceFile: any[];\n }\n\n export interface ECLSourceFile {\n FileCluster: string;\n Name: string;\n IsSuperFile: boolean;\n Subs: number;\n Count: number;\n ECLSourceFiles: ECLSourceFiles;\n }\n\n export interface SourceFiles {\n ECLSourceFile: ECLSourceFile[];\n }\n\n export interface ECLSchemaItem {\n ColumnName: string;\n ColumnType: string;\n ColumnTypeCode: number;\n isConditional: boolean;\n }\n\n export interface ECLSchemas {\n ECLSchemaItem: ECLSchemaItem[];\n }\n\n export interface ECLResult {\n Name: string;\n Sequence: number;\n Value: string;\n Link: string;\n FileName: string;\n IsSupplied: boolean;\n ShowFileContent: boolean;\n Total: number;\n ECLSchemas: ECLSchemas;\n XmlSchema: string;\n }\n\n export interface Results {\n ECLResult: ECLResult[];\n }\n\n export interface ECLSchemaItem2 {\n ColumnName: string;\n ColumnType: string;\n ColumnTypeCode: number;\n isConditional: boolean;\n }\n\n export interface ECLSchemas2 {\n ECLSchemaItem: ECLSchemaItem2[];\n }\n\n export interface ECLResult2 {\n Name: string;\n Sequence: number;\n Value: string;\n Link: string;\n FileName: string;\n IsSupplied: boolean;\n ShowFileContent: boolean;\n Total: number;\n ECLSchemas: ECLSchemas2;\n XmlSchema: string;\n }\n\n export interface Variables {\n ECLResult: ECLResult2[];\n }\n\n export interface ECLTimer {\n Name: string;\n Value: string;\n count: number;\n GraphName: string;\n SubGraphId: number;\n }\n\n export interface Timers {\n ECLTimer: ECLTimer[];\n }\n\n export interface DebugValue {\n Name: string;\n Value: string;\n }\n\n export interface DebugValues {\n DebugValue: DebugValue[];\n }\n\n export interface ApplicationValue {\n Application: string;\n Name: string;\n Value: string;\n }\n\n export interface ApplicationValues {\n ApplicationValue: ApplicationValue[];\n }\n\n export interface ECLWorkflow {\n WFID: string;\n EventName: string;\n EventText: string;\n Count: number;\n CountRemaining: number;\n }\n\n export interface Workflows {\n ECLWorkflow: ECLWorkflow[];\n }\n\n export interface ECLTimingData {\n Name: string;\n GraphNum: number;\n SubGraphNum: number;\n GID: number;\n Min: number;\n MS: number;\n }\n\n export interface TimingData {\n ECLTimingData: ECLTimingData[];\n }\n\n export interface AllowedClusters {\n AllowedCluster: string[];\n }\n\n export interface ThorLogInfo {\n ProcessName: string;\n ClusterGroup: string;\n LogDate: string;\n NumberSlaves: number;\n }\n\n export interface ThorLogList {\n ThorLogInfo: ThorLogInfo[];\n }\n\n export interface ResourceURLs {\n URL: string[];\n }\n\n export interface Workunit {\n Wuid: string;\n Owner: string;\n Cluster: string;\n RoxieCluster: string;\n Jobname: string;\n Queue: string;\n StateID: number;\n State: string;\n StateEx: string;\n Description: string;\n Protected: boolean;\n Active: boolean;\n Action: number;\n ActionEx: string;\n DateTimeScheduled: string;\n PriorityClass: number;\n PriorityLevel: number;\n Scope: string;\n Snapshot: string;\n ResultLimit: number;\n Archived: boolean;\n IsPausing: boolean;\n ThorLCR: boolean;\n EventSchedule: number;\n HaveSubGraphTimings: boolean;\n TotalClusterTime: string;\n AbortBy: string;\n AbortTime: string;\n Query: Query;\n Helpers: Helpers;\n Exceptions: Exceptions2;\n Graphs: Graphs;\n SourceFiles: SourceFiles;\n Results: Results;\n Variables: Variables;\n Timers: Timers;\n DebugValues: DebugValues;\n ApplicationValues: ApplicationValues;\n Workflows: Workflows;\n TimingData: TimingData;\n AllowedClusters: AllowedClusters;\n ErrorCount: number;\n WarningCount: number;\n InfoCount: number;\n AlertCount: number;\n GraphCount: number;\n SourceFileCount: number;\n ResultCount: number;\n VariableCount: number;\n TimerCount: number;\n HasDebugValue: boolean;\n ApplicationValueCount: number;\n XmlParams: string;\n AccessFlag: number;\n ClusterFlag: number;\n HelpersDesc: string;\n GraphsDesc: string;\n SourceFilesDesc: string;\n ResultsDesc: string;\n VariablesDesc: string;\n TimersDesc: string;\n DebugValuesDesc: string;\n ApplicationValuesDesc: string;\n WorkflowsDesc: string;\n HasArchiveQuery: boolean;\n ThorLogList: ThorLogList;\n ResourceURLs: ResourceURLs;\n ResultViewCount: number;\n ResourceURLCount: number;\n DebugValueCount: number;\n WorkflowCount: number;\n HelpersCount: number;\n }\n\n export interface Response {\n Exceptions: Exceptions;\n Workunit: Workunit;\n }\n}\n\nexport namespace WUListQueries {\n export interface Request {\n QueryID: string;\n QueryName: string;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface ClusterQueryState {\n Cluster: string;\n State: string;\n Errors: string;\n MixedNodeStates: boolean;\n }\n\n export interface Clusters {\n ClusterQueryState: ClusterQueryState[];\n }\n\n export interface QuerySetQuery {\n Id: string;\n Name: string;\n Wuid: string;\n Dll: string;\n Suspended: boolean;\n Clusters: Clusters;\n memoryLimit: string;\n timeLimit: number;\n warnTimeLimit: number;\n priority: string;\n Comment: string;\n QuerySetId: string;\n IsLibrary: boolean;\n Activated: boolean;\n PublishedBy: string;\n snapshot: string;\n }\n\n export interface QuerysetQueries {\n QuerySetQuery: QuerySetQuery[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n NumberOfQueries: number;\n CacheHint: number;\n QuerysetQueries: QuerysetQueries;\n }\n}\n\nexport namespace WUPushEvent {\n export interface Request {\n EventName: string;\n EventText: string;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n }\n}\n\nexport namespace WUUpdate {\n export enum Action {\n Unknown = 0,\n Compile,\n Check,\n Run,\n ExecuteExisting,\n Pause,\n PauseNow,\n Resume,\n Debug,\n __size\n }\n\n export interface Request {\n Wuid: string;\n State?: string;\n StateOrig?: string;\n Jobname?: string;\n JobnameOrig?: string;\n QueryText?: string;\n Action?: Action;\n Description?: string;\n DescriptionOrig?: string;\n AddDrilldownFields?: boolean;\n ResultLimit?: number;\n Protected?: boolean;\n ProtectedOrig?: boolean;\n PriorityClass?: string;\n PriorityLevel?: string;\n Scope?: string;\n ScopeOrig?: string;\n ClusterSelection?: string;\n ClusterOrig?: string;\n XmlParams?: string;\n ThorSlaveIP?: string;\n QueryMainDefinition?: string;\n DebugValues?: DebugValues;\n ApplicationValues?: ApplicationValues;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface Query {\n Text: string;\n Cpp: string;\n ResTxt: string;\n Dll: string;\n ThorLog: string;\n QueryMainDefinition: string;\n }\n\n export interface ECLHelpFile {\n Name: string;\n Type: string;\n IPAddress: string;\n Description: string;\n FileSize: number;\n PID: number;\n minActivityId: number;\n maxActivityId: number;\n }\n\n export interface Helpers {\n ECLHelpFile: ECLHelpFile[];\n }\n\n export interface ECLException {\n Source: string;\n Severity: string;\n Code: number;\n Message: string;\n FileName: string;\n LineNo: number;\n Column: number;\n Activity: number;\n }\n\n export interface Exceptions2 {\n ECLException: ECLException[];\n }\n\n export interface ECLGraph {\n Name: string;\n Label: string;\n Type: string;\n Running: boolean;\n Complete: boolean;\n Failed: boolean;\n RunningId: number;\n WhenStarted: string;\n WhenFinished: string;\n }\n\n export interface Graphs {\n ECLGraph: ECLGraph[];\n }\n\n export interface ECLSourceFiles {\n ECLSourceFile: any[];\n }\n\n export interface ECLSourceFile {\n FileCluster: string;\n Name: string;\n IsSuperFile: boolean;\n Subs: number;\n Count: number;\n ECLSourceFiles: ECLSourceFiles;\n }\n\n export interface SourceFiles {\n ECLSourceFile: ECLSourceFile[];\n }\n\n export interface ECLSchemaItem {\n ColumnName: string;\n ColumnType: string;\n ColumnTypeCode: number;\n isConditional: boolean;\n }\n\n export interface ECLSchemas {\n ECLSchemaItem: ECLSchemaItem[];\n }\n\n export interface ECLResult {\n Name: string;\n Sequence: number;\n Value: string;\n Link: string;\n FileName: string;\n IsSupplied: boolean;\n ShowFileContent: boolean;\n Total: number;\n ECLSchemas: ECLSchemas;\n XmlSchema: string;\n }\n\n export interface Results {\n ECLResult: ECLResult[];\n }\n\n export interface ECLSchemaItem2 {\n ColumnName: string;\n ColumnType: string;\n ColumnTypeCode: number;\n isConditional: boolean;\n }\n\n export interface ECLSchemas2 {\n ECLSchemaItem: ECLSchemaItem2[];\n }\n\n export interface ECLResult2 {\n Name: string;\n Sequence: number;\n Value: string;\n Link: string;\n FileName: string;\n IsSupplied: boolean;\n ShowFileContent: boolean;\n Total: number;\n ECLSchemas: ECLSchemas2;\n XmlSchema: string;\n }\n\n export interface Variables {\n ECLResult: ECLResult2[];\n }\n\n export interface ECLTimer {\n Name: string;\n Value: string;\n count: number;\n GraphName: string;\n SubGraphId: number;\n }\n\n export interface Timers {\n ECLTimer: ECLTimer[];\n }\n\n export interface DebugValue {\n Name: string;\n Value: string;\n }\n\n export interface DebugValues {\n DebugValue: DebugValue[];\n }\n\n export interface ApplicationValue {\n Application: string;\n Name: string;\n Value: string;\n }\n\n export interface ApplicationValues {\n ApplicationValue: ApplicationValue[];\n }\n\n export interface ECLWorkflow {\n WFID: string;\n EventName: string;\n EventText: string;\n Count: number;\n CountRemaining: number;\n }\n\n export interface Workflows {\n ECLWorkflow: ECLWorkflow[];\n }\n\n export interface ECLTimingData {\n Name: string;\n GraphNum: number;\n SubGraphNum: number;\n GID: number;\n Min: number;\n MS: number;\n }\n\n export interface TimingData {\n ECLTimingData: ECLTimingData[];\n }\n\n export interface AllowedClusters {\n AllowedCluster: string[];\n }\n\n export interface ThorLogInfo {\n ProcessName: string;\n ClusterGroup: string;\n LogDate: string;\n NumberSlaves: number;\n }\n\n export interface ThorLogList {\n ThorLogInfo: ThorLogInfo[];\n }\n\n export interface ResourceURLs {\n URL: string[];\n }\n\n export interface Workunit {\n Wuid: string;\n Owner: string;\n Cluster: string;\n RoxieCluster: string;\n Jobname: string;\n Queue: string;\n StateID: number;\n State: string;\n StateEx: string;\n Description: string;\n Protected: boolean;\n Active: boolean;\n Action: number;\n ActionEx: string;\n DateTimeScheduled: string;\n PriorityClass: number;\n PriorityLevel: number;\n Scope: string;\n Snapshot: string;\n ResultLimit: number;\n Archived: boolean;\n IsPausing: boolean;\n ThorLCR: boolean;\n EventSchedule: number;\n HaveSubGraphTimings: boolean;\n TotalClusterTime: string;\n AbortBy: string;\n AbortTime: string;\n Query: Query;\n Helpers: Helpers;\n Exceptions: Exceptions2;\n Graphs: Graphs;\n SourceFiles: SourceFiles;\n Results: Results;\n Variables: Variables;\n Timers: Timers;\n DebugValues: DebugValues;\n ApplicationValues: ApplicationValues;\n Workflows: Workflows;\n TimingData: TimingData;\n AllowedClusters: AllowedClusters;\n ErrorCount: number;\n WarningCount: number;\n InfoCount: number;\n AlertCount: number;\n GraphCount: number;\n SourceFileCount: number;\n ResultCount: number;\n VariableCount: number;\n TimerCount: number;\n HasDebugValue: boolean;\n ApplicationValueCount: number;\n XmlParams: string;\n AccessFlag: number;\n ClusterFlag: number;\n HelpersDesc: string;\n GraphsDesc: string;\n SourceFilesDesc: string;\n ResultsDesc: string;\n VariablesDesc: string;\n TimersDesc: string;\n DebugValuesDesc: string;\n ApplicationValuesDesc: string;\n WorkflowsDesc: string;\n HasArchiveQuery: boolean;\n ThorLogList: ThorLogList;\n ResourceURLs: ResourceURLs;\n ResultViewCount: number;\n ResourceURLCount: number;\n DebugValueCount: number;\n WorkflowCount: number;\n HelpersCount: number;\n }\n\n export interface Response {\n Exceptions: Exceptions;\n Workunit: Workunit;\n }\n}\n\nexport namespace WUSubmit {\n export interface Request {\n Wuid: string;\n Cluster: string;\n Queue?: string;\n Snapshot?: string;\n MaxRunTime?: number;\n BlockTillFinishTimer?: boolean;\n SyntaxCheck?: boolean;\n NotifyCluster?: boolean;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n }\n}\n\nexport namespace WUResubmit {\n export interface Request {\n Wuids: string[];\n ResetWorkflow: boolean;\n CloneWorkunit: boolean;\n BlockTillFinishTimer?: number;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface WU {\n WUID: string;\n ParentWUID: string;\n }\n\n export interface WUs {\n WU: WU[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n WUs: WUs;\n }\n}\n\nexport namespace WUQueryDetails {\n export interface Request {\n QueryId: string;\n QuerySet: string;\n IncludeStateOnClusters: boolean;\n IncludeSuperFiles: boolean;\n IncludeWsEclAddresses: boolean;\n CheckAllNodes: boolean;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface ClusterQueryState {\n Cluster: string;\n State: string;\n Errors: string;\n MixedNodeStates: boolean;\n }\n\n export interface Clusters {\n ClusterQueryState: ClusterQueryState[];\n }\n\n export interface LogicalFiles {\n Item: string[];\n }\n\n export interface SubFiles {\n File: string[];\n }\n\n export interface SuperFiles2 {\n SuperFile: any[];\n }\n\n export interface SuperFile {\n Name: string;\n SubFiles: SubFiles;\n SuperFiles: SuperFiles2;\n }\n\n export interface SuperFiles {\n SuperFile: SuperFile[];\n }\n\n export interface LibrariesUsed {\n Item: string[];\n }\n\n export interface WsEclAddresses {\n Address: string[];\n }\n\n export interface ECLGraph {\n Name: string;\n Label: string;\n Type: string;\n Running: boolean;\n Complete: boolean;\n Failed: boolean;\n RunningId: number;\n WhenStarted: string;\n WhenFinished: string;\n }\n\n export interface WUGraphs {\n ECLGraph: ECLGraph[];\n }\n\n export interface ECLTimer {\n Name: string;\n Value: string;\n count: number;\n GraphName: string;\n SubGraphId: number;\n }\n\n export interface WUTimers {\n ECLTimer: ECLTimer[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n QueryId: string;\n QuerySet: string;\n QueryName: string;\n Wuid: string;\n Dll: string;\n Suspended: boolean;\n Activated: boolean;\n SuspendedBy: string;\n Clusters: Clusters;\n PublishedBy: string;\n Comment: string;\n LogicalFiles: LogicalFiles;\n SuperFiles: SuperFiles;\n IsLibrary: boolean;\n Priority: string;\n WUSnapShot: string;\n CompileTime: string;\n LibrariesUsed: LibrariesUsed;\n CountGraphs: number;\n ResourceURLCount: number;\n WsEclAddresses: WsEclAddresses;\n WUGraphs: WUGraphs;\n WUTimers: WUTimers;\n }\n}\n\nexport namespace WUAction {\n export type Type = \"SetToFailed\" | \"Pause\" | \"PauseNow\" | \"Resume\" | \"Abort\" | \"Delete\" | \"Restore\" | \"Deschedule\" | \"Reschedule\";\n export interface Request {\n Wuids: string[];\n WUActionType: Type;\n Cluster?: string;\n Owner?: string;\n State?: string;\n StartDate?: string;\n EndDate?: string;\n ECL?: string;\n Jobname?: string;\n Test?: string;\n CurrentPage?: number;\n PageSize?: number;\n Sortby?: number;\n Descending?: boolean;\n EventServer?: string;\n EventName?: string;\n PageFrom?: number;\n BlockTillFinishTimer?: number;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface WUActionResult {\n Wuid: string;\n Action: string;\n Result: string;\n }\n\n export interface ActionResults {\n WUActionResult: WUActionResult[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n ActionResults: ActionResults;\n }\n}\n\nexport namespace WUGetZAPInfo {\n export interface Request {\n WUID: string;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n WUID: string;\n ESPIPAddress: string;\n ThorIPAddress: string;\n BuildVersion: string;\n Archive: string;\n }\n}\n\nexport namespace WUShowScheduled {\n export interface Request {\n Cluster: string;\n EventName: string;\n PushEventName: string;\n PushEventText: string;\n State: string;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface ServerInfo {\n Name: string;\n NetAddress: string;\n }\n\n export interface Clusters {\n ServerInfo: ServerInfo[];\n }\n\n export interface ScheduledWU {\n Wuid: string;\n Cluster: string;\n EventName: string;\n EventText: string;\n JobName: string;\n StateID: number;\n State: string;\n Owner: string;\n }\n\n export interface Workunits {\n ScheduledWU: ScheduledWU[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n ClusterSelected: number;\n EventName: string;\n PushEventName: string;\n PushEventText: string;\n Query: string;\n Clusters: Clusters;\n Workunits: Workunits;\n }\n}\n\nexport namespace WUQuerySetQueryAction {\n export interface Request {\n Action: string;\n QuerySetName: string;\n Queries: any[];\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface Result {\n QueryId: string;\n Suspended: boolean;\n Success: boolean;\n Code: number;\n Message: string;\n }\n\n export interface Results {\n Result: Result[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n Action: string;\n QuerySetName: string;\n Results: Results;\n }\n}\n\nexport namespace WUQuerySetAliasAction {\n export interface Request {\n Action: string;\n QuerySetName: string;\n Queries: any[];\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface Result {\n Name: string;\n Success: boolean;\n Code: number;\n Message: string;\n }\n\n export interface Results {\n Result: Result[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n Action: string;\n QuerySetName: string;\n Results: Results;\n }\n}\n\nexport namespace WUPublishWorkunit {\n export interface Request {\n Wuid: string;\n Cluster: string;\n JobName: string;\n Activate: boolean;\n NotifyCluster?: boolean;\n Wait?: number;\n NoReload?: boolean;\n UpdateWorkUnitName?: boolean;\n memoryLimit?: string;\n TimeLimit?: string;\n WarnTimeLimit?: string;\n Priority?: string;\n RemoteDali?: string;\n Comment?: string;\n DontCopyFiles?: boolean;\n SourceProcess?: string;\n AllowForeignFiles: boolean;\n UpdateDfs?: boolean;\n UpdateSuperFiles?: boolean;\n UpdateCloneFrom?: boolean;\n AppendCluster?: boolean;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface Clusters {\n Item: string[];\n }\n\n export interface WULogicalFileCopyInfo {\n IsIndex: boolean;\n LogicalName: string;\n DfuCopyWuid: string;\n DfuCopyError: string;\n Clusters: Clusters;\n }\n\n export interface OnCluster {\n WULogicalFileCopyInfo: WULogicalFileCopyInfo[];\n }\n\n export interface Clusters2 {\n Item: string[];\n }\n\n export interface WULogicalFileCopyInfo2 {\n IsIndex: boolean;\n LogicalName: string;\n DfuCopyWuid: string;\n DfuCopyError: string;\n Clusters: Clusters2;\n }\n\n export interface NotOnCluster {\n WULogicalFileCopyInfo: WULogicalFileCopyInfo2[];\n }\n\n export interface Clusters3 {\n Item: string[];\n }\n\n export interface WULogicalFileCopyInfo3 {\n IsIndex: boolean;\n LogicalName: string;\n DfuCopyWuid: string;\n DfuCopyError: string;\n Clusters: Clusters3;\n }\n\n export interface Foreign {\n WULogicalFileCopyInfo: WULogicalFileCopyInfo3[];\n }\n\n export interface Clusters4 {\n Item: string[];\n }\n\n export interface WULogicalFileCopyInfo4 {\n IsIndex: boolean;\n LogicalName: string;\n DfuCopyWuid: string;\n DfuCopyError: string;\n Clusters: Clusters4;\n }\n\n export interface NotFound {\n WULogicalFileCopyInfo: WULogicalFileCopyInfo4[];\n }\n\n export interface Cluster {\n ClusterName: string;\n OnCluster: OnCluster;\n NotOnCluster: NotOnCluster;\n Foreign: Foreign;\n NotFound: NotFound;\n }\n\n export interface ClusterFiles {\n Cluster: Cluster[];\n }\n\n export interface File {\n Error: string;\n LogicalName: string;\n }\n\n export interface FileErrors {\n File: File[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n Wuid: string;\n Result: string;\n QuerySet: string;\n QueryName: string;\n QueryId: string;\n ReloadFailed: boolean;\n Suspended: boolean;\n ErrorMessage: string;\n ClusterFiles: ClusterFiles;\n FileErrors: FileErrors;\n }\n}\n\nexport namespace WUGetGraph {\n\n export interface Request {\n Wuid: string;\n GraphName: string;\n SubGraphId: string;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface ECLGraphEx {\n Name: string;\n Label: string;\n Type: string;\n Graph: string;\n Running: boolean;\n RunningId: number;\n Complete: boolean;\n Failed: boolean;\n }\n\n export interface Graphs {\n ECLGraphEx: ECLGraphEx[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n Graphs: Graphs;\n }\n}\n\nexport namespace WUResult {\n export interface Request {\n Wuid?: string;\n Sequence?: number;\n ResultName?: string;\n LogicalName?: string;\n Cluster?: string;\n SuppressXmlSchema?: boolean;\n BypassCachedResult?: boolean;\n FilterBy?: any;\n Start: number;\n Count: number;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface XmlSchema {\n \"@name\": string;\n xml: string;\n }\n\n export interface Result {\n XmlSchema: XmlSchema;\n \"@xmlSchema\": string;\n Row: any[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n Wuid: string;\n Sequence: number;\n LogicalName: string;\n Cluster: string;\n Name: string;\n Start: number;\n Requested: number;\n Count: number;\n Total: number;\n Result: Result;\n }\n}\n\nexport namespace WUQueryGetGraph {\n export interface Request {\n Target: string;\n QueryId: string;\n GraphName: string;\n SubGraphId: string;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface ECLGraphEx {\n Name: string;\n Label: string;\n Type: string;\n Graph: string;\n Running: boolean;\n RunningId: number;\n Complete: boolean;\n Failed: boolean;\n }\n\n export interface Graphs {\n ECLGraphEx: ECLGraphEx[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n Graphs: Graphs;\n }\n}\n\nexport interface WUFileRequest {\n Wuid: string;\n Type: string;\n Name?: string;\n Option?: string;\n SlaveIP?: string;\n IPAddress?: string;\n Description?: string;\n QuerySet?: string;\n Query?: string;\n Process?: string;\n ClusterGroup?: string;\n LogDate?: string;\n SlaveNumber?: number;\n SizeLimit?: number;\n PlainText?: string;\n}\n\nexport namespace WUGetStats {\n export interface Request {\n WUID: string;\n CreatorType: string;\n Creator: string;\n ScopeType: string;\n Scope: string;\n Kind: string;\n Measure: string;\n MinScopeDepth: number;\n MaxScopeDepth: number;\n IncludeGraphs: boolean;\n CreateDescriptions: boolean;\n MinValue: number;\n MaxValue: number;\n Filter: string;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface WUStatisticItem {\n Creator: string;\n CreatorType: string;\n Scope: string;\n ScopeType: string;\n Description: string;\n TimeStamp: string;\n Measure: string;\n Kind: string;\n Value: string;\n RawValue: number;\n Count: number;\n Max: number;\n Wuid: string;\n }\n\n export interface Statistics {\n WUStatisticItem: WUStatisticItem[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n WUID: string;\n Statistics: Statistics;\n }\n}\n\nexport namespace WUCDebug {\n export interface Request {\n Wuid: string;\n Command: string;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n Result: string;\n }\n}\n\nexport namespace WUDetailsMeta {\n export interface Request {\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface Attributes {\n Attribute: string[];\n }\n\n export interface ScopeTypes {\n ScopeType: string[];\n }\n\n export interface Measures {\n Measure: string[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n Attributes: Attributes;\n ScopeTypes: ScopeTypes;\n Measures: Measures;\n }\n}\n\nexport namespace WUDetails {\n export namespace RequestNS {\n\n export interface Scopes {\n Scope: string[];\n }\n\n export interface Ids {\n id: string[];\n }\n\n export interface ScopeTypes {\n ScopeType: string[];\n }\n\n export interface PropertyFilter {\n Name?: string;\n ExactValue?: string;\n MinValue?: string;\n MaxValue?: string;\n }\n\n export interface PropertyFilters {\n PropertyFilter: PropertyFilter[];\n }\n\n export interface ScopeFilter {\n MaxDepth?: number;\n Scopes?: Scopes;\n Ids?: string[];\n ScopeTypes?: string[];\n PropertyFilters?: PropertyFilters;\n }\n\n export interface ScopeTypes2 {\n ScopeType: string[];\n }\n\n export interface NestedFilter {\n Depth?: number;\n ScopeTypes: string[];\n }\n\n export interface Properties {\n Property: string[];\n }\n\n export interface Properties2 {\n Property: string[];\n }\n\n export interface Extra {\n scopeType: string;\n Properties: Properties2;\n }\n\n export interface ExtraProperties {\n Extra: Extra[];\n }\n\n export interface PropertiesToReturn {\n AllStatistics?: boolean;\n AllAttributes?: boolean;\n AllHints?: boolean;\n AllScopes?: boolean;\n AllProperties?: boolean;\n MinVersion?: string;\n Measure?: string;\n Properties?: string[];\n ExtraProperties?: ExtraProperties;\n }\n\n export interface ScopeOptions {\n IncludeMatchedScopesInResults?: boolean;\n IncludeScope?: boolean;\n IncludeId?: boolean;\n IncludeScopeType?: boolean;\n }\n\n export interface PropertyOptions {\n IncludeName?: boolean;\n IncludeRawValue?: boolean;\n IncludeFormatted?: boolean;\n IncludeMeasure?: boolean;\n IncludeCreator?: boolean;\n IncludeCreatorType?: boolean;\n }\n }\n\n export interface Request {\n WUID: string;\n ScopeFilter?: RequestNS.ScopeFilter;\n NestedFilter?: RequestNS.NestedFilter;\n PropertiesToReturn: RequestNS.PropertiesToReturn;\n Filter?: string;\n ScopeOptions: RequestNS.ScopeOptions;\n PropertyOptions: RequestNS.PropertyOptions;\n }\n\n export interface Exception {\n Code: string;\n Audience: string;\n Source: string;\n Message: string;\n }\n\n export interface Exceptions {\n Source: string;\n Exception: Exception[];\n }\n\n export interface Property {\n Name: string;\n RawValue: string;\n Formatted: string;\n Measure: string;\n Creator: string;\n CreatorType: string;\n }\n\n export interface Properties {\n Property: Property[];\n }\n\n export interface Scope {\n ScopeName: string;\n Id: string;\n ScopeType: string;\n Properties: Properties;\n }\n\n export interface Scopes {\n Scope: Scope[];\n }\n\n export interface Response {\n Exceptions: Exceptions;\n MaxVersion: string;\n WUID: string;\n Scopes: Scopes;\n }\n}\n\nexport function isWUQueryECLWorkunit(_: WUQuery.ECLWorkunit | WUInfo.Workunit): _ is WUQuery.ECLWorkunit {\n return (_ as WUQuery.ECLWorkunit).TotalClusterTime !== undefined;\n}\n\nexport function isWUInfoWorkunit(_: WUQuery.ECLWorkunit | WUInfo.Workunit): _ is WUInfo.Workunit {\n return (_ as WUInfo.Workunit).StateEx !== undefined;\n}\n\nexport class WorkunitsService extends Service {\n\n constructor(optsConnection: IOptions | IConnection) {\n super(optsConnection, \"WsWorkunits\", \"1.68\");\n }\n\n opts() {\n return this._connection.opts();\n }\n\n connection(): ESPConnection {\n return this._connection;\n }\n\n WUQuery(request: WUQuery.Request = {}): Promise<WUQuery.Response> {\n return this._connection.send(\"WUQuery\", request).then((response) => {\n return deepMixin({ Workunits: { ECLWorkunit: [] } }, response);\n });\n }\n\n WUInfo(_request: WUInfo.Request): Promise<WUInfo.Response> {\n const request: WUInfo.Request = {\n Wuid: \"\",\n TruncateEclTo64k: true,\n IncludeExceptions: false,\n IncludeGraphs: false,\n IncludeSourceFiles: false,\n IncludeResults: false,\n IncludeResultsViewNames: false,\n IncludeVariables: false,\n IncludeTimers: false,\n IncludeDebugValues: false,\n IncludeApplicationValues: false,\n IncludeWorkflows: false,\n IncludeXmlSchemas: false,\n IncludeResourceURLs: false,\n SuppressResultSchemas: true,\n ..._request\n };\n return this._connection.send(\"WUInfo\", request);\n }\n\n WUCreate(): Promise<WUCreate.Response> {\n return this._connection.send(\"WUCreate\");\n }\n\n WUUpdate(request: WUUpdate.Request): Promise<WUUpdate.Response> {\n return this._connection.send(\"WUUpdate\", request, \"json\", true);\n }\n\n WUSubmit(request: WUSubmit.Request): Promise<WUSubmit.Response> {\n return this._connection.send(\"WUSubmit\", request);\n }\n\n WUResubmit(request: WUResubmit.Request): Promise<WUResubmit.Response> {\n this._connection.toESPStringArray(request, \"Wuids\");\n return this._connection.send(\"WUResubmit\", request);\n }\n\n WUQueryDetails(request: WUQueryDetails.Request): Promise<WUQueryDetails.Response> {\n return this._connection.send(\"WUQueryDetails\", request);\n }\n\n WUListQueries(request: WUListQueries.Request): Promise<WUListQueries.Response> {\n return this._connection.send(\"WUListQueries\", request);\n }\n\n WUPushEvent(request: WUPushEvent.Request): Promise<WUPushEvent.Response> {\n return this._connection.send(\"WUPushEvent\", request);\n }\n\n WUAction(request: WUAction.Request): Promise<WUAction.Response> {\n (request as any).ActionType = request.WUActionType; // v5.x compatibility\n return this._connection.send(\"WUAction\", request);\n }\n\n WUGetZAPInfo(request: WUGetZAPInfo.Request): Promise<WUGetZAPInfo.Response> {\n return this._connection.send(\"WUGetZAPInfo\", request);\n }\n\n WUShowScheduled(request: WUShowScheduled.Request): Promise<WUShowScheduled.Response> {\n return this._connection.send(\"WUShowScheduled\", request);\n }\n\n WUQuerySetAliasAction(request: WUQuerySetAliasAction.Request): Promise<WUQuerySetAliasAction.Response> {\n return this._connection.send(\"WUQuerySetAliasAction\", request);\n }\n\n WUQuerySetQueryAction(request: WUQuerySetQueryAction.Request): Promise<WUQuerySetQueryAction.Response> {\n return this._connection.send(\"WUQuerySetQueryAction\", request);\n }\n\n WUPublishWorkunit(request: WUPublishWorkunit.Request): Promise<WUPublishWorkunit.Response> {\n return this._connection.send(\"WUPublishWorkunit\", request);\n }\n\n WUGetGraph(request: WUGetGraph.Request): Promise<WUGetGraph.Response> {\n return this._connection.send(\"WUGetGraph\", request);\n }\n\n WUResult(request: WUResult.Request): Promise<WUResult.Response> {\n return this._connection.send(\"WUResult\", request);\n }\n\n WUQueryGetGraph(request: WUQueryGetGraph.Request): Promise<WUQueryGetGraph.Response> {\n return this._connection.send(\"WUQueryGetGraph\", request);\n }\n\n WUFile(request: WUFileRequest): Promise<string> {\n return this._connection.send(\"WUFile\", request, \"text\");\n }\n\n WUGetStats(request: WUGetStats.Request): Promise<WUGetStats.Response> {\n return this._connection.send(\"WUGetStats\", request);\n }\n\n private _WUDetailsMetaPromise: Promise<WUDetailsMeta.Response>;\n WUDetailsMeta(request: WUDetailsMeta.Request): Promise<WUDetailsMeta.Response> {\n if (!this._WUDetailsMetaPromise) {\n this._WUDetailsMetaPromise = this._connection.send(\"WUDetailsMeta\", request);\n }\n return this._WUDetailsMetaPromise;\n }\n\n WUDetails(request: WUDetails.Request): Promise<WUDetails.Response> {\n return this._connection.send(\"WUDetails\", request);\n }\n\n WUCDebug(request: WUCDebug.Request): Promise<XMLNode | null> {\n return this._connection.send(\"WUCDebug\", request).then((response) => {\n const retVal = xml2json(response.Result);\n const children = retVal.children();\n if (children.length) {\n return children[0];\n }\n return null;\n });\n }\n}\n","var t0 = new Date,\n t1 = new Date;\n\nexport default function newInterval(floori, offseti, count, field) {\n\n function interval(date) {\n return floori(date = new Date(+date)), date;\n }\n\n interval.floor = interval;\n\n interval.ceil = function(date) {\n return floori(date = new Date(date - 1)), offseti(date, 1), floori(date), date;\n };\n\n interval.round = function(date) {\n var d0 = interval(date),\n d1 = interval.ceil(date);\n return date - d0 < d1 - date ? d0 : d1;\n };\n\n interval.offset = function(date, step) {\n return offseti(date = new Date(+date), step == null ? 1 : Math.floor(step)), date;\n };\n\n interval.range = function(start, stop, step) {\n var range = [];\n start = interval.ceil(start);\n step = step == null ? 1 : Math.floor(step);\n if (!(start < stop) || !(step > 0)) return range; // also handles Invalid Date\n do range.push(new Date(+start)); while (offseti(start, step), floori(start), start < stop)\n return range;\n };\n\n interval.filter = function(test) {\n return newInterval(function(date) {\n if (date >= date) while (floori(date), !test(date)) date.setTime(date - 1);\n }, function(date, step) {\n if (date >= date) while (--step >= 0) while (offseti(date, 1), !test(date)) {} // eslint-disable-line no-empty\n });\n };\n\n if (count) {\n interval.count = function(start, end) {\n t0.setTime(+start), t1.setTime(+end);\n floori(t0), floori(t1);\n return Math.floor(count(t0, t1));\n };\n\n interval.every = function(step) {\n step = Math.floor(step);\n return !isFinite(step) || !(step > 0) ? null\n : !(step > 1) ? interval\n : interval.filter(field\n ? function(d) { return field(d) % step === 0; }\n : function(d) { return interval.count(0, d) % step === 0; });\n };\n }\n\n return interval;\n}\n","import interval from \"./interval\";\n\nvar millisecond = interval(function() {\n // noop\n}, function(date, step) {\n date.setTime(+date + step);\n}, function(start, end) {\n return end - start;\n});\n\n// An optimized implementation for this simple case.\nmillisecond.every = function(k) {\n k = Math.floor(k);\n if (!isFinite(k) || !(k > 0)) return null;\n if (!(k > 1)) return millisecond;\n return interval(function(date) {\n date.setTime(Math.floor(date / k) * k);\n }, function(date, step) {\n date.setTime(+date + step * k);\n }, function(start, end) {\n return (end - start) / k;\n });\n};\n\nexport default millisecond;\nexport var milliseconds = millisecond.range;\n","export var durationSecond = 1e3;\nexport var durationMinute = 6e4;\nexport var durationHour = 36e5;\nexport var durationDay = 864e5;\nexport var durationWeek = 6048e5;\n","import interval from \"./interval\";\nimport {durationSecond} from \"./duration\";\n\nvar second = interval(function(date) {\n date.setTime(Math.floor(date / durationSecond) * durationSecond);\n}, function(date, step) {\n date.setTime(+date + step * durationSecond);\n}, function(start, end) {\n return (end - start) / durationSecond;\n}, function(date) {\n return date.getUTCSeconds();\n});\n\nexport default second;\nexport var seconds = second.range;\n","import interval from \"./interval\";\nimport {durationMinute} from \"./duration\";\n\nvar minute = interval(function(date) {\n date.setTime(Math.floor(date / durationMinute) * durationMinute);\n}, function(date, step) {\n date.setTime(+date + step * durationMinute);\n}, function(start, end) {\n return (end - start) / durationMinute;\n}, function(date) {\n return date.getMinutes();\n});\n\nexport default minute;\nexport var minutes = minute.range;\n","import interval from \"./interval\";\nimport {durationHour, durationMinute} from \"./duration\";\n\nvar hour = interval(function(date) {\n var offset = date.getTimezoneOffset() * durationMinute % durationHour;\n if (offset < 0) offset += durationHour;\n date.setTime(Math.floor((+date - offset) / durationHour) * durationHour + offset);\n}, function(date, step) {\n date.setTime(+date + step * durationHour);\n}, function(start, end) {\n return (end - start) / durationHour;\n}, function(date) {\n return date.getHours();\n});\n\nexport default hour;\nexport var hours = hour.range;\n","import interval from \"./interval\";\nimport {durationDay, durationMinute} from \"./duration\";\n\nvar day = interval(function(date) {\n date.setHours(0, 0, 0, 0);\n}, function(date, step) {\n date.setDate(date.getDate() + step);\n}, function(start, end) {\n return (end - start - (end.getTimezoneOffset() - start.getTimezoneOffset()) * durationMinute) / durationDay;\n}, function(date) {\n return date.getDate() - 1;\n});\n\nexport default day;\nexport var days = day.range;\n","import interval from \"./interval\";\nimport {durationMinute, durationWeek} from \"./duration\";\n\nfunction weekday(i) {\n return interval(function(date) {\n date.setDate(date.getDate() - (date.getDay() + 7 - i) % 7);\n date.setHours(0, 0, 0, 0);\n }, function(date, step) {\n date.setDate(date.getDate() + step * 7);\n }, function(start, end) {\n return (end - start - (end.getTimezoneOffset() - start.getTimezoneOffset()) * durationMinute) / durationWeek;\n });\n}\n\nexport var sunday = weekday(0);\nexport var monday = weekday(1);\nexport var tuesday = weekday(2);\nexport var wednesday = weekday(3);\nexport var thursday = weekday(4);\nexport var friday = weekday(5);\nexport var saturday = weekday(6);\n\nexport var sundays = sunday.range;\nexport var mondays = monday.range;\nexport var tuesdays = tuesday.range;\nexport var wednesdays = wednesday.range;\nexport var thursdays = thursday.range;\nexport var fridays = friday.range;\nexport var saturdays = saturday.range;\n","import interval from \"./interval\";\n\nvar month = interval(function(date) {\n date.setDate(1);\n date.setHours(0, 0, 0, 0);\n}, function(date, step) {\n date.setMonth(date.getMonth() + step);\n}, function(start, end) {\n return end.getMonth() - start.getMonth() + (end.getFullYear() - start.getFullYear()) * 12;\n}, function(date) {\n return date.getMonth();\n});\n\nexport default month;\nexport var months = month.range;\n","import interval from \"./interval\";\n\nvar year = interval(function(date) {\n date.setMonth(0, 1);\n date.setHours(0, 0, 0, 0);\n}, function(date, step) {\n date.setFullYear(date.getFullYear() + step);\n}, function(start, end) {\n return end.getFullYear() - start.getFullYear();\n}, function(date) {\n return date.getFullYear();\n});\n\n// An optimized implementation for this simple case.\nyear.every = function(k) {\n return !isFinite(k = Math.floor(k)) || !(k > 0) ? null : interval(function(date) {\n date.setFullYear(Math.floor(date.getFullYear() / k) * k);\n date.setMonth(0, 1);\n date.setHours(0, 0, 0, 0);\n }, function(date, step) {\n date.setFullYear(date.getFullYear() + step * k);\n });\n};\n\nexport default year;\nexport var years = year.range;\n","import interval from \"./interval\";\nimport {durationMinute} from \"./duration\";\n\nvar utcMinute = interval(function(date) {\n date.setUTCSeconds(0, 0);\n}, function(date, step) {\n date.setTime(+date + step * durationMinute);\n}, function(start, end) {\n return (end - start) / durationMinute;\n}, function(date) {\n return date.getUTCMinutes();\n});\n\nexport default utcMinute;\nexport var utcMinutes = utcMinute.range;\n","import interval from \"./interval\";\nimport {durationHour} from \"./duration\";\n\nvar utcHour = interval(function(date) {\n date.setUTCMinutes(0, 0, 0);\n}, function(date, step) {\n date.setTime(+date + step * durationHour);\n}, function(start, end) {\n return (end - start) / durationHour;\n}, function(date) {\n return date.getUTCHours();\n});\n\nexport default utcHour;\nexport var utcHours = utcHour.range;\n","import interval from \"./interval\";\nimport {durationDay} from \"./duration\";\n\nvar utcDay = interval(function(date) {\n date.setUTCHours(0, 0, 0, 0);\n}, function(date, step) {\n date.setUTCDate(date.getUTCDate() + step);\n}, function(start, end) {\n return (end - start) / durationDay;\n}, function(date) {\n return date.getUTCDate() - 1;\n});\n\nexport default utcDay;\nexport var utcDays = utcDay.range;\n","import interval from \"./interval\";\nimport {durationWeek} from \"./duration\";\n\nfunction utcWeekday(i) {\n return interval(function(date) {\n date.setUTCDate(date.getUTCDate() - (date.getUTCDay() + 7 - i) % 7);\n date.setUTCHours(0, 0, 0, 0);\n }, function(date, step) {\n date.setUTCDate(date.getUTCDate() + step * 7);\n }, function(start, end) {\n return (end - start) / durationWeek;\n });\n}\n\nexport var utcSunday = utcWeekday(0);\nexport var utcMonday = utcWeekday(1);\nexport var utcTuesday = utcWeekday(2);\nexport var utcWednesday = utcWeekday(3);\nexport var utcThursday = utcWeekday(4);\nexport var utcFriday = utcWeekday(5);\nexport var utcSaturday = utcWeekday(6);\n\nexport var utcSundays = utcSunday.range;\nexport var utcMondays = utcMonday.range;\nexport var utcTuesdays = utcTuesday.range;\nexport var utcWednesdays = utcWednesday.range;\nexport var utcThursdays = utcThursday.range;\nexport var utcFridays = utcFriday.range;\nexport var utcSaturdays = utcSaturday.range;\n","import interval from \"./interval\";\n\nvar utcMonth = interval(function(date) {\n date.setUTCDate(1);\n date.setUTCHours(0, 0, 0, 0);\n}, function(date, step) {\n date.setUTCMonth(date.getUTCMonth() + step);\n}, function(start, end) {\n return end.getUTCMonth() - start.getUTCMonth() + (end.getUTCFullYear() - start.getUTCFullYear()) * 12;\n}, function(date) {\n return date.getUTCMonth();\n});\n\nexport default utcMonth;\nexport var utcMonths = utcMonth.range;\n","import interval from \"./interval\";\n\nvar utcYear = interval(function(date) {\n date.setUTCMonth(0, 1);\n date.setUTCHours(0, 0, 0, 0);\n}, function(date, step) {\n date.setUTCFullYear(date.getUTCFullYear() + step);\n}, function(start, end) {\n return end.getUTCFullYear() - start.getUTCFullYear();\n}, function(date) {\n return date.getUTCFullYear();\n});\n\n// An optimized implementation for this simple case.\nutcYear.every = function(k) {\n return !isFinite(k = Math.floor(k)) || !(k > 0) ? null : interval(function(date) {\n date.setUTCFullYear(Math.floor(date.getUTCFullYear() / k) * k);\n date.setUTCMonth(0, 1);\n date.setUTCHours(0, 0, 0, 0);\n }, function(date, step) {\n date.setUTCFullYear(date.getUTCFullYear() + step * k);\n });\n};\n\nexport default utcYear;\nexport var utcYears = utcYear.range;\n","import {\n timeDay,\n timeSunday,\n timeMonday,\n timeThursday,\n timeYear,\n utcDay,\n utcSunday,\n utcMonday,\n utcThursday,\n utcYear\n} from \"d3-time\";\n\nfunction localDate(d) {\n if (0 <= d.y && d.y < 100) {\n var date = new Date(-1, d.m, d.d, d.H, d.M, d.S, d.L);\n date.setFullYear(d.y);\n return date;\n }\n return new Date(d.y, d.m, d.d, d.H, d.M, d.S, d.L);\n}\n\nfunction utcDate(d) {\n if (0 <= d.y && d.y < 100) {\n var date = new Date(Date.UTC(-1, d.m, d.d, d.H, d.M, d.S, d.L));\n date.setUTCFullYear(d.y);\n return date;\n }\n return new Date(Date.UTC(d.y, d.m, d.d, d.H, d.M, d.S, d.L));\n}\n\nfunction newYear(y) {\n return {y: y, m: 0, d: 1, H: 0, M: 0, S: 0, L: 0};\n}\n\nexport default function formatLocale(locale) {\n var locale_dateTime = locale.dateTime,\n locale_date = locale.date,\n locale_time = locale.time,\n locale_periods = locale.periods,\n locale_weekdays = locale.days,\n locale_shortWeekdays = locale.shortDays,\n locale_months = locale.months,\n locale_shortMonths = locale.shortMonths;\n\n var periodRe = formatRe(locale_periods),\n periodLookup = formatLookup(locale_periods),\n weekdayRe = formatRe(locale_weekdays),\n weekdayLookup = formatLookup(locale_weekdays),\n shortWeekdayRe = formatRe(locale_shortWeekdays),\n shortWeekdayLookup = formatLookup(locale_shortWeekdays),\n monthRe = formatRe(locale_months),\n monthLookup = formatLookup(locale_months),\n shortMonthRe = formatRe(locale_shortMonths),\n shortMonthLookup = formatLookup(locale_shortMonths);\n\n var formats = {\n \"a\": formatShortWeekday,\n \"A\": formatWeekday,\n \"b\": formatShortMonth,\n \"B\": formatMonth,\n \"c\": null,\n \"d\": formatDayOfMonth,\n \"e\": formatDayOfMonth,\n \"f\": formatMicroseconds,\n \"H\": formatHour24,\n \"I\": formatHour12,\n \"j\": formatDayOfYear,\n \"L\": formatMilliseconds,\n \"m\": formatMonthNumber,\n \"M\": formatMinutes,\n \"p\": formatPeriod,\n \"Q\": formatUnixTimestamp,\n \"s\": formatUnixTimestampSeconds,\n \"S\": formatSeconds,\n \"u\": formatWeekdayNumberMonday,\n \"U\": formatWeekNumberSunday,\n \"V\": formatWeekNumberISO,\n \"w\": formatWeekdayNumberSunday,\n \"W\": formatWeekNumberMonday,\n \"x\": null,\n \"X\": null,\n \"y\": formatYear,\n \"Y\": formatFullYear,\n \"Z\": formatZone,\n \"%\": formatLiteralPercent\n };\n\n var utcFormats = {\n \"a\": formatUTCShortWeekday,\n \"A\": formatUTCWeekday,\n \"b\": formatUTCShortMonth,\n \"B\": formatUTCMonth,\n \"c\": null,\n \"d\": formatUTCDayOfMonth,\n \"e\": formatUTCDayOfMonth,\n \"f\": formatUTCMicroseconds,\n \"H\": formatUTCHour24,\n \"I\": formatUTCHour12,\n \"j\": formatUTCDayOfYear,\n \"L\": formatUTCMilliseconds,\n \"m\": formatUTCMonthNumber,\n \"M\": formatUTCMinutes,\n \"p\": formatUTCPeriod,\n \"Q\": formatUnixTimestamp,\n \"s\": formatUnixTimestampSeconds,\n \"S\": formatUTCSeconds,\n \"u\": formatUTCWeekdayNumberMonday,\n \"U\": formatUTCWeekNumberSunday,\n \"V\": formatUTCWeekNumberISO,\n \"w\": formatUTCWeekdayNumberSunday,\n \"W\": formatUTCWeekNumberMonday,\n \"x\": null,\n \"X\": null,\n \"y\": formatUTCYear,\n \"Y\": formatUTCFullYear,\n \"Z\": formatUTCZone,\n \"%\": formatLiteralPercent\n };\n\n var parses = {\n \"a\": parseShortWeekday,\n \"A\": parseWeekday,\n \"b\": parseShortMonth,\n \"B\": parseMonth,\n \"c\": parseLocaleDateTime,\n \"d\": parseDayOfMonth,\n \"e\": parseDayOfMonth,\n \"f\": parseMicroseconds,\n \"H\": parseHour24,\n \"I\": parseHour24,\n \"j\": parseDayOfYear,\n \"L\": parseMilliseconds,\n \"m\": parseMonthNumber,\n \"M\": parseMinutes,\n \"p\": parsePeriod,\n \"Q\": parseUnixTimestamp,\n \"s\": parseUnixTimestampSeconds,\n \"S\": parseSeconds,\n \"u\": parseWeekdayNumberMonday,\n \"U\": parseWeekNumberSunday,\n \"V\": parseWeekNumberISO,\n \"w\": parseWeekdayNumberSunday,\n \"W\": parseWeekNumberMonday,\n \"x\": parseLocaleDate,\n \"X\": parseLocaleTime,\n \"y\": parseYear,\n \"Y\": parseFullYear,\n \"Z\": parseZone,\n \"%\": parseLiteralPercent\n };\n\n // These recursive directive definitions must be deferred.\n formats.x = newFormat(locale_date, formats);\n formats.X = newFormat(locale_time, formats);\n formats.c = newFormat(locale_dateTime, formats);\n utcFormats.x = newFormat(locale_date, utcFormats);\n utcFormats.X = newFormat(locale_time, utcFormats);\n utcFormats.c = newFormat(locale_dateTime, utcFormats);\n\n function newFormat(specifier, formats) {\n return function(date) {\n var string = [],\n i = -1,\n j = 0,\n n = specifier.length,\n c,\n pad,\n format;\n\n if (!(date instanceof Date)) date = new Date(+date);\n\n while (++i < n) {\n if (specifier.charCodeAt(i) === 37) {\n string.push(specifier.slice(j, i));\n if ((pad = pads[c = specifier.charAt(++i)]) != null) c = specifier.charAt(++i);\n else pad = c === \"e\" ? \" \" : \"0\";\n if (format = formats[c]) c = format(date, pad);\n string.push(c);\n j = i + 1;\n }\n }\n\n string.push(specifier.slice(j, i));\n return string.join(\"\");\n };\n }\n\n function newParse(specifier, newDate) {\n return function(string) {\n var d = newYear(1900),\n i = parseSpecifier(d, specifier, string += \"\", 0),\n week, day;\n if (i != string.length) return null;\n\n // If a UNIX timestamp is specified, return it.\n if (\"Q\" in d) return new Date(d.Q);\n\n // The am-pm flag is 0 for AM, and 1 for PM.\n if (\"p\" in d) d.H = d.H % 12 + d.p * 12;\n\n // Convert day-of-week and week-of-year to day-of-year.\n if (\"V\" in d) {\n if (d.V < 1 || d.V > 53) return null;\n if (!(\"w\" in d)) d.w = 1;\n if (\"Z\" in d) {\n week = utcDate(newYear(d.y)), day = week.getUTCDay();\n week = day > 4 || day === 0 ? utcMonday.ceil(week) : utcMonday(week);\n week = utcDay.offset(week, (d.V - 1) * 7);\n d.y = week.getUTCFullYear();\n d.m = week.getUTCMonth();\n d.d = week.getUTCDate() + (d.w + 6) % 7;\n } else {\n week = newDate(newYear(d.y)), day = week.getDay();\n week = day > 4 || day === 0 ? timeMonday.ceil(week) : timeMonday(week);\n week = timeDay.offset(week, (d.V - 1) * 7);\n d.y = week.getFullYear();\n d.m = week.getMonth();\n d.d = week.getDate() + (d.w + 6) % 7;\n }\n } else if (\"W\" in d || \"U\" in d) {\n if (!(\"w\" in d)) d.w = \"u\" in d ? d.u % 7 : \"W\" in d ? 1 : 0;\n day = \"Z\" in d ? utcDate(newYear(d.y)).getUTCDay() : newDate(newYear(d.y)).getDay();\n d.m = 0;\n d.d = \"W\" in d ? (d.w + 6) % 7 + d.W * 7 - (day + 5) % 7 : d.w + d.U * 7 - (day + 6) % 7;\n }\n\n // If a time zone is specified, all fields are interpreted as UTC and then\n // offset according to the specified time zone.\n if (\"Z\" in d) {\n d.H += d.Z / 100 | 0;\n d.M += d.Z % 100;\n return utcDate(d);\n }\n\n // Otherwise, all fields are in local time.\n return newDate(d);\n };\n }\n\n function parseSpecifier(d, specifier, string, j) {\n var i = 0,\n n = specifier.length,\n m = string.length,\n c,\n parse;\n\n while (i < n) {\n if (j >= m) return -1;\n c = specifier.charCodeAt(i++);\n if (c === 37) {\n c = specifier.charAt(i++);\n parse = parses[c in pads ? specifier.charAt(i++) : c];\n if (!parse || ((j = parse(d, string, j)) < 0)) return -1;\n } else if (c != string.charCodeAt(j++)) {\n return -1;\n }\n }\n\n return j;\n }\n\n function parsePeriod(d, string, i) {\n var n = periodRe.exec(string.slice(i));\n return n ? (d.p = periodLookup[n[0].toLowerCase()], i + n[0].length) : -1;\n }\n\n function parseShortWeekday(d, string, i) {\n var n = shortWeekdayRe.exec(string.slice(i));\n return n ? (d.w = shortWeekdayLookup[n[0].toLowerCase()], i + n[0].length) : -1;\n }\n\n function parseWeekday(d, string, i) {\n var n = weekdayRe.exec(string.slice(i));\n return n ? (d.w = weekdayLookup[n[0].toLowerCase()], i + n[0].length) : -1;\n }\n\n function parseShortMonth(d, string, i) {\n var n = shortMonthRe.exec(string.slice(i));\n return n ? (d.m = shortMonthLookup[n[0].toLowerCase()], i + n[0].length) : -1;\n }\n\n function parseMonth(d, string, i) {\n var n = monthRe.exec(string.slice(i));\n return n ? (d.m = monthLookup[n[0].toLowerCase()], i + n[0].length) : -1;\n }\n\n function parseLocaleDateTime(d, string, i) {\n return parseSpecifier(d, locale_dateTime, string, i);\n }\n\n function parseLocaleDate(d, string, i) {\n return parseSpecifier(d, locale_date, string, i);\n }\n\n function parseLocaleTime(d, string, i) {\n return parseSpecifier(d, locale_time, string, i);\n }\n\n function formatShortWeekday(d) {\n return locale_shortWeekdays[d.getDay()];\n }\n\n function formatWeekday(d) {\n return locale_weekdays[d.getDay()];\n }\n\n function formatShortMonth(d) {\n return locale_shortMonths[d.getMonth()];\n }\n\n function formatMonth(d) {\n return locale_months[d.getMonth()];\n }\n\n function formatPeriod(d) {\n return locale_periods[+(d.getHours() >= 12)];\n }\n\n function formatUTCShortWeekday(d) {\n return locale_shortWeekdays[d.getUTCDay()];\n }\n\n function formatUTCWeekday(d) {\n return locale_weekdays[d.getUTCDay()];\n }\n\n function formatUTCShortMonth(d) {\n return locale_shortMonths[d.getUTCMonth()];\n }\n\n function formatUTCMonth(d) {\n return locale_months[d.getUTCMonth()];\n }\n\n function formatUTCPeriod(d) {\n return locale_periods[+(d.getUTCHours() >= 12)];\n }\n\n return {\n format: function(specifier) {\n var f = newFormat(specifier += \"\", formats);\n f.toString = function() { return specifier; };\n return f;\n },\n parse: function(specifier) {\n var p = newParse(specifier += \"\", localDate);\n p.toString = function() { return specifier; };\n return p;\n },\n utcFormat: function(specifier) {\n var f = newFormat(specifier += \"\", utcFormats);\n f.toString = function() { return specifier; };\n return f;\n },\n utcParse: function(specifier) {\n var p = newParse(specifier, utcDate);\n p.toString = function() { return specifier; };\n return p;\n }\n };\n}\n\nvar pads = {\"-\": \"\", \"_\": \" \", \"0\": \"0\"},\n numberRe = /^\\s*\\d+/, // note: ignores next directive\n percentRe = /^%/,\n requoteRe = /[\\\\^$*+?|[\\]().{}]/g;\n\nfunction pad(value, fill, width) {\n var sign = value < 0 ? \"-\" : \"\",\n string = (sign ? -value : value) + \"\",\n length = string.length;\n return sign + (length < width ? new Array(width - length + 1).join(fill) + string : string);\n}\n\nfunction requote(s) {\n return s.replace(requoteRe, \"\\\\$&\");\n}\n\nfunction formatRe(names) {\n return new RegExp(\"^(?:\" + names.map(requote).join(\"|\") + \")\", \"i\");\n}\n\nfunction formatLookup(names) {\n var map = {}, i = -1, n = names.length;\n while (++i < n) map[names[i].toLowerCase()] = i;\n return map;\n}\n\nfunction parseWeekdayNumberSunday(d, string, i) {\n var n = numberRe.exec(string.slice(i, i + 1));\n return n ? (d.w = +n[0], i + n[0].length) : -1;\n}\n\nfunction parseWeekdayNumberMonday(d, string, i) {\n var n = numberRe.exec(string.slice(i, i + 1));\n return n ? (d.u = +n[0], i + n[0].length) : -1;\n}\n\nfunction parseWeekNumberSunday(d, string, i) {\n var n = numberRe.exec(string.slice(i, i + 2));\n return n ? (d.U = +n[0], i + n[0].length) : -1;\n}\n\nfunction parseWeekNumberISO(d, string, i) {\n var n = numberRe.exec(string.slice(i, i + 2));\n return n ? (d.V = +n[0], i + n[0].length) : -1;\n}\n\nfunction parseWeekNumberMonday(d, string, i) {\n var n = numberRe.exec(string.slice(i, i + 2));\n return n ? (d.W = +n[0], i + n[0].length) : -1;\n}\n\nfunction parseFullYear(d, string, i) {\n var n = numberRe.exec(string.slice(i, i + 4));\n return n ? (d.y = +n[0], i + n[0].length) : -1;\n}\n\nfunction parseYear(d, string, i) {\n var n = numberRe.exec(string.slice(i, i + 2));\n return n ? (d.y = +n[0] + (+n[0] > 68 ? 1900 : 2000), i + n[0].length) : -1;\n}\n\nfunction parseZone(d, string, i) {\n var n = /^(Z)|([+-]\\d\\d)(?::?(\\d\\d))?/.exec(string.slice(i, i + 6));\n return n ? (d.Z = n[1] ? 0 : -(n[2] + (n[3] || \"00\")), i + n[0].length) : -1;\n}\n\nfunction parseMonthNumber(d, string, i) {\n var n = numberRe.exec(string.slice(i, i + 2));\n return n ? (d.m = n[0] - 1, i + n[0].length) : -1;\n}\n\nfunction parseDayOfMonth(d, string, i) {\n var n = numberRe.exec(string.slice(i, i + 2));\n return n ? (d.d = +n[0], i + n[0].length) : -1;\n}\n\nfunction parseDayOfYear(d, string, i) {\n var n = numberRe.exec(string.slice(i, i + 3));\n return n ? (d.m = 0, d.d = +n[0], i + n[0].length) : -1;\n}\n\nfunction parseHour24(d, string, i) {\n var n = numberRe.exec(string.slice(i, i + 2));\n return n ? (d.H = +n[0], i + n[0].length) : -1;\n}\n\nfunction parseMinutes(d, string, i) {\n var n = numberRe.exec(string.slice(i, i + 2));\n return n ? (d.M = +n[0], i + n[0].length) : -1;\n}\n\nfunction parseSeconds(d, string, i) {\n var n = numberRe.exec(string.slice(i, i + 2));\n return n ? (d.S = +n[0], i + n[0].length) : -1;\n}\n\nfunction parseMilliseconds(d, string, i) {\n var n = numberRe.exec(string.slice(i, i + 3));\n return n ? (d.L = +n[0], i + n[0].length) : -1;\n}\n\nfunction parseMicroseconds(d, string, i) {\n var n = numberRe.exec(string.slice(i, i + 6));\n return n ? (d.L = Math.floor(n[0] / 1000), i + n[0].length) : -1;\n}\n\nfunction parseLiteralPercent(d, string, i) {\n var n = percentRe.exec(string.slice(i, i + 1));\n return n ? i + n[0].length : -1;\n}\n\nfunction parseUnixTimestamp(d, string, i) {\n var n = numberRe.exec(string.slice(i));\n return n ? (d.Q = +n[0], i + n[0].length) : -1;\n}\n\nfunction parseUnixTimestampSeconds(d, string, i) {\n var n = numberRe.exec(string.slice(i));\n return n ? (d.Q = (+n[0]) * 1000, i + n[0].length) : -1;\n}\n\nfunction formatDayOfMonth(d, p) {\n return pad(d.getDate(), p, 2);\n}\n\nfunction formatHour24(d, p) {\n return pad(d.getHours(), p, 2);\n}\n\nfunction formatHour12(d, p) {\n return pad(d.getHours() % 12 || 12, p, 2);\n}\n\nfunction formatDayOfYear(d, p) {\n return pad(1 + timeDay.count(timeYear(d), d), p, 3);\n}\n\nfunction formatMilliseconds(d, p) {\n return pad(d.getMilliseconds(), p, 3);\n}\n\nfunction formatMicroseconds(d, p) {\n return formatMilliseconds(d, p) + \"000\";\n}\n\nfunction formatMonthNumber(d, p) {\n return pad(d.getMonth() + 1, p, 2);\n}\n\nfunction formatMinutes(d, p) {\n return pad(d.getMinutes(), p, 2);\n}\n\nfunction formatSeconds(d, p) {\n return pad(d.getSeconds(), p, 2);\n}\n\nfunction formatWeekdayNumberMonday(d) {\n var day = d.getDay();\n return day === 0 ? 7 : day;\n}\n\nfunction formatWeekNumberSunday(d, p) {\n return pad(timeSunday.count(timeYear(d), d), p, 2);\n}\n\nfunction formatWeekNumberISO(d, p) {\n var day = d.getDay();\n d = (day >= 4 || day === 0) ? timeThursday(d) : timeThursday.ceil(d);\n return pad(timeThursday.count(timeYear(d), d) + (timeYear(d).getDay() === 4), p, 2);\n}\n\nfunction formatWeekdayNumberSunday(d) {\n return d.getDay();\n}\n\nfunction formatWeekNumberMonday(d, p) {\n return pad(timeMonday.count(timeYear(d), d), p, 2);\n}\n\nfunction formatYear(d, p) {\n return pad(d.getFullYear() % 100, p, 2);\n}\n\nfunction formatFullYear(d, p) {\n return pad(d.getFullYear() % 10000, p, 4);\n}\n\nfunction formatZone(d) {\n var z = d.getTimezoneOffset();\n return (z > 0 ? \"-\" : (z *= -1, \"+\"))\n + pad(z / 60 | 0, \"0\", 2)\n + pad(z % 60, \"0\", 2);\n}\n\nfunction formatUTCDayOfMonth(d, p) {\n return pad(d.getUTCDate(), p, 2);\n}\n\nfunction formatUTCHour24(d, p) {\n return pad(d.getUTCHours(), p, 2);\n}\n\nfunction formatUTCHour12(d, p) {\n return pad(d.getUTCHours() % 12 || 12, p, 2);\n}\n\nfunction formatUTCDayOfYear(d, p) {\n return pad(1 + utcDay.count(utcYear(d), d), p, 3);\n}\n\nfunction formatUTCMilliseconds(d, p) {\n return pad(d.getUTCMilliseconds(), p, 3);\n}\n\nfunction formatUTCMicroseconds(d, p) {\n return formatUTCMilliseconds(d, p) + \"000\";\n}\n\nfunction formatUTCMonthNumber(d, p) {\n return pad(d.getUTCMonth() + 1, p, 2);\n}\n\nfunction formatUTCMinutes(d, p) {\n return pad(d.getUTCMinutes(), p, 2);\n}\n\nfunction formatUTCSeconds(d, p) {\n return pad(d.getUTCSeconds(), p, 2);\n}\n\nfunction formatUTCWeekdayNumberMonday(d) {\n var dow = d.getUTCDay();\n return dow === 0 ? 7 : dow;\n}\n\nfunction formatUTCWeekNumberSunday(d, p) {\n return pad(utcSunday.count(utcYear(d), d), p, 2);\n}\n\nfunction formatUTCWeekNumberISO(d, p) {\n var day = d.getUTCDay();\n d = (day >= 4 || day === 0) ? utcThursday(d) : utcThursday.ceil(d);\n return pad(utcThursday.count(utcYear(d), d) + (utcYear(d).getUTCDay() === 4), p, 2);\n}\n\nfunction formatUTCWeekdayNumberSunday(d) {\n return d.getUTCDay();\n}\n\nfunction formatUTCWeekNumberMonday(d, p) {\n return pad(utcMonday.count(utcYear(d), d), p, 2);\n}\n\nfunction formatUTCYear(d, p) {\n return pad(d.getUTCFullYear() % 100, p, 2);\n}\n\nfunction formatUTCFullYear(d, p) {\n return pad(d.getUTCFullYear() % 10000, p, 4);\n}\n\nfunction formatUTCZone() {\n return \"+0000\";\n}\n\nfunction formatLiteralPercent() {\n return \"%\";\n}\n\nfunction formatUnixTimestamp(d) {\n return +d;\n}\n\nfunction formatUnixTimestampSeconds(d) {\n return Math.floor(+d / 1000);\n}\n","import formatLocale from \"./locale\";\n\nvar locale;\nexport var timeFormat;\nexport var timeParse;\nexport var utcFormat;\nexport var utcParse;\n\ndefaultLocale({\n dateTime: \"%x, %X\",\n date: \"%-m/%-d/%Y\",\n time: \"%-I:%M:%S %p\",\n periods: [\"AM\", \"PM\"],\n days: [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"],\n shortDays: [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"],\n months: [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"],\n shortMonths: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"]\n});\n\nexport default function defaultLocale(definition) {\n locale = formatLocale(definition);\n timeFormat = locale.format;\n timeParse = locale.parse;\n utcFormat = locale.utcFormat;\n utcParse = locale.utcParse;\n return locale;\n}\n","import {utcFormat} from \"./defaultLocale\";\n\nexport var isoSpecifier = \"%Y-%m-%dT%H:%M:%S.%LZ\";\n\nfunction formatIsoNative(date) {\n return date.toISOString();\n}\n\nvar formatIso = Date.prototype.toISOString\n ? formatIsoNative\n : utcFormat(isoSpecifier);\n\nexport default formatIso;\n","import {isoSpecifier} from \"./isoFormat\";\nimport {utcParse} from \"./defaultLocale\";\n\nfunction parseIsoNative(string) {\n var date = new Date(string);\n return isNaN(date) ? null : date;\n}\n\nvar parseIso = +new Date(\"2000-01-01T00:00:00.000Z\")\n ? parseIsoNative\n : utcParse(isoSpecifier);\n\nexport default parseIso;\n","import { Cache, Edge, Graph, StateObject, StringAnyMap, Subgraph, Vertex, XMLNode } from \"@hpcc-js/util\";\nimport { WUInfo } from \"../services/wsWorkunits\";\nimport { BaseScope } from \"./scope\";\nimport { Timer } from \"./timer\";\nimport { Workunit } from \"./workunit\";\n\nexport interface ECLGraphEx extends WUInfo.ECLGraph {\n Time: number;\n}\n\nexport class ECLGraph extends StateObject<ECLGraphEx, ECLGraphEx> implements ECLGraphEx {\n protected wu: Workunit;\n\n get properties(): ECLGraphEx { return this.get(); }\n get Name(): string { return this.get(\"Name\"); }\n get Label(): string { return this.get(\"Label\"); }\n get Type(): string { return this.get(\"Type\"); }\n get Complete(): boolean { return this.get(\"Complete\"); }\n get WhenStarted(): string { return this.get(\"WhenStarted\"); }\n get WhenFinished(): string { return this.get(\"WhenFinished\"); }\n get Time(): number { return this.get(\"Time\"); }\n get Running(): boolean { return this.get(\"Running\"); }\n get RunningId(): number { return this.get(\"RunningId\"); }\n get Failed(): boolean { return this.get(\"Failed\"); }\n\n constructor(wu: Workunit, eclGraph: WUInfo.ECLGraph, eclTimers: Timer[]) {\n super();\n this.wu = wu;\n let duration = 0;\n for (const eclTimer of eclTimers) {\n if (eclTimer.GraphName === eclGraph.Name && !eclTimer.HasSubGraphId) {\n duration = Math.round(eclTimer.Seconds * 1000) / 1000;\n break;\n }\n }\n this.set({ Time: duration, ...eclGraph });\n }\n\n fetchScopeGraph(subgraphID?: string): Promise<ScopeGraph> {\n if (subgraphID) {\n return this.wu.fetchGraphDetails([subgraphID], [\"subgraph\"]).then((scopes) => {\n return createGraph(scopes);\n });\n }\n return this.wu.fetchGraphDetails([this.Name], [\"graph\"]).then((scopes) => {\n return createGraph(scopes);\n });\n }\n}\n\nexport class GraphCache extends Cache<WUInfo.ECLGraph, ECLGraph> {\n constructor() {\n super((obj) => {\n return Cache.hash([obj.Name]);\n });\n }\n}\n\ntype Callback = (tag: string, attributes: StringAnyMap, children: XMLNode[], _stack: XMLNode[]) => void;\nfunction walkXmlJson(node: XMLNode, callback: Callback, stack?: XMLNode[]) {\n stack = stack || [];\n stack.push(node);\n callback(node.name, node.$, node.children(), stack);\n node.children().forEach((childNode) => {\n walkXmlJson(childNode, callback, stack);\n });\n stack.pop();\n}\n\nfunction flattenAtt(nodes: XMLNode[]): StringAnyMap {\n const retVal: StringAnyMap = {};\n nodes.forEach((node: XMLNode) => {\n if (node.name === \"att\") {\n retVal[node.$[\"name\"]] = node.$[\"value\"];\n }\n });\n return retVal;\n}\n\nexport class XGMMLGraph extends Graph<StringAnyMap, StringAnyMap, StringAnyMap> { }\nexport class XGMMLSubgraph extends Subgraph<StringAnyMap, StringAnyMap, StringAnyMap> { }\nexport class XGMMLVertex extends Vertex<StringAnyMap, StringAnyMap, StringAnyMap> { }\nexport class XGMMLEdge extends Edge<StringAnyMap, StringAnyMap, StringAnyMap> { }\n\nexport function createXGMMLGraph(id: string, graphs: XMLNode): XGMMLGraph {\n const subgraphs: { [id: string]: XGMMLSubgraph } = {};\n const vertices: { [id: string]: XGMMLVertex } = {};\n const edges: { [id: string]: XGMMLEdge } = {};\n\n const graph = new XGMMLGraph((item) => {\n return item._![\"id\"];\n });\n\n const stack: XGMMLSubgraph[] = [graph.root];\n walkXmlJson(graphs, (tag: string, attributes: StringAnyMap, childNodes: XMLNode[], _stack) => {\n const top = stack[stack.length - 1];\n switch (tag) {\n case \"graph\":\n break;\n case \"node\":\n if (childNodes.length && childNodes[0].children().length && childNodes[0].children()[0].name === \"graph\") {\n const subgraph = top.createSubgraph(flattenAtt(childNodes));\n stack.push(subgraph);\n subgraphs[attributes[\"id\"]] = subgraph;\n } else {\n }\n // TODO: Is this really a node when its also a subgraph?\n const vertex = top.createVertex(flattenAtt(childNodes));\n vertices[attributes[\"id\"]] = vertex;\n break;\n case \"edge\":\n const edge = top.createEdge(vertices[attributes[\"source\"]], vertices[attributes[\"target\"]], flattenAtt(childNodes));\n edges[attributes[\"id\"]] = edge;\n break;\n default:\n }\n });\n return graph;\n}\n\nexport class ScopeGraph extends Graph<BaseScope, BaseScope, BaseScope> { }\nexport class ScopeSubgraph extends Subgraph<BaseScope, BaseScope, BaseScope> { }\nexport class ScopeVertex extends Vertex<BaseScope, BaseScope, BaseScope> { }\nexport class ScopeEdge extends Edge<BaseScope, BaseScope, BaseScope> { }\n\nexport function createGraph(scopes: BaseScope[]): ScopeGraph {\n const subgraphs: { [scopeName: string]: ScopeSubgraph } = {};\n const edges: { [scopeName: string]: BaseScope } = {};\n\n let graph: ScopeGraph | undefined;\n for (const scope of scopes) {\n switch (scope.ScopeType) {\n case \"graph\":\n graph = new ScopeGraph(item => item._!.Id, scope);\n subgraphs[scope.ScopeName] = graph.root;\n break;\n case \"subgraph\":\n if (!graph) {\n graph = new ScopeGraph(item => item._!.Id, scope);\n subgraphs[scope.ScopeName] = graph.root;\n }\n const scopeStack = scope.parentScope().split(\":\");\n let scopeParent1 = subgraphs[scope.parentScope()];\n while (scopeStack.length && !scopeParent1) {\n scopeParent1 = subgraphs[scopeStack.join(\":\")];\n scopeStack.pop();\n }\n if (!scopeParent1) {\n console.log(`Missing SG:Parent (${scope.Id}): ${scope.parentScope()}`);\n } else {\n const parent1: ScopeSubgraph = scopeParent1;\n subgraphs[scope.ScopeName] = parent1.createSubgraph(scope);\n }\n break;\n case \"activity\":\n const scopeParent2 = subgraphs[scope.parentScope()];\n if (!scopeParent2) {\n console.log(`Missing A:Parent (${scope.Id}): ${scope.parentScope()}`);\n } else {\n scopeParent2.createVertex(scope);\n }\n break;\n case \"edge\":\n edges[scope.ScopeName] = scope;\n break;\n }\n }\n for (const id in edges) {\n const scope = edges[id];\n const scopeParent3 = subgraphs[scope.parentScope()];\n if (!scopeParent3) {\n console.log(`Missing E:Parent (${scope.Id}): ${scope.parentScope()}`);\n } else {\n const parent3: ScopeSubgraph = scopeParent3;\n try {\n const source = graph!.vertex(scope.attr(\"IdSource\").RawValue);\n const target = graph!.vertex(scope.attr(\"IdTarget\").RawValue);\n parent3.createEdge(source, target, scope);\n } catch (e) {\n // const sourceIndex = scope.attr(\"SourceIndex\").RawValue;\n // const targetIndex = scope.attr(\"TargetIndex\").RawValue;\n console.log(`Invalid Edge: ${id}`);\n }\n }\n }\n return graph!;\n}\n","import { StateObject } from \"@hpcc-js/util\";\nimport { Workunit } from \"./workunit\";\n\nexport interface ResourceEx {\n URL: string;\n DisplayName: string;\n DisplayPath: string;\n}\n\nexport class Resource extends StateObject<ResourceEx, ResourceEx> implements ResourceEx {\n protected wu: Workunit;\n\n get properties(): ResourceEx { return this.get(); }\n get URL(): string { return this.get(\"URL\"); }\n get DisplayName(): string { return this.get(\"DisplayName\"); }\n get DisplayPath(): string { return this.get(\"DisplayPath\"); }\n\n constructor(wu: Workunit, url: string) {\n super();\n this.wu = wu;\n\n const cleanedURL = url.split(\"\\\\\").join(\"/\");\n const urlParts = cleanedURL.split(\"/\");\n const matchStr = \"res/\" + this.wu.Wuid + \"/\";\n let displayPath = \"\";\n let displayName = \"\";\n\n if (cleanedURL.indexOf(matchStr) === 0) {\n displayPath = cleanedURL.substr(matchStr.length);\n displayName = urlParts[urlParts.length - 1];\n }\n\n this.set({\n URL: url,\n DisplayName: displayName,\n DisplayPath: displayPath\n });\n }\n}\n","import { SAXStackParser, Stack, XMLNode } from \"@hpcc-js/util\";\n\nexport class XSDNode {\n protected e?: XMLNode;\n\n constructor(e: XMLNode) {\n this.e = e;\n }\n fix() {\n delete this.e;\n }\n}\n\nexport class XSDXMLNode extends XSDNode {\n name: string;\n type: string;\n attrs: { [key: string]: string } = {};\n private _children: XSDXMLNode[] = [];\n\n constructor(e: XMLNode) {\n super(e);\n }\n\n append(child: XSDXMLNode) {\n this._children.push(child);\n if (!this.type) {\n this.type = \"hpcc:childDataset\";\n }\n }\n\n fix() {\n this.name = this.e!.$[\"name\"];\n this.type = this.e!.$[\"type\"];\n for (let i = this._children.length - 1; i >= 0; --i) {\n const row = this._children[i];\n if (row.name === \"Row\" && row.type === undefined) {\n this._children.push(...row._children);\n this._children.splice(i, 1);\n }\n }\n super.fix();\n }\n\n children(): XSDXMLNode[] {\n return this._children;\n }\n\n charWidth() {\n let retVal: number = -1;\n\n switch (this.type) {\n case \"xs:boolean\":\n retVal = 5;\n break;\n case \"xs:integer\":\n retVal = 8;\n break;\n case \"xs:nonNegativeInteger\":\n retVal = 8;\n break;\n case \"xs:double\":\n retVal = 8;\n break;\n case \"xs:string\":\n retVal = 32;\n break;\n default:\n const numStr: string = \"0123456789\";\n const underbarPos: number = this.type.lastIndexOf(\"_\");\n const length: number = underbarPos > 0 ? underbarPos : this.type.length;\n let i: number = length - 1;\n for (; i >= 0; --i) {\n if (numStr.indexOf(this.type.charAt(i)) === -1)\n break;\n }\n if (i + 1 < length) {\n retVal = parseInt(this.type.substring(i + 1, length), 10);\n }\n if (this.type.indexOf(\"data\") === 0) {\n retVal *= 2;\n }\n break;\n }\n if (retVal < this.name.length)\n retVal = this.name.length;\n\n return retVal;\n }\n}\n\nexport class XSDSimpleType extends XSDNode {\n name: string;\n type: string;\n maxLength: number | undefined;\n\n protected _restricition?: XMLNode;\n protected _maxLength?: XMLNode;\n\n constructor(e: XMLNode) {\n super(e);\n }\n\n append(e: XMLNode) {\n switch (e.name) {\n case \"xs:restriction\":\n this._restricition = e;\n break;\n case \"xs:maxLength\":\n this._maxLength = e;\n break;\n default:\n }\n }\n\n fix() {\n this.name = this.e!.$[\"name\"];\n this.type = this._restricition!.$[\"base\"];\n this.maxLength = this._maxLength ? +this._maxLength!.$[\"value\"] : undefined;\n delete this._restricition;\n delete this._maxLength;\n super.fix();\n }\n}\n\nexport class XSDSchema {\n root: XSDXMLNode;\n simpleTypes: { [name: string]: XSDSimpleType } = {};\n\n fields(): XSDXMLNode[] {\n return this.root.children();\n }\n}\n\nclass XSDParser extends SAXStackParser {\n schema: XSDSchema = new XSDSchema();\n simpleType: XSDSimpleType;\n simpleTypes: { [name: string]: XSDSimpleType } = {};\n\n xsdStack: Stack<XSDXMLNode> = new Stack<XSDXMLNode>();\n\n startXMLNode(e: XMLNode) {\n super.startXMLNode(e);\n switch (e.name) {\n case \"xs:element\":\n const xsdXMLNode = new XSDXMLNode(e);\n if (!this.schema.root) {\n this.schema.root = xsdXMLNode;\n } else if (this.xsdStack.depth()) {\n this.xsdStack.top()!.append(xsdXMLNode);\n }\n this.xsdStack.push(xsdXMLNode);\n break;\n case \"xs:simpleType\":\n this.simpleType = new XSDSimpleType(e);\n break;\n default:\n break;\n }\n }\n\n endXMLNode(e: XMLNode) {\n switch (e!.name) {\n case \"xs:element\":\n const xsdXMLNode = this.xsdStack.pop();\n xsdXMLNode!.fix();\n break;\n case \"xs:simpleType\":\n this.simpleType.fix();\n this.simpleTypes[this.simpleType.name] = this.simpleType;\n delete this.simpleType;\n break;\n case \"xs:appinfo\":\n const xsdXMLNode2 = this.xsdStack.top();\n for (const key in e.$) {\n xsdXMLNode2!.attrs[key] = e.$[key];\n }\n break;\n default:\n if (this.simpleType) {\n this.simpleType.append(e);\n }\n }\n super.endXMLNode(e);\n }\n}\n\nexport function parseXSD(xml: string): XSDSchema {\n const saxParser = new XSDParser();\n saxParser.parse(xml);\n return saxParser.schema;\n}\n\nclass XSDParser2 extends XSDParser {\n _rootName: string;\n schema: XSDSchema = new XSDSchema();\n simpleType: XSDSimpleType;\n simpleTypes: { [name: string]: XSDSimpleType } = {};\n\n xsdStack: Stack<XSDXMLNode> = new Stack<XSDXMLNode>();\n\n constructor(rootName: string) {\n super();\n this._rootName = rootName;\n }\n\n startXMLNode(e: XMLNode) {\n super.startXMLNode(e);\n switch (e.name) {\n case \"xsd:element\":\n const xsdXMLNode = new XSDXMLNode(e);\n if (!this.schema.root && this._rootName === e.$.name) {\n this.schema.root = xsdXMLNode;\n }\n if (this.xsdStack.depth()) {\n this.xsdStack.top()!.append(xsdXMLNode);\n }\n this.xsdStack.push(xsdXMLNode);\n break;\n case \"xsd:simpleType\":\n this.simpleType = new XSDSimpleType(e);\n break;\n default:\n break;\n }\n }\n\n endXMLNode(e: XMLNode) {\n switch (e!.name) {\n case \"xsd:element\":\n const xsdXMLNode = this.xsdStack.pop()!;\n xsdXMLNode.fix();\n break;\n case \"xsd:simpleType\":\n break;\n default:\n break;\n }\n super.endXMLNode(e);\n }\n}\n\nexport function parseXSD2(xml: string, rootName): XSDSchema {\n const saxParser = new XSDParser2(rootName);\n saxParser.parse(xml);\n return saxParser.schema;\n}\n","import { Cache, exists, StateObject } from \"@hpcc-js/util\";\nimport { IConnection, IOptions } from \"../connection\";\nimport { WsDfu } from \"../services/wsDFU\";\nimport { WorkunitsService, WUInfo, WUResult } from \"../services/wsWorkunits\";\nimport { parseXSD, XSDSchema, XSDXMLNode } from \"./xsdParser\";\n\nexport class GlobalResultCache extends Cache<{ BaseUrl: string, Wuid: string, ResultName: string }, Result> {\n constructor() {\n super((obj) => {\n return `${obj.BaseUrl}-${obj.Wuid}-${obj.ResultName}`;\n });\n }\n}\nconst _results = new GlobalResultCache();\n\nexport interface ECLResultEx extends WUInfo.ECLResult {\n Wuid: string;\n ResultName?: string;\n ResultSequence?: number;\n LogicalFileName?: string;\n ResultViews: any[];\n}\n\nexport type UResulState = ECLResultEx & WsDfu.DFULogicalFile;\nexport type IResulState = ECLResultEx | WsDfu.DFULogicalFile;\nexport class Result extends StateObject<UResulState, IResulState> implements ECLResultEx {\n protected connection: WorkunitsService;\n get BaseUrl() { return this.connection.baseUrl; }\n protected xsdSchema: XSDSchema;\n\n get properties(): WUInfo.ECLResult { return this.get(); }\n get Wuid(): string { return this.get(\"Wuid\"); }\n get ResultName(): string | undefined { return this.get(\"ResultName\"); }\n get ResultSequence(): number | undefined { return this.get(\"ResultSequence\"); }\n get LogicalFileName(): string | undefined { return this.get(\"LogicalFileName\"); }\n get Name(): string { return this.get(\"Name\"); }\n get Sequence(): number { return this.get(\"Sequence\"); }\n get Value(): string { return this.get(\"Value\"); }\n get Link(): string { return this.get(\"Link\"); }\n get FileName(): string { return this.get(\"FileName\"); }\n get IsSupplied(): boolean { return this.get(\"IsSupplied\"); }\n get ShowFileContent() { return this.get(\"ShowFileContent\"); }\n get Total(): number { return this.get(\"Total\"); }\n get ECLSchemas(): WUInfo.ECLSchemas { return this.get(\"ECLSchemas\"); }\n get NodeGroup(): string { return this.get(\"NodeGroup\"); }\n get ResultViews(): any[] { return this.get(\"ResultViews\"); }\n get XmlSchema(): string { return this.get(\"XmlSchema\"); }\n\n static attach(optsConnection: IOptions | IConnection, wuid: string, resultName: string, state?: IResulState): Result {\n const retVal: Result = _results.get({ BaseUrl: optsConnection.baseUrl, Wuid: wuid, ResultName: resultName }, () => {\n return new Result(optsConnection, wuid, resultName);\n });\n if (state) {\n retVal.set(state);\n }\n return retVal;\n }\n\n // TODO: Make protected and add additional attach methodes.\n constructor(optsConnection: IOptions | IConnection | WorkunitsService, wuidOrLogicalFile: string, resultName?: string | number);\n constructor(optsConnection: IOptions | IConnection | WorkunitsService, wuid: string, eclResult: WUInfo.ECLResult, resultViews: any[]);\n constructor(optsConnection: IOptions | IConnection | WorkunitsService, wuidOrLogicalFile: string, eclResultOrResultName?: WUInfo.ECLResult | string | number, resultViews: any[] = []) {\n super();\n if (optsConnection instanceof WorkunitsService) {\n this.connection = optsConnection;\n } else {\n this.connection = new WorkunitsService(optsConnection);\n }\n if (typeof eclResultOrResultName === \"undefined\") {\n this.set({\n LogicalFileName: wuidOrLogicalFile\n } as ECLResultEx);\n } else if (typeof eclResultOrResultName === \"string\") {\n this.set({\n Wuid: wuidOrLogicalFile,\n ResultName: eclResultOrResultName,\n ResultViews: resultViews\n } as ECLResultEx);\n } else if (typeof eclResultOrResultName === \"number\") {\n this.set({\n Wuid: wuidOrLogicalFile,\n ResultSequence: eclResultOrResultName,\n ResultViews: resultViews\n } as ECLResultEx);\n } else {\n this.set({\n Wuid: wuidOrLogicalFile,\n ResultName: eclResultOrResultName.Name,\n ResultViews: resultViews,\n ...eclResultOrResultName\n });\n }\n }\n\n isComplete() {\n return this.Total !== -1;\n }\n\n fetchXMLSchema(): Promise<XSDSchema | null> {\n if (this.xsdSchema) {\n return Promise.resolve(this.xsdSchema);\n }\n return this.WUResult().then((response) => {\n if (exists(\"Result.XmlSchema.xml\", response)) {\n this.xsdSchema = parseXSD(response.Result.XmlSchema.xml);\n return this.xsdSchema;\n }\n return null;\n });\n }\n\n async refresh(): Promise<this> {\n await this.fetchRows(0, 1, true);\n return this;\n }\n\n fetchRows(from: number = 0, count: number = -1, includeSchema: boolean = false, filter: { [key: string]: string | number } = {}): Promise<any[]> {\n return this.WUResult(from, count, !includeSchema, filter).then((response) => {\n const result = response.Result;\n delete response.Result; // Do not want it in \"set\"\n this.set({\n ...response\n } as any);\n if (exists(\"XmlSchema.xml\", result)) {\n this.xsdSchema = parseXSD(result.XmlSchema.xml);\n }\n if (exists(\"Row\", result)) {\n return result.Row;\n } else if (this.ResultName && exists(this.ResultName, result)) {\n return result[this.ResultName].Row;\n }\n return [];\n });\n }\n\n rootField(): XSDXMLNode | null {\n if (!this.xsdSchema) return null;\n return this.xsdSchema.root;\n }\n\n fields(): XSDXMLNode[] {\n if (!this.xsdSchema) return [];\n return this.xsdSchema.root.children();\n }\n\n protected WUResult(start: number = 0, count: number = 1, suppressXmlSchema: boolean = false, filter: { [key: string]: string | number } = {}): Promise<WUResult.Response> {\n const FilterBy = {\n NamedValue: {\n itemcount: 0\n }\n };\n for (const key in filter) {\n FilterBy.NamedValue[FilterBy.NamedValue.itemcount++] = {\n Name: key,\n Value: filter[key]\n };\n }\n const request: WUResult.Request = { FilterBy } as WUResult.Request;\n if (this.Wuid && this.ResultName !== undefined) {\n request.Wuid = this.Wuid;\n request.ResultName = this.ResultName;\n } else if (this.Wuid && this.ResultSequence !== undefined) {\n request.Wuid = this.Wuid;\n request.Sequence = this.ResultSequence;\n } else if (this.LogicalFileName && this.NodeGroup) {\n request.LogicalName = this.LogicalFileName;\n request.Cluster = this.NodeGroup;\n } else if (this.LogicalFileName) {\n request.LogicalName = this.LogicalFileName;\n }\n request.Start = start;\n request.Count = count;\n request.SuppressXmlSchema = suppressXmlSchema;\n return this.connection.WUResult(request).then((response) => {\n return response;\n });\n }\n}\n\nexport class ResultCache extends Cache<WUInfo.ECLResult, Result> {\n constructor() {\n super((obj) => {\n return Cache.hash([obj.Sequence, obj.Name, obj.FileName]);\n });\n }\n}\n","import { StateObject, StringAnyMap } from \"@hpcc-js/util\";\n// import { utcFormat, utcParse } from \"d3-time-format\";\nimport { WUDetails } from \"../services/wsWorkunits\";\nimport { Workunit } from \"./workunit\";\n\n// const formatter = utcFormat(\"%Y-%m-%dT%H:%M:%S.%LZ\");\n// const parser = utcParse(\"%Y-%m-%dT%H:%M:%S.%LZ\");\n\nexport interface AttributeEx extends WUDetails.Property {\n FormattedEnd?: string;\n}\n\nexport class Attribute extends StateObject<AttributeEx, AttributeEx> implements AttributeEx {\n readonly scope: BaseScope;\n\n get properties(): AttributeEx { return this.get(); }\n get Name(): string { return this.get(\"Name\"); }\n get RawValue(): string { return this.get(\"RawValue\"); }\n get Formatted(): string { return this.get(\"Formatted\"); }\n get FormattedEnd(): string | undefined { return this.get(\"FormattedEnd\"); }\n get Measure(): string { return this.get(\"Measure\"); }\n get Creator(): string { return this.get(\"Creator\"); }\n get CreatorType(): string { return this.get(\"CreatorType\"); }\n\n constructor(scope: BaseScope, attribute: WUDetails.Property) {\n super();\n this.scope = scope;\n this.set(attribute);\n }\n}\n\nexport interface ScopeEx extends WUDetails.Scope {\n}\n\nexport interface IScopeVisitor {\n start(scope: BaseScope): boolean;\n end(scope: BaseScope): boolean;\n}\n\nexport class BaseScope extends StateObject<ScopeEx, ScopeEx> implements ScopeEx {\n protected _attributeMap: { [key: string]: Attribute } = {};\n protected _children: BaseScope[] = [];\n\n get properties(): ScopeEx { return this.get(); }\n get ScopeName(): string { return this.get(\"ScopeName\"); }\n get Id(): string { return this.get(\"Id\"); }\n get ScopeType(): string { return this.get(\"ScopeType\"); }\n get Properties(): WUDetails.Properties { return this.get(\"Properties\", { Property: [] }); }\n get CAttributes(): Attribute[] {\n // Match \"started\" and time elapsed\n const retVal: Attribute[] = [];\n const timeElapsed: { start: AttributeEx | null, end: AttributeEx | null } = {\n start: null,\n end: null\n };\n this.Properties.Property.forEach((scopeAttr) => {\n if (scopeAttr.Measure === \"ts\" && scopeAttr.Name.indexOf(\"Started\") >= 0) {\n timeElapsed.start = scopeAttr;\n } else if (this.ScopeName && scopeAttr.Measure === \"ts\" && scopeAttr.Name.indexOf(\"Finished\") >= 0) {\n timeElapsed.end = scopeAttr;\n } else {\n retVal.push(new Attribute(this, scopeAttr));\n }\n });\n if (timeElapsed.start && timeElapsed.end) {\n // const endTime = parser(timeElapsed.start.Formatted);\n // endTime!.setMilliseconds(endTime!.getMilliseconds() + (+timeElapsed.elapsed.RawValue) / 1000000);\n // timeElapsed.start.FormattedEnd = formatter(endTime!);\n timeElapsed.start.FormattedEnd = timeElapsed.end.Formatted;\n retVal.push(new Attribute(this, timeElapsed.start));\n } else if (timeElapsed.start) {\n retVal.push(new Attribute(this, timeElapsed.start));\n } else if (timeElapsed.end) {\n retVal.push(new Attribute(this, timeElapsed.end)); // Should not happen?\n }\n return retVal;\n }\n\n constructor(scope: WUDetails.Scope) {\n super();\n this.update(scope);\n }\n\n update(scope: WUDetails.Scope) {\n this.set(scope);\n this.CAttributes.forEach((attr) => {\n this._attributeMap[attr.Name] = attr;\n });\n this.Properties.Property = [];\n for (const key in this._attributeMap) {\n if (this._attributeMap.hasOwnProperty(key)) {\n this.Properties.Property.push(this._attributeMap[key].properties);\n }\n }\n }\n\n parentScope(): string {\n const scopeParts = this.ScopeName.split(\":\");\n scopeParts.pop();\n return scopeParts.join(\":\");\n }\n\n children(): BaseScope[];\n children(_: BaseScope[]): BaseScope;\n children(_?: BaseScope[]): BaseScope[] | BaseScope {\n if (!arguments.length) return this._children;\n this._children = _!;\n return this;\n }\n\n walk(visitor: IScopeVisitor): boolean {\n if (visitor.start(this)) return true;\n for (const scope of this.children()) {\n if (scope.walk(visitor)) {\n return true;\n }\n }\n return visitor.end(this);\n }\n\n formattedAttrs(): StringAnyMap {\n const retVal: StringAnyMap = {};\n for (const attr in this._attributeMap) {\n retVal[attr] = this._attributeMap[attr].Formatted || this._attributeMap[attr].RawValue;\n }\n return retVal;\n }\n\n rawAttrs(): StringAnyMap {\n const retVal: StringAnyMap = {};\n for (const attr in this._attributeMap) {\n retVal[attr] = this._attributeMap[attr].RawValue;\n }\n return retVal;\n }\n\n hasAttr(name: string): boolean {\n return this._attributeMap[name] !== undefined;\n }\n\n attr(name: string): Attribute {\n return this._attributeMap[name] || new Attribute(this, {\n Creator: \"\",\n CreatorType: \"\",\n Formatted: \"\",\n Measure: \"\",\n Name: \"\",\n RawValue: \"\"\n });\n }\n\n attrMeasure(name: string): string {\n return this._attributeMap[name].Measure;\n }\n\n calcTooltip(parentScope?: BaseScope) {\n let label = \"\";\n const rows: string[] = [];\n label = this.Id;\n rows.push(`<tr><td class=\"key\">ID:</td><td class=\"value\">${this.Id}</td></tr>`);\n if (parentScope) {\n rows.push(`<tr><td class=\"key\">Parent ID:</td><td class=\"value\">${parentScope.Id}</td></tr>`);\n }\n rows.push(`<tr><td class=\"key\">Scope:</td><td class=\"value\">${this.ScopeName}</td></tr>`);\n const attrs = this.formattedAttrs();\n for (const key in attrs) {\n if (key === \"Label\") {\n label = attrs[key];\n } else {\n rows.push(`<tr><td class=\"key\">${key}</td><td class=\"value\">${attrs[key]}</td></tr>`);\n }\n }\n\n return `<div class=\"eclwatch_WUGraph_Tooltip\" style=\"max-width:480px\">\n <h4 align=\"center\">${label}</h4>\n <table>\n ${rows.join(\"\")}\n </table>\n </div>`;\n }\n}\n\nexport class Scope extends BaseScope {\n readonly wu: Workunit;\n\n constructor(wu: Workunit, scope: WUDetails.Scope) {\n super(scope);\n this.wu = wu;\n }\n}\n","import { StateObject } from \"@hpcc-js/util\";\nimport { IConnection, IOptions } from \"../connection\";\nimport { WorkunitsService, WUInfo } from \"../services/wsWorkunits\";\n\nexport interface ECLSourceFileEx extends WUInfo.ECLSourceFile {\n Wuid: string;\n}\n\nexport class SourceFile extends StateObject<ECLSourceFileEx, ECLSourceFileEx> implements ECLSourceFileEx {\n protected connection: WorkunitsService;\n\n get properties(): WUInfo.ECLSourceFile { return this.get(); }\n get Wuid(): string { return this.get(\"Wuid\"); }\n get FileCluster(): string { return this.get(\"FileCluster\"); }\n get Name(): string { return this.get(\"Name\"); }\n get IsSuperFile(): boolean { return this.get(\"IsSuperFile\"); }\n get Subs(): number { return this.get(\"Subs\"); }\n get Count(): number { return this.get(\"Count\"); }\n get ECLSourceFiles(): WUInfo.ECLSourceFiles { return this.get(\"ECLSourceFiles\"); }\n\n constructor(optsConnection: IOptions | IConnection | WorkunitsService, wuid: string, eclSourceFile: WUInfo.ECLSourceFile) {\n super();\n if (optsConnection instanceof WorkunitsService) {\n this.connection = optsConnection;\n } else {\n this.connection = new WorkunitsService(optsConnection);\n }\n\n this.set({\n Wuid: wuid,\n ...eclSourceFile\n });\n }\n}\n","import { espTime2Seconds, StateObject } from \"@hpcc-js/util\";\nimport { IConnection, IOptions } from \"../connection\";\nimport { WorkunitsService, WUInfo } from \"../services/wsWorkunits\";\n\nexport interface ECLTimerEx extends WUInfo.ECLTimer {\n Wuid: string;\n Seconds: number;\n HasSubGraphId: boolean;\n}\n\nexport class Timer extends StateObject<ECLTimerEx, ECLTimerEx> implements ECLTimerEx {\n protected connection: WorkunitsService;\n\n get properties(): WUInfo.ECLTimer { return this.get(); }\n get Wuid(): string { return this.get(\"Wuid\"); }\n get Name(): string { return this.get(\"Name\"); }\n get Value(): string { return this.get(\"Value\"); }\n get Seconds(): number { return this.get(\"Seconds\"); }\n get GraphName(): string { return this.get(\"GraphName\"); }\n get SubGraphId(): number { return this.get(\"SubGraphId\"); }\n get HasSubGraphId(): boolean { return this.get(\"HasSubGraphId\"); }\n get count(): number { return this.get(\"count\"); }\n\n constructor(optsConnection: IOptions | IConnection | WorkunitsService, wuid: string, eclTimer: WUInfo.ECLTimer) {\n super();\n if (optsConnection instanceof WorkunitsService) {\n this.connection = optsConnection;\n } else {\n this.connection = new WorkunitsService(optsConnection);\n }\n\n const secs = espTime2Seconds(eclTimer.Value);\n this.set({\n Wuid: wuid,\n Seconds: Math.round(secs * 1000) / 1000,\n HasSubGraphId: eclTimer.SubGraphId !== undefined,\n ...eclTimer\n });\n }\n}\n","import { Cache, deepMixinT, IEvent, scopedLogger, StateCallback, StateEvents, StateObject, StatePropCallback, StringAnyMap, XMLNode } from \"@hpcc-js/util\";\nimport { utcFormat, utcParse } from \"d3-time-format\";\nimport { IConnection, IOptions } from \"../connection\";\nimport { ESPExceptions } from \"../espConnection\";\nimport { SMCActivity } from \"../services/wsSMC\";\nimport * as WsTopology from \"../services/wsTopology\";\nimport * as WsWorkunits from \"../services/wsWorkunits\";\nimport { createGraph, createXGMMLGraph, ECLGraph, GraphCache, ScopeGraph, XGMMLGraph, XGMMLVertex } from \"./graph\";\nimport { Resource } from \"./resource\";\nimport { Result, ResultCache } from \"./result\";\nimport { BaseScope, Scope } from \"./scope\";\nimport { SourceFile } from \"./sourceFile\";\nimport { Timer } from \"./timer\";\n\nconst formatter = utcFormat(\"%Y-%m-%dT%H:%M:%S.%LZ\");\nconst parser = utcParse(\"%Y-%m-%dT%H:%M:%S.%LZ\");\nconst logger = scopedLogger(\"workunit.ts\");\n\nconst WUStateID = WsWorkunits.WUStateID;\n\nexport class WorkunitCache extends Cache<{ BaseUrl: string, Wuid: string }, Workunit> {\n constructor() {\n super((obj) => {\n return `${obj.BaseUrl}-${obj.Wuid}`;\n });\n }\n}\nconst _workunits = new WorkunitCache();\n\nexport interface DebugState {\n sequence: number;\n state: string;\n [key: string]: any;\n}\n\nexport interface IWorkunit {\n ResultViews: any[];\n HelpersCount: number;\n}\n\nexport interface IDebugWorkunit {\n DebugState?: DebugState;\n}\n\nexport interface ITimeElapsed {\n scope: string;\n start: string;\n elapsed: number;\n finish: string;\n}\n\nexport type WorkunitEvents = \"completed\" | StateEvents;\nexport type UWorkunitState = WsWorkunits.WUQuery.ECLWorkunit & WsWorkunits.WUInfo.Workunit & SMCActivity.ActiveWorkunit & IWorkunit & IDebugWorkunit;\nexport type IWorkunitState = WsWorkunits.WUQuery.ECLWorkunit | WsWorkunits.WUInfo.Workunit | SMCActivity.ActiveWorkunit | IWorkunit | IDebugWorkunit;\nexport class Workunit extends StateObject<UWorkunitState, IWorkunitState> implements WsWorkunits.WUInfo.Workunit {\n connection: WsWorkunits.WorkunitsService;\n topologyConnection: WsTopology.TopologyService;\n get BaseUrl() { return this.connection.baseUrl; }\n\n private _debugMode: boolean = false;\n private _debugAllGraph: any;\n private _submitAction: WsWorkunits.WUUpdate.Action;\n\n // Accessors ---\n get properties(): WsWorkunits.WUQuery.ECLWorkunit & WsWorkunits.WUInfo.Workunit { return this.get(); }\n get Wuid(): string { return this.get(\"Wuid\"); }\n get Owner(): string { return this.get(\"Owner\", \"\"); }\n get Cluster(): string { return this.get(\"Cluster\", \"\"); }\n get Jobname(): string { return this.get(\"Jobname\", \"\"); }\n get Description(): string { return this.get(\"Description\", \"\"); }\n get ActionEx(): string { return this.get(\"ActionEx\", \"\"); }\n get StateID(): WsWorkunits.WUStateID { return this.get(\"StateID\", WsWorkunits.WUStateID.Unknown); }\n get State(): string { return this.get(\"State\") || WsWorkunits.WUStateID[this.StateID]; }\n get Protected(): boolean { return this.get(\"Protected\", false); }\n get Exceptions(): WsWorkunits.WUInfo.Exceptions2 { return this.get(\"Exceptions\", { ECLException: [] }); }\n get ResultViews(): any[] { return this.get(\"ResultViews\", []); }\n\n private _resultCache = new ResultCache();\n get ResultCount(): number { return this.get(\"ResultCount\", 0); }\n get Results(): WsWorkunits.WUInfo.Results { return this.get(\"Results\", { ECLResult: [] }); }\n get CResults(): Result[] {\n return this.Results.ECLResult.map((eclResult) => {\n return this._resultCache.get(eclResult, () => {\n return new Result(this.connection, this.Wuid, eclResult, this.ResultViews);\n });\n });\n }\n get SequenceResults(): { [key: number]: Result } {\n const retVal: { [key: number]: Result } = {};\n this.CResults.forEach((result) => {\n retVal[result.Sequence] = result;\n });\n return retVal;\n }\n get Timers(): WsWorkunits.WUInfo.Timers { return this.get(\"Timers\", { ECLTimer: [] }); }\n get CTimers(): Timer[] {\n return this.Timers.ECLTimer.map((eclTimer) => {\n return new Timer(this.connection, this.Wuid, eclTimer);\n });\n }\n\n private _graphCache = new GraphCache();\n get GraphCount(): number { return this.get(\"GraphCount\", 0); }\n get Graphs(): WsWorkunits.WUInfo.Graphs { return this.get(\"Graphs\", { ECLGraph: [] }); }\n get CGraphs(): ECLGraph[] {\n return this.Graphs.ECLGraph.map((eclGraph) => {\n return this._graphCache.get(eclGraph, () => {\n return new ECLGraph(this, eclGraph, this.CTimers);\n });\n });\n }\n get ThorLogList(): WsWorkunits.WUInfo.ThorLogList { return this.get(\"ThorLogList\"); }\n get ResourceURLCount(): number { return this.get(\"ResourceURLCount\", 0); }\n get ResourceURLs(): WsWorkunits.WUInfo.ResourceURLs { return this.get(\"ResourceURLs\", { URL: [] }); }\n get CResourceURLs(): Resource[] {\n return this.ResourceURLs.URL.map((url) => {\n return new Resource(this, url);\n });\n }\n get TotalClusterTime(): string { return this.get(\"TotalClusterTime\", \"\"); }\n get DateTimeScheduled(): string { return this.get(\"DateTimeScheduled\"); }\n get IsPausing(): boolean { return this.get(\"IsPausing\"); }\n get ThorLCR(): boolean { return this.get(\"ThorLCR\"); }\n get ApplicationValues(): WsWorkunits.WUInfo.ApplicationValues { return this.get(\"ApplicationValues\", { ApplicationValue: [] }); }\n get HasArchiveQuery(): boolean { return this.get(\"HasArchiveQuery\"); }\n get StateEx(): string { return this.get(\"StateEx\"); }\n get PriorityClass(): number { return this.get(\"PriorityClass\"); }\n get PriorityLevel(): number { return this.get(\"PriorityLevel\"); }\n get Snapshot(): string { return this.get(\"Snapshot\"); }\n get ResultLimit(): number { return this.get(\"ResultLimit\"); }\n get EventSchedule(): number { return this.get(\"EventSchedule\"); }\n get HaveSubGraphTimings(): boolean { return this.get(\"HaveSubGraphTimings\"); }\n get Query(): WsWorkunits.WUInfo.Query { return this.get(\"Query\"); }\n get HelpersCount(): number { return this.get(\"HelpersCount\", 0); }\n get Helpers(): WsWorkunits.WUInfo.Helpers { return this.get(\"Helpers\", { ECLHelpFile: [] }); }\n get DebugValues(): WsWorkunits.WUInfo.DebugValues { return this.get(\"DebugValues\"); }\n get AllowedClusters(): WsWorkunits.WUInfo.AllowedClusters { return this.get(\"AllowedClusters\"); }\n get ErrorCount(): number { return this.get(\"ErrorCount\", 0); }\n get WarningCount(): number { return this.get(\"WarningCount\", 0); }\n get InfoCount(): number { return this.get(\"InfoCount\", 0); }\n get AlertCount(): number { return this.get(\"AlertCount\", 0); }\n get SourceFileCount(): number { return this.get(\"SourceFileCount\", 0); }\n get SourceFiles(): WsWorkunits.WUInfo.SourceFiles { return this.get(\"SourceFiles\", { ECLSourceFile: [] }); }\n get CSourceFiles(): SourceFile[] {\n return this.SourceFiles.ECLSourceFile.map(eclSourceFile => new SourceFile(this.connection, this.Wuid, eclSourceFile));\n }\n get VariableCount(): number { return this.get(\"VariableCount\", 0); }\n get Variables(): WsWorkunits.WUInfo.Variables { return this.get(\"Variables\", { ECLResult: [] }); }\n get TimerCount(): number { return this.get(\"TimerCount\", 0); }\n get HasDebugValue(): boolean { return this.get(\"HasDebugValue\"); }\n get ApplicationValueCount(): number { return this.get(\"ApplicationValueCount\", 0); }\n get XmlParams(): string { return this.get(\"XmlParams\"); }\n get AccessFlag(): number { return this.get(\"AccessFlag\"); }\n get ClusterFlag(): number { return this.get(\"ClusterFlag\"); }\n get ResultViewCount(): number { return this.get(\"ResultViewCount\", 0); }\n get DebugValueCount(): number { return this.get(\"DebugValueCount\", 0); }\n get WorkflowCount(): number { return this.get(\"WorkflowCount\", 0); }\n get Archived(): boolean { return this.get(\"Archived\"); }\n get RoxieCluster(): string { return this.get(\"RoxieCluster\"); }\n get DebugState(): DebugState { return this.get(\"DebugState\", {} as DebugState)!; }\n get Queue(): string { return this.get(\"Queue\"); }\n get Active(): boolean { return this.get(\"Active\"); }\n get Action(): number { return this.get(\"Action\"); }\n get Scope(): string { return this.get(\"Scope\"); }\n get AbortBy(): string { return this.get(\"AbortBy\"); }\n get AbortTime(): string { return this.get(\"AbortTime\"); }\n get Workflows(): WsWorkunits.WUInfo.Workflows { return this.get(\"Workflows\"); }\n get TimingData(): WsWorkunits.WUInfo.TimingData { return this.get(\"TimingData\"); }\n get HelpersDesc(): string { return this.get(\"HelpersDesc\"); }\n get GraphsDesc(): string { return this.get(\"GraphsDesc\"); }\n get SourceFilesDesc(): string { return this.get(\"GraphsDesc\"); }\n get ResultsDesc(): string { return this.get(\"GraphsDesc\"); }\n get VariablesDesc(): string { return this.get(\"GraphsDesc\"); }\n get TimersDesc(): string { return this.get(\"GraphsDesc\"); }\n get DebugValuesDesc(): string { return this.get(\"GraphsDesc\"); }\n get ApplicationValuesDesc(): string { return this.get(\"GraphsDesc\"); }\n get WorkflowsDesc(): string { return this.get(\"GraphsDesc\"); }\n\n // Factories ---\n static create(optsConnection: IOptions | IConnection): Promise<Workunit> {\n const retVal: Workunit = new Workunit(optsConnection);\n return retVal.connection.WUCreate().then((response) => {\n _workunits.set(retVal);\n retVal.set(response.Workunit);\n return retVal;\n });\n }\n\n static attach(optsConnection: IOptions | IConnection, wuid: string, state?: IWorkunitState): Workunit {\n const retVal: Workunit = _workunits.get({ BaseUrl: optsConnection.baseUrl, Wuid: wuid }, () => {\n return new Workunit(optsConnection, wuid);\n });\n if (state) {\n retVal.set(state);\n }\n return retVal;\n }\n\n static existsLocal(baseUrl: string, wuid: string): boolean {\n return _workunits.has({ BaseUrl: baseUrl, Wuid: wuid });\n }\n\n static submit(server: IOptions | IConnection, target: string, ecl: string): Promise<Workunit> {\n return Workunit.create(server).then((wu) => {\n return wu.update({ QueryText: ecl });\n }).then((wu) => {\n return wu.submit(target);\n });\n }\n\n static query(server: IOptions | IConnection, opts: WsWorkunits.WUQuery.Request): Promise<Workunit[]> {\n const wsWorkunits = new WsWorkunits.WorkunitsService(server);\n return wsWorkunits.WUQuery(opts).then((response) => {\n return response.Workunits.ECLWorkunit.map(function (wu) {\n return Workunit.attach(server, wu.Wuid, wu);\n });\n });\n }\n\n // --- --- ---\n protected constructor(optsConnection: IOptions | IConnection, wuid?: string) {\n super();\n this.connection = new WsWorkunits.WorkunitsService(optsConnection);\n this.topologyConnection = new WsTopology.TopologyService(optsConnection);\n this.clearState(wuid);\n }\n\n clearState(wuid?: string) {\n this.clear({\n Wuid: wuid,\n StateID: WUStateID.Unknown\n });\n }\n\n update(request: Partial<WsWorkunits.WUUpdate.Request>): Promise<Workunit> {\n return this.connection.WUUpdate({\n ...request,\n ...{\n Wuid: this.Wuid,\n StateOrig: this.State,\n JobnameOrig: this.Jobname,\n DescriptionOrig: this.Description,\n ProtectedOrig: this.Protected,\n ClusterOrig: this.Cluster\n }\n }).then((response) => {\n this.set(response.Workunit);\n return this;\n });\n }\n\n submit(_cluster?: string, action: WsWorkunits.WUUpdate.Action = WsWorkunits.WUUpdate.Action.Run, resultLimit?: number): Promise<Workunit> {\n let clusterPromise;\n if (_cluster !== void 0) {\n clusterPromise = Promise.resolve(_cluster);\n } else {\n clusterPromise = this.topologyConnection.DefaultTpLogicalClusterQuery().then((response) => {\n return response.Name;\n });\n }\n\n this._debugMode = false;\n if (action === WsWorkunits.WUUpdate.Action.Debug) {\n action = WsWorkunits.WUUpdate.Action.Run;\n this._debugMode = true;\n }\n\n return clusterPromise.then((cluster) => {\n return this.connection.WUUpdate({\n Wuid: this.Wuid,\n Action: action,\n ResultLimit: resultLimit,\n DebugValues: {\n DebugValue: [\n {\n Name: \"Debug\",\n Value: this._debugMode ? \"1\" : \"\"\n }\n ]\n }\n }).then((response) => {\n this.set(response.Workunit);\n this._submitAction = action;\n return this.connection.WUSubmit({ Wuid: this.Wuid, Cluster: cluster });\n });\n }).then(() => {\n return this;\n });\n }\n\n isComplete(): boolean {\n switch (this.StateID) {\n case WUStateID.Compiled:\n return this.ActionEx === \"compile\" || this._submitAction === WsWorkunits.WUUpdate.Action.Compile;\n case WUStateID.Completed:\n case WUStateID.Failed:\n case WUStateID.Aborted:\n case WUStateID.NotFound:\n return true;\n default:\n }\n return false;\n }\n\n isFailed() {\n switch (this.StateID) {\n case WUStateID.Aborted:\n case WUStateID.Failed:\n return true;\n default:\n }\n return false;\n }\n\n isDeleted() {\n switch (this.StateID) {\n case WUStateID.NotFound:\n return true;\n default:\n }\n return false;\n }\n\n isDebugging() {\n switch (this.StateID) {\n case WUStateID.DebugPaused:\n case WUStateID.DebugRunning:\n return true;\n default:\n }\n return this._debugMode;\n }\n\n isRunning(): boolean {\n switch (this.StateID) {\n case WUStateID.Compiled:\n case WUStateID.Running:\n case WUStateID.Aborting:\n case WUStateID.Blocked:\n case WUStateID.DebugPaused:\n case WUStateID.DebugRunning:\n return true;\n default:\n }\n return false;\n }\n\n setToFailed() {\n return this.WUAction(\"SetToFailed\");\n }\n\n pause() {\n return this.WUAction(\"Pause\");\n }\n\n pauseNow() {\n return this.WUAction(\"PauseNow\");\n }\n\n resume() {\n return this.WUAction(\"Resume\");\n }\n\n abort() {\n return this.WUAction(\"Abort\");\n }\n\n delete() {\n return this.WUAction(\"Delete\");\n }\n\n restore() {\n return this.WUAction(\"Restore\");\n }\n\n deschedule() {\n return this.WUAction(\"Deschedule\");\n }\n\n reschedule() {\n return this.WUAction(\"Reschedule\");\n }\n\n resubmit(): Promise<Workunit> {\n return this.WUResubmit({\n CloneWorkunit: false,\n ResetWorkflow: false\n }).then(() => {\n this.clearState(this.Wuid);\n return this.refresh().then(() => {\n this._monitor();\n return this;\n });\n });\n }\n\n clone(): Promise<Workunit> {\n return this.WUResubmit({\n CloneWorkunit: true,\n ResetWorkflow: false\n }).then((response) => {\n return Workunit.attach(this.connection.connection(), response.WUs.WU[0].WUID)\n .refresh()\n ;\n });\n }\n\n async refreshState(): Promise<this> {\n await this.WUQuery();\n return this;\n }\n\n async refreshInfo(): Promise<this> {\n await this.WUInfo();\n return this;\n }\n\n async refreshDebug(): Promise<this> {\n await this.debugStatus();\n return this;\n }\n\n async refresh(full: boolean = false): Promise<this> {\n if (full) {\n await Promise.all([this.refreshInfo(), this.refreshDebug()]);\n } else {\n await this.refreshState();\n }\n return this;\n }\n\n eclExceptions(): WsWorkunits.WUInfo.ECLException[] {\n return this.Exceptions.ECLException;\n }\n\n fetchArchive(): Promise<string> {\n return this.connection.WUFile({\n Wuid: this.Wuid,\n Type: \"ArchiveQuery\"\n });\n }\n\n fetchECLExceptions(): Promise<WsWorkunits.WUInfo.ECLException[]> {\n return this.WUInfo({ IncludeExceptions: true }).then(() => {\n return this.eclExceptions();\n });\n }\n\n fetchResults(): Promise<Result[]> {\n return this.WUInfo({ IncludeResults: true }).then(() => {\n return this.CResults;\n });\n }\n\n fetchGraphs(): Promise<ECLGraph[]> {\n return this.WUInfo({ IncludeGraphs: true }).then(() => {\n return this.CGraphs;\n });\n }\n\n fetchDetailsMeta(request: Partial<WsWorkunits.WUDetailsMeta.Request> = {}): Promise<WsWorkunits.WUDetailsMeta.Response> {\n return this.WUDetailsMeta(request);\n }\n\n fetchDetailsRaw(request: Partial<WsWorkunits.WUDetails.Request> = {}): Promise<WsWorkunits.WUDetails.Scope[]> {\n return this.WUDetails(request).then(response => response.Scopes.Scope);\n }\n\n fetchDetailsNormalized(request: Partial<WsWorkunits.WUDetails.Request> = {}): Promise<{ meta: WsWorkunits.WUDetailsMeta.Response, columns: { [id: string]: any }, data: object[] }> {\n return Promise.all([this.fetchDetailsMeta(), this.fetchDetailsRaw(request)]).then(promises => {\n const meta = promises[0];\n const scopes = promises[1];\n const columns: { [id: string]: any } = {\n id: {\n Measure: \"label\"\n },\n name: {\n Measure: \"label\"\n },\n type: {\n Measure: \"label\"\n }\n };\n const data: object[] = [];\n for (const scope of scopes) {\n const props = {};\n if (scope && scope.Id && scope.Properties && scope.Properties.Property) {\n for (const key in scope.Properties.Property) {\n const scopeProperty = scope.Properties.Property[key];\n if (scopeProperty.Measure === \"ns\") {\n scopeProperty.Measure = \"s\";\n }\n columns[scopeProperty.Name] = { ...scopeProperty };\n delete columns[scopeProperty.Name].RawValue;\n delete columns[scopeProperty.Name].Formatted;\n switch (scopeProperty.Measure) {\n case \"bool\":\n props[scopeProperty.Name] = !!+scopeProperty.RawValue;\n break;\n case \"sz\":\n props[scopeProperty.Name] = +scopeProperty.RawValue;\n break;\n case \"s\":\n props[scopeProperty.Name] = +scopeProperty.RawValue / 1000000000;\n break;\n case \"ns\":\n props[scopeProperty.Name] = +scopeProperty.RawValue;\n break;\n case \"ts\":\n props[scopeProperty.Name] = new Date(+scopeProperty.RawValue / 1000).toISOString();\n break;\n case \"cnt\":\n props[scopeProperty.Name] = +scopeProperty.RawValue;\n break;\n case \"cpu\":\n case \"skw\":\n case \"node\":\n case \"ppm\":\n case \"ip\":\n case \"cy\":\n case \"en\":\n case \"txt\":\n case \"id\":\n case \"fname\":\n default:\n props[scopeProperty.Name] = scopeProperty.RawValue;\n }\n }\n data.push({\n id: scope.Id,\n name: scope.ScopeName,\n type: scope.ScopeType,\n ...props\n });\n }\n }\n return {\n meta,\n columns,\n data\n };\n });\n }\n\n fetchDetails(request: Partial<WsWorkunits.WUDetails.Request> = {}): Promise<Scope[]> {\n return this.WUDetails(request).then((response) => {\n return response.Scopes.Scope.map((rawScope) => {\n return new Scope(this, rawScope);\n });\n });\n }\n\n fetchDetailsHierarchy(request: Partial<WsWorkunits.WUDetails.Request> = {}): Promise<Scope[]> {\n return this.WUDetails(request).then((response) => {\n const retVal: Scope[] = [];\n\n // Recreate Scope Hierarchy and dedup ---\n const scopeMap: { [key: string]: Scope } = {};\n response.Scopes.Scope.forEach((rawScope) => {\n if (scopeMap[rawScope.ScopeName]) {\n scopeMap[rawScope.ScopeName].update(rawScope);\n return null;\n } else {\n const scope = new Scope(this, rawScope);\n scopeMap[scope.ScopeName] = scope;\n return scope;\n }\n });\n for (const key in scopeMap) {\n if (scopeMap.hasOwnProperty(key)) {\n const scope = scopeMap[key];\n const parentScopeID = scope.parentScope();\n if (parentScopeID && scopeMap[parentScopeID]) {\n scopeMap[parentScopeID].children().push(scope);\n } else {\n retVal.push(scope);\n }\n }\n }\n\n return retVal;\n });\n }\n\n fetchGraphDetails(graphIDs: string[] = [], rootTypes: string[]): Promise<BaseScope[]> {\n return this.fetchDetails({\n ScopeFilter: {\n MaxDepth: 999999,\n Ids: graphIDs,\n ScopeTypes: rootTypes\n },\n NestedFilter: {\n Depth: 999999,\n ScopeTypes: [\"graph\", \"subgraph\", \"activity\", \"edge\"]\n },\n PropertiesToReturn: {\n AllStatistics: true,\n AllAttributes: true,\n AllHints: true,\n AllProperties: true,\n AllScopes: true\n },\n ScopeOptions: {\n IncludeId: true,\n IncludeScope: true,\n IncludeScopeType: true\n },\n PropertyOptions: {\n IncludeName: true,\n IncludeRawValue: true,\n IncludeFormatted: true,\n IncludeMeasure: true,\n IncludeCreator: false,\n IncludeCreatorType: false\n }\n });\n }\n\n fetchScopeGraphs(graphIDs: string[] = []): Promise<ScopeGraph> {\n return this.fetchGraphDetails(graphIDs, [\"graph\"]).then((scopes) => {\n return createGraph(scopes);\n });\n }\n\n fetchTimeElapsed(): Promise<ITimeElapsed[]> {\n return this.fetchDetails({\n ScopeFilter: {\n PropertyFilters: {\n PropertyFilter: [{ Name: \"TimeElapsed\" }]\n }\n }\n }).then((scopes) => {\n const scopeInfo: { [key: string]: ITimeElapsed } = {};\n scopes.forEach((scope) => {\n scopeInfo[scope.ScopeName] = scopeInfo[scope.ScopeName] || {\n scope: scope.ScopeName,\n start: null,\n elapsed: null,\n finish: null\n };\n scope.CAttributes.forEach((attr) => {\n if (attr.Name === \"TimeElapsed\") {\n scopeInfo[scope.ScopeName].elapsed = +attr.RawValue;\n } else if (attr.Measure === \"ts\" && attr.Name.indexOf(\"Started\") >= 0) {\n scopeInfo[scope.ScopeName].start = attr.Formatted;\n }\n });\n });\n // Workaround duplicate scope responses\n const retVal: ITimeElapsed[] = [];\n for (const key in scopeInfo) {\n const scope = scopeInfo[key];\n if (scope.start && scope.elapsed) {\n const endTime = parser(scope.start);\n endTime!.setMilliseconds(endTime!.getMilliseconds() + scope.elapsed / 1000000);\n scope.finish = formatter(endTime!);\n retVal.push(scope);\n }\n }\n retVal.sort((l, r) => {\n if (l.start < r.start) return -1;\n if (l.start > r.start) return 1;\n return 0;\n });\n return retVal;\n });\n }\n\n // Monitoring ---\n protected _monitor(): void {\n if (this.isComplete()) {\n this._monitorTickCount = 0;\n return;\n }\n super._monitor();\n }\n\n protected _monitorTimeoutDuraction(): number {\n const retVal = super._monitorTimeoutDuraction();\n if (this._monitorTickCount <= 1) { // Once\n return 1000;\n } else if (this._monitorTickCount <= 3) { // Twice\n return 3000;\n } else if (this._monitorTickCount <= 5) { // Twice\n return 5000;\n } else if (this._monitorTickCount <= 7) { // Twice\n return 10000;\n }\n return retVal;\n }\n\n // Events ---\n on(eventID: WorkunitEvents, propIDorCallback: StateCallback | keyof UWorkunitState, callback?: StatePropCallback): this {\n if (this.isCallback(propIDorCallback)) {\n switch (eventID) {\n case \"completed\":\n super.on(\"propChanged\", \"StateID\", (changeInfo: IEvent) => {\n if (this.isComplete()) {\n propIDorCallback([changeInfo]);\n }\n });\n break;\n case \"changed\":\n super.on(eventID, propIDorCallback);\n break;\n default:\n }\n } else {\n switch (eventID) {\n case \"changed\":\n super.on(eventID, propIDorCallback, callback!);\n break;\n default:\n }\n }\n this._monitor();\n return this;\n }\n\n watchUntilComplete(callback?: StateCallback): Promise<this> {\n return new Promise((resolve, _) => {\n const watchHandle = this.watch((changes) => {\n if (callback) {\n callback(changes);\n }\n if (this.isComplete()) {\n watchHandle.release();\n resolve(this);\n }\n });\n });\n }\n\n watchUntilRunning(callback?: StateCallback): Promise<this> {\n return new Promise((resolve, _) => {\n const watchHandle = this.watch((changes) => {\n if (callback) {\n callback(changes);\n }\n if (this.isComplete() || this.isRunning()) {\n watchHandle.release();\n resolve(this);\n }\n });\n });\n }\n\n // WsWorkunits passthroughs ---\n protected WUQuery(_request: Partial<WsWorkunits.WUQuery.Request> = {}): Promise<WsWorkunits.WUQuery.Response> {\n return this.connection.WUQuery({ ..._request, Wuid: this.Wuid }).then((response) => {\n this.set(response.Workunits.ECLWorkunit[0]);\n return response;\n }).catch((e: ESPExceptions) => {\n // deleted ---\n const wuMissing = e.Exception.some((exception) => {\n if (exception.Code === 20081) {\n this.clearState(this.Wuid);\n this.set(\"StateID\", WUStateID.NotFound);\n return true;\n }\n return false;\n });\n if (!wuMissing) {\n logger.warning(\"Unexpected exception: \");\n throw e;\n }\n return {} as WsWorkunits.WUQuery.Response;\n });\n }\n\n protected WUCreate() {\n return this.connection.WUCreate().then((response) => {\n this.set(response.Workunit);\n _workunits.set(this);\n return response;\n });\n }\n\n protected WUInfo(_request: Partial<WsWorkunits.WUInfo.Request> = {}): Promise<WsWorkunits.WUInfo.Response> {\n const includeResults = _request.IncludeResults || _request.IncludeResultsViewNames;\n return this.connection.WUInfo({\n ..._request, Wuid: this.Wuid,\n IncludeResults: includeResults,\n IncludeResultsViewNames: includeResults,\n SuppressResultSchemas: false\n }).then((response) => {\n this.set(response.Workunit);\n if (includeResults) {\n this.set({\n ResultViews: response.ResultViews\n } as IWorkunitState);\n }\n return response;\n }).catch((e: ESPExceptions) => {\n // deleted ---\n const wuMissing = e.Exception.some((exception) => {\n if (exception.Code === 20080) {\n this.clearState(this.Wuid);\n this.set(\"StateID\", WUStateID.NotFound);\n return true;\n }\n return false;\n });\n if (!wuMissing) {\n logger.warning(\"Unexpected exception: \");\n throw e;\n }\n return {} as WsWorkunits.WUInfo.Response;\n });\n }\n\n protected WUResubmit(request: Partial<WsWorkunits.WUResubmit.Request>): Promise<WsWorkunits.WUResubmit.Response> {\n return this.connection.WUResubmit(deepMixinT<WsWorkunits.WUResubmit.Request>({}, request, {\n Wuids: [this.Wuid]\n }));\n }\n\n protected WUDetailsMeta(request: Partial<WsWorkunits.WUDetailsMeta.Request>): Promise<WsWorkunits.WUDetailsMeta.Response> {\n return this.connection.WUDetailsMeta(request);\n }\n\n protected WUDetails(request: Partial<WsWorkunits.WUDetails.Request>): Promise<WsWorkunits.WUDetails.Response> {\n return this.connection.WUDetails(deepMixinT<WsWorkunits.WUDetails.Request>({\n ScopeFilter: {\n MaxDepth: 9999\n },\n ScopeOptions: {\n IncludeMatchedScopesInResults: true,\n IncludeScope: true,\n IncludeId: false,\n IncludeScopeType: false\n },\n PropertyOptions: {\n IncludeName: true,\n IncludeRawValue: false,\n IncludeFormatted: true,\n IncludeMeasure: true,\n IncludeCreator: false,\n IncludeCreatorType: false\n }\n }, request, { WUID: this.Wuid })).then((response) => {\n return deepMixinT<WsWorkunits.WUDetails.Response>({\n Scopes: {\n Scope: []\n }\n }, response);\n });\n }\n\n protected WUAction(actionType: WsWorkunits.WUAction.Type): Promise<WsWorkunits.WUAction.Response> {\n return this.connection.WUAction({\n Wuids: [this.Wuid],\n WUActionType: actionType\n }).then((response) => {\n return this.refresh().then(() => {\n this._monitor();\n return response;\n });\n });\n }\n\n publish(name?: string) {\n return this.connection.WUPublishWorkunit({\n Wuid: this.Wuid,\n Cluster: this.Cluster,\n JobName: name || this.Jobname,\n AllowForeignFiles: true,\n Activate: true,\n Wait: 5000\n });\n }\n\n protected WUCDebug(command: string, opts: any = {}): Promise<XMLNode | null> {\n let optsStr = \"\";\n for (const key in opts) {\n if (opts.hasOwnProperty(key)) {\n optsStr += ` ${key}='${opts[key]}'`;\n }\n }\n return this.connection.WUCDebug({\n Wuid: this.Wuid,\n Command: `<debug:${command} uid='${this.Wuid}'${optsStr}/>`\n }).then((response) => {\n return response;\n });\n }\n\n debug(command: string, opts?: object): Promise<XMLNode> {\n if (!this.isDebugging()) {\n return Promise.resolve(new XMLNode(command));\n }\n return this.WUCDebug(command, opts).then((response: XMLNode) => {\n const retVal: XMLNode[] = response.children(command);\n if (retVal.length) {\n return retVal[0];\n }\n return new XMLNode(command);\n }).catch((_) => {\n logger.error(_);\n return Promise.resolve(new XMLNode(command));\n });\n }\n\n debugStatus(): Promise<XMLNode> {\n if (!this.isDebugging()) {\n return Promise.resolve<any>({\n DebugState: { state: \"unknown\" }\n });\n }\n return this.debug(\"status\").then((response) => {\n const debugState = { ...this.DebugState, ...response.$ };\n this.set({\n DebugState: debugState\n });\n return response;\n });\n }\n\n debugContinue(mode = \"\"): Promise<XMLNode> {\n return this.debug(\"continue\", {\n mode\n });\n }\n\n debugStep(mode: string): Promise<XMLNode> {\n return this.debug(\"step\", {\n mode\n });\n }\n\n debugPause(): Promise<XMLNode> {\n return this.debug(\"interrupt\");\n }\n\n debugQuit(): Promise<XMLNode> {\n return this.debug(\"quit\");\n }\n\n debugDeleteAllBreakpoints(): Promise<XMLNode> {\n return this.debug(\"delete\", {\n idx: 0\n });\n }\n\n protected debugBreakpointResponseParser(rootNode: StringAnyMap) {\n return rootNode.children().map((childNode: XMLNode) => {\n if (childNode.name === \"break\") {\n return childNode.$;\n }\n });\n }\n\n debugBreakpointAdd(id: string, mode: string, action: string): Promise<XMLNode> {\n return this.debug(\"breakpoint\", {\n id,\n mode,\n action\n }).then((rootNode) => {\n return this.debugBreakpointResponseParser(rootNode);\n });\n }\n\n debugBreakpointList(): Promise<any[]> {\n return this.debug(\"list\").then((rootNode) => {\n return this.debugBreakpointResponseParser(rootNode);\n });\n }\n\n debugGraph(): Promise<XGMMLGraph> {\n if (this._debugAllGraph && this.DebugState[\"_prevGraphSequenceNum\"] === this.DebugState[\"graphSequenceNum\"]) {\n return Promise.resolve(this._debugAllGraph);\n }\n return this.debug(\"graph\", { name: \"all\" }).then((response) => {\n this.DebugState[\"_prevGraphSequenceNum\"] = this.DebugState[\"graphSequenceNum\"];\n this._debugAllGraph = createXGMMLGraph(this.Wuid, response);\n return this._debugAllGraph;\n });\n }\n\n debugBreakpointValid(path: string): Promise<IECLDefintion[]> {\n return this.debugGraph().then((graph) => {\n return breakpointLocations(graph, path);\n });\n }\n\n debugPrint(edgeID: string, startRow: number = 0, numRows: number = 10): Promise<StringAnyMap[]> {\n return this.debug(\"print\", {\n edgeID,\n startRow,\n numRows\n }).then((response: XMLNode) => {\n return response.children().map((rowNode) => {\n const retVal: StringAnyMap = {};\n rowNode.children().forEach((cellNode) => {\n retVal[cellNode.name] = cellNode.content;\n });\n return retVal;\n });\n });\n }\n}\n\nexport interface IECLDefintion {\n id: string;\n file: string;\n line: number;\n column: number;\n}\n\nconst ATTR_DEFINITION = \"definition\";\n\nfunction hasECLDefinition(vertex: XGMMLVertex): boolean {\n return vertex._![ATTR_DEFINITION] !== undefined;\n}\n\nfunction getECLDefinition(vertex: XGMMLVertex): IECLDefintion {\n const match = /([a-z]:\\\\(?:[-\\w\\.\\d]+\\\\)*(?:[-\\w\\.\\d]+)?|(?:\\/[\\w\\.\\-]+)+)\\((\\d*),(\\d*)\\)/.exec(vertex._![ATTR_DEFINITION]);\n if (match) {\n const [, _file, _row, _col] = match;\n _file.replace(\"/./\", \"/\");\n return {\n id: vertex._![\"id\"],\n file: _file,\n line: +_row,\n column: +_col\n };\n }\n throw new Error(`Bad definition: ${vertex._![ATTR_DEFINITION]}`);\n}\n\nfunction breakpointLocations(graph: XGMMLGraph, path?: string): IECLDefintion[] {\n const retVal: IECLDefintion[] = [];\n for (const vertex of graph.vertices) {\n if (hasECLDefinition(vertex)) {\n const definition = getECLDefinition(vertex);\n if (definition && !path || path === definition.file) {\n retVal.push(definition);\n }\n }\n }\n return retVal.sort((l, r) => {\n return l.line - r.line;\n });\n}\n","import { debounce, StateObject } from \"@hpcc-js/util\";\nimport { IConnection, IOptions } from \"../connection\";\nimport { SMCActivity, SMCService } from \"../services/wsSMC\";\nimport { Workunit } from \"./workunit\";\n\nlet _activity: Activity;\n\nexport interface ActivityEx {\n}\n\nexport type UActivityState = SMCActivity.Response & ActivityEx;\nexport type IActivityState = SMCActivity.Response | ActivityEx;\nexport class Activity extends StateObject<UActivityState, IActivityState> implements UActivityState {\n protected connection: SMCService;\n\n get properties(): UActivityState { return this.get(); }\n get Exceptions(): SMCActivity.Exceptions { return this.get(\"Exceptions\"); }\n get Build(): string { return this.get(\"Build\"); }\n get ThorClusterList(): SMCActivity.ThorClusterList { return this.get(\"ThorClusterList\"); }\n get RoxieClusterList(): SMCActivity.RoxieClusterList { return this.get(\"RoxieClusterList\"); }\n get HThorClusterList(): SMCActivity.HThorClusterList { return this.get(\"HThorClusterList\"); }\n get DFUJobs(): SMCActivity.DFUJobs { return this.get(\"DFUJobs\"); }\n get Running(): SMCActivity.Running { return this.get(\"Running\", { ActiveWorkunit: [] }); }\n get BannerContent(): string { return this.get(\"BannerContent\"); }\n get BannerColor(): string { return this.get(\"BannerColor\"); }\n get BannerSize(): string { return this.get(\"BannerSize\"); }\n get BannerScroll(): string { return this.get(\"BannerScroll\"); }\n get ChatURL(): string { return this.get(\"ChatURL\"); }\n get ShowBanner(): number { return this.get(\"ShowBanner\"); }\n get ShowChatURL(): number { return this.get(\"ShowChatURL\"); }\n get SortBy(): string { return this.get(\"SortBy\"); }\n get Descending(): boolean { return this.get(\"Descending\"); }\n get SuperUser(): boolean { return this.get(\"SuperUser\"); }\n get AccessRight(): string { return this.get(\"AccessRight\"); }\n get ServerJobQueues(): SMCActivity.ServerJobQueues { return this.get(\"ServerJobQueues\"); }\n\n static attach(optsConnection: IOptions | IConnection | SMCService, state?: IActivityState): Activity {\n if (!_activity) {\n _activity = new Activity(optsConnection);\n }\n if (state) {\n _activity.set({\n ...state\n });\n }\n return _activity;\n }\n\n protected constructor(optsConnection: IOptions | IConnection | SMCService) {\n super();\n if (optsConnection instanceof SMCService) {\n this.connection = optsConnection;\n } else {\n this.connection = new SMCService(optsConnection);\n }\n this.clear({\n });\n }\n\n runningWorkunits(clusterName: string = \"\"): Workunit[] {\n return this.Running.ActiveWorkunit.filter(awu => clusterName === \"\" || awu.ClusterName === clusterName).map(awu => Workunit.attach(this.connection.connectionOptions(), awu.Wuid, awu));\n }\n\n lazyRefresh = debounce(async (): Promise<this> => {\n const response = await this.connection.Activity({});\n this.set(response);\n return this;\n });\n\n async refresh(): Promise<this> {\n return this.lazyRefresh();\n }\n}\n","import { Cache, StateObject } from \"@hpcc-js/util\";\nimport { IConnection, IOptions } from \"../connection\";\nimport { DFUService, WsDfu } from \"../services/wsDFU\";\n\nexport class LogicalFileCache extends Cache<{ BaseUrl: string, Cluster: string, Name: string }, LogicalFile> {\n constructor() {\n super((obj) => {\n return `${obj.BaseUrl}-${obj.Cluster}-${obj.Name}`;\n });\n }\n}\nconst _store = new LogicalFileCache();\n\nexport interface FileDetailEx extends WsDfu.FileDetail {\n Cluster: string;\n}\n\nexport class LogicalFile extends StateObject<FileDetailEx, FileDetailEx> implements FileDetailEx {\n protected connection: DFUService;\n get BaseUrl() { return this.connection.baseUrl; }\n\n get Cluster(): string { return this.get(\"Cluster\"); }\n get Name(): string { return this.get(\"Name\"); }\n\n get Filename(): string { return this.get(\"Filename\"); }\n get Prefix(): string { return this.get(\"Prefix\"); }\n get NodeGroup(): string { return this.get(\"NodeGroup\"); }\n get NumParts(): number { return this.get(\"NumParts\"); }\n get Description(): string { return this.get(\"Description\"); }\n get Dir(): string { return this.get(\"Dir\"); }\n get PathMask(): string { return this.get(\"PathMask\"); }\n get Filesize(): string { return this.get(\"Filesize\"); }\n get FileSizeInt64(): number { return this.get(\"FileSizeInt64\"); }\n get RecordSize(): string { return this.get(\"RecordSize\"); }\n get RecordCount(): string { return this.get(\"RecordCount\"); }\n get RecordSizeInt64(): number { return this.get(\"RecordSizeInt64\"); }\n get RecordCountInt64(): number { return this.get(\"RecordCountInt64\"); }\n get Wuid(): string { return this.get(\"Wuid\"); }\n get Owner(): string { return this.get(\"Owner\"); }\n get JobName(): string { return this.get(\"JobName\"); }\n get Persistent(): string { return this.get(\"Persistent\"); }\n get Format(): string { return this.get(\"Format\"); }\n get MaxRecordSize(): string { return this.get(\"MaxRecordSize\"); }\n get CsvSeparate(): string { return this.get(\"CsvSeparate\"); }\n get CsvQuote(): string { return this.get(\"CsvQuote\"); }\n get CsvTerminate(): string { return this.get(\"CsvTerminate\"); }\n get CsvEscape(): string { return this.get(\"CsvEscape\"); }\n get Modified(): string { return this.get(\"Modified\"); }\n get Ecl(): string { return this.get(\"Ecl\"); }\n get Stat(): WsDfu.Stat { return this.get(\"Stat\"); }\n get DFUFilePartsOnClusters(): WsDfu.DFUFilePartsOnClusters { return this.get(\"DFUFilePartsOnClusters\"); }\n get isSuperfile(): boolean { return this.get(\"isSuperfile\"); }\n get ShowFileContent(): boolean { return this.get(\"ShowFileContent\"); }\n get subfiles(): WsDfu.Subfiles { return this.get(\"subfiles\"); }\n get Superfiles(): WsDfu.Superfiles { return this.get(\"Superfiles\"); }\n get ProtectList(): WsDfu.ProtectList { return this.get(\"ProtectList\"); }\n get FromRoxieCluster(): boolean { return this.get(\"FromRoxieCluster\"); }\n get Graphs(): WsDfu.Graphs { return this.get(\"Graphs\"); }\n get UserPermission(): string { return this.get(\"UserPermission\"); }\n get ContentType(): string { return this.get(\"ContentType\"); }\n get CompressedFileSize(): number { return this.get(\"CompressedFileSize\"); }\n get PercentCompressed(): string { return this.get(\"PercentCompressed\"); }\n get IsCompressed(): boolean { return this.get(\"IsCompressed\"); }\n get BrowseData(): boolean { return this.get(\"BrowseData\"); }\n get jsonInfo(): string { return this.get(\"jsonInfo\"); }\n get binInfo(): string { return this.get(\"binInfo\"); }\n get PackageID(): string { return this.get(\"PackageID\"); }\n get Partition(): WsDfu.Partition { return this.get(\"Partition\"); }\n get Blooms(): WsDfu.Blooms { return this.get(\"Blooms\"); }\n get ExpireDays(): number { return this.get(\"ExpireDays\"); }\n get KeyType(): string { return this.get(\"KeyType\"); }\n\n get properties(): FileDetailEx { return this.get(); }\n\n static attach(optsConnection: IOptions | IConnection | DFUService, Cluster: string, Name: string): LogicalFile {\n const retVal: LogicalFile = _store.get({ BaseUrl: optsConnection.baseUrl, Cluster, Name }, () => {\n return new LogicalFile(optsConnection, Cluster, Name);\n });\n return retVal;\n }\n\n protected constructor(optsConnection: IOptions | IConnection | DFUService, Cluster: string, Name: string) {\n super();\n if (optsConnection instanceof DFUService) {\n this.connection = optsConnection;\n } else {\n this.connection = new DFUService(optsConnection);\n }\n\n this.clear({\n Cluster,\n Name\n });\n }\n\n fetchInfo(): Promise<WsDfu.FileDetail> {\n return this.connection.DFUInfo({ Cluster: this.Cluster, Name: this.Name }).then(response => {\n this.set({\n Cluster: this.Cluster,\n ...response.FileDetail\n });\n return response.FileDetail;\n });\n }\n}\n","import { Cache, StateObject } from \"@hpcc-js/util\";\nimport { IConnection, IOptions } from \"../connection\";\nimport { GetTargetClusterInfo, MachineService } from \"../services/wsMachine\";\n\nexport class MachineCache extends Cache<{ Address: string }, Machine> {\n constructor() {\n super((obj) => {\n return obj.Address;\n });\n }\n}\nconst _machines = new MachineCache();\n\nexport interface MachineInfoEx extends GetTargetClusterInfo.MachineInfoEx {\n}\n\nexport class Machine extends StateObject<MachineInfoEx, MachineInfoEx> implements MachineInfoEx {\n protected connection: MachineService;\n\n get Address(): string { return this.get(\"Address\"); }\n get ConfigAddress(): string { return this.get(\"ConfigAddress\"); }\n get Name(): string { return this.get(\"Name\"); }\n get ProcessType(): string { return this.get(\"ProcessType\"); }\n get DisplayType(): string { return this.get(\"DisplayType\"); }\n get Description(): string { return this.get(\"Description\"); }\n get AgentVersion(): string { return this.get(\"AgentVersion\"); }\n get Contact(): string { return this.get(\"Contact\"); }\n get Location(): string { return this.get(\"Location\"); }\n get UpTime(): string { return this.get(\"UpTime\"); }\n get ComponentName(): string { return this.get(\"ComponentName\"); }\n get ComponentPath(): string { return this.get(\"ComponentPath\"); }\n get RoxieState(): string { return this.get(\"RoxieState\"); }\n get RoxieStateDetails(): string { return this.get(\"RoxieStateDetails\"); }\n get OS(): number { return this.get(\"OS\"); }\n get ProcessNumber(): number { return this.get(\"ProcessNumber\"); }\n get Processors(): GetTargetClusterInfo.Processors { return this.get(\"Processors\"); }\n get Storage(): GetTargetClusterInfo.Storage { return this.get(\"Storage\"); }\n get Running(): GetTargetClusterInfo.Running { return this.get(\"Running\"); }\n get PhysicalMemory(): GetTargetClusterInfo.PhysicalMemory { return this.get(\"PhysicalMemory\"); }\n get VirtualMemory(): GetTargetClusterInfo.VirtualMemory { return this.get(\"VirtualMemory\"); }\n get ComponentInfo(): GetTargetClusterInfo.ComponentInfo { return this.get(\"ComponentInfo\"); }\n\n static attach(optsConnection: IOptions | IConnection | MachineService, address: string, state?: GetTargetClusterInfo.MachineInfoEx): Machine {\n const retVal: Machine = _machines.get({ Address: address }, () => {\n return new Machine(optsConnection);\n });\n if (state) {\n retVal.set(state);\n }\n return retVal;\n }\n\n private constructor(optsConnection: IOptions | IConnection | MachineService) {\n super();\n if (optsConnection instanceof MachineService) {\n this.connection = optsConnection;\n } else {\n this.connection = new MachineService(optsConnection);\n }\n }\n}\n","import { Cache, StateObject } from \"@hpcc-js/util\";\nimport { IConnection, IOptions } from \"../connection\";\nimport { EclService, IWsEclRequest, IWsEclResponse, IWsEclResult } from \"../services/wsEcl\";\nimport { WorkunitsService, WUQueryDetails } from \"../services/wsWorkunits\";\n\nexport interface QueryEx extends WUQueryDetails.Response {\n BaseUrl: string;\n}\n\nclass QueryCache extends Cache<QueryEx, Query> {\n constructor() {\n super((obj) => {\n return Cache.hash([obj.QueryId, obj.QuerySet]);\n });\n }\n}\nconst _queries = new QueryCache();\n\nexport class Query extends StateObject<QueryEx, QueryEx> implements QueryEx {\n protected connection: EclService;\n get BaseUrl() { return this.connection.baseUrl; }\n // protected _topology: Topology;\n protected _wsWorkunits: WorkunitsService;\n // protected _wu: Workunit;\n protected _requestSchema: IWsEclRequest;\n protected _responseSchema: IWsEclResponse;\n\n get properties(): WUQueryDetails.Response { return this.get(); }\n get Exceptions(): WUQueryDetails.Exceptions { return this.get(\"Exceptions\"); }\n get QueryId(): string { return this.get(\"QueryId\"); }\n get QuerySet(): string { return this.get(\"QuerySet\"); }\n get QueryName(): string { return this.get(\"QueryName\"); }\n get Wuid(): string { return this.get(\"Wuid\"); }\n get Dll(): string { return this.get(\"Dll\"); }\n get Suspended(): boolean { return this.get(\"Suspended\"); }\n get Activated(): boolean { return this.get(\"Activated\"); }\n get SuspendedBy(): string { return this.get(\"SuspendedBy\"); }\n get Clusters(): WUQueryDetails.Clusters { return this.get(\"Clusters\"); }\n get PublishedBy(): string { return this.get(\"PublishedBy\"); }\n get Comment() { return this.get(\"Comment\"); }\n get LogicalFiles(): WUQueryDetails.LogicalFiles { return this.get(\"LogicalFiles\"); }\n get SuperFiles(): WUQueryDetails.SuperFiles { return this.get(\"SuperFiles\"); }\n get IsLibrary(): boolean { return this.get(\"IsLibrary\"); }\n get Priority(): string { return this.get(\"Priority\"); }\n get WUSnapShot(): string { return this.get(\"WUSnapShot\"); }\n get CompileTime(): string { return this.get(\"CompileTime\"); }\n get LibrariesUsed(): WUQueryDetails.LibrariesUsed { return this.get(\"LibrariesUsed\"); }\n get CountGraphs(): number { return this.get(\"CountGraphs\"); }\n get ResourceURLCount(): number { return this.get(\"ResourceURLCount\"); }\n get WsEclAddresses(): WUQueryDetails.WsEclAddresses { return this.get(\"WsEclAddresses\"); }\n get WUGraphs(): WUQueryDetails.WUGraphs { return this.get(\"WUGraphs\"); }\n get WUTimers(): WUQueryDetails.WUTimers { return this.get(\"WUTimers\"); }\n\n private constructor(optsConnection: IOptions | IConnection | EclService, querySet: string, queryID: string, queryDetails?: WUQueryDetails.Response) {\n super();\n if (optsConnection instanceof EclService) {\n this.connection = optsConnection;\n // this._topology = new Topology(this.connection.opts());\n } else {\n this.connection = new EclService(optsConnection);\n // this._topology = new Topology(optsConnection);\n }\n this.set({\n QuerySet: querySet,\n QueryId: queryID,\n ...queryDetails\n } as QueryEx);\n }\n\n static attach(optsConnection: IOptions | IConnection, querySet: string, queryId: string): Query {\n const retVal: Query = _queries.get({ BaseUrl: optsConnection.baseUrl, QuerySet: querySet, QueryId: queryId } as QueryEx, () => {\n return new Query(optsConnection, querySet, queryId);\n });\n return retVal;\n }\n\n private async fetchRequestSchema(): Promise<void> {\n this._requestSchema = await this.connection.requestJson(this.QuerySet, this.QueryId);\n }\n\n private async fetchResponseSchema(): Promise<void> {\n this._responseSchema = await this.connection.responseJson(this.QuerySet, this.QueryId);\n }\n\n private async fetchSchema(): Promise<void> {\n await Promise.all([this.fetchRequestSchema(), this.fetchResponseSchema()]);\n }\n\n submit(request: object): Promise<Array<{ [key: string]: object[] }>> {\n return this.connection.submit(this.QuerySet, this.QueryId, request).then(results => {\n for (const key in results) {\n results[key] = results[key].Row;\n }\n return results;\n });\n }\n\n async refresh(): Promise<this> {\n return this.fetchSchema().then(schema => this);\n }\n\n requestFields(): IWsEclRequest {\n if (!this._requestSchema) return [];\n return this._requestSchema;\n }\n\n responseFields(): IWsEclResponse {\n if (!this._responseSchema) return {};\n return this._responseSchema;\n }\n\n resultNames(): string[] {\n const retVal: string[] = [];\n for (const key in this.responseFields()) {\n retVal.push(key);\n }\n return retVal;\n }\n\n resultFields(resultName: string): IWsEclResult {\n if (!this._responseSchema[resultName]) return [];\n return this._responseSchema[resultName];\n }\n\n /*\n protected WUQueryDetails(): Promise<WUQueryDetails.Response> {\n const request: WUQueryDetails.Request = {} as WUQueryDetails.Request;\n request.QueryId = this.QueryId;\n request.QuerySet = this.QuerySet;\n request.IncludeSuperFiles = true;\n request.IncludeStateOnClusters = true;\n return this.connection.WUQueryDetails(request).then((response) => {\n this.set(response);\n return response;\n });\n }\n */\n}\n","import { Cache, Dispatch, IObserverHandle, Message } from \"@hpcc-js/util\";\nimport { IConnection, IOptions } from \"../connection\";\nimport { StoreService } from \"../services/wsStore\";\n\nexport class StoreCache extends Cache<{ BaseUrl: string, Name: string, UserSpecific: boolean, Namespace: string }, Store> {\n constructor() {\n super((obj) => {\n return `${obj.BaseUrl}-${obj.Name}:${obj.UserSpecific}-${obj.Namespace}`;\n });\n }\n}\nconst _store = new StoreCache();\n\nexport class ValueChangedMessage extends Message {\n\n constructor(readonly key: string, public value: any, public oldValue?: any) {\n super();\n }\n\n get canConflate(): boolean { return true; }\n conflate(other: ValueChangedMessage): boolean {\n if (this.key === other.key) {\n this.value = other.value;\n return true;\n }\n return false;\n }\n\n void(): boolean {\n return this.value === this.oldValue;\n }\n}\n\nexport class Store {\n protected connection: StoreService;\n get BaseUrl() { return this.connection.baseUrl; }\n readonly Name: string;\n readonly UserSpecific: boolean;\n readonly Namespace: string;\n\n protected _dispatch = new Dispatch();\n\n static attach(optsConnection: IOptions | IConnection | StoreService, Name: string = \"HPCCApps\", Namespace: string, UserSpecific: boolean = true): Store {\n const retVal: Store = _store.get({ BaseUrl: optsConnection.baseUrl, Name, UserSpecific, Namespace }, () => {\n return new Store(optsConnection, Name, Namespace, UserSpecific);\n });\n return retVal;\n }\n\n protected constructor(optsConnection: IOptions | IConnection | StoreService, Name: string, Namespace: string, UserSpecific: boolean) {\n if (optsConnection instanceof StoreService) {\n this.connection = optsConnection;\n } else {\n this.connection = new StoreService(optsConnection);\n }\n this.Name = Name;\n this.UserSpecific = UserSpecific;\n this.Namespace = Namespace;\n }\n\n private _knownValues: { [key: string]: any } = {};\n\n protected create() {\n this.connection.CreateStore({ Name: this.Name, UserSpecific: this.UserSpecific, Type: \"\", Description: \"\" });\n }\n\n set(key: string, value: string, broadcast = true): Promise<void> {\n return this.connection.Set({\n StoreName: this.Name,\n UserSpecific: this.UserSpecific,\n Namespace: this.Namespace,\n Key: key,\n Value: value\n }).then(response => {\n const oldValue = this._knownValues[key];\n this._knownValues[key] = value;\n if (broadcast) {\n this._dispatch.post(new ValueChangedMessage(key, value, oldValue));\n }\n }).catch(e => {\n console.error(`Store.set(\"${key}\", \"${value}\") failed:`, e);\n });\n }\n\n get(key: string, broadcast = true): Promise<string | undefined> {\n return this.connection.Fetch({\n StoreName: this.Name,\n UserSpecific: this.UserSpecific,\n Namespace: this.Namespace,\n Key: key\n }).then(response => {\n const oldValue = this._knownValues[key];\n this._knownValues[key] = response.Value;\n if (broadcast) {\n this._dispatch.post(new ValueChangedMessage(key, response.Value, oldValue));\n }\n return response.Value;\n }).catch(e => {\n console.error(`Store.get(${key}) failed:`, e);\n return undefined;\n });\n }\n\n getAll(broadcast = true): Promise<{ [key: string]: string }> {\n return this.connection.FetchAll({\n StoreName: this.Name,\n UserSpecific: this.UserSpecific,\n Namespace: this.Namespace\n }).then(response => {\n const retVal: { [key: string]: string } = {};\n const deletedValues = this._knownValues;\n this._knownValues = {};\n response.Pairs.Pair.forEach(pair => {\n const oldValue = this._knownValues[pair.Key];\n this._knownValues[pair.Key] = pair.Value;\n delete deletedValues[pair.Key];\n retVal[pair.Key] = pair.Value;\n if (broadcast) {\n this._dispatch.post(new ValueChangedMessage(pair.Key, pair.Value, oldValue));\n }\n });\n if (broadcast) {\n for (const key in deletedValues) {\n this._dispatch.post(new ValueChangedMessage(key, undefined, deletedValues[key]));\n }\n }\n return retVal;\n }).catch(e => {\n console.error(\"Store.getAll failed:\", e);\n return {};\n });\n }\n\n delete(key: string, broadcast = true): Promise<void> {\n return this.connection.Delete({\n StoreName: this.Name,\n UserSpecific: this.UserSpecific,\n Namespace: this.Namespace,\n Key: key\n }).then(response => {\n const oldValue = this._knownValues[key];\n delete this._knownValues[key];\n if (broadcast) {\n this._dispatch.post(new ValueChangedMessage(key, undefined, oldValue));\n }\n }).catch(e => {\n console.error(`Store.delete(${key}) failed:`, e);\n });\n }\n\n monitor(callback: (messages: ValueChangedMessage[]) => void): IObserverHandle {\n return this._dispatch.attach(callback);\n }\n}\n","import { Cache, StateObject } from \"@hpcc-js/util\";\nimport { IConnection, IOptions } from \"../connection\";\nimport { GetTargetClusterInfo, GetTargetClusterUsageEx, MachineService } from \"../services/wsMachine\";\nimport { TopologyService, TpListTargetClusters, TpTargetClusterQuery } from \"../services/wsTopology\";\nimport { Machine } from \"./machine\";\n\nexport class TargetClusterCache extends Cache<{ BaseUrl: string, Name: string }, TargetCluster> {\n constructor() {\n super((obj) => {\n return `${obj.BaseUrl}-${obj.Name}`;\n });\n }\n}\nconst _targetCluster = new TargetClusterCache();\n\nexport interface TpTargetClusterEx {\n MachineInfoEx: GetTargetClusterInfo.MachineInfoEx[];\n}\n\nexport type UTargetClusterState = TpTargetClusterQuery.TpTargetCluster & TpListTargetClusters.TpClusterNameType & TpTargetClusterEx;\nexport type ITargetClusterState = TpTargetClusterQuery.TpTargetCluster | TpListTargetClusters.TpClusterNameType | TpTargetClusterEx;\nexport class TargetCluster extends StateObject<UTargetClusterState, ITargetClusterState> implements UTargetClusterState {\n protected connection: TopologyService;\n protected machineConnection: MachineService;\n get BaseUrl() { return this.connection.baseUrl; }\n\n get Name(): string { return this.get(\"Name\"); }\n get Prefix(): string { return this.get(\"Prefix\"); }\n get Type(): string { return this.get(\"Type\"); }\n get IsDefault(): boolean { return this.get(\"IsDefault\"); }\n get TpClusters(): TpTargetClusterQuery.TpClusters { return this.get(\"TpClusters\"); }\n get TpEclCCServers(): TpTargetClusterQuery.TpEclCCServers { return this.get(\"TpEclCCServers\"); }\n get TpEclServers(): TpTargetClusterQuery.TpEclServers { return this.get(\"TpEclServers\"); }\n get TpEclAgents(): TpTargetClusterQuery.TpEclAgents { return this.get(\"TpEclAgents\"); }\n get TpEclSchedulers(): TpTargetClusterQuery.TpEclSchedulers { return this.get(\"TpEclSchedulers\"); }\n get MachineInfoEx(): GetTargetClusterInfo.MachineInfoEx[] { return this.get(\"MachineInfoEx\", []); }\n get CMachineInfoEx(): Machine[] {\n return this.MachineInfoEx.map(machineInfoEx => Machine.attach(this.machineConnection, machineInfoEx.Address, machineInfoEx));\n }\n\n static attach(optsConnection: IOptions | IConnection | TopologyService, name: string, state?: ITargetClusterState): TargetCluster {\n const retVal: TargetCluster = _targetCluster.get({ BaseUrl: optsConnection.baseUrl, Name: name }, () => {\n return new TargetCluster(optsConnection, name);\n });\n if (state) {\n retVal.set({\n ...state\n });\n }\n return retVal;\n }\n\n protected constructor(optsConnection: IOptions | IConnection | TopologyService, name: string) {\n super();\n if (optsConnection instanceof TopologyService) {\n this.connection = optsConnection;\n this.machineConnection = new MachineService(optsConnection.connectionOptions());\n } else {\n this.connection = new TopologyService(optsConnection);\n this.machineConnection = new MachineService(optsConnection);\n }\n this.clear({\n Name: name\n });\n }\n\n fetchMachines(request: GetTargetClusterInfo.Request = {}): Promise<Machine[]> {\n return this.machineConnection.GetTargetClusterInfo({\n TargetClusters: {\n Item: [`${this.Type}:${this.Name}`]\n },\n ...request\n }).then(response => {\n const retVal: GetTargetClusterInfo.MachineInfoEx[] = [];\n for (const machineInfo of response.TargetClusterInfoList.TargetClusterInfo) {\n for (const machineInfoEx of machineInfo.Processes.MachineInfoEx) {\n retVal.push(machineInfoEx);\n }\n }\n this.set(\"MachineInfoEx\", retVal);\n return this.CMachineInfoEx;\n });\n }\n\n machineStats(): { maxDisk: number; meanDisk: number } {\n let maxDisk = 0;\n let totalFree = 0;\n let total = 0;\n for (const machine of this.CMachineInfoEx) {\n for (const storageInfo of machine.Storage.StorageInfo) {\n totalFree += storageInfo.Available;\n total += storageInfo.Total;\n const usage = 1 - storageInfo.Available / storageInfo.Total;\n if (usage > maxDisk) {\n maxDisk = usage;\n }\n }\n }\n return {\n maxDisk,\n meanDisk: 1 - (total ? totalFree / total : 1)\n };\n }\n\n fetchUsage(): Promise<GetTargetClusterUsageEx.TargetClusterUsage[]> {\n return this.machineConnection.GetTargetClusterUsageEx([this.Name]);\n }\n}\n\nexport function targetClusters(optsConnection: IOptions | IConnection | TopologyService): Promise<TargetCluster[]> {\n let connection: TopologyService;\n if (optsConnection instanceof TopologyService) {\n connection = optsConnection;\n } else {\n connection = new TopologyService(optsConnection);\n }\n return connection.TpListTargetClusters({}).then(response => {\n return response.TargetClusters.TpClusterNameType.map(item => TargetCluster.attach(optsConnection, item.Name, item));\n });\n}\n\nconst _defaultTargetCluster: { [baseUrl: string]: Promise<TargetCluster> } = {};\nexport function defaultTargetCluster(optsConnection: IOptions | IConnection | TopologyService): Promise<TargetCluster> {\n if (!_defaultTargetCluster[optsConnection.baseUrl]) {\n let connection: TopologyService;\n if (optsConnection instanceof TopologyService) {\n connection = optsConnection;\n } else {\n connection = new TopologyService(optsConnection);\n }\n _defaultTargetCluster[optsConnection.baseUrl] = connection.TpListTargetClusters({}).then(response => {\n let firstItem: TpListTargetClusters.TpClusterNameType;\n let defaultItem: TpListTargetClusters.TpClusterNameType;\n let hthorItem: TpListTargetClusters.TpClusterNameType;\n response.TargetClusters.TpClusterNameType.forEach(item => {\n if (!firstItem) {\n firstItem = item;\n }\n if (!defaultItem && item.IsDefault === true) {\n defaultItem = item;\n }\n if (!hthorItem && item.Type === \"hthor\") {\n hthorItem = item;\n }\n });\n const defItem = defaultItem || hthorItem || firstItem;\n return TargetCluster.attach(optsConnection, defItem.Name, defItem);\n });\n }\n return _defaultTargetCluster[optsConnection.baseUrl];\n}\n","import { exists, StateCallback, StateEvents, StateObject, StatePropCallback } from \"@hpcc-js/util\";\nimport { IConnection, IOptions } from \"../connection\";\nimport { TopologyService, TpTargetClusterQuery } from \"../services/wsTopology\";\nimport { TargetCluster } from \"./targetCluster\";\n\nexport interface TopologyStateEx {\n TargetClusters: TpTargetClusterQuery.TpTargetCluster[];\n}\nexport class Topology extends StateObject<TopologyStateEx, TopologyStateEx> implements TopologyStateEx {\n protected connection: TopologyService;\n\n // Accessors ---\n get properties(): TopologyStateEx { return this.get(); }\n get TargetClusters(): TpTargetClusterQuery.TpTargetCluster[] { return this.get(\"TargetClusters\"); }\n get CTargetClusters(): TargetCluster[] {\n return this.TargetClusters.map(tc => TargetCluster.attach(this.connection, tc.Name, tc));\n }\n\n constructor(optsConnection: IOptions | IConnection | TopologyService) {\n super();\n if (optsConnection instanceof TopologyService) {\n this.connection = optsConnection;\n } else {\n this.connection = new TopologyService(optsConnection);\n }\n }\n\n GetESPServiceBaseURL(type: string = \"\"): Promise<string> {\n return this.connection.TpServiceQuery({}).then(response => {\n const rootProtocol = this.connection.protocol();\n const ip = this.connection.ip();\n let port = rootProtocol === \"https:\" ? \"18002\" : \"8002\";\n if (exists(\"ServiceList.TpEspServers.TpEspServer\", response)) {\n for (const item of response.ServiceList.TpEspServers.TpEspServer) {\n if (exists(\"TpBindings.TpBinding\", item)) {\n for (const binding of item.TpBindings.TpBinding) {\n if (binding.Service === type && binding.Protocol + \":\" === rootProtocol) {\n port = binding.Port;\n }\n }\n }\n }\n }\n return `${rootProtocol}//${ip}:${port}/`;\n });\n }\n\n fetchTargetClusters(): Promise<TargetCluster[]> {\n return this.connection.TpTargetClusterQuery({ Type: \"ROOT\" }).then(response => {\n this.set({\n TargetClusters: response.TpTargetClusters.TpTargetCluster\n });\n return this.CTargetClusters;\n });\n }\n\n async refresh(): Promise<this> {\n await this.fetchTargetClusters();\n return this;\n }\n\n // Monitoring ---\n\n // Events ---\n on(eventID: StateEvents, propIDorCallback: StateCallback | keyof TopologyStateEx, callback?: StatePropCallback): this {\n if (this.isCallback(propIDorCallback)) {\n switch (eventID) {\n case \"changed\":\n super.on(eventID, propIDorCallback);\n break;\n default:\n }\n } else {\n switch (eventID) {\n case \"changed\":\n super.on(eventID, propIDorCallback, callback!);\n break;\n default:\n }\n }\n this._monitor();\n return this;\n }\n}\n"],"names":["this","scopedLogger","join","promiseTimeout","createConnection","exists","WUStateID","WUUpdate","deepMixin","xml2json","interval","day","timeMonday","timeDay","timeYear","timeSunday","timeThursday","StateObject","Cache","Graph","Subgraph","Vertex","Edge","Stack","SAXStackParser","espTime2Seconds","logger","WsWorkunits.WUStateID","WsWorkunits.WorkunitsService","WsTopology.TopologyService","WsWorkunits.WUUpdate","deepMixinT","XMLNode","debounce","_store","Message","Dispatch"],"mappings":"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"}
\No newline at end of file