ngx-sfc-components 0.0.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/README.md +685 -0
- package/esm2020/lib/components/avatar/avatar.component.mjs +83 -0
- package/esm2020/lib/components/avatar/avatar.constants.mjs +9 -0
- package/esm2020/lib/components/avatar/models/avatar-data.model.mjs +2 -0
- package/esm2020/lib/components/avatar/models/avatar-image.model.mjs +14 -0
- package/esm2020/lib/components/avatar/models/avatar-progress.model.mjs +2 -0
- package/esm2020/lib/components/avatar/parts/badge/avatar-badge-position.enum.mjs +12 -0
- package/esm2020/lib/components/avatar/parts/badge/avatar-badge.component.mjs +88 -0
- package/esm2020/lib/components/avatar/parts/badge/avatar-badge.constants.mjs +5 -0
- package/esm2020/lib/components/carousel/carousel.component.mjs +230 -0
- package/esm2020/lib/components/carousel/carousel.enum.mjs +33 -0
- package/esm2020/lib/components/carousel/directive/carousel-slide.directive.mjs +31 -0
- package/esm2020/lib/components/carousel/models/dom.model.mjs +2 -0
- package/esm2020/lib/components/carousel/models/navigation.model.mjs +2 -0
- package/esm2020/lib/components/carousel/models/options.model.mjs +2 -0
- package/esm2020/lib/components/carousel/models/slide.model.mjs +3 -0
- package/esm2020/lib/components/carousel/parts/stage/carousel-stage.component.mjs +83 -0
- package/esm2020/lib/components/carousel/parts/stage/carousel-stage.model.mjs +2 -0
- package/esm2020/lib/components/carousel/service/animate/carousel-animate.service.mjs +86 -0
- package/esm2020/lib/components/carousel/service/autoplay/carousel-autoplay.service.mjs +129 -0
- package/esm2020/lib/components/carousel/service/carousel/carousel-service.constants.mjs +44 -0
- package/esm2020/lib/components/carousel/service/carousel/carousel-service.enum.mjs +14 -0
- package/esm2020/lib/components/carousel/service/carousel/carousel-service.model.mjs +2 -0
- package/esm2020/lib/components/carousel/service/carousel/carousel.service.mjs +697 -0
- package/esm2020/lib/components/carousel/service/lazy/carousel-lazy-load.service.mjs +59 -0
- package/esm2020/lib/components/carousel/service/navigation/carousel-navigation.service.mjs +211 -0
- package/esm2020/lib/components/chart/chart-option.model.mjs +2 -0
- package/esm2020/lib/components/chart/chart.component.mjs +124 -0
- package/esm2020/lib/components/chart/chart.constants.mjs +95 -0
- package/esm2020/lib/components/chart/service/settings/chart-settings.service.mjs +87 -0
- package/esm2020/lib/components/chart/service/theme/chart-theme.model.mjs +2 -0
- package/esm2020/lib/components/chart/service/theme/chart-theme.service.mjs +25 -0
- package/esm2020/lib/components/index.mjs +40 -0
- package/esm2020/lib/components/menu/dropdown/dropdown-menu.component.mjs +86 -0
- package/esm2020/lib/components/menu/dropdown/parts/item/dropdown-menu-item.component.mjs +26 -0
- package/esm2020/lib/components/menu/dropdown/parts/item/dropdown-menu-item.model.mjs +2 -0
- package/esm2020/lib/components/menu/navigation/navigation-menu.component.mjs +26 -0
- package/esm2020/lib/components/menu/navigation/parts/item/navigation-menu-item.component.mjs +31 -0
- package/esm2020/lib/components/menu/navigation/parts/item/navigation-menu-item.model.mjs +2 -0
- package/esm2020/lib/components/menu/side/parts/header/side-menu-header.component.mjs +31 -0
- package/esm2020/lib/components/menu/side/parts/item/content/side-menu-item-content.component.mjs +56 -0
- package/esm2020/lib/components/menu/side/parts/item/side-menu-item.component.mjs +81 -0
- package/esm2020/lib/components/menu/side/parts/title/side-menu-title.component.mjs +24 -0
- package/esm2020/lib/components/menu/side/side-menu.component.mjs +47 -0
- package/esm2020/lib/components/menu/side/side-menu.model.mjs +6 -0
- package/esm2020/lib/components/no-export-index.mjs +15 -0
- package/esm2020/lib/components/notification/enums/notification-template.enum.mjs +5 -0
- package/esm2020/lib/components/notification/enums/notification-type.enum.mjs +7 -0
- package/esm2020/lib/components/notification/notification-auto-close.model.mjs +2 -0
- package/esm2020/lib/components/notification/notification.component.mjs +67 -0
- package/esm2020/lib/components/notification/parts/content/notification-content.component.mjs +33 -0
- package/esm2020/lib/components/notification/parts/content/notification-content.model.mjs +2 -0
- package/esm2020/lib/components/progress/circle/progress-circle.component.mjs +23 -0
- package/esm2020/lib/components/progress/line/progress-line.component.mjs +40 -0
- package/esm2020/lib/components/progress/progress-color.enum.mjs +13 -0
- package/esm2020/lib/components/progress/progress.component.mjs +50 -0
- package/esm2020/lib/components/progress/semi-circle/progress-semi-circle.component.mjs +42 -0
- package/esm2020/lib/components/slider/parts/button/slider-button-type.enum.mjs +6 -0
- package/esm2020/lib/components/slider/parts/button/slider-button.component.mjs +34 -0
- package/esm2020/lib/components/slider/parts/item/slider-item.component.mjs +17 -0
- package/esm2020/lib/components/slider/parts/item/slider-item.model.mjs +2 -0
- package/esm2020/lib/components/slider/parts/pagination/slider-pagination.component.mjs +29 -0
- package/esm2020/lib/components/slider/service/automatic/slider-automatic.service.mjs +35 -0
- package/esm2020/lib/components/slider/service/slider/slider-move-type.enum.mjs +7 -0
- package/esm2020/lib/components/slider/service/slider/slider-move.event.mjs +2 -0
- package/esm2020/lib/components/slider/service/slider/slider-move.model.mjs +2 -0
- package/esm2020/lib/components/slider/service/slider/slider.service.mjs +40 -0
- package/esm2020/lib/components/slider/slider-type.enum.mjs +6 -0
- package/esm2020/lib/components/slider/slider.component.mjs +116 -0
- package/esm2020/lib/components/stars/star-type.enum.mjs +9 -0
- package/esm2020/lib/components/stars/stars.component.mjs +42 -0
- package/esm2020/lib/components/table/enums/table-data-type.enum.mjs +6 -0
- package/esm2020/lib/components/table/enums/table-template.enum.mjs +7 -0
- package/esm2020/lib/components/table/models/table-pagination.model.mjs +2 -0
- package/esm2020/lib/components/table/models/table.model.mjs +2 -0
- package/esm2020/lib/components/table/parts/columns/default/default-table-column.component.mjs +24 -0
- package/esm2020/lib/components/table/parts/columns/selectable/selectable-table-column.component.mjs +30 -0
- package/esm2020/lib/components/table/parts/columns/table-column-type.enum.mjs +8 -0
- package/esm2020/lib/components/table/parts/columns/table-column.model.mjs +2 -0
- package/esm2020/lib/components/table/parts/content/base-default-table-content.component.mjs +74 -0
- package/esm2020/lib/components/table/parts/content/cards/default/default-table-card.component.mjs +14 -0
- package/esm2020/lib/components/table/parts/content/rows/default/default-table-row.component.mjs +28 -0
- package/esm2020/lib/components/table/parts/content/rows/expanded/expanded-table-row-template.enum.mjs +6 -0
- package/esm2020/lib/components/table/parts/content/rows/expanded/expanded-table-row.component.mjs +42 -0
- package/esm2020/lib/components/table/parts/content/rows/expanded/expanded-table-row.model.mjs +2 -0
- package/esm2020/lib/components/table/parts/toggle/columns-toggle.component.mjs +33 -0
- package/esm2020/lib/components/table/parts/toggle/columns-toggle.constants.mjs +11 -0
- package/esm2020/lib/components/table/parts/toggle/service/columns-toggle.service.mjs +34 -0
- package/esm2020/lib/components/table/service/select/table-select.event.mjs +2 -0
- package/esm2020/lib/components/table/service/select/table-select.service.mjs +24 -0
- package/esm2020/lib/components/table/table.component.mjs +250 -0
- package/esm2020/lib/components/table/table.constants.mjs +11 -0
- package/esm2020/lib/components/tabs/models/tab.model.mjs +2 -0
- package/esm2020/lib/components/tabs/models/tabs-view.model.mjs +2 -0
- package/esm2020/lib/components/tabs/parts/labels/tab-label-content-base.component.mjs +29 -0
- package/esm2020/lib/components/tabs/parts/labels/tab-label-icon/tab-label-icon.component.mjs +20 -0
- package/esm2020/lib/components/tabs/parts/labels/tab-label-line/tab-label-line.component.mjs +13 -0
- package/esm2020/lib/components/tabs/parts/sliders/tab-label-icon/tab-label-icon-slider.component.mjs +20 -0
- package/esm2020/lib/components/tabs/parts/sliders/tab-label-line/tab-label-line-slider.component.mjs +20 -0
- package/esm2020/lib/components/tabs/parts/sliders/tab-slider-base.component.mjs +18 -0
- package/esm2020/lib/components/tabs/parts/sliders/tab-slider-context.model.mjs +2 -0
- package/esm2020/lib/components/tabs/service/tab.service.mjs +11 -0
- package/esm2020/lib/components/tabs/tabs-template.enum.mjs +7 -0
- package/esm2020/lib/components/tabs/tabs.component.mjs +69 -0
- package/esm2020/lib/components/tags/parts/tag/tag.component.mjs +18 -0
- package/esm2020/lib/components/tags/parts/tag/tag.model.mjs +2 -0
- package/esm2020/lib/components/tags/tags.component.mjs +18 -0
- package/esm2020/lib/components/timeline/parts/item/timeline-item-position.enum.mjs +6 -0
- package/esm2020/lib/components/timeline/parts/item/timeline-item.component.mjs +34 -0
- package/esm2020/lib/components/timeline/parts/item/timeline-item.model.mjs +2 -0
- package/esm2020/lib/components/timeline/timeline.component.mjs +18 -0
- package/esm2020/lib/ngx-sfc-components.module.mjs +208 -0
- package/esm2020/ngx-sfc-components.mjs +5 -0
- package/esm2020/public-api.mjs +6 -0
- package/fesm2015/ngx-sfc-components.mjs +4006 -0
- package/fesm2015/ngx-sfc-components.mjs.map +1 -0
- package/fesm2020/ngx-sfc-components.mjs +3989 -0
- package/fesm2020/ngx-sfc-components.mjs.map +1 -0
- package/lib/components/avatar/avatar.component.d.ts +42 -0
- package/lib/components/avatar/avatar.constants.d.ts +8 -0
- package/lib/components/avatar/models/avatar-data.model.d.ts +6 -0
- package/lib/components/avatar/models/avatar-image.model.d.ts +12 -0
- package/lib/components/avatar/models/avatar-progress.model.d.ts +4 -0
- package/lib/components/avatar/parts/badge/avatar-badge-position.enum.d.ts +10 -0
- package/lib/components/avatar/parts/badge/avatar-badge.component.d.ts +14 -0
- package/lib/components/avatar/parts/badge/avatar-badge.constants.d.ts +4 -0
- package/lib/components/carousel/carousel.component.d.ts +62 -0
- package/lib/components/carousel/carousel.enum.d.ts +26 -0
- package/lib/components/carousel/directive/carousel-slide.directive.d.ts +13 -0
- package/lib/components/carousel/models/dom.model.d.ts +7 -0
- package/lib/components/carousel/models/navigation.model.d.ts +17 -0
- package/lib/components/carousel/models/options.model.d.ts +40 -0
- package/lib/components/carousel/models/slide.model.d.ts +28 -0
- package/lib/components/carousel/parts/stage/carousel-stage.component.d.ts +30 -0
- package/lib/components/carousel/parts/stage/carousel-stage.model.d.ts +7 -0
- package/lib/components/carousel/service/animate/carousel-animate.service.d.ts +17 -0
- package/lib/components/carousel/service/autoplay/carousel-autoplay.service.d.ts +29 -0
- package/lib/components/carousel/service/carousel/carousel-service.constants.d.ts +5 -0
- package/lib/components/carousel/service/carousel/carousel-service.enum.d.ts +9 -0
- package/lib/components/carousel/service/carousel/carousel-service.model.d.ts +21 -0
- package/lib/components/carousel/service/carousel/carousel.service.d.ts +92 -0
- package/lib/components/carousel/service/lazy/carousel-lazy-load.service.d.ts +14 -0
- package/lib/components/carousel/service/navigation/carousel-navigation.service.d.ts +28 -0
- package/lib/components/chart/chart-option.model.d.ts +9 -0
- package/lib/components/chart/chart.component.d.ts +38 -0
- package/lib/components/chart/chart.constants.d.ts +100 -0
- package/lib/components/chart/service/settings/chart-settings.service.d.ts +14 -0
- package/lib/components/chart/service/theme/chart-theme.model.d.ts +15 -0
- package/lib/components/chart/service/theme/chart-theme.service.d.ts +11 -0
- package/lib/components/index.d.ts +56 -0
- package/lib/components/menu/dropdown/dropdown-menu.component.d.ts +28 -0
- package/lib/components/menu/dropdown/parts/item/dropdown-menu-item.component.d.ts +8 -0
- package/lib/components/menu/dropdown/parts/item/dropdown-menu-item.model.d.ts +6 -0
- package/lib/components/menu/navigation/navigation-menu.component.d.ts +10 -0
- package/lib/components/menu/navigation/parts/item/navigation-menu-item.component.d.ts +9 -0
- package/lib/components/menu/navigation/parts/item/navigation-menu-item.model.d.ts +6 -0
- package/lib/components/menu/side/parts/header/side-menu-header.component.d.ts +11 -0
- package/lib/components/menu/side/parts/item/content/side-menu-item-content.component.d.ts +17 -0
- package/lib/components/menu/side/parts/item/side-menu-item.component.d.ts +17 -0
- package/lib/components/menu/side/parts/title/side-menu-title.component.d.ts +7 -0
- package/lib/components/menu/side/side-menu.component.d.ts +13 -0
- package/lib/components/menu/side/side-menu.model.d.ts +15 -0
- package/lib/components/no-export-index.d.ts +14 -0
- package/lib/components/notification/enums/notification-template.enum.d.ts +3 -0
- package/lib/components/notification/enums/notification-type.enum.d.ts +5 -0
- package/lib/components/notification/notification-auto-close.model.d.ts +4 -0
- package/lib/components/notification/notification.component.d.ts +26 -0
- package/lib/components/notification/parts/content/notification-content.component.d.ts +14 -0
- package/lib/components/notification/parts/content/notification-content.model.d.ts +8 -0
- package/lib/components/progress/circle/progress-circle.component.d.ts +8 -0
- package/lib/components/progress/line/progress-line.component.d.ts +17 -0
- package/lib/components/progress/progress-color.enum.d.ts +11 -0
- package/lib/components/progress/progress.component.d.ts +9 -0
- package/lib/components/progress/semi-circle/progress-semi-circle.component.d.ts +16 -0
- package/lib/components/slider/parts/button/slider-button-type.enum.d.ts +4 -0
- package/lib/components/slider/parts/button/slider-button.component.d.ts +11 -0
- package/lib/components/slider/parts/item/slider-item.component.d.ts +7 -0
- package/lib/components/slider/parts/item/slider-item.model.d.ts +5 -0
- package/lib/components/slider/parts/pagination/slider-pagination.component.d.ts +11 -0
- package/lib/components/slider/service/automatic/slider-automatic.service.d.ts +17 -0
- package/lib/components/slider/service/slider/slider-move-type.enum.d.ts +5 -0
- package/lib/components/slider/service/slider/slider-move.event.d.ts +5 -0
- package/lib/components/slider/service/slider/slider-move.model.d.ts +4 -0
- package/lib/components/slider/service/slider/slider.service.d.ts +12 -0
- package/lib/components/slider/slider-type.enum.d.ts +4 -0
- package/lib/components/slider/slider.component.d.ts +45 -0
- package/lib/components/stars/star-type.enum.d.ts +7 -0
- package/lib/components/stars/stars.component.d.ts +11 -0
- package/lib/components/table/enums/table-data-type.enum.d.ts +4 -0
- package/lib/components/table/enums/table-template.enum.d.ts +5 -0
- package/lib/components/table/models/table-pagination.model.d.ts +5 -0
- package/lib/components/table/models/table.model.d.ts +9 -0
- package/lib/components/table/parts/columns/default/default-table-column.component.d.ts +8 -0
- package/lib/components/table/parts/columns/selectable/selectable-table-column.component.d.ts +10 -0
- package/lib/components/table/parts/columns/table-column-type.enum.d.ts +6 -0
- package/lib/components/table/parts/columns/table-column.model.d.ts +11 -0
- package/lib/components/table/parts/content/base-default-table-content.component.d.ts +27 -0
- package/lib/components/table/parts/content/cards/default/default-table-card.component.d.ts +6 -0
- package/lib/components/table/parts/content/rows/default/default-table-row.component.d.ts +10 -0
- package/lib/components/table/parts/content/rows/expanded/expanded-table-row-template.enum.d.ts +4 -0
- package/lib/components/table/parts/content/rows/expanded/expanded-table-row.component.d.ts +16 -0
- package/lib/components/table/parts/content/rows/expanded/expanded-table-row.model.d.ts +11 -0
- package/lib/components/table/parts/toggle/columns-toggle.component.d.ts +13 -0
- package/lib/components/table/parts/toggle/columns-toggle.constants.d.ts +10 -0
- package/lib/components/table/parts/toggle/service/columns-toggle.service.d.ts +15 -0
- package/lib/components/table/service/select/table-select.event.d.ts +4 -0
- package/lib/components/table/service/select/table-select.service.d.ts +11 -0
- package/lib/components/table/table.component.d.ts +74 -0
- package/lib/components/table/table.constants.d.ts +11 -0
- package/lib/components/tabs/models/tab.model.d.ts +7 -0
- package/lib/components/tabs/models/tabs-view.model.d.ts +8 -0
- package/lib/components/tabs/parts/labels/tab-label-content-base.component.d.ts +9 -0
- package/lib/components/tabs/parts/labels/tab-label-icon/tab-label-icon.component.d.ts +9 -0
- package/lib/components/tabs/parts/labels/tab-label-line/tab-label-line.component.d.ts +6 -0
- package/lib/components/tabs/parts/sliders/tab-label-icon/tab-label-icon-slider.component.d.ts +7 -0
- package/lib/components/tabs/parts/sliders/tab-label-line/tab-label-line-slider.component.d.ts +10 -0
- package/lib/components/tabs/parts/sliders/tab-slider-base.component.d.ts +8 -0
- package/lib/components/tabs/parts/sliders/tab-slider-context.model.d.ts +4 -0
- package/lib/components/tabs/service/tab.service.d.ts +6 -0
- package/lib/components/tabs/tabs-template.enum.d.ts +5 -0
- package/lib/components/tabs/tabs.component.d.ts +26 -0
- package/lib/components/tags/parts/tag/tag.component.d.ts +7 -0
- package/lib/components/tags/parts/tag/tag.model.d.ts +4 -0
- package/lib/components/tags/tags.component.d.ts +7 -0
- package/lib/components/timeline/parts/item/timeline-item-position.enum.d.ts +4 -0
- package/lib/components/timeline/parts/item/timeline-item.component.d.ts +11 -0
- package/lib/components/timeline/parts/item/timeline-item.model.d.ts +10 -0
- package/lib/components/timeline/timeline.component.d.ts +7 -0
- package/lib/ngx-sfc-components.module.d.ts +49 -0
- package/ngx-sfc-components.d.ts +5 -0
- package/package.json +50 -0
- package/public-api.d.ts +2 -0
package/README.md
ADDED
|
@@ -0,0 +1,685 @@
|
|
|
1
|
+
# ngx-sfc-components
|
|
2
|
+
|
|
3
|
+
This library contains components for Street Football Club (SFC) project.
|
|
4
|
+
|
|
5
|
+
## Table of Contents
|
|
6
|
+
|
|
7
|
+
- [Get started](#get-started)
|
|
8
|
+
- [Components](#components)
|
|
9
|
+
- [Avatar](#avatar-sfc-avatar)
|
|
10
|
+
- [Chart](#chart-sfc-chart)
|
|
11
|
+
- [Menus](#menus)
|
|
12
|
+
- [Side](#side-sfc-side-menu)
|
|
13
|
+
- [Dropdown](#dropdown-sfc-dropdown-menu)
|
|
14
|
+
- [Navigation](#navigation-sfc-navigation-menu)
|
|
15
|
+
- [Notification](#notification-sfc-notification)
|
|
16
|
+
- [Progresses](#progresses)
|
|
17
|
+
- [Line](#line-sfc-progress-line)
|
|
18
|
+
- [Semi-circle](#semi-circle-sfc-progress-semi-circle)
|
|
19
|
+
- [Circle](#circle-sfc-progress-circle)
|
|
20
|
+
- [Slider](#slider-sfc-slider)
|
|
21
|
+
- [Stars](#stars-sfc-stars)
|
|
22
|
+
- [Table](#table-sfc-table)
|
|
23
|
+
- [Tabs](#tabs)
|
|
24
|
+
- [Line](#line-sfc-tabs)
|
|
25
|
+
- [Icon](#icon-sfc-tabs)
|
|
26
|
+
- [Tags](#tags-sfc-tags)
|
|
27
|
+
- [Timeline](#timeline-sfc-timeline)
|
|
28
|
+
|
|
29
|
+
## Get started
|
|
30
|
+
|
|
31
|
+
1. Run `npm install ngx-sfc-components` or `ng add ngx-sfc-components`.
|
|
32
|
+
2. Import `NgxSfcCommonModule` into a module where you intend to use components and directives:
|
|
33
|
+
|
|
34
|
+
```typescript
|
|
35
|
+
import { NgxSfcComponentsModule } from 'ngx-sfc-components';
|
|
36
|
+
@NgModule({
|
|
37
|
+
imports: [ NgxSfcComponentsModule ]
|
|
38
|
+
})
|
|
39
|
+
export class SomeModule { }
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Components
|
|
43
|
+
|
|
44
|
+
## **Avatar `<sfc-avatar>`**
|
|
45
|
+
|
|
46
|
+
Component display player/user rounded photo image with progress bar and information. Allowed to add player rating as stars view and add badges for additional info.
|
|
47
|
+
|
|
48
|
+
```html
|
|
49
|
+
<sfc-avatar [radius]="160" [stroke]="1" [progress]="50" [progressModel]="progressColor" [stars]="true" [starsValue]="2.15" [data]="dataImage">
|
|
50
|
+
<sfc-avatar-badge [position]="AvatarBadgePosition.Right" [background]="'#8CC152'">
|
|
51
|
+
<i class="fa fa-copyright"></i>
|
|
52
|
+
</sfc-avatar-badge>
|
|
53
|
+
</sfc-avatar>
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
Parameters:
|
|
57
|
+
1. `[radius]` - define avatar size (component size must be used with relevance to this value)
|
|
58
|
+
2. `[stroke]` - size of avatar progress circle
|
|
59
|
+
3. `[progress]` - set value for avatar's progress line
|
|
60
|
+
4. `[progressModel]` - model that define color for progress line
|
|
61
|
+
|
|
62
|
+
```typescript
|
|
63
|
+
export interface IAvatarProgressModel {
|
|
64
|
+
color?: string;
|
|
65
|
+
filledColor?: string;
|
|
66
|
+
}
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
5. `[data]` - provide information about player/user
|
|
70
|
+
|
|
71
|
+
```typescript
|
|
72
|
+
export interface IAvatarDataModel {
|
|
73
|
+
firstName?: string;
|
|
74
|
+
lastName?: string;
|
|
75
|
+
image?: string;
|
|
76
|
+
title?: string;
|
|
77
|
+
}
|
|
78
|
+
```
|
|
79
|
+
6. `[stars]` - show/hide stars as player raiting
|
|
80
|
+
7. `[starsValue]` - value for stars
|
|
81
|
+
|
|
82
|
+
Avatar's badge has two parameters:
|
|
83
|
+
1. `[background]` - background color
|
|
84
|
+
2. `[position]` - static position of badge
|
|
85
|
+
|
|
86
|
+
```typescript
|
|
87
|
+
export enum AvatarBadgePosition {
|
|
88
|
+
Top = 'top',
|
|
89
|
+
RightTop = 'right-top',
|
|
90
|
+
Right = 'right',
|
|
91
|
+
RightBottom = 'right-bottom',
|
|
92
|
+
Bottom = 'bottom',
|
|
93
|
+
LeftTop = 'left-top',
|
|
94
|
+
Left = 'left',
|
|
95
|
+
LeftBottom = 'left-bottom',
|
|
96
|
+
}
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
## **Chart `<sfc-chart>`**
|
|
100
|
+
|
|
101
|
+
It's a component wrapper on chart.js library with extra logic for theming and displaying charts.
|
|
102
|
+
|
|
103
|
+
```html
|
|
104
|
+
<sfc-chart [theme]="theme" [type]="chartType" [options]="verticalChartOptions" [chartOptions]="chartOptions" [data]="getData()"
|
|
105
|
+
[datasets]="datasets" [labels]="labels" [plugins]="plugins">
|
|
106
|
+
</sfc-chart>
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
Parameters:
|
|
110
|
+
1. `[type]` - chart type (line, bar, pie, doughnut, radar and polar)
|
|
111
|
+
2. `[theme]` - support two themes (default and dark)
|
|
112
|
+
|
|
113
|
+
```typescript
|
|
114
|
+
export enum Theme {
|
|
115
|
+
Default = 'sfc-default-theme',
|
|
116
|
+
Dark = 'sfc-dark-theme'
|
|
117
|
+
}
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
3. `[options]` - chart.js options
|
|
121
|
+
4. `[chartOptions]` - options for setting frequently used chart.js options
|
|
122
|
+
|
|
123
|
+
```typescript
|
|
124
|
+
export interface ChartOptionModel {
|
|
125
|
+
legend?: boolean;
|
|
126
|
+
gridLines?: boolean;
|
|
127
|
+
xAxe?:boolean;
|
|
128
|
+
yAxe?:boolean;
|
|
129
|
+
tooltip?: boolean;
|
|
130
|
+
ticks?: boolean;
|
|
131
|
+
defaultColors?: boolean;
|
|
132
|
+
}
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
5. `[data]` - chart.js data
|
|
136
|
+
6. `[plugins]` - chart.js plugins
|
|
137
|
+
7. `[datasets]` - chart.js datasets
|
|
138
|
+
8. `[labels]` - chart.js labels
|
|
139
|
+
|
|
140
|
+
## Menus
|
|
141
|
+
|
|
142
|
+
Several types of menus:
|
|
143
|
+
|
|
144
|
+
## **Side `<sfc-side-menu>`**
|
|
145
|
+
|
|
146
|
+
Side menu that can be expanded to the right and can have sub-menus.
|
|
147
|
+
|
|
148
|
+
```html
|
|
149
|
+
<sfc-side-menu [model]="MENU_MODEL_3" (selected)="onSelect($event)"></sfc-side-menu>
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
Parameters:
|
|
153
|
+
1. `[model]` - model for menu, contains info about constructed items of menu
|
|
154
|
+
|
|
155
|
+
```typescript
|
|
156
|
+
export interface ISideMenuModel {
|
|
157
|
+
open: boolean; // expanded or not
|
|
158
|
+
items: ISideMenuItemModel[];
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
export interface ISideMenuItemModel {
|
|
162
|
+
active: boolean; // selected or not
|
|
163
|
+
label: string;
|
|
164
|
+
icon: string;
|
|
165
|
+
type: SideMenuItemType;
|
|
166
|
+
items?: ISideMenuItemModel[]; // if not empty - has sub-menu items
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
export enum SideMenuItemType {
|
|
170
|
+
Item = 'item',
|
|
171
|
+
Title = 'title' // not selected
|
|
172
|
+
}
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
2. `(selected)` - emit handler for selecting menu items
|
|
176
|
+
|
|
177
|
+
## **Dropdown `<sfc-dropdown-menu>`**
|
|
178
|
+
|
|
179
|
+
Component allow to define context menu.
|
|
180
|
+
|
|
181
|
+
```html
|
|
182
|
+
<sfc-dropdown-menu [items]="MODEL" icon="fa fa-star" label="Test label" [hideOnClick]="false"
|
|
183
|
+
[hideOnClickOutside]="false" [bordered]="true" [position]="Position.Right"
|
|
184
|
+
[open]="false">
|
|
185
|
+
</sfc-dropdown-menu>
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
Parameters:
|
|
189
|
+
1. `[items]` - menu items
|
|
190
|
+
|
|
191
|
+
```typescript
|
|
192
|
+
export interface IDropdownMenuItemModel {
|
|
193
|
+
label: string;
|
|
194
|
+
icon?: string;
|
|
195
|
+
delimeter?: boolean; // add dlimeter after menu item
|
|
196
|
+
click?: (item: IDropdownMenuItemModel) => void; // click handler
|
|
197
|
+
}
|
|
198
|
+
```
|
|
199
|
+
2. `[icon]` - icon for menu item
|
|
200
|
+
3. `[label]` - menu item label
|
|
201
|
+
4. `[hideOnClick]` - if true, on item click - menu will be hidden
|
|
202
|
+
5. `[hideOnClickOutside]` - if true, when click outside menu - hide menu
|
|
203
|
+
6. `[bordered]` - add border to menu dots
|
|
204
|
+
7. `[position]` - define where menu wil be appear
|
|
205
|
+
|
|
206
|
+
```typescript
|
|
207
|
+
export enum Position {
|
|
208
|
+
Top = 'top',
|
|
209
|
+
Bottom = 'bottom',
|
|
210
|
+
Left = 'left',
|
|
211
|
+
Right = 'right',
|
|
212
|
+
Center = 'center'
|
|
213
|
+
}
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
8. `[open]` - define if menu will be open on init
|
|
217
|
+
|
|
218
|
+
## **Navigation `<sfc-navigation-menu>`**
|
|
219
|
+
|
|
220
|
+
Simple responsive navigation menu.
|
|
221
|
+
|
|
222
|
+
```html
|
|
223
|
+
<sfc-navigation-menu [items]="MODEL" (selected)="onSelect($event)"></sfc-navigation-menu>
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
Parameters:
|
|
227
|
+
1. `[items]` - menu items
|
|
228
|
+
|
|
229
|
+
```typescript
|
|
230
|
+
export interface INavigationMenuItemModel {
|
|
231
|
+
label: string;
|
|
232
|
+
active: boolean; // define selected item
|
|
233
|
+
icon?: string;
|
|
234
|
+
click?: (item: INavigationMenuItemModel) => void;
|
|
235
|
+
}
|
|
236
|
+
```
|
|
237
|
+
2. `(selected)` - emit handler for selecting menu items
|
|
238
|
+
|
|
239
|
+
## **Notification `<sfc-notification>`**
|
|
240
|
+
|
|
241
|
+
Component created for implementing user notification with details and actions.
|
|
242
|
+
|
|
243
|
+
```html
|
|
244
|
+
<sfc-notification [model]="btnNotification" [showClose]="true" [autoCloseModel]="autoCloseModel" [type]="NotificationType.Info"
|
|
245
|
+
[content]="contentRef" (closed)="onClose()" (buttonClicked)="onButtonClick()">
|
|
246
|
+
</sfc-notification>
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
Parameters:
|
|
250
|
+
1. `[model]` - notification model
|
|
251
|
+
|
|
252
|
+
```typescript
|
|
253
|
+
export interface INotificationContentModel {
|
|
254
|
+
title?: string;
|
|
255
|
+
subTitle?: string;
|
|
256
|
+
showButton?: boolean;
|
|
257
|
+
buttonText?: string;
|
|
258
|
+
icon?: string;
|
|
259
|
+
image?: string;
|
|
260
|
+
}
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
2. `[showClose]` - show/hide close icon
|
|
264
|
+
3. `[autoCloseModel]` - auto close notification model
|
|
265
|
+
|
|
266
|
+
```typescript
|
|
267
|
+
export interface INotificationAutoCloseModel {
|
|
268
|
+
enabled: boolean;
|
|
269
|
+
interval?: number; // after what time notification will be closed
|
|
270
|
+
}
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
4. `[type]` - UI type of notification
|
|
274
|
+
|
|
275
|
+
```typescript
|
|
276
|
+
export enum NotificationType {
|
|
277
|
+
Info = 'info',
|
|
278
|
+
Success = 'success',
|
|
279
|
+
Failed = 'failed'
|
|
280
|
+
}
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
5. `[content]` - hold content reference for template, if it not provided and content template also missing, than default content will be created.
|
|
284
|
+
6. `(closed)` - emit handler for closing notification
|
|
285
|
+
7. `(buttonClicked)` - emit handler for default notification content button click
|
|
286
|
+
|
|
287
|
+
|
|
288
|
+
## Progresses
|
|
289
|
+
|
|
290
|
+
Several types of progress components:
|
|
291
|
+
|
|
292
|
+
## **Line `<sfc-progress-line>`**
|
|
293
|
+
|
|
294
|
+
Progress bar as line view
|
|
295
|
+
|
|
296
|
+
```html
|
|
297
|
+
<sfc-progress-line labelStart="Dribbling" labelEnd="value:55" [progress]="55" background="red" [getColor]="getColor"
|
|
298
|
+
[total]="100" [hideEnd]="true">
|
|
299
|
+
</sfc-progress-line>
|
|
300
|
+
```
|
|
301
|
+
|
|
302
|
+
Parameters:
|
|
303
|
+
1. `labelStart` - text at the start of bar line
|
|
304
|
+
2. `labelEnd` - text at the end of bar line
|
|
305
|
+
3. `[progress]` - progress value
|
|
306
|
+
4. `background` - color for background of line (not progressed part of line)
|
|
307
|
+
5. `[getColor]` - custom function for defined colors for progress value
|
|
308
|
+
6. `[total]` - max value for progress bar
|
|
309
|
+
7. `[hideEnd]` - show/hide progress value text or labelEnd value at the end of bar
|
|
310
|
+
|
|
311
|
+
## **Semi-circle `<sfc-progress-semi-circle>`**
|
|
312
|
+
|
|
313
|
+
Progress bar as semi-circle view
|
|
314
|
+
|
|
315
|
+
```html
|
|
316
|
+
<sfc-progress-semi-circle background="green" [progress]="60" [getColor]="getColor" [limits]="true"
|
|
317
|
+
[max]="100" [min]="0">
|
|
318
|
+
</sfc-progress-semi-circle>
|
|
319
|
+
```
|
|
320
|
+
|
|
321
|
+
Parameters:
|
|
322
|
+
1. `[progress]` - progress value
|
|
323
|
+
2. `background` - color for background of line (not progressed part of line)
|
|
324
|
+
3. `[getColor]` - custom function for defined colors for progress value
|
|
325
|
+
4. `[limits]` - show/hide min and max value text
|
|
326
|
+
5. `[min]` - minimum value
|
|
327
|
+
6. `[max]` - maximum value
|
|
328
|
+
|
|
329
|
+
## **Circle `<sfc-progress-circle>`**
|
|
330
|
+
|
|
331
|
+
Progress bar as circle view
|
|
332
|
+
|
|
333
|
+
```html
|
|
334
|
+
<sfc-progress-circle background="green" [progress]="60" [getColor]="getColor"></sfc-progress-circle>
|
|
335
|
+
```
|
|
336
|
+
|
|
337
|
+
Parameters:
|
|
338
|
+
1. `[progress]` - progress value
|
|
339
|
+
2. `background` - color for background of line (not progressed part of line)
|
|
340
|
+
3. `[getColor]` - custom function for defined colors for progress value
|
|
341
|
+
|
|
342
|
+
## **Slider `<sfc-slider>`**
|
|
343
|
+
|
|
344
|
+
Image slider component with titles, pagination dots and buttons for slide.
|
|
345
|
+
|
|
346
|
+
```html
|
|
347
|
+
<sfc-slider [items]="items" [pagination]="false" [showCount]="true" [type]="SliderType.Automatic"></sfc-slider>
|
|
348
|
+
```
|
|
349
|
+
|
|
350
|
+
Parameters:
|
|
351
|
+
1. `[items]` - items for slider
|
|
352
|
+
|
|
353
|
+
```typescript
|
|
354
|
+
export interface ISliderItemModel {
|
|
355
|
+
imageSrc: string;
|
|
356
|
+
title?: string;
|
|
357
|
+
subTitle?: string;
|
|
358
|
+
}
|
|
359
|
+
```
|
|
360
|
+
|
|
361
|
+
2. `[pagination]` - show/hide dots pagination
|
|
362
|
+
3. `[showCount]` - show/hide image count
|
|
363
|
+
4. `[type]` - type of slider
|
|
364
|
+
|
|
365
|
+
```typescript
|
|
366
|
+
export enum SliderType {
|
|
367
|
+
Default = 'default',
|
|
368
|
+
Automatic = 'automatic'
|
|
369
|
+
}
|
|
370
|
+
```
|
|
371
|
+
|
|
372
|
+
## **Stars `<sfc-stars>`**
|
|
373
|
+
|
|
374
|
+
Responsive component for visual displaying some value or progress as stars.
|
|
375
|
+
|
|
376
|
+
```html
|
|
377
|
+
<sfc-stars [value]="1.5" [count]="3"></sfc-stars>
|
|
378
|
+
```
|
|
379
|
+
|
|
380
|
+
Parameters:
|
|
381
|
+
1. `[value]` - current value (e.x. if count=3 and value is 1.5 - half of all stars will be filled)
|
|
382
|
+
2. `[count]` - stars count
|
|
383
|
+
|
|
384
|
+
## **Table `<sfc-table>`**
|
|
385
|
+
|
|
386
|
+
Component for displaying data in the form of a table.
|
|
387
|
+
Has paginate data posibility and sorting by columns.
|
|
388
|
+
Each table item can be in two states: row and card.
|
|
389
|
+
Each row and card can be selected or selected all.
|
|
390
|
+
Table component can be modified by replacing row/cars by custom implementation.
|
|
391
|
+
Also implemented expanded row.
|
|
392
|
+
Table is a responsive component.
|
|
393
|
+
|
|
394
|
+
```html
|
|
395
|
+
<sfc-table [columns]="columnsListItems" [data]="dataListItems" [position]="Position.Center"
|
|
396
|
+
[selectable]="true" [selectOnClick]="false" [delimeter]="false"
|
|
397
|
+
[dataType]="TableDataType.Rows" [dataToggle]="true" [showColumns]="true"
|
|
398
|
+
[pagination]="paginationModel" [sequence]="true" [expanded]="false" #listItemsTable>
|
|
399
|
+
<ng-template [sfcTemplateReference]="TableTemplate.Column" let-column>
|
|
400
|
+
<table-custom-column [label]="column.name" [active]="column.sorting.active">
|
|
401
|
+
</table-custom-column>
|
|
402
|
+
</ng-template>
|
|
403
|
+
<ng-template [sfcTemplateReference]="TableTemplate.Row" let-list>
|
|
404
|
+
<table-custom-row [data]="list.model" [columns]="list.columns" [position]="list.position"
|
|
405
|
+
[columnWidth]="list.columnWidth" (selected)="listItemsTable.selectRow($event)">
|
|
406
|
+
</table-custom-row>
|
|
407
|
+
</ng-template>
|
|
408
|
+
<ng-template [sfcTemplateReference]="TableTemplate.Card" let-list>
|
|
409
|
+
<table-custom-card [data]="list.model" [columns]="list.columns"></table-custom-card>
|
|
410
|
+
</ng-template>
|
|
411
|
+
</sfc-table>
|
|
412
|
+
```
|
|
413
|
+
Parameters:
|
|
414
|
+
1. `[position]` - position for columns and data in row
|
|
415
|
+
|
|
416
|
+
```typescript
|
|
417
|
+
export enum Position {
|
|
418
|
+
Top = 'top',
|
|
419
|
+
Bottom = 'bottom',
|
|
420
|
+
Left = 'left',
|
|
421
|
+
Right = 'right',
|
|
422
|
+
Center = 'center'
|
|
423
|
+
}
|
|
424
|
+
```
|
|
425
|
+
|
|
426
|
+
2. `[delimeter]` - show/hide delimeter after columns
|
|
427
|
+
3. `[dataType]` - type of data visualization
|
|
428
|
+
|
|
429
|
+
```typescript
|
|
430
|
+
export enum TableDataType {
|
|
431
|
+
Rows = 'rows',
|
|
432
|
+
Cards = 'cards'
|
|
433
|
+
}
|
|
434
|
+
```
|
|
435
|
+
|
|
436
|
+
4. `[dataToggle]` - show/hide toggle for changing dataType
|
|
437
|
+
5. `[showColumns]` - show/hide columns
|
|
438
|
+
6. `[pagination]` - pagination configuration
|
|
439
|
+
|
|
440
|
+
```typescript
|
|
441
|
+
export interface ITablePaginationModel {
|
|
442
|
+
enabled: boolean;
|
|
443
|
+
page: number; // current page
|
|
444
|
+
size: number; // how many items in one page
|
|
445
|
+
}
|
|
446
|
+
```
|
|
447
|
+
|
|
448
|
+
7. `[sequence]` - add/remove extra column at the start for row/card sequence number
|
|
449
|
+
8. `[expanded]` - define if row expanded or not
|
|
450
|
+
9. `[selectable]` - define if row/card expanded or not
|
|
451
|
+
10. `[selectOnClick]` - if true, than on click on whole row/card it will be selected, otherwise - will be selected only on checkmark click
|
|
452
|
+
11. `[columns]` - columns for table
|
|
453
|
+
|
|
454
|
+
```typescript
|
|
455
|
+
export interface IDefaultTableColumnModel {
|
|
456
|
+
name: string;
|
|
457
|
+
field: string; // identificator for sorting
|
|
458
|
+
icon?: string;
|
|
459
|
+
sorting?: ISortingModel; // sorting configuration
|
|
460
|
+
}
|
|
461
|
+
|
|
462
|
+
export interface ISortingModel {
|
|
463
|
+
enabled: boolean;
|
|
464
|
+
active?: boolean;
|
|
465
|
+
direction: SortingDirection;
|
|
466
|
+
icons?: ISortingIcon[]; // icons for asc and desc
|
|
467
|
+
}
|
|
468
|
+
|
|
469
|
+
export interface ISortingIcon {
|
|
470
|
+
direction: SortingDirection;
|
|
471
|
+
icon: string
|
|
472
|
+
}
|
|
473
|
+
|
|
474
|
+
export enum SortingDirection {
|
|
475
|
+
Ascending = 'ascending',
|
|
476
|
+
Descending = 'descending'
|
|
477
|
+
}
|
|
478
|
+
```
|
|
479
|
+
|
|
480
|
+
12. `[data]` - plain array data
|
|
481
|
+
13. `[data$]` - table data as observable
|
|
482
|
+
14. `[columnContent]` - content reference for custom column
|
|
483
|
+
15. `[rowContent]` - content reference for custom row
|
|
484
|
+
16. `[cardContent]` - content reference for custom card
|
|
485
|
+
|
|
486
|
+
Default column:
|
|
487
|
+
|
|
488
|
+
```html
|
|
489
|
+
<sfc-default-table-column [model]="column"></sfc-default-table-column>
|
|
490
|
+
```
|
|
491
|
+
|
|
492
|
+
Default row:
|
|
493
|
+
|
|
494
|
+
```html
|
|
495
|
+
<sfc-default-table-row [columns]="vm.columns" [model]="item" [position]="position"
|
|
496
|
+
[columnWidth]="vm.columnWidth" [selectOnClick]="selectOnClick" (selected)="selectRow($event)">
|
|
497
|
+
</sfc-default-table-row>
|
|
498
|
+
```
|
|
499
|
+
|
|
500
|
+
Default card:
|
|
501
|
+
|
|
502
|
+
```html
|
|
503
|
+
<sfc-default-table-row [columns]="vm.columns" [model]="item" [position]="position"
|
|
504
|
+
[columnWidth]="vm.columnWidth" [selectOnClick]="selectOnClick" (selected)="selectRow($event)">
|
|
505
|
+
</sfc-default-table-row>
|
|
506
|
+
```
|
|
507
|
+
|
|
508
|
+
Expanded:
|
|
509
|
+
|
|
510
|
+
```html
|
|
511
|
+
<sfc-expanded-table-row [model]="row.model" [columns]="row.columns" [position]="row.position"
|
|
512
|
+
[columnWidth]="row.columnWidth">
|
|
513
|
+
<ng-template [sfcTemplateReference]="ExpandedTableRowTemplate.Row" let-expandedRow>
|
|
514
|
+
<table-custom-expanded-row [model]="expandedRow.model.dataModel"
|
|
515
|
+
[position]="expandedRow.position" [columnWidth]="expandedRow.columnWidth"
|
|
516
|
+
[expanded]="expandedRow.expanded" [index]="expandedRow.model.index"
|
|
517
|
+
(selected)="expandedTemplateTable.selectRow($event)">
|
|
518
|
+
</table-custom-expanded-row>
|
|
519
|
+
</ng-template>
|
|
520
|
+
|
|
521
|
+
<ng-template [sfcTemplateReference]="ExpandedTableRowTemplate.Content" let-expandedContent>
|
|
522
|
+
<table-custom-expanded-row-content [data]="expandedContent.model.dataModel.data.items"
|
|
523
|
+
[position]="expandedContent.position" [columnWidth]="expandedContent.columnWidth">
|
|
524
|
+
</table-custom-expanded-row-content>
|
|
525
|
+
</ng-template>
|
|
526
|
+
|
|
527
|
+
</sfc-expanded-table-row>
|
|
528
|
+
```
|
|
529
|
+
|
|
530
|
+
## Tabs
|
|
531
|
+
|
|
532
|
+
Two possible tabs: line and icon.
|
|
533
|
+
|
|
534
|
+
## **Line `<sfc-tabs>`**
|
|
535
|
+
|
|
536
|
+
Component for visual representation of line tabs
|
|
537
|
+
|
|
538
|
+
```html
|
|
539
|
+
<sfc-tabs [tabs]="MODEL_SELECTED" [label]="labelRef" [slider]="sliderRef" [body]="bodyRef">
|
|
540
|
+
<ng-template [sfcTemplateReference]="TabsTemplate.Label" let-label>
|
|
541
|
+
<sfc-tab-label-line [selected]="label.selected" [disabled]="label.disabled" label="{{label.label}}"
|
|
542
|
+
icon="{{label.icon}}">
|
|
543
|
+
</sfc-tab-label-line>
|
|
544
|
+
</ng-template>
|
|
545
|
+
|
|
546
|
+
<ng-template [sfcTemplateReference]="TabsTemplate.Slider" let-data>
|
|
547
|
+
<sfc-tab-label-line-slider [count]="data.count" [index]="data.index">
|
|
548
|
+
</sfc-tab-label-line-slider>
|
|
549
|
+
</ng-template>
|
|
550
|
+
|
|
551
|
+
<ng-template [sfcTemplateReference]="TabsTemplate.Body" let-data>
|
|
552
|
+
{{data}}
|
|
553
|
+
</ng-template>
|
|
554
|
+
</sfc-tabs>
|
|
555
|
+
```
|
|
556
|
+
|
|
557
|
+
Parameters:
|
|
558
|
+
1. `[tabs]` - collection of data for tabs items
|
|
559
|
+
|
|
560
|
+
```typescript
|
|
561
|
+
export interface ITabModel {
|
|
562
|
+
label?: string;
|
|
563
|
+
icon?: string;
|
|
564
|
+
selected: boolean;
|
|
565
|
+
disabled: boolean;
|
|
566
|
+
data: any; // data for tab body
|
|
567
|
+
}
|
|
568
|
+
```
|
|
569
|
+
|
|
570
|
+
2. `[label]` - content reference for label part of tab
|
|
571
|
+
3. `[slider]` - content reference for slider part of tab
|
|
572
|
+
4. `[body]` - content reference for body part of tab
|
|
573
|
+
|
|
574
|
+
There 3 pars of tabs that can be replaced:
|
|
575
|
+
|
|
576
|
+
```typescript
|
|
577
|
+
export enum TabsTemplate {
|
|
578
|
+
Label = 'label',
|
|
579
|
+
Slider = 'slider',
|
|
580
|
+
Body = 'body'
|
|
581
|
+
}
|
|
582
|
+
```
|
|
583
|
+
|
|
584
|
+
Line type of tabs use such components as parts:
|
|
585
|
+
|
|
586
|
+
1. Label
|
|
587
|
+
|
|
588
|
+
```html
|
|
589
|
+
<sfc-tab-label-line [selected]="label.selected" [disabled]="label.disabled" label="{{label.label}}"
|
|
590
|
+
icon="{{label.icon}}">
|
|
591
|
+
</sfc-tab-label-line>
|
|
592
|
+
```
|
|
593
|
+
|
|
594
|
+
2. Slider
|
|
595
|
+
|
|
596
|
+
```html
|
|
597
|
+
<sfc-tab-label-line-slider [count]="data.count" [index]="data.index">
|
|
598
|
+
</sfc-tab-label-line-slider>
|
|
599
|
+
```
|
|
600
|
+
|
|
601
|
+
## **Icon `<sfc-tabs>`**
|
|
602
|
+
|
|
603
|
+
Component for visual representation of icon tabs
|
|
604
|
+
|
|
605
|
+
```html
|
|
606
|
+
<sfc-tabs [tabs]="MODEL_SELECTED" [label]="labelRef" [slider]="sliderRef" [body]="bodyRef">
|
|
607
|
+
<ng-template [sfcTemplateReference]="TabsTemplate.Label" let-label>
|
|
608
|
+
<sfc-tab-label-icon [selected]="label.selected" [disabled]="label.disabled" label="{{label.label}}"
|
|
609
|
+
icon="{{label.icon}}">
|
|
610
|
+
</sfc-tab-label-icon>
|
|
611
|
+
</ng-template>
|
|
612
|
+
|
|
613
|
+
<ng-template [sfcTemplateReference]="TabsTemplate.Slider" let-data>
|
|
614
|
+
<sfc-tab-label-icon-slider [count]="data.count" [index]="data.index">
|
|
615
|
+
</sfc-tab-label-icon-slider>
|
|
616
|
+
</ng-template>
|
|
617
|
+
|
|
618
|
+
<ng-template [sfcTemplateReference]="TabsTemplate.Body" let-data>
|
|
619
|
+
{{data}}
|
|
620
|
+
</ng-template>
|
|
621
|
+
</sfc-tabs>
|
|
622
|
+
```
|
|
623
|
+
|
|
624
|
+
Icon type of tabs use such components as parts:
|
|
625
|
+
|
|
626
|
+
1. Label
|
|
627
|
+
|
|
628
|
+
```html
|
|
629
|
+
<sfc-tab-label-icon [selected]="label.selected" [disabled]="label.disabled" label="{{label.label}}"
|
|
630
|
+
icon="{{label.icon}}">
|
|
631
|
+
</sfc-tab-label-icon>
|
|
632
|
+
```
|
|
633
|
+
|
|
634
|
+
2. Slider
|
|
635
|
+
|
|
636
|
+
```html
|
|
637
|
+
<sfc-tab-label-icon-slider [count]="data.count" [index]="data.index">
|
|
638
|
+
</sfc-tab-label-icon-slider>
|
|
639
|
+
```
|
|
640
|
+
|
|
641
|
+
## **Tags `<sfc-tags>`**
|
|
642
|
+
|
|
643
|
+
Display collection of tags.
|
|
644
|
+
|
|
645
|
+
```html
|
|
646
|
+
<sfc-tags [tags]="tags"></sfc-tags>
|
|
647
|
+
```
|
|
648
|
+
|
|
649
|
+
Parameters:
|
|
650
|
+
1. `[tags]` - collection of tags
|
|
651
|
+
|
|
652
|
+
```typescript
|
|
653
|
+
export interface ITagModel {
|
|
654
|
+
label: string;
|
|
655
|
+
icon?: string;
|
|
656
|
+
}
|
|
657
|
+
```
|
|
658
|
+
|
|
659
|
+
## **Timeline `<sfc-timeline>`**
|
|
660
|
+
|
|
661
|
+
Component for represent some period of time as vertical time line with dates and info.
|
|
662
|
+
|
|
663
|
+
```html
|
|
664
|
+
<sfc-timeline [items]="items"></sfc-timeline>
|
|
665
|
+
```
|
|
666
|
+
|
|
667
|
+
Parameters:
|
|
668
|
+
1. `[items]` - timeline period items
|
|
669
|
+
|
|
670
|
+
```typescript
|
|
671
|
+
export interface ITimelineItemModel{
|
|
672
|
+
title: string; // period title
|
|
673
|
+
position?: TimelineItemPosition; // left or right side
|
|
674
|
+
dateTimeLabel?: string; // period time value (year, month or minutes)
|
|
675
|
+
description?: string;
|
|
676
|
+
period?: boolean; // if true, than mean it's a period title
|
|
677
|
+
icon?: string;
|
|
678
|
+
image?: string;
|
|
679
|
+
}
|
|
680
|
+
|
|
681
|
+
export enum TimelineItemPosition {
|
|
682
|
+
Left = 'left',
|
|
683
|
+
Right = 'right'
|
|
684
|
+
}
|
|
685
|
+
```
|