@simonbackx/vue-app-navigation 2.0.0-alpha.9 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/main.css CHANGED
@@ -199,148 +199,4 @@
199
199
  min-width: 0;
200
200
  min-height: 100vh;
201
201
  min-height: calc(var(--vh, 1vh) * 100);
202
- }.sheet-old {
203
- position: fixed;
204
- left: 0;
205
- top: 0;
206
- bottom: 0;
207
- right: 0;
208
- display: flex;
209
- align-items: center;
210
- justify-content: center;
211
- z-index: 10000;
212
- padding: 20px;
213
- contain: size layout style paint;
214
- }
215
- .sheet-old .navigation-controller {
216
- transition: height 0.25s cubic-bezier(0.4, 0, 0.2, 1);
217
- will-change: height;
218
- }
219
- .sheet-old:after {
220
- background: rgba(0, 0, 0, 0.7);
221
- content: "";
222
- position: absolute;
223
- left: 0;
224
- top: 0;
225
- bottom: 0;
226
- right: 0;
227
- opacity: 1;
228
- contain: size layout style paint;
229
- will-change: opacity;
230
- transition: opacity 0.3s;
231
- z-index: 0;
232
- }
233
- .sheet-old ~ .sheet:after {
234
- display: none;
235
- }
236
- .sheet-old > div {
237
- max-width: 800px;
238
- background: white;
239
- background: var(--color-white, white);
240
- border-radius: 5px;
241
- overflow: hidden;
242
- max-height: 100vh;
243
- max-height: calc(100vh - 80px);
244
- max-height: calc(var(--vh, 1vh) * 100 - 80px);
245
- overflow: hidden;
246
- overflow-y: auto;
247
- -webkit-overflow-scrolling: touch;
248
- overscroll-behavior-y: contain;
249
- box-sizing: border-box;
250
- --saved-vh: var(--vh, 1vh);
251
- transform: translate3d(0, 0, 0);
252
- transform-origin: 50% 50%;
253
- z-index: 1;
254
- contain: layout style paint;
255
- will-change: transform, opacity, scroll-position;
256
- transition: transform 0.3s, opacity 0.3s;
257
- }
258
- .sheet-old > div > * {
259
- --vh: calc(var(--saved-vh, 1vh) - 0.8px);
260
- }
261
- .sheet-old.fade-enter-active:after {
262
- transition: opacity 0.3s;
263
- }
264
- .sheet-old.fade-enter-active > div {
265
- transition: transform 0.3s cubic-bezier(0, 0, 0.2, 1), opacity 0.3s;
266
- }
267
- .sheet-old.fade-leave-active:after {
268
- transition: opacity 0.3s;
269
- }
270
- .sheet-old.fade-leave-active > div {
271
- transition: transform 0.3s cubic-bezier(0.4, 0, 1, 1), opacity 0.3s;
272
- }
273
- .sheet-old.fade-enter-from:after, .sheet-old.fade-leave-to:after {
274
- opacity: 0;
275
- }
276
- .sheet-old.fade-enter-from > div, .sheet-old.fade-leave-to > div {
277
- transform: translate(0, 30vh);
278
- opacity: 0;
279
- }.side-view {
280
- background: rgba(0, 0, 0, 0.7);
281
- position: fixed;
282
- left: 0;
283
- top: 0;
284
- bottom: 0;
285
- right: 0;
286
- z-index: 10000;
287
- visibility: visible;
288
- opacity: 1;
289
- transition: background-color 0.3s, opacity 0.3s, visibility step-start 0.3s;
290
- }
291
- .side-view ~ .side-view {
292
- background-color: rgba(0, 0, 0, 0.4);
293
- }
294
- .side-view > div {
295
- position: fixed;
296
- right: 0;
297
- top: 0;
298
- bottom: 0;
299
- width: 100%;
300
- max-width: 800px;
301
- background: white;
302
- background: var(--color-white, white);
303
- border-radius: 0px;
304
- overflow: hidden;
305
- height: 100%;
306
- overflow: hidden;
307
- overflow-y: auto;
308
- -webkit-overflow-scrolling: touch;
309
- overscroll-behavior-y: contain;
310
- box-sizing: border-box;
311
- transform: translate3d(0, 0, 0);
312
- transition: transform 0.3s, border-radius 0.3s;
313
- transform-origin: 0% 50%;
314
- }
315
- .side-view.push-down-full {
316
- transition: background-color 0.3s, opacity 0.3s, visibility step-end 0.3s;
317
- visibility: hidden;
318
- opacity: 0;
319
- background-color: rgba(0, 0, 0, 0.6);
320
- }
321
- .side-view.push-down-full > div {
322
- transform: scale(0.9, 0.9) translate3d(-15px, 0, 0);
323
- border-radius: 5px;
324
- }
325
- .side-view.push-down {
326
- background-color: rgba(0, 0, 0, 0.6);
327
- }
328
- .side-view.push-down > div {
329
- transform: scale(0.95, 0.95) translate3d(-10px, 0, 0);
330
- border-radius: 5px;
331
- }
332
- .side-view.fade-enter-active, .side-view.fade-leave-active, .side-view[data-extended-enter=true] {
333
- position: fixed;
334
- }
335
- .side-view.fade-enter-active > div, .side-view.fade-leave-active > div, .side-view[data-extended-enter=true] > div {
336
- transition: transform 0.3s;
337
- }
338
- .side-view.fade-enter-from, .side-view.fade-leave-to {
339
- background-color: rgba(0, 0, 0, 0);
340
- }
341
- .side-view.fade-enter-from > div, .side-view.fade-leave-to > div {
342
- transform: translate(100%, 0);
343
- }
344
- .side-view.fade-enter-active, .side-view.fade-leave-active {
345
- z-index: 10000;
346
202
  }
