@vc-shell/framework 2.4.0-pr299.e77d647 → 2.4.0-pr301.6c1e2de

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/dist/chunks/{VcScheduler.vue_vue_type_script_setup_true_lang-C4nHWq_U.js → VcScheduler.vue_vue_type_script_setup_true_lang-CxWz5aQT.js} +3143 -3108
  2. package/dist/chunks/VcScheduler.vue_vue_type_script_setup_true_lang-CxWz5aQT.js.map +1 -0
  3. package/dist/core/composables/index.d.ts +1 -0
  4. package/dist/core/composables/index.d.ts.map +1 -1
  5. package/dist/core/composables/useLatestRequest/index.d.ts +43 -0
  6. package/dist/core/composables/useLatestRequest/index.d.ts.map +1 -0
  7. package/dist/framework.js +920 -885
  8. package/dist/framework.js.map +1 -1
  9. package/dist/locales/de.js +2 -0
  10. package/dist/locales/en.js +2 -0
  11. package/dist/locales/en.json +2 -0
  12. package/dist/locales/types.d.ts +2 -0
  13. package/dist/shell/_internal/blade-navigation/components/vc-blade-navigation/focus-target.d.ts +20 -0
  14. package/dist/shell/_internal/blade-navigation/components/vc-blade-navigation/focus-target.d.ts.map +1 -0
  15. package/dist/shell/_internal/blade-navigation/components/vc-blade-navigation/vc-blade-navigation-new.vue.d.ts.map +1 -1
  16. package/dist/shell/_internal/blade-navigation/components/vc-blade-slot/vc-blade-slot.vue.d.ts.map +1 -1
  17. package/dist/shell/auth/ChangePasswordPage/components/change-password/ChangePassword.vue.d.ts.map +1 -1
  18. package/dist/shell/auth/InvitePage/components/invite/Invite.vue.d.ts.map +1 -1
  19. package/dist/shell/auth/ResetPasswordPage/components/reset-password/ResetPassword.vue.d.ts.map +1 -1
  20. package/dist/shell/components/change-password/change-password.vue.d.ts.map +1 -1
  21. package/dist/tsconfig.tsbuildinfo +1 -1
  22. package/dist/ui/components/organisms/vc-app/_internal/sidebar/SidebarHeader.vue.d.ts.map +1 -1
  23. package/dist/ui/components/organisms/vc-app/vc-app.vue.d.ts.map +1 -1
  24. package/dist/ui/components/organisms/vc-blade/useBladeSkeleton.d.ts +16 -0
  25. package/dist/ui/components/organisms/vc-blade/useBladeSkeleton.d.ts.map +1 -0
  26. package/dist/ui/components/organisms/vc-blade/vc-blade.vue.d.ts.map +1 -1
  27. package/dist/ui/index.js +1 -1
  28. package/package.json +4 -4
  29. package/dist/chunks/VcScheduler.vue_vue_type_script_setup_true_lang-C4nHWq_U.js.map +0 -1
@@ -6,6 +6,7 @@ export * from "../composables/usePermissions";
6
6
  export * from "../composables/useAsync";
7
7
  export * from "../composables/useApiClient";
8
8
  export * from "../composables/useLoading";
9
+ export * from "../composables/useLatestRequest";
9
10
  export * from "../composables/useErrorHandler";
10
11
  export * from "../composables/useAssets";
11
12
  export * from "../composables/useAssetsManager";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../core/composables/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oCAAoC,CAAC;AACnD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oCAAoC,CAAC;AACnD,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,4BAA4B,CAAC;AAE3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mCAAmC,CAAC;AAClD,cAAc,mCAAmC,CAAC;AAClD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wCAAwC,CAAC;AACvD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0CAA0C,CAAC;AACzD,cAAc,mCAAmC,CAAC;AAClD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,sCAAsC,CAAC;AACrD,cAAc,wCAAwC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../core/composables/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oCAAoC,CAAC;AACnD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oCAAoC,CAAC;AACnD,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,oCAAoC,CAAC;AACnD,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,4BAA4B,CAAC;AAE3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mCAAmC,CAAC;AAClD,cAAc,mCAAmC,CAAC;AAClD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wCAAwC,CAAC;AACvD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0CAA0C,CAAC;AACzD,cAAc,mCAAmC,CAAC;AAClD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iCAAiC,CAAC;AAChD,cAAc,sCAAsC,CAAC;AACrD,cAAc,wCAAwC,CAAC"}
@@ -0,0 +1,43 @@
1
+ import { type Ref } from "vue";
2
+ export interface LatestRequest {
3
+ /** False once a newer request started, or once the tracker was invalidated or disposed. */
4
+ isCurrent(): boolean;
5
+ /** Marks this request finished. Idempotent; only the current request clears `pending`. */
6
+ complete(): void;
7
+ }
8
+ export interface UseLatestRequestReturn {
9
+ /** Starts a request and supersedes any earlier one. */
10
+ begin(): LatestRequest;
11
+ /** Supersedes the in-flight request without starting a new one — e.g. on selection change. */
12
+ invalidate(): void;
13
+ /** Permanently supersedes everything. Called automatically when the owning scope stops. */
14
+ dispose(): void;
15
+ /** True while the newest request is still running. */
16
+ pending: Readonly<Ref<boolean>>;
17
+ }
18
+ /**
19
+ * Latest-wins sequencing: lets a caller drop a response that a newer request
20
+ * already superseded.
21
+ *
22
+ * ```ts
23
+ * const search = useLatestRequest();
24
+ *
25
+ * async function load(criteria) {
26
+ * const request = search.begin();
27
+ * try {
28
+ * const result = await api.search(criteria);
29
+ * if (!request.isCurrent()) return; // a newer search won
30
+ * items.value = result;
31
+ * } finally {
32
+ * request.complete();
33
+ * }
34
+ * }
35
+ * ```
36
+ *
37
+ * This discards the late result rather than cancelling the request: the
38
+ * generated API clients build their own `RequestInit` and take no `AbortSignal`,
39
+ * so there is nothing to cancel through. Aborting would additionally save the
40
+ * round trip and belongs with a client that accepts a signal.
41
+ */
42
+ export declare function useLatestRequest(): UseLatestRequestReturn;
43
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../core/composables/useLatestRequest/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkD,KAAK,GAAG,EAAE,MAAM,KAAK,CAAC;AAE/E,MAAM,WAAW,aAAa;IAC5B,2FAA2F;IAC3F,SAAS,IAAI,OAAO,CAAC;IACrB,0FAA0F;IAC1F,QAAQ,IAAI,IAAI,CAAC;CAClB;AAED,MAAM,WAAW,sBAAsB;IACrC,uDAAuD;IACvD,KAAK,IAAI,aAAa,CAAC;IACvB,8FAA8F;IAC9F,UAAU,IAAI,IAAI,CAAC;IACnB,2FAA2F;IAC3F,OAAO,IAAI,IAAI,CAAC;IAChB,sDAAsD;IACtD,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;CACjC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,gBAAgB,IAAI,sBAAsB,CA2CzD"}