@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.
Files changed (193) hide show
  1. package/common/index.d.ts +1 -0
  2. package/common/lib/app/application.types.d.ts +13 -3
  3. package/common/lib/file-storage/file-storage.types.d.ts +20 -12
  4. package/common/lib/filters/filters.types.d.ts +5 -0
  5. package/common/lib/layout/menu/badge-helper.d.ts +7 -0
  6. package/common/lib/layout/menu/index.d.ts +1 -0
  7. package/common/lib/layout/menu/menu.types.d.ts +1 -0
  8. package/common/lib/layout/task-badge/index.d.ts +2 -0
  9. package/common/lib/layout/task-badge/task-badge.service.d.ts +11 -0
  10. package/common/lib/layout/task-badge/task-badge.type.d.ts +6 -0
  11. package/common/lib/settings/setting-definition.provider.d.ts +7 -5
  12. package/common/lib/settings/setting.builder.d.ts +8 -5
  13. package/common/lib/settings/settings.service.d.ts +6 -5
  14. package/common/lib/settings/settings.types.d.ts +6 -10
  15. package/core/lib/data/index.d.ts +1 -0
  16. package/core/lib/data/value-transformer.d.ts +6 -0
  17. package/core/lib/types/core.types.d.ts +18 -0
  18. package/{layout/entity/lib → core/lib/types}/data.types.d.ts +3 -1
  19. package/core/lib/types/element.types.d.ts +6 -0
  20. package/core/lib/types/index.d.ts +6 -0
  21. package/core/lib/{types.d.ts → types/interactive.types.d.ts} +5 -25
  22. package/core/lib/types/scope.types.d.ts +10 -0
  23. package/core/lib/types/validation.types.d.ts +7 -0
  24. package/core/lib/utils/index.d.ts +1 -0
  25. package/core/lib/utils/object-util.d.ts +3 -0
  26. package/fesm2022/acorex-platform-common.mjs +79 -35
  27. package/fesm2022/acorex-platform-common.mjs.map +1 -1
  28. package/fesm2022/acorex-platform-core.mjs +151 -6
  29. package/fesm2022/acorex-platform-core.mjs.map +1 -1
  30. package/fesm2022/acorex-platform-layout-builder.mjs +44 -55
  31. package/fesm2022/acorex-platform-layout-builder.mjs.map +1 -1
  32. package/fesm2022/acorex-platform-layout-designer.mjs +77 -35
  33. package/fesm2022/acorex-platform-layout-designer.mjs.map +1 -1
  34. package/fesm2022/acorex-platform-layout-entity.mjs +240 -414
  35. package/fesm2022/acorex-platform-layout-entity.mjs.map +1 -1
  36. package/fesm2022/acorex-platform-layout-search.mjs +7 -26
  37. package/fesm2022/acorex-platform-layout-search.mjs.map +1 -1
  38. package/fesm2022/acorex-platform-layout-setting.mjs +211 -278
  39. package/fesm2022/acorex-platform-layout-setting.mjs.map +1 -1
  40. 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
  41. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-3gmbdeJ_.mjs.map +1 -0
  42. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DnEL7Ej-.mjs +741 -0
  43. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-DnEL7Ej-.mjs.map +1 -0
  44. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-8DdICjNs.mjs +91 -0
  45. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-8DdICjNs.mjs.map +1 -0
  46. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DadBeY1I.mjs +164 -0
  47. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-DadBeY1I.mjs.map +1 -0
  48. package/fesm2022/{acorex-platform-themes-default-search-popup.component-BY3oQqbr.mjs → acorex-platform-themes-default-search-popup.component-BADEuoeJ.mjs} +9 -9
  49. package/fesm2022/{acorex-platform-themes-default-search-popup.component-BY3oQqbr.mjs.map → acorex-platform-themes-default-search-popup.component-BADEuoeJ.mjs.map} +1 -1
  50. package/fesm2022/acorex-platform-themes-default-setting-page.component-Cj73brIK.mjs +219 -0
  51. package/fesm2022/acorex-platform-themes-default-setting-page.component-Cj73brIK.mjs.map +1 -0
  52. package/fesm2022/acorex-platform-themes-default-setting-view.component-rrAq6hg2.mjs +103 -0
  53. package/fesm2022/acorex-platform-themes-default-setting-view.component-rrAq6hg2.mjs.map +1 -0
  54. package/fesm2022/acorex-platform-themes-default.mjs +108 -64
  55. package/fesm2022/acorex-platform-themes-default.mjs.map +1 -1
  56. package/fesm2022/acorex-platform-themes-shared-setting.provider-CXiRmniv.mjs +168 -0
  57. package/fesm2022/acorex-platform-themes-shared-setting.provider-CXiRmniv.mjs.map +1 -0
  58. package/fesm2022/acorex-platform-themes-shared.mjs +495 -240
  59. package/fesm2022/acorex-platform-themes-shared.mjs.map +1 -1
  60. package/fesm2022/acorex-platform-widgets.mjs +4100 -1480
  61. package/fesm2022/acorex-platform-widgets.mjs.map +1 -1
  62. package/layout/builder/lib/builder/builder.service.d.ts +1 -1
  63. package/layout/builder/lib/builder/index.d.ts +2 -1
  64. package/layout/builder/lib/builder/widget-categories.d.ts +10 -0
  65. package/layout/builder/lib/builder/widget-group.types.d.ts +10 -0
  66. package/layout/builder/lib/builder/widget-map.d.ts +8 -1
  67. package/layout/builder/lib/builder/widget-status.types.d.ts +2 -0
  68. package/layout/builder/lib/builder/widget.types.d.ts +11 -27
  69. package/layout/designer/lib/designer/components/widget-picker/widget-picker.component.d.ts +7 -3
  70. package/layout/designer/lib/designer/components/widget-picker/widget-picker.service.d.ts +12 -0
  71. package/layout/designer/lib/designer/index.d.ts +1 -0
  72. package/layout/designer/lib/designer/shared/designer.service.d.ts +1 -0
  73. package/layout/designer/lib/property-viewer/widget-property-viewer.component.d.ts +2 -1
  74. package/layout/entity/lib/entity-data-seeder.d.ts +2 -2
  75. package/layout/entity/lib/entity-master-list.viewmodel.d.ts +4 -7
  76. package/layout/entity/lib/entity-storage-service.d.ts +39 -55
  77. package/layout/entity/lib/entity.types.d.ts +21 -0
  78. package/layout/entity/lib/index.d.ts +1 -2
  79. package/layout/entity/lib/widgets/lookup-widget/index.d.ts +0 -2
  80. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-column.component.d.ts +4 -0
  81. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-edit.component.d.ts +7 -9
  82. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.component.d.ts +5 -2
  83. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-selector.viewmodel.d.ts +11 -3
  84. package/layout/search/lib/search.viewmodel.d.ts +0 -2
  85. package/layout/setting/lib/setting.viewmodel.d.ts +45 -111
  86. package/package.json +5 -5
  87. package/themes/default/lib/layouts/base/base-page.component.d.ts +14 -5
  88. package/themes/default/lib/layouts/base/base-page.types.d.ts +6 -1
  89. package/themes/default/lib/layouts/base/page-layout/page-layout.component.d.ts +5 -4
  90. package/themes/default/lib/layouts/base/simple-page/simple-page.layout.d.ts +2 -2
  91. package/themes/default/lib/layouts/entity-layouts/entity-category/entity-category.component.d.ts +16 -0
  92. package/themes/default/lib/layouts/entity-layouts/entity-detail-list-view/entity-detail-list-view.component.d.ts +2 -2
  93. package/themes/default/lib/layouts/entity-layouts/entity-master-list-view/entity-master-list-view.component.d.ts +10 -8
  94. package/themes/default/lib/layouts/entity-layouts/entity-master-single-view/entity-master-single-view.component.d.ts +12 -4
  95. package/themes/default/lib/layouts/entity-layouts/entity-master-toolbar-view/entity-master-toolbar-view.component.d.ts +7 -0
  96. package/themes/default/lib/layouts/entity-layouts/entity-master-toolbar-view/filters/entity-filter-toolbar.component.d.ts +48 -0
  97. package/themes/default/lib/layouts/entity-layouts/entity-master-toolbar-view/views/entity-view-toolbar.component.d.ts +12 -0
  98. package/themes/default/lib/layouts/root-layout/components/header/header.component.d.ts +2 -2
  99. package/themes/default/lib/layouts/root-layout/components/horizontal-menu/horizontal-menu.component.d.ts +9 -3
  100. package/themes/default/lib/layouts/root-layout/components/side-menu/side-menu.component.d.ts +7 -1
  101. package/themes/default/lib/layouts/root-layout/horizontal/horizontal-layout.component.d.ts +2 -2
  102. package/themes/default/lib/layouts/root-layout/root-layout.component.d.ts +2 -2
  103. package/themes/default/lib/layouts/root-layout/vertical/vertical-layout.component.d.ts +2 -2
  104. package/themes/default/lib/layouts/setting-layout/setting-page/setting-page.component.d.ts +61 -5
  105. package/themes/default/lib/layouts/setting-layout/setting-view/setting-view.component.d.ts +68 -6
  106. package/themes/shared/index.d.ts +1 -0
  107. package/themes/shared/lib/components/badge/badge.directive.d.ts +14 -0
  108. package/themes/shared/lib/components/layout-elements/layout-blocks.component.d.ts +4 -1
  109. package/themes/shared/lib/components/layout-elements/layout-side.component.d.ts +2 -2
  110. package/themes/shared/lib/components/slots/theme-slot.component.d.ts +2 -2
  111. package/themes/shared/lib/palette.provider.d.ts +1 -1
  112. package/themes/shared/lib/setting.keys.d.ts +2 -1
  113. package/themes/shared/lib/setting.provider.d.ts +4 -1
  114. package/themes/shared/lib/theme.service.d.ts +2 -2
  115. package/themes/shared/lib/theme.types.d.ts +11 -2
  116. package/themes/shared/lib/widgets/font-size-chooser/font-size-chooser-widget.component.d.ts +10 -0
  117. package/themes/shared/lib/widgets/font-size-chooser/font-size-chooser-widget.config.d.ts +7 -0
  118. package/themes/shared/lib/widgets/font-size-chooser/index.d.ts +2 -0
  119. package/themes/shared/lib/widgets/font-style-chooser/font-style-chooser-widget.component.d.ts +15 -0
  120. package/themes/shared/lib/widgets/font-style-chooser/font-style-chooser-widget.config.d.ts +7 -0
  121. package/themes/shared/lib/widgets/font-style-chooser/index.d.ts +2 -0
  122. package/themes/shared/lib/widgets/menu-orientation-chooser/index.d.ts +2 -0
  123. package/themes/shared/lib/widgets/menu-orientation-chooser/menu-orientation-chooser-widget.component.d.ts +15 -0
  124. package/themes/shared/lib/widgets/menu-orientation-chooser/menu-orientation-chooser-widget.config.d.ts +7 -0
  125. package/themes/shared/lib/widgets/theme-mode-chooser/index.d.ts +2 -0
  126. package/themes/shared/lib/widgets/theme-mode-chooser/theme-mode-chooser-widget.component.d.ts +16 -0
  127. package/themes/shared/lib/widgets/theme-mode-chooser/theme-mode-chooser-widget.config.d.ts +7 -0
  128. package/themes/shared/lib/widgets/theme-palette-chooser/index.d.ts +2 -0
  129. package/themes/shared/lib/widgets/theme-palette-chooser/theme-palette-chooser-widget.component.d.ts +13 -0
  130. 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
  131. package/widgets/lib/properties/groups.d.ts +2 -0
  132. package/widgets/lib/widgets/advance/file/file-box-widget-edit.component.d.ts +5 -5
  133. package/widgets/lib/widgets/charts/bar-chart/bar-chart-widget.component.d.ts +52 -0
  134. package/widgets/lib/widgets/charts/bar-chart/bar-chart.type.d.ts +29 -11
  135. package/widgets/lib/widgets/charts/bar-chart/index.d.ts +1 -1
  136. package/widgets/lib/widgets/charts/chart.type.d.ts +3 -0
  137. package/widgets/lib/widgets/charts/clock-calendar/clock-calendar-widget.component.d.ts +40 -0
  138. package/widgets/lib/widgets/charts/clock-calendar/clock-calendar-widget.config.d.ts +7 -0
  139. package/widgets/lib/widgets/charts/clock-calendar/clock-calendar.types.d.ts +50 -0
  140. package/widgets/lib/widgets/charts/clock-calendar/index.d.ts +3 -0
  141. package/widgets/lib/widgets/charts/donut-chart/donut-chart-widget.component.d.ts +54 -0
  142. package/widgets/lib/widgets/charts/donut-chart/donut-chart.type.d.ts +31 -21
  143. package/widgets/lib/widgets/charts/donut-chart/index.d.ts +1 -1
  144. package/widgets/lib/widgets/charts/gauge-chart/{gauge-chart-widget-edit.component.d.ts → gauge-chart-widget.component.d.ts} +3 -3
  145. package/widgets/lib/widgets/charts/gauge-chart/gauge-chart.type.d.ts +26 -11
  146. package/widgets/lib/widgets/charts/gauge-chart/index.d.ts +2 -1
  147. package/widgets/lib/widgets/charts/shared/chart-base.component.d.ts +44 -0
  148. package/widgets/lib/widgets/charts/shared/chart-base.type.d.ts +37 -0
  149. package/widgets/lib/widgets/charts/sticky-note/index.d.ts +1 -1
  150. package/widgets/lib/widgets/charts/sticky-note/{sticky-note-widget-edit.component.d.ts → sticky-note-widget.component.d.ts} +3 -3
  151. package/widgets/lib/widgets/charts/weather/index.d.ts +4 -0
  152. package/widgets/lib/widgets/charts/weather/weather-services/index.d.ts +3 -0
  153. package/widgets/lib/widgets/charts/weather/weather-services/weather-api.abstract.d.ts +174 -0
  154. package/widgets/lib/widgets/charts/weather/weather-services/weather-api.key.d.ts +2 -0
  155. package/widgets/lib/widgets/charts/weather/weather-services/weather-api.mock.service.d.ts +47 -0
  156. package/widgets/lib/widgets/charts/weather/weather-services/weather-api.service.d.ts +48 -0
  157. package/widgets/lib/widgets/charts/weather/weather-widget.component.d.ts +109 -0
  158. package/widgets/lib/widgets/charts/weather/weather-widget.config.d.ts +14 -0
  159. package/widgets/lib/widgets/charts/weather/weather.module.d.ts +11 -0
  160. package/widgets/lib/widgets/editors/select/select-box-widget-column.component.d.ts +0 -1
  161. package/widgets/lib/widgets/editors/select/select-box-widget-edit.component.d.ts +4 -1
  162. package/widgets/lib/widgets/editors/template-box/index.d.ts +6 -0
  163. package/widgets/lib/widgets/editors/template-box/template-box-widget-column.component.d.ts +10 -0
  164. package/widgets/lib/widgets/editors/template-box/template-box-widget-edit.component.d.ts +29 -0
  165. package/widgets/lib/widgets/editors/template-box/template-box-widget-filter.component.d.ts +6 -0
  166. package/widgets/lib/widgets/editors/template-box/template-box-widget-print.component.d.ts +10 -0
  167. package/widgets/lib/widgets/editors/template-box/template-box-widget-view.component.d.ts +11 -0
  168. package/widgets/lib/widgets/editors/template-box/template-box-widget.config.d.ts +7 -0
  169. package/widgets/lib/widgets/filters/select-filter/select-filter-widget-edit.component.d.ts +2 -5
  170. package/widgets/lib/widgets/index.d.ts +3 -0
  171. package/fesm2022/acorex-platform-themes-default-entity-master-create-view.component-LKhN00ob.mjs.map +0 -1
  172. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BYUOmONk.mjs +0 -400
  173. package/fesm2022/acorex-platform-themes-default-entity-master-list-view.component-BYUOmONk.mjs.map +0 -1
  174. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-B9TUh-2S.mjs +0 -91
  175. package/fesm2022/acorex-platform-themes-default-entity-master-modify-view.component-B9TUh-2S.mjs.map +0 -1
  176. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-9U774Tr7.mjs +0 -135
  177. package/fesm2022/acorex-platform-themes-default-entity-master-single-view.component-9U774Tr7.mjs.map +0 -1
  178. package/fesm2022/acorex-platform-themes-default-setting-page.component-_IStMWcu.mjs +0 -74
  179. package/fesm2022/acorex-platform-themes-default-setting-page.component-_IStMWcu.mjs.map +0 -1
  180. package/fesm2022/acorex-platform-themes-default-setting-view.component-CeHpcfsc.mjs +0 -73
  181. package/fesm2022/acorex-platform-themes-default-setting-view.component-CeHpcfsc.mjs.map +0 -1
  182. package/fesm2022/acorex-platform-themes-default-theme-palette-preview.page-D_EkB2k8.mjs +0 -146
  183. package/fesm2022/acorex-platform-themes-default-theme-palette-preview.page-D_EkB2k8.mjs.map +0 -1
  184. package/layout/builder/lib/builder/widget-groups.d.ts +0 -9
  185. package/layout/entity/lib/dexie-storage.service.d.ts +0 -16
  186. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-filter.component.d.ts +0 -6
  187. package/layout/entity/lib/widgets/lookup-widget/lookup-widget-print.component.d.ts +0 -6
  188. package/themes/default/lib/layouts/filters-layout/simple-filter-builder/filters-view.component.d.ts +0 -13
  189. package/themes/default/lib/pages/theme-palette-preview/theme-palette-preview.page.d.ts +0 -85
  190. package/themes/shared/lib/widgets/theme-color-selection/index.d.ts +0 -2
  191. package/themes/shared/lib/widgets/theme-color-selection/theme-color-selection-widget-edit.component.d.ts +0 -6
  192. package/widgets/lib/widgets/charts/bar-chart/bar-chart-widget-edit.component.d.ts +0 -40
  193. package/widgets/lib/widgets/charts/donut-chart/donut-chart-widget-edit.component.d.ts +0 -44
