@plyaz/core 1.9.3 → 1.9.4
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/dist/domain/base/BaseFrontendDomainService.d.ts +55 -0
- package/dist/domain/base/BaseFrontendDomainService.d.ts.map +1 -1
- package/dist/domain/example/FrontendExampleDomainService.d.ts +0 -12
- package/dist/domain/example/FrontendExampleDomainService.d.ts.map +1 -1
- package/dist/entry-backend.js +97 -49
- package/dist/entry-backend.js.map +1 -1
- package/dist/entry-backend.mjs +97 -49
- package/dist/entry-backend.mjs.map +1 -1
- package/dist/entry-frontend-browser.js +95 -47
- package/dist/entry-frontend-browser.js.map +1 -1
- package/dist/entry-frontend-browser.mjs +95 -47
- package/dist/entry-frontend-browser.mjs.map +1 -1
- package/dist/entry-frontend.js +95 -47
- package/dist/entry-frontend.js.map +1 -1
- package/dist/entry-frontend.mjs +95 -47
- package/dist/entry-frontend.mjs.map +1 -1
- package/dist/index.js +95 -47
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +95 -47
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -2
|
@@ -146,6 +146,8 @@ export declare abstract class BaseFrontendDomainService<TConfig extends CoreBase
|
|
|
146
146
|
private readonly _rollbackStack;
|
|
147
147
|
/** Maximum rollback stack size */
|
|
148
148
|
private readonly _maxRollbackStackSize;
|
|
149
|
+
/** Polling timer reference */
|
|
150
|
+
private _pollingTimer;
|
|
149
151
|
constructor(config: CoreBaseFrontendServiceConstructorConfig<TConfig, TStore, TData, TMapper, TValidator>);
|
|
150
152
|
/**
|
|
151
153
|
* Auto-resolve apiClientConfig from serviceConfig.apiBasePath if not explicitly provided.
|
|
@@ -568,6 +570,59 @@ export declare abstract class BaseFrontendDomainService<TConfig extends CoreBase
|
|
|
568
570
|
* @param headers - Response headers (if available)
|
|
569
571
|
*/
|
|
570
572
|
protected afterHead?<TInput>(resource: TInput | undefined, headers?: unknown): Promise<void>;
|
|
573
|
+
/**
|
|
574
|
+
* Check if polling is currently active.
|
|
575
|
+
*/
|
|
576
|
+
get isPolling(): boolean;
|
|
577
|
+
/**
|
|
578
|
+
* Start polling for updates.
|
|
579
|
+
* Uses `config.pollingInterval` if set, otherwise uses DEFAULT_POLLING_INTERVAL_MS (30s).
|
|
580
|
+
* Polling calls fetchAll() at the configured interval.
|
|
581
|
+
*
|
|
582
|
+
* Override in subclass for custom polling behavior.
|
|
583
|
+
*
|
|
584
|
+
* @example
|
|
585
|
+
* ```typescript
|
|
586
|
+
* // Start polling with config interval
|
|
587
|
+
* service.startPolling();
|
|
588
|
+
*
|
|
589
|
+
* // Or override in subclass for custom behavior
|
|
590
|
+
* startPolling(): void {
|
|
591
|
+
* super.startPolling();
|
|
592
|
+
* // Custom polling logic
|
|
593
|
+
* }
|
|
594
|
+
* ```
|
|
595
|
+
*/
|
|
596
|
+
startPolling(): void;
|
|
597
|
+
/**
|
|
598
|
+
* Stop polling.
|
|
599
|
+
* Safe to call even if polling is not active.
|
|
600
|
+
*/
|
|
601
|
+
stopPolling(): void;
|
|
602
|
+
/**
|
|
603
|
+
* Dispose service and cleanup resources.
|
|
604
|
+
* Stops polling and performs base cleanup.
|
|
605
|
+
*
|
|
606
|
+
* Subclasses should override and call super.dispose() to ensure cleanup.
|
|
607
|
+
*
|
|
608
|
+
* @example
|
|
609
|
+
* ```typescript
|
|
610
|
+
* dispose(): void {
|
|
611
|
+
* // Custom cleanup
|
|
612
|
+
* this.customCleanup();
|
|
613
|
+
* // Always call super
|
|
614
|
+
* super.dispose();
|
|
615
|
+
* }
|
|
616
|
+
* ```
|
|
617
|
+
*/
|
|
618
|
+
dispose(): void;
|
|
619
|
+
/**
|
|
620
|
+
* Check if service is available.
|
|
621
|
+
* Override in subclass for custom availability checks.
|
|
622
|
+
*
|
|
623
|
+
* @returns true if service is enabled and in a browser environment
|
|
624
|
+
*/
|
|
625
|
+
isAvailable(): boolean;
|
|
571
626
|
/**
|
|
572
627
|
* Wrap error in CorePackageError with context
|
|
573
628
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseFrontendDomainService.d.ts","sourceRoot":"","sources":["../../../src/domain/base/BaseFrontendDomainService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4EG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAGxD,OAAO,EAAa,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAI5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,KAAK,EACV,yBAAyB,EACzB,wBAAwB,EACxB,yBAAyB,EACzB,wBAAwB,EACxB,yBAAyB,EACzB,wBAAwB,EACxB,sBAAsB,EACtB,yBAAyB,EAC1B,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EACV,qBAAqB,EACrB,6BAA6B,EAC7B,wCAAwC,EACxC,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,KAAK,EACV,qBAAqB,EACrB,6BAA6B,EAC7B,wCAAwC,EACxC,sBAAsB,EACtB,yBAAyB,EACzB,iBAAiB,EACjB,0BAA0B,EAC3B,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"BaseFrontendDomainService.d.ts","sourceRoot":"","sources":["../../../src/domain/base/BaseFrontendDomainService.ts"],"names":[],"mappings":"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"}
|
|
@@ -76,7 +76,6 @@ export declare class FrontendExampleDomainService extends BaseFrontendDomainServ
|
|
|
76
76
|
* Read-only store keys - inherits error and featureFlags from base
|
|
77
77
|
* No need to redeclare them - they're always included by default
|
|
78
78
|
*/
|
|
79
|
-
private pollingTimer;
|
|
80
79
|
static readonly serviceKey: "example-frontend";
|
|
81
80
|
/**
|
|
82
81
|
* Primary store key for this service.
|
|
@@ -90,8 +89,6 @@ export declare class FrontendExampleDomainService extends BaseFrontendDomainServ
|
|
|
90
89
|
*/
|
|
91
90
|
static create(config: _ExampleFrontendServiceConfig, options?: CoreServiceCreateOptions): Promise<FrontendExampleDomainService>;
|
|
92
91
|
constructor(config?: _ExampleFrontendServiceConfig, options?: CoreServiceCreateOptions);
|
|
93
|
-
isAvailable(): boolean;
|
|
94
|
-
dispose(): void;
|
|
95
92
|
/**
|
|
96
93
|
* After fetchAll - emit event (store sync handled automatically)
|
|
97
94
|
* Note: Base class automatically calls syncToStores() which uses storeHandlers
|
|
@@ -111,15 +108,6 @@ export declare class FrontendExampleDomainService extends BaseFrontendDomainServ
|
|
|
111
108
|
* ```
|
|
112
109
|
*/
|
|
113
110
|
on(event: ExampleFrontendEventType, handler: (data: unknown) => void): () => void;
|
|
114
|
-
/**
|
|
115
|
-
* Start polling for updates
|
|
116
|
-
* Domain-specific feature - not part of base class
|
|
117
|
-
*/
|
|
118
|
-
startPolling(): void;
|
|
119
|
-
/**
|
|
120
|
-
* Stop polling
|
|
121
|
-
*/
|
|
122
|
-
stopPolling(): void;
|
|
123
111
|
/**
|
|
124
112
|
* Demo: Fetch all examples with optional filters
|
|
125
113
|
* Demonstrates the fetchAll() method with typed query parameters
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FrontendExampleDomainService.d.ts","sourceRoot":"","sources":["../../../src/domain/example/FrontendExampleDomainService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAIH,OAAO,KAAK,EACV,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,gBAAgB,EACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAE9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"FrontendExampleDomainService.d.ts","sourceRoot":"","sources":["../../../src/domain/example/FrontendExampleDomainService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAIH,OAAO,KAAK,EACV,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,gBAAgB,EACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAE9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAO7D,YAAY,EACV,wBAAwB,EACxB,yBAAyB,EACzB,4BAA4B,EAC5B,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,KAAK,EACV,wBAAwB,EACxB,yBAAyB,EACzB,4BAA4B,IAAI,6BAA6B,EAC7D,wBAAwB,EACzB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAMnE;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,4BAA6B,SAAQ,yBAAyB,CACzE,6BAA6B,EAC7B,yBAAyB,EACzB,wBAAwB,EACxB,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,YAAY,CAAC,OAAO,kBAAkB,CAAC,EACvC,yBAAyB,EACzB,IAAI,CACL;IAKC;;;OAGG;IACH,SAAS,CAAC,WAAW,SAAa;IAElC;;;OAGG;IAOH,MAAM,CAAC,QAAQ,CAAC,UAAU,qBAAiC;IAE3D;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,eAAe,YAAsB;IAErD;;;OAGG;WACU,MAAM,CACjB,MAAM,EAAE,6BAA6B,EACrC,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,4BAA4B,CAAC;gBAuB5B,MAAM,GAAE,6BAAkC,EAAE,OAAO,CAAC,EAAE,wBAAwB;IAkF1F;;;OAGG;cACsB,aAAa,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BhF;;;;;;;;;;;;OAYG;IACH,EAAE,CAAC,KAAK,EAAE,wBAAwB,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI;IASjF;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACG,WAAW,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAItE;;;OAGG;IACG,iBAAiB,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IAInD;;;OAGG;IACG,gBAAgB,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IAIlD;;;OAGG;IACG,mBAAmB,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;CAkBtD"}
|
package/dist/entry-backend.js
CHANGED
|
@@ -4583,12 +4583,13 @@ var init_BaseDomainService = __esm({
|
|
|
4583
4583
|
};
|
|
4584
4584
|
}
|
|
4585
4585
|
});
|
|
4586
|
-
var BaseFrontendDomainService;
|
|
4586
|
+
var DEFAULT_POLLING_INTERVAL_MS, BaseFrontendDomainService;
|
|
4587
4587
|
var init_BaseFrontendDomainService = __esm({
|
|
4588
4588
|
"src/domain/base/BaseFrontendDomainService.ts"() {
|
|
4589
4589
|
init_BaseDomainService();
|
|
4590
4590
|
init_CoreEventManager();
|
|
4591
4591
|
init_CoreInitializer();
|
|
4592
|
+
DEFAULT_POLLING_INTERVAL_MS = 3e4;
|
|
4592
4593
|
BaseFrontendDomainService = class _BaseFrontendDomainService extends exports.BaseDomainService {
|
|
4593
4594
|
// ─────────────────────────────────────────────────────────────────────────
|
|
4594
4595
|
// Constructor
|
|
@@ -4614,6 +4615,11 @@ var init_BaseFrontendDomainService = __esm({
|
|
|
4614
4615
|
this._rollbackStack = [];
|
|
4615
4616
|
/** Maximum rollback stack size */
|
|
4616
4617
|
this._maxRollbackStackSize = 10;
|
|
4618
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
4619
|
+
// Polling Properties
|
|
4620
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
4621
|
+
/** Polling timer reference */
|
|
4622
|
+
this._pollingTimer = null;
|
|
4617
4623
|
this.storeHandlers = config.serviceConfig.storeHandlers;
|
|
4618
4624
|
this.optimisticConfig = config.serviceConfig.optimisticUpdates;
|
|
4619
4625
|
if (config.mapperClass) {
|
|
@@ -5640,6 +5646,87 @@ var init_BaseFrontendDomainService = __esm({
|
|
|
5640
5646
|
this.logDebug(`Event emitted: ${eventName}`, payload);
|
|
5641
5647
|
}
|
|
5642
5648
|
// ─────────────────────────────────────────────────────────────────────────
|
|
5649
|
+
// Polling (Generic Feature)
|
|
5650
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
5651
|
+
/**
|
|
5652
|
+
* Check if polling is currently active.
|
|
5653
|
+
*/
|
|
5654
|
+
get isPolling() {
|
|
5655
|
+
return this._pollingTimer !== null;
|
|
5656
|
+
}
|
|
5657
|
+
/**
|
|
5658
|
+
* Start polling for updates.
|
|
5659
|
+
* Uses `config.pollingInterval` if set, otherwise uses DEFAULT_POLLING_INTERVAL_MS (30s).
|
|
5660
|
+
* Polling calls fetchAll() at the configured interval.
|
|
5661
|
+
*
|
|
5662
|
+
* Override in subclass for custom polling behavior.
|
|
5663
|
+
*
|
|
5664
|
+
* @example
|
|
5665
|
+
* ```typescript
|
|
5666
|
+
* // Start polling with config interval
|
|
5667
|
+
* service.startPolling();
|
|
5668
|
+
*
|
|
5669
|
+
* // Or override in subclass for custom behavior
|
|
5670
|
+
* startPolling(): void {
|
|
5671
|
+
* super.startPolling();
|
|
5672
|
+
* // Custom polling logic
|
|
5673
|
+
* }
|
|
5674
|
+
* ```
|
|
5675
|
+
*/
|
|
5676
|
+
startPolling() {
|
|
5677
|
+
if (this._pollingTimer) return;
|
|
5678
|
+
const interval = this.config.pollingInterval || DEFAULT_POLLING_INTERVAL_MS;
|
|
5679
|
+
this._pollingTimer = setInterval(() => {
|
|
5680
|
+
this.fetchAll().catch((error) => {
|
|
5681
|
+
this.logError("Polling fetch failed", { error });
|
|
5682
|
+
});
|
|
5683
|
+
}, interval);
|
|
5684
|
+
this.logDebug("Polling started", { interval });
|
|
5685
|
+
}
|
|
5686
|
+
/**
|
|
5687
|
+
* Stop polling.
|
|
5688
|
+
* Safe to call even if polling is not active.
|
|
5689
|
+
*/
|
|
5690
|
+
stopPolling() {
|
|
5691
|
+
if (this._pollingTimer) {
|
|
5692
|
+
clearInterval(this._pollingTimer);
|
|
5693
|
+
this._pollingTimer = null;
|
|
5694
|
+
this.logDebug("Polling stopped");
|
|
5695
|
+
}
|
|
5696
|
+
}
|
|
5697
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
5698
|
+
// Lifecycle Management
|
|
5699
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
5700
|
+
/**
|
|
5701
|
+
* Dispose service and cleanup resources.
|
|
5702
|
+
* Stops polling and performs base cleanup.
|
|
5703
|
+
*
|
|
5704
|
+
* Subclasses should override and call super.dispose() to ensure cleanup.
|
|
5705
|
+
*
|
|
5706
|
+
* @example
|
|
5707
|
+
* ```typescript
|
|
5708
|
+
* dispose(): void {
|
|
5709
|
+
* // Custom cleanup
|
|
5710
|
+
* this.customCleanup();
|
|
5711
|
+
* // Always call super
|
|
5712
|
+
* super.dispose();
|
|
5713
|
+
* }
|
|
5714
|
+
* ```
|
|
5715
|
+
*/
|
|
5716
|
+
dispose() {
|
|
5717
|
+
this.stopPolling();
|
|
5718
|
+
this.logInfo("Service disposed");
|
|
5719
|
+
}
|
|
5720
|
+
/**
|
|
5721
|
+
* Check if service is available.
|
|
5722
|
+
* Override in subclass for custom availability checks.
|
|
5723
|
+
*
|
|
5724
|
+
* @returns true if service is enabled and in a browser environment
|
|
5725
|
+
*/
|
|
5726
|
+
isAvailable() {
|
|
5727
|
+
return this.isServiceEnabled && typeof window !== "undefined";
|
|
5728
|
+
}
|
|
5729
|
+
// ─────────────────────────────────────────────────────────────────────────
|
|
5643
5730
|
// Error Handling Helpers
|
|
5644
5731
|
// ─────────────────────────────────────────────────────────────────────────
|
|
5645
5732
|
/**
|
|
@@ -7966,13 +8053,12 @@ var FrontendExampleDomainService_exports = {};
|
|
|
7966
8053
|
__export(FrontendExampleDomainService_exports, {
|
|
7967
8054
|
FrontendExampleDomainService: () => FrontendExampleDomainService
|
|
7968
8055
|
});
|
|
7969
|
-
var
|
|
8056
|
+
var FrontendExampleDomainService;
|
|
7970
8057
|
var init_FrontendExampleDomainService = __esm({
|
|
7971
8058
|
"src/domain/example/FrontendExampleDomainService.ts"() {
|
|
7972
8059
|
init_BaseFrontendDomainService();
|
|
7973
8060
|
init_CoreEventManager();
|
|
7974
8061
|
init_ExampleMapper();
|
|
7975
|
-
DEFAULT_POLLING_INTERVAL_MS = 3e4;
|
|
7976
8062
|
FrontendExampleDomainService = class _FrontendExampleDomainService extends BaseFrontendDomainService {
|
|
7977
8063
|
// ─────────────────────────────────────────────────────────────────────────
|
|
7978
8064
|
// Constructor
|
|
@@ -8047,15 +8133,6 @@ var init_FrontendExampleDomainService = __esm({
|
|
|
8047
8133
|
* Required by BaseFrontendDomainService
|
|
8048
8134
|
*/
|
|
8049
8135
|
this.eventPrefix = "example";
|
|
8050
|
-
/**
|
|
8051
|
-
* Read-only store keys - inherits error and featureFlags from base
|
|
8052
|
-
* No need to redeclare them - they're always included by default
|
|
8053
|
-
*/
|
|
8054
|
-
// protected readStoreKeys = [...super.readStoreKeys]; // Already includes ERROR, FEATURE_FLAGS
|
|
8055
|
-
// ─────────────────────────────────────────────────────────────────────────
|
|
8056
|
-
// Domain-Specific Properties
|
|
8057
|
-
// ─────────────────────────────────────────────────────────────────────────
|
|
8058
|
-
this.pollingTimer = null;
|
|
8059
8136
|
if (this.config.pollingInterval && this.config.pollingInterval > 0) {
|
|
8060
8137
|
this.startPolling();
|
|
8061
8138
|
}
|
|
@@ -8064,6 +8141,11 @@ var init_FrontendExampleDomainService = __esm({
|
|
|
8064
8141
|
__name(this, "FrontendExampleDomainService");
|
|
8065
8142
|
}
|
|
8066
8143
|
static {
|
|
8144
|
+
/**
|
|
8145
|
+
* Read-only store keys - inherits error and featureFlags from base
|
|
8146
|
+
* No need to redeclare them - they're always included by default
|
|
8147
|
+
*/
|
|
8148
|
+
// protected readStoreKeys = [...super.readStoreKeys]; // Already includes ERROR, FEATURE_FLAGS
|
|
8067
8149
|
// ─────────────────────────────────────────────────────────────────────────
|
|
8068
8150
|
// Static: Service Registry Interface
|
|
8069
8151
|
// ─────────────────────────────────────────────────────────────────────────
|
|
@@ -8097,18 +8179,10 @@ var init_FrontendExampleDomainService = __esm({
|
|
|
8097
8179
|
return service;
|
|
8098
8180
|
}
|
|
8099
8181
|
// ─────────────────────────────────────────────────────────────────────────
|
|
8100
|
-
// Abstract Implementations (Required by BaseDomainService)
|
|
8101
|
-
// ─────────────────────────────────────────────────────────────────────────
|
|
8102
|
-
isAvailable() {
|
|
8103
|
-
return this.isServiceEnabled && typeof window !== "undefined";
|
|
8104
|
-
}
|
|
8105
|
-
dispose() {
|
|
8106
|
-
this.stopPolling();
|
|
8107
|
-
this.logInfo("Service disposed");
|
|
8108
|
-
}
|
|
8109
|
-
// ─────────────────────────────────────────────────────────────────────────
|
|
8110
8182
|
// Lifecycle Hooks (Optional Override Examples)
|
|
8111
8183
|
// ─────────────────────────────────────────────────────────────────────────
|
|
8184
|
+
// Note: isAvailable(), dispose(), startPolling(), stopPolling() are inherited
|
|
8185
|
+
// from BaseFrontendDomainService. Override here only if custom behavior needed.
|
|
8112
8186
|
/**
|
|
8113
8187
|
* After fetchAll - emit event (store sync handled automatically)
|
|
8114
8188
|
* Note: Base class automatically calls syncToStores() which uses storeHandlers
|
|
@@ -8156,35 +8230,9 @@ var init_FrontendExampleDomainService = __esm({
|
|
|
8156
8230
|
return exports.CoreEventManager.on(event, handler);
|
|
8157
8231
|
}
|
|
8158
8232
|
// ─────────────────────────────────────────────────────────────────────────
|
|
8159
|
-
// Polling (Domain-Specific Feature)
|
|
8160
|
-
// ─────────────────────────────────────────────────────────────────────────
|
|
8161
|
-
/**
|
|
8162
|
-
* Start polling for updates
|
|
8163
|
-
* Domain-specific feature - not part of base class
|
|
8164
|
-
*/
|
|
8165
|
-
startPolling() {
|
|
8166
|
-
if (this.pollingTimer) return;
|
|
8167
|
-
const interval = this.config.pollingInterval ?? DEFAULT_POLLING_INTERVAL_MS;
|
|
8168
|
-
this.pollingTimer = setInterval(() => {
|
|
8169
|
-
this.fetchAll().catch((error) => {
|
|
8170
|
-
this.logError("Polling fetch failed", { error });
|
|
8171
|
-
});
|
|
8172
|
-
}, interval);
|
|
8173
|
-
this.logDebug("Polling started", { interval });
|
|
8174
|
-
}
|
|
8175
|
-
/**
|
|
8176
|
-
* Stop polling
|
|
8177
|
-
*/
|
|
8178
|
-
stopPolling() {
|
|
8179
|
-
if (this.pollingTimer) {
|
|
8180
|
-
clearInterval(this.pollingTimer);
|
|
8181
|
-
this.pollingTimer = null;
|
|
8182
|
-
this.logDebug("Polling stopped");
|
|
8183
|
-
}
|
|
8184
|
-
}
|
|
8185
|
-
// ─────────────────────────────────────────────────────────────────────────
|
|
8186
8233
|
// Demo Methods - fetchAll() with Query Examples
|
|
8187
8234
|
// ─────────────────────────────────────────────────────────────────────────
|
|
8235
|
+
// Note: startPolling() and stopPolling() are inherited from BaseFrontendDomainService
|
|
8188
8236
|
/**
|
|
8189
8237
|
* Demo: Fetch all examples with optional filters
|
|
8190
8238
|
* Demonstrates the fetchAll() method with typed query parameters
|