@theseam/ui-common 0.3.5 → 0.3.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/breadcrumbs/_breadcrumbs-theme.scss +3 -3
  2. package/breadcrumbs/breadcrumbs/breadcrumbs.component.scss +10 -10
  3. package/bundles/theseam-ui-common-dynamic.umd.js +1 -1
  4. package/bundles/theseam-ui-common-dynamic.umd.js.map +1 -1
  5. package/bundles/theseam-ui-common-google-maps.umd.js +39 -7
  6. package/bundles/theseam-ui-common-google-maps.umd.js.map +1 -1
  7. package/bundles/theseam-ui-common-utils.umd.js +83 -5
  8. package/bundles/theseam-ui-common-utils.umd.js.map +1 -1
  9. package/esm2015/dynamic/evaluators/jexl-evaluator/jexl-evaluator.js +2 -2
  10. package/esm2015/google-maps/google-maps-feature-helpers.js +12 -3
  11. package/esm2015/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.js +2 -2
  12. package/esm2015/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.directive.js +1 -1
  13. package/esm2015/google-maps/google-maps.service.js +15 -5
  14. package/esm2015/utils/geo-json/coerce-feature-collection.js +1 -1
  15. package/esm2015/utils/geo-json/geo-json-to-area.js +1 -1
  16. package/esm2015/utils/geo-json/is-feature-collection.validator.js +1 -1
  17. package/esm2015/utils/geo-json/is-only-geometry-types.js +1 -1
  18. package/esm2015/utils/geo-json/is-only-geometry-types.validator.js +1 -1
  19. package/esm2015/utils/geo-json/merge-polygons.js +1 -1
  20. package/esm2015/utils/geo-json/min-max-points.validator.js +56 -0
  21. package/esm2015/utils/geo-json/no-inner-rings.validator.js +1 -1
  22. package/esm2015/utils/geo-json/no-kinks.validator.js +2 -2
  23. package/esm2015/utils/geo-json/split-multi-polygons.js +1 -1
  24. package/esm2015/utils/public-api.js +2 -1
  25. package/fesm2015/theseam-ui-common-dynamic.js +1 -1
  26. package/fesm2015/theseam-ui-common-dynamic.js.map +1 -1
  27. package/fesm2015/theseam-ui-common-google-maps.js +26 -7
  28. package/fesm2015/theseam-ui-common-google-maps.js.map +1 -1
  29. package/fesm2015/theseam-ui-common-utils.js +59 -6
  30. package/fesm2015/theseam-ui-common-utils.js.map +1 -1
  31. package/framework/top-bar/_top-bar-theme.scss +5 -5
  32. package/google-maps/google-maps-feature-helpers.d.ts +1 -0
  33. package/google-maps/theseam-ui-common-google-maps.metadata.json +1 -1
  34. package/package.json +1 -1
  35. package/utils/geo-json/min-max-points.validator.d.ts +3 -0
  36. package/utils/public-api.d.ts +1 -0
  37. package/utils/theseam-ui-common-utils.metadata.json +1 -1
@@ -1,3 +1,3 @@
1
- @import './styles/utilities';
2
-
3
- @import './breadcrumbs/breadcrumbs.component.scss';
1
+ @import './styles/utilities';
2
+
3
+ @import './breadcrumbs/breadcrumbs.component.scss';
@@ -1,10 +1,10 @@
1
- @import '../styles/utilities';
2
-
3
- seam-breadcrumbs {
4
- li {
5
- color: $breadcrumb-color;
6
- a {
7
- color: inherit;
8
- }
9
- }
10
- }
1
+ @import '../styles/utilities';
2
+
3
+ seam-breadcrumbs {
4
+ li {
5
+ color: $breadcrumb-color;
6
+ a {
7
+ color: inherit;
8
+ }
9
+ }
10
+ }
@@ -1205,7 +1205,7 @@
1205
1205
  this.type = 'jexl';
1206
1206
  this._jexl = new jexl__default["default"].Jexl();
1207
1207
  this._jexl.addTransform('date', function (val, row) { return new common.DatePipe('en-US').transform(val, 'yyyy-MM-dd h:mm aaa'); });
1208
- this._jexl.addTransform('length', function (val) { return val.length; });
1208
+ this._jexl.addTransform('length', function (val) { return val !== null && val !== undefined ? val.length : 0; });
1209
1209
  }
