@foxford/den 1.0.0 → 1.0.2

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/index.cjs CHANGED
@@ -1,85 +1,21 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var __async = (__this, __arguments, generator) => {
20
- return new Promise((resolve, reject) => {
21
- var fulfilled = (value) => {
22
- try {
23
- step(generator.next(value));
24
- } catch (e) {
25
- reject(e);
26
- }
27
- };
28
- var rejected = (value) => {
29
- try {
30
- step(generator.throw(value));
31
- } catch (e) {
32
- reject(e);
33
- }
34
- };
35
- var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
36
- step((generator = generator.apply(__this, __arguments)).next());
37
- });
38
- };
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+
6
+
39
7
 
40
- // src/index.ts
41
- var src_exports = {};
42
- __export(src_exports, {
43
- ActivatableToken: () => ActivatableToken,
44
- ContainerManagerImpl: () => ContainerManagerImpl,
45
- ContainerManagerToken: () => ContainerManagerToken,
46
- GuardRunnerImpl: () => GuardRunnerImpl,
47
- GuardRunnerToken: () => GuardRunnerToken,
48
- NavigationManagerImpl: () => NavigationManagerImpl,
49
- NavigationManagerToken: () => NavigationManagerToken,
50
- RequestContextToken: () => RequestContextToken,
51
- SlotRegistry: () => SlotRegistry,
52
- SlotRegistryToken: () => SlotRegistryToken,
53
- StateCache: () => StateCache,
54
- StateRegistry: () => StateRegistry,
55
- StateRegistryToken: () => StateRegistryToken,
56
- StateSerializerImpl: () => StateSerializerImpl,
57
- StateSerializerToken: () => StateSerializerToken,
58
- createCore: () => createCore,
59
- defaultGlobalResolver: () => defaultGlobalResolver,
60
- defineActionGuard: () => defineActionGuard,
61
- defineApp: () => defineApp,
62
- defineExtension: () => defineExtension,
63
- defineGuard: () => defineGuard,
64
- defineLayer: () => defineLayer,
65
- defineLayout: () => defineLayout,
66
- defineRepository: () => defineRepository,
67
- defineService: () => defineService,
68
- defineSlot: () => defineSlot,
69
- defineViewModel: () => defineViewModel
70
- });
71
- module.exports = __toCommonJS(src_exports);
72
8
 
73
- // src/core/types.ts
74
- var import_ioc = require("@foxford/ioc");
75
- var ContainerManagerToken = (0, import_ioc.createToken)("core:ContainerManager");
76
- var GuardRunnerToken = (0, import_ioc.createToken)("core:GuardRunner");
77
- var NavigationManagerToken = (0, import_ioc.createToken)("core:NavigationManager");
78
- var StateSerializerToken = (0, import_ioc.createToken)("core:StateSerializer");
79
- var StateRegistryToken = (0, import_ioc.createToken)("core:StateRegistry");
80
- var SlotRegistryToken = (0, import_ioc.createToken)("core:SlotRegistry");
81
- var ActivatableToken = (0, import_ioc.createToken)("core:Activatable");
82
- var RequestContextToken = (0, import_ioc.createToken)("core:RequestContext");
9
+
10
+
11
+
12
+
13
+
14
+
15
+ var _chunk4FPCRHSMcjs = require('./chunk-4FPCRHSM.cjs');
16
+
17
+
18
+ var _chunkNRE6DV6Ocjs = require('./chunk-NRE6DV6O.cjs');
83
19
 
84
20
  // src/core/state-registry.ts
85
21
  var StateRegistry = class {
@@ -142,7 +78,7 @@ var ContainerManagerImpl = class {
142
78
  return existing;
143
79
  }
144
80
  const child = this.appContainer.createChild();
145
- child.bind(StateRegistryToken).toValue(new StateRegistry());
81
+ child.bind(_chunk4FPCRHSMcjs.StateRegistryToken).toValue(new StateRegistry());
146
82
  this.pageContainers.set(routeId, child);
147
83
  return child;
148
84
  }