@@ -0,0 +1,47 @@
1
+ import { Observable } from 'rxjs';
2
+ import { AXPWeatherApiAbstract, AXPWeatherData, AXPWeatherRequestOptions } from './weather-api.abstract';
3
+ import * as i0 from "@angular/core";
4
+ /**
5
+ * Mock Weather API Service
6
+ * Provides simulated weather data for development and testing
7
+ */
8
+ export declare class AXPWeatherApiMockService extends AXPWeatherApiAbstract {
9
+ private readonly mockDelay;
10
+ /**
11
+ * Get current weather data for given location
12
+ * @param options Weather request options
13
+ * @returns Observable with weather data
14
+ */
15
+ getWeather(options: AXPWeatherRequestOptions): Observable<AXPWeatherData>;
16
+ /**
17
+ * Get weather forecast for a location
18
+ * @param options Weather request options with days
19
+ * @returns Observable of weather data with forecast
20
+ */
21
+ getForecast(options: AXPWeatherRequestOptions & {
22
+ days?: number;
23
+ }): Observable<AXPWeatherData>;
24
+ /**
25
+ * Get mock weather data for demo/development
26
+ * @param location Location query
27
+ * @param options Request options
28
+ * @returns Observable of mock weather data
29
+ */
30
+ private getMockWeatherData;
31
+ /**
32
+ * Get mock forecast data for demo/development
33
+ * @param location Location query
34
+ * @param days Number of forecast days
35
+ * @param options Request options
36
+ * @returns Observable of mock weather data with forecast
37
+ */
38
+ private getMockForecast;
39
+ /**
40
+ * Set the API key for the weather service
41
+ * No-op in the mock implementation
42
+ * @param key The API key
43
+ */
44
+ setApiKey(key: string): void;
45
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPWeatherApiMockService, never>;
46
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPWeatherApiMockService>;
47
+ }
@@ -0,0 +1,48 @@
1
+ import { Observable } from 'rxjs';
2
+ import { AXPWeatherApiAbstract, AXPWeatherData, AXPWeatherRequestOptions } from './weather-api.abstract';
3
+ import * as i0 from "@angular/core";
4
+ /**
5
+ * Real Weather API Service
6
+ * Fetches actual weather data from a weather API service
7
+ */
8
+ export declare class AXPWeatherApiService extends AXPWeatherApiAbstract {
9
+ private readonly http;
10
+ private readonly baseApiUrl;
11
+ private apiKeyToken;
12
+ /**
13
+ * Set the API key for the weather service
14
+ * @param key The API key
15
+ */
16
+ setApiKey(key: string): void;
17
+ /**
18
+ * Get current weather data for given location
19
+ * @param options Weather request options
20
+ * @returns Observable with weather data
21
+ */
22
+ getWeather(options: AXPWeatherRequestOptions): Observable<AXPWeatherData>;
23
+ /**
24
+ * Get weather forecast for a location
25
+ * @param options Weather request options with days
26
+ * @returns Observable of weather data with forecast
27
+ */
28
+ getForecast(options: AXPWeatherRequestOptions & {
29
+ days?: number;
30
+ }): Observable<AXPWeatherData>;
31
+ /**
32
+ * Transform API response to our internal data model
33
+ * @param apiData Raw API response
34
+ * @param displayName Formatted location name
35
+ * @returns Normalized weather data
36
+ */
37
+ private transformApiResponse;
38
+ /**
39
+ * Transform forecast API response to our internal data model
40
+ * @param apiData Raw API response with forecast
41
+ * @param displayName Formatted location name
42
+ * @param days Number of forecast days
43
+ * @returns Normalized weather data with forecast
44
+ */
45
+ private transformForecastResponse;
46
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPWeatherApiService, never>;
47
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXPWeatherApiService>;
48
+ }
@@ -0,0 +1,109 @@
1
+ import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
2
+ import { ChangeDetectorRef, ElementRef } from '@angular/core';
3
+ import { AXPWeatherData } from './weather-services';
4
+ import * as i0 from "@angular/core";
5
+ /**
6
+ * Weather Widget Component
7
+ * Displays current weather conditions and optional forecast data
8
+ * for a specified location with customizable display options.
9
+ */
10
+ export declare class AXPWeatherWidgetViewComponent extends AXPWidgetComponent {
11
+ protected cdr: ChangeDetectorRef;
12
+ protected containerEl: import("@angular/core").Signal<ElementRef<HTMLDivElement>>;
13
+ private weatherService;
14
+ protected weatherData: import("@angular/core").WritableSignal<AXPWeatherData | null>;
15
+ protected isLoading: import("@angular/core").WritableSignal<boolean>;
16
+ protected hasError: import("@angular/core").WritableSignal<boolean>;
17
+ protected errorMessage: import("@angular/core").WritableSignal<string>;
18
+ protected isForecastLoading: import("@angular/core").WritableSignal<boolean>;
19
+ private refreshSubscription;
20
+ protected city: import("@angular/core").Signal<any>;
21
+ protected temperatureUnit: import("@angular/core").Signal<any>;
22
+ protected windSpeedUnit: import("@angular/core").Signal<any>;
23
+ protected showCurrentCondition: import("@angular/core").Signal<boolean>;
24
+ protected showTemperature: import("@angular/core").Signal<boolean>;
25
+ protected showHumidity: import("@angular/core").Signal<boolean>;
26
+ protected showWind: import("@angular/core").Signal<boolean>;
27
+ protected showForecast: import("@angular/core").Signal<boolean>;
28
+ protected forecastDays: import("@angular/core").Signal<any>;
29
+ protected autoRefresh: import("@angular/core").Signal<boolean>;
30
+ protected refreshInterval: import("@angular/core").Signal<any>;
31
+ private optionsEffect;
32
+ private valueEffect;
33
+ protected displayedForecast: import("@angular/core").Signal<import("./weather-services").AXPWeatherForecastDay[]>;
34
+ /**
35
+ * Component constructor
36
+ * @param cdr ChangeDetectorRef for triggering view updates
37
+ */
38
+ constructor(cdr: ChangeDetectorRef);
39
+ /**
40
+ * Component cleanup on destroy
41
+ */
42
+ ngOnDestroy(): void;
43
+ /**
44
+ * Loads weather data from the API
45
+ * Sets loading state and handles errors
46
+ */
47
+ private loadWeatherData;
48
+ /**
49
+ * Sets up the auto-refresh timer based on configuration
50
+ */
51
+ private setupRefreshTimer;
52
+ /**
53
+ * Clears the refresh timer subscription
54
+ */
55
+ private clearRefreshTimer;
56
+ /**
57
+ * Manually refreshes the weather data
58
+ */
59
+ protected refreshWeather(): void;
60
+ /**
61
+ * Gets the current temperature based on selected unit
62
+ */
63
+ protected getCurrentTemperature(): number;
64
+ /**
65
+ * Gets the feels like temperature based on selected unit
66
+ */
67
+ protected getFeelsLikeTemperature(): number;
68
+ /**
69
+ * Gets the humidity percentage
70
+ */
71
+ protected getHumidity(): number;
72
+ /**
73
+ * Gets the wind speed based on selected unit
74
+ */
75
+ protected getWindSpeed(): number;
76
+ /**
77
+ * Gets the current weather condition
78
+ */
79
+ protected getCurrentCondition(): string;
80
+ /**
81
+ * Gets the formatted last updated time
82
+ */
83
+ protected getLastUpdated(): string;
84
+ /**
85
+ * Gets the icon class for a weather condition
86
+ * @param conditionId Weather condition ID
87
+ * @returns Font Awesome icon class
88
+ */
89
+ protected getConditionIcon(conditionId: string): string;
90
+ /**
91
+ * Gets the display name for a weather condition
92
+ * @param conditionId Weather condition ID
93
+ * @returns Condition display name
94
+ */
95
+ protected getConditionName(conditionId: string): string;
96
+ /**
97
+ * Gets the color for a weather condition
98
+ * @param conditionId Weather condition ID
99
+ * @returns CSS color value
100
+ */
101
+ protected getConditionColor(conditionId: string): string;
102
+ /**
103
+ * Cleans up chart resources
104
+ * Required by AXPChartBaseComponent
105
+ */
106
+ protected cleanupChart(): void;
107
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPWeatherWidgetViewComponent, never>;
108
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXPWeatherWidgetViewComponent, "ng-component", never, {}, {}, never, never, true, never>;
109
+ }
@@ -0,0 +1,14 @@
1
+ import { AXPWidgetConfig } from '@acorex/platform/layout/builder';
2
+ /**
3
+ * Weather Widget Configuration
4
+ * Provides customization options for displaying weather data and forecast
5
+ */
6
+ export declare const AXPWeatherWidget: AXPWidgetConfig;
7
+ /**
8
+ * Type declaration to register the weather widget type
9
+ */
10
+ declare module '@acorex/platform/layout/builder' {
11
+ interface AXPWidgetTypesMap {
12
+ weather: 'weather';
13
+ }
14
+ }
@@ -0,0 +1,11 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "@angular/common/http";
3
+ /**
4
+ * Weather Widget Module
5
+ * Provides weather display functionality as a dashboard widget
6
+ */
7
+ export declare class AXPWeatherWidgetModule {
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPWeatherWidgetModule, never>;
9
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AXPWeatherWidgetModule, never, [typeof i1.HttpClientModule], never>;
10
+ static ɵinj: i0.ɵɵInjectorDeclaration<AXPWeatherWidgetModule>;
11
+ }
@@ -1,7 +1,6 @@
1
1
  import { AXPColumnWidgetComponent } from '@acorex/platform/layout/builder';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class AXPSelectBoxWidgetColumnComponent extends AXPColumnWidgetComponent<any> {
4
- protected multiple: boolean;
5
4
  protected valueField: string;
6
5
  protected textField: string;
7
6
  protected internalValue: import("@angular/core").Signal<any[]>;
@@ -13,7 +13,10 @@ export declare class AXPSelectBoxWidgetEditComponent extends AXPDataListWidgetCo
13
13
  protected hasClearButton: import("@angular/core").Signal<boolean>;
14
14
  protected allowSearch: import("@angular/core").Signal<boolean>;
15
15
  protected filter: import("@angular/core").Signal<AXDataSourceFilterOption>;
16
- protected outputs(): string[];
16
+ protected outputs(): (string | {
17
+ name: string;
18
+ value: unknown;
19
+ })[];
17
20
  protected handleValueChange(e: AXValueChangedEvent): void;
18
21
  refresh(): void;
19
22
  clear(): void;
@@ -0,0 +1,6 @@
1
+ export * from './template-box-widget-column.component';
2
+ export * from './template-box-widget-edit.component';
3
+ export * from './template-box-widget-filter.component';
4
+ export * from './template-box-widget-print.component';
5
+ export * from './template-box-widget-view.component';
6
+ export * from './template-box-widget.config';
@@ -0,0 +1,10 @@
1
+ import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
2
+ import { OnInit } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ export declare class AXPTemplateBoxWidgetColumnComponent extends AXPWidgetComponent<any> implements OnInit {
5
+ private translationService;
6
+ protected displayText: import("@angular/core").WritableSignal<string>;
7
+ ngOnInit(): void;
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPTemplateBoxWidgetColumnComponent, never>;
9
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXPTemplateBoxWidgetColumnComponent, "axp-template-box-widget-column", never, {}, {}, never, never, true, never>;
10
+ }
@@ -0,0 +1,29 @@
1
+ import { AXPLanguage } from '@acorex/platform/common';
2
+ import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
3
+ import { OnInit } from '@angular/core';
4
+ import * as i0 from "@angular/core";
5
+ interface TemplateVariable {
6
+ name: string;
7
+ required: boolean;
8
+ }
9
+ export declare class AXPTemplateBoxWidgetEditComponent extends AXPWidgetComponent<any> implements OnInit {
10
+ private regionalService;
11
+ private translationService;
12
+ protected disabled: import("@angular/core").Signal<boolean>;
13
+ protected clearButton: import("@angular/core").Signal<boolean>;
14
+ protected placeholder: import("@angular/core").Signal<string>;
15
+ protected availableLanguages: import("@angular/core").WritableSignal<AXPLanguage[]>;
16
+ protected selectedLanguage: import("@angular/core").WritableSignal<string>;
17
+ protected selectedLanguageTitle: import("@angular/core").Signal<string>;
18
+ protected templateContent: import("@angular/core").WritableSignal<Record<string, string>>;
19
+ protected templateVariables: import("@angular/core").WritableSignal<TemplateVariable[]>;
20
+ protected currentContent: import("@angular/core").Signal<string>;
21
+ ngOnInit(): Promise<void>;
22
+ protected handleLanguageChange(langCode: string): void;
23
+ protected handleValueChange(text: string): void;
24
+ private extractVariables;
25
+ private get __class();
26
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPTemplateBoxWidgetEditComponent, never>;
27
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXPTemplateBoxWidgetEditComponent, "axp-template-box-widget", never, { "disabled": { "alias": "disabled"; "required": false; }; "clearButton": { "alias": "clearButton"; "required": false; }; }, {}, never, never, true, never>;
28
+ }
29
+ export {};
@@ -0,0 +1,6 @@
1
+ import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
2
+ import * as i0 from "@angular/core";
3
+ export declare class AXPTemplateBoxWidgetFilterComponent extends AXPWidgetComponent<string> {
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPTemplateBoxWidgetFilterComponent, never>;
5
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXPTemplateBoxWidgetFilterComponent, "axp-template-box-widget-filter", never, {}, {}, never, never, true, never>;
6
+ }
@@ -0,0 +1,10 @@
1
+ import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
2
+ import { OnInit } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ export declare class AXPTemplateBoxWidgetPrintComponent extends AXPWidgetComponent<any> implements OnInit {
5
+ private translationService;
6
+ protected displayText: import("@angular/core").WritableSignal<string>;
7
+ ngOnInit(): void;
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPTemplateBoxWidgetPrintComponent, never>;
9
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXPTemplateBoxWidgetPrintComponent, "axp-template-box-widget-print", never, {}, {}, never, never, true, never>;
10
+ }
@@ -0,0 +1,11 @@
1
+ import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
2
+ import { OnInit } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ export declare class AXPTemplateBoxWidgetViewComponent extends AXPWidgetComponent<any> implements OnInit {
5
+ private translationService;
6
+ protected displayText: import("@angular/core").WritableSignal<string>;
7
+ ngOnInit(): void;
8
+ private get __class();
9
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXPTemplateBoxWidgetViewComponent, never>;
10
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXPTemplateBoxWidgetViewComponent, "axp-template-box-widget-view", never, {}, {}, never, never, true, never>;
11
+ }
@@ -0,0 +1,7 @@
1
+ import { AXPWidgetConfig } from '@acorex/platform/layout/builder';
2
+ export declare const AXPTemplateBoxWidget: AXPWidgetConfig;
3
+ declare module '@acorex/platform/layout/builder' {
4
+ interface AXPWidgetTypesMap {
5
+ templateEditor: 'template-box-editor';
6
+ }
7
+ }
@@ -1,11 +1,8 @@
1
1
  import { AXValueChangedEvent } from '@acorex/components/common';
2
- import { AXPWidgetComponent } from '@acorex/platform/layout/builder';
2
+ import { AXPDataListWidgetComponent } from '@acorex/platform/layout/builder';
3
3
  import * as i0 from "@angular/core";
4
- export declare class AXPSelectFilterWidgetEditComponent extends AXPWidgetComponent<any> {
4
+ export declare class AXPSelectFilterWidgetEditComponent extends AXPDataListWidgetComponent {
5
5
  protected value: import("@angular/core").Signal<any>;
6
- protected dataSource: import("@angular/core").Signal<any>;
7
- protected textField: import("@angular/core").Signal<any>;
8
- protected valueField: import("@angular/core").Signal<any>;
9
6
  protected multiple: import("@angular/core").Signal<any>;
10
7
  protected allowSearch: import("@angular/core").Signal<any>;
11
8
  protected placeholder: import("@angular/core").Signal<any>;
@@ -12,6 +12,7 @@ export * from './editors/rich-text';
12
12
  export * from './editors/select';
13
13
  export * from './editors/selection-list';
14
14
  export * from './editors/single-file-box';
15
+ export * from './editors/template-box';
15
16
  export * from './editors/text';
16
17
  export * from './editors/toggle';
17
18
  export * from './advance/avatar';
@@ -41,6 +42,8 @@ export * from './validations/min-length-validation';
41
42
  export * from './validations/regular-expression-validation';
42
43
  export * from './validations/required-validation';
43
44
  export * from './charts/bar-chart';
45
+ export * from './charts/clock-calendar';
44
46
  export * from './charts/donut-chart';
45
47
  export * from './charts/gauge-chart';
46
48
  export * from './charts/sticky-note';
49
+ export * from './charts/weather';
@@ -1 +0,0 @@
1
- {"version":3,"file":"acorex-platform-themes-default-entity-master-create-view.component-LKhN00ob.mjs","sources":["../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.ts","../../../../libs/platform/themes/default/src/lib/layouts/entity-layouts/entity-master-create-view/entity-master-create-view.component.html"],"sourcesContent":["import { AXButtonModule } from '@acorex/components/button';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDialogModule } from '@acorex/components/dialog';\nimport { AXDropdownButtonModule } from '@acorex/components/dropdown-button';\nimport { AXFormComponent, AXFormModule } from '@acorex/components/form';\nimport { AXLabelModule } from '@acorex/components/label';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXBasePageComponent } from '@acorex/components/page';\nimport { AXTabsModule } from '@acorex/components/tabs';\nimport { AXTooltipModule } from '@acorex/components/tooltip';\nimport { CommonModule } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, inject, viewChild } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\n\nimport { AXValidationModule } from '@acorex/core/validation';\n\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { AXPGridLayoutDirective } from '@acorex/platform/common';\nimport {\n AXPLayoutBuilderModule,\n AXPLayoutContextChangeEvent,\n AXPPageStatus,\n AXPWidgetContainerComponent,\n} from '@acorex/platform/layout/builder';\nimport { AXPEntityMasterCreateViewModel } from '@acorex/platform/layout/entity';\nimport { AXPWidgetsModule } from '@acorex/platform/widgets';\nimport { AXPWorkflowService } from '@acorex/platform/workflow';\n\n@Component({\n templateUrl: './entity-master-create-view.component.html',\n imports: [\n CommonModule,\n FormsModule,\n AXFormModule,\n AXDecoratorModule,\n CommonModule,\n AXButtonModule,\n AXDialogModule,\n AXLoadingModule,\n AXTabsModule,\n AXTooltipModule,\n AXValidationModule,\n AXLabelModule,\n AXDropdownModule,\n AXDropdownButtonModule,\n AXTranslationModule,\n //\n AXPLayoutBuilderModule,\n AXPWidgetsModule,\n AXPGridLayoutDirective,\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AXPEntityMasterCreateViewComponent extends AXBasePageComponent {\n protected vm!: AXPEntityMasterCreateViewModel;\n\n private container = viewChild(AXPWidgetContainerComponent);\n\n protected workflow = inject(AXPWorkflowService);\n\n ngAfterViewInit() {\n this.vm.builder = this.container()!.builderService;\n }\n\n protected handleCloseClick() {\n this.close();\n }\n\n protected async handleBackClick() {\n //await this.vm.executeCommand('back');\n }\n\n protected async handleNextClick(form: AXFormComponent) {\n // const formResult = await form.validate();\n // if (formResult.result) {\n // await this.vm.executeCommand('next');\n // }\n }\n\n protected async handleSaveClick(form: AXFormComponent) {\n const formResult = await form.validate();\n if (formResult.result) {\n try {\n const record = await this.vm.save();\n\n this.close({ save: true, recordId: record?.id, item: record, redirect: this.vm.redirect() });\n } catch (error) {\n console.log(error);\n }\n }\n }\n\n protected async handleSaveAndNewClick(form: AXFormComponent) {\n const formResult = await form.validate();\n if (formResult.result) {\n try {\n const record = await this.vm.save();\n this.close({ save: true, recordId: record?.id, item: record, redirect: false });\n await this.vm.createNewOne();\n } catch (error) {\n console.log(error);\n }\n }\n }\n\n protected async handleContextChange(e: AXPLayoutContextChangeEvent) {\n this.vm.context.set(e.data);\n }\n}\n","<div>\n <axp-widgets-container [context]=\"vm.context()\" (onContextChanged)=\"handleContextChange($event)\">\n <ax-form class=\"ax-flex ax-flex-col ax-gap-6 ax-p-4 ax-pb-8\" #form [messageStyle]=\"'bottom'\" [updateOn]=\"'blur'\">\n <!-- Begin Sections -->\n <div class=\"ax-grid ax-grid-cols-12 ax-gap-4\">\n @for(section of vm.sections(); track section.name()) {\n <div class=\"ax-col-span-12\">\n <ax-form #form>\n @if(vm.sections().length>1 && !section.description()) {\n <div class=\"ax-pb-4\">\n <span class=\"ax-font-bold ax-text-xl\">{{ section.title() | translate | async }}</span>\n @if(section.description()) {\n <p class=\"ax-text-sm ax-text-gray-500\">{{ section.description() }}</p>\n }\n </div>\n }\n <div class=\"ax-card-body !ax-grid !ax-grid-cols-12 !ax-gap-4\">\n @for(attr of section.elements(); track $index) {\n <ax-form-field class=\"ax-flex ax-flex-col ax-gap-1\" [gridLayout]=\"attr.layout()\"\n [class.ax-hidden]=\"widget.options()['visibility'] == false\">\n <ax-label class=\"ax-font-semibold ax-text-sm\" [required]=\"attr.isRequired()\">{{\n attr.title() | translate | async\n }}</ax-label>\n <ng-container axp-widget-renderer [node]=\"attr.node()\" [mode]=\"'edit'\"\n #widget=\"widgetRenderer\"></ng-container>\n </ax-form-field>\n }\n </div>\n </ax-form>\n </div>\n }\n </div>\n <!-- Finish Sections -->\n </ax-form>\n </axp-widgets-container>\n <ax-footer>\n <ax-suffix>\n <ax-button look=\"solid\" [color]=\"'default'\" [text]=\"'cancel' | translate | async\" (onClick)=\"handleCloseClick()\">\n </ax-button>\n @if(vm.canCreateNewOne()) {\n <ax-dropdown-button [disabled]=\"vm.isInProgress()\" color=\"primary\" [text]=\"'save' | translate | async\"\n look=\"solid\" (onClick)=\"handleSaveClick(form)\">\n <ax-loading *ngIf=\"vm.isInProgress()\"></ax-loading>\n <ax-button-item-list>\n <ax-button-item [text]=\"('save' | translate | async) + ' ' + ('create-new' | translate | async)\"\n (onClick)=\"handleSaveAndNewClick(form)\">\n </ax-button-item>\n </ax-button-item-list>\n </ax-dropdown-button>\n }@else {\n <ax-button look=\"solid\" color=\"primary\" [text]=\"'save' | translate | async\" (onClick)=\"handleSaveClick(form)\">\n <ax-loading *ngIf=\"vm.isInProgress()\"></ax-loading>\n </ax-button>\n }\n </ax-suffix>\n </ax-footer>\n</div>"],"names":["i8","i9"],"mappings":"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"}