1210
1210
  JexlEvaluator.prototype.eval = function (value, context) {
1211
1211
  return this._jexl.eval(value.expr, context);
@@ -1 +1 @@
1
- {"version":3,"file":"theseam-ui-common-dynamic.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/ui-common/dynamic/tokens/dynamic-value-evaluator.ts","../../../projects/ui-common/dynamic/dynamic-value-helper.service.ts","../../../projects/ui-common/dynamic/tokens/api-config.ts","../../../projects/ui-common/dynamic/action/api/dynamic-action-api-errors.ts","../../../projects/ui-common/dynamic/action/api/dynamic-action-api.service.ts","../../../projects/ui-common/dynamic/action/link/dynamic-action-link.service.ts","../../../projects/ui-common/dynamic/tokens/dynamic-action.ts","../../../projects/ui-common/dynamic/action/dynamic-action-helper.service.ts","../../../projects/ui-common/dynamic/action/modal/dynamic-action-modal.service.ts","../../../projects/ui-common/dynamic/evaluators/exporters-data-evaluator/exporters-data-evaluator.ts","../../../projects/ui-common/dynamic/evaluators/jexl-evaluator/jexl-evaluator.ts","../../../projects/ui-common/dynamic/tokens/dynamic-data.ts","../../../projects/ui-common/dynamic/utils/is-action-type.ts","../../../projects/ui-common/dynamic/theseam-ui-common-dynamic.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\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\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\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\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { InjectionToken } from '@angular/core'\n\nimport { IDynamicValueEvaluator } from '../models/dynamic-value-evaluator'\n\nexport const THESEAM_DYNAMIC_VALUE_EVALUATOR = new InjectionToken<IDynamicValueEvaluator>(\n 'Evaluator that can be used for evaluating a DynamicValue'\n)\n","import { Inject, Injectable, isDevMode } from '@angular/core'\n\nimport { DynamicValue } from './models/dynamic-value'\nimport { DynamicValueEvaluatableType } from './models/dynamic-value-evaluatable-type'\nimport { IDynamicValueEvaluator } from './models/dynamic-value-evaluator'\nimport { IDynamicValueType } from './models/dynamic-value-type'\nimport { THESEAM_DYNAMIC_VALUE_EVALUATOR } from './tokens/dynamic-value-evaluator'\n\n/**\n *\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class DynamicValueHelperService {\n\n private _evaluatorMap = new Map<string, IDynamicValueEvaluator>()\n\n constructor(\n @Inject(THESEAM_DYNAMIC_VALUE_EVALUATOR) evaluators: IDynamicValueEvaluator[]\n ) {\n // Only one evaluator should exist for a type, so map them for faster lookup.\n for (const e of evaluators) {\n if (isDevMode()) {\n if (this._evaluatorMap.has(e.type)) {\n console.warn(`[DynamicValueHelperService] Multiple evaluators found for type '${e.type}'`)\n }\n }\n this._evaluatorMap.set(e.type, e)\n }\n }\n\n /**\n * Evaluate a dynamic value to its actual value.\n *\n * TODO: Improve context and return typing.\n */\n public eval<R>(value: DynamicValue<R>, context?: any): Promise<R> {\n if (this.isEvaluatableType(value, true)) {\n return this._evalEvaluatable(value, context)\n }\n\n // Use `evalSync` if `eval` isn't provided and `evalSync` is.\n if (this.isEvaluatableType(value, false)) {\n return Promise.resolve<R>(this._evalEvaluatableSync(value, context))\n }\n\n return Promise.resolve<R>(value)\n }\n\n /**\n * Evaluate a dynamic value to its actual value.\n *\n * TODO: Improve context and return typing.\n */\n public evalSync<R>(value: DynamicValue<R>, context?: any): R {\n if (this.isEvaluatableType(value, false)) {\n return this._evalEvaluatableSync(value, context)\n }\n\n return value\n }\n\n /**\n * Checks if a DynamicValue is a type that can be evaluated.\n */\n public isEvaluatableType<R>(value: DynamicValue<R>, isAsync: boolean): value is DynamicValueEvaluatableType<R> {\n if (value === undefined || value === null) {\n return false\n }\n\n if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {\n return false\n }\n\n if (!(<DynamicValueEvaluatableType<R>>value).type) {\n return false\n }\n\n if (this._evaluatorMap.has((<DynamicValueEvaluatableType<R>>value).type)) {\n return true\n }\n\n return false\n }\n\n /**\n *\n */\n private _evalEvaluatable<R>(value: DynamicValueEvaluatableType<R>, context?: any): Promise<R> {\n const evaluator = this._evaluatorMap.get(value.type)\n if (!evaluator) {\n throw Error(`[DynamicValueHelperService] Evaluator '${value ? value.type : undefined}' not found.`)\n }\n if (!evaluator.eval) {\n throw Error(`[DynamicValueHelperService] Evaluator '${value ? value.type : undefined}' does not implement 'eval()'.`)\n }\n return evaluator.eval(value, context)\n }\n\n /**\n *\n */\n private _evalEvaluatableSync<R>(value: DynamicValueEvaluatableType<R>, context?: any): R {\n const evaluator = this._evaluatorMap.get(value.type)\n if (!evaluator) {\n throw Error(`[DynamicValueHelperService] Evaluator '${value ? value.type : undefined}' not found.`)\n }\n if (!evaluator.evalSync) {\n throw Error(`[DynamicValueHelperService] Evaluator '${value ? value.type : undefined}' does not implement 'evalSync()'.`)\n }\n return evaluator.evalSync(value, context)\n }\n\n}\n","import { InjectionToken } from '@angular/core'\n\nimport { DynamicValue } from '../models/dynamic-value'\n\nexport type ApiRequestMethodHeader = string | { [name: string]: string | string[] }\n\nexport interface ApiRequestMethodHeaders {\n 'GET'?: ApiRequestMethodHeader\n 'POST'?: ApiRequestMethodHeader\n 'PUT'?: ApiRequestMethodHeader\n 'PATCH'?: ApiRequestMethodHeader\n 'DELETE'?: ApiRequestMethodHeader\n}\n\nexport const VALID_REQUEST_METHODS: (keyof ApiRequestMethodHeaders)[] = [\n 'GET',\n 'POST',\n 'PUT',\n 'PATCH',\n 'DELETE'\n]\n\nexport function isValidRequestMethod(method: string): method is keyof ApiRequestMethodHeaders {\n return VALID_REQUEST_METHODS.indexOf(method as any) !== -1\n}\n\nexport interface IApiConfig {\n /**\n * Used to identify this config if multiple are provided.\n */\n id?: string\n\n /**\n * Base url that non-absolute endpoints will be appended to.\n */\n url?: DynamicValue<string>\n\n /**\n * Default headers to add to requests.\n */\n methodHeaders?: ApiRequestMethodHeaders\n}\n\nexport const THESEAM_API_CONFIG_DEFAULT: IApiConfig = {\n url: '/',\n\n methodHeaders: {\n 'GET': { 'Content-Type': 'application/json' },\n 'POST': { 'Content-Type': 'application/json' },\n 'PUT': { 'Content-Type': 'application/json' },\n 'PATCH': { 'Content-Type': 'application/json' },\n 'DELETE': { 'Content-Type': 'application/json' }\n }\n}\n\n// export const THESEAM_API_CONFIG = new InjectionToken<IApiConfig[]>(\n// 'Api config token, config options for actions that make an api request in library'\n// )\n\nexport const THESEAM_API_CONFIG = new InjectionToken<IApiConfig[]>(\n 'Api config token, config options for actions that make an api request in library', {\n providedIn: 'root',\n factory: () => [ THESEAM_API_CONFIG_DEFAULT ]\n })\n","\nexport function dynamicActionApiNotSupportedError(): Error {\n return Error(`Dynamic action type 'api' not supported.`)\n}\n","import { HttpClient, HttpHeaders } from '@angular/common/http'\nimport { Inject, Injectable, isDevMode, Optional } from '@angular/core'\nimport { from } from 'rxjs'\nimport { switchMap } from 'rxjs/operators'\n\nimport { isAbsoluteUrl } from '@theseam/ui-common/utils'\n\nimport { DynamicValueHelperService } from '../../dynamic-value-helper.service'\nimport { DynamicActionUiButtonDef } from '../../models/dynamic-action-ui-button-def'\nimport { DynamicValue } from '../../models/dynamic-value'\nimport { ApiRequestMethodHeader, ApiRequestMethodHeaders, IApiConfig, isValidRequestMethod, THESEAM_API_CONFIG, VALID_REQUEST_METHODS } from '../../tokens/api-config'\n\nimport { DynamicActionApi } from './dynamic-action-api'\nimport { DynamicActionApiDef } from './dynamic-action-api-def'\nimport { dynamicActionApiNotSupportedError } from './dynamic-action-api-errors'\n\n/**\n * Handles execution of api call actions.\n *\n * This action service should be generic enough to\n * work with any url endpoint, but will be biased towards our api where needed.\n */\n@Injectable()\nexport class DynamicActionApiService implements DynamicActionApi {\n\n readonly type = 'api'\n\n label = 'Api Action'\n\n constructor(\n private _valueHelper: DynamicValueHelperService,\n @Optional() private _http: HttpClient,\n @Optional() @Inject(THESEAM_API_CONFIG) private _configs: IApiConfig[]\n ) { }\n\n public exec(args: DynamicActionApiDef, context: any): Promise<any> {\n if (!this._isSupported()) {\n throw dynamicActionApiNotSupportedError()\n }\n\n return from(this._getExecInfo(args, context)).pipe(\n switchMap(x => this._http.request<any>(x.method, x.url, x.options)),\n ).toPromise()\n }\n\n public async getUiProps(args: DynamicActionApiDef, context: any): Promise<DynamicActionUiButtonDef> {\n return {\n _actionDef: args,\n triggerType: 'click'\n }\n }\n\n private async _getExecInfo(args: DynamicActionApiDef, context?: any) {\n const method = args.method || 'GET'\n\n const url = await this._getUrl(args, context)\n if (url === null) {\n throw new Error('[DynamicActionApiService] Unable to determine url.')\n }\n\n const body = await this._getBody(args, context)\n const params = await this._getParams(args, context)\n\n const headers = await this._getHeaders(args, context)\n\n const result = {\n url,\n method,\n options: { body, params, headers }\n }\n\n return result\n }\n\n private async _getUrl(args: DynamicActionApiDef, context?: any): Promise<string | null> {\n const config = this._getApiConfig(args)\n\n let endpoint = ''\n if (args.endpoint) {\n endpoint = await this._valueHelper.eval(args.endpoint, context)\n }\n\n if (isAbsoluteUrl(endpoint)) {\n return endpoint\n }\n\n if (config && config.url !== undefined && config.url !== null) {\n const url = await this._valueHelper.eval(config.url, context)\n if (typeof url === 'string') {\n const addSlash = endpoint.length > 0 && endpoint.indexOf('/') !== 0 &&\n url.length > 0 && url.indexOf('/') !== 0\n return `${config.url}${addSlash ? '/' : ''}${endpoint}`\n }\n }\n\n return null\n }\n\n private _getApiConfig(args: DynamicActionApiDef): IApiConfig | null {\n const configs = this._configs || []\n\n if (args.id === undefined || args.id === null) {\n return configs.length > 0 ? configs[0] : null\n }\n\n for (const config of configs) {\n if (config.id && config.id === args.id) {\n return config\n }\n }\n\n return null\n }\n\n private async _getBody(args: DynamicActionApiDef, context?: any) {\n if (args.body !== undefined && args.body !== null) {\n return await this._valueHelper.eval(args.body, context)\n }\n\n return undefined\n }\n\n private async _getParams(args: DynamicActionApiDef, context?: any) {\n if (args.params !== undefined && args.params !== null) {\n return await this._valueHelper.eval(args.params, context)\n }\n\n return undefined\n }\n\n private async _getHeaders(args: DynamicActionApiDef, context?: any): Promise<HttpHeaders> {\n let headers: ApiRequestMethodHeaders = {}\n\n const config = this._getApiConfig(args)\n\n // TODO: Make sure I am handling these values correctly. This could be\n // much cleaner. Tests with all the js primitives, null, undefined, and\n // dynamic action types should be written.\n\n if (config && config.methodHeaders) {\n const method = typeof args.method === 'string'\n ? args.method.trim().toUpperCase()\n : 'GET' // Default method type\n\n if (!isValidRequestMethod(method)) {\n throw Error(`API request method must be one of ${VALID_REQUEST_METHODS}`)\n }\n\n const h = method && config.methodHeaders[method]\n if (h !== undefined && h !== null) {\n headers = await this._evalHeaders(h, context) as any\n }\n }\n\n // TODO: Cleanup messing multiple level logic\n const argHeaders = args.headers\n if (argHeaders !== undefined && argHeaders !== null) {\n if (typeof argHeaders === 'string') {\n headers = argHeaders as any\n } else {\n const _val = this._valueHelper.eval(argHeaders as any, context) // TODO: Fix argHeaders type\n if (typeof _val === 'string') {\n headers = _val\n } else {\n const keys = Object.keys(argHeaders)\n for (const key of keys) {\n if (!isValidRequestMethod(key)) {\n throw Error(`API request method must be one of ${VALID_REQUEST_METHODS}`)\n }\n\n // TODO: Fix types\n const value = (argHeaders as any)[key]\n if (typeof value === 'string') {\n headers[key] = value\n } else if (Array.isArray(value)) {\n headers[key] = await Promise.all(value.map(async v => await this._valueHelper.eval(v, context))) as any\n } else {\n headers[key] = await this._valueHelper.eval(value, context)\n }\n }\n }\n }\n }\n\n return new HttpHeaders(headers as any)\n }\n\n private async _evalHeaders(\n headers: string | DynamicValue<string> | { [name: string]: DynamicValue<string> | DynamicValue<string>[] },\n context?: any\n ) {\n let res: string | { [name: string]: string | string[] } = {}\n\n // TODO: Cleanup messing multiple level logic\n if (typeof headers === 'string') {\n res = headers\n } else {\n const _val = this._valueHelper.eval(headers as any, context) // TODO: Fix argHeaders type\n if (typeof _val === 'string') {\n res = _val\n } else {\n const keys = Object.keys(headers)\n for (const key of keys) {\n const value = (headers as any)[key]\n if (typeof value === 'string') {\n res[key] = value\n } else if (Array.isArray(value)) {\n res[key] = await Promise.all(value.map(async v => await this._valueHelper.eval(v, context)))\n } else {\n res[key] = await this._valueHelper.eval(value, context)\n }\n }\n }\n }\n return res\n }\n\n private _isSupported(): boolean {\n if (isDevMode()) {\n console.warn(`[DynamicActionApiService] Action is not ready for production yet.`)\n } else {\n // I don't expect this to be attempted in prod before completed, so I am just adding a console warning.\n console.warn(`Unable to complete request. Contact support for assistance.`)\n }\n\n if (!this._http) {\n if (isDevMode()) {\n console.warn(`[DynamicActionApiService] Endpoint actions require \\`HttpClientModule\\` to be imported.`)\n }\n return false\n }\n return true\n }\n}\n","import { Injectable } from '@angular/core'\n\nimport { DynamicValueHelperService } from '../../dynamic-value-helper.service'\nimport { DynamicActionUiAnchorDef } from '../../models/dynamic-action-ui-anchor-def'\nimport { DynamicActionLink } from './dynamic-action-link'\nimport { DynamicActionLinkDef } from './dynamic-action-link-def'\n\n/**\n * Handles execution of link actions.\n */\n@Injectable()\nexport class DynamicActionLinkService implements DynamicActionLink {\n\n readonly type = 'link'\n\n label = 'Link Action'\n\n constructor(\n private _valueHandler: DynamicValueHelperService\n ) { }\n\n // exec?: (args: IDynamicActionDef<T>, context: D) => Observable<R>\n\n // execSync?: (args: IDynamicActionDef<T>, context: D) => R\n\n public async getUiProps(args: DynamicActionLinkDef, context: any): Promise<DynamicActionUiAnchorDef> {\n const link: string = await this._valueHandler.eval(args.link)\n const external: boolean = !!(await this._valueHandler.eval(args.external))\n const asset: boolean = !!(await this._valueHandler.eval(args.asset))\n const target: string | undefined = await this._valueHandler.eval(args.target)\n const queryParams: { [k: string]: any } | undefined = await this._valueHandler.eval(args.queryParams)\n\n const def: DynamicActionUiAnchorDef = {\n _actionDef: args,\n triggerType: asset ? 'link-asset' : external ? 'link-external' : 'link',\n linkUrl: link,\n // blockClickExpr: { type: 'jexl', expr: 'event.button == 0 && event.ctrlKey == true ? true : false' }\n }\n\n if (target) {\n if (!def.linkExtras) { def.linkExtras = {} }\n def.linkExtras.target = target\n }\n\n if (queryParams) {\n if (!def.linkExtras) { def.linkExtras = {} }\n def.linkExtras.queryParams = queryParams\n }\n\n return def\n }\n}\n","import { InjectionToken } from '@angular/core'\n\nimport { DynamicAction } from '../models/dynamic-action'\n\nexport const THESEAM_DYNAMIC_ACTION = new InjectionToken<DynamicAction<string>>(\n 'Action for executing a DynamicAction'\n)\n","import { Inject, Injectable, isDevMode, Optional } from '@angular/core'\nimport { map } from 'rxjs/operators'\n\nimport { SeamConfirmDialogService } from '@theseam/ui-common/confirm-dialog'\nimport { ThemeTypes } from '@theseam/ui-common/models'\nimport { hasProperty } from '@theseam/ui-common/utils'\n\nimport { DynamicValueHelperService } from '../dynamic-value-helper.service'\nimport { DynamicAction } from '../models/dynamic-action'\nimport { DynamicActionDef } from '../models/dynamic-action-def'\nimport { DynamicActionUiDef } from '../models/dynamic-action-ui-def'\nimport { THESEAM_DYNAMIC_ACTION } from '../tokens/dynamic-action'\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DynamicActionHelperService {\n\n private _actionMap = new Map<string, DynamicAction<string>>()\n\n constructor(\n private _valueHelper: DynamicValueHelperService,\n // TODO: Consider making the action confirm more generic\n @Optional() private _confirmDialog?: SeamConfirmDialogService,\n @Optional() @Inject(THESEAM_DYNAMIC_ACTION) actions?: DynamicAction<string>[]\n ) {\n // Only one evaluator should exist for a type, so map them for faster lookup.\n for (const e of (actions || [])) {\n if (isDevMode()) {\n if (this._actionMap.has(e.type)) {\n console.warn(`[DynamicActionHelperService] Multiple actions found for type '${e.type}'`)\n }\n }\n this._actionMap.set(e.type, e)\n }\n }\n\n /**\n * Execute an async action.\n *\n * TODO: Improve context and return typing.\n */\n public async exec<T extends string>(actionDef: DynamicActionDef<T>, context?: any): Promise<DynamicActionDef<T>> {\n const action = this._actionMap.get(actionDef.type)\n if (!action) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' not found.`)\n }\n if (!action.exec) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' does not implement 'exec()'.`)\n }\n\n if (await this.requiresConfirmation(actionDef, context)) {\n const confirmed = await this.promptConfirmation(actionDef, context)\n if (!confirmed) {\n // TODO: Decide a good way to handle a rejected confirm.\n return 'rejected' as any\n }\n }\n\n return await action.exec(actionDef, context)\n }\n\n /**\n * Execute an action.\n *\n * TODO: Improve context and return typing.\n */\n public execSync<T extends string>(actionDef: DynamicActionDef<T>, context?: any): DynamicActionDef<T> {\n const action = this._actionMap.get(actionDef.type)\n if (!action) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' not found.`)\n }\n if (!action.execSync) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' does not implement 'execSync()'.`)\n }\n\n return action.execSync(actionDef, context)\n }\n\n /**\n * Get UI props for action.\n *\n * TODO: Improve context and return typing.\n */\n public getUiProps<T extends string>(actionDef: DynamicActionDef<T>, context?: any): Promise<DynamicActionUiDef> {\n const action = this._actionMap.get(actionDef.type)\n if (!action) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' not found.`)\n }\n if (!action.getUiProps) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' does not implement 'getUiProps()'.`)\n }\n\n return action.getUiProps(actionDef, context)\n }\n\n /**\n * Checks if a DynamicActionDef is a type that can be executed.\n */\n public isExecutableType<T extends string>(value: DynamicActionDef<T>, isAsync: boolean): boolean {\n if (value === undefined || value === null) {\n return false\n }\n\n const action = this._actionMap.get(value.type)\n if (!action) {\n return false\n }\n\n if (isAsync && !action.exec) {\n return false\n }\n if (!isAsync && !action.execSync) {\n return false\n }\n\n return true\n }\n\n public async requiresConfirmation<T extends string>(actionDef: DynamicActionDef<T>, context?: any): Promise<boolean> {\n if (!hasProperty(actionDef, 'confirmDef')) {\n return false\n }\n\n if (hasProperty(actionDef.confirmDef, 'disabled')) {\n return !(await this._valueHelper.eval(actionDef.confirmDef.disabled, context))\n }\n\n return true\n }\n\n public requiresConfirmationSync<T extends string>(actionDef: DynamicActionDef<T>, context?: any): boolean {\n if (!hasProperty(actionDef, 'confirmDef')) {\n return false\n }\n\n if (hasProperty(actionDef.confirmDef, 'disabled')) {\n const disabled = !this._valueHelper.evalSync(actionDef.confirmDef.disabled, context)\n if (!disabled) {\n throw Error(\n `[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' can't open ` +\n `confirm dialog. Only async actions support confirm dialog.`\n )\n }\n return false\n }\n\n throw Error(\n `[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' can't open ` +\n `confirm dialog. Only async actions support confirm dialog.`\n )\n }\n\n public async promptConfirmation<T extends string>(actionDef: DynamicActionDef<T>, context?: any): Promise<boolean> {\n if (!this._confirmDialog) {\n throw Error(\n `[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' can't open ` +\n `confirm dialog. Confirm dialog service is not injected.`\n )\n }\n\n const confirmDef = actionDef.confirmDef\n if (!confirmDef) {\n throw Error(\n `[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' can't open ` +\n `confirm dialog. Confirm def is not defined.`\n )\n }\n\n let message: string | undefined\n if (hasProperty(confirmDef, 'message')) {\n message = await this._valueHelper.eval(confirmDef.message, context)\n }\n let alert: string | { message: string, type: ThemeTypes } | undefined\n if (hasProperty(confirmDef, 'alert')) {\n alert = await this._valueHelper.eval(confirmDef.alert, context)\n }\n\n const modalDef = this._confirmDialog.open(message, alert)\n return modalDef.afterClosed().pipe(\n map(v => v === 'confirm')\n ).toPromise()\n }\n\n}\n","import { ComponentType } from '@angular/cdk/portal'\nimport { Injectable, Injector } from '@angular/core'\nimport { Observable, of } from 'rxjs'\nimport { switchMap } from 'rxjs/operators'\n\nimport { Modal, ModalConfig, ModalRef } from '@theseam/ui-common/modal'\n\nimport { DynamicValueHelperService } from '../../dynamic-value-helper.service'\nimport { DynamicActionUiButtonDef } from '../../models/dynamic-action-ui-button-def'\nimport { DynamicActionHelperService } from '../dynamic-action-helper.service'\nimport { DynamicActionModal } from './dynamic-action-modal'\nimport { DynamicActionModalDef } from './dynamic-action-modal-def'\n\n/**\n * Handles execution of modal actions.\n */\n@Injectable()\nexport class DynamicActionModalService implements DynamicActionModal {\n\n readonly type = 'modal'\n\n label = 'Modal Action'\n\n constructor(\n private _valueHelper: DynamicValueHelperService,\n private _modal: Modal,\n private _injector: Injector\n ) { }\n\n async exec(args: DynamicActionModalDef, context: any): Promise<any> {\n const component = this._getComponent(args, context)\n const data = this._getData(args, context)\n\n return this._openModal(component, data).pipe(\n switchMap(modalRef => modalRef.afterClosed().pipe(\n switchMap(result => {\n const resultAction = this._getModalResultAction(args, result)\n\n // TODO: Come up with a way to pass data from previous action\n if (resultAction) {\n const dynamicActionHelper = this._getDynamicActionHelper()\n return dynamicActionHelper.exec(resultAction, context)\n }\n return of(result)\n })\n ))\n ).toPromise()\n }\n\n // execSync?: (args: IDynamicActionDef<T>, context: D) => R\n\n public async getUiProps(args: DynamicActionModalDef, context: any): Promise<DynamicActionUiButtonDef> {\n return {\n _actionDef: args,\n triggerType: 'click'\n }\n }\n\n /**\n * Get the dynamic action helper from the injector. The injector order causes\n * the dynamic action helper to not be in the injector when the constructor is\n * called.\n */\n private _getDynamicActionHelper(): DynamicActionHelperService {\n return this._injector.get(DynamicActionHelperService)\n }\n\n private _getComponent(args: DynamicActionModalDef, context: any): string | ComponentType<{}> | undefined {\n let component = args && args.component\n if (component) {\n component = this._valueHelper.evalSync(component, context)\n }\n return component\n }\n\n private _getData(args: DynamicActionModalDef, context: any): any | undefined {\n let data = args && args.data\n if (data) {\n data = this._valueHelper.evalSync(data, context)\n }\n return data\n }\n\n private _getModalResultAction(args: DynamicActionModalDef, result: any) {\n if (args.resultActions && args.resultActions[result]) {\n return args.resultActions[result]\n }\n }\n\n private _openModal(modal: any, data?: any): Observable<ModalRef<any>> {\n // TODO: Replace with JSON valid config from input def model\n const config: ModalConfig = {\n data,\n modalSize: 'lg'\n }\n\n if (typeof modal === 'string') {\n return this._modal.openFromLazyComponent(modal, config)\n } else {\n return of(this._modal.openFromComponent(modal, config))\n }\n }\n}\n","import { Injectable, Injector } from '@angular/core'\n\nimport { IDataExporter, THESEAM_DATA_EXPORTER } from '@theseam/ui-common/data-exporter'\nimport { notNullOrUndefined } from '@theseam/ui-common/utils'\nimport { IDynamicValueEvaluator } from '../../models/dynamic-value-evaluator'\n\nimport { IExportersDataValue } from './exporters-data-value'\n\n@Injectable()\nexport class ExportersDataEvaluator implements IDynamicValueEvaluator<'exporters-data'> {\n\n public readonly type = 'exporters-data'\n\n constructor(\n private _injector: Injector\n ) { }\n\n public async eval(value: IExportersDataValue<IDataExporter[]>, context?: any): Promise<{ exporters: IDataExporter[] }> {\n return this.evalSync(value, context)\n }\n\n public evalSync(value: IExportersDataValue<IDataExporter[]>, context?: any): { exporters: IDataExporter[] } {\n return {\n exporters: this._exporters(value.exporters || [])\n }\n }\n\n private _exporters(exporters: string[]) {\n const dataExporters: IDataExporter[] = (<any>this._injector.get(THESEAM_DATA_EXPORTER) || []) as IDataExporter[]\n return exporters\n .map(e => dataExporters.find(de => de.name === e))\n .filter(notNullOrUndefined)\n }\n\n}\n","// NOTE: ng-packagr ignores the \"types\" and \"typeRoots\" settings in tsconfig.\n// Unless there is a way to make it stop ignoring those settings, tripple slash\n// reference to a `.d.ts` file was the only way I could stop the missing types\n// error.\n// tslint:disable-next-line: no-reference\n// /// <reference path=\"./jexl.d.ts\" />\n// /// <reference path=\"../../../../../custom_types/jexl/index.d.ts\" />\n\nimport { DatePipe } from '@angular/common'\nimport { Injectable } from '@angular/core'\n\n// @ts-ignore: Missing types\nimport jexl from 'jexl'\n\nimport { IDynamicValueEvaluator } from '../../models/dynamic-value-evaluator'\n\nimport { IJexlValue } from './jexl-value'\n\n@Injectable()\nexport class JexlEvaluator implements IDynamicValueEvaluator<'jexl'> {\n\n public readonly type = 'jexl'\n\n private readonly _jexl = new jexl.Jexl()\n\n constructor() {\n this._jexl.addTransform('date', (val: any, row: any) => new DatePipe('en-US').transform(val, 'yyyy-MM-dd h:mm aaa'))\n this._jexl.addTransform('length', (val: any) => val.length)\n }\n\n public eval<R>(value: IJexlValue<R>, context?: any): Promise<R> {\n return this._jexl.eval(value.expr, context)\n }\n\n public evalSync<R>(value: IJexlValue<R>, context?: any): R {\n return this._jexl.evalSync(value.expr, context)\n }\n\n}\n","import { InjectionToken } from '@angular/core'\n\nexport const THESEAM_DYNAMIC_DATA = new InjectionToken<any>('THESEAM_DYNAMIC_DATA')\n","import { DynamicActionDef } from '../models/dynamic-action-def'\n\nexport function isActionType<T extends string>(\n action: DynamicActionDef<T>,\n typeName: T\n): action is DynamicActionDef<T> {\n return action.type === typeName\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["InjectionToken","isDevMode","Injectable","Inject","from","switchMap","isAbsoluteUrl","HttpHeaders","HttpClient","Optional","hasProperty","map","SeamConfirmDialogService","of","Modal","Injector","THESEAM_DATA_EXPORTER","notNullOrUndefined","jexl","DatePipe"],"mappings":"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"}
1
+ {"version":3,"file":"theseam-ui-common-dynamic.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../projects/ui-common/dynamic/tokens/dynamic-value-evaluator.ts","../../../projects/ui-common/dynamic/dynamic-value-helper.service.ts","../../../projects/ui-common/dynamic/tokens/api-config.ts","../../../projects/ui-common/dynamic/action/api/dynamic-action-api-errors.ts","../../../projects/ui-common/dynamic/action/api/dynamic-action-api.service.ts","../../../projects/ui-common/dynamic/action/link/dynamic-action-link.service.ts","../../../projects/ui-common/dynamic/tokens/dynamic-action.ts","../../../projects/ui-common/dynamic/action/dynamic-action-helper.service.ts","../../../projects/ui-common/dynamic/action/modal/dynamic-action-modal.service.ts","../../../projects/ui-common/dynamic/evaluators/exporters-data-evaluator/exporters-data-evaluator.ts","../../../projects/ui-common/dynamic/evaluators/jexl-evaluator/jexl-evaluator.ts","../../../projects/ui-common/dynamic/tokens/dynamic-data.ts","../../../projects/ui-common/dynamic/utils/is-action-type.ts","../../../projects/ui-common/dynamic/theseam-ui-common-dynamic.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\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\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\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\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { InjectionToken } from '@angular/core'\n\nimport { IDynamicValueEvaluator } from '../models/dynamic-value-evaluator'\n\nexport const THESEAM_DYNAMIC_VALUE_EVALUATOR = new InjectionToken<IDynamicValueEvaluator>(\n 'Evaluator that can be used for evaluating a DynamicValue'\n)\n","import { Inject, Injectable, isDevMode } from '@angular/core'\n\nimport { DynamicValue } from './models/dynamic-value'\nimport { DynamicValueEvaluatableType } from './models/dynamic-value-evaluatable-type'\nimport { IDynamicValueEvaluator } from './models/dynamic-value-evaluator'\nimport { IDynamicValueType } from './models/dynamic-value-type'\nimport { THESEAM_DYNAMIC_VALUE_EVALUATOR } from './tokens/dynamic-value-evaluator'\n\n/**\n *\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class DynamicValueHelperService {\n\n private _evaluatorMap = new Map<string, IDynamicValueEvaluator>()\n\n constructor(\n @Inject(THESEAM_DYNAMIC_VALUE_EVALUATOR) evaluators: IDynamicValueEvaluator[]\n ) {\n // Only one evaluator should exist for a type, so map them for faster lookup.\n for (const e of evaluators) {\n if (isDevMode()) {\n if (this._evaluatorMap.has(e.type)) {\n console.warn(`[DynamicValueHelperService] Multiple evaluators found for type '${e.type}'`)\n }\n }\n this._evaluatorMap.set(e.type, e)\n }\n }\n\n /**\n * Evaluate a dynamic value to its actual value.\n *\n * TODO: Improve context and return typing.\n */\n public eval<R>(value: DynamicValue<R>, context?: any): Promise<R> {\n if (this.isEvaluatableType(value, true)) {\n return this._evalEvaluatable(value, context)\n }\n\n // Use `evalSync` if `eval` isn't provided and `evalSync` is.\n if (this.isEvaluatableType(value, false)) {\n return Promise.resolve<R>(this._evalEvaluatableSync(value, context))\n }\n\n return Promise.resolve<R>(value)\n }\n\n /**\n * Evaluate a dynamic value to its actual value.\n *\n * TODO: Improve context and return typing.\n */\n public evalSync<R>(value: DynamicValue<R>, context?: any): R {\n if (this.isEvaluatableType(value, false)) {\n return this._evalEvaluatableSync(value, context)\n }\n\n return value\n }\n\n /**\n * Checks if a DynamicValue is a type that can be evaluated.\n */\n public isEvaluatableType<R>(value: DynamicValue<R>, isAsync: boolean): value is DynamicValueEvaluatableType<R> {\n if (value === undefined || value === null) {\n return false\n }\n\n if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {\n return false\n }\n\n if (!(<DynamicValueEvaluatableType<R>>value).type) {\n return false\n }\n\n if (this._evaluatorMap.has((<DynamicValueEvaluatableType<R>>value).type)) {\n return true\n }\n\n return false\n }\n\n /**\n *\n */\n private _evalEvaluatable<R>(value: DynamicValueEvaluatableType<R>, context?: any): Promise<R> {\n const evaluator = this._evaluatorMap.get(value.type)\n if (!evaluator) {\n throw Error(`[DynamicValueHelperService] Evaluator '${value ? value.type : undefined}' not found.`)\n }\n if (!evaluator.eval) {\n throw Error(`[DynamicValueHelperService] Evaluator '${value ? value.type : undefined}' does not implement 'eval()'.`)\n }\n return evaluator.eval(value, context)\n }\n\n /**\n *\n */\n private _evalEvaluatableSync<R>(value: DynamicValueEvaluatableType<R>, context?: any): R {\n const evaluator = this._evaluatorMap.get(value.type)\n if (!evaluator) {\n throw Error(`[DynamicValueHelperService] Evaluator '${value ? value.type : undefined}' not found.`)\n }\n if (!evaluator.evalSync) {\n throw Error(`[DynamicValueHelperService] Evaluator '${value ? value.type : undefined}' does not implement 'evalSync()'.`)\n }\n return evaluator.evalSync(value, context)\n }\n\n}\n","import { InjectionToken } from '@angular/core'\n\nimport { DynamicValue } from '../models/dynamic-value'\n\nexport type ApiRequestMethodHeader = string | { [name: string]: string | string[] }\n\nexport interface ApiRequestMethodHeaders {\n 'GET'?: ApiRequestMethodHeader\n 'POST'?: ApiRequestMethodHeader\n 'PUT'?: ApiRequestMethodHeader\n 'PATCH'?: ApiRequestMethodHeader\n 'DELETE'?: ApiRequestMethodHeader\n}\n\nexport const VALID_REQUEST_METHODS: (keyof ApiRequestMethodHeaders)[] = [\n 'GET',\n 'POST',\n 'PUT',\n 'PATCH',\n 'DELETE'\n]\n\nexport function isValidRequestMethod(method: string): method is keyof ApiRequestMethodHeaders {\n return VALID_REQUEST_METHODS.indexOf(method as any) !== -1\n}\n\nexport interface IApiConfig {\n /**\n * Used to identify this config if multiple are provided.\n */\n id?: string\n\n /**\n * Base url that non-absolute endpoints will be appended to.\n */\n url?: DynamicValue<string>\n\n /**\n * Default headers to add to requests.\n */\n methodHeaders?: ApiRequestMethodHeaders\n}\n\nexport const THESEAM_API_CONFIG_DEFAULT: IApiConfig = {\n url: '/',\n\n methodHeaders: {\n 'GET': { 'Content-Type': 'application/json' },\n 'POST': { 'Content-Type': 'application/json' },\n 'PUT': { 'Content-Type': 'application/json' },\n 'PATCH': { 'Content-Type': 'application/json' },\n 'DELETE': { 'Content-Type': 'application/json' }\n }\n}\n\n// export const THESEAM_API_CONFIG = new InjectionToken<IApiConfig[]>(\n// 'Api config token, config options for actions that make an api request in library'\n// )\n\nexport const THESEAM_API_CONFIG = new InjectionToken<IApiConfig[]>(\n 'Api config token, config options for actions that make an api request in library', {\n providedIn: 'root',\n factory: () => [ THESEAM_API_CONFIG_DEFAULT ]\n })\n","\nexport function dynamicActionApiNotSupportedError(): Error {\n return Error(`Dynamic action type 'api' not supported.`)\n}\n","import { HttpClient, HttpHeaders } from '@angular/common/http'\nimport { Inject, Injectable, isDevMode, Optional } from '@angular/core'\nimport { from } from 'rxjs'\nimport { switchMap } from 'rxjs/operators'\n\nimport { isAbsoluteUrl } from '@theseam/ui-common/utils'\n\nimport { DynamicValueHelperService } from '../../dynamic-value-helper.service'\nimport { DynamicActionUiButtonDef } from '../../models/dynamic-action-ui-button-def'\nimport { DynamicValue } from '../../models/dynamic-value'\nimport { ApiRequestMethodHeader, ApiRequestMethodHeaders, IApiConfig, isValidRequestMethod, THESEAM_API_CONFIG, VALID_REQUEST_METHODS } from '../../tokens/api-config'\n\nimport { DynamicActionApi } from './dynamic-action-api'\nimport { DynamicActionApiDef } from './dynamic-action-api-def'\nimport { dynamicActionApiNotSupportedError } from './dynamic-action-api-errors'\n\n/**\n * Handles execution of api call actions.\n *\n * This action service should be generic enough to\n * work with any url endpoint, but will be biased towards our api where needed.\n */\n@Injectable()\nexport class DynamicActionApiService implements DynamicActionApi {\n\n readonly type = 'api'\n\n label = 'Api Action'\n\n constructor(\n private _valueHelper: DynamicValueHelperService,\n @Optional() private _http: HttpClient,\n @Optional() @Inject(THESEAM_API_CONFIG) private _configs: IApiConfig[]\n ) { }\n\n public exec(args: DynamicActionApiDef, context: any): Promise<any> {\n if (!this._isSupported()) {\n throw dynamicActionApiNotSupportedError()\n }\n\n return from(this._getExecInfo(args, context)).pipe(\n switchMap(x => this._http.request<any>(x.method, x.url, x.options)),\n ).toPromise()\n }\n\n public async getUiProps(args: DynamicActionApiDef, context: any): Promise<DynamicActionUiButtonDef> {\n return {\n _actionDef: args,\n triggerType: 'click'\n }\n }\n\n private async _getExecInfo(args: DynamicActionApiDef, context?: any) {\n const method = args.method || 'GET'\n\n const url = await this._getUrl(args, context)\n if (url === null) {\n throw new Error('[DynamicActionApiService] Unable to determine url.')\n }\n\n const body = await this._getBody(args, context)\n const params = await this._getParams(args, context)\n\n const headers = await this._getHeaders(args, context)\n\n const result = {\n url,\n method,\n options: { body, params, headers }\n }\n\n return result\n }\n\n private async _getUrl(args: DynamicActionApiDef, context?: any): Promise<string | null> {\n const config = this._getApiConfig(args)\n\n let endpoint = ''\n if (args.endpoint) {\n endpoint = await this._valueHelper.eval(args.endpoint, context)\n }\n\n if (isAbsoluteUrl(endpoint)) {\n return endpoint\n }\n\n if (config && config.url !== undefined && config.url !== null) {\n const url = await this._valueHelper.eval(config.url, context)\n if (typeof url === 'string') {\n const addSlash = endpoint.length > 0 && endpoint.indexOf('/') !== 0 &&\n url.length > 0 && url.indexOf('/') !== 0\n return `${config.url}${addSlash ? '/' : ''}${endpoint}`\n }\n }\n\n return null\n }\n\n private _getApiConfig(args: DynamicActionApiDef): IApiConfig | null {\n const configs = this._configs || []\n\n if (args.id === undefined || args.id === null) {\n return configs.length > 0 ? configs[0] : null\n }\n\n for (const config of configs) {\n if (config.id && config.id === args.id) {\n return config\n }\n }\n\n return null\n }\n\n private async _getBody(args: DynamicActionApiDef, context?: any) {\n if (args.body !== undefined && args.body !== null) {\n return await this._valueHelper.eval(args.body, context)\n }\n\n return undefined\n }\n\n private async _getParams(args: DynamicActionApiDef, context?: any) {\n if (args.params !== undefined && args.params !== null) {\n return await this._valueHelper.eval(args.params, context)\n }\n\n return undefined\n }\n\n private async _getHeaders(args: DynamicActionApiDef, context?: any): Promise<HttpHeaders> {\n let headers: ApiRequestMethodHeaders = {}\n\n const config = this._getApiConfig(args)\n\n // TODO: Make sure I am handling these values correctly. This could be\n // much cleaner. Tests with all the js primitives, null, undefined, and\n // dynamic action types should be written.\n\n if (config && config.methodHeaders) {\n const method = typeof args.method === 'string'\n ? args.method.trim().toUpperCase()\n : 'GET' // Default method type\n\n if (!isValidRequestMethod(method)) {\n throw Error(`API request method must be one of ${VALID_REQUEST_METHODS}`)\n }\n\n const h = method && config.methodHeaders[method]\n if (h !== undefined && h !== null) {\n headers = await this._evalHeaders(h, context) as any\n }\n }\n\n // TODO: Cleanup messing multiple level logic\n const argHeaders = args.headers\n if (argHeaders !== undefined && argHeaders !== null) {\n if (typeof argHeaders === 'string') {\n headers = argHeaders as any\n } else {\n const _val = this._valueHelper.eval(argHeaders as any, context) // TODO: Fix argHeaders type\n if (typeof _val === 'string') {\n headers = _val\n } else {\n const keys = Object.keys(argHeaders)\n for (const key of keys) {\n if (!isValidRequestMethod(key)) {\n throw Error(`API request method must be one of ${VALID_REQUEST_METHODS}`)\n }\n\n // TODO: Fix types\n const value = (argHeaders as any)[key]\n if (typeof value === 'string') {\n headers[key] = value\n } else if (Array.isArray(value)) {\n headers[key] = await Promise.all(value.map(async v => await this._valueHelper.eval(v, context))) as any\n } else {\n headers[key] = await this._valueHelper.eval(value, context)\n }\n }\n }\n }\n }\n\n return new HttpHeaders(headers as any)\n }\n\n private async _evalHeaders(\n headers: string | DynamicValue<string> | { [name: string]: DynamicValue<string> | DynamicValue<string>[] },\n context?: any\n ) {\n let res: string | { [name: string]: string | string[] } = {}\n\n // TODO: Cleanup messing multiple level logic\n if (typeof headers === 'string') {\n res = headers\n } else {\n const _val = this._valueHelper.eval(headers as any, context) // TODO: Fix argHeaders type\n if (typeof _val === 'string') {\n res = _val\n } else {\n const keys = Object.keys(headers)\n for (const key of keys) {\n const value = (headers as any)[key]\n if (typeof value === 'string') {\n res[key] = value\n } else if (Array.isArray(value)) {\n res[key] = await Promise.all(value.map(async v => await this._valueHelper.eval(v, context)))\n } else {\n res[key] = await this._valueHelper.eval(value, context)\n }\n }\n }\n }\n return res\n }\n\n private _isSupported(): boolean {\n if (isDevMode()) {\n console.warn(`[DynamicActionApiService] Action is not ready for production yet.`)\n } else {\n // I don't expect this to be attempted in prod before completed, so I am just adding a console warning.\n console.warn(`Unable to complete request. Contact support for assistance.`)\n }\n\n if (!this._http) {\n if (isDevMode()) {\n console.warn(`[DynamicActionApiService] Endpoint actions require \\`HttpClientModule\\` to be imported.`)\n }\n return false\n }\n return true\n }\n}\n","import { Injectable } from '@angular/core'\n\nimport { DynamicValueHelperService } from '../../dynamic-value-helper.service'\nimport { DynamicActionUiAnchorDef } from '../../models/dynamic-action-ui-anchor-def'\nimport { DynamicActionLink } from './dynamic-action-link'\nimport { DynamicActionLinkDef } from './dynamic-action-link-def'\n\n/**\n * Handles execution of link actions.\n */\n@Injectable()\nexport class DynamicActionLinkService implements DynamicActionLink {\n\n readonly type = 'link'\n\n label = 'Link Action'\n\n constructor(\n private _valueHandler: DynamicValueHelperService\n ) { }\n\n // exec?: (args: IDynamicActionDef<T>, context: D) => Observable<R>\n\n // execSync?: (args: IDynamicActionDef<T>, context: D) => R\n\n public async getUiProps(args: DynamicActionLinkDef, context: any): Promise<DynamicActionUiAnchorDef> {\n const link: string = await this._valueHandler.eval(args.link)\n const external: boolean = !!(await this._valueHandler.eval(args.external))\n const asset: boolean = !!(await this._valueHandler.eval(args.asset))\n const target: string | undefined = await this._valueHandler.eval(args.target)\n const queryParams: { [k: string]: any } | undefined = await this._valueHandler.eval(args.queryParams)\n\n const def: DynamicActionUiAnchorDef = {\n _actionDef: args,\n triggerType: asset ? 'link-asset' : external ? 'link-external' : 'link',\n linkUrl: link,\n // blockClickExpr: { type: 'jexl', expr: 'event.button == 0 && event.ctrlKey == true ? true : false' }\n }\n\n if (target) {\n if (!def.linkExtras) { def.linkExtras = {} }\n def.linkExtras.target = target\n }\n\n if (queryParams) {\n if (!def.linkExtras) { def.linkExtras = {} }\n def.linkExtras.queryParams = queryParams\n }\n\n return def\n }\n}\n","import { InjectionToken } from '@angular/core'\n\nimport { DynamicAction } from '../models/dynamic-action'\n\nexport const THESEAM_DYNAMIC_ACTION = new InjectionToken<DynamicAction<string>>(\n 'Action for executing a DynamicAction'\n)\n","import { Inject, Injectable, isDevMode, Optional } from '@angular/core'\nimport { map } from 'rxjs/operators'\n\nimport { SeamConfirmDialogService } from '@theseam/ui-common/confirm-dialog'\nimport { ThemeTypes } from '@theseam/ui-common/models'\nimport { hasProperty } from '@theseam/ui-common/utils'\n\nimport { DynamicValueHelperService } from '../dynamic-value-helper.service'\nimport { DynamicAction } from '../models/dynamic-action'\nimport { DynamicActionDef } from '../models/dynamic-action-def'\nimport { DynamicActionUiDef } from '../models/dynamic-action-ui-def'\nimport { THESEAM_DYNAMIC_ACTION } from '../tokens/dynamic-action'\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DynamicActionHelperService {\n\n private _actionMap = new Map<string, DynamicAction<string>>()\n\n constructor(\n private _valueHelper: DynamicValueHelperService,\n // TODO: Consider making the action confirm more generic\n @Optional() private _confirmDialog?: SeamConfirmDialogService,\n @Optional() @Inject(THESEAM_DYNAMIC_ACTION) actions?: DynamicAction<string>[]\n ) {\n // Only one evaluator should exist for a type, so map them for faster lookup.\n for (const e of (actions || [])) {\n if (isDevMode()) {\n if (this._actionMap.has(e.type)) {\n console.warn(`[DynamicActionHelperService] Multiple actions found for type '${e.type}'`)\n }\n }\n this._actionMap.set(e.type, e)\n }\n }\n\n /**\n * Execute an async action.\n *\n * TODO: Improve context and return typing.\n */\n public async exec<T extends string>(actionDef: DynamicActionDef<T>, context?: any): Promise<DynamicActionDef<T>> {\n const action = this._actionMap.get(actionDef.type)\n if (!action) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' not found.`)\n }\n if (!action.exec) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' does not implement 'exec()'.`)\n }\n\n if (await this.requiresConfirmation(actionDef, context)) {\n const confirmed = await this.promptConfirmation(actionDef, context)\n if (!confirmed) {\n // TODO: Decide a good way to handle a rejected confirm.\n return 'rejected' as any\n }\n }\n\n return await action.exec(actionDef, context)\n }\n\n /**\n * Execute an action.\n *\n * TODO: Improve context and return typing.\n */\n public execSync<T extends string>(actionDef: DynamicActionDef<T>, context?: any): DynamicActionDef<T> {\n const action = this._actionMap.get(actionDef.type)\n if (!action) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' not found.`)\n }\n if (!action.execSync) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' does not implement 'execSync()'.`)\n }\n\n return action.execSync(actionDef, context)\n }\n\n /**\n * Get UI props for action.\n *\n * TODO: Improve context and return typing.\n */\n public getUiProps<T extends string>(actionDef: DynamicActionDef<T>, context?: any): Promise<DynamicActionUiDef> {\n const action = this._actionMap.get(actionDef.type)\n if (!action) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' not found.`)\n }\n if (!action.getUiProps) {\n throw Error(`[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' does not implement 'getUiProps()'.`)\n }\n\n return action.getUiProps(actionDef, context)\n }\n\n /**\n * Checks if a DynamicActionDef is a type that can be executed.\n */\n public isExecutableType<T extends string>(value: DynamicActionDef<T>, isAsync: boolean): boolean {\n if (value === undefined || value === null) {\n return false\n }\n\n const action = this._actionMap.get(value.type)\n if (!action) {\n return false\n }\n\n if (isAsync && !action.exec) {\n return false\n }\n if (!isAsync && !action.execSync) {\n return false\n }\n\n return true\n }\n\n public async requiresConfirmation<T extends string>(actionDef: DynamicActionDef<T>, context?: any): Promise<boolean> {\n if (!hasProperty(actionDef, 'confirmDef')) {\n return false\n }\n\n if (hasProperty(actionDef.confirmDef, 'disabled')) {\n return !(await this._valueHelper.eval(actionDef.confirmDef.disabled, context))\n }\n\n return true\n }\n\n public requiresConfirmationSync<T extends string>(actionDef: DynamicActionDef<T>, context?: any): boolean {\n if (!hasProperty(actionDef, 'confirmDef')) {\n return false\n }\n\n if (hasProperty(actionDef.confirmDef, 'disabled')) {\n const disabled = !this._valueHelper.evalSync(actionDef.confirmDef.disabled, context)\n if (!disabled) {\n throw Error(\n `[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' can't open ` +\n `confirm dialog. Only async actions support confirm dialog.`\n )\n }\n return false\n }\n\n throw Error(\n `[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' can't open ` +\n `confirm dialog. Only async actions support confirm dialog.`\n )\n }\n\n public async promptConfirmation<T extends string>(actionDef: DynamicActionDef<T>, context?: any): Promise<boolean> {\n if (!this._confirmDialog) {\n throw Error(\n `[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' can't open ` +\n `confirm dialog. Confirm dialog service is not injected.`\n )\n }\n\n const confirmDef = actionDef.confirmDef\n if (!confirmDef) {\n throw Error(\n `[DynamicActionHelperService] Action '${actionDef ? actionDef.type : undefined}' can't open ` +\n `confirm dialog. Confirm def is not defined.`\n )\n }\n\n let message: string | undefined\n if (hasProperty(confirmDef, 'message')) {\n message = await this._valueHelper.eval(confirmDef.message, context)\n }\n let alert: string | { message: string, type: ThemeTypes } | undefined\n if (hasProperty(confirmDef, 'alert')) {\n alert = await this._valueHelper.eval(confirmDef.alert, context)\n }\n\n const modalDef = this._confirmDialog.open(message, alert)\n return modalDef.afterClosed().pipe(\n map(v => v === 'confirm')\n ).toPromise()\n }\n\n}\n","import { ComponentType } from '@angular/cdk/portal'\nimport { Injectable, Injector } from '@angular/core'\nimport { Observable, of } from 'rxjs'\nimport { switchMap } from 'rxjs/operators'\n\nimport { Modal, ModalConfig, ModalRef } from '@theseam/ui-common/modal'\n\nimport { DynamicValueHelperService } from '../../dynamic-value-helper.service'\nimport { DynamicActionUiButtonDef } from '../../models/dynamic-action-ui-button-def'\nimport { DynamicActionHelperService } from '../dynamic-action-helper.service'\nimport { DynamicActionModal } from './dynamic-action-modal'\nimport { DynamicActionModalDef } from './dynamic-action-modal-def'\n\n/**\n * Handles execution of modal actions.\n */\n@Injectable()\nexport class DynamicActionModalService implements DynamicActionModal {\n\n readonly type = 'modal'\n\n label = 'Modal Action'\n\n constructor(\n private _valueHelper: DynamicValueHelperService,\n private _modal: Modal,\n private _injector: Injector\n ) { }\n\n async exec(args: DynamicActionModalDef, context: any): Promise<any> {\n const component = this._getComponent(args, context)\n const data = this._getData(args, context)\n\n return this._openModal(component, data).pipe(\n switchMap(modalRef => modalRef.afterClosed().pipe(\n switchMap(result => {\n const resultAction = this._getModalResultAction(args, result)\n\n // TODO: Come up with a way to pass data from previous action\n if (resultAction) {\n const dynamicActionHelper = this._getDynamicActionHelper()\n return dynamicActionHelper.exec(resultAction, context)\n }\n return of(result)\n })\n ))\n ).toPromise()\n }\n\n // execSync?: (args: IDynamicActionDef<T>, context: D) => R\n\n public async getUiProps(args: DynamicActionModalDef, context: any): Promise<DynamicActionUiButtonDef> {\n return {\n _actionDef: args,\n triggerType: 'click'\n }\n }\n\n /**\n * Get the dynamic action helper from the injector. The injector order causes\n * the dynamic action helper to not be in the injector when the constructor is\n * called.\n */\n private _getDynamicActionHelper(): DynamicActionHelperService {\n return this._injector.get(DynamicActionHelperService)\n }\n\n private _getComponent(args: DynamicActionModalDef, context: any): string | ComponentType<{}> | undefined {\n let component = args && args.component\n if (component) {\n component = this._valueHelper.evalSync(component, context)\n }\n return component\n }\n\n private _getData(args: DynamicActionModalDef, context: any): any | undefined {\n let data = args && args.data\n if (data) {\n data = this._valueHelper.evalSync(data, context)\n }\n return data\n }\n\n private _getModalResultAction(args: DynamicActionModalDef, result: any) {\n if (args.resultActions && args.resultActions[result]) {\n return args.resultActions[result]\n }\n }\n\n private _openModal(modal: any, data?: any): Observable<ModalRef<any>> {\n // TODO: Replace with JSON valid config from input def model\n const config: ModalConfig = {\n data,\n modalSize: 'lg'\n }\n\n if (typeof modal === 'string') {\n return this._modal.openFromLazyComponent(modal, config)\n } else {\n return of(this._modal.openFromComponent(modal, config))\n }\n }\n}\n","import { Injectable, Injector } from '@angular/core'\n\nimport { IDataExporter, THESEAM_DATA_EXPORTER } from '@theseam/ui-common/data-exporter'\nimport { notNullOrUndefined } from '@theseam/ui-common/utils'\nimport { IDynamicValueEvaluator } from '../../models/dynamic-value-evaluator'\n\nimport { IExportersDataValue } from './exporters-data-value'\n\n@Injectable()\nexport class ExportersDataEvaluator implements IDynamicValueEvaluator<'exporters-data'> {\n\n public readonly type = 'exporters-data'\n\n constructor(\n private _injector: Injector\n ) { }\n\n public async eval(value: IExportersDataValue<IDataExporter[]>, context?: any): Promise<{ exporters: IDataExporter[] }> {\n return this.evalSync(value, context)\n }\n\n public evalSync(value: IExportersDataValue<IDataExporter[]>, context?: any): { exporters: IDataExporter[] } {\n return {\n exporters: this._exporters(value.exporters || [])\n }\n }\n\n private _exporters(exporters: string[]) {\n const dataExporters: IDataExporter[] = (<any>this._injector.get(THESEAM_DATA_EXPORTER) || []) as IDataExporter[]\n return exporters\n .map(e => dataExporters.find(de => de.name === e))\n .filter(notNullOrUndefined)\n }\n\n}\n","// NOTE: ng-packagr ignores the \"types\" and \"typeRoots\" settings in tsconfig.\n// Unless there is a way to make it stop ignoring those settings, tripple slash\n// reference to a `.d.ts` file was the only way I could stop the missing types\n// error.\n// tslint:disable-next-line: no-reference\n// /// <reference path=\"./jexl.d.ts\" />\n// /// <reference path=\"../../../../../custom_types/jexl/index.d.ts\" />\n\nimport { DatePipe } from '@angular/common'\nimport { Injectable } from '@angular/core'\n\n// @ts-ignore: Missing types\nimport jexl from 'jexl'\n\nimport { IDynamicValueEvaluator } from '../../models/dynamic-value-evaluator'\n\nimport { IJexlValue } from './jexl-value'\n\n@Injectable()\nexport class JexlEvaluator implements IDynamicValueEvaluator<'jexl'> {\n\n public readonly type = 'jexl'\n\n private readonly _jexl = new jexl.Jexl()\n\n constructor() {\n this._jexl.addTransform('date', (val: any, row: any) => new DatePipe('en-US').transform(val, 'yyyy-MM-dd h:mm aaa'))\n this._jexl.addTransform('length', (val: any) => val !== null && val !== undefined ? val.length : 0)\n }\n\n public eval<R>(value: IJexlValue<R>, context?: any): Promise<R> {\n return this._jexl.eval(value.expr, context)\n }\n\n public evalSync<R>(value: IJexlValue<R>, context?: any): R {\n return this._jexl.evalSync(value.expr, context)\n }\n\n}\n","import { InjectionToken } from '@angular/core'\n\nexport const THESEAM_DYNAMIC_DATA = new InjectionToken<any>('THESEAM_DYNAMIC_DATA')\n","import { DynamicActionDef } from '../models/dynamic-action-def'\n\nexport function isActionType<T extends string>(\n action: DynamicActionDef<T>,\n typeName: T\n): action is DynamicActionDef<T> {\n return action.type === typeName\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["InjectionToken","isDevMode","Injectable","Inject","from","switchMap","isAbsoluteUrl","HttpHeaders","HttpClient","Optional","hasProperty","map","SeamConfirmDialogService","of","Modal","Injector","THESEAM_DATA_EXPORTER","notNullOrUndefined","jexl","DatePipe"],"mappings":"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"}
@@ -420,6 +420,27 @@
420
420
  }
421
421
  coordinates.push(coordinates[0]);
422
422
  }
423
+ function polygonHasValidPathsLengths(polygon, minPointsInValidPath) {
424
+ var e_3, _a;
425
+ if (minPointsInValidPath === void 0) { minPointsInValidPath = 3; }
426
+ var paths = polygon.getPaths().getArray();
427
+ try {
428
+ for (var paths_1 = __values(paths), paths_1_1 = paths_1.next(); !paths_1_1.done; paths_1_1 = paths_1.next()) {
429
+ var path = paths_1_1.value;
430
+ if (path.getLength() < minPointsInValidPath) {
431
+ return false;
432
+ }
433
+ }
434
+ }
435
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
436
+ finally {
437
+ try {
438
+ if (paths_1_1 && !paths_1_1.done && (_a = paths_1.return)) _a.call(paths_1);
439
+ }
440
+ finally { if (e_3) throw e_3.error; }
441
+ }
442
+ return true;
443
+ }
423
444
  function polygonCoordinates(polygon) {
424
445
  return polygon.getArray().map(function (linRing) {
425
446
  var coords = linRing.getArray().map(function (x) { return [x.lng(), x.lat()]; });
@@ -451,9 +472,9 @@
451
472
  return booleanContains__default["default"](polygonA, polygonB);
452
473
  }
453
474
  function createDataFeatureFromPolygon(polygon) {
454
- var arr = polygon.getPath().getArray();
475
+ var arr = polygon.getPaths().getArray().map(function (x) { return x.getArray(); });
455
476
  return new google.maps.Data.Feature({
456
- geometry: new google.maps.Data.Polygon([arr])
477
+ geometry: new google.maps.Data.Polygon(arr)
457
478
  });
458
479
  }
459
480
  function getBoundsWithAllFeatures(data) {
@@ -829,7 +850,7 @@
829
850
  };
830
851
  GoogleMapsService.prototype.setData = function (data) {
831
852
  return __awaiter(this, void 0, void 0, function () {
832
- return __generator(this, function (_b) {
853
+ return __generator(this, function (_c) {
833
854
  this._assertInitialized();
834
855
  removeAllFeatures(this.googleMap.data);
835
856
  this.googleMap.data.addGeoJson(data);
@@ -857,7 +878,7 @@
857
878
  this._allowDrawingHoleInPolygon = allow;
858
879
  };
859
880
  GoogleMapsService.prototype.setFileInputHandler = function (handler) {
860
- this._fileInputHandler;
881
+ this._fileInputHandler = handler;
861
882
  };
862
883
  GoogleMapsService.prototype.getFileInputHandler = function () {
863
884
  return this._fileInputHandler;
@@ -917,7 +938,7 @@
917
938
  });
918
939
  if (utils.notNullOrUndefined(this._drawingManager)) {
919
940
  google.maps.event.addListener(this._drawingManager, 'polygoncomplete', function (polygon) {
920
- var _a;
941
+ var _a, _b;
921
942
  // The DrawingManager doesn't seem to have a way to access the overlays,
922
943
  // so if the map is not set then it shouldn'y be considered a successful
923
944
  // completion. I am canceling the active drawing by disabling drawing
@@ -927,12 +948,22 @@
927
948
  return;
928
949
  }
929
950
  _this._assertInitialized();
951
+ // TODO: See if there is a way to prevent the polygon from completing
952
+ // without enough points. This is very low priority, because starting
953
+ // over after adding a single point isn't a major inconvenience.
954
+ if (!polygonHasValidPathsLengths(polygon)) {
955
+ // Remove the drawn polygon.
956
+ polygon.setMap(null);
957
+ // Stop drawing.
958
+ (_a = _this._drawingManager) === null || _a === void 0 ? void 0 : _a.setDrawingMode(null);
959
+ return;
960
+ }
930
961
  // Create a map feature of the drawn polygon.
931
962
  var feature = createDataFeatureFromPolygon(polygon);
932
963
  // Remove the drawn polygon.
933
964
  polygon.setMap(null);
934
965
  // Stop drawing.
935
- (_a = _this._drawingManager) === null || _a === void 0 ? void 0 : _a.setDrawingMode(null);
966
+ (_b = _this._drawingManager) === null || _b === void 0 ? void 0 : _b.setDrawingMode(null);
936
967
  // Check if the feature should be used as a cutout to an existing
937
968
  // feature or added as it's own feature.
938
969
  var exteriorPolygonFeature = _this._allowDrawingHoleInPolygon
@@ -1894,7 +1925,7 @@
1894
1925
  TheSeamGoogleMapsPlacesAutoCompleteComponent.decorators = [
1895
1926
  { type: core.Component, args: [{
1896
1927
  selector: 'seam-google-maps-places-autocomplete',
1897
- template: "<div *ngIf=\"icon\" class=\"search-container--icon-wrapper\">\r\n <seam-icon [icon]=\"icon\" class=\"text-muted\" size=\"lg\"></seam-icon>\r\n</div>\r\n<label *ngIf=\"label || placeholder\" [attr.for]=\"inp.id\" class=\"sr-only\">{{ label || placeholder }}</label>\r\n<input #inp=\"seamInput\"\r\n seamInput\r\n seamGoogleMapsPlacesAutocomplete\r\n [disabled]=\"disabled\"\r\n [attr.placeholder]=\"placeholder\"\r\n [attr.autocorrect]=\"autocorrect\"\r\n [attr.autocapitalize]=\"autocapitalize\"\r\n [options]=\"_options\"\r\n/>\r\n",
1928
+ template: "<div *ngIf=\"icon\" class=\"search-container--icon-wrapper\">\n <seam-icon [icon]=\"icon\" class=\"text-muted\" size=\"lg\"></seam-icon>\n</div>\n<label *ngIf=\"label || placeholder\" [attr.for]=\"inp.id\" class=\"sr-only\">{{ label || placeholder }}</label>\n<input #inp=\"seamInput\"\n seamInput\n seamGoogleMapsPlacesAutocomplete\n [disabled]=\"disabled\"\n [attr.placeholder]=\"placeholder\"\n [attr.autocorrect]=\"autocorrect\"\n [attr.autocapitalize]=\"autocapitalize\"\n [options]=\"_options\"\n/>\n",
1898
1929
  changeDetection: core.ChangeDetectionStrategy.OnPush,
1899
1930
  exportAs: 'seamGoogleMapsPlacesAutoComplete',
1900
1931
  styles: [":host{position:relative;width:100%}:host>input{padding-left:40px}:host .search-container--icon-wrapper{position:absolute;top:6px;left:10px;bottom:0px}:host .search-container--icon-wrapper ::ng-deep .svg-inline--fa{vertical-align:middle}\n"]
@@ -2186,6 +2217,7 @@
2186
2217
  exports.isFeatureSelected = isFeatureSelected;
2187
2218
  exports.multiPolygonCoordinates = multiPolygonCoordinates;
2188
2219
  exports.polygonCoordinates = polygonCoordinates;
2220
+ exports.polygonHasValidPathsLengths = polygonHasValidPathsLengths;
2189
2221
  exports.removeAllFeatures = removeAllFeatures;
2190
2222
  exports.setFeatureSelected = setFeatureSelected;
2191
2223
  exports.stripAppFeaturePropertiesFromJson = stripAppFeaturePropertiesFromJson;