oasys-lib 1.26.0 → 1.26.2

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.
@@ -1 +1 @@
1
- {"version":3,"file":"oasys-lib.umd.js","sources":["../../../projects/oasys-lib/src/lib/components/alert/alert-cancel.directive.ts","../../../projects/oasys-lib/src/lib/components/alert/alert-confirm.directive.ts","../../../projects/oasys-lib/src/lib/components/alert/alert-content.directive.ts","../../../projects/oasys-lib/src/lib/components/alert/alert-title.directive.ts","../../../node_modules/tslib/tslib.es6.js","../../../projects/oasys-lib/src/lib/services/breakpoint.service.ts","../../../projects/oasys-lib/src/lib/services/token.service.ts","../../../projects/oasys-lib/src/lib/components/layout/box/box.component.ts","../../../projects/oasys-lib/src/lib/components/layout/stack/stack.component.ts","../../../projects/oasys-lib/src/lib/components/icon/icon.component.ts","../../../projects/oasys-lib/src/lib/components/icon/icon.component.html","../../../projects/oasys-lib/src/lib/injection-tokens/frontend-app-injection.tokens.ts","../../../projects/oasys-lib/src/lib/directives/href/href.directive.ts","../../../projects/oasys-lib/src/lib/components/button/button.component.ts","../../../projects/oasys-lib/src/lib/components/button/button.component.html","../../../projects/oasys-lib/src/lib/components/alert/alert.component.ts","../../../projects/oasys-lib/src/lib/components/alert/alert.component.html","../../../projects/oasys-lib/src/lib/services/href.service.ts","../../../projects/oasys-lib/src/lib/directives/directives.module.ts","../../../projects/oasys-lib/src/lib/components/icon/icon.module.ts","../../../projects/oasys-lib/src/lib/components/button/button.module.ts","../../../projects/oasys-lib/src/lib/components/layout/container/container.component.ts","../../../projects/oasys-lib/src/lib/components/layout/grid/grid-column.component.ts","../../../projects/oasys-lib/src/lib/components/layout/grid/grid.component.ts","../../../projects/oasys-lib/src/lib/components/layout/layout.module.ts","../../../projects/oasys-lib/src/lib/components/alert/alert.module.ts","../../../projects/oasys-lib/src/lib/components/breadcrumbs/breadcrumbs.component.ts","../../../projects/oasys-lib/src/lib/components/breadcrumbs/breadcrumbs.component.html","../../../projects/oasys-lib/src/lib/components/breadcrumbs/breadcrumbs.module.ts","../../../projects/oasys-lib/src/lib/components/button-group/button-group.component.ts","../../../projects/oasys-lib/src/lib/components/button-group/button-group.component.html","../../../projects/oasys-lib/src/lib/components/button-group/button-group.module.ts","../../../projects/oasys-lib/src/lib/services/image.service.ts","../../../projects/oasys-lib/src/lib/components/image/image.component.ts","../../../projects/oasys-lib/src/lib/components/image/image.component.html","../../../projects/oasys-lib/src/lib/components/card/card.component.ts","../../../projects/oasys-lib/src/lib/components/card/card.component.html","../../../projects/oasys-lib/src/lib/components/image/image.module.ts","../../../projects/oasys-lib/src/lib/components/card/card.module.ts","../../../projects/oasys-lib/src/lib/components/divider/divider.component.ts","../../../projects/oasys-lib/src/lib/components/divider/divider.component.html","../../../projects/oasys-lib/src/lib/components/divider/divider.module.ts","../../../projects/oasys-lib/src/lib/components/heading/heading.component.ts","../../../projects/oasys-lib/src/lib/components/heading/heading.component.html","../../../projects/oasys-lib/src/lib/components/heading/heading.module.ts","../../../projects/oasys-lib/src/lib/components/hero/hero.component.ts","../../../projects/oasys-lib/src/lib/components/hero/hero.component.html","../../../projects/oasys-lib/src/lib/components/hero/hero.module.ts","../../../projects/oasys-lib/src/lib/components/seo-block/seo-block.component.ts","../../../projects/oasys-lib/src/lib/components/seo-block/seo-block.component.html","../../../projects/oasys-lib/src/lib/components/seo-block/seo-block.module.ts","../../../projects/oasys-lib/src/lib/components/text/text.component.ts","../../../projects/oasys-lib/src/lib/components/text/text.component.html","../../../projects/oasys-lib/src/lib/components/text/text.module.ts","../../../projects/oasys-lib/src/lib/components/section/section.component.ts","../../../projects/oasys-lib/src/lib/components/section/section.component.html","../../../projects/oasys-lib/src/lib/components/section/section.module.ts","../../../projects/oasys-lib/src/lib/components/carousel/carousel.component.ts","../../../projects/oasys-lib/src/lib/components/carousel/carousel.component.html","../../../projects/oasys-lib/src/lib/components/carousel/carousel.module.ts","../../../projects/oasys-lib/src/lib/components/banner/banner.component.ts","../../../projects/oasys-lib/src/lib/components/banner/banner.component.html","../../../projects/oasys-lib/src/lib/components/banner/banner.module.ts","../../../projects/oasys-lib/src/public-api.ts","../../../projects/oasys-lib/src/oasys-lib.ts"],"sourcesContent":["import { AfterContentChecked, Directive, ElementRef } from '@angular/core';\n\n@Directive({\n selector: 'ui-alert-cancel, [ui-alert-cancel]',\n})\nexport class OasysAlertCancelDirective implements AfterContentChecked {\n public text = '';\n\n constructor(private elem: ElementRef) {}\n\n public ngAfterContentChecked(): void {\n this.text = this.elem.nativeElement.innerText;\n }\n}\n","import { AfterContentChecked, Directive, ElementRef } from '@angular/core';\n\n@Directive({\n selector: 'ui-alert-confirm, [ui-alert-confirm]',\n})\nexport class OasysAlertConfirmDirective implements AfterContentChecked {\n public text = '';\n\n constructor(private elem: ElementRef) {}\n\n public ngAfterContentChecked(): void {\n this.text = this.elem.nativeElement.innerText;\n }\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: 'ui-alert-content, [ui-alert-content]',\n})\nexport class OasysAlertContentDirective {}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: 'ui-alert-title, [ui-alert-title]',\n})\nexport class OasysAlertTitleDirective {}\n","/******************************************************************************\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 __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.push(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.push(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\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 (g && (g = 0, op[0] && (_ = 0)), _) 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 var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\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: false } : 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\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","import { BreakpointObserver } from '@angular/cdk/layout';\nimport { Injectable, OnDestroy } from '@angular/core';\nimport { BehaviorSubject, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nexport enum Breakpoint {\n MOBILE = '(min-width: 0px)',\n TABLET = '(min-width: 768px)',\n LAPTOP = '(min-width: 1080px)',\n DESKTOP = '(min-width: 1440px)',\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class BreakpointService implements OnDestroy {\n public currentSize: BehaviorSubject<Breakpoint> =\n new BehaviorSubject<Breakpoint>(Breakpoint.MOBILE);\n\n private breakpoints = [\n Breakpoint.DESKTOP,\n Breakpoint.LAPTOP,\n Breakpoint.TABLET,\n Breakpoint.MOBILE,\n ];\n\n private isDestroyed: Subject<void> = new Subject<void>();\n\n constructor(public breakpointObserver: BreakpointObserver) {\n breakpointObserver\n .observe(this.breakpoints)\n .pipe(takeUntil(this.isDestroyed))\n .subscribe((result) => {\n for (let match of Object.keys(result.breakpoints)) {\n if (result.breakpoints[match]) {\n return this.currentSize.next(match as Breakpoint);\n }\n }\n });\n }\n\n public ngOnDestroy(): void {\n this.isDestroyed.next();\n this.isDestroyed.complete();\n }\n}\n","import { DOCUMENT } from '@angular/common';\nimport { Inject, Injectable } from '@angular/core';\n\n@Injectable()\nexport class TokenService {\n\n brandCustomPropertyName: string = '--utility-brand-name';\n\n constructor(@Inject(DOCUMENT) private document: Document){}\n\n /*\n Get the brand name for the currently enable custom property set (ie. /bloomon/variables.css)\n Because variables are scoped via a selector (ie: ':root .bloomon {}')\n we cannot get brand-specific custom properties programatically\n\n Important: Ensure that the component requiring the brand name has locally scoped the custom property:\n | ui-icon {\n | --icon-component-brand: var(--utility-brand-name);\n | }\n */\n getBrandName(): string {\n return this.getTokenValue(this.brandCustomPropertyName);\n }\n\n getTokenValue(tokenName: string, element?: Element): string {\n const rootElement = element || this.document.querySelector('[class*=\"brand-tokens\"]');\n if(!rootElement) {\n return '';\n }\n return this.document.defaultView.getComputedStyle(rootElement)\n .getPropertyValue(tokenName)\n .trim() || '';\n }\n\n}","import { ChangeDetectionStrategy, ChangeDetectorRef, OnChanges, OnInit, ViewEncapsulation } from '@angular/core';\nimport { Input } from '@angular/core';\nimport { Component} from '@angular/core';\nimport { TokenService } from '../../../services/token.service';\nimport { LayoutAlignment, LayoutBackgrounds, LayoutBoxSizes, LayoutFillModes } from '../Layout';\n\n@Component({\n selector:'ui-box',\n template: '<div class=\"ui-box-content\"><ng-content></ng-content></div>',\n host: {\n '[class]' : 'boxLayoutClasses'\n },\n styleUrls: ['./box.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LayoutBoxComponent implements OnInit, OnChanges {\n didFirstInit: boolean = false;\n prefix = 'ui-layout-box';\n boxLayoutClasses?: string[];\n backgroundIsDark: boolean = false;\n\n @Input() box_space?: LayoutBoxSizes = 'default';\n\n @Input() box_space_top?: LayoutBoxSizes;\n @Input() box_space_right?: LayoutBoxSizes;\n @Input() box_space_bottom?: LayoutBoxSizes;\n @Input() box_space_left?: LayoutBoxSizes;\n\n @Input() box_align_x?: LayoutAlignment = 'start';\n @Input() box_align_y?: LayoutAlignment = 'start';\n\n @Input() box_fill_mode?: LayoutFillModes = 'fill';\n\n @Input() box_background: LayoutBackgrounds = 'core-primary';\n @Input() box_content_fill_width: boolean = false;\n\n constructor(private changes: ChangeDetectorRef, private tokenService: TokenService) {}\n\n /**\n * Check the passed string to see if it contains JSON\n *\n * @param string\n * @returns - boolean\n */\n stringContainsJson(string: string):boolean {\n try {\n JSON.parse(string);\n } catch (e) {\n return false;\n }\n\n return true;\n }\n\n getSizeClasses(spaceInput?: LayoutBoxSizes, overrideName?: string): string[] {\n if(!spaceInput || spaceInput === undefined){\n return null;\n }\n\n // Used for responsive spacing, check if the input is either an object or JSON\n if(typeof spaceInput === 'object' || this.stringContainsJson(spaceInput)) {\n // If JSON then convert this to an object\n const spaceInputObject: LayoutBoxSizes = typeof spaceInput === 'object' ? spaceInput : JSON.parse(spaceInput)\n\n return Object.keys(spaceInputObject).map((key) => {\n return `${this.prefix}-${spaceInputObject[key]}-${key}${overrideName ? `-${overrideName}` : ``}`\n });\n\n }\n\n return [\n this.prefix,\n `${this.prefix}-${spaceInput}${overrideName ? `-${overrideName}` : ``}`\n ];\n\n }\n\n getOverrideClasses(spaceOverrides): string[] {\n const spaceTypes = ['top', 'right', 'bottom', 'left'];\n\n return spaceOverrides.map((item, index) => {\n return this.getSizeClasses(item, spaceTypes[index]);\n }).filter(Boolean);\n }\n\n getAlignmentClasses(alignmentOverride): string[] {\n const spaceTypes = ['align-x', 'distribute-y'];\n\n return alignmentOverride.map((item, index) => {\n return item ? `${this.prefix}-${spaceTypes[index]}-${item}` : undefined;\n }).filter(Boolean);\n }\n\n getBackgroundClass(): string {\n const value = this.box_background ? `${this.prefix}-background-${this.box_background}` : ``;\n return value;\n }\n\n ngOnChanges(): void {\n if(!this.didFirstInit){\n return;\n }\n this.ngOnInit();\n this.changes.markForCheck();\n }\n\n ngOnInit(): void {\n const spaceOverrides = [this.box_space_top, this.box_space_right, this.box_space_bottom, this.box_space_left];\n const alignmentOverride = [this.box_align_x, this.box_align_y];\n this.backgroundIsDark = this.tokenService.getTokenValue(`--semantic-on-dark-${this.box_background}`) === 'on-dark';\n // Basic basic classes\n this.boxLayoutClasses = [\n this.getSizeClasses(this.box_space),\n this.getOverrideClasses(spaceOverrides),\n this.getAlignmentClasses(alignmentOverride),\n this.getBackgroundClass(),\n this.box_fill_mode === 'fit' ? `${this.prefix}-fit-content` : `${this.prefix}-fill-container`,\n this.backgroundIsDark ? 'text-color--on-dark' : '',\n this.box_content_fill_width ? '' : `${this.prefix}-content-max-width`\n ].flat(10).filter(Boolean);\n\n this.didFirstInit = true;\n }\n\n}\n\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, OnChanges, OnInit, ViewEncapsulation } from '@angular/core';\nimport { LayoutDirections, LayoutAlignment, LayoutGapSizes, LayoutDistribute } from '../Layout';\n\n@Component({\n selector:'ui-stack',\n template: '<ng-content></ng-content>',\n host: {\n '[class]' : 'stackLayoutClasses'\n },\n styleUrls: ['./stack.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LayoutStackComponent implements OnInit, OnChanges {\n didFirstInit: boolean = false;\n prefix = 'ui-layout-stack';\n stackLayoutClasses?: string[];\n\n @Input() stack_gap: LayoutGapSizes = 'default';\n @Input() stack_align: LayoutAlignment = 'start';\n @Input() stack_direction: LayoutDirections = 'y';\n @Input() stack_distribute?: LayoutDistribute = 'start';\n @Input() stack_wrap?: Boolean = false;\n @Input() stack_collapse_below: 'tablet' | 'laptop' | 'desktop' | 'none' = 'none';\n\n constructor(private changes: ChangeDetectorRef) {}\n\n defaultDistribution(): LayoutDistribute {\n if(this.stack_distribute) {\n return this.stack_distribute;\n }\n\n return this.stack_direction === 'x' ? 'fit' : 'fill';\n }\n\n ngOnChanges(): void {\n if(!this.didFirstInit){\n return;\n }\n this.ngOnInit();\n this.changes.markForCheck();\n }\n\n ngOnInit(): void {\n this.stack_distribute = this.defaultDistribution();\n this.stackLayoutClasses = [\n this.prefix,\n `${this.prefix}-${this.stack_gap}`,\n `${this.prefix}-align-${this.stack_align}`,\n `${this.prefix}-distribute-${this.stack_distribute}`,\n `${this.prefix}-direction-${this.stack_direction}`,\n `${this.prefix}-${this.stack_wrap ? 'wrap' : 'no-wrap'}`,\n `${this.prefix}-collapse-below-${this.stack_collapse_below}`\n ]\n this.didFirstInit = true;\n }\n\n}\n","import { DOCUMENT } from '@angular/common';\nimport { Component, Inject, Input, OnChanges, OnInit, ViewEncapsulation } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { IconContext, IconNames } from './icon';\n\n@Component({\n selector:'ui-icon',\n templateUrl: './icon.component.html',\n styleUrls: ['./icon.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class IconComponent implements OnInit, OnChanges {\n @Input() icon_size: 'small'|'large' = 'large';\n @Input() icon_name!: IconNames;\n @Input() icon_context: IconContext = 'none';\n\n @Input() icon_width?: number;\n @Input() icon_height?: number;\n @Input() icon_class?: string;\n\n size?: string;\n iconBrandPath?: string;\n iconDisplayClasses: string[];\n\n constructor(@Inject(DOCUMENT) private document: Document, private tokenService: TokenService) { }\n\n convertRemToPixels(remString: string): number {\n const remNumber = parseFloat(remString.replace('rem', ''));\n return remNumber * parseFloat(getComputedStyle(this.document.documentElement).fontSize);\n }\n\n ngOnChanges(): void {\n this.ngOnInit();\n }\n\n ngOnInit(): void {\n this.iconBrandPath = `${this.tokenService.getBrandName()}`\n this.size = this.tokenService.getTokenValue(`--global-size-icon-${this.icon_size}`);\n\n this.iconDisplayClasses = [\n `icon-context-${this.icon_context}`,\n `icon-size-${this.icon_size}`\n ];\n\n const sizeInPixels = this.convertRemToPixels(this.size);\n this.icon_width = sizeInPixels;\n this.icon_height = sizeInPixels;\n }\n\n}\n","<div class=\"ui-icon\" [ngClass]=\"iconDisplayClasses\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"icon_width\" [attr.height]=\"icon_height\" [attr.class]=\"icon_class\">\n <use attr.xlink:href=\"./{{iconBrandPath}}/assets/icons/icons.svg#icon-{{icon_name}}\"></use>\n </svg>\n</div>\n","import { InjectionToken } from '@angular/core';\nimport { IRoutingHandlerService } from '../directives/href/href.directive';\n\nexport const ROUTING_HANDLER = new InjectionToken<IRoutingHandlerService>('ROUTING_HANDLER');\n","import { AfterViewInit, Directive, ElementRef, HostListener, Inject, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { ROUTING_HANDLER} from '../../injection-tokens/frontend-app-injection.tokens';\n\n@Directive({\n selector: 'a, uiHref, [uiHref]'\n})\n\nexport class OasysHrefDirective implements AfterViewInit{\n element: ElementRef;\n \n constructor(\n el: ElementRef,\n @Inject(ROUTING_HANDLER) private routingHandler: IRoutingHandlerService) {\n this.element = el;\n }\n\n @HostListener('click', ['$event'])\n onClick(event: any): void {\n this.routingHandler.handleRoutingOnClick(this.element.nativeElement, event);\n }\n\n ngAfterViewInit(): void {\n this.routingHandler.handleHrefDomains(this.element.nativeElement);\n }\n}\n\nexport interface IRoutingHandlerService {\n handleRoutingOnClick(element: any, event: any): void;\n handleHrefDomains(element: any): void;\n};","import { Component, Input, OnInit, Output, ViewEncapsulation, EventEmitter, ChangeDetectionStrategy, ChangeDetectorRef, OnChanges, ContentChild, ElementRef, AfterViewInit } from '@angular/core';\nimport { IconNames, IconContext } from '../icon/icon';\nimport { TextTransform } from '../text/text';\nimport {\n // ButtonTypeOptions,\n UIButton,\n UIButtonBoolean,\n UIButtonSize,\n UIButtonType\n} from './button';\n\n@Component({\n selector:'ui-button',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class OasysButtonComponent implements OnInit, OnChanges, AfterViewInit {\n\n button: UIButton;\n\n // // Button Content\n @Input() button_icon?: IconNames;\n @Input() button_icon_placement: IconContext = 'leading';\n\n @ContentChild('buttontext') ngContent: ElementRef;\n\n // Button Stylings\n @Input() button_size: UIButtonSize = 'large';\n\n @Input() button_full_width: UIButtonBoolean = false;\n @Input() button_type: UIButtonType = 'primary';\n @Input() button_disabled: UIButtonBoolean = false;\n @Input() button_text_nowrap: UIButtonBoolean = false;\n\n // Button Actions\n @Input() href: string;\n @Output() clicked: EventEmitter<void> = new EventEmitter();\n\n buttonDisplayClasses: string[];\n iconContext: IconContext = 'none';\n textTransform!: TextTransform;\n accessibleButtonContent: string;\n outlineButtonTypes = ['secondary', 'secondary-inverse']\n\n constructor(private changes: ChangeDetectorRef) {}\n\n onClick(): void {\n this.clicked.emit();\n }\n\n createButton(): UIButton {\n\n return <UIButton>{\n buttonIcon: this.button_icon,\n buttonIconPlacement: this.button_icon_placement,\n buttonType: this.button_type,\n buttonSize: this.button_size,\n buttonDisabled: this.button_disabled,\n href: this.href,\n target: '',\n buttonDisplayClasses: [\n `type-${this.button_type}`,\n `size-${this.button_size}`,\n `${this.button_icon ? 'button--has-icon': ''}`,\n `${this.button_text_nowrap ? 'button--nowrap': ''}`,\n `${this.button_full_width ? 'button--full-width': ''}`,\n `${this.button_icon ? 'button--icon--'+this.button_icon_placement : ''}`,\n `${this.outlineButtonTypes.indexOf(this.button_type) !== -1 ? 'button--outline' : ''}`\n ].filter((d) => !!d)\n };\n }\n\n ngAfterViewInit(): void {\n if(this.ngContent?.nativeElement?.innerText) {\n this.accessibleButtonContent = this.ngContent.nativeElement.innerText;\n } else {\n throw new Error(`\n No inner text found. All buttons should have text passed via ng-content to enable accessibility for screen readers, this includes icon-only buttons.\n\n Pass content using the template variable #buttontext eg:\n ui-button()\n span(#buttontext) Buy All The Things\n `)\n }\n }\n\n ngOnChanges(): void {\n this.button = this.createButton();\n this.changes.markForCheck();\n }\n\n ngOnInit(): void {\n this.button = this.createButton();\n }\n}\n","<ng-template #content>\n <div class=\"button-content\">\n <ui-icon *ngIf=\"button.buttonIcon && button.buttonIconPlacement !== 'none'\" [icon_name]=\"button.buttonIcon\" [icon_size]=\"button.buttonSize\" [icon_class]=\"'buttonIcon'\" [icon_context]=\"button.buttonIconPlacement\"></ui-icon>\n <span class=\"ui-text\" [ngClass]=\"{'visuallyhidden': button.buttonIconPlacement === 'iconOnly'}\">\n <ng-content></ng-content>\n </span>\n </div>\n <div class=\"button-overlay\"></div>\n <div class=\"button-overlay-focus\"></div>\n</ng-template>\n\n<button \n *ngIf=\"!button.href\" \n (click)=\"onClick()\"\n [ngClass]=\"button.buttonDisplayClasses\"\n [attr.disabled]=\"button.buttonDisabled === true || null\"\n [attr.aria-label]=\"accessibleButtonContent\"\n [attr.title]=\"accessibleButtonContent\"\n role=\"button\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</button>\n\n<a \n *ngIf=\"button.href\"\n [href]=\"button.href\"\n [attr.disabled]=\"button.buttonDisabled === true || null\"\n [attr.aria-label]=\"accessibleButtonContent\"\n [attr.title]=\"accessibleButtonContent\"\n [ngClass]=\"button.buttonDisplayClasses\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n","import {\n Component,\n ContentChild,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\nimport {\n Breakpoint,\n BreakpointService,\n} from '../../services/breakpoint.service';\nimport { OasysAlertCancelDirective } from './alert-cancel.directive';\nimport { OasysAlertConfirmDirective } from './alert-confirm.directive';\n\nexport type UIAlertTone = 'positive' | 'neutral' | 'negative';\n\n@Component({\n selector: 'ui-alert',\n templateUrl: './alert.component.html',\n styleUrls: ['./alert.component.scss'],\n})\nexport class OasysAlertComponent {\n @Input()\n public direction: 'dynamic' | 'vertical' | 'horizontal' = 'dynamic';\n\n @Input()\n public tone: UIAlertTone = 'neutral';\n\n @Output()\n public cancel: EventEmitter<void> = new EventEmitter<void>();\n\n @Output()\n public confirm: EventEmitter<void> = new EventEmitter<void>();\n\n @ContentChild(OasysAlertCancelDirective)\n public cancelButton: OasysAlertCancelDirective;\n\n @ContentChild(OasysAlertConfirmDirective)\n public confirmButton: OasysAlertConfirmDirective;\n\n constructor(public breakpointService: BreakpointService) {}\n\n get isVertical(): boolean {\n switch (this.direction) {\n case 'vertical':\n return true;\n case 'horizontal':\n return false;\n default:\n return this.breakpointService.currentSize.value === Breakpoint.MOBILE;\n }\n }\n\n public cancelled(): void {\n this.cancel.emit();\n }\n\n public confirmed(): void {\n this.confirm.emit();\n }\n}\n","<ui-box class=\"ui-alert\" box_space=\"near\" box_align_x=\"center\" [ngClass]=\"tone\">\n <ui-stack stack_direction=\"x\" stack_gap=\"near\">\n <div class=\"badge\" [ngClass]=\"tone\" [ngSwitch]=\"tone\">\n <ui-icon *ngSwitchCase=\"'negative'\" icon_name=\"error\"></ui-icon>\n <ui-icon *ngSwitchCase=\"'positive'\" icon_name=\"tick\"></ui-icon>\n <ui-icon *ngSwitchDefault icon_name=\"info\"></ui-icon>\n </div>\n\n <ui-stack stack_gap=\"near\" [stack_direction]=\"isVertical ? 'y' : 'x'\">\n <ui-stack class=\"content\" stack_direction=\"y\">\n <div class=\"text-body--emphasis\">\n <ng-content select=\"ui-alert-title\"></ng-content>\n </div>\n <div>\n <ng-content select=\"ui-alert-content\"></ng-content>\n </div>\n </ui-stack>\n\n <ui-box\n box_space=\"none\"\n box_background=\"transparent\"\n [box_fill_mode]=\"isVertical ? 'fill' : 'fit'\"\n >\n <ui-stack stack_direction=\"x\" stack_gap=\"near\" stack_distribute=\"end\">\n <ui-button\n *ngIf=\"cancelButton && cancelButton.text\"\n button_type=\"tertiary\"\n button_text_nowrap=\"true\"\n (clicked)=\"cancelled()\"\n >\n <span #buttontext>\n <ng-content select=\"ui-alert-cancel\"></ng-content>\n </span>\n </ui-button>\n <ui-button\n *ngIf=\"confirmButton && confirmButton.text\"\n button_type=\"secondary\"\n button_text_nowrap=\"true\"\n (clicked)=\"confirmed()\"\n >\n <span #buttontext>\n <ng-content select=\"ui-alert-confirm\"></ng-content>\n </span>\n </ui-button>\n </ui-stack>\n </ui-box>\n </ui-stack>\n </ui-stack>\n</ui-box>\n","import { Injectable } from '@angular/core';\nimport { IRoutingHandlerService } from '../directives/href/href.directive';\n\n@Injectable({ providedIn: 'root' })\nexport class HrefService implements IRoutingHandlerService {\n public handleRoutingOnClick(): void {\n // throw new Error('handleRoutingOnClick has not been implemented');\n }\n\n public handleHrefDomains(): void {\n // throw new Error('handleHrefDomains has not been implemented');\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { ROUTING_HANDLER } from '../injection-tokens/frontend-app-injection.tokens';\nimport { HrefService } from '../services/href.service';\nimport { OasysHrefDirective } from './href/href.directive';\n\n@NgModule({\n declarations: [OasysHrefDirective],\n imports: [CommonModule, RouterModule],\n exports: [OasysHrefDirective],\n providers: [{ provide: ROUTING_HANDLER, useClass: HrefService }],\n})\nexport class OasysDirectivesModule {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { IconComponent } from './icon.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [IconComponent],\n imports: [CommonModule, OasysDirectivesModule],\n exports: [IconComponent],\n providers: [TokenService],\n})\nexport class OasysIconModule {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { OasysIconModule } from '../icon/icon.module';\nimport { OasysButtonComponent } from './button.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [OasysButtonComponent],\n imports: [CommonModule, RouterModule, OasysIconModule, OasysDirectivesModule],\n exports: [OasysButtonComponent],\n})\nexport class OasysButtonModule {}\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Input, OnChanges, OnInit, ViewEncapsulation } from '@angular/core';\nimport { Component} from '@angular/core';\nimport { TokenService } from '../../../services/token.service';\nimport { LayoutContainerSizes } from '../Layout';\n@Component({\n selector:'ui-container',\n template: `\n <ng-content></ng-content>\n `,\n host: {\n '[class]' : 'containerLayoutClasses'\n },\n styleUrls: ['./container.component.scss'],\n\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LayoutContainerComponent implements OnInit, OnChanges {\n @Input() container_fluid: boolean = false;\n @Input() container_gutter: true | false | 'true' | 'false' = true;\n prefix = 'ui-layout-container';\n containerLayoutClasses?: string[];\n\n containerGutterNameLarge: string;\n containerGutterNameSmall: string;\n containerHorizontalSizes: LayoutContainerSizes;\n\n constructor(private changes: ChangeDetectorRef) { }\n\n ngOnChanges(): void {\n this.ngOnInit();\n this.changes.markForCheck();\n }\n\n ngOnInit(): void {\n this.containerLayoutClasses = [\n this.prefix,\n this.container_fluid ? `${this.prefix}-fluid` : '',\n this.container_gutter === true || this.container_gutter === 'true' ? '' : `${this.prefix}-no-gutter`\n ].flat(10).filter(Boolean);\n }\n\n}\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, OnChanges, OnInit, ViewEncapsulation } from '@angular/core';\nimport { ResponsiveGridColumns } from '../Layout';\n\n@Component({\n selector:'ui-column',\n template: '<ng-content></ng-content>',\n host: {\n '[class]' : 'columnLayoutClasses'\n },\n styleUrls: ['./grid.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LayoutGridColumnComponent implements OnInit, OnChanges {\n didFirstInit: boolean = false;\n prefix = 'ui-layout-column';\n columnLayoutClasses?: string[];\n\n @Input() columns: ResponsiveGridColumns = 12;\n @Input() column_inset: ResponsiveGridColumns;\n\n constructor(private changes: ChangeDetectorRef) {}\n\n getSizeClasses(columns: ResponsiveGridColumns, classString: string): string[] {\n\n if(!columns) {\n return [''];\n }\n\n if(typeof columns === 'object'){\n\n return Object.keys(columns).map((key) => {\n return `${this.prefix}${classString}${key}-${columns[key]}`\n });\n\n }\n\n return [\n this.prefix,\n `${this.prefix}${classString}${columns}`,\n ];\n\n }\n\n\n ngOnChanges(): void {\n if(!this.didFirstInit){\n return;\n }\n this.ngOnInit();\n this.changes.markForCheck();\n }\n\n ngOnInit(): void {\n this.columnLayoutClasses = [\n this.prefix,\n this.getSizeClasses(this.columns, '-col-'),\n this.getSizeClasses(this.column_inset, '-col-inset-')\n ].flat(10).filter(Boolean);\n this.didFirstInit = true;\n }\n\n}\n\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, OnChanges, OnInit, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector:'ui-grid',\n template: '<ng-content></ng-content>',\n host: {\n '[class]' : 'gridLayoutClasses'\n },\n styleUrls: ['./grid.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LayoutGridComponent implements OnInit, OnChanges {\n didFirstInit: boolean = false;\n prefix = 'ui-layout-grid';\n gridLayoutClasses?: string[];\n\n @Input() grid_auto: boolean = false;\n @Input() grid_collapse_below: 'tablet' | 'laptop' | 'desktop' | 'none' = 'tablet';\n @Input() grid_gap: 'default' | 'none' | 'expanded' = 'default';\n\n constructor(private changes: ChangeDetectorRef) {}\n\n ngOnChanges(): void {\n if(!this.didFirstInit){\n return;\n }\n this.ngOnInit();\n this.changes.markForCheck();\n }\n\n ngOnInit(): void {\n\n this.gridLayoutClasses = [\n this.prefix,\n `${this.prefix}-${this.grid_gap}`,\n `${this.prefix}-${this.grid_auto ? 'width-auto' : ''}`,\n `${this.prefix}-collapse-below-${this.grid_collapse_below}`,\n ]\n this.didFirstInit = true;\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { LayoutBoxComponent } from './box/box.component';\nimport { LayoutContainerComponent } from './container/container.component';\nimport { LayoutGridColumnComponent } from './grid/grid-column.component';\nimport { LayoutGridComponent } from './grid/grid.component';\nimport { LayoutStackComponent } from './stack/stack.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [\n LayoutBoxComponent,\n LayoutContainerComponent,\n LayoutGridComponent,\n LayoutGridColumnComponent,\n LayoutStackComponent,\n ],\n imports: [OasysDirectivesModule],\n exports: [\n LayoutBoxComponent,\n LayoutContainerComponent,\n LayoutGridComponent,\n LayoutGridColumnComponent,\n LayoutStackComponent,\n ],\n providers: [TokenService],\n})\nexport class OasysLayoutModule {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { OasysButtonModule } from '../button/button.module';\nimport { OasysIconModule } from '../icon/icon.module';\nimport { OasysLayoutModule } from '../layout';\nimport { OasysAlertCancelDirective } from './alert-cancel.directive';\nimport { OasysAlertConfirmDirective } from './alert-confirm.directive';\nimport { OasysAlertContentDirective } from './alert-content.directive';\nimport { OasysAlertTitleDirective } from './alert-title.directive';\nimport { OasysAlertComponent } from './alert.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [\n OasysAlertCancelDirective,\n OasysAlertConfirmDirective,\n OasysAlertContentDirective,\n OasysAlertTitleDirective,\n OasysAlertComponent,\n ],\n imports: [\n CommonModule,\n OasysLayoutModule,\n OasysButtonModule,\n OasysIconModule,\n OasysDirectivesModule\n ],\n exports: [\n OasysAlertCancelDirective,\n OasysAlertConfirmDirective,\n OasysAlertContentDirective,\n OasysAlertTitleDirective,\n OasysAlertComponent,\n ],\n})\nexport class OasysAlertModule {}\n","import { OnInit, ViewEncapsulation } from '@angular/core';\nimport { Input } from '@angular/core';\nimport { Component} from '@angular/core';\n\ninterface BreadcrumbsItem{\n href: string;\n name: string;\n}\n@Component({\n selector:'ui-breadcrumbs',\n templateUrl: './breadcrumbs.component.html',\n styleUrls: ['./breadcrumbs.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class BreadcrumbsComponent implements OnInit {\n\n @Input() breadcrumbs_values: string | BreadcrumbsItem[];\n values: BreadcrumbsItem[];\n constructor() { }\n\n ngOnInit(): void {\n if(typeof this.breadcrumbs_values === 'string'){\n this.values = JSON.parse(this.breadcrumbs_values)??[];\n }else{\n this.values = this.breadcrumbs_values;\n }\n\n }\n\n}\n\n","<ui-box box_fill_mode=\"fill\" box_space=\"near\" box_background=\"core-secondary\" *ngIf=\"values\">\n <nav aria-label=\"breadcrumbs\">\n <ui-stack stack_gap=\"none\" stack_direction=\"x\" stack_align=\"center\" stack_wrap=\"true\">\n <ng-container *ngFor=\"let item of values; let i = index\">\n <!-- Link followed by an icon -->\n <ui-box box_space=\"none\" box_background=\"none\" box_fill_mode=\"fit\">\n <ui-stack stack_direction=\"x\" stack_align=\"center\" stack_wrap=\"false\" stack_gap=\"none\">\n <ui-button *ngIf=\"i<values.length-1\" button_size=\"small\" button_type=\"tertiary\" button_full_width=\"true\" href=\"{{item.href}}\"> \n <span #buttontext> {{item.name}} </span>\n </ui-button> \n <ui-icon *ngIf=\"i<values.length-1\" icon_name=\"chevron-right\" icon_size=\"small\" icon_class=\"buttonIcon\" aria-hidden=\"true\"></ui-icon>\n </ui-stack>\n </ui-box>\n <!-- Last link and current page -->\n <ui-button *ngIf=\"i===values.length-1\" button_size=\"small\" button_type=\"tertiary\" button_full_width=\"true\" href=\"{{item.href}}\" [attr.aria-current]=\"item.name\"> \n <span #buttontext> {{item.name}} </span>\n </ui-button> \n </ng-container>\n </ui-stack>\n </nav>\n</ui-box>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { OasysButtonModule } from '../button/button.module';\nimport { OasysIconModule } from '../icon/icon.module';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { BreadcrumbsComponent } from './breadcrumbs.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [BreadcrumbsComponent],\n imports: [CommonModule, OasysButtonModule, OasysIconModule, OasysLayoutModule, OasysDirectivesModule],\n exports: [BreadcrumbsComponent],\n})\nexport class OasysBreadcrumbModule {}\n","import { DOCUMENT } from '@angular/common';\nimport { Component, Input, OnInit, Output, ViewEncapsulation, EventEmitter, ChangeDetectionStrategy, ChangeDetectorRef, OnChanges, ContentChild, ElementRef, AfterViewInit, Inject, HostBinding } from '@angular/core';\nimport { Breakpoint, BreakpointService } from '../../services/breakpoint.service';\n\n\n@Component({\n selector:'ui-button-group',\n templateUrl: './button-group.component.html',\n styleUrls: ['./button-group.component.scss'],\n encapsulation: ViewEncapsulation.None, // to hide non ui-buttons via css\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class OasysButtonGroupComponent implements OnInit {\n\n prefix: '';\n\n @Input() button_group_align: 'start' | 'center' | 'end' = 'start';\n @Input() button_group_collapse_below: 'tablet' | 'laptop' | 'desktop' | 'none' = 'tablet';\n\n // Used for only 'ghost' buttons (button_type=\"tertiary\")\n // applies a negative X margin so that the text of a button aligns with\n // other content. Do not use unless all buttons are of type Tertiary.\n @Input() button_group_ghost_align: 'none' | 'small' | 'large' = 'none';\n\n @HostBinding('class') get class() {\n return `\n ui-button-group-ghost-${this.button_group_ghost_align}\n `\n }\n\n constructor(private breakpointService: BreakpointService){}\n\n\n ngOnInit(): void {\n }\n\n get shouldCollapse(): boolean {\n switch (this.button_group_collapse_below) {\n case 'tablet':\n return this.breakpointService.currentSize.value === Breakpoint.MOBILE;\n case 'laptop':\n return this.breakpointService.currentSize.value === Breakpoint.MOBILE || this.breakpointService.currentSize.value === Breakpoint.TABLET\n case 'desktop':\n return this.breakpointService.currentSize.value === Breakpoint.MOBILE || this.breakpointService.currentSize.value === Breakpoint.TABLET || this.breakpointService.currentSize.value === Breakpoint.LAPTOP;\n default:\n return false;\n }\n }\n}\n","<ui-stack\n stack_gap=\"near\"\n stack_direction=\"x\"\n [stack_collapse_below]=\"button_group_collapse_below\"\n [stack_distribute]=\"button_group_align\"\n>\n<ng-content></ng-content>\n</ui-stack>\n\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { OasysButtonGroupComponent } from './button-group.component';\nimport { OasysButtonModule } from '../button/button.module';\nimport { OasysLayoutModule } from '../layout';\n\n@NgModule({\n declarations: [OasysButtonGroupComponent],\n imports: [OasysLayoutModule, CommonModule, RouterModule, OasysButtonModule],\n exports: [OasysButtonGroupComponent],\n})\nexport class OasysButtonGroupModule {}\n","import { Injectable, Inject, Optional } from '@angular/core';\n\ntype ImageFormat = 'webp' | 'jpg';\ntype ImageCDNs = 'contentful' | 'thumbor' | void;\n\nexport interface ImageResponse {\n srcSetUrls: string;\n fallbackUrl: string;\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ImageService {\n private mediaUrl: string;\n private fallbackBreakpoint: number = 768;\n\n private breakpoints: number[] = [\n 320, 360, 375, 414, 640, 750, 768, 1080, 1280, 1366, 1440, 1536, 1600, 1680, 1920, 2560, 3440,\n 3840,\n ];\n\n constructor(@Inject('env') @Optional() env: { mediaUrl: string }) {\n this.mediaUrl = env?.mediaUrl ?? 'https://media.bloomdev.org';\n }\n\n private getQualityForWidth(width: number): number {\n return width > 1440 ? 50 : 75;\n }\n\n private generateUrl(\n baseUrl: string,\n format: ImageFormat,\n width: number,\n quality: number,\n cdnType: ImageCDNs,\n ): string {\n switch (cdnType) {\n case 'thumbor':\n return `${this.mediaUrl}/v1/${width}x0/filters:format(${format}):quality(${quality})/${baseUrl}`;\n case 'contentful':\n return `${baseUrl}?w=${width}&fm=${format}&q=${quality}`;\n default:\n return baseUrl;\n }\n }\n\n private generateUrls(\n baseUrl: string,\n format: ImageFormat,\n sizes: number[],\n isFallback: boolean,\n cdnType: ImageCDNs,\n ): string {\n return sizes\n .map((width) => {\n const quality = isFallback ? 100 : this.getQualityForWidth(width);\n const url = this.generateUrl(baseUrl, format, width, quality, cdnType);\n return isFallback ? url : `${url} ${width}w`;\n })\n .join(', ');\n }\n\n private detectCdnType(baseUrl: string): ImageCDNs {\n if (\n baseUrl.includes('assets-0.bloomandwild.com') ||\n baseUrl.includes('bw-site-images-processed-staging.s3.amazonaws.com')\n ) {\n return 'thumbor';\n } else if (baseUrl.includes('images.ctfassets.net/')) {\n return 'contentful';\n }\n }\n\n private getImageUrlsFromCDN(\n baseUrl: string,\n format: ImageFormat,\n sizes: number[],\n isFallback: boolean,\n ): string {\n const cdnType = this.detectCdnType(baseUrl);\n\n if (isFallback) {\n sizes = [this.fallbackBreakpoint];\n }\n\n return this.generateUrls(baseUrl, format, sizes, isFallback, cdnType);\n }\n\n public generateImageUrl(baseUrl: string): ImageResponse {\n return {\n srcSetUrls: this.getImageUrlsFromCDN(baseUrl, 'webp', this.breakpoints, false),\n fallbackUrl: this.getImageUrlsFromCDN(baseUrl, 'jpg', this.breakpoints, true),\n } as ImageResponse;\n }\n}\n","import { DOCUMENT } from '@angular/common';\nimport { Component, ElementRef, HostBinding, Input, OnInit } from '@angular/core';\nimport { ImageService, ImageResponse } from '../../services/image.service';\n\n@Component({\n selector: 'ui-image',\n templateUrl: './image.component.html',\n styleUrls: ['./image.component.scss']\n})\nexport class ImageComponent implements OnInit {\n\n @Input() image_src: string = '';\n @Input() image_alt_text: string;\n @Input() image_fill: boolean;\n\n @Input() fetchpriority: 'low' | 'high' | 'auto' = 'auto';\n @Input() loading: 'lazy' | 'eager' | 'auto' = 'lazy';\n @Input() preload_aspect_ratio: '1:1' | '3:4' | '3:5' | '4:3' | '5:3' | '5:4' | '13:15' = '1:1'\n\n imageUrlResponse: ImageResponse;\n imageRatioWidth: number;\n imageRatioHeight: number;\n\n private intersectionObserver: IntersectionObserver;\n\n @HostBinding('class') get class() {\n return `${this.image_fill ? 'imageFill' : ''}`\n }\n\n constructor(private imageService: ImageService, private el: ElementRef) {}\n\n private setupLazyLoading(): void {\n const options = {\n removeAfterObserved: true,\n root: null,\n rootMargin: '200px',\n threshold: 0.01\n };\n\n this.intersectionObserver = new IntersectionObserver((entries) => {\n entries.forEach((entry) => {\n if (entry.isIntersecting) {\n const imageElement = this.el.nativeElement.querySelector('img');\n const sourceElement = this.el.nativeElement.querySelector('source');\n imageElement.setAttribute('src', this.imageUrlResponse.fallbackUrl);\n sourceElement.setAttribute('srcset', this.imageUrlResponse.srcSetUrls);\n this.intersectionObserver.unobserve(entry.target);\n }\n });\n }, options);\n\n const imageElement = this.el.nativeElement.querySelector('img');\n this.intersectionObserver.observe(imageElement);\n }\n\n\n ngOnInit(): void {\n\n const ratios = this.preload_aspect_ratio.split(':');\n this.imageRatioWidth = parseInt(ratios[0], 10);\n this.imageRatioHeight = parseInt(ratios[1], 10);\n this.imageUrlResponse = this.imageService.generateImageUrl(this.image_src);\n\n\n if (!('loading' in HTMLImageElement.prototype)) {\n this.setupLazyLoading();\n }\n\n if(!this.image_alt_text) {\n console.error(`Image is missing an alt tag, image url is ${this.image_src}`);\n }\n }\n\n}\n","<picture>\n <source\n srcset=\"{{imageUrlResponse.srcSetUrls}}\"\n type=\"image/webp\"/>\n\n <img\n [ngClass]=\"{'imageFill': image_fill}\"\n [attr.width]=\"imageRatioWidth\"\n [attr.height]=\"imageRatioHeight\"\n [attr.src]=\"imageUrlResponse.fallbackUrl\"\n [attr.loading]=\"loading\"\n [attr.fetchpriority]=\"fetchpriority\"\n />\n</picture>\n","import { AfterViewInit, Component, ElementRef, HostListener, Input, OnInit, ViewChild } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { CardImageFormat } from './card';\n@Component({\n selector: 'ui-card',\n templateUrl: './card.component.html',\n styleUrls: ['./card.component.scss']\n})\nexport class CardComponent implements OnInit, AfterViewInit {\n // We need to know the label height so that we can adjust the parent stack placement\n @ViewChild(\"imagelabel\", { static: false, read: ElementRef }) imageLabel: ElementRef;\n\n // Card image variables\n @Input() label_text: string;\n @Input() image: string;\n @Input() alt_text: string;\n @Input() image_format: CardImageFormat;\n aspectRatio: string;\n\n // Card content variables\n @Input() small_title_left: string;\n @Input() small_sub_title_right: string;\n @Input() standard_content: string;\n @Input() bold_content: string;\n stackOffset: string;\n\n constructor(private tokenService: TokenService) { }\n\n ngOnInit(): void {\n this.aspectRatio = this.setImageAspectRatio(this.image_format);\n \n }\n\n ngAfterViewInit(): void {\n this.setStackPlacement();\n }\n\n /**\n * This calculates the stack offset based on the image labels height.\n */\n @HostListener('window:resize', ['$event'])\n setStackPlacement(): void {\n this.stackOffset = `calc(-${\n this.imageLabel?.nativeElement?.offsetHeight / 2\n }px - ${this.tokenService.getTokenValue('--semantic-spacing-box-tight')}`;\n }\n\n /**\n * This function retrieves the appropriate design token value based on the passed imageFormat choice\n * \n * @param format - The format of the image e.g. square, portrait, landscape\n * @returns - string to be used as the aspect ratio\n */\n setImageAspectRatio(format: CardImageFormat): string {\n switch(format) {\n case 'square':\n return this.tokenService.getTokenValue('--component-card-aspect-ratio-square');\n case 'portrait':\n return this.tokenService.getTokenValue('--component-card-aspect-ratio-portrait');\n case 'landscape':\n return this.tokenService.getTokenValue('--component-card-aspect-ratio-landscape');\n default:\n return this.tokenService.getTokenValue('--component-card-aspect-ratio-portrait');\n }\n }\n}\n","<ui-box class=\"ui-card\" box_background=\"core-primary\" box_space=\"none\">\n <ui-stack stack_align=\"center\" stack_gap=\"tight\">\n <ui-box\n class=\"ui-card__image\"\n [ngStyle]=\"{'aspect-ratio': aspectRatio}\"\n box_background=\"transparent\"\n box_align_x=\"center\"\n box_space=\"none\">\n <ui-image [image_src]=\"image\" [image_alt_text]=\"alt_text\" [image_fill]=\"true\"></ui-image>\n </ui-box>\n <ui-stack stack_gap=\"tight\" [ngStyle]=\"{'margin-top': stackOffset}\">\n <ui-box\n #imagelabel\n *ngIf=\"label_text\"\n class=\"card__image-label center-content\"\n box_background=\"tint-highlight\"\n box_align_x=\"center\"\n box_align_y=\"center\"\n box_space_left=\"near\"\n box_space_right=\"near\"\n box_space_bottom=\"tight\"\n box_space_top=\"tight\">\n <h5>{{label_text}}</h5>\n </ui-box>\n <ui-box *ngIf=\"small_title_left || small_sub_title_right\" [box_space_top]=\"label_text ? 'none' : 'tight'\" box_space=\"none\" box_background=\"transparent\" >\n <ui-stack stack_direction=\"x\" stack_distribute=\"space-between\" stack_gap=\"tight\">\n <span class=\"text-body--supporting text-color--supporting\">{{small_title_left}}</span>\n <span class=\"text-body--supporting text-color--supporting\">{{small_sub_title_right}}</span>\n </ui-stack>\n </ui-box>\n <p *ngIf=\"standard_content\" class=\"text-label--default center-content\">{{standard_content}}</p>\n <p *ngIf=\"bold_content\" class=\"text-label--primary text-body--emphasis\">{{bold_content}}</p>\n </ui-stack>\n </ui-stack>\n</ui-box>\n","import { CommonModule } from '@angular/common';\nimport { ModuleWithProviders, NgModule } from '@angular/core';\nimport { ImageService } from '../../services/image.service';\nimport { ImageComponent } from './image.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [ImageComponent],\n imports: [CommonModule, OasysDirectivesModule],\n exports: [ImageComponent],\n providers: [ImageService],\n})\nexport class OasysImageModule {\n public static forRoot(environment: { mediaUrl: string }): ModuleWithProviders<OasysImageModule> {\n return {\n ngModule: OasysImageModule,\n providers: [\n ImageService,\n {\n provide: 'env',\n useValue: environment,\n },\n ],\n };\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { TokenService } from '../../services/token.service';\nimport { OasysImageModule } from '../image';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { CardComponent } from './card.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n@NgModule({\n declarations: [CardComponent],\n imports: [CommonModule, OasysLayoutModule, RouterModule, OasysImageModule, OasysDirectivesModule],\n exports: [CardComponent],\n providers: [TokenService],\n})\nexport class OasysCardModule {}\n","import { Input, ViewEncapsulation } from '@angular/core';\nimport { Component} from '@angular/core';\nimport { DividerType } from './divider';\n\n\n@Component({\n selector:'ui-divider',\n templateUrl: './divider.component.html',\n styleUrls: ['./divider.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class DividerComponent {\n @Input()\n divider_type: DividerType = 'secondary';\n\n getClass(): string{\n return this.divider_type==='secondary'? `ui-divider--type-${this.divider_type}`: `ui-divider--type-${this.divider_type}`;\n }\n}\n\n","<ui-box box_fill_mode=\"fill\" box_space=\"none\" box_background=\"core-secondary\" [ngClass]=\"getClass()\"></ui-box>","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { DividerComponent } from './divider.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [DividerComponent],\n imports: [CommonModule, OasysLayoutModule, OasysDirectivesModule],\n exports: [DividerComponent],\n})\nexport class OasysDividerModule {}\n","import { Component, Input, OnInit, ViewEncapsulation, OnChanges, SimpleChanges, HostBinding } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { HeadingAlignment, HeadingGap, HeadingType } from './heading';\nimport { UIBoolean } from './heading';\n\n@Component({\n selector:'ui-heading',\n templateUrl: './heading.component.html',\n styleUrls: ['./heading.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class OasysHeadingComponent implements OnInit {\n\n @Input()\n heading_type: HeadingType = 'primary';\n\n @Input()\n heading_on_dark: UIBoolean;\n\n @Input()\n heading_title: string;\n\n @Input()\n heading_seo_priority: boolean = false;\n\n @Input()\n heading_priority?: 1 | 2 | 3 | 4 | 5 | 6;\n\n @Input()\n heading_alignment_override?: HeadingAlignment;\n\n @Input()\n heading_subtitle?: string = '';\n\n @Input()\n heading_surtitle?: string = '';\n\n headingAlignment: HeadingAlignment;\n headingGap: HeadingGap;\n\n\n @HostBinding('class') get class() {\n return `\n ${this.heading_on_dark ? 'text-color--on-dark' : ''}\n ui-heading-alignment-${this.headingAlignment}\n `\n }\n\n constructor(private tokenService: TokenService) { }\n\n headingTypeIsFunctional(headingType: HeadingType): boolean {\n return (headingType||'').indexOf('functional') !== -1;\n }\n\n setupHeadingStackAlignment(headingType: HeadingType): void {\n if(this.heading_alignment_override) {\n this.headingAlignment = this.heading_alignment_override;\n return;\n }\n\n const alignment = this.tokenService.getTokenValue('--component-heading-alignment-default') as HeadingAlignment;\n const functionalAlignment = this.tokenService.getTokenValue('--component-heading-alignment-functional') as HeadingAlignment;\n\n this.headingAlignment = this.headingTypeIsFunctional(headingType) ? functionalAlignment : alignment;\n\n }\n\n setupHeadingStackGap(headingType: HeadingType): void {\n if(this.headingTypeIsFunctional(headingType)){\n this.headingGap = this.tokenService.getTokenValue('--component-heading-gap-functional') as HeadingGap;\n return;\n }\n\n if(this.heading_type === 'secondary') {\n this.headingGap = this.tokenService.getTokenValue('--component-heading-gap-secondary') as HeadingGap;\n return;\n }\n\n if(this.heading_type === 'primary') {\n this.headingGap = this.tokenService.getTokenValue('--component-heading-gap-primary') as HeadingGap;\n return;\n }\n\n // Hero gap\n this.headingGap = this.tokenService.getTokenValue('--component-heading-gap-default') as HeadingGap;\n }\n\n ngOnInit(): void {\n this.setupHeadingStackAlignment(this.heading_type);\n this.setupHeadingStackGap(this.heading_type);\n this.heading_priority = this.heading_priority || this.heading_seo_priority ? 1 : 2;\n }\n\n}\n","<div>\n <ui-stack [stack_align]=\"headingAlignment\" [stack_gap]=\"headingGap\">\n\n <p *ngIf=\"heading_surtitle && heading_surtitle.length\" class=\"heading-surtitle text-body--supporting text-color--supporting\">\n {{heading_surtitle}}\n </p>\n\n <ng-template #content>\n <span\n class=\"heading-title\"\n [ngClass]=\"{\n 'text-heading': !headingTypeIsFunctional(heading_type),\n 'text-heading--functional': headingTypeIsFunctional(heading_type),\n\n 'text-heading--hero': heading_type === 'hero',\n 'text-heading--primary': heading_type === 'primary',\n 'text-heading--secondary': heading_type === 'secondary',\n 'text-heading--functional--primary': heading_type === 'functional-primary',\n 'text-heading--functional--secondary': heading_type === 'functional-secondary'\n }\"\n >{{heading_title}}</span>\n </ng-template>\n\n <h1 role=\"heading\" [attr.aria-level]=\"heading_priority\" class=\"seo-h1\" *ngIf=\"heading_seo_priority\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </h1>\n <span role=\"heading\" [attr.aria-level]=\"heading_priority\" *ngIf=\"!heading_seo_priority\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </span>\n\n <p\n *ngIf=\"heading_subtitle && heading_subtitle.length\"\n class=\"heading-subtitle\"\n [ngClass]=\"{\n 'text-body--hero': heading_type === 'hero',\n 'text-body--default': heading_type !== 'hero'\n }\"\n >{{heading_subtitle}}</p>\n\n </ui-stack>\n</div>","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { OasysHeadingComponent } from './heading.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [OasysHeadingComponent],\n imports: [CommonModule, OasysLayoutModule, OasysDirectivesModule],\n exports: [OasysHeadingComponent],\n providers: [TokenService],\n})\nexport class OasysHeadingModule {}\n","import { Component, Input, OnInit, ViewEncapsulation } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { LayoutBackgrounds } from '../layout/Layout';\n\n@Component({\n selector: 'ui-hero',\n templateUrl: './hero.component.html',\n styleUrls: ['./hero.component.scss']\n})\nexport class HeroComponent implements OnInit {\n\n // Style input variables\n @Input() min_container_height: number;\n @Input() image_left_desktop: boolean = false;\n @Input() image_top_mobile: boolean = true;\n @Input() background_colour: LayoutBackgrounds;\n\n // Content input variables\n @Input() heading_title: string;\n @Input() heading_subtitle: string;\n @Input() heading_surtitle: string;\n @Input() primary_cta_text: string;\n @Input() secondary_cta_text: string;\n @Input() image: string;\n @Input() alt_text: string;\n @Input() media_type: 'image' | 'video' = 'image';\n\n // Event input variables\n @Input() href_primary_cta: string = '';\n @Input() href_secondary_cta: string = '';\n\n // Design token variables\n heroCtaAlignment: string;\n backgroundIsDark: string;\n heroInsetSpaceSmall: string;\n heroInsetSpaceLarge: string;\n\n constructor(private tokenService: TokenService) { }\n\n ngOnInit(): void {\n this.heroCtaAlignment = this.tokenService.getTokenValue('--component-hero-actions-alignment');\n this.backgroundIsDark = this.tokenService.getTokenValue(`--semantic-on-dark-${this.background_colour}`);\n this.heroInsetSpaceSmall = this.tokenService.getTokenValue(`--component-hero-inset-spacing-small`);\n this.heroInsetSpaceLarge = this.tokenService.getTokenValue(`--component-hero-inset-spacing-large`);\n }\n\n}\n","<ui-box [box_background]=\"background_colour\" box_space=\"none\">\n <ui-grid [ngStyle]=\"{'min-height' : min_container_height ? min_container_height + 'px' : 'auto'}\" grid_gap=\"none\" grid_collapse_below=\"tablet\">\n <ui-column columns=\"5\" [ngClass]=\"{'image-left': image_left_desktop, 'image-top': image_top_mobile}\">\n <ui-box box_fill_mode=\"fill\" box_align_y=\"center\" box_background=\"transparent\" [box_space]=\"{mobile: heroInsetSpaceSmall, tablet: heroInsetSpaceSmall, laptop: heroInsetSpaceLarge, desktop: heroInsetSpaceLarge}\">\n <ui-stack stack_direction=\"y\" stack_align=\"center\" stack_distribute=\"center\" stack_gap=\"default\">\n <ui-heading\n heading_type=\"primary\"\n [heading_on_dark]=\"backgroundIsDark === 'on-dark' ? true : false\"\n [heading_title]=\"heading_title\"\n [heading_seo_priority]=\"true\"\n [heading_subtitle]=\"heading_subtitle\"\n [heading_surtitle]=\"heading_surtitle\">\n </ui-heading>\n <!-- TODO: replace with ui-button-group once built-->\n <ui-stack\n *ngIf=\"primary_cta_text\"\n class=\"cta-container\"\n stack_direction=\"x\"\n [stack_align]=\"heroCtaAlignment\"\n [stack_distribute]=\"heroCtaAlignment\"\n stack_wrap=\"true\"\n stack_gap=\"near\">\n <ui-button\n bwtrackas=\"oasys.hero-block.primary-cta\"\n button_size=\"large\"\n [button_type]=\"backgroundIsDark === 'on-dark' ? 'primary-inverse' : 'primary'\"\n [href]=\"href_primary_cta\">\n <span #buttontext>{{primary_cta_text}}</span>\n </ui-button>\n <ui-button\n *ngIf=\"secondary_cta_text\"\n bwtrackas=\"oasys.hero-block.secondary-cta\"\n button-size=\"large\"\n [button_type]=\"backgroundIsDark === 'on-dark' ? 'secondary-inverse' : 'secondary'\"\n [href]=\"href_secondary_cta\">\n <span #buttontext>{{secondary_cta_text}}</span>\n </ui-button>\n </ui-stack>\n </ui-stack>\n </ui-box>\n </ui-column>\n <ui-column columns=\"7\">\n <ui-image\n *ngIf=\"media_type === 'image'\"\n [image_src]=\"image\"\n [image_alt_text]=\"alt_text\"\n preload_aspect_ratio=\"5:4\"\n [image_fill]=\"true\"></ui-image>\n <ng-content *ngIf=\"media_type === 'video'\"></ng-content>\n </ui-column>\n </ui-grid>\n</ui-box>\n\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { OasysButtonModule } from '../button/button.module';\nimport { OasysHeadingModule } from '../heading/heading.module';\nimport { OasysImageModule } from '../image';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { HeroComponent } from './hero.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [HeroComponent],\n imports: [CommonModule, OasysButtonModule, OasysHeadingModule, OasysLayoutModule, OasysImageModule, OasysDirectivesModule],\n exports: [HeroComponent],\n providers: [TokenService],\n})\nexport class OasysHeroModule {}\n","import { Component, Input, OnInit } from '@angular/core';\ninterface linkItem {\n href: string;\n name: string;\n}\n@Component({\n selector: 'ui-seo-block',\n templateUrl: './seo-block.component.html',\n styleUrls: ['./seo-block.component.scss'],\n})\nexport class SeoBlockComponent implements OnInit {\n @Input() heading_paragraph: string;\n @Input() heading_links: string;\n @Input() main_content: string;\n @Input() expanded_content: string;\n @Input() links: string | linkItem[];\n\n @Input() read_more_content_text: string;\n @Input() read_less_content_text: string;\n @Input() show_more_links_text: string;\n @Input() show_less_links_text: string;\n\n linksColumnsNumber: number;\n expandedLinksVisible: boolean = false;\n expandedContentVisible: boolean = false;\n linksValues: linkItem[];\n\n constructor() {}\n\n showMoreLinks(flag: boolean): void {\n this.expandedLinksVisible = flag;\n }\n\n showMoreContent(flag: boolean): void {\n this.expandedContentVisible = flag;\n }\n\n ngOnInit(): void {\n // This is to fix a bug in Oasys that threats arrays as string initially\n if (typeof this.links === 'string') {\n this.linksValues = JSON.parse(this.links) ?? [];\n } else {\n this.linksValues = this.links;\n }\n\n if (this.linksValues.length <= 10) {\n this.linksColumnsNumber = 1;\n } else if (this.linksValues.length <= 20) {\n this.linksColumnsNumber = 2;\n } else {\n this.linksColumnsNumber = 3;\n }\n }\n}\n","<ui-box>\n <ui-grid>\n <ui-column columns=\"6\">\n <ui-box box_space=\"none\" [box_space_right]=\"{\n mobile: 'none',\n tablet: 'expanded',\n laptop: 'expanded',\n desktop: 'expanded'\n }\">\n <ui-stack stack_gap=\"near\">\n <ui-box box_space=\"none\">\n <ui-heading heading_type=\"functional-primary\" heading_title=\"{{ heading_paragraph }}\"></ui-heading>\n </ui-box>\n <ui-box box_space=\"none\">\n <span class=\"text-body--default\" class=\"ui-prose\" [innerHTML]=\"main_content\"></span>\n <span class=\"text-body--default\" class=\"ui-prose\" *ngIf=\"expandedContentVisible\"\n [innerHTML]=\"expanded_content\"></span>\n </ui-box>\n <ui-box box_space=\"none\" *ngIf=\"expanded_content\">\n <span *ngIf=\"!expandedContentVisible\" role=\"button\" (click)=\"showMoreContent(true)\"\n class=\"text-link text-link--standalone\">\n {{read_more_content_text}}\n </span>\n <span *ngIf=\"expandedContentVisible\" role=\"button\" (click)=\"showMoreContent(false)\"\n class=\"text-link text-link--standalone\">\n {{read_less_content_text}}\n </span>\n </ui-box>\n </ui-stack>\n </ui-box>\n </ui-column>\n <ui-column columns=\"6\">\n <ui-box box_space=\"none\">\n <ui-stack stack_gap=\"near\">\n <ui-box box_space=\"none\">\n <ui-heading heading_type=\"functional-secondary\" heading_title=\"{{ heading_links }}\"></ui-heading>\n </ui-box>\n <ui-stack stack_gap=\"tight\">\n <ui-box box_space=\"none\" box_fill_mode=\"fit\" [ngStyle]=\"{'column-count': linksColumnsNumber}\"\n class=\"links-container text-body--supporting\">\n <ng-container *ngFor=\"let link of linksValues; index as i\">\n <ui-box box_space=\"none\" box_space_bottom=\"tight\" box_fill_mode=\"fit\" class=\"link-container\"\n [ngClass]=\"{ 'hidden-mobile': i > 4 && !expandedLinksVisible }\">\n <a href=\"{{ link.href }}\">\n {{ link.name }}\n </a>\n </ui-box>\n </ng-container>\n </ui-box>\n <ui-box box_space=\"none\" class=\"hidden-desktop hidden-tablet\" *ngIf=\"linksValues.length > 4\">\n <span *ngIf=\"!expandedLinksVisible\" (click)=\"showMoreLinks(true)\" class=\"text-link text-link--standalone\">\n {{show_more_links_text}}\n </span>\n <span *ngIf=\"expandedLinksVisible\" (click)=\"showMoreLinks(false)\" class=\"text-link text-link--standalone\">\n {{show_less_links_text}}\n </span>\n </ui-box>\n </ui-stack>\n\n </ui-stack>\n </ui-box>\n </ui-column>\n </ui-grid>\n</ui-box>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { OasysButtonModule } from '../button/button.module';\nimport { OasysHeadingModule } from '../heading/heading.module';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { SeoBlockComponent } from './seo-block.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [SeoBlockComponent],\n imports: [\n CommonModule,\n OasysButtonModule,\n OasysHeadingModule,\n OasysLayoutModule,\n OasysDirectivesModule\n ],\n exports: [SeoBlockComponent],\n providers: [TokenService],\n})\nexport class OasysSeoBlockModule {}\n","import { ChangeDetectionStrategy, Component, Input, OnInit, ViewEncapsulation } from '@angular/core';\nimport { TextTransform } from './text';\n\n@Component({\n selector:'ui-text',\n templateUrl: './text.component.html',\n styleUrls: ['./text.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TextComponent implements OnInit {\n\n @Input() textAlign: 'left' | 'center' | 'right' = 'left';\n @Input() textWeight: 'normal' | 'medium' | 'bold' = 'normal';\n @Input() textTransform: TextTransform = 'none';\n\n uiTextClasses!: string;\n\n constructor() { }\n\n ngOnInit(): void {\n this.uiTextClasses = [\n `ui-text--align-${this.textAlign}`,\n `ui-text--weight-${this.textWeight}`,\n `ui-text--transform-${this.textTransform}`,\n ].join(' ');\n }\n\n}\n","<span class=\"ui-text\" [ngClass]=\"uiTextClasses\"><ng-content></ng-content></span>","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { TextComponent } from './text.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [TextComponent],\n imports: [CommonModule, OasysDirectivesModule],\n exports: [TextComponent],\n})\nexport class OasysTextModule {}\n","import { Component, Input, OnInit, AfterViewInit } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { LayoutBackgrounds } from '../layout/Layout';\n\n@Component({\n selector: 'ui-section',\n templateUrl: './section.component.html',\n styleUrls: ['./section.component.scss']\n})\nexport class SectionComponent implements OnInit, AfterViewInit {\n\n // Style input variables\n @Input() brand_background_colour: LayoutBackgrounds;\n @Input() non_brand_background_colour: string;\n @Input() text_on_dark_override: boolean = false; // This is for custom/non-brand BG colours\n @Input() image_on_left: boolean = false;\n @Input() section_type: 'spotlight' | 'inform' = 'inform';\n\n // Content input variables\n @Input() heading_title: string;\n @Input() heading_subtitle: string;\n @Input() primary_cta_text: string;\n @Input() secondary_cta_text: string;\n @Input() image: string;\n @Input() alt_text: string;\n\n // Event input variables\n @Input() href_primary_cta: string = '';\n @Input() href_secondary_cta: string = '';\n\n backgroundIsDark: string;\n isSpotLight: string;\n uiBoxId: string; // To randomise the box id\n outterContainer: any = {};\n innerContainer: any = {};\n\n containerInsetSpaceSmall: string;\n containerInsetSpaceLarge: string;\n\n contentInsetSpaceSmall: string;\n contentInsetSpaceLarge: string;\n\n imageAspectRatio: string;\n\n constructor(private tokenService: TokenService) { }\n\n ngAfterViewInit(): void {\n\n if(this.non_brand_background_colour) {\n this.setNonBrandBackgroundColour();\n }\n\n this.backgroundIsDark = this.tokenService.getTokenValue(`--semantic-on-dark-${this.brand_background_colour}`);\n }\n\n ngOnInit(): void {\n\n this.containerInsetSpaceSmall = this.tokenService.getTokenValue(`--component-section-inset-spacing-container-small`);\n this.containerInsetSpaceLarge = this.tokenService.getTokenValue(`--component-section-inset-spacing-container-large`);\n\n this.contentInsetSpaceSmall = this.tokenService.getTokenValue(`--component-section-inset-spacing-content-small-${this.section_type}`);\n this.contentInsetSpaceLarge = this.tokenService.getTokenValue(`--component-section-inset-spacing-content-large-${this.section_type}`);\n\n this.imageAspectRatio = this.tokenService.getTokenValue(`--component-section-image-aspect-ratio-${this.section_type}`);\n\n // Setting a unique ID, this is important & needed to apply\n // styles to ui-box\n this.uiBoxId = Date.now() + '-' + Math.random();\n }\n\n /**\n * Users are able to set custom non brand background colours\n * If a non brand background colour is provided we ignore branded colours\n * even if they are provided.\n */\n setNonBrandBackgroundColour(): void {\n const box = document.getElementById(`ui-box-${this.uiBoxId}`);\n\n if (box) {\n this.brand_background_colour = undefined;\n box.style.background = this.non_brand_background_colour;\n\n if (this.text_on_dark_override) {\n box.classList.add('text-color--on-dark');\n }\n }\n\n }\n\n}\n","<ui-box\nid=\"ui-box-{{uiBoxId}}\"\n[box_background]=\"brand_background_colour\"\n[box_space_left]=\"section_type === 'spotlight' && !image_on_left ? 'none' : ''\"\n[box_space_right]=\"section_type === 'spotlight' && image_on_left ? 'none' : ''\"\n[box_space]=\"section_type === 'spotlight' ? 'none' : {mobile: containerInsetSpaceSmall, tablet: containerInsetSpaceLarge, laptop: containerInsetSpaceLarge, desktop: containerInsetSpaceLarge}\">\n\n <ui-grid [grid_gap]=\"section_type === 'spotlight' ? 'none' : 'default'\">\n <ui-column columns=\"6\" [ngClass]=\"{'image-left': image_on_left, 'image-top-mobile': image_on_left}\">\n <ui-box\n box_space=\"none\"\n box_background=\"none\"\n box_align_y=\"center\"\n >\n <ui-image [image_src]=\"image\" [image_alt_text]=\"alt_text\" [preload_aspect_ratio]=\"imageAspectRatio\"></ui-image>\n </ui-box>\n </ui-column>\n\n <ui-column columns=\"6\">\n <ui-box\n [box_background]=\"brand_background_colour\"\n box_align_y=\"center\"\n [box_space]=\"section_type === 'spotlight' ? {mobile: contentInsetSpaceSmall, tablet: contentInsetSpaceLarge, laptop: contentInsetSpaceLarge, desktop: contentInsetSpaceLarge} : {mobile: contentInsetSpaceSmall, tablet: contentInsetSpaceSmall, laptop: contentInsetSpaceLarge, desktop: contentInsetSpaceLarge}\">\n <ui-stack\n stack_direction=\"y\"\n stack_align=\"center\"\n stack_distribute=\"center\"\n stack_wrap=\"true\"\n >\n <ui-heading\n [heading_type]=\"section_type === 'spotlight' ? 'primary' : 'functional-primary'\"\n [heading_title]=\"heading_title\"\n [heading_subtitle]=\"heading_subtitle\">\n </ui-heading>\n\n <ui-stack\n stack_direction=\"x\"\n stack_align=\"start\"\n [stack_distribute]=\"section_type === 'spotlight' ? 'center' : 'start'\"\n stack_wrap=\"true\"\n stack_gap=\"near\">\n\n <a class=\"text-link text-link--standalone\" [href]=\"href_primary_cta\" bwtrackas=\"oasys.story-block.primary-cta\">{{primary_cta_text}}</a>\n <a *ngIf=\"section_type !== 'spotlight'\" class=\"text-link text-link--standalone\" [href]=\"href_secondary_cta\" bwtrackas=\"oasys.story-block.secondary-cta\">{{secondary_cta_text}}</a>\n\n </ui-stack>\n </ui-stack>\n </ui-box>\n </ui-column>\n </ui-grid>\n</ui-box>","import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SectionComponent } from './section.component';\nimport { OasysHeadingModule } from '../heading/heading.module';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { OasysImageModule } from '../image/image.module';\nimport { TokenService } from '../../services/token.service';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [SectionComponent],\n imports: [CommonModule, OasysHeadingModule, OasysImageModule, OasysLayoutModule, OasysDirectivesModule],\n exports: [SectionComponent],\n providers: [TokenService]\n})\nexport class SectionModule { }\n","import { DOCUMENT } from '@angular/common';\nimport { \n Component, \n ElementRef, \n Input, \n OnInit, \n ViewChild, \n ViewEncapsulation, \n Inject, \n OnDestroy} from '@angular/core';\nimport { SwiperOptions } from 'swiper';\nimport { TokenService } from '../../services/token.service';\n\n/* This component wraps around the swiper.js library WebComponent */\n\n@Component({\n selector: 'ui-carousel',\n templateUrl: './carousel.component.html',\n styleUrls: ['./carousel.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class CarouselComponent implements OnInit {\n // The swiper instance\n @ViewChild(\"swiper\", { static: true }) swiper: ElementRef;\n @ViewChild(\"carouselscrollbarplaceholder\", { static: false, read: ElementRef }) carouselscrollbarplaceholder: ElementRef;\n @ViewChild(\"carouselctastack\", { static: false, read: ElementRef }) carouselctastack: ElementRef;\n\n // Rewinds the slides back to the start when the user reaches the end when set to true\n @Input() rewind: boolean = false;\n\n @Input() carousel_overflow: boolean = false;\n\n @Input() carousel_gap: 'default' | 'none' = 'default';\n\n @Input() carousel_pagination: 'scroll-arrows' | 'none' = 'none';\n\n @Input() carousel_align: 'start' | 'end' | 'center' = 'start';\n\n @Input() carousel_slides_per_view_desktop: number = 4;\n @Input() carousel_slides_per_view_laptop: number = 3;\n @Input() carousel_slides_per_view_tablet: number = 2.5;\n @Input() carousel_slides_per_view_mobile: number = 1.25;\n\n constructor(private tokenService: TokenService, @Inject(DOCUMENT) private document: Document, private element: ElementRef) {}\n\n ngOnInit(): void {\n this.setUpIntersectionObserver();\n }\n\n /**\n * Set up the intersection observer with the relevant options\n */\n setUpIntersectionObserver() {\n // Set IntersectionObserver options\n const options = {\n root: null,\n rootMargin: '0px',\n threshold: 0.5,\n once: true\n }\n // Set up the IntersectionObserver\n const observer = new IntersectionObserver(this.onIntersection.bind(this), options);\n observer.observe(this.element.nativeElement);\n }\n\n /**\n * This function gets called just before the user scrolls this component into view\n * @param entries - An array of interswection observer entries\n * @param observer - Intersection observer \n */\n onIntersection(entries: IntersectionObserverEntry[], observer: IntersectionObserver) {\n entries.forEach(entry => {\n if(entry.isIntersecting) {\n // Initialise swiper\n this.initSwiper();\n observer.unobserve(entry.target)\n }\n })\n }\n\n getStyle(element, style): string {\n\n return this.document.defaultView.getComputedStyle(element, null).getPropertyValue(style);\n }\n\n /**\n * Set the scrollbar placement and width based on carouselscrollbarplaceholder and carouselctastack\n */\n setupScrollbarLayoutProperties(): void {\n if(this.carousel_pagination !== 'scroll-arrows'){\n return;\n }\n \n const carouselStack: HTMLElement = this.carouselctastack.nativeElement;\n const scrollbarElement: HTMLElement = this.carouselscrollbarplaceholder.nativeElement;\n\n const scrollbarHeight = this.document.defaultView.getComputedStyle(document.documentElement).getPropertyValue(\"--swiper-scrollbar-size\");\n\n this.element.nativeElement.style.setProperty(\n \"--ui-carousel-scrollbar-width\", `${scrollbarElement.offsetWidth - parseInt(this.getStyle(carouselStack, 'gap'), 10)}px`\n );\n\n this.element.nativeElement.style.setProperty(\n \"--ui-carousel-scrollbar-offset-top\", `${parseInt(this.getStyle(carouselStack, 'gap'), 10) + (scrollbarElement.offsetHeight / 2) + (parseInt(scrollbarHeight, 10) / 2)}px`\n );\n }\n\n /**\n * Set the dynamic swiper params and initialise the swiper instance\n */\n initSwiper(): void {\n // Colour overides\n const scrollbarBackgroundColour = this.tokenService.getTokenValue('--global-color-linen-grey-20');\n const scrollbarSliderColour = this.tokenService.getTokenValue('--global-color-grey-90');\n\n // swiper element\n const swiperEl = this.swiper.nativeElement;\n\n const carouselGap = this.tokenService.getTokenValue(`--semantic-spacing-stack-${this.carousel_gap}`);\n\n // swiper parameters\n const swiperParams: SwiperOptions = {\n rewind: this.rewind,\n grabCursor: true,\n spaceBetween: (parseInt(carouselGap, 10) * 10) || 0,\n scrollbar: {\n enabled: this.carousel_pagination === 'scroll-arrows',\n draggable: true,\n },\n injectStyles: [\n `\n .swiper-scrollbar.swiper-scrollbar-horizontal {\n position: relative;\n top: var(--ui-carousel-scrollbar-offset-top);\n width: var(--ui-carousel-scrollbar-width);\n height: 2px;\n background: ${scrollbarBackgroundColour}\n }\n\n .swiper-scrollbar-drag {\n background: ${scrollbarSliderColour}\n }\n\n .swiper-wrapper {\n align-items: ${this.carousel_align === 'center' ? this.carousel_align : 'flex-'+this.carousel_align}\n }\n `,\n ],\n breakpoints: {\n 0: {\n scrollbar: {\n enabled: this.carousel_pagination === 'scroll-arrows',\n draggable: true\n },\n slidesPerView: this.carousel_slides_per_view_mobile\n },\n 767: {\n scrollbar: {\n enabled: this.carousel_pagination === 'scroll-arrows',\n draggable: true\n },\n slidesPerView: this.carousel_slides_per_view_tablet\n },\n 1080: {\n scrollbar: {\n enabled: this.carousel_pagination === 'scroll-arrows',\n draggable: true\n },\n slidesPerView: this.carousel_slides_per_view_laptop\n },\n 1440: {\n scrollbar: {\n enabled: this.carousel_pagination === 'scroll-arrows',\n draggable: true\n },\n slidesPerView: this.carousel_slides_per_view_desktop\n }\n },\n on: {},\n };\n\n // now we need to assign all parameters to the Swiper element\n Object.assign(swiperEl, swiperParams);\n\n // and now initialize it\n swiperEl.initialize();\n\n swiperEl.addEventListener('resize', () => {\n this.setupScrollbarLayoutProperties()\n });\n }\n\n /**\n * Move the carousel on to the next slide\n */\n nextSlide(): void {\n this.swiper.nativeElement.swiper.slideNext();\n }\n\n /**\n * Move the carousel back to the previous slide\n */\n previousSlide(): void {\n this.swiper.nativeElement.swiper.slidePrev();\n }\n}\n","<ui-box\nclass=\"ui-carousel\"\n[ngClass]=\"{'ui-carousel-overflow': carousel_overflow}\"\nbox_align_y=\"center\"\nbox_space=\"none\"\nbox_content_fill_width=\"true\"\nbox_background=\"transparent\">\n\n <ui-stack #carouselctastack>\n <!-- Swiper WebComponent-->\n <swiper-container\n #swiper\n init=\"false\"\n center-insufficient-slides=\"true\"\n prevent-clicks-propagation=\"true\">\n <ng-content></ng-content>\n </swiper-container>\n\n <!-- Custom navigation buttons -->\n <ui-stack stack_direction=\"x\" stack_align=\"center\" *ngIf=\"carousel_pagination === 'scroll-arrows'\">\n <div class=\"ui-carousel-scrollbar-placeholder\" #carouselscrollbarplaceholder></div>\n <ui-box \n box_space=\"none\" \n box_fill_mode=\"fit\" \n [box_space_right]=\"{mobile: 'tight', tablet: 'none', laptop: 'none', desktop: 'none'}\"\n box_background=\"transparent\">\n <ui-stack\n *ngIf=\"!(swiper?.swiper?.isBeginning && swiper?.swiper?.isEnd)\"\n stack_direction=\"x\"\n stack_gap=\"near\">\n <!-- Previous button-->\n <ui-button\n class=\"ui-carousel__previous\"\n button_size=\"large\"\n button_icon_placement=\"iconOnly\"\n button_icon=\"arrow-left\"\n button_type=\"secondary\"\n (clicked)=\"previousSlide()\">\n <span #buttontext>Prevous slide</span>\n </ui-button>\n <!-- Next button-->\n <ui-button\n class=\"ui-carousel__next\"\n button_size=\"large\"\n button_icon_placement=\"iconOnly\"\n button_icon=\"arrow-right\"\n button_type=\"secondary\"\n (clicked)=\"nextSlide()\">\n <span #buttontext>Next slide</span>\n </ui-button>\n </ui-stack>\n </ui-box>\n </ui-stack>\n </ui-stack>\n</ui-box>\n","import { CommonModule } from '@angular/common';\nimport { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { OasysButtonModule } from '../button/button.module';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { CarouselComponent } from './carousel.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n// Import function to register Swiper custom elements\nimport { register } from 'swiper/element/bundle';\nregister();\n\n@NgModule({\n declarations: [CarouselComponent],\n imports: [CommonModule, OasysButtonModule, OasysLayoutModule, OasysDirectivesModule],\n exports: [CarouselComponent],\n providers: [TokenService],\n schemas: [CUSTOM_ELEMENTS_SCHEMA]\n})\nexport class OasysCarouselModule {}\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { LayoutBackgrounds } from '../layout/Layout';\n\n@Component({\n selector: 'ui-banner',\n templateUrl: './banner.component.html',\n styleUrls: ['./banner.component.scss']\n})\nexport class BannerComponent implements OnInit {\n\n @Input() background_colour: LayoutBackgrounds = 'tint-highlight';\n @Input() cta_text: string;\n @Input() banner_title: string;\n @Input() banner_surtitle: string;\n @Input() banner_subtitle: string;\n\n // CTA actions\n @Input() cta_link: string;\n @Output() cta_clicked: EventEmitter<void> = new EventEmitter();\n\n // Design token variables;\n backgroundIsDark: string;\n\n constructor(private tokenService: TokenService) { }\n\n ngOnInit(): void {\n this.backgroundIsDark = this.tokenService.getTokenValue(`--semantic-on-dark-${this.background_colour}`);\n }\n\n onCtaClicked(): void {\n this.cta_clicked.emit();\n }\n\n}\n","<ui-box\n [box_background]=\"background_colour\"\n box_space_left=\"none\"\n box_space_right=\"none\"\n box_fill_mode=\"fill\"\n box_align_x=\"center\"\n class=\"ui-banner\">\n <ui-grid grid_collapse_below=\"tablet\">\n <ui-column\n [columns]=\"{mobile: '12', tablet: '10', laptop: '8', desktop: '8'}\"\n [column_inset]=\"{mobile: '0', tablet: '1', laptop: '2', desktop: '2'}\"\n class=\"ui-banner__content\">\n <ui-stack class=\"content__stack\" stack_direction=\"x\" stack_distribute=\"space-between\" stack_align=\"center\" stack_gap=\"near\">\n <ui-stack class=\"content__stack\" stack_direction=\"x\" stack_align=\"center\" stack_gap=\"near\">\n <!-- This is a stack as the icon will go here above the ui-heading -->\n <ui-heading\n *ngIf=\"banner_title || banner_surtitle || banner_subtitle\"\n heading_type=\"functional-primary\"\n [heading_title]=\"banner_title\"\n [heading_surtitle]=\"banner_surtitle\"\n [heading_subtitle]=\"banner_subtitle\">\n </ui-heading>\n </ui-stack>\n <ui-button\n *ngIf=\"cta_text\"\n bwtrackas=\"oasys.hva-banner.cta\"\n button_size=\"large\"\n [button_type]=\"backgroundIsDark === 'on-dark' ? 'primary-inverse' : 'primary'\"\n [href]=\"cta_link\"\n (clicked)=\"onCtaClicked()\">\n <span #buttontext>{{cta_text}}</span>\n </ui-button>\n </ui-stack>\n </ui-column>\n </ui-grid>\n</ui-box>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { OasysButtonModule } from '../button/button.module';\nimport { OasysHeadingModule } from '../heading/heading.module';\nimport { OasysIconModule } from '../icon/icon.module';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { BannerComponent } from './banner.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [BannerComponent],\n imports: [CommonModule, OasysButtonModule, OasysHeadingModule, OasysLayoutModule, OasysIconModule, OasysDirectivesModule],\n exports: [BannerComponent],\n providers: [TokenService],\n})\nexport class OasysBannerModule {}","/*\n * Public API Surface of oasys-lib\n */\nexport * from './lib/components/alert';\nexport * from './lib/components/breadcrumbs';\nexport * from './lib/components/button';\nexport * from './lib/components/button-group';\nexport * from './lib/components/card';\nexport * from './lib/components/divider';\nexport * from './lib/components/heading';\nexport * from './lib/components/hero';\nexport * from './lib/components/seo-block';\nexport * from './lib/components/icon';\nexport * from './lib/components/image';\nexport * from './lib/components/layout';\nexport * from './lib/components/text';\nexport * from './lib/components/section';\nexport * from './lib/components/carousel';\nexport * from './lib/components/card';\nexport * from './lib/components/banner';\nexport * from './lib/injection-tokens/frontend-app-injection.tokens';\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i0","Directive","BehaviorSubject","Subject","takeUntil","i1","Injectable","DOCUMENT","Inject","i1.TokenService","Component","ViewEncapsulation","ChangeDetectionStrategy","Input","i2","InjectionToken","HostListener","EventEmitter","i1.IconComponent","i3.OasysHrefDirective","ContentChild","Output","i1.BreakpointService","i2.LayoutBoxComponent","i3.LayoutStackComponent","i4.IconComponent","i5.OasysButtonComponent","i6","CommonModule","RouterModule","NgModule","i1.LayoutBoxComponent","i2.LayoutStackComponent","i3.OasysButtonComponent","i5","HostBinding","Optional","i1.ImageService","ElementRef","i4.ImageComponent","ViewChild","i3","i3.LayoutGridComponent","i4.LayoutGridColumnComponent","i5.LayoutStackComponent","i6.OasysHeadingComponent","i7.OasysButtonComponent","i8.ImageComponent","i9","i2.LayoutGridComponent","i3.LayoutGridColumnComponent","i4.LayoutStackComponent","i5.OasysHeadingComponent","i7.OasysHrefDirective","i5.ImageComponent","i6.LayoutStackComponent","i7.OasysHeadingComponent","i8","i9.OasysHrefDirective","i4.OasysButtonComponent","register","CUSTOM_ELEMENTS_SCHEMA"],"mappings":"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"}
1
+ {"version":3,"file":"oasys-lib.umd.js","sources":["../../../projects/oasys-lib/src/lib/components/alert/alert-cancel.directive.ts","../../../projects/oasys-lib/src/lib/components/alert/alert-confirm.directive.ts","../../../projects/oasys-lib/src/lib/components/alert/alert-content.directive.ts","../../../projects/oasys-lib/src/lib/components/alert/alert-title.directive.ts","../../../node_modules/tslib/tslib.es6.js","../../../projects/oasys-lib/src/lib/services/breakpoint.service.ts","../../../projects/oasys-lib/src/lib/services/token.service.ts","../../../projects/oasys-lib/src/lib/components/layout/box/box.component.ts","../../../projects/oasys-lib/src/lib/components/layout/stack/stack.component.ts","../../../projects/oasys-lib/src/lib/components/icon/icon.component.ts","../../../projects/oasys-lib/src/lib/components/icon/icon.component.html","../../../projects/oasys-lib/src/lib/injection-tokens/frontend-app-injection.tokens.ts","../../../projects/oasys-lib/src/lib/directives/href/href.directive.ts","../../../projects/oasys-lib/src/lib/components/button/button.component.ts","../../../projects/oasys-lib/src/lib/components/button/button.component.html","../../../projects/oasys-lib/src/lib/components/alert/alert.component.ts","../../../projects/oasys-lib/src/lib/components/alert/alert.component.html","../../../projects/oasys-lib/src/lib/services/href.service.ts","../../../projects/oasys-lib/src/lib/directives/directives.module.ts","../../../projects/oasys-lib/src/lib/components/icon/icon.module.ts","../../../projects/oasys-lib/src/lib/components/button/button.module.ts","../../../projects/oasys-lib/src/lib/components/layout/container/container.component.ts","../../../projects/oasys-lib/src/lib/components/layout/grid/grid-column.component.ts","../../../projects/oasys-lib/src/lib/components/layout/grid/grid.component.ts","../../../projects/oasys-lib/src/lib/components/layout/layout.module.ts","../../../projects/oasys-lib/src/lib/components/alert/alert.module.ts","../../../projects/oasys-lib/src/lib/components/breadcrumbs/breadcrumbs.component.ts","../../../projects/oasys-lib/src/lib/components/breadcrumbs/breadcrumbs.component.html","../../../projects/oasys-lib/src/lib/components/breadcrumbs/breadcrumbs.module.ts","../../../projects/oasys-lib/src/lib/components/button-group/button-group.component.ts","../../../projects/oasys-lib/src/lib/components/button-group/button-group.component.html","../../../projects/oasys-lib/src/lib/components/button-group/button-group.module.ts","../../../projects/oasys-lib/src/lib/services/image.service.ts","../../../projects/oasys-lib/src/lib/components/image/image.component.ts","../../../projects/oasys-lib/src/lib/components/image/image.component.html","../../../projects/oasys-lib/src/lib/components/card/card.component.ts","../../../projects/oasys-lib/src/lib/components/card/card.component.html","../../../projects/oasys-lib/src/lib/components/image/image.module.ts","../../../projects/oasys-lib/src/lib/components/card/card.module.ts","../../../projects/oasys-lib/src/lib/components/divider/divider.component.ts","../../../projects/oasys-lib/src/lib/components/divider/divider.component.html","../../../projects/oasys-lib/src/lib/components/divider/divider.module.ts","../../../projects/oasys-lib/src/lib/components/heading/heading.component.ts","../../../projects/oasys-lib/src/lib/components/heading/heading.component.html","../../../projects/oasys-lib/src/lib/components/heading/heading.module.ts","../../../projects/oasys-lib/src/lib/components/hero/hero.component.ts","../../../projects/oasys-lib/src/lib/components/hero/hero.component.html","../../../projects/oasys-lib/src/lib/components/hero/hero.module.ts","../../../projects/oasys-lib/src/lib/components/seo-block/seo-block.component.ts","../../../projects/oasys-lib/src/lib/components/seo-block/seo-block.component.html","../../../projects/oasys-lib/src/lib/components/seo-block/seo-block.module.ts","../../../projects/oasys-lib/src/lib/components/text/text.component.ts","../../../projects/oasys-lib/src/lib/components/text/text.component.html","../../../projects/oasys-lib/src/lib/components/text/text.module.ts","../../../projects/oasys-lib/src/lib/components/section/section.component.ts","../../../projects/oasys-lib/src/lib/components/section/section.component.html","../../../projects/oasys-lib/src/lib/components/section/section.module.ts","../../../projects/oasys-lib/src/lib/components/carousel/carousel.component.ts","../../../projects/oasys-lib/src/lib/components/carousel/carousel.component.html","../../../projects/oasys-lib/src/lib/components/carousel/carousel.module.ts","../../../projects/oasys-lib/src/lib/components/banner/banner.component.ts","../../../projects/oasys-lib/src/lib/components/banner/banner.component.html","../../../projects/oasys-lib/src/lib/components/banner/banner.module.ts","../../../projects/oasys-lib/src/public-api.ts","../../../projects/oasys-lib/src/oasys-lib.ts"],"sourcesContent":["import { AfterContentChecked, Directive, ElementRef } from '@angular/core';\n\n@Directive({\n selector: 'ui-alert-cancel, [ui-alert-cancel]',\n})\nexport class OasysAlertCancelDirective implements AfterContentChecked {\n public text = '';\n\n constructor(private elem: ElementRef) {}\n\n public ngAfterContentChecked(): void {\n this.text = this.elem.nativeElement.innerText;\n }\n}\n","import { AfterContentChecked, Directive, ElementRef } from '@angular/core';\n\n@Directive({\n selector: 'ui-alert-confirm, [ui-alert-confirm]',\n})\nexport class OasysAlertConfirmDirective implements AfterContentChecked {\n public text = '';\n\n constructor(private elem: ElementRef) {}\n\n public ngAfterContentChecked(): void {\n this.text = this.elem.nativeElement.innerText;\n }\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: 'ui-alert-content, [ui-alert-content]',\n})\nexport class OasysAlertContentDirective {}\n","import { Directive } from '@angular/core';\n\n@Directive({\n selector: 'ui-alert-title, [ui-alert-title]',\n})\nexport class OasysAlertTitleDirective {}\n","/******************************************************************************\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 __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.push(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.push(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\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 (g && (g = 0, op[0] && (_ = 0)), _) 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 var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\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: false } : 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\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","import { BreakpointObserver } from '@angular/cdk/layout';\nimport { Injectable, OnDestroy } from '@angular/core';\nimport { BehaviorSubject, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\nexport enum Breakpoint {\n MOBILE = '(min-width: 0px)',\n TABLET = '(min-width: 768px)',\n LAPTOP = '(min-width: 1080px)',\n DESKTOP = '(min-width: 1440px)',\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class BreakpointService implements OnDestroy {\n public currentSize: BehaviorSubject<Breakpoint> =\n new BehaviorSubject<Breakpoint>(Breakpoint.MOBILE);\n\n private breakpoints = [\n Breakpoint.DESKTOP,\n Breakpoint.LAPTOP,\n Breakpoint.TABLET,\n Breakpoint.MOBILE,\n ];\n\n private isDestroyed: Subject<void> = new Subject<void>();\n\n constructor(public breakpointObserver: BreakpointObserver) {\n breakpointObserver\n .observe(this.breakpoints)\n .pipe(takeUntil(this.isDestroyed))\n .subscribe((result) => {\n for (let match of Object.keys(result.breakpoints)) {\n if (result.breakpoints[match]) {\n return this.currentSize.next(match as Breakpoint);\n }\n }\n });\n }\n\n public ngOnDestroy(): void {\n this.isDestroyed.next();\n this.isDestroyed.complete();\n }\n}\n","import { DOCUMENT } from '@angular/common';\nimport { Inject, Injectable } from '@angular/core';\n\n@Injectable()\nexport class TokenService {\n\n brandCustomPropertyName: string = '--utility-brand-name';\n\n constructor(@Inject(DOCUMENT) private document: Document){}\n\n /*\n Get the brand name for the currently enable custom property set (ie. /bloomon/variables.css)\n Because variables are scoped via a selector (ie: ':root .bloomon {}')\n we cannot get brand-specific custom properties programatically\n\n Important: Ensure that the component requiring the brand name has locally scoped the custom property:\n | ui-icon {\n | --icon-component-brand: var(--utility-brand-name);\n | }\n */\n getBrandName(): string {\n return this.getTokenValue(this.brandCustomPropertyName);\n }\n\n getTokenValue(tokenName: string, element?: Element): string {\n const rootElement = element || this.document.querySelector('[class*=\"brand-tokens\"]');\n if(!rootElement) {\n return '';\n }\n return this.document.defaultView.getComputedStyle(rootElement)\n .getPropertyValue(tokenName)\n .trim() || '';\n }\n\n}","import { ChangeDetectionStrategy, ChangeDetectorRef, OnChanges, OnInit, ViewEncapsulation } from '@angular/core';\nimport { Input } from '@angular/core';\nimport { Component} from '@angular/core';\nimport { TokenService } from '../../../services/token.service';\nimport { LayoutAlignment, LayoutBackgrounds, LayoutBoxSizes, LayoutFillModes } from '../Layout';\n\n@Component({\n selector:'ui-box',\n template: '<div class=\"ui-box-content\"><ng-content></ng-content></div>',\n host: {\n '[class]' : 'boxLayoutClasses'\n },\n styleUrls: ['./box.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LayoutBoxComponent implements OnInit, OnChanges {\n didFirstInit: boolean = false;\n prefix = 'ui-layout-box';\n boxLayoutClasses?: string[];\n backgroundIsDark: boolean = false;\n\n @Input() box_space?: LayoutBoxSizes = 'default';\n\n @Input() box_space_top?: LayoutBoxSizes;\n @Input() box_space_right?: LayoutBoxSizes;\n @Input() box_space_bottom?: LayoutBoxSizes;\n @Input() box_space_left?: LayoutBoxSizes;\n\n @Input() box_align_x?: LayoutAlignment = 'start';\n @Input() box_align_y?: LayoutAlignment = 'start';\n\n @Input() box_fill_mode?: LayoutFillModes = 'fill';\n\n @Input() box_background: LayoutBackgrounds = 'core-primary';\n @Input() box_content_fill_width: boolean = false;\n\n constructor(private changes: ChangeDetectorRef, private tokenService: TokenService) {}\n\n /**\n * Check the passed string to see if it contains JSON\n *\n * @param string\n * @returns - boolean\n */\n stringContainsJson(string: string):boolean {\n try {\n JSON.parse(string);\n } catch (e) {\n return false;\n }\n\n return true;\n }\n\n getSizeClasses(spaceInput?: LayoutBoxSizes, overrideName?: string): string[] {\n if(!spaceInput || spaceInput === undefined){\n return null;\n }\n\n // Used for responsive spacing, check if the input is either an object or JSON\n if(typeof spaceInput === 'object' || this.stringContainsJson(spaceInput)) {\n // If JSON then convert this to an object\n const spaceInputObject: LayoutBoxSizes = typeof spaceInput === 'object' ? spaceInput : JSON.parse(spaceInput)\n\n return Object.keys(spaceInputObject).map((key) => {\n return `${this.prefix}-${spaceInputObject[key]}-${key}${overrideName ? `-${overrideName}` : ``}`\n });\n\n }\n\n return [\n this.prefix,\n `${this.prefix}-${spaceInput}${overrideName ? `-${overrideName}` : ``}`\n ];\n\n }\n\n getOverrideClasses(spaceOverrides): string[] {\n const spaceTypes = ['top', 'right', 'bottom', 'left'];\n\n return spaceOverrides.map((item, index) => {\n return this.getSizeClasses(item, spaceTypes[index]);\n }).filter(Boolean);\n }\n\n getAlignmentClasses(alignmentOverride): string[] {\n const spaceTypes = ['align-x', 'distribute-y'];\n\n return alignmentOverride.map((item, index) => {\n return item ? `${this.prefix}-${spaceTypes[index]}-${item}` : undefined;\n }).filter(Boolean);\n }\n\n getBackgroundClass(): string {\n const value = this.box_background ? `${this.prefix}-background-${this.box_background}` : ``;\n return value;\n }\n\n ngOnChanges(): void {\n if(!this.didFirstInit){\n return;\n }\n this.ngOnInit();\n this.changes.markForCheck();\n }\n\n ngOnInit(): void {\n const spaceOverrides = [this.box_space_top, this.box_space_right, this.box_space_bottom, this.box_space_left];\n const alignmentOverride = [this.box_align_x, this.box_align_y];\n this.backgroundIsDark = this.tokenService.getTokenValue(`--semantic-on-dark-${this.box_background}`) === 'on-dark';\n // Basic basic classes\n this.boxLayoutClasses = [\n this.getSizeClasses(this.box_space),\n this.getOverrideClasses(spaceOverrides),\n this.getAlignmentClasses(alignmentOverride),\n this.getBackgroundClass(),\n this.box_fill_mode === 'fit' ? `${this.prefix}-fit-content` : `${this.prefix}-fill-container`,\n this.backgroundIsDark ? 'text-color--on-dark' : '',\n this.box_content_fill_width ? '' : `${this.prefix}-content-max-width`\n ].flat(10).filter(Boolean);\n\n this.didFirstInit = true;\n }\n\n}\n\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, OnChanges, OnInit, ViewEncapsulation } from '@angular/core';\nimport { LayoutDirections, LayoutAlignment, LayoutGapSizes, LayoutDistribute } from '../Layout';\n\n@Component({\n selector:'ui-stack',\n template: '<ng-content></ng-content>',\n host: {\n '[class]' : 'stackLayoutClasses'\n },\n styleUrls: ['./stack.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LayoutStackComponent implements OnInit, OnChanges {\n didFirstInit: boolean = false;\n prefix = 'ui-layout-stack';\n stackLayoutClasses?: string[];\n\n @Input() stack_gap: LayoutGapSizes = 'default';\n @Input() stack_align: LayoutAlignment = 'start';\n @Input() stack_direction: LayoutDirections = 'y';\n @Input() stack_distribute?: LayoutDistribute = 'start';\n @Input() stack_wrap?: Boolean = false;\n @Input() stack_collapse_below: 'tablet' | 'laptop' | 'desktop' | 'none' = 'none';\n\n constructor(private changes: ChangeDetectorRef) {}\n\n defaultDistribution(): LayoutDistribute {\n if(this.stack_distribute) {\n return this.stack_distribute;\n }\n\n return this.stack_direction === 'x' ? 'fit' : 'fill';\n }\n\n ngOnChanges(): void {\n if(!this.didFirstInit){\n return;\n }\n this.ngOnInit();\n this.changes.markForCheck();\n }\n\n ngOnInit(): void {\n this.stack_distribute = this.defaultDistribution();\n this.stackLayoutClasses = [\n this.prefix,\n `${this.prefix}-${this.stack_gap}`,\n `${this.prefix}-align-${this.stack_align}`,\n `${this.prefix}-distribute-${this.stack_distribute}`,\n `${this.prefix}-direction-${this.stack_direction}`,\n `${this.prefix}-${this.stack_wrap ? 'wrap' : 'no-wrap'}`,\n `${this.prefix}-collapse-below-${this.stack_collapse_below}`\n ]\n this.didFirstInit = true;\n }\n\n}\n","import { DOCUMENT } from '@angular/common';\nimport { Component, Inject, Input, OnChanges, OnInit, ViewEncapsulation } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { IconContext, IconNames } from './icon';\n\n@Component({\n selector:'ui-icon',\n templateUrl: './icon.component.html',\n styleUrls: ['./icon.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class IconComponent implements OnInit, OnChanges {\n @Input() icon_size: 'small'|'large' = 'large';\n @Input() icon_name!: IconNames;\n @Input() icon_context: IconContext = 'none';\n\n @Input() icon_width?: number;\n @Input() icon_height?: number;\n @Input() icon_class?: string;\n\n size?: string;\n iconBrandPath?: string;\n iconDisplayClasses: string[];\n\n constructor(@Inject(DOCUMENT) private document: Document, private tokenService: TokenService) { }\n\n convertRemToPixels(remString: string): number {\n const remNumber = parseFloat(remString.replace('rem', ''));\n return remNumber * parseFloat(getComputedStyle(this.document.documentElement).fontSize);\n }\n\n ngOnChanges(): void {\n this.ngOnInit();\n }\n\n ngOnInit(): void {\n this.iconBrandPath = `${this.tokenService.getBrandName()}`\n this.size = this.tokenService.getTokenValue(`--global-size-icon-${this.icon_size}`);\n\n this.iconDisplayClasses = [\n `icon-context-${this.icon_context}`,\n `icon-size-${this.icon_size}`\n ];\n\n const sizeInPixels = this.convertRemToPixels(this.size);\n this.icon_width = sizeInPixels;\n this.icon_height = sizeInPixels;\n }\n\n}\n","<div class=\"ui-icon\" [ngClass]=\"iconDisplayClasses\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" [attr.width]=\"icon_width\" [attr.height]=\"icon_height\" [attr.class]=\"icon_class\">\n <use attr.xlink:href=\"./{{iconBrandPath}}/assets/icons/icons.svg#icon-{{icon_name}}\"></use>\n </svg>\n</div>\n","import { InjectionToken } from '@angular/core';\nimport { IRoutingHandlerService } from '../directives/href/href.directive';\n\nexport const ROUTING_HANDLER = new InjectionToken<IRoutingHandlerService>('ROUTING_HANDLER');\n","import { AfterViewInit, Directive, ElementRef, HostListener, Inject, OnInit } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { ROUTING_HANDLER} from '../../injection-tokens/frontend-app-injection.tokens';\n\n@Directive({\n selector: 'a, uiHref, [uiHref]'\n})\n\nexport class OasysHrefDirective implements AfterViewInit{\n element: ElementRef;\n \n constructor(\n el: ElementRef,\n @Inject(ROUTING_HANDLER) private routingHandler: IRoutingHandlerService) {\n this.element = el;\n }\n\n @HostListener('click', ['$event'])\n onClick(event: any): void {\n this.routingHandler.handleRoutingOnClick(this.element.nativeElement, event);\n }\n\n ngAfterViewInit(): void {\n this.routingHandler.handleHrefDomains(this.element.nativeElement);\n }\n}\n\nexport interface IRoutingHandlerService {\n handleRoutingOnClick(element: any, event: any): void;\n handleHrefDomains(element: any): void;\n};","import { Component, Input, OnInit, Output, ViewEncapsulation, EventEmitter, ChangeDetectionStrategy, ChangeDetectorRef, OnChanges, ContentChild, ElementRef, AfterViewInit } from '@angular/core';\nimport { IconNames, IconContext } from '../icon/icon';\nimport { TextTransform } from '../text/text';\nimport {\n // ButtonTypeOptions,\n UIButton,\n UIButtonBoolean,\n UIButtonSize,\n UIButtonType\n} from './button';\n\n@Component({\n selector:'ui-button',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class OasysButtonComponent implements OnInit, OnChanges, AfterViewInit {\n\n button: UIButton;\n\n // // Button Content\n @Input() button_icon?: IconNames;\n @Input() button_icon_placement: IconContext = 'leading';\n\n @ContentChild('buttontext') ngContent: ElementRef;\n\n // Button Stylings\n @Input() button_size: UIButtonSize = 'large';\n\n @Input() button_full_width: UIButtonBoolean = false;\n @Input() button_type: UIButtonType = 'primary';\n @Input() button_disabled: UIButtonBoolean = false;\n @Input() button_text_nowrap: UIButtonBoolean = false;\n\n // Button Actions\n @Input() href: string;\n @Output() clicked: EventEmitter<void> = new EventEmitter();\n\n buttonDisplayClasses: string[];\n iconContext: IconContext = 'none';\n textTransform!: TextTransform;\n accessibleButtonContent: string;\n outlineButtonTypes = ['secondary', 'secondary-inverse']\n\n constructor(private changes: ChangeDetectorRef) {}\n\n onClick(): void {\n this.clicked.emit();\n }\n\n createButton(): UIButton {\n\n return <UIButton>{\n buttonIcon: this.button_icon,\n buttonIconPlacement: this.button_icon_placement,\n buttonType: this.button_type,\n buttonSize: this.button_size,\n buttonDisabled: this.button_disabled,\n href: this.href,\n target: '',\n buttonDisplayClasses: [\n `type-${this.button_type}`,\n `size-${this.button_size}`,\n `${this.button_icon ? 'button--has-icon': ''}`,\n `${this.button_text_nowrap ? 'button--nowrap': ''}`,\n `${this.button_full_width ? 'button--full-width': ''}`,\n `${this.button_icon ? 'button--icon--'+this.button_icon_placement : ''}`,\n `${this.outlineButtonTypes.indexOf(this.button_type) !== -1 ? 'button--outline' : ''}`\n ].filter((d) => !!d)\n };\n }\n\n ngAfterViewInit(): void {\n if(this.ngContent?.nativeElement?.innerText) {\n this.accessibleButtonContent = this.ngContent.nativeElement.innerText;\n } else {\n throw new Error(`\n No inner text found. All buttons should have text passed via ng-content to enable accessibility for screen readers, this includes icon-only buttons.\n\n Pass content using the template variable #buttontext eg:\n ui-button()\n span(#buttontext) Buy All The Things\n `)\n }\n }\n\n ngOnChanges(): void {\n this.button = this.createButton();\n this.changes.markForCheck();\n }\n\n ngOnInit(): void {\n this.button = this.createButton();\n }\n}\n","<ng-template #content>\n <div class=\"button-content\">\n <ui-icon *ngIf=\"button.buttonIcon && button.buttonIconPlacement !== 'none'\" [icon_name]=\"button.buttonIcon\" [icon_size]=\"button.buttonSize\" [icon_class]=\"'buttonIcon'\" [icon_context]=\"button.buttonIconPlacement\"></ui-icon>\n <span class=\"ui-text\" [ngClass]=\"{'visuallyhidden': button.buttonIconPlacement === 'iconOnly'}\">\n <ng-content></ng-content>\n </span>\n </div>\n <div class=\"button-overlay\"></div>\n <div class=\"button-overlay-focus\"></div>\n</ng-template>\n\n<button \n *ngIf=\"!button.href\" \n (click)=\"onClick()\"\n [ngClass]=\"button.buttonDisplayClasses\"\n [attr.disabled]=\"button.buttonDisabled === true || null\"\n [attr.aria-label]=\"accessibleButtonContent\"\n [attr.title]=\"accessibleButtonContent\"\n role=\"button\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</button>\n\n<a \n *ngIf=\"button.href\"\n [href]=\"button.href\"\n [attr.disabled]=\"button.buttonDisabled === true || null\"\n [attr.aria-label]=\"accessibleButtonContent\"\n [attr.title]=\"accessibleButtonContent\"\n [ngClass]=\"button.buttonDisplayClasses\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n","import {\n Component,\n ContentChild,\n EventEmitter,\n Input,\n Output,\n} from '@angular/core';\nimport {\n Breakpoint,\n BreakpointService,\n} from '../../services/breakpoint.service';\nimport { OasysAlertCancelDirective } from './alert-cancel.directive';\nimport { OasysAlertConfirmDirective } from './alert-confirm.directive';\n\nexport type UIAlertTone = 'positive' | 'neutral' | 'negative';\n\n@Component({\n selector: 'ui-alert',\n templateUrl: './alert.component.html',\n styleUrls: ['./alert.component.scss'],\n})\nexport class OasysAlertComponent {\n @Input()\n public direction: 'dynamic' | 'vertical' | 'horizontal' = 'dynamic';\n\n @Input()\n public tone: UIAlertTone = 'neutral';\n\n @Output()\n public cancel: EventEmitter<void> = new EventEmitter<void>();\n\n @Output()\n public confirm: EventEmitter<void> = new EventEmitter<void>();\n\n @ContentChild(OasysAlertCancelDirective)\n public cancelButton: OasysAlertCancelDirective;\n\n @ContentChild(OasysAlertConfirmDirective)\n public confirmButton: OasysAlertConfirmDirective;\n\n constructor(public breakpointService: BreakpointService) {}\n\n get isVertical(): boolean {\n switch (this.direction) {\n case 'vertical':\n return true;\n case 'horizontal':\n return false;\n default:\n return this.breakpointService.currentSize.value === Breakpoint.MOBILE;\n }\n }\n\n public cancelled(): void {\n this.cancel.emit();\n }\n\n public confirmed(): void {\n this.confirm.emit();\n }\n}\n","<ui-box class=\"ui-alert\" box_space=\"near\" box_align_x=\"center\" [ngClass]=\"tone\">\n <ui-stack stack_direction=\"x\" stack_gap=\"near\">\n <div class=\"badge\" [ngClass]=\"tone\" [ngSwitch]=\"tone\">\n <ui-icon *ngSwitchCase=\"'negative'\" icon_name=\"error\"></ui-icon>\n <ui-icon *ngSwitchCase=\"'positive'\" icon_name=\"tick\"></ui-icon>\n <ui-icon *ngSwitchDefault icon_name=\"info\"></ui-icon>\n </div>\n\n <ui-stack stack_gap=\"near\" [stack_direction]=\"isVertical ? 'y' : 'x'\">\n <ui-stack class=\"content\" stack_direction=\"y\">\n <div class=\"text-body--emphasis\">\n <ng-content select=\"ui-alert-title\"></ng-content>\n </div>\n <div>\n <ng-content select=\"ui-alert-content\"></ng-content>\n </div>\n </ui-stack>\n\n <ui-box\n box_space=\"none\"\n box_background=\"transparent\"\n [box_fill_mode]=\"isVertical ? 'fill' : 'fit'\"\n >\n <ui-stack stack_direction=\"x\" stack_gap=\"near\" stack_distribute=\"end\">\n <ui-button\n *ngIf=\"cancelButton && cancelButton.text\"\n button_type=\"tertiary\"\n button_text_nowrap=\"true\"\n (clicked)=\"cancelled()\"\n >\n <span #buttontext>\n <ng-content select=\"ui-alert-cancel\"></ng-content>\n </span>\n </ui-button>\n <ui-button\n *ngIf=\"confirmButton && confirmButton.text\"\n button_type=\"secondary\"\n button_text_nowrap=\"true\"\n (clicked)=\"confirmed()\"\n >\n <span #buttontext>\n <ng-content select=\"ui-alert-confirm\"></ng-content>\n </span>\n </ui-button>\n </ui-stack>\n </ui-box>\n </ui-stack>\n </ui-stack>\n</ui-box>\n","import { Injectable } from '@angular/core';\nimport { IRoutingHandlerService } from '../directives/href/href.directive';\n\n@Injectable({ providedIn: 'root' })\nexport class HrefService implements IRoutingHandlerService {\n public handleRoutingOnClick(): void {\n // throw new Error('handleRoutingOnClick has not been implemented');\n }\n\n public handleHrefDomains(): void {\n // throw new Error('handleHrefDomains has not been implemented');\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { ROUTING_HANDLER } from '../injection-tokens/frontend-app-injection.tokens';\nimport { HrefService } from '../services/href.service';\nimport { OasysHrefDirective } from './href/href.directive';\n\n@NgModule({\n declarations: [OasysHrefDirective],\n imports: [CommonModule, RouterModule],\n exports: [OasysHrefDirective],\n providers: [{ provide: ROUTING_HANDLER, useClass: HrefService }],\n})\nexport class OasysDirectivesModule {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { IconComponent } from './icon.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [IconComponent],\n imports: [CommonModule, OasysDirectivesModule],\n exports: [IconComponent],\n providers: [TokenService],\n})\nexport class OasysIconModule {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { OasysIconModule } from '../icon/icon.module';\nimport { OasysButtonComponent } from './button.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [OasysButtonComponent],\n imports: [CommonModule, RouterModule, OasysIconModule, OasysDirectivesModule],\n exports: [OasysButtonComponent],\n})\nexport class OasysButtonModule {}\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Input, OnChanges, OnInit, ViewEncapsulation } from '@angular/core';\nimport { Component} from '@angular/core';\nimport { TokenService } from '../../../services/token.service';\nimport { LayoutContainerSizes } from '../Layout';\n@Component({\n selector:'ui-container',\n template: `\n <ng-content></ng-content>\n `,\n host: {\n '[class]' : 'containerLayoutClasses'\n },\n styleUrls: ['./container.component.scss'],\n\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LayoutContainerComponent implements OnInit, OnChanges {\n @Input() container_fluid: boolean = false;\n @Input() container_gutter: true | false | 'true' | 'false' = true;\n prefix = 'ui-layout-container';\n containerLayoutClasses?: string[];\n\n containerGutterNameLarge: string;\n containerGutterNameSmall: string;\n containerHorizontalSizes: LayoutContainerSizes;\n\n constructor(private changes: ChangeDetectorRef) { }\n\n ngOnChanges(): void {\n this.ngOnInit();\n this.changes.markForCheck();\n }\n\n ngOnInit(): void {\n this.containerLayoutClasses = [\n this.prefix,\n this.container_fluid ? `${this.prefix}-fluid` : '',\n this.container_gutter === true || this.container_gutter === 'true' ? '' : `${this.prefix}-no-gutter`\n ].flat(10).filter(Boolean);\n }\n\n}\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, OnChanges, OnInit, ViewEncapsulation } from '@angular/core';\nimport { ResponsiveGridColumns } from '../Layout';\n\n@Component({\n selector:'ui-column',\n template: '<ng-content></ng-content>',\n host: {\n '[class]' : 'columnLayoutClasses'\n },\n styleUrls: ['./grid.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LayoutGridColumnComponent implements OnInit, OnChanges {\n didFirstInit: boolean = false;\n prefix = 'ui-layout-column';\n columnLayoutClasses?: string[];\n\n @Input() columns: ResponsiveGridColumns = 12;\n @Input() column_inset: ResponsiveGridColumns;\n\n constructor(private changes: ChangeDetectorRef) {}\n\n getSizeClasses(columns: ResponsiveGridColumns, classString: string): string[] {\n\n if(!columns) {\n return [''];\n }\n\n if(typeof columns === 'object'){\n\n return Object.keys(columns).map((key) => {\n return `${this.prefix}${classString}${key}-${columns[key]}`\n });\n\n }\n\n return [\n this.prefix,\n `${this.prefix}${classString}${columns}`,\n ];\n\n }\n\n\n ngOnChanges(): void {\n if(!this.didFirstInit){\n return;\n }\n this.ngOnInit();\n this.changes.markForCheck();\n }\n\n ngOnInit(): void {\n this.columnLayoutClasses = [\n this.prefix,\n this.getSizeClasses(this.columns, '-col-'),\n this.getSizeClasses(this.column_inset, '-col-inset-')\n ].flat(10).filter(Boolean);\n this.didFirstInit = true;\n }\n\n}\n\n","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, OnChanges, OnInit, ViewEncapsulation } from '@angular/core';\n\n@Component({\n selector:'ui-grid',\n template: '<ng-content></ng-content>',\n host: {\n '[class]' : 'gridLayoutClasses'\n },\n styleUrls: ['./grid.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LayoutGridComponent implements OnInit, OnChanges {\n didFirstInit: boolean = false;\n prefix = 'ui-layout-grid';\n gridLayoutClasses?: string[];\n\n @Input() grid_auto: boolean = false;\n @Input() grid_collapse_below: 'tablet' | 'laptop' | 'desktop' | 'none' = 'tablet';\n @Input() grid_gap: 'default' | 'none' | 'expanded' = 'default';\n\n constructor(private changes: ChangeDetectorRef) {}\n\n ngOnChanges(): void {\n if(!this.didFirstInit){\n return;\n }\n this.ngOnInit();\n this.changes.markForCheck();\n }\n\n ngOnInit(): void {\n\n this.gridLayoutClasses = [\n this.prefix,\n `${this.prefix}-${this.grid_gap}`,\n `${this.prefix}-${this.grid_auto ? 'width-auto' : ''}`,\n `${this.prefix}-collapse-below-${this.grid_collapse_below}`,\n ]\n this.didFirstInit = true;\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { LayoutBoxComponent } from './box/box.component';\nimport { LayoutContainerComponent } from './container/container.component';\nimport { LayoutGridColumnComponent } from './grid/grid-column.component';\nimport { LayoutGridComponent } from './grid/grid.component';\nimport { LayoutStackComponent } from './stack/stack.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [\n LayoutBoxComponent,\n LayoutContainerComponent,\n LayoutGridComponent,\n LayoutGridColumnComponent,\n LayoutStackComponent,\n ],\n imports: [OasysDirectivesModule],\n exports: [\n LayoutBoxComponent,\n LayoutContainerComponent,\n LayoutGridComponent,\n LayoutGridColumnComponent,\n LayoutStackComponent,\n ],\n providers: [TokenService],\n})\nexport class OasysLayoutModule {}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { OasysButtonModule } from '../button/button.module';\nimport { OasysIconModule } from '../icon/icon.module';\nimport { OasysLayoutModule } from '../layout';\nimport { OasysAlertCancelDirective } from './alert-cancel.directive';\nimport { OasysAlertConfirmDirective } from './alert-confirm.directive';\nimport { OasysAlertContentDirective } from './alert-content.directive';\nimport { OasysAlertTitleDirective } from './alert-title.directive';\nimport { OasysAlertComponent } from './alert.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [\n OasysAlertCancelDirective,\n OasysAlertConfirmDirective,\n OasysAlertContentDirective,\n OasysAlertTitleDirective,\n OasysAlertComponent,\n ],\n imports: [\n CommonModule,\n OasysLayoutModule,\n OasysButtonModule,\n OasysIconModule,\n OasysDirectivesModule\n ],\n exports: [\n OasysAlertCancelDirective,\n OasysAlertConfirmDirective,\n OasysAlertContentDirective,\n OasysAlertTitleDirective,\n OasysAlertComponent,\n ],\n})\nexport class OasysAlertModule {}\n","import { OnInit, ViewEncapsulation } from '@angular/core';\nimport { Input } from '@angular/core';\nimport { Component} from '@angular/core';\n\ninterface BreadcrumbsItem{\n href: string;\n name: string;\n}\n@Component({\n selector:'ui-breadcrumbs',\n templateUrl: './breadcrumbs.component.html',\n styleUrls: ['./breadcrumbs.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class BreadcrumbsComponent implements OnInit {\n\n @Input() breadcrumbs_values: string | BreadcrumbsItem[];\n values: BreadcrumbsItem[];\n constructor() { }\n\n ngOnInit(): void {\n if(typeof this.breadcrumbs_values === 'string'){\n this.values = JSON.parse(this.breadcrumbs_values)??[];\n }else{\n this.values = this.breadcrumbs_values;\n }\n\n }\n\n}\n\n","<ui-box box_fill_mode=\"fill\" box_space=\"near\" box_background=\"core-secondary\" *ngIf=\"values\">\n <nav aria-label=\"breadcrumbs\">\n <ui-stack stack_gap=\"none\" stack_direction=\"x\" stack_align=\"center\" stack_wrap=\"true\">\n <ng-container *ngFor=\"let item of values; let i = index\">\n <!-- Link followed by an icon -->\n <ui-box box_space=\"none\" box_background=\"none\" box_fill_mode=\"fit\">\n <ui-stack stack_direction=\"x\" stack_align=\"center\" stack_wrap=\"false\" stack_gap=\"none\">\n <ui-button *ngIf=\"i<values.length-1\" button_size=\"small\" button_type=\"tertiary\" button_full_width=\"true\" href=\"{{item.href}}\"> \n <span #buttontext> {{item.name}} </span>\n </ui-button> \n <ui-icon *ngIf=\"i<values.length-1\" icon_name=\"chevron-right\" icon_size=\"small\" icon_class=\"buttonIcon\" aria-hidden=\"true\"></ui-icon>\n </ui-stack>\n </ui-box>\n <!-- Last link and current page -->\n <ui-button *ngIf=\"i===values.length-1\" button_size=\"small\" button_type=\"tertiary\" button_full_width=\"true\" href=\"{{item.href}}\" [attr.aria-current]=\"item.name\"> \n <span #buttontext> {{item.name}} </span>\n </ui-button> \n </ng-container>\n </ui-stack>\n </nav>\n</ui-box>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { OasysButtonModule } from '../button/button.module';\nimport { OasysIconModule } from '../icon/icon.module';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { BreadcrumbsComponent } from './breadcrumbs.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [BreadcrumbsComponent],\n imports: [CommonModule, OasysButtonModule, OasysIconModule, OasysLayoutModule, OasysDirectivesModule],\n exports: [BreadcrumbsComponent],\n})\nexport class OasysBreadcrumbModule {}\n","import { DOCUMENT } from '@angular/common';\nimport { Component, Input, OnInit, Output, ViewEncapsulation, EventEmitter, ChangeDetectionStrategy, ChangeDetectorRef, OnChanges, ContentChild, ElementRef, AfterViewInit, Inject, HostBinding } from '@angular/core';\nimport { Breakpoint, BreakpointService } from '../../services/breakpoint.service';\n\n\n@Component({\n selector:'ui-button-group',\n templateUrl: './button-group.component.html',\n styleUrls: ['./button-group.component.scss'],\n encapsulation: ViewEncapsulation.None, // to hide non ui-buttons via css\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class OasysButtonGroupComponent implements OnInit {\n\n prefix: '';\n\n @Input() button_group_align: 'start' | 'center' | 'end' = 'start';\n @Input() button_group_collapse_below: 'tablet' | 'laptop' | 'desktop' | 'none' = 'tablet';\n\n // Used for only 'ghost' buttons (button_type=\"tertiary\")\n // applies a negative X margin so that the text of a button aligns with\n // other content. Do not use unless all buttons are of type Tertiary.\n @Input() button_group_ghost_align: 'none' | 'small' | 'large' = 'none';\n\n @HostBinding('class') get class() {\n return `\n ui-button-group-ghost-${this.button_group_ghost_align}\n `\n }\n\n constructor(private breakpointService: BreakpointService){}\n\n\n ngOnInit(): void {\n }\n\n get shouldCollapse(): boolean {\n switch (this.button_group_collapse_below) {\n case 'tablet':\n return this.breakpointService.currentSize.value === Breakpoint.MOBILE;\n case 'laptop':\n return this.breakpointService.currentSize.value === Breakpoint.MOBILE || this.breakpointService.currentSize.value === Breakpoint.TABLET\n case 'desktop':\n return this.breakpointService.currentSize.value === Breakpoint.MOBILE || this.breakpointService.currentSize.value === Breakpoint.TABLET || this.breakpointService.currentSize.value === Breakpoint.LAPTOP;\n default:\n return false;\n }\n }\n}\n","<ui-stack\n stack_gap=\"near\"\n stack_direction=\"x\"\n [stack_collapse_below]=\"button_group_collapse_below\"\n [stack_distribute]=\"button_group_align\"\n>\n<ng-content></ng-content>\n</ui-stack>\n\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { OasysButtonGroupComponent } from './button-group.component';\nimport { OasysButtonModule } from '../button/button.module';\nimport { OasysLayoutModule } from '../layout';\n\n@NgModule({\n declarations: [OasysButtonGroupComponent],\n imports: [OasysLayoutModule, CommonModule, RouterModule, OasysButtonModule],\n exports: [OasysButtonGroupComponent],\n})\nexport class OasysButtonGroupModule {}\n","import { Injectable, Inject, Optional } from '@angular/core';\n\ntype ImageFormat = 'webp' | 'jpg';\ntype ImageCDNs = 'contentful' | 'thumbor' | void;\n\nexport interface ImageResponse {\n srcSetUrls: string;\n fallbackUrl: string;\n}\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ImageService {\n private mediaUrl: string;\n private fallbackBreakpoint: number = 768;\n\n private breakpoints: number[] = [\n 320, 360, 375, 414, 640, 750, 768, 1080, 1280, 1366, 1440, 1536, 1600, 1680, 1920, 2560, 3440,\n 3840,\n ];\n\n constructor(@Inject('env') @Optional() env: { mediaUrl: string }) {\n this.mediaUrl = env?.mediaUrl ?? 'https://media.bloomdev.org';\n }\n\n private getQualityForWidth(width: number): number {\n return width > 1440 ? 50 : 75;\n }\n\n private generateUrl(\n baseUrl: string,\n format: ImageFormat,\n width: number,\n quality: number,\n cdnType: ImageCDNs,\n ): string {\n switch (cdnType) {\n case 'thumbor':\n return `${this.mediaUrl}/v1/${width}x0/filters:format(${format}):quality(${quality})/${baseUrl}`;\n case 'contentful':\n return `${baseUrl}?w=${width}&fm=${format}&q=${quality}`;\n default:\n return baseUrl;\n }\n }\n\n private generateUrls(\n baseUrl: string,\n format: ImageFormat,\n sizes: number[],\n isFallback: boolean,\n cdnType: ImageCDNs,\n ): string {\n return sizes\n .map((width) => {\n const quality = isFallback ? 100 : this.getQualityForWidth(width);\n const url = this.generateUrl(baseUrl, format, width, quality, cdnType);\n return isFallback ? url : `${url} ${width}w`;\n })\n .join(', ');\n }\n\n private detectCdnType(baseUrl: string): ImageCDNs {\n if (\n baseUrl.includes('assets-0.bloomandwild.com') ||\n baseUrl.includes('bw-site-images-processed-staging.s3.amazonaws.com')\n ) {\n return 'thumbor';\n } else if (baseUrl.includes('images.ctfassets.net/')) {\n return 'contentful';\n }\n }\n\n private getImageUrlsFromCDN(\n baseUrl: string,\n format: ImageFormat,\n sizes: number[],\n isFallback: boolean,\n ): string {\n const cdnType = this.detectCdnType(baseUrl);\n\n if (isFallback) {\n sizes = [this.fallbackBreakpoint];\n }\n\n return this.generateUrls(baseUrl, format, sizes, isFallback, cdnType);\n }\n\n public generateImageUrl(baseUrl: string): ImageResponse {\n return {\n srcSetUrls: this.getImageUrlsFromCDN(baseUrl, 'webp', this.breakpoints, false),\n fallbackUrl: this.getImageUrlsFromCDN(baseUrl, 'jpg', this.breakpoints, true),\n } as ImageResponse;\n }\n}\n","import { DOCUMENT } from '@angular/common';\nimport { Component, ElementRef, HostBinding, Input, OnInit } from '@angular/core';\nimport { ImageService, ImageResponse } from '../../services/image.service';\n\n@Component({\n selector: 'ui-image',\n templateUrl: './image.component.html',\n styleUrls: ['./image.component.scss']\n})\nexport class ImageComponent implements OnInit {\n\n @Input() image_src: string = '';\n @Input() image_alt_text: string;\n @Input() image_fill: boolean;\n\n @Input() fetchpriority: 'low' | 'high' | 'auto' = 'auto';\n @Input() loading: 'lazy' | 'eager' | 'auto' = 'lazy';\n @Input() preload_aspect_ratio: '1:1' | '3:4' | '3:5' | '4:3' | '5:3' | '5:4' | '13:15' = '1:1'\n\n imageUrlResponse: ImageResponse;\n imageRatioWidth: number;\n imageRatioHeight: number;\n\n private intersectionObserver: IntersectionObserver;\n\n @HostBinding('class') get class() {\n return `${this.image_fill ? 'imageFill' : ''}`\n }\n\n constructor(private imageService: ImageService, private el: ElementRef) {}\n\n private setupLazyLoading(): void {\n const options = {\n removeAfterObserved: true,\n root: null,\n rootMargin: '200px',\n threshold: 0.01\n };\n\n this.intersectionObserver = new IntersectionObserver((entries) => {\n entries.forEach((entry) => {\n if (entry.isIntersecting) {\n const imageElement = this.el.nativeElement.querySelector('img');\n const sourceElement = this.el.nativeElement.querySelector('source');\n imageElement.setAttribute('src', this.imageUrlResponse.fallbackUrl);\n sourceElement.setAttribute('srcset', this.imageUrlResponse.srcSetUrls);\n this.intersectionObserver.unobserve(entry.target);\n }\n });\n }, options);\n\n const imageElement = this.el.nativeElement.querySelector('img');\n this.intersectionObserver.observe(imageElement);\n }\n\n\n ngOnInit(): void {\n\n const ratios = this.preload_aspect_ratio.split(':');\n this.imageRatioWidth = parseInt(ratios[0], 10);\n this.imageRatioHeight = parseInt(ratios[1], 10);\n this.imageUrlResponse = this.imageService.generateImageUrl(this.image_src);\n\n\n if (!('loading' in HTMLImageElement.prototype)) {\n this.setupLazyLoading();\n }\n\n if(!this.image_alt_text) {\n console.error(`Image is missing an alt tag, image url is ${this.image_src}`);\n }\n }\n\n}\n","<picture>\n <source\n srcset=\"{{imageUrlResponse.srcSetUrls}}\"\n type=\"image/webp\"/>\n\n <img\n [ngClass]=\"{'imageFill': image_fill}\"\n [attr.width]=\"imageRatioWidth\"\n [attr.height]=\"imageRatioHeight\"\n [attr.src]=\"imageUrlResponse.fallbackUrl\"\n [attr.loading]=\"loading\"\n [attr.fetchpriority]=\"fetchpriority\"\n />\n</picture>\n","import { AfterViewInit, Component, ElementRef, HostListener, Input, OnInit, ViewChild } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { CardImageFormat } from './card';\n@Component({\n selector: 'ui-card',\n templateUrl: './card.component.html',\n styleUrls: ['./card.component.scss']\n})\nexport class CardComponent implements OnInit, AfterViewInit {\n // We need to know the label height so that we can adjust the parent stack placement\n @ViewChild(\"imagelabel\", { static: false, read: ElementRef }) imageLabel: ElementRef;\n\n // Card image variables\n @Input() label_text: string;\n @Input() image: string;\n @Input() alt_text: string;\n @Input() image_format: CardImageFormat;\n aspectRatio: string;\n\n // Card content variables\n @Input() small_title_left: string;\n @Input() small_sub_title_right: string;\n @Input() standard_content: string;\n @Input() bold_content: string;\n stackOffset: string;\n\n constructor(private tokenService: TokenService) { }\n\n ngOnInit(): void {\n this.aspectRatio = this.setImageAspectRatio(this.image_format);\n \n }\n\n ngAfterViewInit(): void {\n this.setStackPlacement();\n }\n\n /**\n * This calculates the stack offset based on the image labels height.\n */\n @HostListener('window:resize', ['$event'])\n setStackPlacement(): void {\n this.stackOffset = `calc(-${\n this.imageLabel?.nativeElement?.offsetHeight / 2\n }px - ${this.tokenService.getTokenValue('--semantic-spacing-box-tight')}`;\n }\n\n /**\n * This function retrieves the appropriate design token value based on the passed imageFormat choice\n * \n * @param format - The format of the image e.g. square, portrait, landscape\n * @returns - string to be used as the aspect ratio\n */\n setImageAspectRatio(format: CardImageFormat): string {\n switch(format) {\n case 'square':\n return this.tokenService.getTokenValue('--component-card-aspect-ratio-square');\n case 'portrait':\n return this.tokenService.getTokenValue('--component-card-aspect-ratio-portrait');\n case 'landscape':\n return this.tokenService.getTokenValue('--component-card-aspect-ratio-landscape');\n default:\n return this.tokenService.getTokenValue('--component-card-aspect-ratio-portrait');\n }\n }\n}\n","<ui-box class=\"ui-card\" box_background=\"core-primary\" box_space=\"none\">\n <ui-stack stack_align=\"center\" stack_gap=\"tight\">\n <ui-box\n class=\"ui-card__image\"\n [ngStyle]=\"{'aspect-ratio': aspectRatio}\"\n box_background=\"transparent\"\n box_align_x=\"center\"\n box_space=\"none\">\n <ui-image [image_src]=\"image\" [image_alt_text]=\"alt_text\" [image_fill]=\"true\"></ui-image>\n </ui-box>\n <ui-stack stack_gap=\"tight\" [ngStyle]=\"{'margin-top': stackOffset}\">\n <ui-box\n #imagelabel\n *ngIf=\"label_text\"\n class=\"card__image-label center-content\"\n box_background=\"tint-highlight\"\n box_align_x=\"center\"\n box_align_y=\"center\"\n box_space_left=\"near\"\n box_space_right=\"near\"\n box_space_bottom=\"tight\"\n box_space_top=\"tight\">\n <h5>{{label_text}}</h5>\n </ui-box>\n <ui-box *ngIf=\"small_title_left || small_sub_title_right\" [box_space_top]=\"label_text ? 'none' : 'tight'\" box_space=\"none\" box_background=\"transparent\" >\n <ui-stack stack_direction=\"x\" stack_distribute=\"space-between\" stack_gap=\"tight\">\n <span class=\"text-body--supporting text-color--supporting\">{{small_title_left}}</span>\n <span class=\"text-body--supporting text-color--supporting\">{{small_sub_title_right}}</span>\n </ui-stack>\n </ui-box>\n <p *ngIf=\"standard_content\" class=\"text-label--default center-content\">{{standard_content}}</p>\n <p *ngIf=\"bold_content\" class=\"text-label--primary text-body--emphasis\">{{bold_content}}</p>\n </ui-stack>\n </ui-stack>\n</ui-box>\n","import { CommonModule } from '@angular/common';\nimport { ModuleWithProviders, NgModule } from '@angular/core';\nimport { ImageService } from '../../services/image.service';\nimport { ImageComponent } from './image.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [ImageComponent],\n imports: [CommonModule, OasysDirectivesModule],\n exports: [ImageComponent],\n providers: [ImageService],\n})\nexport class OasysImageModule {\n public static forRoot(environment: { mediaUrl: string }): ModuleWithProviders<OasysImageModule> {\n return {\n ngModule: OasysImageModule,\n providers: [\n ImageService,\n {\n provide: 'env',\n useValue: environment,\n },\n ],\n };\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { RouterModule } from '@angular/router';\nimport { TokenService } from '../../services/token.service';\nimport { OasysImageModule } from '../image';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { CardComponent } from './card.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n@NgModule({\n declarations: [CardComponent],\n imports: [CommonModule, OasysLayoutModule, RouterModule, OasysImageModule, OasysDirectivesModule],\n exports: [CardComponent],\n providers: [TokenService],\n})\nexport class OasysCardModule {}\n","import { Input, ViewEncapsulation } from '@angular/core';\nimport { Component} from '@angular/core';\nimport { DividerType } from './divider';\n\n\n@Component({\n selector:'ui-divider',\n templateUrl: './divider.component.html',\n styleUrls: ['./divider.component.scss'],\n encapsulation: ViewEncapsulation.None,\n})\nexport class DividerComponent {\n @Input()\n divider_type: DividerType = 'secondary';\n\n getClass(): string{\n return this.divider_type==='secondary'? `ui-divider--type-${this.divider_type}`: `ui-divider--type-${this.divider_type}`;\n }\n}\n\n","<ui-box box_fill_mode=\"fill\" box_space=\"none\" box_background=\"core-secondary\" [ngClass]=\"getClass()\"></ui-box>","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { DividerComponent } from './divider.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [DividerComponent],\n imports: [CommonModule, OasysLayoutModule, OasysDirectivesModule],\n exports: [DividerComponent],\n})\nexport class OasysDividerModule {}\n","import { Component, Input, OnInit, ViewEncapsulation, OnChanges, SimpleChanges, HostBinding } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { HeadingAlignment, HeadingGap, HeadingType } from './heading';\nimport { UIBoolean } from './heading';\n\n@Component({\n selector:'ui-heading',\n templateUrl: './heading.component.html',\n styleUrls: ['./heading.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class OasysHeadingComponent implements OnInit {\n\n @Input()\n heading_type: HeadingType = 'primary';\n\n @Input()\n heading_on_dark: UIBoolean;\n\n @Input()\n heading_title: string;\n\n @Input()\n heading_seo_priority: boolean = false;\n\n @Input()\n heading_priority?: 1 | 2 | 3 | 4 | 5 | 6;\n\n @Input()\n heading_alignment_override?: HeadingAlignment;\n\n @Input()\n heading_subtitle?: string = '';\n\n @Input()\n heading_surtitle?: string = '';\n\n headingAlignment: HeadingAlignment;\n headingGap: HeadingGap;\n\n\n @HostBinding('class') get class() {\n return `\n ${this.heading_on_dark ? 'text-color--on-dark' : ''}\n ui-heading-alignment-${this.headingAlignment}\n `\n }\n\n constructor(private tokenService: TokenService) { }\n\n headingTypeIsFunctional(headingType: HeadingType): boolean {\n return (headingType||'').indexOf('functional') !== -1;\n }\n\n setupHeadingStackAlignment(headingType: HeadingType): void {\n if(this.heading_alignment_override) {\n this.headingAlignment = this.heading_alignment_override;\n return;\n }\n\n const alignment = this.tokenService.getTokenValue('--component-heading-alignment-default') as HeadingAlignment;\n const functionalAlignment = this.tokenService.getTokenValue('--component-heading-alignment-functional') as HeadingAlignment;\n\n this.headingAlignment = this.headingTypeIsFunctional(headingType) ? functionalAlignment : alignment;\n\n }\n\n setupHeadingStackGap(headingType: HeadingType): void {\n if(this.headingTypeIsFunctional(headingType)){\n this.headingGap = this.tokenService.getTokenValue('--component-heading-gap-functional') as HeadingGap;\n return;\n }\n\n if(this.heading_type === 'secondary') {\n this.headingGap = this.tokenService.getTokenValue('--component-heading-gap-secondary') as HeadingGap;\n return;\n }\n\n if(this.heading_type === 'primary') {\n this.headingGap = this.tokenService.getTokenValue('--component-heading-gap-primary') as HeadingGap;\n return;\n }\n\n // Hero gap\n this.headingGap = this.tokenService.getTokenValue('--component-heading-gap-default') as HeadingGap;\n }\n\n ngOnInit(): void {\n this.setupHeadingStackAlignment(this.heading_type);\n this.setupHeadingStackGap(this.heading_type);\n this.heading_priority = this.heading_priority || this.heading_seo_priority ? 1 : 2;\n }\n\n}\n","<div>\n <ui-stack [stack_align]=\"headingAlignment\" [stack_gap]=\"headingGap\">\n\n <p *ngIf=\"heading_surtitle && heading_surtitle.length\" class=\"heading-surtitle text-body--supporting text-color--supporting\">\n {{heading_surtitle}}\n </p>\n\n <ng-template #content>\n <span\n class=\"heading-title\"\n [ngClass]=\"{\n 'text-heading': !headingTypeIsFunctional(heading_type),\n 'text-heading--functional': headingTypeIsFunctional(heading_type),\n\n 'text-heading--hero': heading_type === 'hero',\n 'text-heading--primary': heading_type === 'primary',\n 'text-heading--secondary': heading_type === 'secondary',\n 'text-heading--functional--primary': heading_type === 'functional-primary',\n 'text-heading--functional--secondary': heading_type === 'functional-secondary'\n }\"\n >{{heading_title}}</span>\n </ng-template>\n\n <h1 role=\"heading\" [attr.aria-level]=\"heading_priority\" class=\"seo-h1\" *ngIf=\"heading_seo_priority\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </h1>\n <span role=\"heading\" [attr.aria-level]=\"heading_priority\" *ngIf=\"!heading_seo_priority\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </span>\n\n <p\n *ngIf=\"heading_subtitle && heading_subtitle.length\"\n class=\"heading-subtitle\"\n [ngClass]=\"{\n 'text-body--hero': heading_type === 'hero',\n 'text-body--default': heading_type !== 'hero'\n }\"\n >{{heading_subtitle}}</p>\n\n </ui-stack>\n</div>","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { OasysHeadingComponent } from './heading.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [OasysHeadingComponent],\n imports: [CommonModule, OasysLayoutModule, OasysDirectivesModule],\n exports: [OasysHeadingComponent],\n providers: [TokenService],\n})\nexport class OasysHeadingModule {}\n","import { Component, Input, OnInit, ViewEncapsulation } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { LayoutBackgrounds } from '../layout/Layout';\n\n@Component({\n selector: 'ui-hero',\n templateUrl: './hero.component.html',\n styleUrls: ['./hero.component.scss']\n})\nexport class HeroComponent implements OnInit {\n\n // Style input variables\n @Input() min_container_height: number;\n @Input() image_left_desktop: boolean = false;\n @Input() image_top_mobile: boolean = true;\n @Input() background_colour: LayoutBackgrounds;\n\n // Content input variables\n @Input() heading_title: string;\n @Input() heading_subtitle: string;\n @Input() heading_surtitle: string;\n @Input() primary_cta_text: string;\n @Input() secondary_cta_text: string;\n @Input() image: string;\n @Input() alt_text: string;\n @Input() media_type: 'image' | 'video' = 'image';\n\n // Event input variables\n @Input() href_primary_cta: string = '';\n @Input() href_secondary_cta: string = '';\n\n // Design token variables\n heroCtaAlignment: string;\n backgroundIsDark: string;\n heroInsetSpaceSmall: string;\n heroInsetSpaceLarge: string;\n\n constructor(private tokenService: TokenService) { }\n\n ngOnInit(): void {\n this.heroCtaAlignment = this.tokenService.getTokenValue('--component-hero-actions-alignment');\n this.backgroundIsDark = this.tokenService.getTokenValue(`--semantic-on-dark-${this.background_colour}`);\n this.heroInsetSpaceSmall = this.tokenService.getTokenValue(`--component-hero-inset-spacing-small`);\n this.heroInsetSpaceLarge = this.tokenService.getTokenValue(`--component-hero-inset-spacing-large`);\n }\n\n}\n","<ui-box [box_background]=\"background_colour\" box_space=\"none\">\n <ui-grid [ngStyle]=\"{'min-height' : min_container_height ? min_container_height + 'px' : 'auto'}\" grid_gap=\"none\" grid_collapse_below=\"tablet\">\n <ui-column columns=\"5\" [ngClass]=\"{'image-left': image_left_desktop, 'image-top': image_top_mobile}\">\n <ui-box box_fill_mode=\"fill\" box_align_y=\"center\" box_background=\"transparent\" [box_space]=\"{mobile: heroInsetSpaceSmall, tablet: heroInsetSpaceSmall, laptop: heroInsetSpaceLarge, desktop: heroInsetSpaceLarge}\">\n <ui-stack stack_direction=\"y\" stack_align=\"center\" stack_distribute=\"center\" stack_gap=\"default\">\n <ui-heading\n heading_type=\"primary\"\n [heading_on_dark]=\"backgroundIsDark === 'on-dark' ? true : false\"\n [heading_title]=\"heading_title\"\n [heading_seo_priority]=\"true\"\n [heading_subtitle]=\"heading_subtitle\"\n [heading_surtitle]=\"heading_surtitle\">\n </ui-heading>\n <!-- TODO: replace with ui-button-group once built-->\n <ui-stack\n *ngIf=\"primary_cta_text\"\n class=\"cta-container\"\n stack_direction=\"x\"\n [stack_align]=\"heroCtaAlignment\"\n [stack_distribute]=\"heroCtaAlignment\"\n stack_wrap=\"true\"\n stack_gap=\"near\">\n <ui-button\n bwtrackas=\"oasys.hero-block.primary-cta\"\n button_size=\"large\"\n [button_type]=\"backgroundIsDark === 'on-dark' ? 'primary-inverse' : 'primary'\"\n [href]=\"href_primary_cta\">\n <span #buttontext>{{primary_cta_text}}</span>\n </ui-button>\n <ui-button\n *ngIf=\"secondary_cta_text\"\n bwtrackas=\"oasys.hero-block.secondary-cta\"\n button-size=\"large\"\n [button_type]=\"backgroundIsDark === 'on-dark' ? 'secondary-inverse' : 'secondary'\"\n [href]=\"href_secondary_cta\">\n <span #buttontext>{{secondary_cta_text}}</span>\n </ui-button>\n </ui-stack>\n </ui-stack>\n </ui-box>\n </ui-column>\n <ui-column columns=\"7\">\n <ui-image\n *ngIf=\"media_type === 'image'\"\n [image_src]=\"image\"\n [image_alt_text]=\"alt_text\"\n preload_aspect_ratio=\"5:4\"\n [image_fill]=\"true\"></ui-image>\n <ng-content *ngIf=\"media_type === 'video'\"></ng-content>\n </ui-column>\n </ui-grid>\n</ui-box>\n\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { OasysButtonModule } from '../button/button.module';\nimport { OasysHeadingModule } from '../heading/heading.module';\nimport { OasysImageModule } from '../image';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { HeroComponent } from './hero.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [HeroComponent],\n imports: [CommonModule, OasysButtonModule, OasysHeadingModule, OasysLayoutModule, OasysImageModule, OasysDirectivesModule],\n exports: [HeroComponent],\n providers: [TokenService],\n})\nexport class OasysHeroModule {}\n","import { Component, Input, OnInit } from '@angular/core';\ninterface linkItem {\n href: string;\n name: string;\n}\n@Component({\n selector: 'ui-seo-block',\n templateUrl: './seo-block.component.html',\n styleUrls: ['./seo-block.component.scss'],\n})\nexport class SeoBlockComponent implements OnInit {\n @Input() heading_paragraph: string;\n @Input() heading_links: string;\n @Input() main_content: string;\n @Input() expanded_content: string;\n @Input() links: string | linkItem[];\n\n @Input() read_more_content_text: string;\n @Input() read_less_content_text: string;\n @Input() show_more_links_text: string;\n @Input() show_less_links_text: string;\n\n linksColumnsNumber: number;\n expandedLinksVisible: boolean = false;\n expandedContentVisible: boolean = false;\n linksValues: linkItem[];\n\n constructor() {}\n\n showMoreLinks(flag: boolean): void {\n this.expandedLinksVisible = flag;\n }\n\n showMoreContent(flag: boolean): void {\n this.expandedContentVisible = flag;\n }\n\n ngOnInit(): void {\n // This is to fix a bug in Oasys that threats arrays as string initially\n if (typeof this.links === 'string') {\n this.linksValues = JSON.parse(this.links) ?? [];\n } else {\n this.linksValues = this.links;\n }\n\n if (this.linksValues.length <= 10) {\n this.linksColumnsNumber = 1;\n } else if (this.linksValues.length <= 20) {\n this.linksColumnsNumber = 2;\n } else {\n this.linksColumnsNumber = 3;\n }\n }\n}\n","<ui-box>\n <ui-grid>\n <ui-column columns=\"6\">\n <ui-box box_space=\"none\" [box_space_right]=\"{\n mobile: 'none',\n tablet: 'expanded',\n laptop: 'expanded',\n desktop: 'expanded'\n }\">\n <ui-stack stack_gap=\"near\">\n <ui-box box_space=\"none\">\n <ui-heading heading_type=\"functional-primary\" heading_title=\"{{ heading_paragraph }}\"></ui-heading>\n </ui-box>\n <ui-box box_space=\"none\">\n <span class=\"text-body--default\" class=\"ui-prose\" [innerHTML]=\"main_content\"></span>\n <span class=\"text-body--default\" class=\"ui-prose\" *ngIf=\"expandedContentVisible\"\n [innerHTML]=\"expanded_content\"></span>\n </ui-box>\n <ui-box box_space=\"none\" *ngIf=\"expanded_content\">\n <span *ngIf=\"!expandedContentVisible\" role=\"button\" (click)=\"showMoreContent(true)\"\n class=\"text-link text-link--standalone\">\n {{read_more_content_text}}\n </span>\n <span *ngIf=\"expandedContentVisible\" role=\"button\" (click)=\"showMoreContent(false)\"\n class=\"text-link text-link--standalone\">\n {{read_less_content_text}}\n </span>\n </ui-box>\n </ui-stack>\n </ui-box>\n </ui-column>\n <ui-column columns=\"6\">\n <ui-box box_space=\"none\">\n <ui-stack stack_gap=\"near\">\n <ui-box box_space=\"none\">\n <ui-heading heading_type=\"functional-secondary\" heading_title=\"{{ heading_links }}\"></ui-heading>\n </ui-box>\n <ui-stack stack_gap=\"tight\">\n <ui-box box_space=\"none\" box_fill_mode=\"fit\" [ngStyle]=\"{'column-count': linksColumnsNumber}\"\n class=\"links-container text-body--supporting\">\n <ng-container *ngFor=\"let link of linksValues; index as i\">\n <ui-box box_space=\"none\" box_space_bottom=\"tight\" box_fill_mode=\"fit\" class=\"link-container\"\n [ngClass]=\"{ 'hidden-mobile': i > 4 && !expandedLinksVisible }\">\n <a href=\"{{ link.href }}\">\n {{ link.name }}\n </a>\n </ui-box>\n </ng-container>\n </ui-box>\n <ui-box box_space=\"none\" class=\"hidden-desktop hidden-tablet\" *ngIf=\"linksValues.length > 4\">\n <span *ngIf=\"!expandedLinksVisible\" (click)=\"showMoreLinks(true)\" class=\"text-link text-link--standalone\">\n {{show_more_links_text}}\n </span>\n <span *ngIf=\"expandedLinksVisible\" (click)=\"showMoreLinks(false)\" class=\"text-link text-link--standalone\">\n {{show_less_links_text}}\n </span>\n </ui-box>\n </ui-stack>\n\n </ui-stack>\n </ui-box>\n </ui-column>\n </ui-grid>\n</ui-box>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { OasysButtonModule } from '../button/button.module';\nimport { OasysHeadingModule } from '../heading/heading.module';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { SeoBlockComponent } from './seo-block.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [SeoBlockComponent],\n imports: [\n CommonModule,\n OasysButtonModule,\n OasysHeadingModule,\n OasysLayoutModule,\n OasysDirectivesModule\n ],\n exports: [SeoBlockComponent],\n providers: [TokenService],\n})\nexport class OasysSeoBlockModule {}\n","import { ChangeDetectionStrategy, Component, Input, OnInit, ViewEncapsulation } from '@angular/core';\nimport { TextTransform } from './text';\n\n@Component({\n selector:'ui-text',\n templateUrl: './text.component.html',\n styleUrls: ['./text.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class TextComponent implements OnInit {\n\n @Input() textAlign: 'left' | 'center' | 'right' = 'left';\n @Input() textWeight: 'normal' | 'medium' | 'bold' = 'normal';\n @Input() textTransform: TextTransform = 'none';\n\n uiTextClasses!: string;\n\n constructor() { }\n\n ngOnInit(): void {\n this.uiTextClasses = [\n `ui-text--align-${this.textAlign}`,\n `ui-text--weight-${this.textWeight}`,\n `ui-text--transform-${this.textTransform}`,\n ].join(' ');\n }\n\n}\n","<span class=\"ui-text\" [ngClass]=\"uiTextClasses\"><ng-content></ng-content></span>","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { TextComponent } from './text.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [TextComponent],\n imports: [CommonModule, OasysDirectivesModule],\n exports: [TextComponent],\n})\nexport class OasysTextModule {}\n","import { Component, Input, OnInit, AfterViewInit } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { LayoutBackgrounds } from '../layout/Layout';\n\n@Component({\n selector: 'ui-section',\n templateUrl: './section.component.html',\n styleUrls: ['./section.component.scss']\n})\nexport class SectionComponent implements OnInit, AfterViewInit {\n\n // Style input variables\n @Input() brand_background_colour: LayoutBackgrounds;\n @Input() non_brand_background_colour: string;\n @Input() text_on_dark_override: boolean = false; // This is for custom/non-brand BG colours\n @Input() image_on_left: boolean = false;\n @Input() section_type: 'spotlight' | 'inform' = 'inform';\n\n // Content input variables\n @Input() heading_title: string;\n @Input() heading_subtitle: string;\n @Input() primary_cta_text: string;\n @Input() secondary_cta_text: string;\n @Input() image: string;\n @Input() alt_text: string;\n\n // Event input variables\n @Input() href_primary_cta: string = '';\n @Input() href_secondary_cta: string = '';\n\n backgroundIsDark: string;\n isSpotLight: string;\n uiBoxId: string; // To randomise the box id\n outterContainer: any = {};\n innerContainer: any = {};\n\n containerInsetSpaceSmall: string;\n containerInsetSpaceLarge: string;\n\n contentInsetSpaceSmall: string;\n contentInsetSpaceLarge: string;\n\n imageAspectRatio: string;\n\n constructor(private tokenService: TokenService) { }\n\n ngAfterViewInit(): void {\n\n if(this.non_brand_background_colour) {\n this.setNonBrandBackgroundColour();\n }\n\n this.backgroundIsDark = this.tokenService.getTokenValue(`--semantic-on-dark-${this.brand_background_colour}`);\n }\n\n ngOnInit(): void {\n\n this.containerInsetSpaceSmall = this.tokenService.getTokenValue(`--component-section-inset-spacing-container-small`);\n this.containerInsetSpaceLarge = this.tokenService.getTokenValue(`--component-section-inset-spacing-container-large`);\n\n this.contentInsetSpaceSmall = this.tokenService.getTokenValue(`--component-section-inset-spacing-content-small-${this.section_type}`);\n this.contentInsetSpaceLarge = this.tokenService.getTokenValue(`--component-section-inset-spacing-content-large-${this.section_type}`);\n\n this.imageAspectRatio = this.tokenService.getTokenValue(`--component-section-image-aspect-ratio-${this.section_type}`);\n\n // Setting a unique ID, this is important & needed to apply\n // styles to ui-box\n this.uiBoxId = Date.now() + '-' + Math.random();\n }\n\n /**\n * Users are able to set custom non brand background colours\n * If a non brand background colour is provided we ignore branded colours\n * even if they are provided.\n */\n setNonBrandBackgroundColour(): void {\n const box = document.getElementById(`ui-box-${this.uiBoxId}`);\n\n if (box) {\n this.brand_background_colour = undefined;\n box.style.background = this.non_brand_background_colour;\n\n if (this.text_on_dark_override) {\n box.classList.add('text-color--on-dark');\n }\n }\n\n }\n\n}\n","<ui-box\nid=\"ui-box-{{uiBoxId}}\"\n[box_background]=\"brand_background_colour\"\n[box_space_left]=\"section_type === 'spotlight' && !image_on_left ? 'none' : ''\"\n[box_space_right]=\"section_type === 'spotlight' && image_on_left ? 'none' : ''\"\n[box_space]=\"section_type === 'spotlight' ? 'none' : {mobile: containerInsetSpaceSmall, tablet: containerInsetSpaceLarge, laptop: containerInsetSpaceLarge, desktop: containerInsetSpaceLarge}\">\n\n <ui-grid [grid_gap]=\"section_type === 'spotlight' ? 'none' : 'default'\">\n <ui-column columns=\"6\" [ngClass]=\"{'image-left': image_on_left, 'image-top-mobile': image_on_left}\">\n <ui-box\n box_space=\"none\"\n box_background=\"none\"\n box_align_y=\"center\"\n >\n <ui-image [image_src]=\"image\" [image_alt_text]=\"alt_text\" [preload_aspect_ratio]=\"imageAspectRatio\"></ui-image>\n </ui-box>\n </ui-column>\n\n <ui-column columns=\"6\">\n <ui-box\n [box_background]=\"brand_background_colour\"\n box_align_y=\"center\"\n [box_space]=\"section_type === 'spotlight' ? {mobile: contentInsetSpaceSmall, tablet: contentInsetSpaceLarge, laptop: contentInsetSpaceLarge, desktop: contentInsetSpaceLarge} : {mobile: contentInsetSpaceSmall, tablet: contentInsetSpaceSmall, laptop: contentInsetSpaceLarge, desktop: contentInsetSpaceLarge}\">\n <ui-stack\n stack_direction=\"y\"\n stack_align=\"center\"\n stack_distribute=\"center\"\n stack_wrap=\"true\"\n >\n <ui-heading\n [heading_type]=\"section_type === 'spotlight' ? 'primary' : 'functional-primary'\"\n [heading_title]=\"heading_title\"\n [heading_subtitle]=\"heading_subtitle\">\n </ui-heading>\n\n <ui-stack\n stack_direction=\"x\"\n stack_align=\"start\"\n [stack_distribute]=\"section_type === 'spotlight' ? 'center' : 'start'\"\n stack_wrap=\"true\"\n stack_gap=\"near\">\n\n <a class=\"text-link text-link--standalone\" [href]=\"href_primary_cta\" bwtrackas=\"oasys.story-block.primary-cta\">{{primary_cta_text}}</a>\n <a *ngIf=\"section_type !== 'spotlight'\" class=\"text-link text-link--standalone\" [href]=\"href_secondary_cta\" bwtrackas=\"oasys.story-block.secondary-cta\">{{secondary_cta_text}}</a>\n\n </ui-stack>\n </ui-stack>\n </ui-box>\n </ui-column>\n </ui-grid>\n</ui-box>","import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SectionComponent } from './section.component';\nimport { OasysHeadingModule } from '../heading/heading.module';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { OasysImageModule } from '../image/image.module';\nimport { TokenService } from '../../services/token.service';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [SectionComponent],\n imports: [CommonModule, OasysHeadingModule, OasysImageModule, OasysLayoutModule, OasysDirectivesModule],\n exports: [SectionComponent],\n providers: [TokenService]\n})\nexport class SectionModule { }\n","import { DOCUMENT } from '@angular/common';\nimport { \n Component, \n ElementRef, \n Input, \n OnInit, \n ViewChild, \n ViewEncapsulation, \n Inject, \n OnDestroy} from '@angular/core';\nimport { SwiperOptions } from 'swiper';\nimport { TokenService } from '../../services/token.service';\n\n/* This component wraps around the swiper.js library WebComponent */\n\n@Component({\n selector: 'ui-carousel',\n templateUrl: './carousel.component.html',\n styleUrls: ['./carousel.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class CarouselComponent implements OnInit {\n // The swiper instance\n @ViewChild(\"swiper\", { static: true }) swiper: ElementRef;\n @ViewChild(\"carouselscrollbarplaceholder\", { static: false, read: ElementRef }) carouselscrollbarplaceholder: ElementRef;\n @ViewChild(\"carouselctastack\", { static: false, read: ElementRef }) carouselctastack: ElementRef;\n\n // Rewinds the slides back to the start when the user reaches the end when set to true\n @Input() rewind: boolean = false;\n\n @Input() carousel_overflow: boolean = false;\n\n @Input() carousel_gap: 'default' | 'none' = 'default';\n\n @Input() carousel_pagination: 'scroll-arrows' | 'none' = 'none';\n\n @Input() carousel_align: 'start' | 'end' | 'center' = 'start';\n\n @Input() carousel_slides_per_view_desktop: number = 4;\n @Input() carousel_slides_per_view_laptop: number = 3;\n @Input() carousel_slides_per_view_tablet: number = 2.5;\n @Input() carousel_slides_per_view_mobile: number = 1.25;\n\n constructor(private tokenService: TokenService, @Inject(DOCUMENT) private document: Document, private element: ElementRef) {}\n\n ngOnInit(): void {\n this.setUpIntersectionObserver();\n }\n\n /**\n * Set up the intersection observer with the relevant options\n */\n setUpIntersectionObserver() {\n // Set IntersectionObserver options\n const options = {\n root: null,\n rootMargin: '0px',\n threshold: 0.5,\n once: true\n }\n // Set up the IntersectionObserver\n const observer = new IntersectionObserver(this.onIntersection.bind(this), options);\n observer.observe(this.element.nativeElement);\n }\n\n /**\n * This function gets called just before the user scrolls this component into view\n * @param entries - An array of interswection observer entries\n * @param observer - Intersection observer \n */\n onIntersection(entries: IntersectionObserverEntry[], observer: IntersectionObserver) {\n entries.forEach(entry => {\n if(entry.isIntersecting) {\n // Initialise swiper\n this.initSwiper();\n observer.unobserve(entry.target)\n }\n })\n }\n\n getStyle(element, style): string {\n\n return this.document.defaultView.getComputedStyle(element, null).getPropertyValue(style);\n }\n\n /**\n * Set the scrollbar placement and width based on carouselscrollbarplaceholder and carouselctastack\n */\n setupScrollbarLayoutProperties(): void {\n if(this.carousel_pagination !== 'scroll-arrows'){\n return;\n }\n \n const carouselStack: HTMLElement = this.carouselctastack.nativeElement;\n const scrollbarElement: HTMLElement = this.carouselscrollbarplaceholder.nativeElement;\n\n const scrollbarHeight = this.document.defaultView.getComputedStyle(document.documentElement).getPropertyValue(\"--swiper-scrollbar-size\");\n\n this.element.nativeElement.style.setProperty(\n \"--ui-carousel-scrollbar-width\", `${scrollbarElement.offsetWidth - parseInt(this.getStyle(carouselStack, 'gap'), 10)}px`\n );\n\n this.element.nativeElement.style.setProperty(\n \"--ui-carousel-scrollbar-offset-top\", `${parseInt(this.getStyle(carouselStack, 'gap'), 10) + (scrollbarElement.offsetHeight / 2) + (parseInt(scrollbarHeight, 10) / 2)}px`\n );\n }\n\n /**\n * Set the dynamic swiper params and initialise the swiper instance\n */\n initSwiper(): void {\n // Colour overides\n const scrollbarBackgroundColour = this.tokenService.getTokenValue('--global-color-linen-grey-20');\n const scrollbarSliderColour = this.tokenService.getTokenValue('--global-color-grey-90');\n\n // swiper element\n const swiperEl = this.swiper.nativeElement;\n\n const carouselGap = this.tokenService.getTokenValue(`--semantic-spacing-stack-${this.carousel_gap}`);\n\n // swiper parameters\n const swiperParams: SwiperOptions = {\n rewind: this.rewind,\n grabCursor: true,\n spaceBetween: (parseInt(carouselGap, 10) * 10) || 0,\n scrollbar: {\n enabled: this.carousel_pagination === 'scroll-arrows',\n draggable: true,\n },\n injectStyles: [\n `\n .swiper-scrollbar.swiper-scrollbar-horizontal {\n position: relative;\n top: var(--ui-carousel-scrollbar-offset-top);\n width: var(--ui-carousel-scrollbar-width);\n height: 2px;\n background: ${scrollbarBackgroundColour}\n }\n\n .swiper-scrollbar-drag {\n background: ${scrollbarSliderColour}\n }\n\n .swiper-wrapper {\n align-items: ${this.carousel_align === 'center' ? this.carousel_align : 'flex-'+this.carousel_align}\n }\n `,\n ],\n breakpoints: {\n 0: {\n scrollbar: {\n enabled: this.carousel_pagination === 'scroll-arrows',\n draggable: true\n },\n slidesPerView: this.carousel_slides_per_view_mobile\n },\n 767: {\n scrollbar: {\n enabled: this.carousel_pagination === 'scroll-arrows',\n draggable: true\n },\n slidesPerView: this.carousel_slides_per_view_tablet\n },\n 1080: {\n scrollbar: {\n enabled: this.carousel_pagination === 'scroll-arrows',\n draggable: true\n },\n slidesPerView: this.carousel_slides_per_view_laptop\n },\n 1440: {\n scrollbar: {\n enabled: this.carousel_pagination === 'scroll-arrows',\n draggable: true\n },\n slidesPerView: this.carousel_slides_per_view_desktop\n }\n },\n on: {},\n };\n\n // now we need to assign all parameters to the Swiper element\n Object.assign(swiperEl, swiperParams);\n\n // and now initialize it\n swiperEl.initialize();\n\n // Set up scrollbar and ensure this is recalculated on resize events\n this.setupScrollbarLayoutProperties();\n\n swiperEl.addEventListener('resize', () => {\n this.setupScrollbarLayoutProperties();\n });\n }\n\n /**\n * Move the carousel on to the next slide\n */\n nextSlide(): void {\n this.swiper.nativeElement.swiper.slideNext();\n }\n\n /**\n * Move the carousel back to the previous slide\n */\n previousSlide(): void {\n this.swiper.nativeElement.swiper.slidePrev();\n }\n}\n","<ui-box\nclass=\"ui-carousel\"\n[ngClass]=\"{'ui-carousel-overflow': carousel_overflow}\"\nbox_align_y=\"center\"\nbox_space=\"none\"\nbox_content_fill_width=\"true\"\nbox_background=\"transparent\">\n\n <ui-stack #carouselctastack>\n <!-- Swiper WebComponent-->\n <swiper-container\n #swiper\n init=\"false\"\n center-insufficient-slides=\"true\"\n prevent-clicks-propagation=\"true\">\n <ng-content></ng-content>\n </swiper-container>\n\n <!-- Custom navigation buttons -->\n <ui-stack stack_direction=\"x\" stack_align=\"center\" *ngIf=\"carousel_pagination === 'scroll-arrows'\">\n <div class=\"ui-carousel-scrollbar-placeholder\" #carouselscrollbarplaceholder></div>\n <ui-box \n box_space=\"none\" \n box_fill_mode=\"fit\" \n [box_space_right]=\"{mobile: 'tight', tablet: 'none', laptop: 'none', desktop: 'none'}\"\n box_background=\"transparent\">\n <ui-stack\n *ngIf=\"!(swiper?.swiper?.isBeginning && swiper?.swiper?.isEnd)\"\n stack_direction=\"x\"\n stack_gap=\"near\">\n <!-- Previous button-->\n <ui-button\n class=\"ui-carousel__previous\"\n button_size=\"large\"\n button_icon_placement=\"iconOnly\"\n button_icon=\"arrow-left\"\n button_type=\"secondary\"\n (clicked)=\"previousSlide()\">\n <span #buttontext>Prevous slide</span>\n </ui-button>\n <!-- Next button-->\n <ui-button\n class=\"ui-carousel__next\"\n button_size=\"large\"\n button_icon_placement=\"iconOnly\"\n button_icon=\"arrow-right\"\n button_type=\"secondary\"\n (clicked)=\"nextSlide()\">\n <span #buttontext>Next slide</span>\n </ui-button>\n </ui-stack>\n </ui-box>\n </ui-stack>\n </ui-stack>\n</ui-box>\n","import { CommonModule } from '@angular/common';\nimport { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { OasysButtonModule } from '../button/button.module';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { CarouselComponent } from './carousel.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n// Import function to register Swiper custom elements\nimport { register } from 'swiper/element/bundle';\n\n@NgModule({\n declarations: [CarouselComponent],\n imports: [CommonModule, OasysButtonModule, OasysLayoutModule, OasysDirectivesModule],\n exports: [CarouselComponent],\n providers: [TokenService],\n schemas: [CUSTOM_ELEMENTS_SCHEMA]\n})\n\nexport class OasysCarouselModule {\n constructor() {\n register();\n }\n}\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { LayoutBackgrounds } from '../layout/Layout';\n\n@Component({\n selector: 'ui-banner',\n templateUrl: './banner.component.html',\n styleUrls: ['./banner.component.scss']\n})\nexport class BannerComponent implements OnInit {\n\n @Input() background_colour: LayoutBackgrounds = 'tint-highlight';\n @Input() cta_text: string;\n @Input() banner_title: string;\n @Input() banner_surtitle: string;\n @Input() banner_subtitle: string;\n\n // CTA actions\n @Input() cta_link: string;\n @Output() cta_clicked: EventEmitter<void> = new EventEmitter();\n\n // Design token variables;\n backgroundIsDark: string;\n\n constructor(private tokenService: TokenService) { }\n\n ngOnInit(): void {\n this.backgroundIsDark = this.tokenService.getTokenValue(`--semantic-on-dark-${this.background_colour}`);\n }\n\n onCtaClicked(): void {\n this.cta_clicked.emit();\n }\n\n}\n","<ui-box\n [box_background]=\"background_colour\"\n box_space_left=\"none\"\n box_space_right=\"none\"\n box_fill_mode=\"fill\"\n box_align_x=\"center\"\n class=\"ui-banner\">\n <ui-grid grid_collapse_below=\"tablet\">\n <ui-column\n [columns]=\"{mobile: '12', tablet: '10', laptop: '8', desktop: '8'}\"\n [column_inset]=\"{mobile: '0', tablet: '1', laptop: '2', desktop: '2'}\"\n class=\"ui-banner__content\">\n <ui-stack class=\"content__stack\" stack_direction=\"x\" stack_distribute=\"space-between\" stack_align=\"center\" stack_gap=\"near\">\n <ui-stack class=\"content__stack\" stack_direction=\"x\" stack_align=\"center\" stack_gap=\"near\">\n <!-- This is a stack as the icon will go here above the ui-heading -->\n <ui-heading\n *ngIf=\"banner_title || banner_surtitle || banner_subtitle\"\n heading_type=\"functional-primary\"\n [heading_title]=\"banner_title\"\n [heading_surtitle]=\"banner_surtitle\"\n [heading_subtitle]=\"banner_subtitle\">\n </ui-heading>\n </ui-stack>\n <ui-button\n *ngIf=\"cta_text\"\n bwtrackas=\"oasys.hva-banner.cta\"\n button_size=\"large\"\n [button_type]=\"backgroundIsDark === 'on-dark' ? 'primary-inverse' : 'primary'\"\n [href]=\"cta_link\"\n (clicked)=\"onCtaClicked()\">\n <span #buttontext>{{cta_text}}</span>\n </ui-button>\n </ui-stack>\n </ui-column>\n </ui-grid>\n</ui-box>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { OasysButtonModule } from '../button/button.module';\nimport { OasysHeadingModule } from '../heading/heading.module';\nimport { OasysIconModule } from '../icon/icon.module';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { BannerComponent } from './banner.component';\nimport { OasysDirectivesModule } from '../../directives/directives.module';\n\n@NgModule({\n declarations: [BannerComponent],\n imports: [CommonModule, OasysButtonModule, OasysHeadingModule, OasysLayoutModule, OasysIconModule, OasysDirectivesModule],\n exports: [BannerComponent],\n providers: [TokenService],\n})\nexport class OasysBannerModule {}","/*\n * Public API Surface of oasys-lib\n */\nexport * from './lib/components/alert';\nexport * from './lib/components/breadcrumbs';\nexport * from './lib/components/button';\nexport * from './lib/components/button-group';\nexport * from './lib/components/card';\nexport * from './lib/components/divider';\nexport * from './lib/components/heading';\nexport * from './lib/components/hero';\nexport * from './lib/components/seo-block';\nexport * from './lib/components/icon';\nexport * from './lib/components/image';\nexport * from './lib/components/layout';\nexport * from './lib/components/text';\nexport * from './lib/components/section';\nexport * from './lib/components/carousel';\nexport * from './lib/components/card';\nexport * from './lib/components/banner';\nexport * from './lib/injection-tokens/frontend-app-injection.tokens';\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i0","Directive","BehaviorSubject","Subject","takeUntil","i1","Injectable","DOCUMENT","Inject","i1.TokenService","Component","ViewEncapsulation","ChangeDetectionStrategy","Input","i2","InjectionToken","HostListener","EventEmitter","i1.IconComponent","i3.OasysHrefDirective","ContentChild","Output","i1.BreakpointService","i2.LayoutBoxComponent","i3.LayoutStackComponent","i4.IconComponent","i5.OasysButtonComponent","i6","CommonModule","RouterModule","NgModule","i1.LayoutBoxComponent","i2.LayoutStackComponent","i3.OasysButtonComponent","i5","HostBinding","Optional","i1.ImageService","ElementRef","i4.ImageComponent","ViewChild","i3","i3.LayoutGridComponent","i4.LayoutGridColumnComponent","i5.LayoutStackComponent","i6.OasysHeadingComponent","i7.OasysButtonComponent","i8.ImageComponent","i9","i2.LayoutGridComponent","i3.LayoutGridColumnComponent","i4.LayoutStackComponent","i5.OasysHeadingComponent","i7.OasysHrefDirective","i5.ImageComponent","i6.LayoutStackComponent","i7.OasysHeadingComponent","i8","i9.OasysHrefDirective","i4.OasysButtonComponent","register","CUSTOM_ELEMENTS_SCHEMA"],"mappings":"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"}