@@ -152,7 +88,7 @@ var ContainerManagerImpl = class {
152
88
  * @param routeId - Идентификатор маршрута
153
89
  */
154
90
  destroyPageContainer(routeId) {
155
- return __async(this, null, function* () {
91
+ return _chunkNRE6DV6Ocjs.__async.call(void 0, this, null, function* () {
156
92
  const container = this.pageContainers.get(routeId);
157
93
  if (container === void 0) {
158
94
  return;
@@ -173,8 +109,8 @@ var ContainerManagerImpl = class {
173
109
  return existing;
174
110
  }
175
111
  const child = this.appContainer.createChild();
176
- child.bind(RequestContextToken).toValue(context);
177
- child.bind(StateRegistryToken).toValue(new StateRegistry());
112
+ child.bind(_chunk4FPCRHSMcjs.RequestContextToken).toValue(context);
113
+ child.bind(_chunk4FPCRHSMcjs.StateRegistryToken).toValue(new StateRegistry());
178
114
  this.requestContainers.set(requestId, child);
179
115
  return child;
180
116
  }
@@ -191,7 +127,7 @@ var ContainerManagerImpl = class {
191
127
  * @param requestId - Уникальный идентификатор запроса
192
128
  */
193
129
  destroyRequestContainer(requestId) {
194
- return __async(this, null, function* () {
130
+ return _chunkNRE6DV6Ocjs.__async.call(void 0, this, null, function* () {
195
131
  const container = this.requestContainers.get(requestId);
196
132
  if (container === void 0) {
197
133
  return;
@@ -213,7 +149,7 @@ var ContainerManagerImpl = class {
213
149
  return existing;
214
150
  }
215
151
  const child = parent.createChild();
216
- child.bind(StateRegistryToken).toValue(new StateRegistry());
152
+ child.bind(_chunk4FPCRHSMcjs.StateRegistryToken).toValue(new StateRegistry());
217
153
  this.ssrPageContainers.set(requestId, child);
218
154
  return child;
219
155
  }
@@ -224,7 +160,7 @@ var ContainerManagerImpl = class {
224
160
  * @param requestId - Уникальный идентификатор запроса
225
161
  */
226
162
  destroySsrPageContainer(requestId) {
227
- return __async(this, null, function* () {
163
+ return _chunkNRE6DV6Ocjs.__async.call(void 0, this, null, function* () {
228
164
  const container = this.ssrPageContainers.get(requestId);
229
165
  if (container === void 0) {
230
166
  return;
@@ -252,10 +188,10 @@ var GuardRunnerImpl = class {
252
188
  * @param container - Опциональный контейнер для резолвинга guards
253
189
  */
254
190
  runGuards(tokens, params, container) {
255
- return __async(this, null, function* () {
191
+ return _chunkNRE6DV6Ocjs.__async.call(void 0, this, null, function* () {
256
192
  const resolveFrom = container != null ? container : this.container;
257
193
  const results = yield Promise.all(
258
- tokens.map((token) => __async(this, null, function* () {
194
+ tokens.map((token) => _chunkNRE6DV6Ocjs.__async.call(void 0, this, null, function* () {
259
195
  const guard = yield resolveFrom.resolve(token);
260
196
  return guard.check(params);
261
197
  }))
@@ -344,7 +280,7 @@ var NavigationManagerImpl = class {
344
280
  * Состояние считается актуальным если история и текущий элемент согласованы.
345
281
  */
346
282
  checkFreshness() {
347
- return __async(this, null, function* () {
283
+ return _chunkNRE6DV6Ocjs.__async.call(void 0, this, null, function* () {
348
284
  var _a;
349
285
  const lastEntry = (_a = this._history.at(-1)) != null ? _a : null;
350
286
  return lastEntry === this.current;
@@ -374,7 +310,7 @@ var NavigationManagerImpl = class {
374
310
  * @returns Результат проверки
375
311
  */
376
312
  runLeaveGuards(from, to) {
377
- return __async(this, null, function* () {
313
+ return _chunkNRE6DV6Ocjs.__async.call(void 0, this, null, function* () {
378
314
  for (const interceptor of this.interceptors) {
379
315
  const result = yield interceptor.beforeNavigate(from, to);
380
316
  if (!result.allow) {
@@ -473,10 +409,10 @@ var StateSerializerImpl = class {
473
409
  */
474
410
  // eslint-disable-next-line @typescript-eslint/class-methods-use-this
475
411
  getRegistry(container) {
476
- if (!container.has(StateRegistryToken)) {
412
+ if (!container.has(_chunk4FPCRHSMcjs.StateRegistryToken)) {
477
413
  return void 0;
478
414
  }
479
- const resolved = container.resolve(StateRegistryToken);
415
+ const resolved = container.resolve(_chunk4FPCRHSMcjs.StateRegistryToken);
480
416
  return resolved instanceof Promise ? void 0 : resolved;
481
417
  }
482
418
  /**
@@ -520,7 +456,7 @@ var StateSerializerImpl = class {
520
456
  * @param params - Параметры маршрута
521
457
  */
522
458
  activateAll(container, params) {
523
- return __async(this, null, function* () {
459
+ return _chunkNRE6DV6Ocjs.__async.call(void 0, this, null, function* () {
524
460
  const registry = this.getRegistry(container);
525
461
  if (registry === void 0) {
526
462
  return;
@@ -533,34 +469,6 @@ var StateSerializerImpl = class {
533
469
  }
534
470
  };
535
471
 
536
- // src/core/slot-registry.ts
537
- var SlotRegistry = class {
538
- constructor() {
539
- /** Слоты по имени. Повторная регистрация с тем же именем перезаписывает. */
540
- this.slots = /* @__PURE__ */ new Map();
541
- }
542
- /**
543
- * Регистрирует слот.
544
- * @param entry - Запись слота (имя + непрозрачный view)
545
- */
546
- add(entry) {
547
- this.slots.set(entry.name, entry);
548
- }
549
- /**
550
- * Возвращает слот по имени.
551
- * @param name - Имя слота
552
- */
553
- get(name) {
554
- return this.slots.get(name);
555
- }
556
- /**
557
- * Возвращает все зарегистрированные слоты.
558
- */
559
- all() {
560
- return [...this.slots.values()];
561
- }
562
- };
563
-
564
472
  // src/core/state-cache.ts
565
473
  var StateCache = class {
566
474
  /**
@@ -609,19 +517,19 @@ var StateCache = class {
609
517
  };
610
518
 
611
519
  // src/core/create-core.ts
612
- var import_ioc2 = require("@foxford/ioc");
520
+ var _ioc = require('@foxford/ioc');
613
521
  function createCore(options = {}) {
614
522
  var _a;
615
- const container = (_a = options.container) != null ? _a : new import_ioc2.Container();
523
+ const container = (_a = options.container) != null ? _a : new (0, _ioc.Container)();
616
524
  const containerManager = new ContainerManagerImpl(container);
617
525
  const guardRunner = new GuardRunnerImpl(container);
618
526
  const navigationManager = new NavigationManagerImpl();
619
527
  const stateSerializer = new StateSerializerImpl();
620
528
  const stateCache = new StateCache();
621
- container.bind(ContainerManagerToken).toValue(containerManager);
622
- container.bind(GuardRunnerToken).toValue(guardRunner);
623
- container.bind(NavigationManagerToken).toValue(navigationManager);
624
- container.bind(StateSerializerToken).toValue(stateSerializer);
529
+ container.bind(_chunk4FPCRHSMcjs.ContainerManagerToken).toValue(containerManager);
530
+ container.bind(_chunk4FPCRHSMcjs.GuardRunnerToken).toValue(guardRunner);
531
+ container.bind(_chunk4FPCRHSMcjs.NavigationManagerToken).toValue(navigationManager);
532
+ container.bind(_chunk4FPCRHSMcjs.StateSerializerToken).toValue(stateSerializer);
625
533
  return {
626
534
  container,
627
535
  containerManager,
@@ -633,10 +541,10 @@ function createCore(options = {}) {
633
541
  }
634
542
 
635
543
  // src/core/default-resolver.ts
636
- var import_ioc3 = require("@foxford/ioc");
544
+
637
545
  var defaultGlobalResolver = (token) => {
638
546
  var _a;
639
- let container = (0, import_ioc3.getGlobalContainer)();
547
+ let container = _ioc.getGlobalContainer.call(void 0, );
640
548
  while (container) {
641
549
  if (container.has(token)) {
642
550
  return container.resolve(token);
@@ -649,156 +557,8 @@ var defaultGlobalResolver = (token) => {
649
557
  });
650
558
  };
651
559
 
652
- // src/define-service.ts
653
- var import_ioc5 = require("@foxford/ioc");
654
-
655
- // src/logger.ts
656
- var import_ioc4 = require("@foxford/ioc");
657
- var import_logger = require("@foxford/logger");
658
- var logger = import_logger.log.getLogger("@foxford/den");
659
- var LoggerToken = (0, import_ioc4.createToken)("den:Logger");
660
- function scopeLogger(container) {
661
- if (container.has(LoggerToken)) {
662
- const resolved = container.resolve(LoggerToken);
663
- if (!(resolved instanceof Promise)) {
664
- return resolved;
665
- }
666
- }
667
- return logger;
668
- }
669
- function unitLogger(container, name) {
670
- var _a;
671
- const base = scopeLogger(container);
672
- return (_a = base.getLogger(name)) != null ? _a : base;
673
- }
674
-
675
- // src/define-service.ts
676
- function defineService(token, options) {
677
- const { requires, create, activate, deactivate, serialize, deserialize, scope } = options;
678
- const requireTokens = requires != null ? requires : [];
679
- const participatesInState = serialize !== void 0 || deserialize !== void 0;
680
- return {
681
- __meta: { requires: requireTokens, scope: scope != null ? scope : "app" },
682
- __type: "service",
683
- /**
684
- * Регистрирует сервис в IoC-контейнере как Singleton.
685
- * Если передана create — биндит экземпляр класса напрямую.
686
- * Иначе — биндит Activatable-обёртку с хуками lifecycle.
687
- * Если объявлены serialize/deserialize — при создании экземпляра сервис
688
- * регистрируется участником в StateRegistry этого контейнера.
689
- * @param container - Контейнер для регистрации
690
- */
691
- register(container) {
692
- const unitLog = unitLogger(container, token.description);
693
- const factory = (0, import_ioc5.inject)(requireTokens, (...args) => {
694
- unitLog.debug(`\u0441\u043E\u0437\u0434\u0430\u043D\u0438\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u0430 (${create ? "\u0444\u0430\u0431\u0440\u0438\u043A\u0430" : "lifecycle-\u043E\u0431\u0451\u0440\u0442\u043A\u0430"})`);
695
- let instance;
696
- if (create) {
697
- instance = create(args);
698
- } else {
699
- const service = {
700
- activate(params) {
701
- return activate == null ? void 0 : activate(args, params);
702
- },
703
- deactivate() {
704
- return deactivate == null ? void 0 : deactivate(args);
705
- }
706
- };
707
- instance = service;
708
- }
709
- if (participatesInState) {
710
- unitLog.debug("\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044F \u0443\u0447\u0430\u0441\u0442\u043D\u0438\u043A\u043E\u043C StateRegistry (serialize/deserialize)");
711
- registerStateParticipant(container, token, instance, args, serialize, deserialize);
712
- }
713
- return instance;
714
- });
715
- container.bind(token).toFactory(factory, { lifecycle: import_ioc5.Lifecycle.Singleton });
716
- unitLog.debug(`\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044F \u0441\u0435\u0440\u0432\u0438\u0441\u0430 (scope=${scope != null ? scope : "app"}, requires=${requireTokens.length})`);
717
- },
718
- token
719
- };
720
- }
721
- function registerStateParticipant(container, token, instance, deps, serialize, deserialize) {
722
- if (!container.has(StateRegistryToken)) {
723
- return;
724
- }
725
- const resolved = container.resolve(StateRegistryToken);
726
- if (resolved instanceof Promise) {
727
- return;
728
- }
729
- ;
730
- resolved.add(token.description, {
731
- activate: (params) => {
732
- var _a;
733
- return (_a = instance.activate) == null ? void 0 : _a.call(instance, params);
734
- },
735
- fromJSON: deserialize ? (data) => deserialize(deps, data) : void 0,
736
- toJSON: serialize ? () => serialize(deps) : void 0
737
- });
738
- }
739
-
740
- // src/define-view-model.ts
741
- var import_ioc6 = require("@foxford/ioc");
742
-
743
- // src/adapter.ts
744
- var activeResolver = null;
745
- function resolveDefinition(token) {
746
- if (activeResolver === null) {
747
- throw new Error(
748
- `den/adapter: \u0440\u0435\u0437\u043E\u043B\u0432\u0435\u0440 \u043D\u0435 \u0443\u0441\u0442\u0430\u043D\u043E\u0432\u043B\u0435\u043D \u0434\u043B\u044F \xAB${token.description}\xBB \u2014 \u043D\u0438 \u043E\u0434\u0438\u043D host-\u0430\u0434\u0430\u043F\u0442\u0435\u0440 \u043D\u0435 \u0432\u044B\u0437\u0432\u0430\u043B installResolver()`
749
- );
750
- }
751
- return activeResolver(token);
752
- }
753
-
754
- // src/define-view-model.ts
755
- function defineViewModel(token, options) {
756
- const { requires, create } = options;
757
- const requireTokens = requires != null ? requires : [];
758
- return {
759
- __meta: { requires: requireTokens },
760
- __type: "view-model",
761
- /**
762
- * Регистрирует VM в IoC-контейнере как Singleton.
763
- * Зависимости из requires резолвятся автоматически через inject.
764
- * @param container - Контейнер для регистрации
765
- */
766
- register(container) {
767
- const unitLog = unitLogger(container, token.description);
768
- const factory = (0, import_ioc6.inject)(requireTokens, (...args) => {
769
- unitLog.debug("\u0441\u043E\u0437\u0434\u0430\u043D\u0438\u0435 view-model");
770
- return create(args);
771
- });
772
- container.bind(token).toFactory(factory, { lifecycle: import_ioc6.Lifecycle.Singleton });
773
- unitLog.debug(`\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044F view-model (requires=${requireTokens.length})`);
774
- },
775
- /**
776
- * Резолвит VM через стратегию активного host-адаптера.
777
- * Вызывайте когда контейнер уже инициализирован (в render-контексте).
778
- *
779
- * Дескриптор не знает, откуда берётся инстанс — стратегию ставит адаптер
780
- * через `installResolver()` (см. `@foxford/den/adapter`):
781
- * - Vike (дефолт) — async/global: подъём по parent-chain, pending Promise при промахе;
782
- * - Next — sync/island: контейнер острова из React-контекста.
783
- *
784
- * @returns Экземпляр VM или Promise с экземпляром
785
- */
786
- resolve() {
787
- return resolveDefinition(token);
788
- },
789
- token,
790
- /**
791
- * Псевдоним для resolve(). Резолвит VM через стратегию активного адаптера.
792
- * @returns Экземпляр VM или Promise с экземпляром
793
- */
794
- use() {
795
- return this.resolve();
796
- }
797
- };
798
- }
799
-
800
560
  // src/define-guard.ts
801
- var import_ioc7 = require("@foxford/ioc");
561
+
802
562
  function defineGuard(token, options) {
803
563
  const { requires, create, check } = options;
804
564
  const requireTokens = requires != null ? requires : [];
@@ -813,8 +573,8 @@ function defineGuard(token, options) {
813
573
  */
814
574
  register(container) {
815
575
  if (create) {
816
- const factory = (0, import_ioc7.inject)(requireTokens, (...args) => create(args));
817
- container.bind(token).toFactory(factory, { lifecycle: import_ioc7.Lifecycle.Singleton });
576
+ const factory = _ioc.inject.call(void 0, requireTokens, (...args) => create(args));
577
+ container.bind(token).toFactory(factory, { lifecycle: _ioc.Lifecycle.Singleton });
818
578
  } else if (check) {
819
579
  const guard = { check };
820
580
  container.bind(token).toValue(guard);
@@ -824,32 +584,6 @@ function defineGuard(token, options) {
824
584
  };
825
585
  }
826
586
 
827
- // src/define-repository.ts
828
- var import_ioc8 = require("@foxford/ioc");
829
- function defineRepository(token, options) {
830
- const { requires, create, scope } = options;
831
- const requireTokens = requires != null ? requires : [];
832
- return {
833
- __meta: { requires: requireTokens, scope: scope != null ? scope : "app" },
834
- __type: "repository",
835
- /**
836
- * Регистрирует репозиторий в IoC-контейнере как Singleton.
837
- * Зависимости из requires резолвятся автоматически через inject.
838
- * @param container - Контейнер для регистрации
839
- */
840
- register(container) {
841
- const unitLog = unitLogger(container, token.description);
842
- const factory = (0, import_ioc8.inject)(requireTokens, (...args) => {
843
- unitLog.debug("\u0441\u043E\u0437\u0434\u0430\u043D\u0438\u0435 \u0440\u0435\u043F\u043E\u0437\u0438\u0442\u043E\u0440\u0438\u044F");
844
- return create(args);
845
- });
846
- container.bind(token).toFactory(factory, { lifecycle: import_ioc8.Lifecycle.Singleton });
847
- unitLog.debug(`\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044F \u0440\u0435\u043F\u043E\u0437\u0438\u0442\u043E\u0440\u0438\u044F (scope=${scope != null ? scope : "app"}, requires=${requireTokens.length})`);
848
- },
849
- token
850
- };
851
- }
852
-
853
587
  // src/define-app.ts
854
588
  function defineApp(token, options = {}) {
855
589
  var _a, _b, _c;
@@ -873,7 +607,7 @@ function defineApp(token, options = {}) {
873
607
  }
874
608
 
875
609
  // src/define-extension.ts
876
- var import_ioc9 = require("@foxford/ioc");
610
+
877
611
  function defineExtension(token, options = {}) {
878
612
  const { requires, activate, deactivate } = options;
879
613
  const requireTokens = requires != null ? requires : [];
@@ -886,7 +620,7 @@ function defineExtension(token, options = {}) {
886
620
  * @param container - Контейнер для регистрации
887
621
  */
888
622
  register(container) {
889
- const factory = (0, import_ioc9.inject)(requireTokens, (...args) => {
623
+ const factory = _ioc.inject.call(void 0, requireTokens, (...args) => {
890
624
  const config = {
891
625
  __extensionConfig: true,
892
626
  activate() {
@@ -898,14 +632,14 @@ function defineExtension(token, options = {}) {
898
632
  };
899
633
  return config;
900
634
  });
901
- container.bind(token).toFactory(factory, { lifecycle: import_ioc9.Lifecycle.Singleton });
635
+ container.bind(token).toFactory(factory, { lifecycle: _ioc.Lifecycle.Singleton });
902
636
  },
903
637
  token
904
638
  };
905
639
  }
906
640
 
907
641
  // src/define-action-guard.ts
908
- var import_ioc10 = require("@foxford/ioc");
642
+
909
643
  function defineActionGuard(token, options) {
910
644
  const { requires, intercept } = options;
911
645
  const requireTokens = requires != null ? requires : [];
@@ -918,7 +652,7 @@ function defineActionGuard(token, options) {
918
652
  * @param container - Контейнер для регистрации
919
653
  */
920
654
  register(container) {
921
- const factory = (0, import_ioc10.inject)(requireTokens, (...args) => {
655
+ const factory = _ioc.inject.call(void 0, requireTokens, (...args) => {
922
656
  const guard = {
923
657
  intercept(next) {
924
658
  return intercept(args, next);
@@ -926,7 +660,7 @@ function defineActionGuard(token, options) {
926
660
  };
927
661
  return guard;
928
662
  });
929
- container.bind(token).toFactory(factory, { lifecycle: import_ioc10.Lifecycle.Singleton });
663
+ container.bind(token).toFactory(factory, { lifecycle: _ioc.Lifecycle.Singleton });
930
664
  },
931
665
  token
932
666
  };
@@ -953,30 +687,6 @@ function defineLayout(token, options = {}) {
953
687
  };
954
688
  }
955
689
 
956
- // src/define-slot.ts
957
- function defineSlot({ name, view, units = [] }) {
958
- return {
959
- __type: "slot",
960
- name,
961
- register(container) {
962
- const slotLog = unitLogger(container, `slot:${name}`);
963
- for (const unit of units) {
964
- unit.register(container);
965
- }
966
- const registry = container.has(SlotRegistryToken) ? container.resolve(SlotRegistryToken) : (() => {
967
- const created = new SlotRegistry();
968
- container.bind(SlotRegistryToken).toValue(created);
969
- slotLog.debug("\u0441\u043E\u0437\u0434\u0430\u043D SlotRegistry \u043A\u043E\u043D\u0442\u0435\u0439\u043D\u0435\u0440\u0430");
970
- return created;
971
- })();
972
- registry.add({ name, view });
973
- slotLog.debug(`\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044F \u0441\u043B\u043E\u0442\u0430 (units=${units.length})`);
974
- },
975
- units,
976
- view
977
- };
978
- }
979
-
980
690
  // src/define-layer.ts
981
691
  function defineLayer(token, options) {
982
692
  const { name, adapter } = options;
@@ -995,33 +705,32 @@ function defineLayer(token, options) {
995
705
  token
996
706
  };
997
707
  }
998
- // Annotate the CommonJS export names for ESM import in node:
999
- 0 && (module.exports = {
1000
- ActivatableToken,
1001
- ContainerManagerImpl,
1002
- ContainerManagerToken,
1003
- GuardRunnerImpl,
1004
- GuardRunnerToken,
1005
- NavigationManagerImpl,
1006
- NavigationManagerToken,
1007
- RequestContextToken,
1008
- SlotRegistry,
1009
- SlotRegistryToken,
1010
- StateCache,
1011
- StateRegistry,
1012
- StateRegistryToken,
1013
- StateSerializerImpl,
1014
- StateSerializerToken,
1015
- createCore,
1016
- defaultGlobalResolver,
1017
- defineActionGuard,
1018
- defineApp,
1019
- defineExtension,
1020
- defineGuard,
1021
- defineLayer,
1022
- defineLayout,
1023
- defineRepository,
1024
- defineService,
1025
- defineSlot,
1026
- defineViewModel
1027
- });
708
+
709
+
710
+
711
+
712
+
713
+
714
+
715
+
716
+
717
+
718
+
719
+
720
+
721
+
722
+
723
+
724
+
725
+
726
+
727
+
728
+
729
+
730
+
731
+
732
+
733
+
734
+
735
+
736
+ exports.ActivatableToken = _chunk4FPCRHSMcjs.ActivatableToken; exports.ContainerManagerImpl = ContainerManagerImpl; exports.ContainerManagerToken = _chunk4FPCRHSMcjs.ContainerManagerToken; exports.GuardRunnerImpl = GuardRunnerImpl; exports.GuardRunnerToken = _chunk4FPCRHSMcjs.GuardRunnerToken; exports.NavigationManagerImpl = NavigationManagerImpl; exports.NavigationManagerToken = _chunk4FPCRHSMcjs.NavigationManagerToken; exports.RequestContextToken = _chunk4FPCRHSMcjs.RequestContextToken; exports.SlotRegistry = _chunk4FPCRHSMcjs.SlotRegistry; exports.SlotRegistryToken = _chunk4FPCRHSMcjs.SlotRegistryToken; exports.StateCache = StateCache; exports.StateRegistry = StateRegistry; exports.StateRegistryToken = _chunk4FPCRHSMcjs.StateRegistryToken; exports.StateSerializerImpl = StateSerializerImpl; exports.StateSerializerToken = _chunk4FPCRHSMcjs.StateSerializerToken; exports.createCore = createCore; exports.defaultGlobalResolver = defaultGlobalResolver; exports.defineActionGuard = defineActionGuard; exports.defineApp = defineApp; exports.defineExtension = defineExtension; exports.defineGuard = defineGuard; exports.defineLayer = defineLayer; exports.defineLayout = defineLayout; exports.defineRepository = _chunk4FPCRHSMcjs.defineRepository; exports.defineService = _chunk4FPCRHSMcjs.defineService; exports.defineSlot = _chunk4FPCRHSMcjs.defineSlot; exports.defineViewModel = _chunk4FPCRHSMcjs.defineViewModel;