@synopackageland/sdk 0.10.4 → 0.10.6

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 (52) hide show
  1. package/README.md +20 -2
  2. package/dist/i18n/authorization/de.json +9 -1
  3. package/dist/i18n/authorization/en.json +9 -1
  4. package/dist/i18n/authorization/es.json +9 -1
  5. package/dist/i18n/authorization/fr.json +9 -1
  6. package/dist/i18n/authorization/it.json +9 -1
  7. package/dist/i18n/authorization/ja.json +9 -1
  8. package/dist/i18n/authorization/ko.json +9 -1
  9. package/dist/i18n/authorization/zh-CN.json +9 -1
  10. package/dist/i18n/authorization/zh-TW.json +9 -1
  11. package/dist/i18n/bridge/de.json +2 -1
  12. package/dist/i18n/bridge/en.json +2 -1
  13. package/dist/i18n/bridge/es.json +2 -1
  14. package/dist/i18n/bridge/fr.json +2 -1
  15. package/dist/i18n/bridge/it.json +2 -1
  16. package/dist/i18n/bridge/ja.json +2 -1
  17. package/dist/i18n/bridge/ko.json +2 -1
  18. package/dist/i18n/bridge/zh-CN.json +2 -1
  19. package/dist/i18n/bridge/zh-TW.json +2 -1
  20. package/dist/i18n/delegate/de.json +2 -0
  21. package/dist/i18n/delegate/en.json +2 -0
  22. package/dist/i18n/delegate/es.json +2 -0
  23. package/dist/i18n/delegate/fr.json +2 -0
  24. package/dist/i18n/delegate/it.json +2 -0
  25. package/dist/i18n/delegate/ja.json +2 -0
  26. package/dist/i18n/delegate/ko.json +2 -0
  27. package/dist/i18n/delegate/zh-CN.json +2 -0
  28. package/dist/i18n/delegate/zh-TW.json +2 -0
  29. package/dist/i18n/save/de.json +3 -2
  30. package/dist/i18n/save/en.json +3 -2
  31. package/dist/i18n/save/es.json +3 -2
  32. package/dist/i18n/save/fr.json +3 -2
  33. package/dist/i18n/save/it.json +3 -2
  34. package/dist/i18n/save/ja.json +3 -2
  35. package/dist/i18n/save/ko.json +3 -2
  36. package/dist/i18n/save/zh-CN.json +3 -2
  37. package/dist/i18n/save/zh-TW.json +3 -2
  38. package/dist/index.js +2652 -2525
  39. package/dist/src/bridge/i18n.d.ts +2 -1
  40. package/dist/src/delegate/BackgroundSaveSettings.vue.d.ts +2 -2
  41. package/dist/src/delegate/ExecutorSettings.vue.d.ts +2 -0
  42. package/dist/src/delegate/SaveOperations.vue.d.ts +2 -1
  43. package/dist/src/delegate/copy.d.ts +4 -0
  44. package/dist/src/delegate/lifecycle.d.ts +5 -0
  45. package/dist/src/delegate/save-copy.d.ts +3 -0
  46. package/dist/src/delegate/saves-height.d.ts +4 -0
  47. package/dist/src/delegate/use-scope-approval.d.ts +1 -0
  48. package/dist/src/index.d.ts +1 -0
  49. package/dist/src/shell/slot-content.d.ts +2 -0
  50. package/dist/style.css +1 -1
  51. package/dist/vue.js +2076 -1824
  52. package/package.json +2 -2
@@ -1,5 +1,6 @@
1
1
  export declare const bridgeCatalogs: Record<string, Record<string, string>>;
2
2
  /** The text of a code the bridge runtime adds (app_unavailable, and the
3
- * services' limit_exceeded, read_failed, identity_unavailable) or of the api's
3
+ * services' limit_exceeded, read_failed, identity_unavailable,
4
+ * credential_not_ready) or of the api's
4
5
  * request_timeout, in a DSM or BCP-47 language; undefined for any other code. */
