Skip to content

Commit

Permalink
Added : Issue 2088 - Added angular support for vf-back-to-top (#2108)
Browse files Browse the repository at this point in the history
  • Loading branch information
bhushan-ebi committed Sep 2, 2024
1 parent 0ed7bb5 commit 1551caf
Show file tree
Hide file tree
Showing 16 changed files with 366 additions and 1 deletion.
4 changes: 4 additions & 0 deletions components/vf-back-to-top/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
### 1.0.2

* Added : Experimental Angular support for Tabs [Tracking issue](https://github.com/visual-framework/vf-core/issues/2088)

### 1.0.1

* Updated the Back to Top button to secondary and changed arrow colour.
Expand Down
37 changes: 36 additions & 1 deletion components/vf-back-to-top/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,42 @@ The inline variant can be used without JavaScript and placed at the bottom of co

### Floating variant

Te floating variant is recommended for this component, which appears floating at the bottom right of page. It will appear once the user has scrolled down to 100% of the page height. This requires JavaScript to function.
The floating variant is recommended for this component, which appears floating at the bottom right of page. It will appear once the user has scrolled down to 100% of the page height. This requires JavaScript to function.


### Angular

As of version 1.0.2 vf-back-to-top has experimental Angular support.
This package was generated with Angular version 18.2.1 with fallback support for 15.2.4 and has been tested on application with Angular version 18.2.1

1. install `yarn add @visual-framework/vf-back-to-top`
2. import in your app.module
```
import { VfBackToTopAngularModule } from '@visual-framework/vf-back-to-top/vf-back-to-top.angular';
@NgModule({
imports: [VfBackToTopAngularModule, YourOtherModules],
...
})
```
3. can be used as
```
<vf-back-to-top [type]="'inline'" [text]="'Top'" [scrollToId]="'top'" [example]="true"></vf-back-to-top>
<vf-back-to-top [type]="'floating'" [example]="false"></vf-back-to-top>
```
4. add to your styles.scss
```
@import '../node_modules/@visual-framework/vf-sass-config/index.scss';
@import "../node_modules/@visual-framework/vf-back-to-top/vf-back-to-top.scss";
```
you should also install [vf-sass-starter](https://stable.visual-framework.dev/components/vf-sass-starter) for the styles

Usage:

```
<vf-back-to-top [type]="'inline'" [text]="'Top'" [scrollToId]="'top'" [example]="true"></vf-back-to-top>
<vf-back-to-top [type]="'floating'" [example]="false"></vf-back-to-top>
```

## Install

Expand Down
2 changes: 2 additions & 0 deletions components/vf-back-to-top/vf-back-to-top.angular/.npmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Nested package.json's are only needed for development.
**/package.json
24 changes: 24 additions & 0 deletions components/vf-back-to-top/vf-back-to-top.angular/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# VfBackToTopAngular

This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 15.2.0.

## Code scaffolding

Run `ng generate component component-name --project vf-back-to-top.angular` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project vf-back-to-top.angular`.
> Note: Don't forget to add `--project vf-back-to-top.angular` or else it will be added to the default project in your `angular.json` file.
## Build

Run `ng build vf-back-to-top.angular` to build the project. The build artifacts will be stored in the `dist/` directory.

## Publishing

After building your library with `ng build vf-back-to-top.angular`, go to the dist folder `cd dist/vf-back-to-top.angular` and run `npm publish`.

## Running unit tests

Run `ng test vf-back-to-top.angular` to execute the unit tests via [Karma](https://karma-runner.github.io).

## Further help

To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
import { Component, Input } from '@angular/core';
import * as i0 from "@angular/core";
export class VfBackToTopAngularComponent {
ngOnChanges() {
this.text = this.text || 'Back to top';
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: VfBackToTopAngularComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.1", type: VfBackToTopAngularComponent, selector: "vf-back-to-top", inputs: { type: "type", text: "text", scrollToId: "scrollToId", example: "example" }, usesOnChanges: true, ngImport: i0, template: `
<div
class="vf-back-to-top vf-back-top--{{ type }}"
data-vf-js-back-to-top
[attr.vf-back-top--floating]="type === 'floating' ? '' : null"
>
<a
[href]="scrollToId !== undefined ? '#' + scrollToId : null"
[attr.data-scroll-to-id]="
scrollToId !== undefined ? scrollToId : null
"
class="vf-button vf-button--secondary vf-button--sm"
[attr.aria-label]="text"
>
<svg
class="vf-icon vf-icon--search-btn | vf-button__icon"
viewBox="0 0 140 140"
width="16"
height="16"
>
<g transform="matrix(5.833333333333333,0,0,5.833333333333333,0,0)">
<path
d="M23.421,11.765,13.768.8A2.641,2.641,0,0,0,12,0a2.645,2.645,0,0,0-1.768.8L.579,11.765A1.413,1.413,0,1,0,2.7,13.632l7.45-8.466a.25.25,0,0,1,.437.166V22.587a1.413,1.413,0,1,0,2.826,0V5.332a.25.25,0,0,1,.438-.165L21.3,13.632a1.413,1.413,0,1,0,2.121-1.867Z"
fill="#3b6fb6"
stroke="none"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="0"
></path>
</g>
</svg>
{{ text }}
</a>
</div>
`, isInline: true }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: VfBackToTopAngularComponent, decorators: [{
type: Component,
args: [{ selector: 'vf-back-to-top', template: `
<div
class="vf-back-to-top vf-back-top--{{ type }}"
data-vf-js-back-to-top
[attr.vf-back-top--floating]="type === 'floating' ? '' : null"
>
<a
[href]="scrollToId !== undefined ? '#' + scrollToId : null"
[attr.data-scroll-to-id]="
scrollToId !== undefined ? scrollToId : null
"
class="vf-button vf-button--secondary vf-button--sm"
[attr.aria-label]="text"
>
<svg
class="vf-icon vf-icon--search-btn | vf-button__icon"
viewBox="0 0 140 140"
width="16"
height="16"
>
<g transform="matrix(5.833333333333333,0,0,5.833333333333333,0,0)">
<path
d="M23.421,11.765,13.768.8A2.641,2.641,0,0,0,12,0a2.645,2.645,0,0,0-1.768.8L.579,11.765A1.413,1.413,0,1,0,2.7,13.632l7.45-8.466a.25.25,0,0,1,.437.166V22.587a1.413,1.413,0,1,0,2.826,0V5.332a.25.25,0,0,1,.438-.165L21.3,13.632a1.413,1.413,0,1,0,2.121-1.867Z"
fill="#3b6fb6"
stroke="none"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="0"
></path>
</g>
</svg>
{{ text }}
</a>
</div>
` }]
}], propDecorators: { type: [{
type: Input
}], text: [{
type: Input
}], scrollToId: [{
type: Input
}], example: [{
type: Input
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmYtYmFjay10by10b3AuYW5ndWxhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy92Zi1iYWNrLXRvLXRvcC5hbmd1bGFyL3NyYy9saWIvdmYtYmFjay10by10b3AuYW5ndWxhci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBeUNqRCxNQUFNLE9BQU8sMkJBQTJCO0lBT3RDLFdBQVc7UUFDVCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLElBQUksYUFBYSxDQUFDO0lBQ3pDLENBQUM7OEdBVFUsMkJBQTJCO2tHQUEzQiwyQkFBMkIsaUtBckM1Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtDVDs7MkZBR1UsMkJBQTJCO2tCQXZDdkMsU0FBUzsrQkFDRSxnQkFBZ0IsWUFDaEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQ1Q7OEJBS1EsSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmYtYmFjay10by10b3AnLFxuICB0ZW1wbGF0ZTogYFxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cInZmLWJhY2stdG8tdG9wIHZmLWJhY2stdG9wLS17eyB0eXBlIH19XCJcbiAgICAgICAgZGF0YS12Zi1qcy1iYWNrLXRvLXRvcFxuICAgICAgICBbYXR0ci52Zi1iYWNrLXRvcC0tZmxvYXRpbmddPVwidHlwZSA9PT0gJ2Zsb2F0aW5nJyA/ICcnIDogbnVsbFwiXG4gICAgICA+XG4gICAgICAgIDxhXG4gICAgICAgICAgW2hyZWZdPVwic2Nyb2xsVG9JZCAhPT0gdW5kZWZpbmVkID8gJyMnICsgc2Nyb2xsVG9JZCA6IG51bGxcIlxuICAgICAgICAgIFthdHRyLmRhdGEtc2Nyb2xsLXRvLWlkXT1cIlxuICAgICAgICAgICAgc2Nyb2xsVG9JZCAhPT0gdW5kZWZpbmVkID8gc2Nyb2xsVG9JZCA6IG51bGxcbiAgICAgICAgICBcIlxuICAgICAgICAgIGNsYXNzPVwidmYtYnV0dG9uIHZmLWJ1dHRvbi0tc2Vjb25kYXJ5IHZmLWJ1dHRvbi0tc21cIlxuICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwidGV4dFwiXG4gICAgICAgID5cbiAgICAgICAgICA8c3ZnXG4gICAgICAgICAgICBjbGFzcz1cInZmLWljb24gdmYtaWNvbi0tc2VhcmNoLWJ0biB8IHZmLWJ1dHRvbl9faWNvblwiXG4gICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDE0MCAxNDBcIlxuICAgICAgICAgICAgd2lkdGg9XCIxNlwiXG4gICAgICAgICAgICBoZWlnaHQ9XCIxNlwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGcgdHJhbnNmb3JtPVwibWF0cml4KDUuODMzMzMzMzMzMzMzMzMzLDAsMCw1LjgzMzMzMzMzMzMzMzMzMywwLDApXCI+XG4gICAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgICAgZD1cIk0yMy40MjEsMTEuNzY1LDEzLjc2OC44QTIuNjQxLDIuNjQxLDAsMCwwLDEyLDBhMi42NDUsMi42NDUsMCwwLDAtMS43NjguOEwuNTc5LDExLjc2NUExLjQxMywxLjQxMywwLDEsMCwyLjcsMTMuNjMybDcuNDUtOC40NjZhLjI1LjI1LDAsMCwxLC40MzcuMTY2VjIyLjU4N2ExLjQxMywxLjQxMywwLDEsMCwyLjgyNiwwVjUuMzMyYS4yNS4yNSwwLDAsMSwuNDM4LS4xNjVMMjEuMywxMy42MzJhMS40MTMsMS40MTMsMCwxLDAsMi4xMjEtMS44NjdaXCJcbiAgICAgICAgICAgICAgICBmaWxsPVwiIzNiNmZiNlwiXG4gICAgICAgICAgICAgICAgc3Ryb2tlPVwibm9uZVwiXG4gICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXG4gICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIlxuICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjBcIlxuICAgICAgICAgICAgICA+PC9wYXRoPlxuICAgICAgICAgICAgPC9nPlxuICAgICAgICAgIDwvc3ZnPlxuICAgICAgICAgIHt7IHRleHQgfX1cbiAgICAgICAgPC9hPlxuICAgICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlczogW10sXG59KVxuZXhwb3J0IGNsYXNzIFZmQmFja1RvVG9wQW5ndWxhckNvbXBvbmVudCB7XG4gIC8qIEluaXRpYWxpemUgdmFsdWVzIGJhc2VkIG9uIGlucHV0IHZhbHVlcyAqL1xuICBASW5wdXQoKSB0eXBlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHRleHQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgc2Nyb2xsVG9JZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBleGFtcGxlOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMudGV4dCA9IHRoaXMudGV4dCB8fCAnQmFjayB0byB0b3AnO1xuICB9XG59XG4iXX0=
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { VfBackToTopAngularComponent } from './vf-back-to-top.angular.component';
import * as i0 from "@angular/core";
export class VfBackToTopAngularModule {
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: VfBackToTopAngularModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.1", ngImport: i0, type: VfBackToTopAngularModule, declarations: [VfBackToTopAngularComponent], imports: [CommonModule], exports: [VfBackToTopAngularComponent] }); }
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: VfBackToTopAngularModule, imports: [CommonModule] }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: VfBackToTopAngularModule, decorators: [{
type: NgModule,
args: [{
declarations: [
VfBackToTopAngularComponent
],
imports: [
CommonModule
],
exports: [
VfBackToTopAngularComponent
]
}]
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmYtYmFjay10by10b3AuYW5ndWxhci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy92Zi1iYWNrLXRvLXRvcC5hbmd1bGFyL3NyYy9saWIvdmYtYmFjay10by10b3AuYW5ndWxhci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7O0FBYWpGLE1BQU0sT0FBTyx3QkFBd0I7OEdBQXhCLHdCQUF3QjsrR0FBeEIsd0JBQXdCLGlCQVRqQywyQkFBMkIsYUFHM0IsWUFBWSxhQUdaLDJCQUEyQjsrR0FHbEIsd0JBQXdCLFlBTmpDLFlBQVk7OzJGQU1ILHdCQUF3QjtrQkFYcEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osMkJBQTJCO3FCQUM1QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTtxQkFDYjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsMkJBQTJCO3FCQUM1QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgVmZCYWNrVG9Ub3BBbmd1bGFyQ29tcG9uZW50IH0gZnJvbSAnLi92Zi1iYWNrLXRvLXRvcC5hbmd1bGFyLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFZmQmFja1RvVG9wQW5ndWxhckNvbXBvbmVudFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBWZkJhY2tUb1RvcEFuZ3VsYXJDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBWZkJhY2tUb1RvcEFuZ3VsYXJNb2R1bGUgeyB9XG4iXX0=
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
/*
* Public API Surface of vf-back-to-top.angular
*/
export * from './lib/vf-back-to-top.angular.component';
export * from './lib/vf-back-to-top.angular.module';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3ZmLWJhY2stdG8tdG9wLmFuZ3VsYXIvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMscUNBQXFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIHZmLWJhY2stdG8tdG9wLmFuZ3VsYXJcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zi1iYWNrLXRvLXRvcC5hbmd1bGFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi92Zi1iYWNrLXRvLXRvcC5hbmd1bGFyLm1vZHVsZSc7XG4iXX0=
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
/**
* Generated bundle index. Do not edit.
*/
export * from './public-api';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmYtYmFjay10by10b3AuYW5ndWxhci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL3ZmLWJhY2stdG8tdG9wLmFuZ3VsYXIvc3JjL3ZmLWJhY2stdG8tdG9wLmFuZ3VsYXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
import * as i0 from '@angular/core';
import { Component, Input, NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';

class VfBackToTopAngularComponent {
ngOnChanges() {
this.text = this.text || 'Back to top';
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: VfBackToTopAngularComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.1", type: VfBackToTopAngularComponent, selector: "vf-back-to-top", inputs: { type: "type", text: "text", scrollToId: "scrollToId", example: "example" }, usesOnChanges: true, ngImport: i0, template: `
<div
class="vf-back-to-top vf-back-top--{{ type }}"
data-vf-js-back-to-top
[attr.vf-back-top--floating]="type === 'floating' ? '' : null"
>
<a
[href]="scrollToId !== undefined ? '#' + scrollToId : null"
[attr.data-scroll-to-id]="
scrollToId !== undefined ? scrollToId : null
"
class="vf-button vf-button--secondary vf-button--sm"
[attr.aria-label]="text"
>
<svg
class="vf-icon vf-icon--search-btn | vf-button__icon"
viewBox="0 0 140 140"
width="16"
height="16"
>
<g transform="matrix(5.833333333333333,0,0,5.833333333333333,0,0)">
<path
d="M23.421,11.765,13.768.8A2.641,2.641,0,0,0,12,0a2.645,2.645,0,0,0-1.768.8L.579,11.765A1.413,1.413,0,1,0,2.7,13.632l7.45-8.466a.25.25,0,0,1,.437.166V22.587a1.413,1.413,0,1,0,2.826,0V5.332a.25.25,0,0,1,.438-.165L21.3,13.632a1.413,1.413,0,1,0,2.121-1.867Z"
fill="#3b6fb6"
stroke="none"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="0"
></path>
</g>
</svg>
{{ text }}
</a>
</div>
`, isInline: true }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: VfBackToTopAngularComponent, decorators: [{
type: Component,
args: [{ selector: 'vf-back-to-top', template: `
<div
class="vf-back-to-top vf-back-top--{{ type }}"
data-vf-js-back-to-top
[attr.vf-back-top--floating]="type === 'floating' ? '' : null"
>
<a
[href]="scrollToId !== undefined ? '#' + scrollToId : null"
[attr.data-scroll-to-id]="
scrollToId !== undefined ? scrollToId : null
"
class="vf-button vf-button--secondary vf-button--sm"
[attr.aria-label]="text"
>
<svg
class="vf-icon vf-icon--search-btn | vf-button__icon"
viewBox="0 0 140 140"
width="16"
height="16"
>
<g transform="matrix(5.833333333333333,0,0,5.833333333333333,0,0)">
<path
d="M23.421,11.765,13.768.8A2.641,2.641,0,0,0,12,0a2.645,2.645,0,0,0-1.768.8L.579,11.765A1.413,1.413,0,1,0,2.7,13.632l7.45-8.466a.25.25,0,0,1,.437.166V22.587a1.413,1.413,0,1,0,2.826,0V5.332a.25.25,0,0,1,.438-.165L21.3,13.632a1.413,1.413,0,1,0,2.121-1.867Z"
fill="#3b6fb6"
stroke="none"
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="0"
></path>
</g>
</svg>
{{ text }}
</a>
</div>
` }]
}], propDecorators: { type: [{
type: Input
}], text: [{
type: Input
}], scrollToId: [{
type: Input
}], example: [{
type: Input
}] } });

class VfBackToTopAngularModule {
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: VfBackToTopAngularModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.1", ngImport: i0, type: VfBackToTopAngularModule, declarations: [VfBackToTopAngularComponent], imports: [CommonModule], exports: [VfBackToTopAngularComponent] }); }
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: VfBackToTopAngularModule, imports: [CommonModule] }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: VfBackToTopAngularModule, decorators: [{
type: NgModule,
args: [{
declarations: [
VfBackToTopAngularComponent
],
imports: [
CommonModule
],
exports: [
VfBackToTopAngularComponent
]
}]
}] });

/*
* Public API Surface of vf-back-to-top.angular
*/

/**
* Generated bundle index. Do not edit.
*/

export { VfBackToTopAngularComponent, VfBackToTopAngularModule };
//# sourceMappingURL=vf-back-to-top.angular.mjs.map
Loading

0 comments on commit 1551caf

Please sign in to comment.