@acorex/components 19.15.0-next.22 → 19.15.0-next.24
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/collapse2/README.md +3 -0
- package/collapse2/index.d.ts +3 -0
- package/collapse2/lib/collapse2-group/collapse2-group.component.d.ts +13 -0
- package/collapse2/lib/collapse2-item/collapse2-item.component.d.ts +21 -0
- package/collapse2/lib/collapse2.module.d.ts +8 -0
- package/drawer-2/lib/drawer2-item/drawer2.component.d.ts +2 -2
- package/fesm2022/acorex-components-collapse.mjs +2 -2
- package/fesm2022/acorex-components-collapse.mjs.map +1 -1
- package/fesm2022/acorex-components-collapse2.mjs +120 -0
- package/fesm2022/acorex-components-collapse2.mjs.map +1 -0
- package/fesm2022/acorex-components-color-box.mjs +2 -2
- package/fesm2022/acorex-components-color-box.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-box.mjs +2 -8
- package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
- package/fesm2022/acorex-components-drawer-2.mjs +14 -1
- package/fesm2022/acorex-components-drawer-2.mjs.map +1 -1
- package/fesm2022/acorex-components-map.mjs +133 -9
- package/fesm2022/acorex-components-map.mjs.map +1 -1
- package/fesm2022/acorex-components-time-duration.mjs +7 -1
- package/fesm2022/acorex-components-time-duration.mjs.map +1 -1
- package/map/index.d.ts +1 -0
- package/map/lib/map.component.d.ts +5 -0
- package/map/lib/map.service.d.ts +16 -1
- package/map/lib/map.type.d.ts +1 -0
- package/map/lib/poi.provider.d.ts +15 -0
- package/package.json +8 -4
@@ -140,7 +140,13 @@ class AXTimeDurationComponent extends classes((MXInputBaseValueComponent), MXLoo
|
|
140
140
|
const maskParts = selectedUnits.map((unit) => {
|
141
141
|
return unitPatterns[unit];
|
142
142
|
});
|
143
|
-
|
143
|
+
let result;
|
144
|
+
if (this.translationService.getActiveLang() === 'fa-IR') {
|
145
|
+
result = maskParts.reverse().join(' : ');
|
146
|
+
}
|
147
|
+
else {
|
148
|
+
result = maskParts.join(' : ');
|
149
|
+
}
|
144
150
|
this.maskOptions.set({ mask: result, eager: true });
|
145
151
|
}
|
146
152
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.13", ngImport: i0, type: AXTimeDurationComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acorex-components-time-duration.mjs","sources":["../../../../packages/components/time-duration/src/lib/time-duration.component.ts","../../../../packages/components/time-duration/src/lib/time-duration.component.html","../../../../packages/components/time-duration/src/lib/time-duration.module.ts","../../../../packages/components/time-duration/src/acorex-components-time-duration.ts"],"sourcesContent":["import {\n AXComponent,\n AXFocusableComponent,\n AXValuableComponent,\n MXInputBaseValueComponent,\n MXLookComponent,\n} from '@acorex/cdk/common';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXMaskOptions, AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXTimeDurationFormatter } from '@acorex/core/date-time';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport {\n afterNextRender,\n ChangeDetectionStrategy,\n Component,\n effect,\n forwardRef,\n inject,\n input,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { IMask } from 'angular-imask';\nimport { classes } from 'polytype';\nimport { AXTimeDurationUnit } from './time-duration.type';\n\n@Component({\n selector: 'ax-time-duration',\n templateUrl: './time-duration.component.html',\n styleUrls: ['./time-duration.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [AXTextBoxModule, FormsModule, AXSelectBoxModule],\n inputs: ['disabled', 'tabIndex', 'readonly', 'look'],\n outputs: ['onValueChanged'],\n providers: [\n { provide: AXComponent, useExisting: AXTimeDurationComponent },\n { provide: AXFocusableComponent, useExisting: AXTimeDurationComponent },\n { provide: AXValuableComponent, useExisting: AXTimeDurationComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXTimeDurationComponent),\n multi: true,\n },\n ],\n})\nexport class AXTimeDurationComponent extends classes(MXInputBaseValueComponent<number>, MXLookComponent) {\n protected inputValue: string;\n readonly valueStart = input<AXTimeDurationUnit>('YEAR');\n readonly valueEnd = input<AXTimeDurationUnit>('MILLISECOND');\n protected maskOptions = signal<AXMaskOptions>({\n mask: 'HH:MM:SS',\n blocks: {\n HH: { mask: IMask.MaskedRange, from: 0, to: 23 },\n MM: { mask: IMask.MaskedRange, from: 0, to: 59 },\n SS: { mask: IMask.MaskedRange, from: 0, to: 59 },\n },\n });\n\n private translationService: AXTranslationService = inject(AXTranslationService);\n private timeDurationFormatter: AXTimeDurationFormatter = inject(AXTimeDurationFormatter);\n\n private onInputFire = false;\n private onInternalValueChangedFire = false;\n\n private YEAR = signal(null);\n private MONTH = signal(null);\n private WEEK = signal(null);\n private DAY = signal(null);\n private HOUR = signal(null);\n private MINUTE = signal(null);\n private SECOND = signal(null);\n private MILLISECOND = signal(null);\n private isTranslationInit = signal(false);\n\n #init = afterNextRender(async () => {\n await this.initTranslation();\n });\n\n #effect = effect(() => {\n if (this.valueStart() && this.valueEnd() && this.isTranslationInit()) {\n this.updateMask();\n }\n });\n\n async initTranslation() {\n this.YEAR.set((await this.translationService.translateAsync('dateTime.year')).toLocaleUpperCase());\n this.MONTH.set((await this.translationService.translateAsync('dateTime.month')).toLocaleUpperCase());\n this.WEEK.set((await this.translationService.translateAsync('dateTime.week')).toLocaleUpperCase());\n this.DAY.set((await this.translationService.translateAsync('dateTime.day')).toLocaleUpperCase());\n this.HOUR.set((await this.translationService.translateAsync('dateTime.hour')).toLocaleUpperCase());\n this.MINUTE.set((await this.translationService.translateAsync('dateTime.minute')).toLocaleUpperCase());\n this.SECOND.set((await this.translationService.translateAsync('dateTime.second')).toLocaleUpperCase());\n this.MILLISECOND.set((await this.translationService.translateAsync('dateTime.millisecond')).toLocaleUpperCase());\n this.isTranslationInit.set(true);\n }\n\n protected onInput(event: any) {\n if (this.onInternalValueChangedFire) return;\n this.onInputFire = true;\n const milliseconds = this.maskToMilliseconds(event);\n if (!milliseconds) return;\n this.commitValue(milliseconds, true);\n this.onInputFire = false;\n }\n\n protected override async internalValueChanged(value: number): Promise<void> {\n if (this.onInputFire) return;\n this.onInternalValueChangedFire = true;\n\n const normalizedMask = await this.timeDurationFormatter.millisecondsToMask(\n value,\n this.valueStart(),\n this.valueEnd(),\n );\n\n this.inputValue = normalizedMask;\n\n setTimeout(() => {\n this.onInternalValueChangedFire = false;\n });\n }\n\n private replacePersianLabels(input: string) {\n const replacements = {\n [this.YEAR()]: 'YEAR',\n [this.MONTH()]: 'MONTH',\n [this.WEEK()]: 'WEEK',\n [this.DAY()]: 'DAY',\n [this.HOUR()]: 'HOUR',\n [this.MINUTE()]: 'MINUTE',\n [this.SECOND()]: 'SECOND',\n [this.MILLISECOND()]: 'MILLISECOND',\n };\n\n return Object.entries(replacements).reduce((str, [fa, en]) => {\n return str.replace(`(${fa})`, `(${en})`);\n }, input);\n }\n\n private maskToMilliseconds(maskValue: string): number {\n const transformedMaskValue = this.replacePersianLabels(maskValue);\n\n const timeUnits = {\n YEAR: 365 * 24 * 60 * 60 * 1000,\n MONTH: 30 * 24 * 60 * 60 * 1000,\n WEEK: 7 * 24 * 60 * 60 * 1000,\n DAY: 24 * 60 * 60 * 1000,\n HOUR: 60 * 60 * 1000,\n MINUTE: 60 * 1000,\n SECOND: 1000,\n MILLISECOND: 1,\n };\n\n const regex = /(\\d+)\\s*\\((YEAR|MONTH|WEEK|DAY|HOUR|MINUTE|SECOND|MILLISECOND)\\)/g;\n let match;\n let totalMs = 0;\n\n while ((match = regex.exec(transformedMaskValue)) !== null) {\n const value = parseInt(match[1], 10);\n const unit = match[2];\n if (timeUnits[unit] !== undefined) {\n totalMs += value * timeUnits[unit];\n }\n }\n\n return totalMs;\n }\n\n private updateMask() {\n const allUnits = ['YEAR', 'MONTH', 'WEEK', 'DAY', 'HOUR', 'MINUTE', 'SECOND', 'MILLISECOND'];\n const startIndex = allUnits.indexOf(this.valueStart());\n const endIndex = allUnits.indexOf(this.valueEnd());\n\n if (startIndex === -1 || endIndex === -1 || endIndex < startIndex) {\n this.maskOptions.set({ mask: '', eager: true });\n return null;\n }\n\n const selectedUnits = allUnits.slice(startIndex, endIndex + 1);\n\n const unitPatterns: Record<string, string> = {\n YEAR: `00 (${this.YEAR()})`,\n MONTH: `00 (${this.MONTH()})`,\n WEEK: `00 (${this.WEEK()})`,\n DAY: `00 (${this.DAY()})`,\n HOUR: `00 (${this.HOUR()})`,\n MINUTE: `00 (${this.MINUTE()})`,\n SECOND: `00 (${this.SECOND()})`,\n MILLISECOND: `000 (${this.MILLISECOND()})`,\n };\n\n const maskParts = selectedUnits.map((unit) => {\n return unitPatterns[unit];\n });\n\n const result = maskParts.join(' : ');\n\n this.maskOptions.set({ mask: result, eager: true });\n }\n}\n","<div class=\"ax-editor-container\">\n <ax-text-box\n [look]=\"look\"\n [placeholder]=\"maskOptions().mask\"\n [mask-options]=\"maskOptions()\"\n [(ngModel)]=\"inputValue\"\n (ngModelChange)=\"onInput($event)\"\n class=\"ax-time-duration-text\"\n [disabled]=\"disabled\"\n [tabIndex]=\"tabIndex\"\n [readonly]=\"readonly\"\n >\n </ax-text-box>\n <ng-content select=\"ax-validation-rule\"> </ng-content>\n</div>\n<div class=\"ax-error-container\"></div>\n","import { NgModule } from '@angular/core';\nimport { AXTimeDurationComponent } from './time-duration.component';\n\nconst COMPONENT = [AXTimeDurationComponent];\n\nconst MODULES = [];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXTimeDurationModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"acorex-components-time-duration.mjs","sources":["../../../../packages/components/time-duration/src/lib/time-duration.component.ts","../../../../packages/components/time-duration/src/lib/time-duration.component.html","../../../../packages/components/time-duration/src/lib/time-duration.module.ts","../../../../packages/components/time-duration/src/acorex-components-time-duration.ts"],"sourcesContent":["import {\n AXComponent,\n AXFocusableComponent,\n AXValuableComponent,\n MXInputBaseValueComponent,\n MXLookComponent,\n} from '@acorex/cdk/common';\nimport { AXSelectBoxModule } from '@acorex/components/select-box';\nimport { AXMaskOptions, AXTextBoxModule } from '@acorex/components/text-box';\nimport { AXTimeDurationFormatter } from '@acorex/core/date-time';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport {\n afterNextRender,\n ChangeDetectionStrategy,\n Component,\n effect,\n forwardRef,\n inject,\n input,\n signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { IMask } from 'angular-imask';\nimport { classes } from 'polytype';\nimport { AXTimeDurationUnit } from './time-duration.type';\n\n@Component({\n selector: 'ax-time-duration',\n templateUrl: './time-duration.component.html',\n styleUrls: ['./time-duration.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [AXTextBoxModule, FormsModule, AXSelectBoxModule],\n inputs: ['disabled', 'tabIndex', 'readonly', 'look'],\n outputs: ['onValueChanged'],\n providers: [\n { provide: AXComponent, useExisting: AXTimeDurationComponent },\n { provide: AXFocusableComponent, useExisting: AXTimeDurationComponent },\n { provide: AXValuableComponent, useExisting: AXTimeDurationComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXTimeDurationComponent),\n multi: true,\n },\n ],\n})\nexport class AXTimeDurationComponent extends classes(MXInputBaseValueComponent<number>, MXLookComponent) {\n protected inputValue: string;\n readonly valueStart = input<AXTimeDurationUnit>('YEAR');\n readonly valueEnd = input<AXTimeDurationUnit>('MILLISECOND');\n protected maskOptions = signal<AXMaskOptions>({\n mask: 'HH:MM:SS',\n blocks: {\n HH: { mask: IMask.MaskedRange, from: 0, to: 23 },\n MM: { mask: IMask.MaskedRange, from: 0, to: 59 },\n SS: { mask: IMask.MaskedRange, from: 0, to: 59 },\n },\n });\n\n private translationService: AXTranslationService = inject(AXTranslationService);\n private timeDurationFormatter: AXTimeDurationFormatter = inject(AXTimeDurationFormatter);\n\n private onInputFire = false;\n private onInternalValueChangedFire = false;\n\n private YEAR = signal(null);\n private MONTH = signal(null);\n private WEEK = signal(null);\n private DAY = signal(null);\n private HOUR = signal(null);\n private MINUTE = signal(null);\n private SECOND = signal(null);\n private MILLISECOND = signal(null);\n private isTranslationInit = signal(false);\n\n #init = afterNextRender(async () => {\n await this.initTranslation();\n });\n\n #effect = effect(() => {\n if (this.valueStart() && this.valueEnd() && this.isTranslationInit()) {\n this.updateMask();\n }\n });\n\n async initTranslation() {\n this.YEAR.set((await this.translationService.translateAsync('dateTime.year')).toLocaleUpperCase());\n this.MONTH.set((await this.translationService.translateAsync('dateTime.month')).toLocaleUpperCase());\n this.WEEK.set((await this.translationService.translateAsync('dateTime.week')).toLocaleUpperCase());\n this.DAY.set((await this.translationService.translateAsync('dateTime.day')).toLocaleUpperCase());\n this.HOUR.set((await this.translationService.translateAsync('dateTime.hour')).toLocaleUpperCase());\n this.MINUTE.set((await this.translationService.translateAsync('dateTime.minute')).toLocaleUpperCase());\n this.SECOND.set((await this.translationService.translateAsync('dateTime.second')).toLocaleUpperCase());\n this.MILLISECOND.set((await this.translationService.translateAsync('dateTime.millisecond')).toLocaleUpperCase());\n this.isTranslationInit.set(true);\n }\n\n protected onInput(event: any) {\n if (this.onInternalValueChangedFire) return;\n this.onInputFire = true;\n const milliseconds = this.maskToMilliseconds(event);\n if (!milliseconds) return;\n this.commitValue(milliseconds, true);\n this.onInputFire = false;\n }\n\n protected override async internalValueChanged(value: number): Promise<void> {\n if (this.onInputFire) return;\n this.onInternalValueChangedFire = true;\n\n const normalizedMask = await this.timeDurationFormatter.millisecondsToMask(\n value,\n this.valueStart(),\n this.valueEnd(),\n );\n\n this.inputValue = normalizedMask;\n\n setTimeout(() => {\n this.onInternalValueChangedFire = false;\n });\n }\n\n private replacePersianLabels(input: string) {\n const replacements = {\n [this.YEAR()]: 'YEAR',\n [this.MONTH()]: 'MONTH',\n [this.WEEK()]: 'WEEK',\n [this.DAY()]: 'DAY',\n [this.HOUR()]: 'HOUR',\n [this.MINUTE()]: 'MINUTE',\n [this.SECOND()]: 'SECOND',\n [this.MILLISECOND()]: 'MILLISECOND',\n };\n\n return Object.entries(replacements).reduce((str, [fa, en]) => {\n return str.replace(`(${fa})`, `(${en})`);\n }, input);\n }\n\n private maskToMilliseconds(maskValue: string): number {\n const transformedMaskValue = this.replacePersianLabels(maskValue);\n\n const timeUnits = {\n YEAR: 365 * 24 * 60 * 60 * 1000,\n MONTH: 30 * 24 * 60 * 60 * 1000,\n WEEK: 7 * 24 * 60 * 60 * 1000,\n DAY: 24 * 60 * 60 * 1000,\n HOUR: 60 * 60 * 1000,\n MINUTE: 60 * 1000,\n SECOND: 1000,\n MILLISECOND: 1,\n };\n\n const regex = /(\\d+)\\s*\\((YEAR|MONTH|WEEK|DAY|HOUR|MINUTE|SECOND|MILLISECOND)\\)/g;\n let match;\n let totalMs = 0;\n\n while ((match = regex.exec(transformedMaskValue)) !== null) {\n const value = parseInt(match[1], 10);\n const unit = match[2];\n if (timeUnits[unit] !== undefined) {\n totalMs += value * timeUnits[unit];\n }\n }\n\n return totalMs;\n }\n\n private updateMask() {\n const allUnits = ['YEAR', 'MONTH', 'WEEK', 'DAY', 'HOUR', 'MINUTE', 'SECOND', 'MILLISECOND'];\n const startIndex = allUnits.indexOf(this.valueStart());\n const endIndex = allUnits.indexOf(this.valueEnd());\n\n if (startIndex === -1 || endIndex === -1 || endIndex < startIndex) {\n this.maskOptions.set({ mask: '', eager: true });\n return null;\n }\n\n const selectedUnits = allUnits.slice(startIndex, endIndex + 1);\n\n const unitPatterns: Record<string, string> = {\n YEAR: `00 (${this.YEAR()})`,\n MONTH: `00 (${this.MONTH()})`,\n WEEK: `00 (${this.WEEK()})`,\n DAY: `00 (${this.DAY()})`,\n HOUR: `00 (${this.HOUR()})`,\n MINUTE: `00 (${this.MINUTE()})`,\n SECOND: `00 (${this.SECOND()})`,\n MILLISECOND: `000 (${this.MILLISECOND()})`,\n };\n\n const maskParts = selectedUnits.map((unit) => {\n return unitPatterns[unit];\n });\n\n let result: string;\n\n if (this.translationService.getActiveLang() === 'fa-IR') {\n result = maskParts.reverse().join(' : ');\n } else {\n result = maskParts.join(' : ');\n }\n\n this.maskOptions.set({ mask: result, eager: true });\n }\n}\n","<div class=\"ax-editor-container\">\n <ax-text-box\n [look]=\"look\"\n [placeholder]=\"maskOptions().mask\"\n [mask-options]=\"maskOptions()\"\n [(ngModel)]=\"inputValue\"\n (ngModelChange)=\"onInput($event)\"\n class=\"ax-time-duration-text\"\n [disabled]=\"disabled\"\n [tabIndex]=\"tabIndex\"\n [readonly]=\"readonly\"\n >\n </ax-text-box>\n <ng-content select=\"ax-validation-rule\"> </ng-content>\n</div>\n<div class=\"ax-error-container\"></div>\n","import { NgModule } from '@angular/core';\nimport { AXTimeDurationComponent } from './time-duration.component';\n\nconst COMPONENT = [AXTimeDurationComponent];\n\nconst MODULES = [];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [],\n})\nexport class AXTimeDurationModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/map/index.d.ts
CHANGED
@@ -257,6 +257,11 @@ export declare class AXMapComponent implements OnDestroy {
|
|
257
257
|
open?: boolean;
|
258
258
|
closeButton?: boolean;
|
259
259
|
}[]): number;
|
260
|
+
/**
|
261
|
+
* @description
|
262
|
+
* Refreshes POIs from providers, clearing existing POIs first
|
263
|
+
*/
|
264
|
+
refreshPois(): Promise<void>;
|
260
265
|
/**
|
261
266
|
* Cleanup function that destroys the map and unsubscribes from all subscriptions.
|
262
267
|
*/
|
package/map/lib/map.service.d.ts
CHANGED
@@ -7,6 +7,7 @@ import * as i0 from "@angular/core";
|
|
7
7
|
export declare class AXLeafletService {
|
8
8
|
private mapConfig;
|
9
9
|
private iconResolver;
|
10
|
+
private poiProviderService;
|
10
11
|
private defaultIcon;
|
11
12
|
private position;
|
12
13
|
private maxMarkers;
|
@@ -155,8 +156,9 @@ export declare class AXLeafletService {
|
|
155
156
|
removeLocateControl(): void;
|
156
157
|
/**
|
157
158
|
* Clears all drawn items, including markers, polygons, and POIs.
|
159
|
+
* @param clearPois Whether to clear POI markers as well. Defaults to false.
|
158
160
|
*/
|
159
|
-
clearDrawItems(): void;
|
161
|
+
clearDrawItems(clearPois?: boolean): void;
|
160
162
|
/**
|
161
163
|
* Gets the current drawn items (markers and polygons).
|
162
164
|
* @returns An object containing arrays of markers and polygons.
|
@@ -242,6 +244,19 @@ export declare class AXLeafletService {
|
|
242
244
|
* @returns The minimum zoom level
|
243
245
|
*/
|
244
246
|
getPoiMinZoom(): number;
|
247
|
+
/**
|
248
|
+
* Loads POIs from all registered providers
|
249
|
+
*/
|
250
|
+
loadPoisFromProviders(): Promise<void>;
|
251
|
+
/**
|
252
|
+
* Refreshes POIs from providers, clearing existing POIs first
|
253
|
+
*/
|
254
|
+
refreshPois(): Promise<void>;
|
255
|
+
/**
|
256
|
+
* Refreshes POIs from a specific provider by key
|
257
|
+
* @param providerKey The key of the provider to refresh
|
258
|
+
*/
|
259
|
+
refreshPoiByProvider(providerKey: string): Promise<void>;
|
245
260
|
static ɵfac: i0.ɵɵFactoryDeclaration<AXLeafletService, never>;
|
246
261
|
static ɵprov: i0.ɵɵInjectableDeclaration<AXLeafletService>;
|
247
262
|
}
|
package/map/lib/map.type.d.ts
CHANGED
@@ -0,0 +1,15 @@
|
|
1
|
+
import { InjectionToken } from '@angular/core';
|
2
|
+
import { AXPoiMarker } from './map.type';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
export interface AXPoiProvider {
|
5
|
+
get key(): string;
|
6
|
+
provide(): Promise<AXPoiMarker[]>;
|
7
|
+
}
|
8
|
+
export declare const AX_MAP_POI_PROVIDER: InjectionToken<AXPoiProvider[]>;
|
9
|
+
export declare class AXPoiProviderService {
|
10
|
+
private providers;
|
11
|
+
private cache;
|
12
|
+
getList(): Promise<AXPoiMarker[]>;
|
13
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AXPoiProviderService, never>;
|
14
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AXPoiProviderService>;
|
15
|
+
}
|
package/package.json
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
{
|
2
2
|
"name": "@acorex/components",
|
3
|
-
"version": "19.15.0-next.
|
3
|
+
"version": "19.15.0-next.24",
|
4
4
|
"peerDependencies": {
|
5
|
-
"@angular/common": "
|
6
|
-
"@angular/core": "
|
7
|
-
"@angular/cdk": "
|
5
|
+
"@angular/common": "^19.0.0",
|
6
|
+
"@angular/core": "^19.0.0",
|
7
|
+
"@angular/cdk": "^19.0.0",
|
8
8
|
"polytype": ">=0.17.0",
|
9
9
|
"imask": ">=7.6.1",
|
10
10
|
"angular-imask": ">=7.6.1",
|
@@ -85,6 +85,10 @@
|
|
85
85
|
"types": "./collapse/index.d.ts",
|
86
86
|
"default": "./fesm2022/acorex-components-collapse.mjs"
|
87
87
|
},
|
88
|
+
"./collapse2": {
|
89
|
+
"types": "./collapse2/index.d.ts",
|
90
|
+
"default": "./fesm2022/acorex-components-collapse2.mjs"
|
91
|
+
},
|
88
92
|
"./color-box": {
|
89
93
|
"types": "./color-box/index.d.ts",
|
90
94
|
"default": "./fesm2022/acorex-components-color-box.mjs"
|