oasys-lib 1.11.0 → 1.11.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/oasys-lib.umd.js +1 -1
- package/bundles/oasys-lib.umd.js.map +1 -1
- package/esm2015/lib/components/section/section.component.js +2 -2
- package/fesm2015/oasys-lib.js +1 -1
- package/fesm2015/oasys-lib.js.map +1 -1
- package/package.json +1 -1
- package/src/assets/bloomandwild/variables.css +1 -1
- package/src/assets/bloomon/variables.css +1 -1
- package/src/assets/global/scss-breakpoints.scss +1 -1
- package/src/assets/global/variables.css +1 -1
package/bundles/oasys-lib.umd.js
CHANGED
|
@@ -1144,7 +1144,7 @@
|
|
|
1144
1144
|
return SectionComponent;
|
|
1145
1145
|
}());
|
|
1146
1146
|
SectionComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SectionComponent, deps: [{ token: TokenService }], target: i0__namespace.ɵɵFactoryTarget.Component });
|
|
1147
|
-
SectionComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SectionComponent, selector: "ui-section", inputs: { brand_background_colour: "brand_background_colour", non_brand_background_colour: "non_brand_background_colour", text_on_dark_override: "text_on_dark_override", image_on_left: "image_on_left", section_type: "section_type", heading_title: "heading_title", heading_subtitle: "heading_subtitle", primary_cta_text: "primary_cta_text", secondary_cta_text: "secondary_cta_text", image: "image", alt_text: "alt_text", href_primary_cta: "href_primary_cta", href_secondary_cta: "href_secondary_cta" }, ngImport: i0__namespace, template: "<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 \n box_space=\"none\"\n box_background=\"none\"\n box_align_y=\"center\"\n >\n <img [src]=\"image\" [alt]=\"alt_text\" loading=\"lazy\">\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\">{{primary_cta_text}}</a>\n <a *ngIf=\"section_type !== 'spotlight'\" class=\"text-link text-link--standalone\" [href]=\"href_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>", styles: ["ui-grid ui-column img{width:100%;display:block}ui-grid .image-left{order:1}@media only screen and (max-width: 767px){ui-grid .image-top-mobile{order:0}}\n"], components: [{ type: LayoutBoxComponent, selector: "ui-box", inputs: ["box_space", "box_space_top", "box_space_right", "box_space_bottom", "box_space_left", "box_align_x", "box_align_y", "box_fill_mode", "box_background", "box_content_fill_width"] }, { type: LayoutGridComponent, selector: "ui-grid", inputs: ["grid_auto", "grid_collapse_below", "grid_gap"] }, { type: LayoutGridColumnComponent, selector: "ui-column", inputs: ["columns"] }, { type: LayoutStackComponent, selector: "ui-stack", inputs: ["stack_gap", "stack_align", "stack_direction", "stack_distribute", "stack_wrap"] }, { type: OasysHeadingComponent, selector: "ui-heading", inputs: ["heading_type", "heading_on_dark", "heading_title", "heading_seo_priority", "heading_priority", "heading_alignment_override", "heading_subtitle", "heading_surtitle"] }], directives: [{ type: i3__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
1147
|
+
SectionComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: SectionComponent, selector: "ui-section", inputs: { brand_background_colour: "brand_background_colour", non_brand_background_colour: "non_brand_background_colour", text_on_dark_override: "text_on_dark_override", image_on_left: "image_on_left", section_type: "section_type", heading_title: "heading_title", heading_subtitle: "heading_subtitle", primary_cta_text: "primary_cta_text", secondary_cta_text: "secondary_cta_text", image: "image", alt_text: "alt_text", href_primary_cta: "href_primary_cta", href_secondary_cta: "href_secondary_cta" }, ngImport: i0__namespace, template: "<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 \n box_space=\"none\"\n box_background=\"none\"\n box_align_y=\"center\"\n >\n <img [src]=\"image\" [alt]=\"alt_text\" width=\"auto\" height=\"auto\" loading=\"lazy\">\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 bwtrackas=\"oasys.section-component.primary-cta\" class=\"text-link text-link--standalone\" [href]=\"href_primary_cta\">{{primary_cta_text}}</a>\n <a bwtrackas=\"oasys.section-component.secondary-cta\" *ngIf=\"section_type !== 'spotlight'\" class=\"text-link text-link--standalone\" [href]=\"href_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>", styles: ["ui-grid ui-column img{width:100%;display:block}ui-grid .image-left{order:1}@media only screen and (max-width: 767px){ui-grid .image-top-mobile{order:0}}\n"], components: [{ type: LayoutBoxComponent, selector: "ui-box", inputs: ["box_space", "box_space_top", "box_space_right", "box_space_bottom", "box_space_left", "box_align_x", "box_align_y", "box_fill_mode", "box_background", "box_content_fill_width"] }, { type: LayoutGridComponent, selector: "ui-grid", inputs: ["grid_auto", "grid_collapse_below", "grid_gap"] }, { type: LayoutGridColumnComponent, selector: "ui-column", inputs: ["columns"] }, { type: LayoutStackComponent, selector: "ui-stack", inputs: ["stack_gap", "stack_align", "stack_direction", "stack_distribute", "stack_wrap"] }, { type: OasysHeadingComponent, selector: "ui-heading", inputs: ["heading_type", "heading_on_dark", "heading_title", "heading_seo_priority", "heading_priority", "heading_alignment_override", "heading_subtitle", "heading_surtitle"] }], directives: [{ type: i3__namespace.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i3__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
1148
1148
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: SectionComponent, decorators: [{
|
|
1149
1149
|
type: i0.Component,
|
|
1150
1150
|
args: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oasys-lib.umd.js","sources":["../../../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/components/button/button.component.ts","../../../projects/oasys-lib/src/lib/components/button/button.component.html","../../../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/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/breadcrumbs/breadcrumbs.module.ts","../../../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/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/public-api.ts","../../../projects/oasys-lib/src/oasys-lib.ts"],"sourcesContent":["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\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 ]\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 { 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\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_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","<button (click)=\"onClick()\"\n [routerLink]=\"button.href || null\"\n [ngClass]=\"button.buttonDisplayClasses\"\n [attr.disabled]=\"button.buttonDisabled === true || null\"\n [attr.aria-label]=\"accessibleButtonContent\"\n [attr.title]=\"accessibleButtonContent\"\n role=\"button\">\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</button>\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 { TokenService } from '../../services/token.service';\nimport { IconComponent } from './icon.component';\n\n@NgModule({\n declarations: [IconComponent],\n imports: [CommonModule],\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';\n\n@NgModule({\n declarations: [OasysButtonComponent],\n imports: [CommonModule, RouterModule, OasysIconModule],\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: boolean = 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 ? '' : `${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\n constructor(private changes: ChangeDetectorRef) {}\n\n getSizeClasses(columns?: ResponsiveGridColumns): 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}-${key}-${columns[key]}`\n });\n\n }\n\n return [\n this.prefix,\n `${this.prefix}-col-${columns}`\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)\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' = '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';\n\n@NgModule({\n declarations: [\n LayoutBoxComponent,\n LayoutContainerComponent,\n LayoutGridComponent,\n LayoutGridColumnComponent,\n LayoutStackComponent,\n ],\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/layout.module';\nimport { BreadcrumbsComponent } from './breadcrumbs.component';\n\n@NgModule({\n declarations: [BreadcrumbsComponent],\n imports: [CommonModule, OasysButtonModule, OasysIconModule, OasysLayoutModule],\n exports: [BreadcrumbsComponent],\n})\nexport class OasysBreadcrumbModule {}\n","import { 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 {\n // We need to know the label height so that we can adjust the parent stack placement\n @HostListener('window:resize', ['$event'])\n @ViewChild(\"imagelabel\", { static: false, read: ElementRef }) imageLabel: ElementRef;\n\n // Card top level variables\n @Input() card_link: string;\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\n constructor(private tokenService: TokenService) { }\n\n ngOnInit(): void {\n this.aspectRatio = this.setImageAspectRatio(this.image_format);\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","<ng-template #content>\n <ui-box class=\"ui-card\" box_background=\"core-primary\" box_space=\"near\">\n <ui-stack stack_align=\"center\" stack_gap=\"none\"> \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 <img [src]=\"image\" [attr.alt]=\"alt_text\">\n </ui-box>\n <ui-stack stack_gap=\"tight\" [ngStyle]=\"{'margin-top': '-' + (imageLabel?.nativeElement?.offsetHeight/2) + 'px'}\">\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</ng-template>\n\n<!-- Wrap the content in an <a> tag if the card is a link -->\n<a *ngIf=\"card_link\" [routerLink]=\"cardLink || null\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n<!-- Display the content as normal if the card is not a link -->\n<ng-container *ngIf=\"!card_link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</ng-container>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { CardComponent } from './card.component';\n\n@NgModule({\n declarations: [CardComponent],\n imports: [CommonModule, OasysLayoutModule],\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 '../heading/heading';\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';\n\n@NgModule({\n declarations: [DividerComponent],\n imports: [CommonModule, OasysLayoutModule],\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';\n\n@NgModule({\n declarations: [OasysHeadingComponent],\n imports: [CommonModule, OasysLayoutModule],\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 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 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 <picture *ngIf=\"media_type === 'image'\">\n <source [srcset]=\"image + '?w=880&h=880&fm=webp&q=75 1x,' + image + '?w=1760&h=1760&fm=webp&q=40 2x'\" media=\"(min-width: 1440px)\" type=\"image/webp\">\n <source [srcset]=\"image + '?w=720&h=720&fm=webp&q=75 1x,' + image + '?w=1440&h=1440&fm=webp&q=40 2x'\" media=\"(min-width: 1200px)\" type=\"image/webp\">\n <source [srcset]=\"image + '?w=580&h=580&fm=webp&q=75 1x,' + image + '?w=1160&h=1160&fm=webp&q=40 2x'\" media=\"(min-width: 992px)\" type=\"image/webp\">\n <source [srcset]=\"image + '?w=430&h=430&fm=webp&q=75 1x,' + image + '?w=860&h=860&fm=webp&q=40 2x'\" media=\"(min-width: 768px)\" type=\"image/webp\">\n <source [srcset]=\"image + '?w=720&h=720&fm=webp&q=40 2x'\" media=\"(min-width: 454px)\" type=\"image/webp\">\n <img [src]=\"image + '?w=430&h=430&fm=webp&q=75'\" [attr.alt]=\"alt_text\">\n </picture>\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 { OasysLayoutModule } from '../layout/layout.module';\nimport { HeroComponent } from './hero.component';\n\n@NgModule({\n declarations: [HeroComponent],\n imports: [CommonModule, OasysButtonModule, OasysHeadingModule, OasysLayoutModule],\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 @Input() visible_links_on_mobile: number;\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';\n\n@NgModule({\n declarations: [SeoBlockComponent],\n imports: [\n CommonModule,\n OasysButtonModule,\n OasysHeadingModule,\n OasysLayoutModule,\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';\n\n@NgModule({\n declarations: [TextComponent],\n imports: [CommonModule],\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 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 // 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 \n box_space=\"none\"\n box_background=\"none\"\n box_align_y=\"center\"\n >\n <img [src]=\"image\" [alt]=\"alt_text\" loading=\"lazy\">\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\">{{primary_cta_text}}</a>\n <a *ngIf=\"section_type !== 'spotlight'\" class=\"text-link text-link--standalone\" [href]=\"href_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 { 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 { TokenService } from '../../services/token.service';\n\n@NgModule({\n declarations: [SectionComponent],\n imports: [CommonModule, OasysHeadingModule, OasysLayoutModule],\n exports: [SectionComponent],\n providers: [TokenService]\n})\nexport class SectionModule { }\n","/*\n * Public API Surface of oasys-lib\n */\nexport * from './lib/components/breadcrumbs';\nexport * from './lib/components/button';\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/layout';\nexport * from './lib/components/text';\nexport * from './lib/components/section';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i0","DOCUMENT","Injectable","Inject","i1.TokenService","Component","ViewEncapsulation","ChangeDetectionStrategy","Input","i2","EventEmitter","i1.IconComponent","i3","ContentChild","Output","i1.LayoutBoxComponent","i2.LayoutStackComponent","i3.OasysButtonComponent","i4.IconComponent","i5","CommonModule","NgModule","RouterModule","ElementRef","i2.LayoutBoxComponent","i3.LayoutStackComponent","i4","HostListener","ViewChild","HostBinding","i3.LayoutGridComponent","i4.LayoutGridColumnComponent","i5.LayoutStackComponent","i6.OasysHeadingComponent","i7.OasysButtonComponent","i8","i2.LayoutGridComponent","i3.LayoutGridColumnComponent","i4.LayoutStackComponent","i5.OasysHeadingComponent","i6","i1","i7"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"oasys-lib.umd.js","sources":["../../../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/components/button/button.component.ts","../../../projects/oasys-lib/src/lib/components/button/button.component.html","../../../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/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/breadcrumbs/breadcrumbs.module.ts","../../../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/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/public-api.ts","../../../projects/oasys-lib/src/oasys-lib.ts"],"sourcesContent":["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\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 ]\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 { 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\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_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","<button (click)=\"onClick()\"\n [routerLink]=\"button.href || null\"\n [ngClass]=\"button.buttonDisplayClasses\"\n [attr.disabled]=\"button.buttonDisabled === true || null\"\n [attr.aria-label]=\"accessibleButtonContent\"\n [attr.title]=\"accessibleButtonContent\"\n role=\"button\">\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</button>\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 { TokenService } from '../../services/token.service';\nimport { IconComponent } from './icon.component';\n\n@NgModule({\n declarations: [IconComponent],\n imports: [CommonModule],\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';\n\n@NgModule({\n declarations: [OasysButtonComponent],\n imports: [CommonModule, RouterModule, OasysIconModule],\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: boolean = 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 ? '' : `${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\n constructor(private changes: ChangeDetectorRef) {}\n\n getSizeClasses(columns?: ResponsiveGridColumns): 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}-${key}-${columns[key]}`\n });\n\n }\n\n return [\n this.prefix,\n `${this.prefix}-col-${columns}`\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)\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' = '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';\n\n@NgModule({\n declarations: [\n LayoutBoxComponent,\n LayoutContainerComponent,\n LayoutGridComponent,\n LayoutGridColumnComponent,\n LayoutStackComponent,\n ],\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/layout.module';\nimport { BreadcrumbsComponent } from './breadcrumbs.component';\n\n@NgModule({\n declarations: [BreadcrumbsComponent],\n imports: [CommonModule, OasysButtonModule, OasysIconModule, OasysLayoutModule],\n exports: [BreadcrumbsComponent],\n})\nexport class OasysBreadcrumbModule {}\n","import { 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 {\n // We need to know the label height so that we can adjust the parent stack placement\n @HostListener('window:resize', ['$event'])\n @ViewChild(\"imagelabel\", { static: false, read: ElementRef }) imageLabel: ElementRef;\n\n // Card top level variables\n @Input() card_link: string;\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\n constructor(private tokenService: TokenService) { }\n\n ngOnInit(): void {\n this.aspectRatio = this.setImageAspectRatio(this.image_format);\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","<ng-template #content>\n <ui-box class=\"ui-card\" box_background=\"core-primary\" box_space=\"near\">\n <ui-stack stack_align=\"center\" stack_gap=\"none\"> \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 <img [src]=\"image\" [attr.alt]=\"alt_text\">\n </ui-box>\n <ui-stack stack_gap=\"tight\" [ngStyle]=\"{'margin-top': '-' + (imageLabel?.nativeElement?.offsetHeight/2) + 'px'}\">\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</ng-template>\n\n<!-- Wrap the content in an <a> tag if the card is a link -->\n<a *ngIf=\"card_link\" [routerLink]=\"cardLink || null\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</a>\n<!-- Display the content as normal if the card is not a link -->\n<ng-container *ngIf=\"!card_link\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</ng-container>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { TokenService } from '../../services/token.service';\nimport { OasysLayoutModule } from '../layout/layout.module';\nimport { CardComponent } from './card.component';\n\n@NgModule({\n declarations: [CardComponent],\n imports: [CommonModule, OasysLayoutModule],\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 '../heading/heading';\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';\n\n@NgModule({\n declarations: [DividerComponent],\n imports: [CommonModule, OasysLayoutModule],\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';\n\n@NgModule({\n declarations: [OasysHeadingComponent],\n imports: [CommonModule, OasysLayoutModule],\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 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 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 <picture *ngIf=\"media_type === 'image'\">\n <source [srcset]=\"image + '?w=880&h=880&fm=webp&q=75 1x,' + image + '?w=1760&h=1760&fm=webp&q=40 2x'\" media=\"(min-width: 1440px)\" type=\"image/webp\">\n <source [srcset]=\"image + '?w=720&h=720&fm=webp&q=75 1x,' + image + '?w=1440&h=1440&fm=webp&q=40 2x'\" media=\"(min-width: 1200px)\" type=\"image/webp\">\n <source [srcset]=\"image + '?w=580&h=580&fm=webp&q=75 1x,' + image + '?w=1160&h=1160&fm=webp&q=40 2x'\" media=\"(min-width: 992px)\" type=\"image/webp\">\n <source [srcset]=\"image + '?w=430&h=430&fm=webp&q=75 1x,' + image + '?w=860&h=860&fm=webp&q=40 2x'\" media=\"(min-width: 768px)\" type=\"image/webp\">\n <source [srcset]=\"image + '?w=720&h=720&fm=webp&q=40 2x'\" media=\"(min-width: 454px)\" type=\"image/webp\">\n <img [src]=\"image + '?w=430&h=430&fm=webp&q=75'\" [attr.alt]=\"alt_text\">\n </picture>\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 { OasysLayoutModule } from '../layout/layout.module';\nimport { HeroComponent } from './hero.component';\n\n@NgModule({\n declarations: [HeroComponent],\n imports: [CommonModule, OasysButtonModule, OasysHeadingModule, OasysLayoutModule],\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 @Input() visible_links_on_mobile: number;\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';\n\n@NgModule({\n declarations: [SeoBlockComponent],\n imports: [\n CommonModule,\n OasysButtonModule,\n OasysHeadingModule,\n OasysLayoutModule,\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';\n\n@NgModule({\n declarations: [TextComponent],\n imports: [CommonModule],\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 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 // 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 \n box_space=\"none\"\n box_background=\"none\"\n box_align_y=\"center\"\n >\n <img [src]=\"image\" [alt]=\"alt_text\" width=\"auto\" height=\"auto\" loading=\"lazy\">\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 bwtrackas=\"oasys.section-component.primary-cta\" class=\"text-link text-link--standalone\" [href]=\"href_primary_cta\">{{primary_cta_text}}</a>\n <a bwtrackas=\"oasys.section-component.secondary-cta\" *ngIf=\"section_type !== 'spotlight'\" class=\"text-link text-link--standalone\" [href]=\"href_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 { 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 { TokenService } from '../../services/token.service';\n\n@NgModule({\n declarations: [SectionComponent],\n imports: [CommonModule, OasysHeadingModule, OasysLayoutModule],\n exports: [SectionComponent],\n providers: [TokenService]\n})\nexport class SectionModule { }\n","/*\n * Public API Surface of oasys-lib\n */\nexport * from './lib/components/breadcrumbs';\nexport * from './lib/components/button';\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/layout';\nexport * from './lib/components/text';\nexport * from './lib/components/section';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i0","DOCUMENT","Injectable","Inject","i1.TokenService","Component","ViewEncapsulation","ChangeDetectionStrategy","Input","i2","EventEmitter","i1.IconComponent","i3","ContentChild","Output","i1.LayoutBoxComponent","i2.LayoutStackComponent","i3.OasysButtonComponent","i4.IconComponent","i5","CommonModule","NgModule","RouterModule","ElementRef","i2.LayoutBoxComponent","i3.LayoutStackComponent","i4","HostListener","ViewChild","HostBinding","i3.LayoutGridComponent","i4.LayoutGridColumnComponent","i5.LayoutStackComponent","i6.OasysHeadingComponent","i7.OasysButtonComponent","i8","i2.LayoutGridComponent","i3.LayoutGridColumnComponent","i4.LayoutStackComponent","i5.OasysHeadingComponent","i6","i1","i7"],"mappings":"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"}
|