@hpcc-js/form 2.12.2 → 2.12.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.es6.js +2 -2
- package/dist/index.es6.js.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/package.json +5 -5
- package/src/__package__.ts +2 -2
- package/types/__package__.d.ts +2 -2
- package/types-3.4/__package__.d.ts +2 -2
package/dist/index.min.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","__extends","TypeError","String","__","this","constructor","create","styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","SuppressedError","Button","_super","_this","_inputElement","IInput","_tag","enter","domNode","element","context","append","attr","name","on","w","click","blur","value","property","change","update","text","HTMLWidget","_class","implements","CheckBox","checkboxContainer","selectOptions","length","push","forEach","val","idx","node","insertAdjacentHTML","e","vals","indexOf","insertSelectOptions","optionsArr","optionHTML","opt","html","publish","ColorInput","classed","d3Rgb","toString","bbox","getBoundingClientRect","height","Form","data","_","arguments","retVal_1","inputsForEach","input","render","callback","scope","inputs","inp","WidgetArray","content","inp2","inputsMap","retVal","calcMaxColumns","inputWidget","inputWidgetArray","values","dataArr_1","omitBlank","value_exists","undefined","v","submit","isValid","validate","checkValidation","allowEmptyRequest","some","wa","hasValue","clear","classID","allowRange","low","ret","msgArr","label","alert","join","d3Event","preventDefault","_placeholderElement","table","tbody","tfoot","btntd","_controls","default","rightJust","leftJust","target","_maxCols","rows","selectAll","each","i","element2","d3Select","inputWidget2","SVGWidget","getBBox","resize","setTimeout","disable","w2","merge","select","setFocus","exit","remove","showSubmit","row","col","sel","Input","_labelElement","checked","id","inlineLabel_exists","inlineLabel","optional","FieldForm","fields","apply","inpMap_1","map","f","__lparam","columns","key","InputRange","_rangeData","override","OnOff","_input","inner","containerRadius","offText","concat","onText","marginLeft","marginBottom","minWidth","_switch_size","minHeight","gutter","switchRadius","offFontColor","offColor","onFontColor","onColor","Radio","radioContainer","Range","high","step","Select","maxWidth_exists","maxWidth","Slider","handleLeftPos","handleRightPos","handlePath","x","xOffset","width","xScale","d3ScaleLinear","clamp","slider","lowDatetime","highDatetime","time_parser","d3TimeParse","timePattern","getTime","parentNode","cloneNode","d3Drag","event","moveStartPos","handleLeftStartPos","handleRightStartPos","moveMode","Math","abs","moveHandleTo","invert","checkChangedValue","insert","fontSize","tickHeight","handleRight","handleLeft","domain","range","padding","x_distance","tickCount","tick_text_arr","tickDateFormat","Q_parser","time_formatter","d3TimeFormat","time_segment","parsed_date","value_formatter","d3Format","tickValueFormat","value_segment","tick_value","tickText","tickTextEnter","tickOffset","lowPos","highPos","updateHandles","prevValue","pos","constrain","nearestStep","round","tags","TextArea","calcHeight","max","minHeight_exists","cols","wrap","spellcheck"],"sources":["../src/__package__.ts","../../../node_modules/tslib/tslib.es6.mjs","../../../node_modules/style-inject/dist/style-inject.es.js","../src/Button.ts","../src/CheckBox.ts","../src/ColorInput.ts","../src/Form.ts","../src/Input.ts","../src/FieldForm.ts","../src/InputRange.ts","../src/OnOff.ts","../src/Radio.ts","../src/Range.ts","../src/Select.ts","../src/Slider.ts","../src/TextArea.ts"],"sourcesContent":["export const PKG_NAME = \"@hpcc-js/form\";\nexport const PKG_VERSION = \"2.12.2\";\nexport const BUILD_VERSION = \"2.108.6\";\n","/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\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;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\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;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\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);\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); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nvar ownKeys = function(o) {\n ownKeys = Object.getOwnPropertyNames || function (o) {\n var ar = [];\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\n return ar;\n };\n return ownKeys(o);\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose, inner;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n if (async) inner = dispose;\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n var r, s = 0;\n function next() {\n while (r = env.stack.pop()) {\n try {\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\n if (r.dispose) {\n var result = r.dispose.call(r.value);\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n else s |= 1;\n }\n catch (e) {\n fail(e);\n }\n }\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\n });\n }\n return path;\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __esDecorate,\n __runInitializers,\n __propKey,\n __setFunctionName,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n __rewriteRelativeImportExtension,\n};\n","function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import { IInput } from \"@hpcc-js/api\";\nimport { HTMLWidget } from \"@hpcc-js/common\";\n\nimport \"../src/Input.css\";\n\nexport class Button extends HTMLWidget {\n _inputElement = [];\n\n constructor() {\n super();\n IInput.call(this);\n\n this._tag = \"div\";\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n const context = this;\n this._inputElement[0] = element.append(\"button\")\n .attr(\"name\", this.name())\n .on(\"click\", function (w) {\n w.click(w);\n })\n .on(\"blur\", function (w) {\n w.blur(w);\n })\n .on(\"change\", function (w) {\n context.value([context._inputElement[0].property(\"value\")]);\n w.change(w, true);\n })\n ;\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n this._inputElement[0].text(this.value());\n }\n\n // IInput ---\n name: { (): string; (_: string): Button };\n name_exists: () => boolean;\n label: { (): string; (_: string): Button };\n label_exists: () => boolean;\n value: { (): any; (_: any): Button };\n value_exists: () => boolean;\n validate: { (): string; (_: string): Button };\n validate_exists: () => boolean;\n}\nButton.prototype._class += \" form_Button\";\nButton.prototype.implements(IInput.prototype);\n","import { IInput } from \"@hpcc-js/api\";\nimport { HTMLWidget } from \"@hpcc-js/common\";\n\nimport \"../src/Input.css\";\n\nexport class CheckBox extends HTMLWidget {\n _inputElement = [];\n\n constructor() {\n super();\n IInput.call(this);\n\n this._tag = \"div\";\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n const context = this;\n\n const checkboxContainer = element.append(\"ul\");\n if (!this.selectOptions().length) {\n this.selectOptions().push(\"\"); // create an empty radio if we using .value and not selectOptions array\n }\n this.selectOptions().forEach(function (val, idx) {\n context._inputElement[idx] = checkboxContainer.append(\"li\").append(\"input\").attr(\"type\", \"checkbox\");\n context._inputElement[idx].node().insertAdjacentHTML(\"afterend\", \"<text>\" + val + \"</text>\");\n });\n\n this._inputElement.forEach(function (e, idx) {\n e.attr(\"name\", context.name());\n e.on(\"click\", function (w) {\n w.click(w);\n });\n e.on(\"blur\", function (w) {\n w.blur(w);\n });\n e.on(\"change\", function (w) {\n const vals = [];\n context._inputElement.forEach(function (d) {\n if (d.property(\"checked\")) {\n vals.push(d.property(\"value\"));\n }\n });\n context.value(vals);\n w.change(w, true);\n });\n });\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n const context = this;\n\n this._inputElement.forEach(function (e, idx) {\n e.property(\"value\", context.selectOptions()[idx]);\n if (context.value().indexOf(context.selectOptions()[idx]) !== -1 && context.value() !== \"false\") {\n e.property(\"checked\", true);\n } else {\n e.property(\"checked\", false);\n }\n });\n }\n\n insertSelectOptions(optionsArr) {\n let optionHTML = \"\";\n if (optionsArr.length > 0) {\n optionsArr.forEach(function (opt) {\n const val = (opt instanceof Array ? opt[0] : opt);\n const text = (opt instanceof Array ? (opt[1] ? opt[1] : opt[0]) : opt);\n optionHTML += \"<option value='\" + val + \"'>\" + text + \"</option>\";\n });\n } else {\n optionHTML += \"<option>selectOptions not set</option>\";\n }\n this._inputElement[0].html(optionHTML);\n }\n\n selectOptions: { (): any[]; (_: any[]): CheckBox };\n selectOptions_exists: () => boolean;\n\n // IInput ---\n name: { (): string; (_: string): CheckBox };\n name_exists: () => boolean;\n label: { (): string; (_: string): CheckBox };\n label_exists: () => boolean;\n value: { (): any; (_: any): CheckBox };\n value_exists: () => boolean;\n validate: { (): string; (_: string): CheckBox };\n validate_exists: () => boolean;\n}\nCheckBox.prototype._class += \" form_CheckBox\";\nCheckBox.prototype.implements(IInput.prototype);\n\nCheckBox.prototype.publish(\"selectOptions\", [], \"array\", \"Array of options used to fill a dropdown list\");\n","import { IInput } from \"@hpcc-js/api\";\nimport { HTMLWidget } from \"@hpcc-js/common\";\nimport { rgb as d3Rgb } from \"d3-color\";\n\nimport \"../src/Input.css\";\n\nexport class ColorInput extends HTMLWidget {\n _inputElement = [];\n\n constructor() {\n super();\n IInput.call(this);\n\n this._tag = \"div\";\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n\n const context = this;\n\n this._inputElement[0] = element.append(\"input\").attr(\"type\", \"text\");\n this._inputElement[0].classed(\"color-text\", true);\n this._inputElement[1] = element.append(\"input\").attr(\"type\", \"color\");\n\n this._inputElement.forEach(function (e, idx) {\n e.on(\"click\", function (w) {\n w.click(w);\n });\n e.on(\"blur\", function (w) {\n w.blur(w);\n });\n e.on(\"change\", function (w) {\n if (idx === 0) {\n context._inputElement[1].property(\"value\", d3Rgb(context._inputElement[0].property(\"value\")).toString());\n context.value(context._inputElement[0].property(\"value\"));\n } else {\n context._inputElement[0].property(\"value\", context._inputElement[1].property(\"value\"));\n context.value(d3Rgb(context._inputElement[1].property(\"value\")).toString());\n }\n w.change(w, true);\n });\n });\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n const context = this;\n this._inputElement.forEach(function (e) {\n e.attr(\"name\", context.name());\n });\n\n this._inputElement[0].attr(\"type\", \"text\");\n this._inputElement[1].attr(\"type\", \"color\");\n this._inputElement[0].property(\"value\", this.value());\n this._inputElement[1].property(\"value\", d3Rgb(this.value()).toString());\n\n const bbox = this._inputElement[0].node().getBoundingClientRect();\n this._inputElement[1].style(\"height\", (bbox.height - 2) + \"px\");\n\n }\n\n // IInput ---\n name: { (): string; (_: string): ColorInput };\n name_exists: () => boolean;\n label: { (): string; (_: string): ColorInput };\n label_exists: () => boolean;\n value: { (): any; (_: any): ColorInput };\n value_exists: () => boolean;\n validate: { (): string; (_: string): ColorInput };\n validate_exists: () => boolean;\n}\nColorInput.prototype._class += \" form_ColorInput\";\nColorInput.prototype.implements(IInput.prototype);\n","import { d3Event, HTMLWidget, select as d3Select, SVGWidget, Widget, WidgetArray } from \"@hpcc-js/common\";\nimport { Button } from \"./Button\";\n\nimport \"../src/Form.css\";\n\nexport class Form extends HTMLWidget {\n tbody;\n tfoot;\n btntd;\n _controls;\n _maxCols;\n\n constructor() {\n super();\n\n this._tag = \"form\";\n }\n\n data(): any;\n data(_: any): this;\n data(_?: any): any | this {\n if (!arguments.length) {\n const retVal = [];\n this.inputsForEach(function (input) {\n retVal.push(input.value());\n });\n return retVal;\n } else {\n this.inputsForEach(function (input, idx) {\n if (_ && _.length > idx) {\n input.value(_[idx]).render();\n }\n });\n }\n return this;\n }\n\n inputsForEach(callback, scope?) {\n let idx = 0;\n this.inputs().forEach(function (inp) {\n const inpArray = inp instanceof WidgetArray ? inp.content() : [inp];\n inpArray.forEach(function (inp2) {\n if (scope) {\n callback.call(scope, inp2, idx++);\n } else {\n callback(inp2, idx++);\n }\n });\n });\n }\n\n inputsMap(): { [name: string]: Widget } {\n const retVal: { [name: string]: Widget } = {};\n this.inputs().forEach(function (inp) {\n retVal[inp.name()] = inp;\n });\n return retVal;\n }\n\n calcMaxColumns() {\n let retVal = 0;\n this.inputs().forEach(function (inputWidget) {\n const inputWidgetArray = inputWidget instanceof WidgetArray ? inputWidget.content() : [inputWidget];\n if (inputWidgetArray.length > retVal) {\n retVal = inputWidgetArray.length;\n }\n });\n return retVal;\n }\n\n values(): any;\n values(_: any): this;\n values(_?: any): any | this {\n if (!arguments.length) {\n const dataArr = {};\n this.inputsForEach(function (inp) {\n const type = inp.type ? inp.type() : \"text\";\n const value = inp.value();\n if (value || !this.omitBlank()) {\n switch (type) {\n case \"checkbox\":\n dataArr[inp.name()] = inp.value_exists() ? !!inp.value() : undefined;\n break;\n case \"number\":\n const v = inp.value();\n dataArr[inp.name()] = v === \"\" ? undefined : +v;\n break;\n case \"text\":\n default:\n dataArr[inp.name()] = inp.value_exists() ? inp.value() : undefined;\n break;\n }\n }\n }, this);\n return dataArr;\n } else {\n this.inputsForEach(function (inp) {\n if (_[inp.name()]) {\n inp.value(_[inp.name()]);\n } else if (this.omitBlank()) {\n inp.value(\"\");\n }\n }, this);\n }\n return this;\n }\n\n submit() {\n let isValid = true;\n if (this.validate()) {\n isValid = this.checkValidation();\n }\n if (!this.allowEmptyRequest() && !this.inputs().some(function (w) {\n if (w._class.indexOf(\"WidgetArray\") !== -1) {\n return w.content().some(function (wa) {\n return wa.hasValue();\n });\n }\n return w.hasValue();\n })) {\n return;\n }\n this.click(isValid ? this.values() : null, null, isValid);\n }\n\n clear() {\n this.inputsForEach(function (inp) {\n switch (inp.classID()) {\n case \"form_Slider\":\n if (inp.allowRange()) {\n inp.value([inp.low(), inp.low()]).render();\n } else {\n inp.value(inp.low()).render();\n }\n break;\n case \"form_CheckBox\":\n inp.value(false).render();\n break;\n case \"form_Button\":\n /* skip */\n break;\n default:\n inp.value(undefined).render();\n break;\n }\n });\n }\n\n checkValidation() {\n let ret = true;\n const msgArr = [];\n this.inputsForEach(function (inp) {\n if (!inp.isValid()) {\n msgArr.push(\"'\" + inp.label() + \"'\" + \" value is invalid.\");\n }\n });\n if (msgArr.length > 0) {\n alert(msgArr.join(\"\\n\"));\n ret = false;\n }\n return ret;\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n element.on(\"submit\", function () {\n d3Event().preventDefault();\n });\n\n this._placeholderElement.style(\"overflow\", \"auto\");\n const table = element\n .append(\"table\")\n ;\n this.tbody = table.append(\"tbody\");\n this.tfoot = table.append(\"tfoot\");\n this.btntd = this.tfoot.append(\"tr\").append(\"td\")\n .attr(\"colspan\", 2)\n ;\n\n const context = this;\n this._controls = [\n new Button()\n .classed({ default: true })\n .value(\"Submit\")\n .on(\"click\", function () {\n context.submit();\n }, true),\n new Button()\n .value(\"Clear\")\n .on(\"click\", function () {\n context.clear();\n }, true)\n ];\n const rightJust = context.btntd\n .append(\"div\")\n .style(\"float\", \"right\")\n ;\n this._controls.forEach(function (w) {\n const leftJust = rightJust\n .append(\"span\")\n .style(\"float\", \"left\")\n ;\n w.target(leftJust.node()).render();\n });\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n this._maxCols = this.calcMaxColumns();\n\n const context = this;\n const rows = this.tbody.selectAll(\"tr\").data(this.inputs());\n rows.enter().append(\"tr\")\n .each(function (inputWidget, i) {\n const element2 = d3Select(this);\n\n const inputWidgetArray = inputWidget instanceof WidgetArray ? inputWidget.content() : [inputWidget];\n inputWidgetArray.forEach(function (inputWidget2, idx) {\n element2.append(\"td\")\n .attr(\"class\", \"prompt\")\n ;\n const input = element2.append(\"td\")\n .attr(\"class\", \"input\")\n ;\n if (idx === inputWidgetArray.length - 1 && inputWidgetArray.length < context._maxCols) {\n input.attr(\"colspan\", (context._maxCols - inputWidgetArray.length + 1) * 2);\n }\n inputWidget2.target(input.node()).render();\n if (inputWidget2 instanceof SVGWidget) {\n const bbox = inputWidget2.element().node().getBBox();\n input.style(\"height\", bbox.height + \"px\");\n inputWidget2.resize().render();\n }\n\n if (inputWidget2._inputElement instanceof Array) {\n inputWidget2._inputElement.forEach(function (e) {\n e.on(\"keyup.form\", function (w) {\n setTimeout(function () {\n\n context._controls[0].disable(!context.allowEmptyRequest() && !context.inputs().some(function (w2) {\n if (w2._class.indexOf(\"WidgetArray\") !== -1) {\n return w2.content().some(function (wa) {\n return wa.hasValue();\n });\n }\n return w2.hasValue();\n }));\n }, 100);\n });\n });\n }\n });\n })\n .merge(rows)\n .each(function (inputWidget, i) {\n const element2 = d3Select(this);\n const inputWidgetArray = inputWidget instanceof WidgetArray ? inputWidget.content() : [inputWidget];\n inputWidgetArray.forEach(function (inputWidget2, idx) {\n element2.select(\"td.prompt\")\n .text(inputWidget2.label() + \":\")\n ;\n });\n })\n ;\n rows.each(function (inputWidget, i) {\n if (i === 0 && inputWidget.setFocus) {\n inputWidget.setFocus();\n }\n });\n rows.exit()\n .each(function (inputWidget, i) {\n const inputWidgetArray = inputWidget instanceof WidgetArray ? inputWidget.content() : [inputWidget];\n inputWidgetArray.forEach(function (inputWidget2, idx) {\n inputWidget2.target(null);\n });\n })\n .remove()\n ;\n\n this.tfoot\n .style(\"display\", this.showSubmit() ? \"table-footer-group\" : \"none\")\n ;\n this.btntd\n .attr(\"colspan\", this._maxCols * 2)\n ;\n\n // Disable Submit unless there is data\n if (!this.allowEmptyRequest()) {\n setTimeout(function () {\n context._controls[0].disable(!context.allowEmptyRequest() && !context.inputs().some(function (w) {\n if (w._class.indexOf(\"WidgetArray\") !== -1) {\n return w.content().some(function (wa) {\n return wa.hasValue();\n });\n }\n return w.hasValue();\n }));\n }, 100);\n }\n\n }\n\n exit(domNode, element) {\n this.inputsForEach(input => input.target(null));\n super.exit(domNode, element);\n }\n\n click(row, col, sel) {\n }\n\n validate: { (): boolean; (_: boolean): Form };\n validate_exists: () => boolean;\n inputs: { (): any[]; (_: any[]): Form };\n inputs_exists: () => boolean;\n inputs_reset: () => void;\n showSubmit: { (): boolean; (_: boolean): Form };\n showSubmit_exists: () => boolean;\n omitBlank: { (): boolean; (_: boolean): Form };\n omitBlank_exists: () => boolean;\n allowEmptyRequest: { (): boolean; (_: boolean): Form };\n allowEmptyRequest_exists: () => boolean;\n}\nForm.prototype._class += \" form_Form\";\n\nForm.prototype.publish(\"validate\", true, \"boolean\", \"Enable/Disable input validation\");\nForm.prototype.publish(\"inputs\", [], \"widgetArray\", \"Array of input widgets\", null, { render: false });\nForm.prototype.publish(\"showSubmit\", true, \"boolean\", \"Show Submit/Cancel Controls\");\nForm.prototype.publish(\"omitBlank\", false, \"boolean\", \"Drop Blank Fields From Submit\");\nForm.prototype.publish(\"allowEmptyRequest\", false, \"boolean\", \"Allow Blank Form to be Submitted\");\n","import { IInput } from \"@hpcc-js/api\";\nimport { HTMLWidget } from \"@hpcc-js/common\";\n\nimport \"../src/Input.css\";\n\nexport class Input extends HTMLWidget {\n _inputElement = [];\n _labelElement = [];\n\n constructor() {\n super();\n IInput.call(this);\n\n this._tag = \"div\";\n }\n\n checked(_) {\n if (!arguments.length) return this._inputElement[0] ? this._inputElement[0].property(\"checked\") : false;\n if (this._inputElement[0]) {\n this._inputElement[0].property(\"checked\", _);\n }\n return this;\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n\n this._labelElement[0] = element.append(\"label\")\n .attr(\"for\", this.id() + \"_input\")\n .style(\"visibility\", this.inlineLabel_exists() ? \"visible\" : \"hidden\")\n ;\n\n const context = this;\n switch (this.type()) {\n case \"button\":\n this._inputElement[0] = element.append(\"button\")\n .attr(\"id\", this.id() + \"_input\")\n ;\n break;\n case \"textarea\":\n this._inputElement[0] = element.append(\"textarea\")\n .attr(\"id\", this.id() + \"_input\")\n ;\n break;\n default:\n this._inputElement[0] = element.append(\"input\")\n .attr(\"id\", this.id() + \"_input\")\n .attr(\"type\", this.type())\n ;\n break;\n }\n\n this._inputElement.forEach(function (e, idx) {\n e.attr(\"name\", context.name());\n e.on(\"click\", function (w: Input) {\n w.click(w);\n });\n e.on(\"blur\", function (w: Input) {\n w.blur(w);\n });\n e.on(\"change\", function (w: Input) {\n context.value([e.property(\"value\")]);\n w.change(w, true);\n });\n e.on(\"keyup\", function (w: Input) {\n context.value([e.property(\"value\")]);\n w.change(w, false);\n });\n });\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n this._labelElement[0]\n .style(\"visibility\", this.inlineLabel_exists() ? \"visible\" : \"hidden\")\n .text(this.inlineLabel())\n ;\n switch (this.type()) {\n case \"button\":\n this._inputElement[0].text(this.value());\n break;\n case \"textarea\":\n this._inputElement[0].property(\"value\", this.value());\n break;\n default:\n this._inputElement[0].attr(\"type\", this.type());\n this._inputElement[0].property(\"value\", this.value());\n break;\n }\n }\n\n type: { (): string; (_: string): Input };\n type_exists: () => boolean;\n type_default: { (): string; (_: string): Input };\n inlineLabel: { (): string; (_: string): Input };\n inlineLabel_exists: () => boolean;\n\n // IInput ---\n name: { (): string; (_: string): Input };\n name_exists: () => boolean;\n label: { (): string; (_: string): Input };\n label_exists: () => boolean;\n value: { (): any; (_: any): Input };\n value_exists: () => boolean;\n validate: { (): string; (_: string): Input };\n validate_exists: () => boolean;\n\n // IInput Events ---\n blur: (w: Input) => void;\n keyup: (w: Input) => void;\n focus: (w: Input) => void;\n click: (w: Input) => void;\n dblclick: (w: Input) => void;\n change: (w: Input, complete: boolean) => void;\n}\nInput.prototype._class += \" form_Input\";\nInput.prototype.implements(IInput.prototype);\n\nInput.prototype.publish(\"type\", \"text\", \"set\", \"Input type\", [\"number\", \"button\", \"checkbox\", \"date\", \"text\", \"textarea\", \"search\", \"email\", \"time\", \"datetime\", \"hidden\"]);\nInput.prototype.publish(\"inlineLabel\", null, \"string\", \"Input Label\", null, { optional: true });\n","import { Database } from \"@hpcc-js/common\";\nimport { Form } from \"./Form\";\nimport { Input } from \"./Input\";\n\nimport \"../src/Form.css\";\n\nexport class FieldForm extends Form {\n\n constructor() {\n super();\n\n this._tag = \"form\";\n }\n\n fields(): Database.Field[];\n fields(_: Database.Field[]): this;\n fields(_?: Database.Field[]): Database.Field[] | this {\n const retVal = super.fields.apply(this, arguments);\n if (arguments.length) {\n const inpMap = this.inputsMap();\n this.inputs(_.map(f => inpMap[f.id()] || new Input()\n .name(f.id())\n .label(f.label())\n .type(f.type())\n ));\n }\n return retVal;\n }\n\n data(): any;\n data(_: any): this;\n data(_?: any): any | this {\n if (!arguments.length) return super.data();\n super.data(_[0]);\n if (_[0]) {\n // Update input \"name\" with the __lparam ids ---\n const inputs = this.inputs();\n const __lparam = _[0][this.columns().length];\n let i = 0;\n for (const key in __lparam) {\n inputs[i].name(key);\n ++i;\n }\n }\n return this;\n }\n\n}\nFieldForm.prototype._class += \" form_FieldForm\";\n","import { IInput } from \"@hpcc-js/api\";\nimport { HTMLWidget } from \"@hpcc-js/common\";\n\nimport \"../src/Input.css\";\n\nexport class InputRange extends HTMLWidget {\n _inputElement = [];\n _labelElement = [];\n _rangeData = [];\n\n constructor() {\n super();\n IInput.call(this);\n\n this._tag = \"div\";\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n\n this._labelElement[0] = element.append(\"label\")\n .attr(\"for\", this.id() + \"_input\")\n .style(\"visibility\", this.inlineLabel_exists() ? \"visible\" : \"hidden\")\n ;\n\n this._inputElement.push(element.append(\"input\")\n .attr(\"id\", this.id() + \"_input_min\")\n .attr(\"type\", this.type()));\n this._inputElement.push(element.append(\"input\")\n .attr(\"id\", this.id() + \"_input_max\")\n .attr(\"type\", this.type()));\n\n const context = this;\n this._inputElement.forEach(function (e, idx) {\n e.attr(\"name\", context.name());\n e.on(\"click\", function (w) {\n w.click(w);\n });\n e.on(\"blur\", function (w) {\n w.blur(w);\n });\n e.on(\"change\", function (w) {\n context._rangeData[idx] = e.property(\"value\");\n context.value(context._rangeData);\n w.change(w, true);\n });\n });\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n this._labelElement[0]\n .style(\"visibility\", this.inlineLabel_exists() ? \"visible\" : \"hidden\")\n .text(this.inlineLabel())\n ;\n\n this._rangeData = this.value();\n this._inputElement.forEach(function (e, idx) {\n e\n .attr(\"type\", this.type())\n .property(\"value\", this._rangeData.length > idx ? this._rangeData[idx] : \"\");\n }, this);\n }\n\n type: { (): string; (_: string): InputRange };\n type_exists: () => boolean;\n inlineLabel: { (): string; (_: string): InputRange };\n inlineLabel_exists: () => boolean;\n value: { (): any[]; (_: any[]): InputRange };\n value_exists: () => boolean;\n\n // IInput ---\n name: { (): string; (_: string): InputRange };\n name_exists: () => boolean;\n label: { (): string; (_: string): InputRange };\n label_exists: () => boolean;\n validate: { (): string; (_: string): InputRange };\n validate_exists: () => boolean;\n}\nInputRange.prototype._class += \" form_InputRange\";\nInputRange.prototype.implements(IInput.prototype);\n\nInputRange.prototype.publish(\"type\", \"text\", \"set\", \"InputRange type\", [\"number\", \"date\", \"text\", \"time\", \"datetime\", \"hidden\"]);\nInputRange.prototype.publish(\"inlineLabel\", null, \"string\", \"InputRange Label\", null, { optional: true });\nInputRange.prototype.publish(\"value\", [\"\", \"\"], \"array\", \"Input Current Value\", null, { override: true });\n","import { IInput } from \"@hpcc-js/api\";\nimport { HTMLWidget } from \"@hpcc-js/common\";\n\nimport \"../src/OnOff.css\";\n\nexport class OnOff extends HTMLWidget {\n _inputElement = [];\n _input;\n\n constructor() {\n super();\n IInput.call(this);\n\n this._tag = \"div\";\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n element.classed(\"onoffswitch\", true);\n const context = this;\n this._input = element.append(\"input\")\n .attr(\"class\", \"onoffswitch-checkbox\")\n .attr(\"type\", \"checkbox\")\n .attr(\"id\", this.id() + \"_onOff\")\n .on(\"click\", function (w) {\n w.click(w);\n })\n .on(\"blur\", function (w) {\n w.blur(w);\n })\n .on(\"change\", function (w) {\n const vals = [];\n context._inputElement.forEach(function (d, idx) {\n if (d.property(\"checked\")) {\n vals.push(d.property(\"value\"));\n }\n });\n context.value(vals);\n w.change(w, true);\n })\n ;\n const label = element.append(\"label\")\n .attr(\"class\", \"onoffswitch-label\")\n .attr(\"for\", this.id() + \"_onOff\")\n ;\n const inner = label.append(\"div\")\n .attr(\"class\", \"onoffswitch-inner\")\n ;\n inner.append(\"div\")\n .attr(\"class\", \"onoffswitch-offText\")\n .style(\"padding-right\", (this.containerRadius() / 2) + \"px\")\n .text(this.offText())\n ;\n inner.append(\"div\")\n .attr(\"class\", \"onoffswitch-onText\")\n .style(\"padding-left\", (this.containerRadius() / 2) + \"px\")\n .style(\"width\", `calc(100% - ${(this.containerRadius() / 2)}px)`)\n .text(this.onText())\n ;\n label.append(\"div\")\n .attr(\"class\", \"onoffswitch-switch\")\n ;\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n this._input\n .attr(\"name\", this.name())\n ;\n element\n .style(\"margin-left\", this.marginLeft() + \"px\")\n .style(\"margin-bottom\", this.marginBottom() + \"px\")\n .style(\"width\", this.minWidth() + \"px\")\n ;\n\n const _switch_size = this.minHeight() - (this.gutter() * 4);\n\n element.select(\".onoffswitch-switch\")\n .style(\"height\", _switch_size + \"px\")\n .style(\"width\", _switch_size + \"px\")\n .style(\"top\", (this.gutter() * 2) + 1 + \"px\")\n .style(\"border-radius\", this.switchRadius() + \"px\")\n ;\n element.select(\".onoffswitch-inner\")\n .style(\"min-height\", this.minHeight() + \"px\")\n ;\n element.select(\".onoffswitch-label\")\n .style(\"border-radius\", this.containerRadius() + \"px\")\n ;\n element.select(\".onoffswitch-offText\")\n .style(\"color\", this.offFontColor())\n .style(\"background-color\", this.offColor())\n ;\n element.select(\".onoffswitch-onText\")\n .style(\"color\", this.onFontColor())\n .style(\"background-color\", this.onColor())\n ;\n }\n\n // IInput ---\n name: { (): string; (_: string): OnOff };\n name_exists: () => boolean;\n label: { (): string; (_: string): OnOff };\n label_exists: () => boolean;\n value: { (): any; (_: any): OnOff };\n value_exists: () => boolean;\n validate: { (): string; (_: string): OnOff };\n validate_exists: () => boolean;\n}\nOnOff.prototype._class += \" form_OnOff\";\nexport interface OnOff {\n marginLeft(): number;\n marginLeft(_: number): this;\n marginBottom(): number;\n marginBottom(_: number): this;\n minWidth(): number;\n minWidth(_: number): this;\n minHeight(): number;\n minHeight(_: number): this;\n gutter(): number;\n gutter(_: number): this;\n offText(): string;\n offText(_: string): this;\n onText(): string;\n onText(_: string): this;\n switchRadius(): number;\n switchRadius(_: number): this;\n containerRadius(): number;\n containerRadius(_: number): this;\n offColor(): string;\n offColor(_: string): this;\n onColor(): string;\n onColor(_: string): this;\n offFontColor(): string;\n offFontColor(_: string): this;\n onFontColor(): string;\n onFontColor(_: string): this;\n\n}\nOnOff.prototype.implements(IInput.prototype);\n\nOnOff.prototype.publish(\"marginLeft\", 0, \"number\", \"Margin left of OnOff\");\nOnOff.prototype.publish(\"marginBottom\", 0, \"number\", \"Margin bottom of OnOff\");\nOnOff.prototype.publish(\"minWidth\", 100, \"number\", \"Minimum width of OnOff (pixels)\");\nOnOff.prototype.publish(\"minHeight\", 20, \"number\", \"Minimum height of OnOff (pixels)\");\nOnOff.prototype.publish(\"gutter\", 1, \"number\", \"Space between switch and border of OnOff (pixels)\");\nOnOff.prototype.publish(\"onText\", \"Save\", \"string\", \"Text to display when 'ON'\");\nOnOff.prototype.publish(\"offText\", \"Properties\", \"string\", \"Text to display when 'OFF'\");\nOnOff.prototype.publish(\"switchRadius\", 10, \"number\", \"Border radius of switch (pixels)\");\nOnOff.prototype.publish(\"containerRadius\", 10, \"number\", \"Border radius of OnOff (pixels)\");\nOnOff.prototype.publish(\"onColor\", \"#2ecc71\", \"html-color\", \"Background color when 'ON'\");\nOnOff.prototype.publish(\"offColor\", \"#ecf0f1\", \"html-color\", \"Background color when 'OFF'\");\nOnOff.prototype.publish(\"onFontColor\", \"#2c3e50\", \"html-color\", \"Font color when 'ON'\");\nOnOff.prototype.publish(\"offFontColor\", \"#7f8c8d\", \"html-color\", \"Font color when 'OFF'\");\n","import { IInput } from \"@hpcc-js/api\";\nimport { HTMLWidget } from \"@hpcc-js/common\";\n\nimport \"../src/Input.css\";\n\nexport class Radio extends HTMLWidget {\n _inputElement = [];\n constructor() {\n super();\n IInput.call(this);\n\n this._tag = \"div\";\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n\n const context = this;\n\n const radioContainer = element.append(\"ul\");\n if (!this.selectOptions().length) {\n this.selectOptions().push(\"\"); // create an empty radio if we using .value and not selectOptions array\n }\n this.selectOptions().forEach(function (val, idx) {\n context._inputElement[idx] = radioContainer.append(\"li\").append(\"input\").attr(\"type\", \"radio\");\n context._inputElement[idx].node().insertAdjacentHTML(\"afterend\", \"<text>\" + val + \"</text>\");\n });\n\n this._inputElement.forEach(function (e, idx) {\n e.attr(\"name\", context.name());\n e.on(\"click\", function (w) {\n w.click(w);\n });\n e.on(\"blur\", function (w) {\n w.blur(w);\n });\n e.on(\"change\", function (w) {\n context.value([e.property(\"value\")]);\n w.change(w, true);\n });\n });\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n const context = this;\n\n this._inputElement.forEach(function (e, idx) {\n e.property(\"value\", context.selectOptions()[idx]);\n if (context.value().indexOf(context.selectOptions()[idx]) !== -1 && context.value() !== \"false\") {\n e.property(\"checked\", true);\n } else {\n e.property(\"checked\", false);\n }\n });\n }\n\n selectOptions: { (): any[]; (_: any[]): Radio };\n selectOptions_exists: () => boolean;\n\n // IInput ---\n name: { (): string; (_: string): Radio };\n name_exists: () => boolean;\n label: { (): string; (_: string): Radio };\n label_exists: () => boolean;\n value: { (): any; (_: any): Radio };\n value_exists: () => boolean;\n validate: { (): string; (_: string): Radio };\n validate_exists: () => boolean;\n}\nRadio.prototype._class += \" form_Radio\";\nRadio.prototype.implements(IInput.prototype);\n\nRadio.prototype.publish(\"selectOptions\", [], \"array\", \"Array of options used to fill a dropdown list\");\n","import { IInput } from \"@hpcc-js/api\";\nimport { HTMLWidget } from \"@hpcc-js/common\";\nimport { rgb as d3Rgb } from \"d3-color\";\n\nimport \"../src/Input.css\";\n\nexport class Range extends HTMLWidget {\n _inputElement = [];\n\n constructor() {\n super();\n\n IInput.call(this);\n\n this._tag = \"div\";\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n\n const context = this;\n\n this._inputElement[0] = element.append(\"input\").attr(\"type\", \"range\");\n this._inputElement[1] = element.append(\"input\").attr(\"type\", \"number\");\n\n this._inputElement.forEach(function (e, idx) {\n e.attr(\"name\", context.name());\n e.on(\"click\", function (w) {\n w.click(w);\n });\n e.on(\"blur\", function (w) {\n w.blur(w);\n });\n e.on(\"change\", function (w) {\n if (idx === 0) {\n context._inputElement[1].property(\"value\", d3Rgb(context._inputElement[0].property(\"value\")).toString());\n context.value(context._inputElement[0].property(\"value\"));\n } else {\n context._inputElement[0].property(\"value\", context._inputElement[1].property(\"value\"));\n context.value(d3Rgb(context._inputElement[1].property(\"value\")).toString());\n }\n w.change(w, true);\n });\n });\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n this._inputElement[0].attr(\"type\", \"range\");\n this._inputElement[0].property(\"value\", this.value());\n this._inputElement[0].attr(\"min\", this.low());\n this._inputElement[0].attr(\"max\", this.high());\n this._inputElement[0].attr(\"step\", this.step());\n this._inputElement[1].attr(\"type\", \"number\");\n this._inputElement[1].property(\"value\", this.value());\n this._inputElement[1].attr(\"min\", this.low());\n this._inputElement[1].attr(\"max\", this.high());\n this._inputElement[1].attr(\"step\", this.step());\n }\n\n insertSelectOptions(optionsArr) {\n let optionHTML = \"\";\n if (optionsArr.length > 0) {\n optionsArr.forEach(function (opt) {\n const val = (opt instanceof Array ? opt[0] : opt);\n const text = (opt instanceof Array ? (opt[1] ? opt[1] : opt[0]) : opt);\n optionHTML += \"<option value='\" + val + \"'>\" + text + \"</option>\";\n });\n } else {\n optionHTML += \"<option>selectOptions not set</option>\";\n }\n this._inputElement[0].html(optionHTML);\n }\n\n type: { (): string; (_: string): Range };\n type_exists: () => boolean;\n selectOptions: { (): any[]; (_: any[]): Range };\n selectOptions_exists: () => boolean;\n low: { (): number; (_: number): Range };\n low_exists: () => boolean;\n high: { (): number; (_: number): Range };\n high_exists: () => boolean;\n step: { (): number; (_: number): Range };\n step_exists: () => boolean;\n\n // IInput ---\n name: { (): string; (_: string): Range };\n name_exists: () => boolean;\n label: { (): string; (_: string): Range };\n label_exists: () => boolean;\n value: { (): any; (_: any): Range };\n value_exists: () => boolean;\n validate: { (): string; (_: string): Range };\n validate_exists: () => boolean;\n}\nRange.prototype._class += \" form_Range\";\nRange.prototype.implements(IInput.prototype);\n\nRange.prototype.publish(\"type\", \"text\", \"set\", \"Input type\", [\"html-color\", \"number\", \"checkbox\", \"button\", \"select\", \"textarea\", \"date\", \"text\", \"range\", \"search\", \"email\", \"time\", \"datetime\"]);\nRange.prototype.publish(\"selectOptions\", [], \"array\", \"Array of options used to fill a dropdown list\");\nRange.prototype.publish(\"low\", null, \"number\", \"Minimum value for Range input\");\nRange.prototype.publish(\"high\", null, \"number\", \"Maximum value for Range input\");\nRange.prototype.publish(\"step\", null, \"number\", \"Step value for Range input\");\n","import { IInput } from \"@hpcc-js/api\";\nimport { HTMLWidget } from \"@hpcc-js/common\";\n\nimport \"../src/Input.css\";\n\nexport class Select extends HTMLWidget {\n _inputElement = [];\n\n constructor() {\n super();\n\n IInput.call(this);\n\n this._tag = \"div\";\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n\n const context = this;\n\n this._inputElement[0] = element.append(\"select\")\n .attr(\"name\", this.name())\n .on(\"click\", function (w) {\n w.click(w);\n })\n .on(\"blur\", function (w) {\n w.blur(w);\n })\n .on(\"change\", function (w) {\n context.value([context._inputElement[0].property(\"value\")]);\n w.change(w, true);\n })\n ;\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n this.insertSelectOptions(this.selectOptions());\n this._inputElement[0]\n .property(\"value\", this.value())\n .style(\"max-width\", this.maxWidth_exists() ? this.maxWidth() + \"px\" : null)\n ;\n }\n\n insertSelectOptions(optionsArr) {\n let optionHTML = \"\";\n if (optionsArr.length > 0) {\n optionsArr.forEach(function (opt) {\n const val = (opt instanceof Array ? opt[0] : opt);\n const text = (opt instanceof Array ? (opt[1] ? opt[1] : opt[0]) : opt);\n optionHTML += \"<option value='\" + val + \"'>\" + text + \"</option>\";\n });\n } else {\n optionHTML += \"<option>selectOptions not set</option>\";\n }\n this._inputElement[0].html(optionHTML);\n }\n\n selectOptions: { (): any[]; (_: any[]): Select };\n selectOptions_exists: () => boolean;\n maxWidth: { (): number; (_: number): Select };\n maxWidth_exists: () => boolean;\n\n // IInput ---\n name: { (): string; (_: string): Select };\n name_exists: () => boolean;\n label: { (): string; (_: string): Select };\n label_exists: () => boolean;\n value: { (): any; (_: any): Select };\n value_exists: () => boolean;\n validate: { (): string; (_: string): Select };\n validate_exists: () => boolean;\n}\nSelect.prototype._class += \" form_Select\";\nSelect.prototype.implements(IInput.prototype);\n\nSelect.prototype.publish(\"selectOptions\", [], \"array\", \"Array of options used to fill a dropdown list\");\nSelect.prototype.publish(\"maxWidth\", 120, \"number\", \"Width\", null, { optional: true });\n","import { IInput } from \"@hpcc-js/api\";\nimport { d3Event, select as d3Select, SVGWidget } from \"@hpcc-js/common\";\nimport { drag as d3Drag } from \"d3-drag\";\nimport { format as d3Format } from \"d3-format\";\nimport { scaleLinear as d3ScaleLinear } from \"d3-scale\";\nimport { timeFormat as d3TimeFormat, timeParse as d3TimeParse } from \"d3-time-format\";\n\nimport \"../src/Slider.css\";\n\nexport class Slider extends SVGWidget {\n xScale;\n\n moveMode: \"both\" | \"left\" | \"right\";\n moveStartPos: number;\n\n prevValue;\n\n slider;\n\n handleLeft;\n handleLeftPos: number = 0;\n handleLeftStartPos: number;\n\n handleRight;\n handleRightPos: number = 0;\n handleRightStartPos: number;\n\n constructor() {\n super();\n IInput.call(this);\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n this.resize({ width: this.width(), height: 50 });\n\n this.xScale = d3ScaleLinear()\n .clamp(true);\n\n this.slider = element.append(\"g\")\n .attr(\"class\", \"slider\")\n ;\n if (this.low() === null && this.high() === null) {\n if (this.lowDatetime() !== null && this.highDatetime() !== null) {\n const time_parser = d3TimeParse(this.timePattern() ? this.timePattern() : \"%Q\");\n this.low(time_parser(this.lowDatetime()).getTime());\n this.high(time_parser(this.highDatetime()).getTime());\n }\n }\n this.slider.append(\"line\")\n .attr(\"class\", \"track\")\n .select(function () { return this.parentNode.appendChild(this.cloneNode(true)); })\n .attr(\"class\", \"track-inset\")\n .select(function () { return this.parentNode.appendChild(this.cloneNode(true)); })\n .attr(\"class\", \"track-overlay\")\n .call(d3Drag()\n .on(\"start\", () => {\n const event = d3Event();\n this.moveStartPos = event.x;\n this.handleLeftStartPos = this.handleLeftPos;\n this.handleRightStartPos = this.handleRightPos;\n if (this.allowRange() && this.handleLeftPos <= event.x && event.x <= this.handleRightPos) {\n this.moveMode = \"both\";\n } else if (Math.abs(event.x - this.handleLeftPos) < Math.abs(event.x - this.handleRightPos)) {\n this.moveMode = \"left\";\n } else {\n this.moveMode = \"right\";\n }\n this.moveHandleTo(event.x);\n })\n .on(\"drag\", () => {\n this.moveHandleTo(d3Event().x);\n })\n .on(\"end\", () => {\n this.moveHandleTo(d3Event().x);\n this.data([[this.xScale.invert(this.handleLeftPos), this.xScale.invert(this.handleRightPos)]]);\n this.checkChangedValue();\n }));\n\n this.slider.insert(\"g\", \".track-overlay\")\n .attr(\"class\", \"ticks\")\n .attr(\"transform\", `translate(0, ${this.fontSize() + (this.tickHeight() / 2)})`)\n ;\n\n this.handleRight = this.slider.insert(\"path\", \".track-overlay\")\n .attr(\"class\", \"handle\")\n ;\n\n this.handleLeft = this.slider.insert(\"path\", \".track-overlay\")\n .attr(\"class\", \"handle\")\n ;\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n const context = this;\n this.xScale\n .domain([this.low(), this.high()])\n .range([0, this.width() - this.padding() * 2])\n ;\n\n this.slider\n .attr(\"transform\", \"translate(\" + (-this.width() / 2 + this.padding()) + \",\" + 0 + \")\");\n\n this.slider.selectAll(\"line.track,line.track-inset,line.track-overlay\")\n .attr(\"x1\", this.xScale.range()[0])\n .attr(\"x2\", this.xScale.range()[1])\n ;\n\n const x_distance = (this.width() - (this.padding() * 2)) / (this.tickCount() - 1);\n\n const tick_text_arr = [];\n if (this.tickDateFormat() !== null && this.timePattern() !== null) {\n const Q_parser = d3TimeParse(\"%Q\");\n const time_formatter = d3TimeFormat(this.tickDateFormat());\n const time_segment = (this.high() - this.low()) / (this.tickCount() - 1);\n for (let i = 0; i < this.tickCount(); i++) {\n const date_to_parse = \"\" + (this.low() + (time_segment * i));\n const parsed_date = Q_parser(date_to_parse);\n tick_text_arr.push(time_formatter(parsed_date));\n }\n } else {\n const value_formatter = d3Format(this.tickValueFormat());\n const value_segment = (this.high() - this.low()) / (this.tickCount() - 1);\n for (let i = 0; i < this.tickCount(); i++) {\n const tick_value = this.low() + (value_segment * i);\n tick_text_arr.push(value_formatter(tick_value));\n }\n }\n const tickText = this.slider.selectAll(\"g.tick\").data(tick_text_arr);\n const tickTextEnter = tickText.enter().append(\"g\").attr(\"class\", \"tick\");\n\n tickTextEnter.append(\"text\").attr(\"class\", \"tick-text\");\n tickTextEnter.append(\"line\").attr(\"class\", \"tick-line\");\n tickTextEnter\n .merge(tickText)\n .each(function (d, i) {\n const x = x_distance * i;\n\n d3Select(this).select(\"text.tick-text\")\n .style(\"font-size\", context.fontSize())\n .attr(\"x\", function () {\n if (i === 0) return x - 2;\n return i === context.tickCount() - 1 ? x + 2 : x;\n })\n .attr(\"y\", context.tickHeight() + (context.tickOffset() / 2) + context.fontSize())\n .attr(\"text-basline\", \"text-before-edge\")\n .attr(\"text-anchor\", function () {\n if (i === 0) return \"start\";\n return i === context.tickCount() - 1 ? \"end\" : \"middle\";\n })\n .text(() => d)\n ;\n\n d3Select(this).select(\"line.tick-line\")\n .attr(\"x1\", x)\n .attr(\"x2\", x)\n .attr(\"y1\", context.tickOffset() - 1)\n .attr(\"y2\", context.tickOffset() + context.tickHeight())\n .style(\"stroke\", \"#000\")\n .style(\"stroke-width\", 1)\n ;\n });\n this.slider.node().appendChild(this.handleRight.node());\n this.slider.node().appendChild(this.handleLeft.node());\n this.handleLeftPos = this.lowPos();\n this.handleRightPos = this.highPos();\n this.updateHandles();\n this.checkChangedValue();\n }\n\n checkChangedValue() {\n if (this.prevValue !== this.value() && typeof this.prevValue !== \"undefined\") {\n this.change(this);\n }\n this.prevValue = this.value();\n }\n\n updateHandles() {\n this.handleLeft\n .attr(\"transform\", `translate(${this.handleLeftPos}, -28)`)\n .attr(\"d\", (d) => this.handlePath(\"l\"))\n ;\n this.handleRight\n .attr(\"transform\", `translate(${this.handleRightPos}, -28)`)\n .attr(\"d\", (d) => this.handlePath(\"r\"))\n ;\n }\n\n lowPos(): number {\n let data = [[this.low(), this.high()]];\n if (this.data().length > 0 && typeof this.data()[0][0] === \"number\" && typeof this.data()[0][1] === \"number\") {\n data = this.data();\n }\n return this.xScale(data[0][0]);\n }\n\n highPos(): number {\n let data = [[this.low(), this.high()]];\n if (this.data().length > 0 && typeof this.data()[0][0] === \"number\" && typeof this.data()[0][1] === \"number\") {\n data = this.data();\n }\n return this.xScale(data[0][this.allowRange() ? 1 : 0]);\n }\n\n moveHandleTo(pos) {\n if (this.allowRange()) {\n switch (this.moveMode) {\n case \"both\":\n this.handleLeftPos = this.handleLeftStartPos + pos - this.moveStartPos;\n this.handleRightPos = this.handleRightStartPos + pos - this.moveStartPos;\n break;\n case \"left\":\n this.handleLeftPos = pos;\n if (this.handleLeftPos > this.handleRightPos) {\n this.handleRightPos = this.handleLeftPos;\n }\n break;\n case \"right\":\n this.handleRightPos = pos;\n if (this.handleRightPos < this.handleLeftPos) {\n this.handleLeftPos = this.handleRightPos;\n }\n break;\n }\n } else {\n this.handleLeftPos = this.handleRightPos = pos;\n }\n\n this.handleLeftPos = this.constrain(this.handleLeftPos);\n this.handleRightPos = this.constrain(this.handleRightPos);\n this.value(this.allowRange() ? [this.xScale.invert(this.handleLeftPos), this.xScale.invert(this.handleRightPos)] : this.xScale.invert(this.handleLeftPos));\n this.updateHandles();\n }\n\n constrain(pos: number): number {\n const range = this.xScale.range();\n if (pos < range[0]) pos = range[0];\n if (pos > range[1]) pos = range[1];\n return this.nearestStep(pos);\n }\n\n nearestStep(pos) {\n const value = this.xScale.invert(pos);\n return this.xScale(this.low() + Math.round((value - this.low()) / this.step()) * this.step());\n }\n\n handlePath = function (d) {\n const e = +(d === \"r\");\n const x = e ? 1 : -1;\n const xOffset = this.allowRange() ? 0.5 : 0.0;\n const y = 18;\n let retVal = \"M\" + (xOffset * x) + \",\" + y +\n \"A6,6 0 0 \" + e + \" \" + (6.5 * x) + \",\" + (y + 6) +\n \"V\" + (2 * y - 6) +\n \"A6,6 0 0 \" + e + \" \" + (xOffset * x) + \",\" + (2 * y)\n ;\n if (this.allowRange()) {\n retVal += \"Z\" +\n \"M\" + (2.5 * x) + \",\" + (y + 8) +\n \"V\" + (2 * y - 8) +\n \"M\" + (4.5 * x) + \",\" + (y + 8) +\n \"V\" + (2 * y - 8)\n ;\n } else {\n retVal += \"M\" + (1 * x) + \",\" + (y + 8) +\n \"V\" + (2 * y - 8)\n ;\n }\n return retVal;\n };\n\n name: (_?: string) => string | this;\n change: (_: Slider) => void;\n}\nSlider.prototype._class += \" form_Slider\";\nSlider.prototype.implements(IInput.prototype);\n\nexport interface Slider {\n padding(): number;\n padding(_: number): this;\n fontSize(): number;\n fontSize(_: number): this;\n fontFamily(): string;\n fontFamily(_: string): this;\n fontColor(): string;\n fontColor(_: string): this;\n allowRange(): boolean;\n allowRange(_: boolean): this;\n low(): number;\n low(_: number): this;\n high(): number;\n high(_: number): this;\n step(): number;\n step(_: number): this;\n lowDatetime(): string;\n lowDatetime(_: string): this;\n highDatetime(): string;\n highDatetime(_: string): this;\n stepDatetime(): number;\n stepDatetime(_: number): this;\n selectionLabel(): string;\n selectionLabel(_: string): this;\n label(): string;\n label(_: string): this;\n value(): any;\n value(_: any): this;\n validate(): string;\n validate(_: string): this;\n tickCount(): number;\n tickCount(_: number): this;\n tickOffset(): number;\n tickOffset(_: number): this;\n tickHeight(): number;\n tickHeight(_: number): this;\n tickDateFormat(): string;\n tickDateFormat(_: string): this;\n tickValueFormat(): string;\n tickValueFormat(_: string): this;\n timePattern(): string;\n timePattern(_: string): this;\n\n padding_exists(): boolean;\n fontSize_exists(): boolean;\n fontFamily_exists(): boolean;\n fontColor_exists(): boolean;\n allowRange_exists(): boolean;\n low_exists(): boolean;\n step_exists(): boolean;\n high_exists(): boolean;\n selectionLabel_exists(): boolean;\n name_exists(): boolean;\n label_exists(): boolean;\n value_exists(): boolean;\n validate_exists(): boolean;\n}\n\nSlider.prototype.publish(\"padding\", 16, \"number\", \"Outer Padding\", null, { tags: [\"Basic\"] });\nSlider.prototype.publish(\"fontSize\", 12, \"number\", \"Font Size\", null, { tags: [\"Basic\"] });\nSlider.prototype.publish(\"fontFamily\", null, \"string\", \"Font Name\", null, { tags: [\"Basic\"] });\nSlider.prototype.publish(\"fontColor\", null, \"html-color\", \"Font Color\", null, { tags: [\"Basic\"] });\n\nSlider.prototype.publish(\"allowRange\", false, \"boolean\", \"Allow Range Selection\", null, { tags: [\"Intermediate\"] });\nSlider.prototype.publish(\"low\", null, \"number\", \"Low\", null, { tags: [\"Intermediate\"] });\nSlider.prototype.publish(\"high\", null, \"number\", \"High\", null, { tags: [\"Intermediate\"] });\nSlider.prototype.publish(\"step\", 10, \"number\", \"Step\", null, { tags: [\"Intermediate\"] });\nSlider.prototype.publish(\"lowDatetime\", null, \"string\", \"Low\", null, { tags: [\"Intermediate\"] });\nSlider.prototype.publish(\"highDatetime\", null, \"string\", \"High\", null, { tags: [\"Intermediate\"] });\nSlider.prototype.publish(\"selectionLabel\", \"\", \"string\", \"Selection Label\", null, { tags: [\"Intermediate\"] });\n\nSlider.prototype.publish(\"timePattern\", \"%Y-%m-%d\", \"string\");\n\nSlider.prototype.publish(\"tickCount\", 10, \"number\");\nSlider.prototype.publish(\"tickOffset\", 5, \"number\");\nSlider.prototype.publish(\"tickHeight\", 8, \"number\");\nSlider.prototype.publish(\"tickDateFormat\", null, \"string\");\nSlider.prototype.publish(\"tickValueFormat\", \",.0f\", \"string\");\n\nconst name = Slider.prototype.name;\nSlider.prototype.name = function (_: any): any {\n const retVal = name.apply(this, arguments);\n if (arguments.length) {\n const val = _ instanceof Array ? _ : [_];\n SVGWidget.prototype.columns.call(this, val);\n }\n return retVal;\n};\n\nconst value = Slider.prototype.value;\nSlider.prototype.value = function (_?: any): any {\n const retVal = value.apply(this, arguments);\n if (!arguments.length) {\n if (!this.allowRange()) {\n return SVGWidget.prototype.data.call(this)[0][0];\n }\n return SVGWidget.prototype.data.call(this)[0];\n } else {\n SVGWidget.prototype.data.call(this, [this.allowRange() ? _ : [_, _]]);\n }\n return retVal;\n};\n","import { Input } from \"./Input\";\n\nexport class TextArea extends Input {\n constructor() {\n super();\n\n this._tag = \"div\";\n this.type(\"textarea\");\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n }\n\n calcHeight() {\n return Math.max(this.minHeight_exists() ? this.minHeight() : 0, this.height());\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n this._inputElement[0]\n .attr(\"rows\", this.rows())\n .attr(\"cols\", this.cols())\n .attr(\"wrap\", this.wrap())\n .attr(\"spellcheck\", this.spellcheck())\n .style(\"height\", this.calcHeight() + \"px\")\n ;\n }\n\n rows: { (): number; (_: number): TextArea };\n rows_exists: () => boolean;\n cols: { (): number; (_: number): TextArea };\n cols_exists: () => boolean;\n wrap: { (): string; (_: string): TextArea };\n wrap_exists: () => boolean;\n minHeight: { (): number; (_: number): TextArea };\n minHeight_exists: () => boolean;\n spellcheck: { (): boolean; (_: boolean): TextArea };\n spellcheck_exists: () => boolean;\n value: { (): any; (_: any): TextArea };\n}\nTextArea.prototype._class += \" form_TextArea\";\n\nTextArea.prototype.publish(\"rows\", null, \"number\", \"Rows\", null, { optional: true });\nTextArea.prototype.publish(\"cols\", null, \"number\", \"Columns\", null, { optional: true });\nTextArea.prototype.publish(\"wrap\", \"off\", \"set\", \"Wrap\", [\"off\", \"on\"]);\nTextArea.prototype.publish(\"minHeight\", null, \"number\", \"Minimum Height\", null, { optional: true });\nTextArea.prototype.publish(\"spellcheck\", null, \"boolean\", \"Input spell checking\", { optional: true });\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","prototype","hasOwnProperty","call","__extends","TypeError","String","__","this","constructor","create","styleInject","css","ref","insertAt","document","head","getElementsByTagName","style","createElement","type","firstChild","insertBefore","appendChild","styleSheet","cssText","createTextNode","SuppressedError","Button","_super","_this","_inputElement","IInput","_tag","enter","domNode","element","context","append","attr","name","on","w","click","blur","value","property","change","update","text","HTMLWidget","_class","implements","CheckBox","checkboxContainer","selectOptions","length","push","forEach","val","idx","node","insertAdjacentHTML","e","vals","indexOf","insertSelectOptions","optionsArr","optionHTML","opt","html","publish","ColorInput","classed","d3Rgb","toString","bbox","getBoundingClientRect","height","Form","data","_","arguments","retVal_1","inputsForEach","input","render","callback","scope","inputs","inp","WidgetArray","content","inp2","inputsMap","retVal","calcMaxColumns","inputWidget","inputWidgetArray","values","dataArr_1","omitBlank","value_exists","undefined","v","submit","isValid","validate","checkValidation","allowEmptyRequest","some","wa","hasValue","clear","classID","allowRange","low","ret","msgArr","label","alert","join","d3Event","preventDefault","_placeholderElement","table","tbody","tfoot","btntd","_controls","default","rightJust","leftJust","target","_maxCols","rows","selectAll","each","i","element2","d3Select","inputWidget2","SVGWidget","getBBox","resize","setTimeout","disable","w2","merge","select","setFocus","exit","remove","showSubmit","row","col","sel","Input","_labelElement","checked","id","inlineLabel_exists","inlineLabel","optional","FieldForm","fields","apply","inpMap_1","map","f","__lparam","columns","key","InputRange","_rangeData","override","OnOff","_input","inner","containerRadius","offText","concat","onText","marginLeft","marginBottom","minWidth","_switch_size","minHeight","gutter","switchRadius","offFontColor","offColor","onFontColor","onColor","Radio","radioContainer","Range","high","step","Select","maxWidth_exists","maxWidth","Slider","handleLeftPos","handleRightPos","handlePath","x","xOffset","width","xScale","d3ScaleLinear","clamp","slider","lowDatetime","highDatetime","time_parser","d3TimeParse","timePattern","getTime","parentNode","cloneNode","d3Drag","event","moveStartPos","handleLeftStartPos","handleRightStartPos","moveMode","Math","abs","moveHandleTo","invert","checkChangedValue","insert","fontSize","tickHeight","handleRight","handleLeft","domain","range","padding","x_distance","tickCount","tick_text_arr","tickDateFormat","Q_parser","time_formatter","d3TimeFormat","time_segment","parsed_date","value_formatter","d3Format","tickValueFormat","value_segment","tick_value","tickText","tickTextEnter","tickOffset","lowPos","highPos","updateHandles","prevValue","pos","constrain","nearestStep","round","tags","TextArea","calcHeight","max","minHeight_exists","cols","wrap","spellcheck"],"sources":["../src/__package__.ts","../../../node_modules/tslib/tslib.es6.mjs","../../../node_modules/style-inject/dist/style-inject.es.js","../src/Button.ts","../src/CheckBox.ts","../src/ColorInput.ts","../src/Form.ts","../src/Input.ts","../src/FieldForm.ts","../src/InputRange.ts","../src/OnOff.ts","../src/Radio.ts","../src/Range.ts","../src/Select.ts","../src/Slider.ts","../src/TextArea.ts"],"sourcesContent":["export const PKG_NAME = \"@hpcc-js/form\";\nexport const PKG_VERSION = \"2.12.4\";\nexport const BUILD_VERSION = \"2.108.8\";\n","/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\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;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\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;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\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);\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); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nvar ownKeys = function(o) {\n ownKeys = Object.getOwnPropertyNames || function (o) {\n var ar = [];\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\n return ar;\n };\n return ownKeys(o);\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose, inner;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n if (async) inner = dispose;\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n var r, s = 0;\n function next() {\n while (r = env.stack.pop()) {\n try {\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\n if (r.dispose) {\n var result = r.dispose.call(r.value);\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n else s |= 1;\n }\n catch (e) {\n fail(e);\n }\n }\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\n });\n }\n return path;\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __esDecorate,\n __runInitializers,\n __propKey,\n __setFunctionName,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n __rewriteRelativeImportExtension,\n};\n","function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import { IInput } from \"@hpcc-js/api\";\nimport { HTMLWidget } from \"@hpcc-js/common\";\n\nimport \"../src/Input.css\";\n\nexport class Button extends HTMLWidget {\n _inputElement = [];\n\n constructor() {\n super();\n IInput.call(this);\n\n this._tag = \"div\";\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n const context = this;\n this._inputElement[0] = element.append(\"button\")\n .attr(\"name\", this.name())\n .on(\"click\", function (w) {\n w.click(w);\n })\n .on(\"blur\", function (w) {\n w.blur(w);\n })\n .on(\"change\", function (w) {\n context.value([context._inputElement[0].property(\"value\")]);\n w.change(w, true);\n })\n ;\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n this._inputElement[0].text(this.value());\n }\n\n // IInput ---\n name: { (): string; (_: string): Button };\n name_exists: () => boolean;\n label: { (): string; (_: string): Button };\n label_exists: () => boolean;\n value: { (): any; (_: any): Button };\n value_exists: () => boolean;\n validate: { (): string; (_: string): Button };\n validate_exists: () => boolean;\n}\nButton.prototype._class += \" form_Button\";\nButton.prototype.implements(IInput.prototype);\n","import { IInput } from \"@hpcc-js/api\";\nimport { HTMLWidget } from \"@hpcc-js/common\";\n\nimport \"../src/Input.css\";\n\nexport class CheckBox extends HTMLWidget {\n _inputElement = [];\n\n constructor() {\n super();\n IInput.call(this);\n\n this._tag = \"div\";\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n const context = this;\n\n const checkboxContainer = element.append(\"ul\");\n if (!this.selectOptions().length) {\n this.selectOptions().push(\"\"); // create an empty radio if we using .value and not selectOptions array\n }\n this.selectOptions().forEach(function (val, idx) {\n context._inputElement[idx] = checkboxContainer.append(\"li\").append(\"input\").attr(\"type\", \"checkbox\");\n context._inputElement[idx].node().insertAdjacentHTML(\"afterend\", \"<text>\" + val + \"</text>\");\n });\n\n this._inputElement.forEach(function (e, idx) {\n e.attr(\"name\", context.name());\n e.on(\"click\", function (w) {\n w.click(w);\n });\n e.on(\"blur\", function (w) {\n w.blur(w);\n });\n e.on(\"change\", function (w) {\n const vals = [];\n context._inputElement.forEach(function (d) {\n if (d.property(\"checked\")) {\n vals.push(d.property(\"value\"));\n }\n });\n context.value(vals);\n w.change(w, true);\n });\n });\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n const context = this;\n\n this._inputElement.forEach(function (e, idx) {\n e.property(\"value\", context.selectOptions()[idx]);\n if (context.value().indexOf(context.selectOptions()[idx]) !== -1 && context.value() !== \"false\") {\n e.property(\"checked\", true);\n } else {\n e.property(\"checked\", false);\n }\n });\n }\n\n insertSelectOptions(optionsArr) {\n let optionHTML = \"\";\n if (optionsArr.length > 0) {\n optionsArr.forEach(function (opt) {\n const val = (opt instanceof Array ? opt[0] : opt);\n const text = (opt instanceof Array ? (opt[1] ? opt[1] : opt[0]) : opt);\n optionHTML += \"<option value='\" + val + \"'>\" + text + \"</option>\";\n });\n } else {\n optionHTML += \"<option>selectOptions not set</option>\";\n }\n this._inputElement[0].html(optionHTML);\n }\n\n selectOptions: { (): any[]; (_: any[]): CheckBox };\n selectOptions_exists: () => boolean;\n\n // IInput ---\n name: { (): string; (_: string): CheckBox };\n name_exists: () => boolean;\n label: { (): string; (_: string): CheckBox };\n label_exists: () => boolean;\n value: { (): any; (_: any): CheckBox };\n value_exists: () => boolean;\n validate: { (): string; (_: string): CheckBox };\n validate_exists: () => boolean;\n}\nCheckBox.prototype._class += \" form_CheckBox\";\nCheckBox.prototype.implements(IInput.prototype);\n\nCheckBox.prototype.publish(\"selectOptions\", [], \"array\", \"Array of options used to fill a dropdown list\");\n","import { IInput } from \"@hpcc-js/api\";\nimport { HTMLWidget } from \"@hpcc-js/common\";\nimport { rgb as d3Rgb } from \"d3-color\";\n\nimport \"../src/Input.css\";\n\nexport class ColorInput extends HTMLWidget {\n _inputElement = [];\n\n constructor() {\n super();\n IInput.call(this);\n\n this._tag = \"div\";\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n\n const context = this;\n\n this._inputElement[0] = element.append(\"input\").attr(\"type\", \"text\");\n this._inputElement[0].classed(\"color-text\", true);\n this._inputElement[1] = element.append(\"input\").attr(\"type\", \"color\");\n\n this._inputElement.forEach(function (e, idx) {\n e.on(\"click\", function (w) {\n w.click(w);\n });\n e.on(\"blur\", function (w) {\n w.blur(w);\n });\n e.on(\"change\", function (w) {\n if (idx === 0) {\n context._inputElement[1].property(\"value\", d3Rgb(context._inputElement[0].property(\"value\")).toString());\n context.value(context._inputElement[0].property(\"value\"));\n } else {\n context._inputElement[0].property(\"value\", context._inputElement[1].property(\"value\"));\n context.value(d3Rgb(context._inputElement[1].property(\"value\")).toString());\n }\n w.change(w, true);\n });\n });\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n const context = this;\n this._inputElement.forEach(function (e) {\n e.attr(\"name\", context.name());\n });\n\n this._inputElement[0].attr(\"type\", \"text\");\n this._inputElement[1].attr(\"type\", \"color\");\n this._inputElement[0].property(\"value\", this.value());\n this._inputElement[1].property(\"value\", d3Rgb(this.value()).toString());\n\n const bbox = this._inputElement[0].node().getBoundingClientRect();\n this._inputElement[1].style(\"height\", (bbox.height - 2) + \"px\");\n\n }\n\n // IInput ---\n name: { (): string; (_: string): ColorInput };\n name_exists: () => boolean;\n label: { (): string; (_: string): ColorInput };\n label_exists: () => boolean;\n value: { (): any; (_: any): ColorInput };\n value_exists: () => boolean;\n validate: { (): string; (_: string): ColorInput };\n validate_exists: () => boolean;\n}\nColorInput.prototype._class += \" form_ColorInput\";\nColorInput.prototype.implements(IInput.prototype);\n","import { d3Event, HTMLWidget, select as d3Select, SVGWidget, Widget, WidgetArray } from \"@hpcc-js/common\";\nimport { Button } from \"./Button\";\n\nimport \"../src/Form.css\";\n\nexport class Form extends HTMLWidget {\n tbody;\n tfoot;\n btntd;\n _controls;\n _maxCols;\n\n constructor() {\n super();\n\n this._tag = \"form\";\n }\n\n data(): any;\n data(_: any): this;\n data(_?: any): any | this {\n if (!arguments.length) {\n const retVal = [];\n this.inputsForEach(function (input) {\n retVal.push(input.value());\n });\n return retVal;\n } else {\n this.inputsForEach(function (input, idx) {\n if (_ && _.length > idx) {\n input.value(_[idx]).render();\n }\n });\n }\n return this;\n }\n\n inputsForEach(callback, scope?) {\n let idx = 0;\n this.inputs().forEach(function (inp) {\n const inpArray = inp instanceof WidgetArray ? inp.content() : [inp];\n inpArray.forEach(function (inp2) {\n if (scope) {\n callback.call(scope, inp2, idx++);\n } else {\n callback(inp2, idx++);\n }\n });\n });\n }\n\n inputsMap(): { [name: string]: Widget } {\n const retVal: { [name: string]: Widget } = {};\n this.inputs().forEach(function (inp) {\n retVal[inp.name()] = inp;\n });\n return retVal;\n }\n\n calcMaxColumns() {\n let retVal = 0;\n this.inputs().forEach(function (inputWidget) {\n const inputWidgetArray = inputWidget instanceof WidgetArray ? inputWidget.content() : [inputWidget];\n if (inputWidgetArray.length > retVal) {\n retVal = inputWidgetArray.length;\n }\n });\n return retVal;\n }\n\n values(): any;\n values(_: any): this;\n values(_?: any): any | this {\n if (!arguments.length) {\n const dataArr = {};\n this.inputsForEach(function (inp) {\n const type = inp.type ? inp.type() : \"text\";\n const value = inp.value();\n if (value || !this.omitBlank()) {\n switch (type) {\n case \"checkbox\":\n dataArr[inp.name()] = inp.value_exists() ? !!inp.value() : undefined;\n break;\n case \"number\":\n const v = inp.value();\n dataArr[inp.name()] = v === \"\" ? undefined : +v;\n break;\n case \"text\":\n default:\n dataArr[inp.name()] = inp.value_exists() ? inp.value() : undefined;\n break;\n }\n }\n }, this);\n return dataArr;\n } else {\n this.inputsForEach(function (inp) {\n if (_[inp.name()]) {\n inp.value(_[inp.name()]);\n } else if (this.omitBlank()) {\n inp.value(\"\");\n }\n }, this);\n }\n return this;\n }\n\n submit() {\n let isValid = true;\n if (this.validate()) {\n isValid = this.checkValidation();\n }\n if (!this.allowEmptyRequest() && !this.inputs().some(function (w) {\n if (w._class.indexOf(\"WidgetArray\") !== -1) {\n return w.content().some(function (wa) {\n return wa.hasValue();\n });\n }\n return w.hasValue();\n })) {\n return;\n }\n this.click(isValid ? this.values() : null, null, isValid);\n }\n\n clear() {\n this.inputsForEach(function (inp) {\n switch (inp.classID()) {\n case \"form_Slider\":\n if (inp.allowRange()) {\n inp.value([inp.low(), inp.low()]).render();\n } else {\n inp.value(inp.low()).render();\n }\n break;\n case \"form_CheckBox\":\n inp.value(false).render();\n break;\n case \"form_Button\":\n /* skip */\n break;\n default:\n inp.value(undefined).render();\n break;\n }\n });\n }\n\n checkValidation() {\n let ret = true;\n const msgArr = [];\n this.inputsForEach(function (inp) {\n if (!inp.isValid()) {\n msgArr.push(\"'\" + inp.label() + \"'\" + \" value is invalid.\");\n }\n });\n if (msgArr.length > 0) {\n alert(msgArr.join(\"\\n\"));\n ret = false;\n }\n return ret;\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n element.on(\"submit\", function () {\n d3Event().preventDefault();\n });\n\n this._placeholderElement.style(\"overflow\", \"auto\");\n const table = element\n .append(\"table\")\n ;\n this.tbody = table.append(\"tbody\");\n this.tfoot = table.append(\"tfoot\");\n this.btntd = this.tfoot.append(\"tr\").append(\"td\")\n .attr(\"colspan\", 2)\n ;\n\n const context = this;\n this._controls = [\n new Button()\n .classed({ default: true })\n .value(\"Submit\")\n .on(\"click\", function () {\n context.submit();\n }, true),\n new Button()\n .value(\"Clear\")\n .on(\"click\", function () {\n context.clear();\n }, true)\n ];\n const rightJust = context.btntd\n .append(\"div\")\n .style(\"float\", \"right\")\n ;\n this._controls.forEach(function (w) {\n const leftJust = rightJust\n .append(\"span\")\n .style(\"float\", \"left\")\n ;\n w.target(leftJust.node()).render();\n });\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n this._maxCols = this.calcMaxColumns();\n\n const context = this;\n const rows = this.tbody.selectAll(\"tr\").data(this.inputs());\n rows.enter().append(\"tr\")\n .each(function (inputWidget, i) {\n const element2 = d3Select(this);\n\n const inputWidgetArray = inputWidget instanceof WidgetArray ? inputWidget.content() : [inputWidget];\n inputWidgetArray.forEach(function (inputWidget2, idx) {\n element2.append(\"td\")\n .attr(\"class\", \"prompt\")\n ;\n const input = element2.append(\"td\")\n .attr(\"class\", \"input\")\n ;\n if (idx === inputWidgetArray.length - 1 && inputWidgetArray.length < context._maxCols) {\n input.attr(\"colspan\", (context._maxCols - inputWidgetArray.length + 1) * 2);\n }\n inputWidget2.target(input.node()).render();\n if (inputWidget2 instanceof SVGWidget) {\n const bbox = inputWidget2.element().node().getBBox();\n input.style(\"height\", bbox.height + \"px\");\n inputWidget2.resize().render();\n }\n\n if (inputWidget2._inputElement instanceof Array) {\n inputWidget2._inputElement.forEach(function (e) {\n e.on(\"keyup.form\", function (w) {\n setTimeout(function () {\n\n context._controls[0].disable(!context.allowEmptyRequest() && !context.inputs().some(function (w2) {\n if (w2._class.indexOf(\"WidgetArray\") !== -1) {\n return w2.content().some(function (wa) {\n return wa.hasValue();\n });\n }\n return w2.hasValue();\n }));\n }, 100);\n });\n });\n }\n });\n })\n .merge(rows)\n .each(function (inputWidget, i) {\n const element2 = d3Select(this);\n const inputWidgetArray = inputWidget instanceof WidgetArray ? inputWidget.content() : [inputWidget];\n inputWidgetArray.forEach(function (inputWidget2, idx) {\n element2.select(\"td.prompt\")\n .text(inputWidget2.label() + \":\")\n ;\n });\n })\n ;\n rows.each(function (inputWidget, i) {\n if (i === 0 && inputWidget.setFocus) {\n inputWidget.setFocus();\n }\n });\n rows.exit()\n .each(function (inputWidget, i) {\n const inputWidgetArray = inputWidget instanceof WidgetArray ? inputWidget.content() : [inputWidget];\n inputWidgetArray.forEach(function (inputWidget2, idx) {\n inputWidget2.target(null);\n });\n })\n .remove()\n ;\n\n this.tfoot\n .style(\"display\", this.showSubmit() ? \"table-footer-group\" : \"none\")\n ;\n this.btntd\n .attr(\"colspan\", this._maxCols * 2)\n ;\n\n // Disable Submit unless there is data\n if (!this.allowEmptyRequest()) {\n setTimeout(function () {\n context._controls[0].disable(!context.allowEmptyRequest() && !context.inputs().some(function (w) {\n if (w._class.indexOf(\"WidgetArray\") !== -1) {\n return w.content().some(function (wa) {\n return wa.hasValue();\n });\n }\n return w.hasValue();\n }));\n }, 100);\n }\n\n }\n\n exit(domNode, element) {\n this.inputsForEach(input => input.target(null));\n super.exit(domNode, element);\n }\n\n click(row, col, sel) {\n }\n\n validate: { (): boolean; (_: boolean): Form };\n validate_exists: () => boolean;\n inputs: { (): any[]; (_: any[]): Form };\n inputs_exists: () => boolean;\n inputs_reset: () => void;\n showSubmit: { (): boolean; (_: boolean): Form };\n showSubmit_exists: () => boolean;\n omitBlank: { (): boolean; (_: boolean): Form };\n omitBlank_exists: () => boolean;\n allowEmptyRequest: { (): boolean; (_: boolean): Form };\n allowEmptyRequest_exists: () => boolean;\n}\nForm.prototype._class += \" form_Form\";\n\nForm.prototype.publish(\"validate\", true, \"boolean\", \"Enable/Disable input validation\");\nForm.prototype.publish(\"inputs\", [], \"widgetArray\", \"Array of input widgets\", null, { render: false });\nForm.prototype.publish(\"showSubmit\", true, \"boolean\", \"Show Submit/Cancel Controls\");\nForm.prototype.publish(\"omitBlank\", false, \"boolean\", \"Drop Blank Fields From Submit\");\nForm.prototype.publish(\"allowEmptyRequest\", false, \"boolean\", \"Allow Blank Form to be Submitted\");\n","import { IInput } from \"@hpcc-js/api\";\nimport { HTMLWidget } from \"@hpcc-js/common\";\n\nimport \"../src/Input.css\";\n\nexport class Input extends HTMLWidget {\n _inputElement = [];\n _labelElement = [];\n\n constructor() {\n super();\n IInput.call(this);\n\n this._tag = \"div\";\n }\n\n checked(_) {\n if (!arguments.length) return this._inputElement[0] ? this._inputElement[0].property(\"checked\") : false;\n if (this._inputElement[0]) {\n this._inputElement[0].property(\"checked\", _);\n }\n return this;\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n\n this._labelElement[0] = element.append(\"label\")\n .attr(\"for\", this.id() + \"_input\")\n .style(\"visibility\", this.inlineLabel_exists() ? \"visible\" : \"hidden\")\n ;\n\n const context = this;\n switch (this.type()) {\n case \"button\":\n this._inputElement[0] = element.append(\"button\")\n .attr(\"id\", this.id() + \"_input\")\n ;\n break;\n case \"textarea\":\n this._inputElement[0] = element.append(\"textarea\")\n .attr(\"id\", this.id() + \"_input\")\n ;\n break;\n default:\n this._inputElement[0] = element.append(\"input\")\n .attr(\"id\", this.id() + \"_input\")\n .attr(\"type\", this.type())\n ;\n break;\n }\n\n this._inputElement.forEach(function (e, idx) {\n e.attr(\"name\", context.name());\n e.on(\"click\", function (w: Input) {\n w.click(w);\n });\n e.on(\"blur\", function (w: Input) {\n w.blur(w);\n });\n e.on(\"change\", function (w: Input) {\n context.value([e.property(\"value\")]);\n w.change(w, true);\n });\n e.on(\"keyup\", function (w: Input) {\n context.value([e.property(\"value\")]);\n w.change(w, false);\n });\n });\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n this._labelElement[0]\n .style(\"visibility\", this.inlineLabel_exists() ? \"visible\" : \"hidden\")\n .text(this.inlineLabel())\n ;\n switch (this.type()) {\n case \"button\":\n this._inputElement[0].text(this.value());\n break;\n case \"textarea\":\n this._inputElement[0].property(\"value\", this.value());\n break;\n default:\n this._inputElement[0].attr(\"type\", this.type());\n this._inputElement[0].property(\"value\", this.value());\n break;\n }\n }\n\n type: { (): string; (_: string): Input };\n type_exists: () => boolean;\n type_default: { (): string; (_: string): Input };\n inlineLabel: { (): string; (_: string): Input };\n inlineLabel_exists: () => boolean;\n\n // IInput ---\n name: { (): string; (_: string): Input };\n name_exists: () => boolean;\n label: { (): string; (_: string): Input };\n label_exists: () => boolean;\n value: { (): any; (_: any): Input };\n value_exists: () => boolean;\n validate: { (): string; (_: string): Input };\n validate_exists: () => boolean;\n\n // IInput Events ---\n blur: (w: Input) => void;\n keyup: (w: Input) => void;\n focus: (w: Input) => void;\n click: (w: Input) => void;\n dblclick: (w: Input) => void;\n change: (w: Input, complete: boolean) => void;\n}\nInput.prototype._class += \" form_Input\";\nInput.prototype.implements(IInput.prototype);\n\nInput.prototype.publish(\"type\", \"text\", \"set\", \"Input type\", [\"number\", \"button\", \"checkbox\", \"date\", \"text\", \"textarea\", \"search\", \"email\", \"time\", \"datetime\", \"hidden\"]);\nInput.prototype.publish(\"inlineLabel\", null, \"string\", \"Input Label\", null, { optional: true });\n","import { Database } from \"@hpcc-js/common\";\nimport { Form } from \"./Form\";\nimport { Input } from \"./Input\";\n\nimport \"../src/Form.css\";\n\nexport class FieldForm extends Form {\n\n constructor() {\n super();\n\n this._tag = \"form\";\n }\n\n fields(): Database.Field[];\n fields(_: Database.Field[]): this;\n fields(_?: Database.Field[]): Database.Field[] | this {\n const retVal = super.fields.apply(this, arguments);\n if (arguments.length) {\n const inpMap = this.inputsMap();\n this.inputs(_.map(f => inpMap[f.id()] || new Input()\n .name(f.id())\n .label(f.label())\n .type(f.type())\n ));\n }\n return retVal;\n }\n\n data(): any;\n data(_: any): this;\n data(_?: any): any | this {\n if (!arguments.length) return super.data();\n super.data(_[0]);\n if (_[0]) {\n // Update input \"name\" with the __lparam ids ---\n const inputs = this.inputs();\n const __lparam = _[0][this.columns().length];\n let i = 0;\n for (const key in __lparam) {\n inputs[i].name(key);\n ++i;\n }\n }\n return this;\n }\n\n}\nFieldForm.prototype._class += \" form_FieldForm\";\n","import { IInput } from \"@hpcc-js/api\";\nimport { HTMLWidget } from \"@hpcc-js/common\";\n\nimport \"../src/Input.css\";\n\nexport class InputRange extends HTMLWidget {\n _inputElement = [];\n _labelElement = [];\n _rangeData = [];\n\n constructor() {\n super();\n IInput.call(this);\n\n this._tag = \"div\";\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n\n this._labelElement[0] = element.append(\"label\")\n .attr(\"for\", this.id() + \"_input\")\n .style(\"visibility\", this.inlineLabel_exists() ? \"visible\" : \"hidden\")\n ;\n\n this._inputElement.push(element.append(\"input\")\n .attr(\"id\", this.id() + \"_input_min\")\n .attr(\"type\", this.type()));\n this._inputElement.push(element.append(\"input\")\n .attr(\"id\", this.id() + \"_input_max\")\n .attr(\"type\", this.type()));\n\n const context = this;\n this._inputElement.forEach(function (e, idx) {\n e.attr(\"name\", context.name());\n e.on(\"click\", function (w) {\n w.click(w);\n });\n e.on(\"blur\", function (w) {\n w.blur(w);\n });\n e.on(\"change\", function (w) {\n context._rangeData[idx] = e.property(\"value\");\n context.value(context._rangeData);\n w.change(w, true);\n });\n });\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n this._labelElement[0]\n .style(\"visibility\", this.inlineLabel_exists() ? \"visible\" : \"hidden\")\n .text(this.inlineLabel())\n ;\n\n this._rangeData = this.value();\n this._inputElement.forEach(function (e, idx) {\n e\n .attr(\"type\", this.type())\n .property(\"value\", this._rangeData.length > idx ? this._rangeData[idx] : \"\");\n }, this);\n }\n\n type: { (): string; (_: string): InputRange };\n type_exists: () => boolean;\n inlineLabel: { (): string; (_: string): InputRange };\n inlineLabel_exists: () => boolean;\n value: { (): any[]; (_: any[]): InputRange };\n value_exists: () => boolean;\n\n // IInput ---\n name: { (): string; (_: string): InputRange };\n name_exists: () => boolean;\n label: { (): string; (_: string): InputRange };\n label_exists: () => boolean;\n validate: { (): string; (_: string): InputRange };\n validate_exists: () => boolean;\n}\nInputRange.prototype._class += \" form_InputRange\";\nInputRange.prototype.implements(IInput.prototype);\n\nInputRange.prototype.publish(\"type\", \"text\", \"set\", \"InputRange type\", [\"number\", \"date\", \"text\", \"time\", \"datetime\", \"hidden\"]);\nInputRange.prototype.publish(\"inlineLabel\", null, \"string\", \"InputRange Label\", null, { optional: true });\nInputRange.prototype.publish(\"value\", [\"\", \"\"], \"array\", \"Input Current Value\", null, { override: true });\n","import { IInput } from \"@hpcc-js/api\";\nimport { HTMLWidget } from \"@hpcc-js/common\";\n\nimport \"../src/OnOff.css\";\n\nexport class OnOff extends HTMLWidget {\n _inputElement = [];\n _input;\n\n constructor() {\n super();\n IInput.call(this);\n\n this._tag = \"div\";\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n element.classed(\"onoffswitch\", true);\n const context = this;\n this._input = element.append(\"input\")\n .attr(\"class\", \"onoffswitch-checkbox\")\n .attr(\"type\", \"checkbox\")\n .attr(\"id\", this.id() + \"_onOff\")\n .on(\"click\", function (w) {\n w.click(w);\n })\n .on(\"blur\", function (w) {\n w.blur(w);\n })\n .on(\"change\", function (w) {\n const vals = [];\n context._inputElement.forEach(function (d, idx) {\n if (d.property(\"checked\")) {\n vals.push(d.property(\"value\"));\n }\n });\n context.value(vals);\n w.change(w, true);\n })\n ;\n const label = element.append(\"label\")\n .attr(\"class\", \"onoffswitch-label\")\n .attr(\"for\", this.id() + \"_onOff\")\n ;\n const inner = label.append(\"div\")\n .attr(\"class\", \"onoffswitch-inner\")\n ;\n inner.append(\"div\")\n .attr(\"class\", \"onoffswitch-offText\")\n .style(\"padding-right\", (this.containerRadius() / 2) + \"px\")\n .text(this.offText())\n ;\n inner.append(\"div\")\n .attr(\"class\", \"onoffswitch-onText\")\n .style(\"padding-left\", (this.containerRadius() / 2) + \"px\")\n .style(\"width\", `calc(100% - ${(this.containerRadius() / 2)}px)`)\n .text(this.onText())\n ;\n label.append(\"div\")\n .attr(\"class\", \"onoffswitch-switch\")\n ;\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n this._input\n .attr(\"name\", this.name())\n ;\n element\n .style(\"margin-left\", this.marginLeft() + \"px\")\n .style(\"margin-bottom\", this.marginBottom() + \"px\")\n .style(\"width\", this.minWidth() + \"px\")\n ;\n\n const _switch_size = this.minHeight() - (this.gutter() * 4);\n\n element.select(\".onoffswitch-switch\")\n .style(\"height\", _switch_size + \"px\")\n .style(\"width\", _switch_size + \"px\")\n .style(\"top\", (this.gutter() * 2) + 1 + \"px\")\n .style(\"border-radius\", this.switchRadius() + \"px\")\n ;\n element.select(\".onoffswitch-inner\")\n .style(\"min-height\", this.minHeight() + \"px\")\n ;\n element.select(\".onoffswitch-label\")\n .style(\"border-radius\", this.containerRadius() + \"px\")\n ;\n element.select(\".onoffswitch-offText\")\n .style(\"color\", this.offFontColor())\n .style(\"background-color\", this.offColor())\n ;\n element.select(\".onoffswitch-onText\")\n .style(\"color\", this.onFontColor())\n .style(\"background-color\", this.onColor())\n ;\n }\n\n // IInput ---\n name: { (): string; (_: string): OnOff };\n name_exists: () => boolean;\n label: { (): string; (_: string): OnOff };\n label_exists: () => boolean;\n value: { (): any; (_: any): OnOff };\n value_exists: () => boolean;\n validate: { (): string; (_: string): OnOff };\n validate_exists: () => boolean;\n}\nOnOff.prototype._class += \" form_OnOff\";\nexport interface OnOff {\n marginLeft(): number;\n marginLeft(_: number): this;\n marginBottom(): number;\n marginBottom(_: number): this;\n minWidth(): number;\n minWidth(_: number): this;\n minHeight(): number;\n minHeight(_: number): this;\n gutter(): number;\n gutter(_: number): this;\n offText(): string;\n offText(_: string): this;\n onText(): string;\n onText(_: string): this;\n switchRadius(): number;\n switchRadius(_: number): this;\n containerRadius(): number;\n containerRadius(_: number): this;\n offColor(): string;\n offColor(_: string): this;\n onColor(): string;\n onColor(_: string): this;\n offFontColor(): string;\n offFontColor(_: string): this;\n onFontColor(): string;\n onFontColor(_: string): this;\n\n}\nOnOff.prototype.implements(IInput.prototype);\n\nOnOff.prototype.publish(\"marginLeft\", 0, \"number\", \"Margin left of OnOff\");\nOnOff.prototype.publish(\"marginBottom\", 0, \"number\", \"Margin bottom of OnOff\");\nOnOff.prototype.publish(\"minWidth\", 100, \"number\", \"Minimum width of OnOff (pixels)\");\nOnOff.prototype.publish(\"minHeight\", 20, \"number\", \"Minimum height of OnOff (pixels)\");\nOnOff.prototype.publish(\"gutter\", 1, \"number\", \"Space between switch and border of OnOff (pixels)\");\nOnOff.prototype.publish(\"onText\", \"Save\", \"string\", \"Text to display when 'ON'\");\nOnOff.prototype.publish(\"offText\", \"Properties\", \"string\", \"Text to display when 'OFF'\");\nOnOff.prototype.publish(\"switchRadius\", 10, \"number\", \"Border radius of switch (pixels)\");\nOnOff.prototype.publish(\"containerRadius\", 10, \"number\", \"Border radius of OnOff (pixels)\");\nOnOff.prototype.publish(\"onColor\", \"#2ecc71\", \"html-color\", \"Background color when 'ON'\");\nOnOff.prototype.publish(\"offColor\", \"#ecf0f1\", \"html-color\", \"Background color when 'OFF'\");\nOnOff.prototype.publish(\"onFontColor\", \"#2c3e50\", \"html-color\", \"Font color when 'ON'\");\nOnOff.prototype.publish(\"offFontColor\", \"#7f8c8d\", \"html-color\", \"Font color when 'OFF'\");\n","import { IInput } from \"@hpcc-js/api\";\nimport { HTMLWidget } from \"@hpcc-js/common\";\n\nimport \"../src/Input.css\";\n\nexport class Radio extends HTMLWidget {\n _inputElement = [];\n constructor() {\n super();\n IInput.call(this);\n\n this._tag = \"div\";\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n\n const context = this;\n\n const radioContainer = element.append(\"ul\");\n if (!this.selectOptions().length) {\n this.selectOptions().push(\"\"); // create an empty radio if we using .value and not selectOptions array\n }\n this.selectOptions().forEach(function (val, idx) {\n context._inputElement[idx] = radioContainer.append(\"li\").append(\"input\").attr(\"type\", \"radio\");\n context._inputElement[idx].node().insertAdjacentHTML(\"afterend\", \"<text>\" + val + \"</text>\");\n });\n\n this._inputElement.forEach(function (e, idx) {\n e.attr(\"name\", context.name());\n e.on(\"click\", function (w) {\n w.click(w);\n });\n e.on(\"blur\", function (w) {\n w.blur(w);\n });\n e.on(\"change\", function (w) {\n context.value([e.property(\"value\")]);\n w.change(w, true);\n });\n });\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n const context = this;\n\n this._inputElement.forEach(function (e, idx) {\n e.property(\"value\", context.selectOptions()[idx]);\n if (context.value().indexOf(context.selectOptions()[idx]) !== -1 && context.value() !== \"false\") {\n e.property(\"checked\", true);\n } else {\n e.property(\"checked\", false);\n }\n });\n }\n\n selectOptions: { (): any[]; (_: any[]): Radio };\n selectOptions_exists: () => boolean;\n\n // IInput ---\n name: { (): string; (_: string): Radio };\n name_exists: () => boolean;\n label: { (): string; (_: string): Radio };\n label_exists: () => boolean;\n value: { (): any; (_: any): Radio };\n value_exists: () => boolean;\n validate: { (): string; (_: string): Radio };\n validate_exists: () => boolean;\n}\nRadio.prototype._class += \" form_Radio\";\nRadio.prototype.implements(IInput.prototype);\n\nRadio.prototype.publish(\"selectOptions\", [], \"array\", \"Array of options used to fill a dropdown list\");\n","import { IInput } from \"@hpcc-js/api\";\nimport { HTMLWidget } from \"@hpcc-js/common\";\nimport { rgb as d3Rgb } from \"d3-color\";\n\nimport \"../src/Input.css\";\n\nexport class Range extends HTMLWidget {\n _inputElement = [];\n\n constructor() {\n super();\n\n IInput.call(this);\n\n this._tag = \"div\";\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n\n const context = this;\n\n this._inputElement[0] = element.append(\"input\").attr(\"type\", \"range\");\n this._inputElement[1] = element.append(\"input\").attr(\"type\", \"number\");\n\n this._inputElement.forEach(function (e, idx) {\n e.attr(\"name\", context.name());\n e.on(\"click\", function (w) {\n w.click(w);\n });\n e.on(\"blur\", function (w) {\n w.blur(w);\n });\n e.on(\"change\", function (w) {\n if (idx === 0) {\n context._inputElement[1].property(\"value\", d3Rgb(context._inputElement[0].property(\"value\")).toString());\n context.value(context._inputElement[0].property(\"value\"));\n } else {\n context._inputElement[0].property(\"value\", context._inputElement[1].property(\"value\"));\n context.value(d3Rgb(context._inputElement[1].property(\"value\")).toString());\n }\n w.change(w, true);\n });\n });\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n this._inputElement[0].attr(\"type\", \"range\");\n this._inputElement[0].property(\"value\", this.value());\n this._inputElement[0].attr(\"min\", this.low());\n this._inputElement[0].attr(\"max\", this.high());\n this._inputElement[0].attr(\"step\", this.step());\n this._inputElement[1].attr(\"type\", \"number\");\n this._inputElement[1].property(\"value\", this.value());\n this._inputElement[1].attr(\"min\", this.low());\n this._inputElement[1].attr(\"max\", this.high());\n this._inputElement[1].attr(\"step\", this.step());\n }\n\n insertSelectOptions(optionsArr) {\n let optionHTML = \"\";\n if (optionsArr.length > 0) {\n optionsArr.forEach(function (opt) {\n const val = (opt instanceof Array ? opt[0] : opt);\n const text = (opt instanceof Array ? (opt[1] ? opt[1] : opt[0]) : opt);\n optionHTML += \"<option value='\" + val + \"'>\" + text + \"</option>\";\n });\n } else {\n optionHTML += \"<option>selectOptions not set</option>\";\n }\n this._inputElement[0].html(optionHTML);\n }\n\n type: { (): string; (_: string): Range };\n type_exists: () => boolean;\n selectOptions: { (): any[]; (_: any[]): Range };\n selectOptions_exists: () => boolean;\n low: { (): number; (_: number): Range };\n low_exists: () => boolean;\n high: { (): number; (_: number): Range };\n high_exists: () => boolean;\n step: { (): number; (_: number): Range };\n step_exists: () => boolean;\n\n // IInput ---\n name: { (): string; (_: string): Range };\n name_exists: () => boolean;\n label: { (): string; (_: string): Range };\n label_exists: () => boolean;\n value: { (): any; (_: any): Range };\n value_exists: () => boolean;\n validate: { (): string; (_: string): Range };\n validate_exists: () => boolean;\n}\nRange.prototype._class += \" form_Range\";\nRange.prototype.implements(IInput.prototype);\n\nRange.prototype.publish(\"type\", \"text\", \"set\", \"Input type\", [\"html-color\", \"number\", \"checkbox\", \"button\", \"select\", \"textarea\", \"date\", \"text\", \"range\", \"search\", \"email\", \"time\", \"datetime\"]);\nRange.prototype.publish(\"selectOptions\", [], \"array\", \"Array of options used to fill a dropdown list\");\nRange.prototype.publish(\"low\", null, \"number\", \"Minimum value for Range input\");\nRange.prototype.publish(\"high\", null, \"number\", \"Maximum value for Range input\");\nRange.prototype.publish(\"step\", null, \"number\", \"Step value for Range input\");\n","import { IInput } from \"@hpcc-js/api\";\nimport { HTMLWidget } from \"@hpcc-js/common\";\n\nimport \"../src/Input.css\";\n\nexport class Select extends HTMLWidget {\n _inputElement = [];\n\n constructor() {\n super();\n\n IInput.call(this);\n\n this._tag = \"div\";\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n\n const context = this;\n\n this._inputElement[0] = element.append(\"select\")\n .attr(\"name\", this.name())\n .on(\"click\", function (w) {\n w.click(w);\n })\n .on(\"blur\", function (w) {\n w.blur(w);\n })\n .on(\"change\", function (w) {\n context.value([context._inputElement[0].property(\"value\")]);\n w.change(w, true);\n })\n ;\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n\n this.insertSelectOptions(this.selectOptions());\n this._inputElement[0]\n .property(\"value\", this.value())\n .style(\"max-width\", this.maxWidth_exists() ? this.maxWidth() + \"px\" : null)\n ;\n }\n\n insertSelectOptions(optionsArr) {\n let optionHTML = \"\";\n if (optionsArr.length > 0) {\n optionsArr.forEach(function (opt) {\n const val = (opt instanceof Array ? opt[0] : opt);\n const text = (opt instanceof Array ? (opt[1] ? opt[1] : opt[0]) : opt);\n optionHTML += \"<option value='\" + val + \"'>\" + text + \"</option>\";\n });\n } else {\n optionHTML += \"<option>selectOptions not set</option>\";\n }\n this._inputElement[0].html(optionHTML);\n }\n\n selectOptions: { (): any[]; (_: any[]): Select };\n selectOptions_exists: () => boolean;\n maxWidth: { (): number; (_: number): Select };\n maxWidth_exists: () => boolean;\n\n // IInput ---\n name: { (): string; (_: string): Select };\n name_exists: () => boolean;\n label: { (): string; (_: string): Select };\n label_exists: () => boolean;\n value: { (): any; (_: any): Select };\n value_exists: () => boolean;\n validate: { (): string; (_: string): Select };\n validate_exists: () => boolean;\n}\nSelect.prototype._class += \" form_Select\";\nSelect.prototype.implements(IInput.prototype);\n\nSelect.prototype.publish(\"selectOptions\", [], \"array\", \"Array of options used to fill a dropdown list\");\nSelect.prototype.publish(\"maxWidth\", 120, \"number\", \"Width\", null, { optional: true });\n","import { IInput } from \"@hpcc-js/api\";\nimport { d3Event, select as d3Select, SVGWidget } from \"@hpcc-js/common\";\nimport { drag as d3Drag } from \"d3-drag\";\nimport { format as d3Format } from \"d3-format\";\nimport { scaleLinear as d3ScaleLinear } from \"d3-scale\";\nimport { timeFormat as d3TimeFormat, timeParse as d3TimeParse } from \"d3-time-format\";\n\nimport \"../src/Slider.css\";\n\nexport class Slider extends SVGWidget {\n xScale;\n\n moveMode: \"both\" | \"left\" | \"right\";\n moveStartPos: number;\n\n prevValue;\n\n slider;\n\n handleLeft;\n handleLeftPos: number = 0;\n handleLeftStartPos: number;\n\n handleRight;\n handleRightPos: number = 0;\n handleRightStartPos: number;\n\n constructor() {\n super();\n IInput.call(this);\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n this.resize({ width: this.width(), height: 50 });\n\n this.xScale = d3ScaleLinear()\n .clamp(true);\n\n this.slider = element.append(\"g\")\n .attr(\"class\", \"slider\")\n ;\n if (this.low() === null && this.high() === null) {\n if (this.lowDatetime() !== null && this.highDatetime() !== null) {\n const time_parser = d3TimeParse(this.timePattern() ? this.timePattern() : \"%Q\");\n this.low(time_parser(this.lowDatetime()).getTime());\n this.high(time_parser(this.highDatetime()).getTime());\n }\n }\n this.slider.append(\"line\")\n .attr(\"class\", \"track\")\n .select(function () { return this.parentNode.appendChild(this.cloneNode(true)); })\n .attr(\"class\", \"track-inset\")\n .select(function () { return this.parentNode.appendChild(this.cloneNode(true)); })\n .attr(\"class\", \"track-overlay\")\n .call(d3Drag()\n .on(\"start\", () => {\n const event = d3Event();\n this.moveStartPos = event.x;\n this.handleLeftStartPos = this.handleLeftPos;\n this.handleRightStartPos = this.handleRightPos;\n if (this.allowRange() && this.handleLeftPos <= event.x && event.x <= this.handleRightPos) {\n this.moveMode = \"both\";\n } else if (Math.abs(event.x - this.handleLeftPos) < Math.abs(event.x - this.handleRightPos)) {\n this.moveMode = \"left\";\n } else {\n this.moveMode = \"right\";\n }\n this.moveHandleTo(event.x);\n })\n .on(\"drag\", () => {\n this.moveHandleTo(d3Event().x);\n })\n .on(\"end\", () => {\n this.moveHandleTo(d3Event().x);\n this.data([[this.xScale.invert(this.handleLeftPos), this.xScale.invert(this.handleRightPos)]]);\n this.checkChangedValue();\n }));\n\n this.slider.insert(\"g\", \".track-overlay\")\n .attr(\"class\", \"ticks\")\n .attr(\"transform\", `translate(0, ${this.fontSize() + (this.tickHeight() / 2)})`)\n ;\n\n this.handleRight = this.slider.insert(\"path\", \".track-overlay\")\n .attr(\"class\", \"handle\")\n ;\n\n this.handleLeft = this.slider.insert(\"path\", \".track-overlay\")\n .attr(\"class\", \"handle\")\n ;\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n const context = this;\n this.xScale\n .domain([this.low(), this.high()])\n .range([0, this.width() - this.padding() * 2])\n ;\n\n this.slider\n .attr(\"transform\", \"translate(\" + (-this.width() / 2 + this.padding()) + \",\" + 0 + \")\");\n\n this.slider.selectAll(\"line.track,line.track-inset,line.track-overlay\")\n .attr(\"x1\", this.xScale.range()[0])\n .attr(\"x2\", this.xScale.range()[1])\n ;\n\n const x_distance = (this.width() - (this.padding() * 2)) / (this.tickCount() - 1);\n\n const tick_text_arr = [];\n if (this.tickDateFormat() !== null && this.timePattern() !== null) {\n const Q_parser = d3TimeParse(\"%Q\");\n const time_formatter = d3TimeFormat(this.tickDateFormat());\n const time_segment = (this.high() - this.low()) / (this.tickCount() - 1);\n for (let i = 0; i < this.tickCount(); i++) {\n const date_to_parse = \"\" + (this.low() + (time_segment * i));\n const parsed_date = Q_parser(date_to_parse);\n tick_text_arr.push(time_formatter(parsed_date));\n }\n } else {\n const value_formatter = d3Format(this.tickValueFormat());\n const value_segment = (this.high() - this.low()) / (this.tickCount() - 1);\n for (let i = 0; i < this.tickCount(); i++) {\n const tick_value = this.low() + (value_segment * i);\n tick_text_arr.push(value_formatter(tick_value));\n }\n }\n const tickText = this.slider.selectAll(\"g.tick\").data(tick_text_arr);\n const tickTextEnter = tickText.enter().append(\"g\").attr(\"class\", \"tick\");\n\n tickTextEnter.append(\"text\").attr(\"class\", \"tick-text\");\n tickTextEnter.append(\"line\").attr(\"class\", \"tick-line\");\n tickTextEnter\n .merge(tickText)\n .each(function (d, i) {\n const x = x_distance * i;\n\n d3Select(this).select(\"text.tick-text\")\n .style(\"font-size\", context.fontSize())\n .attr(\"x\", function () {\n if (i === 0) return x - 2;\n return i === context.tickCount() - 1 ? x + 2 : x;\n })\n .attr(\"y\", context.tickHeight() + (context.tickOffset() / 2) + context.fontSize())\n .attr(\"text-basline\", \"text-before-edge\")\n .attr(\"text-anchor\", function () {\n if (i === 0) return \"start\";\n return i === context.tickCount() - 1 ? \"end\" : \"middle\";\n })\n .text(() => d)\n ;\n\n d3Select(this).select(\"line.tick-line\")\n .attr(\"x1\", x)\n .attr(\"x2\", x)\n .attr(\"y1\", context.tickOffset() - 1)\n .attr(\"y2\", context.tickOffset() + context.tickHeight())\n .style(\"stroke\", \"#000\")\n .style(\"stroke-width\", 1)\n ;\n });\n this.slider.node().appendChild(this.handleRight.node());\n this.slider.node().appendChild(this.handleLeft.node());\n this.handleLeftPos = this.lowPos();\n this.handleRightPos = this.highPos();\n this.updateHandles();\n this.checkChangedValue();\n }\n\n checkChangedValue() {\n if (this.prevValue !== this.value() && typeof this.prevValue !== \"undefined\") {\n this.change(this);\n }\n this.prevValue = this.value();\n }\n\n updateHandles() {\n this.handleLeft\n .attr(\"transform\", `translate(${this.handleLeftPos}, -28)`)\n .attr(\"d\", (d) => this.handlePath(\"l\"))\n ;\n this.handleRight\n .attr(\"transform\", `translate(${this.handleRightPos}, -28)`)\n .attr(\"d\", (d) => this.handlePath(\"r\"))\n ;\n }\n\n lowPos(): number {\n let data = [[this.low(), this.high()]];\n if (this.data().length > 0 && typeof this.data()[0][0] === \"number\" && typeof this.data()[0][1] === \"number\") {\n data = this.data();\n }\n return this.xScale(data[0][0]);\n }\n\n highPos(): number {\n let data = [[this.low(), this.high()]];\n if (this.data().length > 0 && typeof this.data()[0][0] === \"number\" && typeof this.data()[0][1] === \"number\") {\n data = this.data();\n }\n return this.xScale(data[0][this.allowRange() ? 1 : 0]);\n }\n\n moveHandleTo(pos) {\n if (this.allowRange()) {\n switch (this.moveMode) {\n case \"both\":\n this.handleLeftPos = this.handleLeftStartPos + pos - this.moveStartPos;\n this.handleRightPos = this.handleRightStartPos + pos - this.moveStartPos;\n break;\n case \"left\":\n this.handleLeftPos = pos;\n if (this.handleLeftPos > this.handleRightPos) {\n this.handleRightPos = this.handleLeftPos;\n }\n break;\n case \"right\":\n this.handleRightPos = pos;\n if (this.handleRightPos < this.handleLeftPos) {\n this.handleLeftPos = this.handleRightPos;\n }\n break;\n }\n } else {\n this.handleLeftPos = this.handleRightPos = pos;\n }\n\n this.handleLeftPos = this.constrain(this.handleLeftPos);\n this.handleRightPos = this.constrain(this.handleRightPos);\n this.value(this.allowRange() ? [this.xScale.invert(this.handleLeftPos), this.xScale.invert(this.handleRightPos)] : this.xScale.invert(this.handleLeftPos));\n this.updateHandles();\n }\n\n constrain(pos: number): number {\n const range = this.xScale.range();\n if (pos < range[0]) pos = range[0];\n if (pos > range[1]) pos = range[1];\n return this.nearestStep(pos);\n }\n\n nearestStep(pos) {\n const value = this.xScale.invert(pos);\n return this.xScale(this.low() + Math.round((value - this.low()) / this.step()) * this.step());\n }\n\n handlePath = function (d) {\n const e = +(d === \"r\");\n const x = e ? 1 : -1;\n const xOffset = this.allowRange() ? 0.5 : 0.0;\n const y = 18;\n let retVal = \"M\" + (xOffset * x) + \",\" + y +\n \"A6,6 0 0 \" + e + \" \" + (6.5 * x) + \",\" + (y + 6) +\n \"V\" + (2 * y - 6) +\n \"A6,6 0 0 \" + e + \" \" + (xOffset * x) + \",\" + (2 * y)\n ;\n if (this.allowRange()) {\n retVal += \"Z\" +\n \"M\" + (2.5 * x) + \",\" + (y + 8) +\n \"V\" + (2 * y - 8) +\n \"M\" + (4.5 * x) + \",\" + (y + 8) +\n \"V\" + (2 * y - 8)\n ;\n } else {\n retVal += \"M\" + (1 * x) + \",\" + (y + 8) +\n \"V\" + (2 * y - 8)\n ;\n }\n return retVal;\n };\n\n name: (_?: string) => string | this;\n change: (_: Slider) => void;\n}\nSlider.prototype._class += \" form_Slider\";\nSlider.prototype.implements(IInput.prototype);\n\nexport interface Slider {\n padding(): number;\n padding(_: number): this;\n fontSize(): number;\n fontSize(_: number): this;\n fontFamily(): string;\n fontFamily(_: string): this;\n fontColor(): string;\n fontColor(_: string): this;\n allowRange(): boolean;\n allowRange(_: boolean): this;\n low(): number;\n low(_: number): this;\n high(): number;\n high(_: number): this;\n step(): number;\n step(_: number): this;\n lowDatetime(): string;\n lowDatetime(_: string): this;\n highDatetime(): string;\n highDatetime(_: string): this;\n stepDatetime(): number;\n stepDatetime(_: number): this;\n selectionLabel(): string;\n selectionLabel(_: string): this;\n label(): string;\n label(_: string): this;\n value(): any;\n value(_: any): this;\n validate(): string;\n validate(_: string): this;\n tickCount(): number;\n tickCount(_: number): this;\n tickOffset(): number;\n tickOffset(_: number): this;\n tickHeight(): number;\n tickHeight(_: number): this;\n tickDateFormat(): string;\n tickDateFormat(_: string): this;\n tickValueFormat(): string;\n tickValueFormat(_: string): this;\n timePattern(): string;\n timePattern(_: string): this;\n\n padding_exists(): boolean;\n fontSize_exists(): boolean;\n fontFamily_exists(): boolean;\n fontColor_exists(): boolean;\n allowRange_exists(): boolean;\n low_exists(): boolean;\n step_exists(): boolean;\n high_exists(): boolean;\n selectionLabel_exists(): boolean;\n name_exists(): boolean;\n label_exists(): boolean;\n value_exists(): boolean;\n validate_exists(): boolean;\n}\n\nSlider.prototype.publish(\"padding\", 16, \"number\", \"Outer Padding\", null, { tags: [\"Basic\"] });\nSlider.prototype.publish(\"fontSize\", 12, \"number\", \"Font Size\", null, { tags: [\"Basic\"] });\nSlider.prototype.publish(\"fontFamily\", null, \"string\", \"Font Name\", null, { tags: [\"Basic\"] });\nSlider.prototype.publish(\"fontColor\", null, \"html-color\", \"Font Color\", null, { tags: [\"Basic\"] });\n\nSlider.prototype.publish(\"allowRange\", false, \"boolean\", \"Allow Range Selection\", null, { tags: [\"Intermediate\"] });\nSlider.prototype.publish(\"low\", null, \"number\", \"Low\", null, { tags: [\"Intermediate\"] });\nSlider.prototype.publish(\"high\", null, \"number\", \"High\", null, { tags: [\"Intermediate\"] });\nSlider.prototype.publish(\"step\", 10, \"number\", \"Step\", null, { tags: [\"Intermediate\"] });\nSlider.prototype.publish(\"lowDatetime\", null, \"string\", \"Low\", null, { tags: [\"Intermediate\"] });\nSlider.prototype.publish(\"highDatetime\", null, \"string\", \"High\", null, { tags: [\"Intermediate\"] });\nSlider.prototype.publish(\"selectionLabel\", \"\", \"string\", \"Selection Label\", null, { tags: [\"Intermediate\"] });\n\nSlider.prototype.publish(\"timePattern\", \"%Y-%m-%d\", \"string\");\n\nSlider.prototype.publish(\"tickCount\", 10, \"number\");\nSlider.prototype.publish(\"tickOffset\", 5, \"number\");\nSlider.prototype.publish(\"tickHeight\", 8, \"number\");\nSlider.prototype.publish(\"tickDateFormat\", null, \"string\");\nSlider.prototype.publish(\"tickValueFormat\", \",.0f\", \"string\");\n\nconst name = Slider.prototype.name;\nSlider.prototype.name = function (_: any): any {\n const retVal = name.apply(this, arguments);\n if (arguments.length) {\n const val = _ instanceof Array ? _ : [_];\n SVGWidget.prototype.columns.call(this, val);\n }\n return retVal;\n};\n\nconst value = Slider.prototype.value;\nSlider.prototype.value = function (_?: any): any {\n const retVal = value.apply(this, arguments);\n if (!arguments.length) {\n if (!this.allowRange()) {\n return SVGWidget.prototype.data.call(this)[0][0];\n }\n return SVGWidget.prototype.data.call(this)[0];\n } else {\n SVGWidget.prototype.data.call(this, [this.allowRange() ? _ : [_, _]]);\n }\n return retVal;\n};\n","import { Input } from \"./Input\";\n\nexport class TextArea extends Input {\n constructor() {\n super();\n\n this._tag = \"div\";\n this.type(\"textarea\");\n }\n\n enter(domNode, element) {\n super.enter(domNode, element);\n }\n\n calcHeight() {\n return Math.max(this.minHeight_exists() ? this.minHeight() : 0, this.height());\n }\n\n update(domNode, element) {\n super.update(domNode, element);\n this._inputElement[0]\n .attr(\"rows\", this.rows())\n .attr(\"cols\", this.cols())\n .attr(\"wrap\", this.wrap())\n .attr(\"spellcheck\", this.spellcheck())\n .style(\"height\", this.calcHeight() + \"px\")\n ;\n }\n\n rows: { (): number; (_: number): TextArea };\n rows_exists: () => boolean;\n cols: { (): number; (_: number): TextArea };\n cols_exists: () => boolean;\n wrap: { (): string; (_: string): TextArea };\n wrap_exists: () => boolean;\n minHeight: { (): number; (_: number): TextArea };\n minHeight_exists: () => boolean;\n spellcheck: { (): boolean; (_: boolean): TextArea };\n spellcheck_exists: () => boolean;\n value: { (): any; (_: any): TextArea };\n}\nTextArea.prototype._class += \" form_TextArea\";\n\nTextArea.prototype.publish(\"rows\", null, \"number\", \"Rows\", null, { optional: true });\nTextArea.prototype.publish(\"cols\", null, \"number\", \"Columns\", null, { optional: true });\nTextArea.prototype.publish(\"wrap\", \"off\", \"set\", \"Wrap\", [\"off\", \"on\"]);\nTextArea.prototype.publish(\"minHeight\", null, \"number\", \"Minimum Height\", null, { optional: true });\nTextArea.prototype.publish(\"spellcheck\", null, \"boolean\", \"Input spell checking\", { optional: true });\n"],"mappings":"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","ignoreList":[]}
|