@@ -52,7 +52,6 @@ export declare class ComponentWithProperties {
52
52
  * This will get called when the user returned to this component
53
53
  */
54
54
  returnToHistoryIndex(): boolean;
55
- logHistoryOwners(): void;
56
55
  componentInstance(): ComponentPublicInstance | null;
57
56
  shouldNavigateAway(): Promise<boolean>;
58
57
  destroy(vnode: VNode): void;
@@ -17,10 +17,18 @@ declare class HistoryManagerStatic {
17
17
  historyQueue: (() => Promise<void> | void)[];
18
18
  isQueueRunning: boolean;
19
19
  changeUrlTimeout: NodeJS.Timeout | null;
20
+ titleSuffix: string;
21
+ pageLoadedAt: number;
22
+ listeners: Map<unknown, () => void>;
23
+ addListener(owner: unknown, handler: () => void): void;
24
+ removeListener(owner: unknown): void;
25
+ callListeners(): void;
20
26
  private addToQueue;
21
27
  private runQueue;
22
28
  private go;
23
29
  setUrl(url: string, title?: string, index?: number): void;
30
+ updateUrl(): void;
31
+ formatTitle(title: string): string;
24
32
  /**
25
33
  * Set the saved title for a given state. If that state is the current one, it will also get set immediately
26
34
  */
@@ -69,7 +69,6 @@ export declare const ModalMixin: import('vue').DefineComponent<{}, {}, {}, {}, {
69
69
  setUrl: (url: string, title?: string | undefined) => void;
70
70
  setTitle: (title: string) => void;
71
71
  returnToHistoryIndex: () => boolean;
72
- logHistoryOwners: () => void;
73
72
  componentInstance: () => import('vue').ComponentPublicInstance | null;
74
73
  shouldNavigateAway: () => Promise<boolean>;
75
74
  destroy: (vnode: import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
@@ -140,7 +139,6 @@ export declare const ModalMixin: import('vue').DefineComponent<{}, {}, {}, {}, {
140
139
  setUrl: (url: string, title?: string | undefined) => void;
141
140
  setTitle: (title: string) => void;
142
141
  returnToHistoryIndex: () => boolean;
143
- logHistoryOwners: () => void;
144
142
  componentInstance: () => import('vue').ComponentPublicInstance | null;
145
143
  shouldNavigateAway: () => Promise<boolean>;
146
144
  destroy: (vnode: import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
@@ -174,15 +172,22 @@ export declare const ModalMixin: import('vue').DefineComponent<{}, {}, {}, {}, {
174
172
  onShowDetail?: ((...args: any[]) => any) | undefined;
175
173
  onPresent?: ((...args: any[]) => any) | undefined;
176
174
  }, unknown, {
177
- components: import('./ComponentWithProperties').ComponentWithProperties[];
178
- mainComponent: import('./ComponentWithProperties').ComponentWithProperties | null;
175
+ components: import('vue').Raw<import('./ComponentWithProperties').ComponentWithProperties>[];
176
+ mainComponent: import('vue').Raw<import('./ComponentWithProperties').ComponentWithProperties> | null;
179
177
  transitionName: string;
180
178
  savedScrollPositions: number[];
181
179
  nextScrollPosition: number;
182
180
  previousScrollPosition: number;
183
181
  nextInternalScrollPosition: number;
184
182
  savedInternalScrollPositions: number[];
183
+ asyncQueue: (() => Promise<void>)[];
184
+ asyncQueueRunning: boolean;
185
+ cachedProvides: Map<number, any>;
185
186
  }, {}, {
187
+ cacheComponentProvides(newComponent: import('./ComponentWithProperties').ComponentWithProperties): void;
188
+ provideForComponent(key: number): any;
189
+ runQueue<T>(run: () => Promise<T>): Promise<T>;
190
+ runQueueIfNeeded(): void;
186
191
  freezeSize(): void;
187
192
  growSize(width: number, height: number): void;
188
193
  unfreezeSize(): void;
@@ -262,15 +267,22 @@ export declare const ModalMixin: import('vue').DefineComponent<{}, {}, {}, {}, {
262
267
  onShowDetail?: ((...args: any[]) => any) | undefined;
263
268
  onPresent?: ((...args: any[]) => any) | undefined;
264
269
  }, {}, {
265
- components: import('./ComponentWithProperties').ComponentWithProperties[];
266
- mainComponent: import('./ComponentWithProperties').ComponentWithProperties | null;
270
+ components: import('vue').Raw<import('./ComponentWithProperties').ComponentWithProperties>[];
271
+ mainComponent: import('vue').Raw<import('./ComponentWithProperties').ComponentWithProperties> | null;
267
272
  transitionName: string;
268
273
  savedScrollPositions: number[];
269
274
  nextScrollPosition: number;
270
275
  previousScrollPosition: number;
271
276
  nextInternalScrollPosition: number;
272
277
  savedInternalScrollPositions: number[];
278
+ asyncQueue: (() => Promise<void>)[];
279
+ asyncQueueRunning: boolean;
280
+ cachedProvides: Map<number, any>;
273
281
  }, {}, {
282
+ cacheComponentProvides(newComponent: import('./ComponentWithProperties').ComponentWithProperties): void;
283
+ provideForComponent(key: number): any;
284
+ runQueue<T>(run: () => Promise<T>): Promise<T>;
285
+ runQueueIfNeeded(): void;
274
286
  freezeSize(): void;
275
287
  growSize(width: number, height: number): void;
276
288
  unfreezeSize(): void;
@@ -431,7 +443,6 @@ export declare const ModalMixin: import('vue').DefineComponent<{}, {}, {}, {}, {
431
443
  setUrl: (url: string, title?: string | undefined) => void;
432
444
  setTitle: (title: string) => void;
433
445
  returnToHistoryIndex: () => boolean;
434
- logHistoryOwners: () => void;
435
446
  componentInstance: () => import('vue').ComponentPublicInstance | null;
436
447
  shouldNavigateAway: () => Promise<boolean>;
437
448
  destroy: (vnode: import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
@@ -502,7 +513,6 @@ export declare const ModalMixin: import('vue').DefineComponent<{}, {}, {}, {}, {
502
513
  setUrl: (url: string, title?: string | undefined) => void;
503
514
  setTitle: (title: string) => void;
504
515
  returnToHistoryIndex: () => boolean;
505
- logHistoryOwners: () => void;
506
516
  componentInstance: () => import('vue').ComponentPublicInstance | null;
507
517
  shouldNavigateAway: () => Promise<boolean>;
508
518
  destroy: (vnode: import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
@@ -536,15 +546,22 @@ export declare const ModalMixin: import('vue').DefineComponent<{}, {}, {}, {}, {
536
546
  onShowDetail?: ((...args: any[]) => any) | undefined;
537
547
  onPresent?: ((...args: any[]) => any) | undefined;
538
548
  }, unknown, {
539
- components: import('./ComponentWithProperties').ComponentWithProperties[];
540
- mainComponent: import('./ComponentWithProperties').ComponentWithProperties | null;
549
+ components: import('vue').Raw<import('./ComponentWithProperties').ComponentWithProperties>[];
550
+ mainComponent: import('vue').Raw<import('./ComponentWithProperties').ComponentWithProperties> | null;
541
551
  transitionName: string;
542
552
  savedScrollPositions: number[];
543
553
  nextScrollPosition: number;
544
554
  previousScrollPosition: number;
545
555
  nextInternalScrollPosition: number;
546
556
  savedInternalScrollPositions: number[];
557
+ asyncQueue: (() => Promise<void>)[];
558
+ asyncQueueRunning: boolean;
559
+ cachedProvides: Map<number, any>;
547
560
  }, {}, {
561
+ cacheComponentProvides(newComponent: import('./ComponentWithProperties').ComponentWithProperties): void;
562
+ provideForComponent(key: number): any;
563
+ runQueue<T>(run: () => Promise<T>): Promise<T>;
564
+ runQueueIfNeeded(): void;
548
565
  freezeSize(): void;
549
566
  growSize(width: number, height: number): void;
550
567
  unfreezeSize(): void;
@@ -624,15 +641,22 @@ export declare const ModalMixin: import('vue').DefineComponent<{}, {}, {}, {}, {
624
641
  onShowDetail?: ((...args: any[]) => any) | undefined;
625
642
  onPresent?: ((...args: any[]) => any) | undefined;
626
643
  }, {}, {
627
- components: import('./ComponentWithProperties').ComponentWithProperties[];
628
- mainComponent: import('./ComponentWithProperties').ComponentWithProperties | null;
644
+ components: import('vue').Raw<import('./ComponentWithProperties').ComponentWithProperties>[];
645
+ mainComponent: import('vue').Raw<import('./ComponentWithProperties').ComponentWithProperties> | null;
629
646
  transitionName: string;
630
647
  savedScrollPositions: number[];
631
648
  nextScrollPosition: number;
632
649
  previousScrollPosition: number;
633
650
  nextInternalScrollPosition: number;
634
651
  savedInternalScrollPositions: number[];
652
+ asyncQueue: (() => Promise<void>)[];
653
+ asyncQueueRunning: boolean;
654
+ cachedProvides: Map<number, any>;
635
655
  }, {}, {
656
+ cacheComponentProvides(newComponent: import('./ComponentWithProperties').ComponentWithProperties): void;
657
+ provideForComponent(key: number): any;
658
+ runQueue<T>(run: () => Promise<T>): Promise<T>;
659
+ runQueueIfNeeded(): void;
636
660
  freezeSize(): void;
637
661
  growSize(width: number, height: number): void;
638
662
  unfreezeSize(): void;
@@ -68,7 +68,6 @@ declare const ModalStackComponent: import('vue').DefineComponent<{
68
68
  setUrl: (url: string, title?: string | undefined) => void;
69
69
  setTitle: (title: string) => void;
70
70
  returnToHistoryIndex: () => boolean;
71
- logHistoryOwners: () => void;
72
71
  componentInstance: () => import('vue').ComponentPublicInstance | null;
73
72
  shouldNavigateAway: () => Promise<boolean>;
74
73
  destroy: (vnode: import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
@@ -139,7 +138,6 @@ declare const ModalStackComponent: import('vue').DefineComponent<{
139
138
  setUrl: (url: string, title?: string | undefined) => void;
140
139
  setTitle: (title: string) => void;
141
140
  returnToHistoryIndex: () => boolean;
142
- logHistoryOwners: () => void;
143
141
  componentInstance: () => import('vue').ComponentPublicInstance | null;
144
142
  shouldNavigateAway: () => Promise<boolean>;
145
143
  destroy: (vnode: import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
@@ -173,15 +171,22 @@ declare const ModalStackComponent: import('vue').DefineComponent<{
173
171
  onShowDetail?: ((...args: any[]) => any) | undefined;
174
172
  onPresent?: ((...args: any[]) => any) | undefined;
175
173
  }, unknown, {
176
- components: ComponentWithProperties[];
177
- mainComponent: ComponentWithProperties | null;
174
+ components: import('vue').Raw<ComponentWithProperties>[];
175
+ mainComponent: import('vue').Raw<ComponentWithProperties> | null;
178
176
  transitionName: string;
179
177
  savedScrollPositions: number[];
180
178
  nextScrollPosition: number;
181
179
  previousScrollPosition: number;
182
180
  nextInternalScrollPosition: number;
183
181
  savedInternalScrollPositions: number[];
182
+ asyncQueue: (() => Promise<void>)[];
183
+ asyncQueueRunning: boolean;
184
+ cachedProvides: Map<number, any>;
184
185
  }, {}, {
186
+ cacheComponentProvides(newComponent: ComponentWithProperties): void;
187
+ provideForComponent(key: number): any;
188
+ runQueue<T>(run: () => Promise<T>): Promise<T>;
189
+ runQueueIfNeeded(): void;
185
190
  freezeSize(): void;
186
191
  growSize(width: number, height: number): void;
187
192
  unfreezeSize(): void;
@@ -261,15 +266,22 @@ declare const ModalStackComponent: import('vue').DefineComponent<{
261
266
  onShowDetail?: ((...args: any[]) => any) | undefined;
262
267
  onPresent?: ((...args: any[]) => any) | undefined;
263
268
  }, {}, {
264
- components: ComponentWithProperties[];
265
- mainComponent: ComponentWithProperties | null;
269
+ components: import('vue').Raw<ComponentWithProperties>[];
270
+ mainComponent: import('vue').Raw<ComponentWithProperties> | null;
266
271
  transitionName: string;
267
272
  savedScrollPositions: number[];
268
273
  nextScrollPosition: number;
269
274
  previousScrollPosition: number;
270
275
  nextInternalScrollPosition: number;
271
276
  savedInternalScrollPositions: number[];
277
+ asyncQueue: (() => Promise<void>)[];
278
+ asyncQueueRunning: boolean;
279
+ cachedProvides: Map<number, any>;
272
280
  }, {}, {
281
+ cacheComponentProvides(newComponent: ComponentWithProperties): void;
282
+ provideForComponent(key: number): any;
283
+ runQueue<T>(run: () => Promise<T>): Promise<T>;
284
+ runQueueIfNeeded(): void;
273
285
  freezeSize(): void;
274
286
  growSize(width: number, height: number): void;
275
287
  unfreezeSize(): void;
@@ -1,7 +1,7 @@
1
1
  import { PushOptions } from './PushOptions';
2
2
  import { PopOptions } from './PopOptions';
3
3
  import { ComponentWithProperties } from './ComponentWithProperties';
4
- import { PropType, Ref } from 'vue';
4
+ import { PropType, Raw, Ref } from 'vue';
5
5
 
6
6
  export declare function useNavigationController(): Ref<InstanceType<typeof NavigationController>>;
7
7
  declare const NavigationController: import('vue').DefineComponent<{
@@ -22,15 +22,22 @@ declare const NavigationController: import('vue').DefineComponent<{
22
22
  default: null;
23
23
  };
24
24
  }, unknown, {
25
- components: ComponentWithProperties[];
26
- mainComponent: ComponentWithProperties | null;
25
+ components: Raw<ComponentWithProperties>[];
26
+ mainComponent: Raw<ComponentWithProperties> | null;
27
27
  transitionName: string;
28
28
  savedScrollPositions: number[];
29
29
  nextScrollPosition: number;
30
30
  previousScrollPosition: number;
31
31
  nextInternalScrollPosition: number;
32
32
  savedInternalScrollPositions: number[];
33
+ asyncQueue: (() => Promise<void>)[];
34
+ asyncQueueRunning: boolean;
35
+ cachedProvides: Map<number, any>;
33
36
  }, {}, {
37
+ cacheComponentProvides(newComponent: ComponentWithProperties): void;
38
+ provideForComponent(key: number): any;
39
+ runQueue<T>(run: () => Promise<T>): Promise<T>;
40
+ runQueueIfNeeded(): void;
34
41
  freezeSize(): void;
35
42
  growSize(width: number, height: number): void;
36
43
  unfreezeSize(): void;
@@ -47,15 +47,22 @@ declare const SplitViewController: import('vue').DefineComponent<{
47
47
  onShowDetail?: ((...args: any[]) => any) | undefined;
48
48
  onPresent?: ((...args: any[]) => any) | undefined;
49
49
  }, unknown, {
50
- components: ComponentWithProperties[];
51
- mainComponent: ComponentWithProperties | null;
50
+ components: import('vue').Raw<ComponentWithProperties>[];
51
+ mainComponent: import('vue').Raw<ComponentWithProperties> | null;
52
52
  transitionName: string;
53
53
  savedScrollPositions: number[];
54
54
  nextScrollPosition: number;
55
55
  previousScrollPosition: number;
56
56
  nextInternalScrollPosition: number;
57
57
  savedInternalScrollPositions: number[];
58
+ asyncQueue: (() => Promise<void>)[];
59
+ asyncQueueRunning: boolean;
60
+ cachedProvides: Map<number, any>;
58
61
  }, {}, {
62
+ cacheComponentProvides(newComponent: ComponentWithProperties): void;
63
+ provideForComponent(key: number): any;
64
+ runQueue<T>(run: () => Promise<T>): Promise<T>;
65
+ runQueueIfNeeded(): void;
59
66
  freezeSize(): void;
60
67
  growSize(width: number, height: number): void;
61
68
  unfreezeSize(): void;
@@ -135,15 +142,22 @@ declare const SplitViewController: import('vue').DefineComponent<{
135
142
  onShowDetail?: ((...args: any[]) => any) | undefined;
136
143
  onPresent?: ((...args: any[]) => any) | undefined;
137
144
  }, {}, {
138
- components: ComponentWithProperties[];
139
- mainComponent: ComponentWithProperties | null;
145
+ components: import('vue').Raw<ComponentWithProperties>[];
146
+ mainComponent: import('vue').Raw<ComponentWithProperties> | null;
140
147
  transitionName: string;
141
148
  savedScrollPositions: number[];
142
149
  nextScrollPosition: number;
143
150
  previousScrollPosition: number;
144
151
  nextInternalScrollPosition: number;
145
152
  savedInternalScrollPositions: number[];
153
+ asyncQueue: (() => Promise<void>)[];
154
+ asyncQueueRunning: boolean;
155
+ cachedProvides: Map<number, any>;
146
156
  }, {}, {
157
+ cacheComponentProvides(newComponent: ComponentWithProperties): void;
158
+ provideForComponent(key: number): any;
159
+ runQueue<T>(run: () => Promise<T>): Promise<T>;
160
+ runQueueIfNeeded(): void;
147
161
  freezeSize(): void;
148
162
  growSize(width: number, height: number): void;
149
163
  unfreezeSize(): void;
@@ -48,7 +48,6 @@ declare const StackComponent: import('vue').DefineComponent<{}, {}, {
48
48
  setUrl: (url: string, title?: string | undefined) => void;
49
49
  setTitle: (title: string) => void;
50
50
  returnToHistoryIndex: () => boolean;
51
- logHistoryOwners: () => void;
52
51
  componentInstance: () => import('vue').ComponentPublicInstance | null;
53
52
  shouldNavigateAway: () => Promise<boolean>;
54
53
  destroy: (vnode: import('vue').VNode<import('vue').RendererNode, import('vue').RendererElement, {
@@ -4,7 +4,7 @@ export type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) ex
4
4
  type FilteredKeys<T> = {
5
5
  [K in keyof T]: T[K] extends never ? never : K;
6
6
  }[keyof T];
7
- type RemoveNever<T> = {
7
+ export type RemoveNever<T> = {
8
8
  [K in FilteredKeys<T>]: T[K];
9
9
  };
10
10
  export type ExtractInstance<T> = T extends DefineComponent<infer Props, infer RawBindings, infer Data, infer Computed extends ComputedOptions, infer Methods> ? ({
@@ -7,6 +7,7 @@ export declare class UrlHelper {
7
7
  * Slashes are added automatically on the sides if needed
8
8
  */
9
9
  static fixedPrefix: string | null;
10
+ static localePrefix: string | null;
10
11
  static shared: UrlHelper;
11
12
  /**
12
13
  * The original values when loading the page. Do not modify this one.
@@ -45,10 +46,6 @@ export declare class UrlHelper {
45
46
  getSearchParams(): URLSearchParams;
46
47
  getHashParams(): URLSearchParams;
47
48
  clear(): void;
48
- /**
49
- * setURL, but add locale
50
- */
51
- static transformUrlForLocale(url: string, language: string, country: string, addPrefix?: boolean): string;
52
49
  /**
53
50
  * override params
54
51
  */
@@ -62,6 +59,7 @@ export declare class UrlHelper {
62
59
  */
63
60
  static transformUrl(url: string, localFixedPrefix?: string): string;
64
61
  /**
62
+ * @deprecated
65
63
  * setURL, but add locale
66
64
  */
67
65
  static setUrl(url: string): void;
@@ -63,10 +63,12 @@ export type NavigationOptions<T> = {
63
63
  title: string | ((this: T) => string);
64
64
  routes?: Route<{}, T>[];
65
65
  };
66
- export declare function usePop(): (options?: PopOptions) => void;
66
+ export declare function usePop(): (options?: PopOptions) => Promise<void> | undefined;
67
67
  export declare function useNavigate(): <Params extends Record<string, unknown>>(prop1: string | Route<Params, unknown>, prop2?: RouteNavigationOptions<Params>) => Promise<void>;
68
68
  export type DefaultRouteHandler = () => Promise<boolean>;
69
69
  export declare function defineRoutes(routes: (Route<any, undefined>[]) | (() => Promise<boolean | (Route<any, undefined>[])>)): void;
70
+ export declare function useCurrentHref(): Ref<string>;
71
+ export declare function useCheckRoute(): <Params extends Record<string, unknown>>(prop1: string | Route<Params, unknown>, prop2?: RouteNavigationOptions<Params>) => boolean;
70
72
  export declare function normalizePushOptions(o: PushOptions | ComponentWithProperties, currentComponent: ComponentWithProperties | null, urlHelpers: ReturnType<typeof useUrl>): PushOptions;
71
73
  export declare function useShow(): (options: PushOptions | ComponentWithProperties) => Promise<void>;
72
74
  export declare function useShowDetail(): (options: PushOptions | ComponentWithProperties) => Promise<void>;
@@ -89,4 +91,5 @@ export declare function useUrl(): {
89
91
  setTitle(title: string): void;
90
92
  extendUrl(url: string): string;
91
93
  match<Params>(template: string, params?: UrlParamsConstructors<Params>): UrlMatchResult<Params> | undefined;
94
+ matchCurrent<Params_1>(template: string, params?: UrlParamsConstructors<Params_1> | undefined): UrlMatchResult<Params_1> | undefined;
92
95
  };