@acorex/platform 19.2.20 → 19.3.0-next.0
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/common/index.d.ts +1 -0
- package/common/lib/app/application.types.d.ts +13 -3
- package/common/lib/file-storage/file-storage.types.d.ts +20 -12
- package/common/lib/filters/filters.types.d.ts +5 -0
- package/common/lib/layout/menu/badge-helper.d.ts +7 -0
- package/common/lib/layout/menu/index.d.ts +1 -0
- package/common/lib/layout/menu/menu.types.d.ts +1 -0
- package/common/lib/layout/task-badge/index.d.ts +2 -0
- package/common/lib/layout/task-badge/task-badge.service.d.ts +11 -0
- package/common/lib/layout/task-badge/task-badge.type.d.ts +6 -0
- package/common/lib/settings/setting-definition.provider.d.ts +7 -5
- package/common/lib/settings/setting.builder.d.ts +8 -5
- package/common/lib/settings/settings.service.d.ts +6 -5
- package/common/lib/settings/settings.types.d.ts +6 -10
- package/core/lib/data/index.d.ts +1 -0
- package/core/lib/data/value-transformer.d.ts +6 -0
- package/core/lib/types/core.types.d.ts +18 -0
- package/{layout/entity/lib → core/lib/types}/data.types.d.ts +3 -1
- package/core/lib/types/element.types.d.ts +6 -0
- package/core/lib/types/index.d.ts +6 -0
- package/core/lib/{types.d.ts → types/interactive.types.d.ts} +5 -25
- package/core/lib/types/scope.types.d.ts +10 -0
- package/core/lib/types/validation.types.d.ts +7 -0
- package/core/lib/utils/index.d.ts +1 -0
- package/core/lib/utils/object-util.d.ts +3 -0
- package/fesm2022/acorex-platform-common.mjs +79 -35
- package/fesm2022/acorex-platform-common.mjs.map +1 -1
- package/fesm2022/acorex-platform-core.mjs +151 -6
- package/fesm2022/acorex-platform-core.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-builder.mjs +44 -55
- package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-designer.mjs +77 -35
- package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-entity.mjs +240 -414
- package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-search.mjs +7 -26
- package/fesm2022/acorex-platform-layout-search.mjs.map +1 -1
- package/fesm2022/acorex-platform-layout-setting.mjs +211 -278
- package/fesm2022/acorex-platform-layout-setting.mjs.map +1 -1
- package/fesm2022/{acorex-platform-themes-default-entity-master-create-view.component-LKhN00ob.mjs → acorex-platform-themes-default-entity-master-create-view.component-3gmbdeJ_.mjs} +4 -3
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-3gmbdeJ_.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DnEL7Ej-.mjs +741 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DnEL7Ej-.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-8DdICjNs.mjs +91 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-8DdICjNs.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DadBeY1I.mjs +164 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DadBeY1I.mjs.map +1 -0
- package/fesm2022/{acorex-platform-themes-default-search-popup.component-BY3oQqbr.mjs → acorex-platform-themes-default-search-popup.component-BADEuoeJ.mjs} +9 -9
- package/fesm2022/{acorex-platform-themes-default-search-popup.component-BY3oQqbr.mjs.map → acorex-platform-themes-default-search-popup.component-BADEuoeJ.mjs.map} +1 -1
- package/fesm2022/acorex-platform-themes-default-setting-page.component-Cj73brIK.mjs +219 -0
- package/fesm2022/acorex-platform-themes-default-setting-page.component-Cj73brIK.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default-setting-view.component-rrAq6hg2.mjs +103 -0
- package/fesm2022/acorex-platform-themes-default-setting-view.component-rrAq6hg2.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-default.mjs +108 -64
- package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
- package/fesm2022/acorex-platform-themes-shared-setting.provider-CXiRmniv.mjs +168 -0
- package/fesm2022/acorex-platform-themes-shared-setting.provider-CXiRmniv.mjs.map +1 -0
- package/fesm2022/acorex-platform-themes-shared.mjs +495 -240
- package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
- package/fesm2022/acorex-platform-widgets.mjs +4100 -1480
- package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
- package/layout/builder/lib/builder/builder.service.d.ts +1 -1
- package/layout/builder/lib/builder/index.d.ts +2 -1
- package/layout/builder/lib/builder/widget-categories.d.ts +10 -0
- package/layout/builder/lib/builder/widget-group.types.d.ts +10 -0
- package/layout/builder/lib/builder/widget-map.d.ts +8 -1
- package/layout/builder/lib/builder/widget-status.types.d.ts +2 -0
- package/layout/builder/lib/builder/widget.types.d.ts +11 -27
- package/layout/designer/lib/designer/components/widget-picker/widget-picker.component.d.ts +7 -3
- package/layout/designer/lib/designer/components/widget-picker/widget-picker.service.d.ts +12 -0
- package/layout/designer/lib/designer/index.d.ts +1 -0
- package/layout/designer/lib/designer/shared/designer.service.d.ts +1 -0
- package/layout/designer/lib/property-viewer/widget-property-viewer.component.d.ts +2 -1
- package/layout/entity/lib/entity-data-seeder.d.ts +2 -2
- package/layout/entity/lib/entity-master-list.viewmodel.d.ts +4 -7
- package/layout/entity/lib/entity-storage-service.d.ts +39 -55
- package/layout/entity/lib/entity.types.d.ts +21 -0
- package/layout/entity/lib/index.d.ts +1 -2
- package/layout/entity/lib/widgets/lookup-widget/index.d.ts +0 -2
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-column.component.d.ts +4 -0
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +7 -9
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.component.d.ts +5 -2
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.viewmodel.d.ts +11 -3
- package/layout/search/lib/search.viewmodel.d.ts +0 -2
- package/layout/setting/lib/setting.viewmodel.d.ts +45 -111
- package/package.json +5 -5
- package/themes/default/lib/layouts/base/base-page.component.d.ts +14 -5
- package/themes/default/lib/layouts/base/base-page.types.d.ts +6 -1
- package/themes/default/lib/layouts/base/page-layout/page-layout.component.d.ts +5 -4
- package/themes/default/lib/layouts/base/simple-page/simple-page.layout.d.ts +2 -2
- package/themes/default/lib/layouts/entity-layouts/entity-category/entity-category.component.d.ts +16 -0
- package/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.d.ts +2 -2
- package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.d.ts +10 -8
- package/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.d.ts +12 -4
- package/themes/default/lib/layouts/entity-layouts/entity-master-toolbar-view/entity-master-toolbar-view.component.d.ts +7 -0
- package/themes/default/lib/layouts/entity-layouts/entity-master-toolbar-view/filters/entity-filter-toolbar.component.d.ts +48 -0
- package/themes/default/lib/layouts/entity-layouts/entity-master-toolbar-view/views/entity-view-toolbar.component.d.ts +12 -0
- package/themes/default/lib/layouts/root-layout/components/header/header.component.d.ts +2 -2
- package/themes/default/lib/layouts/root-layout/components/horizontal-menu/horizontal-menu.component.d.ts +9 -3
- package/themes/default/lib/layouts/root-layout/components/side-menu/side-menu.component.d.ts +7 -1
- package/themes/default/lib/layouts/root-layout/horizontal/horizontal-layout.component.d.ts +2 -2
- package/themes/default/lib/layouts/root-layout/root-layout.component.d.ts +2 -2
- package/themes/default/lib/layouts/root-layout/vertical/vertical-layout.component.d.ts +2 -2
- package/themes/default/lib/layouts/setting-layout/setting-page/setting-page.component.d.ts +61 -5
- package/themes/default/lib/layouts/setting-layout/setting-view/setting-view.component.d.ts +68 -6
- package/themes/shared/index.d.ts +1 -0
- package/themes/shared/lib/components/badge/badge.directive.d.ts +14 -0
- package/themes/shared/lib/components/layout-elements/layout-blocks.component.d.ts +4 -1
- package/themes/shared/lib/components/layout-elements/layout-side.component.d.ts +2 -2
- package/themes/shared/lib/components/slots/theme-slot.component.d.ts +2 -2
- package/themes/shared/lib/palette.provider.d.ts +1 -1
- package/themes/shared/lib/setting.keys.d.ts +2 -1
- package/themes/shared/lib/setting.provider.d.ts +4 -1
- package/themes/shared/lib/theme.service.d.ts +2 -2
- package/themes/shared/lib/theme.types.d.ts +11 -2
- package/themes/shared/lib/widgets/font-size-chooser/font-size-chooser-widget.component.d.ts +10 -0
- package/themes/shared/lib/widgets/font-size-chooser/font-size-chooser-widget.config.d.ts +7 -0
- package/themes/shared/lib/widgets/font-size-chooser/index.d.ts +2 -0
- package/themes/shared/lib/widgets/font-style-chooser/font-style-chooser-widget.component.d.ts +15 -0
- package/themes/shared/lib/widgets/font-style-chooser/font-style-chooser-widget.config.d.ts +7 -0
- package/themes/shared/lib/widgets/font-style-chooser/index.d.ts +2 -0
- package/themes/shared/lib/widgets/menu-orientation-chooser/index.d.ts +2 -0
- package/themes/shared/lib/widgets/menu-orientation-chooser/menu-orientation-chooser-widget.component.d.ts +15 -0
- package/themes/shared/lib/widgets/menu-orientation-chooser/menu-orientation-chooser-widget.config.d.ts +7 -0
- package/themes/shared/lib/widgets/theme-mode-chooser/index.d.ts +2 -0
- package/themes/shared/lib/widgets/theme-mode-chooser/theme-mode-chooser-widget.component.d.ts +16 -0
- package/themes/shared/lib/widgets/theme-mode-chooser/theme-mode-chooser-widget.config.d.ts +7 -0
- package/themes/shared/lib/widgets/theme-palette-chooser/index.d.ts +2 -0
- package/themes/shared/lib/widgets/theme-palette-chooser/theme-palette-chooser-widget.component.d.ts +13 -0
- package/themes/shared/lib/widgets/{theme-color-selection/theme-color-selection-widget.config.d.ts → theme-palette-chooser/theme-palette-chooser-widget.config.d.ts} +2 -2
- package/widgets/lib/properties/groups.d.ts +2 -0
- package/widgets/lib/widgets/advance/file/file-box-widget-edit.component.d.ts +5 -5
- package/widgets/lib/widgets/charts/bar-chart/bar-chart-widget.component.d.ts +52 -0
- package/widgets/lib/widgets/charts/bar-chart/bar-chart.type.d.ts +29 -11
- package/widgets/lib/widgets/charts/bar-chart/index.d.ts +1 -1
- package/widgets/lib/widgets/charts/chart.type.d.ts +3 -0
- package/widgets/lib/widgets/charts/clock-calendar/clock-calendar-widget.component.d.ts +40 -0
- package/widgets/lib/widgets/charts/clock-calendar/clock-calendar-widget.config.d.ts +7 -0
- package/widgets/lib/widgets/charts/clock-calendar/clock-calendar.types.d.ts +50 -0
- package/widgets/lib/widgets/charts/clock-calendar/index.d.ts +3 -0
- package/widgets/lib/widgets/charts/donut-chart/donut-chart-widget.component.d.ts +54 -0
- package/widgets/lib/widgets/charts/donut-chart/donut-chart.type.d.ts +31 -21
- package/widgets/lib/widgets/charts/donut-chart/index.d.ts +1 -1
- package/widgets/lib/widgets/charts/gauge-chart/{gauge-chart-widget-edit.component.d.ts → gauge-chart-widget.component.d.ts} +3 -3
- package/widgets/lib/widgets/charts/gauge-chart/gauge-chart.type.d.ts +26 -11
- package/widgets/lib/widgets/charts/gauge-chart/index.d.ts +2 -1
- package/widgets/lib/widgets/charts/shared/chart-base.component.d.ts +44 -0
- package/widgets/lib/widgets/charts/shared/chart-base.type.d.ts +37 -0
- package/widgets/lib/widgets/charts/sticky-note/index.d.ts +1 -1
- package/widgets/lib/widgets/charts/sticky-note/{sticky-note-widget-edit.component.d.ts → sticky-note-widget.component.d.ts} +3 -3
- package/widgets/lib/widgets/charts/weather/index.d.ts +4 -0
- package/widgets/lib/widgets/charts/weather/weather-services/index.d.ts +3 -0
- package/widgets/lib/widgets/charts/weather/weather-services/weather-api.abstract.d.ts +174 -0
- package/widgets/lib/widgets/charts/weather/weather-services/weather-api.key.d.ts +2 -0
- package/widgets/lib/widgets/charts/weather/weather-services/weather-api.mock.service.d.ts +47 -0
- package/widgets/lib/widgets/charts/weather/weather-services/weather-api.service.d.ts +48 -0
- package/widgets/lib/widgets/charts/weather/weather-widget.component.d.ts +109 -0
- package/widgets/lib/widgets/charts/weather/weather-widget.config.d.ts +14 -0
- package/widgets/lib/widgets/charts/weather/weather.module.d.ts +11 -0
- package/widgets/lib/widgets/editors/select/select-box-widget-column.component.d.ts +0 -1
- package/widgets/lib/widgets/editors/select/select-box-widget-edit.component.d.ts +4 -1
- package/widgets/lib/widgets/editors/template-box/index.d.ts +6 -0
- package/widgets/lib/widgets/editors/template-box/template-box-widget-column.component.d.ts +10 -0
- package/widgets/lib/widgets/editors/template-box/template-box-widget-edit.component.d.ts +29 -0
- package/widgets/lib/widgets/editors/template-box/template-box-widget-filter.component.d.ts +6 -0
- package/widgets/lib/widgets/editors/template-box/template-box-widget-print.component.d.ts +10 -0
- package/widgets/lib/widgets/editors/template-box/template-box-widget-view.component.d.ts +11 -0
- package/widgets/lib/widgets/editors/template-box/template-box-widget.config.d.ts +7 -0
- package/widgets/lib/widgets/filters/select-filter/select-filter-widget-edit.component.d.ts +2 -5
- package/widgets/lib/widgets/index.d.ts +3 -0
- package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-LKhN00ob.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BYUOmONk.mjs +0 -400
- package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BYUOmONk.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-B9TUh-2S.mjs +0 -91
- package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-B9TUh-2S.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-9U774Tr7.mjs +0 -135
- package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-9U774Tr7.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-setting-page.component-_IStMWcu.mjs +0 -74
- package/fesm2022/acorex-platform-themes-default-setting-page.component-_IStMWcu.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-setting-view.component-CeHpcfsc.mjs +0 -73
- package/fesm2022/acorex-platform-themes-default-setting-view.component-CeHpcfsc.mjs.map +0 -1
- package/fesm2022/acorex-platform-themes-default-theme-palette-preview.page-D_EkB2k8.mjs +0 -146
- package/fesm2022/acorex-platform-themes-default-theme-palette-preview.page-D_EkB2k8.mjs.map +0 -1
- package/layout/builder/lib/builder/widget-groups.d.ts +0 -9
- package/layout/entity/lib/dexie-storage.service.d.ts +0 -16
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-filter.component.d.ts +0 -6
- package/layout/entity/lib/widgets/lookup-widget/lookup-widget-print.component.d.ts +0 -6
- package/themes/default/lib/layouts/filters-layout/simple-filter-builder/filters-view.component.d.ts +0 -13
- package/themes/default/lib/pages/theme-palette-preview/theme-palette-preview.page.d.ts +0 -85
- package/themes/shared/lib/widgets/theme-color-selection/index.d.ts +0 -2
- package/themes/shared/lib/widgets/theme-color-selection/theme-color-selection-widget-edit.component.d.ts +0 -6
- package/widgets/lib/widgets/charts/bar-chart/bar-chart-widget-edit.component.d.ts +0 -40
- package/widgets/lib/widgets/charts/donut-chart/donut-chart-widget-edit.component.d.ts +0 -44
|
@@ -1,5 +1,17 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { AXPChartDataBase, AXPChartOptionBase } from '../shared/chart-base.type';
|
|
2
|
+
/**
|
|
3
|
+
* Bar chart data item interface
|
|
4
|
+
*/
|
|
5
|
+
export interface AXPBarChartData extends AXPChartDataBase {
|
|
6
|
+
id: string;
|
|
7
|
+
label: string;
|
|
8
|
+
value: number;
|
|
9
|
+
color?: string;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Bar chart options interface
|
|
13
|
+
*/
|
|
14
|
+
export interface AXPBarChartOption extends AXPChartOptionBase {
|
|
3
15
|
width?: number;
|
|
4
16
|
height?: number;
|
|
5
17
|
margin?: {
|
|
@@ -8,14 +20,20 @@ export interface AXPBarChartOption {
|
|
|
8
20
|
bottom: number;
|
|
9
21
|
left: number;
|
|
10
22
|
};
|
|
11
|
-
|
|
23
|
+
barPadding?: number;
|
|
24
|
+
barCornerRadius?: number;
|
|
25
|
+
showXAxis?: boolean;
|
|
26
|
+
showYAxis?: boolean;
|
|
27
|
+
showGrid?: boolean;
|
|
28
|
+
transitionDuration?: number;
|
|
29
|
+
transitionDelayMs?: number;
|
|
12
30
|
color?: string | string[];
|
|
31
|
+
hoverColor?: string;
|
|
32
|
+
showTooltip?: boolean;
|
|
33
|
+
tooltipFormat?: string;
|
|
13
34
|
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}
|
|
20
|
-
export interface AXPBarChartValue extends AXPChartValue<AXPBarChartData[], AXPBarChartOption> {
|
|
21
|
-
}
|
|
35
|
+
/**
|
|
36
|
+
* Bar chart data type returned by getValue()
|
|
37
|
+
* Represents an array of bar chart data items
|
|
38
|
+
*/
|
|
39
|
+
export type AXPBarChartValue = AXPBarChartData[];
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './bar-chart-widget
|
|
1
|
+
export * from './bar-chart-widget.component';
|
|
2
2
|
export * from './bar-chart-widget.config';
|
|
@@ -1,4 +1,7 @@
|
|
|
1
|
+
import { AXPWidgetCategory } from "@acorex/platform/layout/builder";
|
|
1
2
|
export interface AXPChartValue<T, U> {
|
|
2
3
|
data: T;
|
|
3
4
|
options: U;
|
|
4
5
|
}
|
|
6
|
+
export declare const AXP_WIDGETS_CHART_CATEGORY: AXPWidgetCategory;
|
|
7
|
+
export declare const AXP_WIDGETS_UTILITY_CATEGORY: AXPWidgetCategory;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
|
|
2
|
+
import { OnDestroy, OnInit, Signal } from '@angular/core';
|
|
3
|
+
import { AXPHourNumber } from './clock-calendar.types';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class AXPClockCalendarWidgetViewComponent extends AXPWidgetComponent implements OnInit, OnDestroy {
|
|
6
|
+
private readonly cdr;
|
|
7
|
+
protected currentTime: Date;
|
|
8
|
+
protected currentDate: Date;
|
|
9
|
+
private clockSubscription;
|
|
10
|
+
protected readonly clockHours: number[];
|
|
11
|
+
protected readonly clockHourNumbers: AXPHourNumber[];
|
|
12
|
+
protected hourRotation: number;
|
|
13
|
+
protected minuteRotation: number;
|
|
14
|
+
protected secondRotation: number;
|
|
15
|
+
protected readonly displayLayout: Signal<string>;
|
|
16
|
+
protected readonly showDigitalClock: Signal<boolean>;
|
|
17
|
+
protected readonly showAnalogClock: Signal<boolean>;
|
|
18
|
+
protected readonly showDate: Signal<boolean>;
|
|
19
|
+
protected readonly showDayOfWeek: Signal<boolean>;
|
|
20
|
+
protected readonly use24Hour: Signal<boolean>;
|
|
21
|
+
protected readonly showSeconds: Signal<boolean>;
|
|
22
|
+
protected readonly dateFormat: Signal<string>;
|
|
23
|
+
protected readonly timezone: Signal<string>;
|
|
24
|
+
protected readonly showTimezoneIndicator: Signal<boolean>;
|
|
25
|
+
protected readonly displayTimezone: Signal<string>;
|
|
26
|
+
protected readonly timeFormat: Signal<string>;
|
|
27
|
+
ngOnInit(): void;
|
|
28
|
+
ngOnDestroy(): void;
|
|
29
|
+
private startClockTimer;
|
|
30
|
+
private stopClockTimer;
|
|
31
|
+
private updateTime;
|
|
32
|
+
private getAdjustedTime;
|
|
33
|
+
private updateClockHandsRotation;
|
|
34
|
+
protected initializeWidget(): void;
|
|
35
|
+
protected updateWidget(): void;
|
|
36
|
+
protected destroyWidget(): void;
|
|
37
|
+
protected getDayOfWeek(): string;
|
|
38
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXPClockCalendarWidgetViewComponent, never>;
|
|
39
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AXPClockCalendarWidgetViewComponent, "ng-component", never, {}, {}, never, never, true, never>;
|
|
40
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ACoreX Clock Calendar Widget Types
|
|
3
|
+
* Contains all types and interfaces for the Clock Calendar widget
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Clock layout display options
|
|
7
|
+
*/
|
|
8
|
+
export type AXPClockLayout = 'both' | 'digital' | 'analog';
|
|
9
|
+
/**
|
|
10
|
+
* Clock timezone options
|
|
11
|
+
*/
|
|
12
|
+
export interface AXPTimezoneOption {
|
|
13
|
+
id: string;
|
|
14
|
+
title: string;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Date format options
|
|
18
|
+
*/
|
|
19
|
+
export interface AXPDateFormatOption {
|
|
20
|
+
id: string;
|
|
21
|
+
title: string;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Hour number definition for the analog clock
|
|
25
|
+
*/
|
|
26
|
+
export interface AXPHourNumber {
|
|
27
|
+
number: number;
|
|
28
|
+
angle: number;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Widget options for configuring the clock-calendar
|
|
32
|
+
*/
|
|
33
|
+
export interface AXPClockCalendarOptions {
|
|
34
|
+
displayLayout?: AXPClockLayout;
|
|
35
|
+
showDate?: boolean;
|
|
36
|
+
showDayOfWeek?: boolean;
|
|
37
|
+
use24Hour?: boolean;
|
|
38
|
+
showSeconds?: boolean;
|
|
39
|
+
showHourMarkers?: boolean;
|
|
40
|
+
dateFormat?: string;
|
|
41
|
+
timezone?: string;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Common timezone options for the widget configuration
|
|
45
|
+
*/
|
|
46
|
+
export declare const AXP_TIMEZONE_OPTIONS: AXPTimezoneOption[];
|
|
47
|
+
/**
|
|
48
|
+
* Common date format options for the widget configuration
|
|
49
|
+
*/
|
|
50
|
+
export declare const AXP_DATE_FORMAT_OPTIONS: AXPDateFormatOption[];
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { ChangeDetectorRef, EventEmitter } from '@angular/core';
|
|
2
|
+
import { AXPChartBaseComponent } from '../shared/chart-base.component';
|
|
3
|
+
import { AXPDonutChartData, AXPDonutChartOption, AXPDonutChartValue } from './donut-chart.type';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
export declare class AXPDonutChartWidgetViewComponent extends AXPChartBaseComponent<AXPDonutChartValue, AXPDonutChartOption> {
|
|
6
|
+
protected cdr: ChangeDetectorRef;
|
|
7
|
+
segmentClick: EventEmitter<AXPDonutChartData>;
|
|
8
|
+
private chartContainerEl;
|
|
9
|
+
private svg;
|
|
10
|
+
private chart;
|
|
11
|
+
private pieData;
|
|
12
|
+
private hiddenSegments;
|
|
13
|
+
private activeSegmentId;
|
|
14
|
+
private _tooltipVisible;
|
|
15
|
+
private _tooltipPosition;
|
|
16
|
+
private _tooltipData;
|
|
17
|
+
protected tooltipVisible: import("@angular/core").Signal<boolean>;
|
|
18
|
+
protected tooltipPosition: import("@angular/core").Signal<{
|
|
19
|
+
x: number;
|
|
20
|
+
y: number;
|
|
21
|
+
}>;
|
|
22
|
+
protected tooltipData: import("@angular/core").Signal<{
|
|
23
|
+
name: string;
|
|
24
|
+
value: number;
|
|
25
|
+
percentage: string;
|
|
26
|
+
id: string;
|
|
27
|
+
}>;
|
|
28
|
+
protected showLegend: import("@angular/core").Signal<boolean>;
|
|
29
|
+
protected showTooltip: import("@angular/core").Signal<boolean>;
|
|
30
|
+
protected showValue: import("@angular/core").Signal<boolean>;
|
|
31
|
+
protected showPercentage: import("@angular/core").Signal<boolean>;
|
|
32
|
+
protected legendPosition: import("@angular/core").Signal<any>;
|
|
33
|
+
constructor(cdr: ChangeDetectorRef);
|
|
34
|
+
protected trackByFn(index: number, item: AXPDonutChartData): string;
|
|
35
|
+
protected getColor(index: number): string;
|
|
36
|
+
protected isSegmentHidden(id: string): boolean;
|
|
37
|
+
protected createChart(): void;
|
|
38
|
+
protected updateChart(): void;
|
|
39
|
+
protected cleanupChart(): void;
|
|
40
|
+
protected onSegmentClick(item: AXPDonutChartData): void;
|
|
41
|
+
protected onLegendMouseEnter(item: AXPDonutChartData): void;
|
|
42
|
+
protected onLegendMouseLeave(): void;
|
|
43
|
+
private setupDimensions;
|
|
44
|
+
private renderDonutChart;
|
|
45
|
+
private setupColorScale;
|
|
46
|
+
private handleSegmentHover;
|
|
47
|
+
private updateTooltipPosition;
|
|
48
|
+
private addCenterContent;
|
|
49
|
+
private toggleSegment;
|
|
50
|
+
private calculateTotal;
|
|
51
|
+
private showNoDataMessage;
|
|
52
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXPDonutChartWidgetViewComponent, never>;
|
|
53
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AXPDonutChartWidgetViewComponent, "ng-component", never, {}, { "segmentClick": "segmentClick"; }, never, never, true, never>;
|
|
54
|
+
}
|
|
@@ -1,28 +1,38 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
1
|
+
import { AXPChartDataBase, AXPChartOptionBase } from '../shared/chart-base.type';
|
|
2
|
+
/**
|
|
3
|
+
* Donut chart segment data item interface
|
|
4
|
+
*/
|
|
5
|
+
export interface AXPDonutChartData extends AXPChartDataBase {
|
|
3
6
|
id: string;
|
|
4
7
|
name: string;
|
|
5
8
|
value: number;
|
|
6
9
|
color?: string;
|
|
7
10
|
}
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
/**
|
|
12
|
+
* Donut chart options interface
|
|
13
|
+
*/
|
|
14
|
+
export interface AXPDonutChartOption extends AXPChartOptionBase {
|
|
15
|
+
width?: number;
|
|
16
|
+
height?: number;
|
|
17
|
+
innerRadiusRatio?: number;
|
|
18
|
+
segmentCornerRadius?: number;
|
|
19
|
+
segmentPadding?: number;
|
|
20
|
+
showTooltip?: boolean;
|
|
21
|
+
showPercentage?: boolean;
|
|
22
|
+
showValue?: boolean;
|
|
23
|
+
showLegend?: boolean;
|
|
24
|
+
legendPosition?: 'bottom' | 'right' | 'top' | 'left';
|
|
25
|
+
animationEnabled?: boolean;
|
|
26
|
+
animationDuration?: number;
|
|
27
|
+
showCenterContent?: boolean;
|
|
28
|
+
centerContent?: {
|
|
29
|
+
label?: string;
|
|
30
|
+
showTotal?: boolean;
|
|
31
|
+
fontSize?: number;
|
|
17
32
|
};
|
|
18
|
-
legend?: {
|
|
19
|
-
enabled: boolean;
|
|
20
|
-
position?: 'bottom' | 'right';
|
|
21
|
-
};
|
|
22
|
-
animation?: {
|
|
23
|
-
enabled: boolean;
|
|
24
|
-
duration?: number;
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
export interface AXPDonutChartValue extends AXPChartValue<AXPDonutChartData[], AXPDonutChartOption> {
|
|
28
33
|
}
|
|
34
|
+
/**
|
|
35
|
+
* Donut chart data type returned by getValue()
|
|
36
|
+
* Represents an array of donut chart segments
|
|
37
|
+
*/
|
|
38
|
+
export type AXPDonutChartValue = AXPDonutChartData[];
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './donut-chart-widget
|
|
1
|
+
export * from './donut-chart-widget.component';
|
|
2
2
|
export * from './donut-chart-widget.config';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
|
|
2
2
|
import { AXPGaugeChartValue } from './gauge-chart.type';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
-
export declare class
|
|
4
|
+
export declare class AXPGaugeChartWidgetViewComponent extends AXPWidgetComponent<AXPGaugeChartValue> {
|
|
5
5
|
#private;
|
|
6
6
|
private chartContainerEl;
|
|
7
7
|
private chartEl;
|
|
@@ -50,6 +50,6 @@ export declare class AXPGaugeChartWidgetEditComponent extends AXPWidgetComponent
|
|
|
50
50
|
*/
|
|
51
51
|
private radiansToDegrees;
|
|
52
52
|
ngOnDestroy(): void;
|
|
53
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<
|
|
54
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<
|
|
53
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXPGaugeChartWidgetViewComponent, never>;
|
|
54
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AXPGaugeChartWidgetViewComponent, "ng-component", never, {}, {}, never, never, true, never>;
|
|
55
55
|
}
|
|
@@ -1,21 +1,36 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import { AXPChartDataBase, AXPChartOptionBase } from '../shared/chart-base.type';
|
|
2
|
+
/**
|
|
3
|
+
* Gauge chart data item interface
|
|
4
|
+
*/
|
|
5
|
+
export interface AXPGaugeChartData extends AXPChartDataBase {
|
|
5
6
|
value: number;
|
|
6
|
-
color?: string;
|
|
7
7
|
}
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
/**
|
|
9
|
+
* Gauge chart options interface
|
|
10
|
+
*/
|
|
11
|
+
export interface AXPGaugeChartOption extends AXPChartOptionBase {
|
|
11
12
|
minValue: number;
|
|
12
13
|
maxValue: number;
|
|
14
|
+
width?: number;
|
|
15
|
+
height?: number;
|
|
16
|
+
showValue?: boolean;
|
|
17
|
+
valueFormat?: string;
|
|
18
|
+
valueFontSize?: number;
|
|
19
|
+
gaugeWidth?: number;
|
|
20
|
+
cornerRadius?: number;
|
|
13
21
|
thresholds?: {
|
|
14
|
-
|
|
22
|
+
value: number;
|
|
15
23
|
color: string;
|
|
16
24
|
}[];
|
|
17
25
|
label?: string;
|
|
26
|
+
labelFontSize?: number;
|
|
27
|
+
baseColor?: string;
|
|
28
|
+
valueColor?: string;
|
|
29
|
+
backgroundColor?: string;
|
|
18
30
|
animationDuration?: number;
|
|
19
31
|
}
|
|
20
|
-
|
|
21
|
-
|
|
32
|
+
/**
|
|
33
|
+
* Gauge chart data type returned by getValue()
|
|
34
|
+
* Represents a single gauge value
|
|
35
|
+
*/
|
|
36
|
+
export type AXPGaugeChartValue = number;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
|
|
2
|
+
import { AfterViewInit, ChangeDetectorRef, ElementRef, OnDestroy, OnInit } from '@angular/core';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
/**
|
|
5
|
+
* Base component class for all chart components with common chart functionality
|
|
6
|
+
*/
|
|
7
|
+
export declare abstract class AXPChartBaseComponent<TData, TOptions> extends AXPWidgetComponent<TData> implements OnInit, AfterViewInit, OnDestroy {
|
|
8
|
+
protected cdr: ChangeDetectorRef;
|
|
9
|
+
protected d3: typeof import('d3');
|
|
10
|
+
private injector;
|
|
11
|
+
protected isInitialized: import("@angular/core").WritableSignal<boolean>;
|
|
12
|
+
protected isRendered: import("@angular/core").WritableSignal<boolean>;
|
|
13
|
+
protected _internalData: import("@angular/core").WritableSignal<TData | null>;
|
|
14
|
+
protected chartData: import("@angular/core").Signal<TData>;
|
|
15
|
+
protected _lastOptionsSnapshot: string;
|
|
16
|
+
private effectRef;
|
|
17
|
+
constructor(cdr: ChangeDetectorRef);
|
|
18
|
+
ngOnInit(): void;
|
|
19
|
+
ngAfterViewInit(): void;
|
|
20
|
+
ngOnDestroy(): void;
|
|
21
|
+
/**
|
|
22
|
+
* Load D3.js library asynchronously
|
|
23
|
+
*/
|
|
24
|
+
protected loadD3(): Promise<void>;
|
|
25
|
+
/**
|
|
26
|
+
* Set up reactive effects to track data and option changes
|
|
27
|
+
*/
|
|
28
|
+
protected setupEffects(): void;
|
|
29
|
+
/**
|
|
30
|
+
* Abstract methods that child classes must implement
|
|
31
|
+
*/
|
|
32
|
+
protected abstract createChart(): void;
|
|
33
|
+
protected abstract updateChart(): void;
|
|
34
|
+
protected abstract cleanupChart(): void;
|
|
35
|
+
/**
|
|
36
|
+
* Get dimensions of the container element
|
|
37
|
+
*/
|
|
38
|
+
protected getContainerDimensions(containerElement: ElementRef<HTMLElement>): {
|
|
39
|
+
width: number;
|
|
40
|
+
height: number;
|
|
41
|
+
};
|
|
42
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXPChartBaseComponent<any, any>, never>;
|
|
43
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<AXPChartBaseComponent<any, any>, never, never, {}, {}, never, never, true, never>;
|
|
44
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Common base types and utilities for all chart components
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Base chart data interface that all chart data types extend
|
|
6
|
+
*/
|
|
7
|
+
export interface AXPChartDataBase {
|
|
8
|
+
id: string;
|
|
9
|
+
color?: string;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Base chart options interface with common properties
|
|
13
|
+
*/
|
|
14
|
+
export interface AXPChartOptionBase {
|
|
15
|
+
width?: number;
|
|
16
|
+
height?: number;
|
|
17
|
+
animationEnabled?: boolean;
|
|
18
|
+
animationDuration?: number;
|
|
19
|
+
showTooltip?: boolean;
|
|
20
|
+
tooltipPosition?: 'auto' | 'fixed';
|
|
21
|
+
showLegend?: boolean;
|
|
22
|
+
legendPosition?: 'bottom' | 'right' | 'top' | 'left';
|
|
23
|
+
theme?: 'light' | 'dark' | 'auto';
|
|
24
|
+
colorScheme?: string | string[];
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Color utility functions for charts
|
|
28
|
+
*/
|
|
29
|
+
export declare const AXPChartColors: {
|
|
30
|
+
defaultColors: string[];
|
|
31
|
+
getColor: (index: number, customPalette?: string[]) => string;
|
|
32
|
+
generatePalette: (baseColor: string, count: number) => string[];
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Shared utility for loading D3.js dynamically
|
|
36
|
+
*/
|
|
37
|
+
export declare function loadD3(): Promise<any>;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from './sticky-note-widget
|
|
1
|
+
export * from './sticky-note-widget.component';
|
|
2
2
|
export * from './sticky-note-widget.config';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AXValueChangedEvent } from '@acorex/components/common';
|
|
2
2
|
import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
-
export declare class
|
|
4
|
+
export declare class AXPStickyNoteWidgetViewComponent extends AXPWidgetComponent<string> {
|
|
5
5
|
protected isEditing: import("@angular/core").WritableSignal<boolean>;
|
|
6
6
|
protected date: Date;
|
|
7
7
|
protected value: import("@angular/core").WritableSignal<string>;
|
|
@@ -12,6 +12,6 @@ export declare class AXPStickyNoteWidgetEditComponent extends AXPWidgetComponent
|
|
|
12
12
|
protected toggleEdit(): void;
|
|
13
13
|
protected setColor(color: string): void;
|
|
14
14
|
protected valueChange(event: AXValueChangedEvent<any>): void;
|
|
15
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<
|
|
16
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<
|
|
15
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXPStickyNoteWidgetViewComponent, never>;
|
|
16
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AXPStickyNoteWidgetViewComponent, "ng-component", never, {}, {}, never, never, true, never>;
|
|
17
17
|
}
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Weather location information
|
|
5
|
+
*/
|
|
6
|
+
export interface AXPWeatherLocation {
|
|
7
|
+
/** City name */
|
|
8
|
+
city: string;
|
|
9
|
+
/** Country name */
|
|
10
|
+
country: string;
|
|
11
|
+
/** Formatted location display name */
|
|
12
|
+
displayName: string;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Weather current condition information
|
|
16
|
+
*/
|
|
17
|
+
export interface AXPWeatherCondition {
|
|
18
|
+
/** Condition text */
|
|
19
|
+
condition: string;
|
|
20
|
+
/** Condition code */
|
|
21
|
+
conditionCode: number;
|
|
22
|
+
/** Icon URL */
|
|
23
|
+
iconUrl: string;
|
|
24
|
+
/** Temperature in Celsius */
|
|
25
|
+
tempC: number;
|
|
26
|
+
/** Temperature in Fahrenheit */
|
|
27
|
+
tempF: number;
|
|
28
|
+
/** Feels like temperature in Celsius */
|
|
29
|
+
feelsLikeC: number;
|
|
30
|
+
/** Feels like temperature in Fahrenheit */
|
|
31
|
+
feelsLikeF: number;
|
|
32
|
+
/** Humidity percentage */
|
|
33
|
+
humidity: number;
|
|
34
|
+
/** Wind speed in km/h */
|
|
35
|
+
windKph: number;
|
|
36
|
+
/** Wind speed in mph */
|
|
37
|
+
windMph: number;
|
|
38
|
+
/** Wind direction */
|
|
39
|
+
windDirection: string;
|
|
40
|
+
/** UV index */
|
|
41
|
+
uv: number;
|
|
42
|
+
/** Last updated timestamp */
|
|
43
|
+
lastUpdated: string;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Weather forecast data for a single day
|
|
47
|
+
*/
|
|
48
|
+
export interface AXPWeatherForecastDay {
|
|
49
|
+
/** Date string */
|
|
50
|
+
date: string;
|
|
51
|
+
/** Day name (e.g., "Mon", "Tue") */
|
|
52
|
+
day: string;
|
|
53
|
+
/** Weather condition code */
|
|
54
|
+
condition: string;
|
|
55
|
+
/** Weather icon URL */
|
|
56
|
+
iconUrl: string;
|
|
57
|
+
/** Max temperature in Celsius */
|
|
58
|
+
maxTempC: number;
|
|
59
|
+
/** Max temperature in Fahrenheit */
|
|
60
|
+
maxTempF: number;
|
|
61
|
+
/** Min temperature in Celsius */
|
|
62
|
+
minTempC: number;
|
|
63
|
+
/** Min temperature in Fahrenheit */
|
|
64
|
+
minTempF: number;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Complete weather data response
|
|
68
|
+
*/
|
|
69
|
+
export interface AXPWeatherData {
|
|
70
|
+
/** Location information */
|
|
71
|
+
location: AXPWeatherLocation;
|
|
72
|
+
/** Current weather data */
|
|
73
|
+
current: AXPWeatherCondition;
|
|
74
|
+
/** Forecast data */
|
|
75
|
+
forecast: AXPWeatherForecastDay[];
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Weather API request options
|
|
79
|
+
*/
|
|
80
|
+
export interface AXPWeatherRequestOptions {
|
|
81
|
+
/** Temperature unit */
|
|
82
|
+
tempUnit?: string;
|
|
83
|
+
/** Location query */
|
|
84
|
+
location?: string;
|
|
85
|
+
/** Use mock data */
|
|
86
|
+
useMockData?: boolean;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Weather UI condition display info
|
|
90
|
+
*/
|
|
91
|
+
export interface AXPWeatherConditionDisplay {
|
|
92
|
+
/** Condition unique ID */
|
|
93
|
+
id: string;
|
|
94
|
+
/** Display name */
|
|
95
|
+
name: string;
|
|
96
|
+
/** Icon class (Font Awesome) */
|
|
97
|
+
icon: string;
|
|
98
|
+
/** Associated color */
|
|
99
|
+
color: string;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Abstract Weather API Service
|
|
103
|
+
* Base class that defines the interface and common functionality
|
|
104
|
+
* for weather data providers
|
|
105
|
+
*/
|
|
106
|
+
export declare abstract class AXPWeatherApiAbstract {
|
|
107
|
+
/** Weather condition definitions mapping */
|
|
108
|
+
protected weatherConditions: Record<string, AXPWeatherConditionDisplay>;
|
|
109
|
+
/** Day of week mapping */
|
|
110
|
+
protected readonly dayNames: string[];
|
|
111
|
+
/**
|
|
112
|
+
* Get weather condition info by ID
|
|
113
|
+
* @param id Condition ID
|
|
114
|
+
* @returns Weather condition info or default if not found
|
|
115
|
+
*/
|
|
116
|
+
getCondition(id: string): AXPWeatherConditionDisplay;
|
|
117
|
+
/**
|
|
118
|
+
* Get current weather data for given location
|
|
119
|
+
* @param options Weather request options
|
|
120
|
+
* @returns Observable with weather data
|
|
121
|
+
*/
|
|
122
|
+
abstract getWeather(options: AXPWeatherRequestOptions): Observable<AXPWeatherData>;
|
|
123
|
+
/**
|
|
124
|
+
* Get weather forecast for a location
|
|
125
|
+
* @param options Weather request options with days
|
|
126
|
+
* @returns Observable of weather data with forecast
|
|
127
|
+
*/
|
|
128
|
+
abstract getForecast(options: AXPWeatherRequestOptions & {
|
|
129
|
+
days?: number;
|
|
130
|
+
}): Observable<AXPWeatherData>;
|
|
131
|
+
/**
|
|
132
|
+
* Parse location string into city and display components
|
|
133
|
+
* @param location Location query string
|
|
134
|
+
* @returns Parsed location parts
|
|
135
|
+
*/
|
|
136
|
+
protected parseLocation(location: string): {
|
|
137
|
+
city: string;
|
|
138
|
+
country: string;
|
|
139
|
+
display: string;
|
|
140
|
+
};
|
|
141
|
+
/**
|
|
142
|
+
* Format location name for display
|
|
143
|
+
* @param locationParts Parsed location parts
|
|
144
|
+
* @returns Formatted location name
|
|
145
|
+
*/
|
|
146
|
+
protected formatLocationName(locationParts: {
|
|
147
|
+
city: string;
|
|
148
|
+
country: string;
|
|
149
|
+
display: string;
|
|
150
|
+
}): string;
|
|
151
|
+
/**
|
|
152
|
+
* Map API condition text to our internal condition IDs
|
|
153
|
+
* @param conditionText Condition text from API
|
|
154
|
+
* @returns Internal condition ID
|
|
155
|
+
*/
|
|
156
|
+
protected mapApiConditionToId(conditionText: string): string;
|
|
157
|
+
/**
|
|
158
|
+
* Generate random integer between min and max (inclusive)
|
|
159
|
+
* Helper method for implementations
|
|
160
|
+
* @param min Minimum value
|
|
161
|
+
* @param max Maximum value
|
|
162
|
+
* @returns Random integer
|
|
163
|
+
*/
|
|
164
|
+
protected getRandomInt(min: number, max: number): number;
|
|
165
|
+
/**
|
|
166
|
+
* Set the API key for the weather service
|
|
167
|
+
* This is only used by the real API implementation,
|
|
168
|
+
* but is defined in the abstract class for consistency
|
|
169
|
+
* @param key The API key
|
|
170
|
+
*/
|
|
171
|
+
abstract setApiKey(key: string): void;
|
|
172
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXPWeatherApiAbstract, never>;
|
|
173
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AXPWeatherApiAbstract>;
|
|
174
|
+
}
|