5
6
  export declare function bridgeErrorCopy(e: unknown, locale: string): string | undefined;
@@ -14,12 +14,12 @@ type __VLS_Props = {
14
14
  title?: string;
15
15
  pickerErrorText?: (error: unknown) => string | undefined;
16
16
  };
17
- declare var __VLS_164: {
17
+ declare var __VLS_203: {
18
18
  busy: boolean;
19
19
  run: (work: () => Promise<unknown>) => Promise<void>;
20
20
  };
21
21
  type __VLS_Slots = {} & {
22
- operations?: (props: typeof __VLS_164) => any;
22
+ operations?: (props: typeof __VLS_203) => any;
23
23
  };
24
24
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {
25
25
  refresh: () => Promise<void>;
@@ -1,8 +1,10 @@
1
1
  import type { Context } from '../context';
2
+ import type { CapabilityStatus } from './executor-setup';
2
3
  type __VLS_Props = {
3
4
  admin: boolean;
4
5
  locale?: string;
5
6
  ctx?: Pick<Context, 'call'>;
7
+ initial?: CapabilityStatus;
6
8
  };
7
9
  declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {
8
10
  refresh: () => Promise<void>;
@@ -1,7 +1,8 @@
1
- import type { BackgroundSaveFacade } from './long-running';
1
+ import type { BackgroundSaveFacade, SaveOperation } from './long-running';
2
2
  type __VLS_Props = {
3
3
  sdk: BackgroundSaveFacade;
4
4
  locale: string;
5
+ initial?: SaveOperation[];
5
6
  };
6
7
  declare var __VLS_22: {
7
8
  busy: boolean;
@@ -19,6 +19,8 @@ export declare const delegateCatalogs: Record<import("..").UiLocale, {
19
19
  noticeAdmin: string;
20
20
  noticeUser: string;
21
21
  noticeApprove: string;
22
+ appStopped: string;
23
+ appStarting: string;
22
24
  loading: string;
23
25
  details: string;
24
26
  revoke: string;
@@ -86,6 +88,8 @@ export declare function delegateCopy(locale?: string): {
86
88
  noticeAdmin: string;
87
89
  noticeUser: string;
88
90
  noticeApprove: string;
91
+ appStopped: string;
92
+ appStarting: string;
89
93
  loading: string;
90
94
  details: string;
91
95
  revoke: string;
@@ -0,0 +1,5 @@
1
+ export type AppLifecycle = 'stopped' | 'starting';
2
+ export declare function appLifecycle(value: unknown): AppLifecycle | undefined;
3
+ export declare const LIFECYCLE_RETRY_MAX_MS = 15000;
4
+ export declare function lifecycleRetryDelay(attempt: number): number;
5
+ export declare function lifecycleCopy(lifecycle: AppLifecycle, locale?: string): string;
@@ -3,6 +3,7 @@ export declare const saveCatalogs: Record<import("..").UiLocale, {
3
3
  help: string;
4
4
  selection: string;
5
5
  operations: string;
6
+ operationsHelp: string;
6
7
  noOperations: string;
7
8
  revoke: string;
8
9
  choose: string;
@@ -57,6 +58,7 @@ export declare function saveCopy(locale?: string): {
57
58
  help: string;
58
59
  selection: string;
59
60
  operations: string;
61
+ operationsHelp: string;
60
62
  noOperations: string;
61
63
  revoke: string;
62
64
  choose: string;
@@ -111,6 +113,7 @@ export declare function saveError(error: unknown, copy?: {
111
113
  help: string;
112
114
  selection: string;
113
115
  operations: string;
116
+ operationsHelp: string;
114
117
  noOperations: string;
115
118
  revoke: string;
116
119
  choose: string;
@@ -0,0 +1,4 @@
1
+ export declare const SAVES_PAGE = 5;
2
+ export declare function savesHeight(count: number | undefined): string;
3
+ export declare function rememberSaves(count: number): void;
4
+ export declare function rememberedSaves(): number | undefined;
@@ -13,6 +13,7 @@ export declare function useScopeApproval(props: {
13
13
  readonly admin: boolean;
14
14
  readonly locale?: string;
15
15
  readonly ctx?: Pick<Context, 'call'>;
16
+ readonly initial?: CapabilityStatus;
16
17
  }, confirmed: () => void): {
17
18
  status: import("vue").Ref<CapabilityStatus | undefined, CapabilityStatus | undefined>;
18
19
  password: import("vue").Ref<string, string>;
@@ -21,6 +21,7 @@ export { shellCopy, shellCatalogs, type ShellCopy } from './shell/i18n';
21
21
  export { identityCopy, identityCatalogs, type IdentityCopy, type IdentityNotice } from './identity/i18n';
22
22
  export { backgroundCopy, backgroundErrorCopy, backgroundCatalogs, type BackgroundCopy } from './background/i18n';
23
23
  export { delegateCopy, errorCopy, delegateCatalogs, type DelegateCopy } from './delegate/copy';
24
+ export { appLifecycle, lifecycleCopy, lifecycleRetryDelay, LIFECYCLE_RETRY_MAX_MS, type AppLifecycle } from './delegate/lifecycle';
24
25
  export { saveCopy, saveError, saveCatalogs } from './delegate/save-copy';
25
26
  export { authorizationCopy, authorizationCatalogs } from './authorization/i18n';
26
27
  export { portalMessages, portalCatalogs } from './portal/i18n';
@@ -1,2 +1,4 @@
1
1
  /** Whether a slot's vnodes show anything: not only v-if comments and whitespace, also inside fragments. */
2
2
  export declare function hasContent(nodes: unknown): boolean;
3
+ /** Whether an element shows anything: an element, or text that is not blank, among its children. */
4
+ export declare function rendersContent(element: Node): boolean;
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .executor-help[data-v-8e5504f7]{margin:0 0 var(--ui-space-3,12px);max-width:72ch;color:var(--ui-text-secondary)}.executor-summary[data-v-8e5504f7]:not(:last-child){margin-bottom:var(--ui-space-3,12px)}.executor-form[data-v-8e5504f7]{margin-top:var(--ui-space-4,16px);max-width:28rem}.executor-hint[data-v-8e5504f7]{font-size:var(--ui-font-size-sm,12px);color:var(--ui-text-secondary)}.executor-reason[data-v-8e5504f7]{display:block;margin-top:var(--ui-space-1,4px);font-size:var(--ui-font-size-sm,12px)}.executor-alert[data-v-8e5504f7]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--ui-space-2,8px)}.executor-notice[data-v-8ec9f312]{margin-bottom:var(--ui-space-4, 16px)}.executor-notice-body[data-v-8ec9f312]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--ui-space-2, 8px)}.app-shell[data-v-c9bc6bd5]{height:100%;min-width:0;grid-template-rows:minmax(0,1fr)}.app-shell[data-v-c9bc6bd5]>div{min-height:0}.app-shell[data-v-c9bc6bd5] main{display:flex;flex-direction:column;overflow:hidden}.app-page[data-v-c9bc6bd5]{flex:1 1 auto;min-height:0;overflow-y:auto}.app-denied[data-v-c9bc6bd5]{height:100%;overflow-y:auto}.app-page-actions[data-v-c9bc6bd5]{display:contents}.app-shell-fill[data-v-c9bc6bd5]{max-height:100dvh}.app-page-fill[data-v-c9bc6bd5]{display:flex;flex-direction:column;overflow:hidden}.app-page-fill[data-v-c9bc6bd5]>[data-page-content-body]{display:flex;flex:1 1 auto;flex-direction:column;width:100%;min-height:0}.app-page-fill .app-notices[data-v-c9bc6bd5]{flex:0 0 auto}.app-page-fill .app-page-content[data-v-c9bc6bd5]{display:grid;flex:1 1 auto;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);min-height:0}.app-notices[data-v-c9bc6bd5]{display:flex;flex-direction:column;gap:var(--ui-space-2, 8px);margin-bottom:var(--ui-space-4, 16px)}.app-page-content[data-v-c9bc6bd5]{padding-bottom:var(--ui-space-6, 24px)}.file-browser[data-v-c689761c]{min-width:0;color:var(--ui-text)}.file-toolbar[data-v-c689761c]{display:flex;flex-wrap:wrap;gap:var(--ui-space-2, 8px);margin-block:var(--ui-space-3, 12px)}.file-location[data-v-c689761c]{flex-wrap:nowrap;align-items:center;gap:var(--ui-space-1, 4px)}.file-path[data-v-c689761c]{flex:1;min-width:0;margin-inline-start:var(--ui-space-2, 8px)}.file-columns[data-v-c689761c]{display:grid;grid-template-columns:minmax(140px,1fr) minmax(0,3fr);gap:var(--ui-space-3, 12px);height:clamp(240px,60vh,400px)}.file-tree[data-v-c689761c]{min-width:0;overflow:auto;border-inline-end:1px solid var(--ui-border)}.file-content[data-v-c689761c]{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:auto}.file-empty[data-v-c689761c]{display:flex;flex-direction:column;align-items:center;gap:var(--ui-space-2, 8px);padding-block:var(--ui-space-6, 24px);color:var(--ui-text-muted)}.file-name[data-v-c689761c]{display:inline-flex;align-items:center;gap:var(--ui-space-2, 8px);overflow-wrap:anywhere}.file-bytes[data-v-c689761c]{font-variant-numeric:tabular-nums}.file-selection[data-v-c689761c]{overflow-wrap:anywhere}@media(max-width:600px){.file-columns[data-v-c689761c]{grid-template-columns:minmax(0,1fr);height:auto}.file-content[data-v-c689761c] th:nth-child(2),.file-content[data-v-c689761c] td:nth-child(2),.file-content[data-v-c689761c] th:nth-child(3),.file-content[data-v-c689761c] td:nth-child(3){display:none}.file-tree[data-v-c689761c]{height:clamp(96px,25vh,180px);border-inline-end:0;border-bottom:1px solid var(--ui-border)}.file-content[data-v-c689761c]{height:clamp(200px,45vh,360px)}}.nas-picker-content[data-v-6ed8b8f6]{max-height:65vh;overflow:auto}.save-message[data-v-6ed8b8f6]{--ui-text-secondary:var(--ui-text)}.save-consent[data-v-6ed8b8f6]{color:var(--ui-text);margin-block:0 var(--ui-space-4,16px)}.files-actions[data-v-15f9eb8e]{display:flex;flex-wrap:wrap;gap:var(--ui-space-2, 8px)}.files-path[data-v-15f9eb8e]{display:flex;min-width:0}.identity-login[data-v-1c0358cd]{max-width:36rem;margin-inline:auto;padding:var(--ui-space-4, 16px);overflow:auto;max-height:100%;color:var(--ui-text);font-family:var(--ui-font-sans);font-size:13px;line-height:1.5}.identity-login p[data-v-1c0358cd]{margin-block:var(--ui-space-4, 16px);overflow-wrap:anywhere}.bg-cards[data-v-3e23f18f]{display:grid;gap:var(--ui-space-3,12px);min-width:0;overflow-wrap:anywhere}.bg-card-body[data-v-3e23f18f]{display:flex;flex-direction:column;align-items:flex-start;gap:var(--ui-space-2,8px);min-width:0}.bg-card-body>span[data-v-3e23f18f]{min-width:0;max-width:100%}.integration-actions[data-v-3e23f18f]{display:flex;flex-wrap:wrap;gap:var(--ui-space-2,8px)}.bg-schedules[data-v-3e23f18f]{margin-block-start:var(--ui-space-6,24px);min-width:0;overflow-wrap:anywhere}.bg-schedules p[data-v-3e23f18f]{min-width:0;max-width:100%}.bg-schedule-form[data-v-3e23f18f]{margin-block:var(--ui-space-4,16px)}.bg-path[data-v-3e23f18f]{display:flex;align-items:center;gap:var(--ui-space-2,8px);min-width:0;max-width:100%}.executor-approval[data-v-88a4ee77]{padding:var(--ui-space-6, 24px)}.executor-brand[data-v-88a4ee77]{display:flex;align-items:center;gap:var(--ui-space-2, 8px);margin-bottom:var(--ui-space-4, 16px);font-size:16px;font-weight:600;color:var(--ui-text-primary)}.executor-brand img[data-v-88a4ee77]{width:24px;height:24px}.delegate-panel[data-v-e6f168a0]{min-width:0;overflow-wrap:anywhere}.delegate-group[data-v-e6f168a0]{margin-top:var(--ui-space-6,24px)}.records[data-v-e6f168a0]{list-style:none;padding:0;margin:0}.records li[data-v-e6f168a0]{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:var(--ui-space-3,12px);padding-block:var(--ui-space-4,16px);border-bottom:1px solid var(--ui-border)}.records li>div[data-v-e6f168a0],.records li>span[data-v-e6f168a0],.destination[data-v-e6f168a0]{min-width:0;max-width:100%;overflow-wrap:anywhere}.records p[data-v-e6f168a0]{margin:var(--ui-space-2,8px) 0 0}.destination[data-v-e6f168a0]{display:flex;align-items:center;gap:var(--ui-space-2,8px)}.save-help[data-v-8c9a2ec0]{margin:0 0 var(--ui-space-3,12px);max-width:72ch;color:var(--ui-text-secondary)}.save-alert[data-v-8c9a2ec0]{display:flex;align-items:center;flex-wrap:wrap;gap:var(--ui-space-2,8px);justify-content:space-between}.save-name[data-v-8c9a2ec0]{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.save-note[data-v-8c9a2ec0]{margin:var(--ui-space-1,4px) 0 0;font-size:var(--ui-font-size-sm,12px);color:var(--ui-text-secondary);white-space:normal}.save-icon[data-v-8c9a2ec0]{width:16px;height:16px}[data-save-operations][data-v-8c9a2ec0] table{table-layout:fixed}[data-save-operations][data-v-8c9a2ec0] th,[data-save-operations][data-v-8c9a2ec0] td{overflow-wrap:normal;white-space:nowrap}[data-save-operations][data-v-8c9a2ec0] td{padding-block:var(--ui-space-2,8px)}.save-pages[data-v-8c9a2ec0]{margin-top:var(--ui-space-3,12px)}.background-save-settings[data-v-abaa1bee]{min-width:0;overflow-wrap:anywhere}.save-help[data-v-abaa1bee]{margin:0 0 var(--ui-space-2,8px);max-width:72ch;color:var(--ui-text-secondary)}.save-form[data-v-abaa1bee]{max-width:44rem}.save-actions[data-v-abaa1bee],.save-alert[data-v-abaa1bee],.save-danger[data-v-abaa1bee]{display:flex;align-items:center;flex-wrap:wrap;gap:var(--ui-space-2,8px)}.save-alert[data-v-abaa1bee],.save-danger[data-v-abaa1bee]{justify-content:space-between}.save-none[data-v-abaa1bee]{color:var(--ui-text-secondary)}.save-reason[data-v-abaa1bee]{display:block;margin-top:var(--ui-space-1,4px);font-size:var(--ui-font-size-sm,12px)}.save-danger[data-v-abaa1bee]{flex:1;padding-top:var(--ui-space-3,12px);border-top:1px solid var(--ui-border)}.save-danger p[data-v-abaa1bee]{margin:0;flex:1 1 20rem;max-width:72ch;font-size:var(--ui-font-size-sm,12px);color:var(--ui-text-secondary)}.background-save-panel[data-v-55770b8c]{min-width:0;overflow-wrap:anywhere}.save-help[data-v-55770b8c]{margin:0 0 var(--ui-space-3,12px);max-width:72ch;color:var(--ui-text-secondary)}.save-actions[data-v-55770b8c]{display:flex;align-items:center;flex-wrap:wrap;gap:var(--ui-space-2,8px);margin-bottom:var(--ui-space-3,12px)}.authorization-view[data-v-e16b5f7d]{display:flex;flex-direction:column;gap:12px}.authorization-body[data-v-e16b5f7d]{margin:0;font-size:13px;line-height:1.6;color:var(--ui-text);text-wrap:pretty}.authorization-status[data-v-e16b5f7d],.authorization-failed[data-v-e16b5f7d]{color:var(--ui-text)}.authorization-content[data-v-e16b5f7d]{display:flex;flex-direction:column;height:100%;min-height:0}.authorization-content[data-v-e16b5f7d] .app-shell{flex:1;min-height:0;height:auto}.authorization-setting[data-v-f031e7c7]{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.authorization-revoke-body[data-v-f031e7c7]{margin:0;font-size:13px;line-height:1.6;color:var(--ui-text)}.authorization-state[data-v-f031e7c7]{display:inline-flex;align-items:center;gap:6px;color:var(--ui-text)}
1
+ .executor-help[data-v-ad6c286b]{margin:0 0 var(--ui-space-3,12px);max-width:72ch;color:var(--ui-text-secondary)}.executor-summary[data-v-ad6c286b]:not(:last-child){margin-bottom:var(--ui-space-3,12px)}.executor-form[data-v-ad6c286b]{margin-top:var(--ui-space-4,16px);max-width:28rem}.executor-hint[data-v-ad6c286b]{font-size:var(--ui-font-size-sm,12px);color:var(--ui-text-secondary)}.executor-reason[data-v-ad6c286b]{display:block;margin-top:var(--ui-space-1,4px);font-size:var(--ui-font-size-sm,12px)}.executor-alert[data-v-ad6c286b]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--ui-space-2,8px)}.executor-notice[data-v-827f8f20]{margin-bottom:var(--ui-space-4, 16px)}.executor-notice-body[data-v-827f8f20]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--ui-space-2, 8px)}.app-shell[data-v-61068e94]{height:100%;min-width:0;grid-template-rows:minmax(0,1fr)}.app-shell[data-v-61068e94]>div{min-height:0}.app-shell[data-v-61068e94] main{display:flex;flex-direction:column;overflow:hidden}.app-page[data-v-61068e94]{flex:1 1 auto;min-height:0;overflow-y:auto}.app-denied[data-v-61068e94]{height:100%;overflow-y:auto}.app-page-actions[data-v-61068e94]{display:contents}.app-shell-fill[data-v-61068e94]{max-height:100dvh}.app-page-fill[data-v-61068e94]{display:flex;flex-direction:column;overflow:hidden}.app-page-fill[data-v-61068e94]>[data-page-content-body]{display:flex;flex:1 1 auto;flex-direction:column;width:100%;min-height:0}.app-page-fill .app-notices[data-v-61068e94]{flex:0 0 auto}.app-page-fill .app-page-content[data-v-61068e94]{display:grid;flex:1 1 auto;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);min-height:0}.app-notices[data-v-61068e94]{display:flex;flex-direction:column;gap:var(--ui-space-2, 8px);margin-bottom:var(--ui-space-4, 16px)}.app-notices[hidden][data-v-61068e94]{display:none}.app-page-content[data-v-61068e94]{padding-bottom:var(--ui-space-6, 24px)}.file-browser[data-v-c689761c]{min-width:0;color:var(--ui-text)}.file-toolbar[data-v-c689761c]{display:flex;flex-wrap:wrap;gap:var(--ui-space-2, 8px);margin-block:var(--ui-space-3, 12px)}.file-location[data-v-c689761c]{flex-wrap:nowrap;align-items:center;gap:var(--ui-space-1, 4px)}.file-path[data-v-c689761c]{flex:1;min-width:0;margin-inline-start:var(--ui-space-2, 8px)}.file-columns[data-v-c689761c]{display:grid;grid-template-columns:minmax(140px,1fr) minmax(0,3fr);gap:var(--ui-space-3, 12px);height:clamp(240px,60vh,400px)}.file-tree[data-v-c689761c]{min-width:0;overflow:auto;border-inline-end:1px solid var(--ui-border)}.file-content[data-v-c689761c]{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:auto}.file-empty[data-v-c689761c]{display:flex;flex-direction:column;align-items:center;gap:var(--ui-space-2, 8px);padding-block:var(--ui-space-6, 24px);color:var(--ui-text-muted)}.file-name[data-v-c689761c]{display:inline-flex;align-items:center;gap:var(--ui-space-2, 8px);overflow-wrap:anywhere}.file-bytes[data-v-c689761c]{font-variant-numeric:tabular-nums}.file-selection[data-v-c689761c]{overflow-wrap:anywhere}@media(max-width:600px){.file-columns[data-v-c689761c]{grid-template-columns:minmax(0,1fr);height:auto}.file-content[data-v-c689761c] th:nth-child(2),.file-content[data-v-c689761c] td:nth-child(2),.file-content[data-v-c689761c] th:nth-child(3),.file-content[data-v-c689761c] td:nth-child(3){display:none}.file-tree[data-v-c689761c]{height:clamp(96px,25vh,180px);border-inline-end:0;border-bottom:1px solid var(--ui-border)}.file-content[data-v-c689761c]{height:clamp(200px,45vh,360px)}}.nas-picker-content[data-v-6ed8b8f6]{max-height:65vh;overflow:auto}.save-message[data-v-6ed8b8f6]{--ui-text-secondary:var(--ui-text)}.save-consent[data-v-6ed8b8f6]{color:var(--ui-text);margin-block:0 var(--ui-space-4,16px)}.files-actions[data-v-15f9eb8e]{display:flex;flex-wrap:wrap;gap:var(--ui-space-2, 8px)}.files-path[data-v-15f9eb8e]{display:flex;min-width:0}.identity-login[data-v-1c0358cd]{max-width:36rem;margin-inline:auto;padding:var(--ui-space-4, 16px);overflow:auto;max-height:100%;color:var(--ui-text);font-family:var(--ui-font-sans);font-size:13px;line-height:1.5}.identity-login p[data-v-1c0358cd]{margin-block:var(--ui-space-4, 16px);overflow-wrap:anywhere}.bg-cards[data-v-b8f86fc4]{display:grid;gap:var(--ui-space-3,12px);min-width:0;overflow-wrap:anywhere}.bg-card-body[data-v-b8f86fc4]{display:flex;flex-direction:column;align-items:flex-start;gap:var(--ui-space-2,8px);min-width:0}.bg-card-body>span[data-v-b8f86fc4]{min-width:0;max-width:100%}.integration-actions[data-v-b8f86fc4]{display:flex;flex-wrap:wrap;gap:var(--ui-space-2,8px)}.bg-schedules[data-v-b8f86fc4]{margin-block-start:var(--ui-space-6,24px);min-width:0;overflow-wrap:anywhere}.bg-schedules p[data-v-b8f86fc4]{min-width:0;max-width:100%}.bg-schedule-form[data-v-b8f86fc4]{margin-block:var(--ui-space-4,16px)}.bg-path[data-v-b8f86fc4]{display:flex;align-items:center;gap:var(--ui-space-2,8px);min-width:0;max-width:100%}.executor-approval[data-v-50689be6]{padding:var(--ui-space-6, 24px)}.executor-brand[data-v-50689be6]{display:flex;align-items:center;gap:var(--ui-space-2, 8px);margin-bottom:var(--ui-space-4, 16px);font-size:16px;font-weight:600;color:var(--ui-text-primary)}.executor-brand img[data-v-50689be6]{width:24px;height:24px}.delegate-panel[data-v-c11f2c24]{min-width:0;overflow-wrap:anywhere}.delegate-group[data-v-c11f2c24]{margin-top:var(--ui-space-6,24px)}.records[data-v-c11f2c24]{list-style:none;padding:0;margin:0}.records li[data-v-c11f2c24]{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:var(--ui-space-3,12px);padding-block:var(--ui-space-4,16px);border-bottom:1px solid var(--ui-border)}.records li>div[data-v-c11f2c24],.records li>span[data-v-c11f2c24],.destination[data-v-c11f2c24]{min-width:0;max-width:100%;overflow-wrap:anywhere}.records p[data-v-c11f2c24]{margin:var(--ui-space-2,8px) 0 0}.destination[data-v-c11f2c24]{display:flex;align-items:center;gap:var(--ui-space-2,8px)}.save-help[data-v-b8e6fb5f]{margin:0 0 var(--ui-space-3,12px);max-width:72ch;color:var(--ui-text-secondary)}.save-alert[data-v-b8e6fb5f]{display:flex;align-items:center;flex-wrap:wrap;gap:var(--ui-space-2,8px);justify-content:space-between}.save-name[data-v-b8e6fb5f]{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.save-note[data-v-b8e6fb5f]{margin:var(--ui-space-1,4px) 0 0;font-size:var(--ui-font-size-sm,12px);color:var(--ui-text-secondary);white-space:normal}.save-icon[data-v-b8e6fb5f]{width:16px;height:16px}[data-save-operations][data-v-b8e6fb5f] table{table-layout:fixed}[data-save-operations][data-v-b8e6fb5f] th,[data-save-operations][data-v-b8e6fb5f] td{overflow-wrap:normal;white-space:nowrap}[data-save-operations][data-v-b8e6fb5f] td{padding-block:var(--ui-space-2,8px)}.save-pages[data-v-b8e6fb5f]{margin-top:var(--ui-space-3,12px)}.background-save-settings[data-v-72e53119]{min-width:0;overflow-wrap:anywhere}.save-help[data-v-72e53119]{margin:0 0 var(--ui-space-2,8px);max-width:72ch;color:var(--ui-text-secondary)}.save-form[data-v-72e53119]{max-width:44rem}.save-actions[data-v-72e53119],.save-alert[data-v-72e53119],.save-danger[data-v-72e53119]{display:flex;align-items:center;flex-wrap:wrap;gap:var(--ui-space-2,8px)}.save-alert[data-v-72e53119],.save-danger[data-v-72e53119]{justify-content:space-between}.save-none[data-v-72e53119]{color:var(--ui-text-secondary)}.save-reason[data-v-72e53119]{display:block;margin-top:var(--ui-space-1,4px);font-size:var(--ui-font-size-sm,12px)}.save-danger[data-v-72e53119]{flex:1;padding-top:var(--ui-space-3,12px);border-top:1px solid var(--ui-border)}.save-danger p[data-v-72e53119]{margin:0;flex:1 1 20rem;max-width:72ch;font-size:var(--ui-font-size-sm,12px);color:var(--ui-text-secondary)}.background-save-panel[data-v-55770b8c]{min-width:0;overflow-wrap:anywhere}.save-help[data-v-55770b8c]{margin:0 0 var(--ui-space-3,12px);max-width:72ch;color:var(--ui-text-secondary)}.save-actions[data-v-55770b8c]{display:flex;align-items:center;flex-wrap:wrap;gap:var(--ui-space-2,8px);margin-bottom:var(--ui-space-3,12px)}.authorization-view[data-v-625e4135]{display:flex;flex-direction:column;gap:12px}.authorization-body[data-v-625e4135]{margin:0;font-size:13px;line-height:1.6;color:var(--ui-text);text-wrap:pretty}.authorization-status[data-v-625e4135],.authorization-failed[data-v-625e4135]{color:var(--ui-text)}.authorization-content[data-v-625e4135]{display:flex;flex-direction:column;height:100%;min-height:0}.authorization-content[data-v-625e4135] .app-shell{flex:1;min-height:0;height:auto}.authorization-setting[data-v-f031e7c7]{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.authorization-revoke-body[data-v-f031e7c7]{margin:0;font-size:13px;line-height:1.6;color:var(--ui-text)}.authorization-state[data-v-f031e7c7]{display:inline-flex;align-items:center;gap:6px;color:var(--ui-text)}