@awiki/dsh-plugin 0.2.4 → 0.2.5

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 (115) hide show
  1. package/README.md +80 -11
  2. package/README.zh.md +67 -12
  3. package/THIRD_PARTY_NOTICES.md +8 -1
  4. package/cordis.patch.yml +13 -0
  5. package/lib/client.js +8223 -1939
  6. package/lib/client.js.map +1 -1
  7. package/lib/index.js +1486 -59
  8. package/lib/model-proxy-contract.js +89 -0
  9. package/lib/model-proxy.js +383 -0
  10. package/lib/provider.js +2 -1
  11. package/lib/sdk-adapter-DKgkyApB.mjs +669 -0
  12. package/lib/typert.host.js +470 -482
  13. package/lib/typert.remote-client.d.ts +15 -1
  14. package/lib/typert.remote-client.d.ts.map +1 -1
  15. package/lib/typert.remote-client.js +469 -103
  16. package/lib/types/attachment-cache.d.ts +28 -0
  17. package/lib/types/attachment-cache.d.ts.map +1 -0
  18. package/lib/types/attachment-cache.js +194 -0
  19. package/lib/types/attachment-cache.js.map +1 -0
  20. package/lib/types/client/AwikiMail.d.ts +14 -0
  21. package/lib/types/client/AwikiMail.d.ts.map +1 -0
  22. package/lib/types/client/AwikiMail.js +260 -0
  23. package/lib/types/client/AwikiMail.js.map +1 -0
  24. package/lib/types/client/AwikiOnboarding.d.ts +22 -0
  25. package/lib/types/client/AwikiOnboarding.d.ts.map +1 -0
  26. package/lib/types/client/AwikiOnboarding.js +87 -0
  27. package/lib/types/client/AwikiOnboarding.js.map +1 -0
  28. package/lib/types/client/AwikiOverlay.d.ts +15 -0
  29. package/lib/types/client/AwikiOverlay.d.ts.map +1 -1
  30. package/lib/types/client/AwikiOverlay.js +251 -20
  31. package/lib/types/client/AwikiOverlay.js.map +1 -1
  32. package/lib/types/client/AwikiSettingsSection.d.ts +20 -4
  33. package/lib/types/client/AwikiSettingsSection.d.ts.map +1 -1
  34. package/lib/types/client/AwikiSettingsSection.js +279 -23
  35. package/lib/types/client/AwikiSettingsSection.js.map +1 -1
  36. package/lib/types/client/RechargeComingSoonDialog.d.ts +11 -0
  37. package/lib/types/client/RechargeComingSoonDialog.d.ts.map +1 -0
  38. package/lib/types/client/RechargeComingSoonDialog.js +8 -0
  39. package/lib/types/client/RechargeComingSoonDialog.js.map +1 -0
  40. package/lib/types/client/controller.d.ts +82 -4
  41. package/lib/types/client/controller.d.ts.map +1 -1
  42. package/lib/types/client/controller.js +517 -74
  43. package/lib/types/client/controller.js.map +1 -1
  44. package/lib/types/client/image-cache.d.ts +20 -0
  45. package/lib/types/client/image-cache.d.ts.map +1 -0
  46. package/lib/types/client/image-cache.js +177 -0
  47. package/lib/types/client/image-cache.js.map +1 -0
  48. package/lib/types/client/index.d.ts +2 -0
  49. package/lib/types/client/index.d.ts.map +1 -1
  50. package/lib/types/client/index.js +84 -41
  51. package/lib/types/client/index.js.map +1 -1
  52. package/lib/types/client/model-account-settings-availability.d.ts +4 -0
  53. package/lib/types/client/model-account-settings-availability.d.ts.map +1 -0
  54. package/lib/types/client/model-account-settings-availability.js +4 -0
  55. package/lib/types/client/model-account-settings-availability.js.map +1 -0
  56. package/lib/types/client/model-availability-controller.d.ts +27 -0
  57. package/lib/types/client/model-availability-controller.d.ts.map +1 -0
  58. package/lib/types/client/model-availability-controller.js +111 -0
  59. package/lib/types/client/model-availability-controller.js.map +1 -0
  60. package/lib/types/client/model-proxy-controller.d.ts +41 -0
  61. package/lib/types/client/model-proxy-controller.d.ts.map +1 -0
  62. package/lib/types/client/model-proxy-controller.js +241 -0
  63. package/lib/types/client/model-proxy-controller.js.map +1 -0
  64. package/lib/types/client/recharge-availability.d.ts +6 -0
  65. package/lib/types/client/recharge-availability.d.ts.map +1 -0
  66. package/lib/types/client/recharge-availability.js +6 -0
  67. package/lib/types/client/recharge-availability.js.map +1 -0
  68. package/lib/types/client/settings-locales.d.ts +1 -1
  69. package/lib/types/client/settings-locales.d.ts.map +1 -1
  70. package/lib/types/client/settings-locales.js +180 -2
  71. package/lib/types/client/settings-locales.js.map +1 -1
  72. package/lib/types/client/slots.d.ts +15 -2
  73. package/lib/types/client/slots.d.ts.map +1 -1
  74. package/lib/types/index.d.ts +56 -2
  75. package/lib/types/index.d.ts.map +1 -1
  76. package/lib/types/index.js +462 -31
  77. package/lib/types/index.js.map +1 -1
  78. package/lib/types/listener-state.d.ts +23 -0
  79. package/lib/types/listener-state.d.ts.map +1 -0
  80. package/lib/types/listener-state.js +124 -0
  81. package/lib/types/listener-state.js.map +1 -0
  82. package/lib/types/listener.d.ts +96 -0
  83. package/lib/types/listener.d.ts.map +1 -0
  84. package/lib/types/listener.js +575 -0
  85. package/lib/types/listener.js.map +1 -0
  86. package/lib/types/mail.d.ts +8 -0
  87. package/lib/types/mail.d.ts.map +1 -0
  88. package/lib/types/mail.js +75 -0
  89. package/lib/types/mail.js.map +1 -0
  90. package/lib/types/model-proxy-contract.d.ts +61 -0
  91. package/lib/types/model-proxy-contract.d.ts.map +1 -0
  92. package/lib/types/model-proxy-contract.js +129 -0
  93. package/lib/types/model-proxy-contract.js.map +1 -0
  94. package/lib/types/model-proxy.d.ts +14 -0
  95. package/lib/types/model-proxy.d.ts.map +1 -0
  96. package/lib/types/model-proxy.js +371 -0
  97. package/lib/types/model-proxy.js.map +1 -0
  98. package/lib/types/provider-api.d.ts +78 -2
  99. package/lib/types/provider-api.d.ts.map +1 -1
  100. package/lib/types/provider.d.ts.map +1 -1
  101. package/lib/types/provider.js +1 -0
  102. package/lib/types/provider.js.map +1 -1
  103. package/lib/types/sdk-adapter.d.ts +26 -2
  104. package/lib/types/sdk-adapter.d.ts.map +1 -1
  105. package/lib/types/sdk-adapter.js +380 -24
  106. package/lib/types/sdk-adapter.js.map +1 -1
  107. package/lib/types/tools.d.ts +10 -0
  108. package/lib/types/tools.d.ts.map +1 -1
  109. package/lib/types/tools.js +98 -0
  110. package/lib/types/tools.js.map +1 -1
  111. package/lib/types/types.d.ts +103 -1
  112. package/lib/types/types.d.ts.map +1 -1
  113. package/lib/types/types.js.map +1 -1
  114. package/package.json +30 -5
  115. package/lib/sdk-adapter-DK6RqV-c.mjs +0 -355
@@ -0,0 +1,87 @@
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
2
+ /** AWiki identity and model opt-in step shown before the official API-key step. */
3
+ import { useEffect, useState } from 'react';
4
+ import { Button, Modal } from '@deepseek-ai/dsh-client-ui-primitives';
5
+ import { AwikiRegistrationForm } from "./AwikiOverlay.js";
6
+ import { RechargeComingSoonDialog } from "./RechargeComingSoonDialog.js";
7
+ import css from './AwikiOnboarding.module.css';
8
+ export function AwikiOnboarding(props) {
9
+ const { t } = props;
10
+ const dismiss = props.dismiss ?? props.complete;
11
+ const identity = props.useAwikiOnboarding((value) => value);
12
+ const availability = props.useAwikiModelAvailability((value) => value);
13
+ const models = props.useAwikiModelProxy((value) => value);
14
+ const [rechargeComingSoonOpen, setRechargeComingSoonOpen] = useState(false);
15
+ const shouldOffer = availability.status === 'ready' && !availability.usable;
16
+ const openAccountSettings = () => {
17
+ dismiss();
18
+ props.openSection('awiki');
19
+ };
20
+ const requestRecharge = () => {
21
+ if (!props.rechargeEnabled) {
22
+ setRechargeComingSoonOpen(true);
23
+ return;
24
+ }
25
+ openAccountSettings();
26
+ };
27
+ useEffect(() => {
28
+ if (availability.status === 'idle')
29
+ void props.availability.load();
30
+ }, [availability.status, props.availability]);
31
+ useEffect(() => {
32
+ if (availability.status === 'unavailable' || (availability.status === 'ready' && availability.usable))
33
+ props.complete();
34
+ }, [availability.status, availability.usable, props.complete]);
35
+ useEffect(() => {
36
+ if (shouldOffer && identity.status === 'cold')
37
+ void props.identity.loadSession();
38
+ }, [identity.status, props.identity, shouldOffer]);
39
+ useEffect(() => {
40
+ if (shouldOffer && identity.status === 'ready' && identity.sessionStatus === 'active') {
41
+ void props.models.load();
42
+ }
43
+ }, [identity.sessionStatus, identity.status, props.models, shouldOffer]);
44
+ useEffect(() => {
45
+ if (shouldOffer && models.account?.enabled === true)
46
+ props.complete();
47
+ }, [models.account?.enabled, props.complete, shouldOffer]);
48
+ if (rechargeComingSoonOpen) {
49
+ return (_jsx(RechargeComingSoonDialog, { open: true, onClose: () => { setRechargeComingSoonOpen(false); }, t: t }));
50
+ }
51
+ if (!shouldOffer || identity.status === 'cold' || identity.status === 'loading' || models.account?.enabled === true)
52
+ return null;
53
+ const alternatives = _jsxs(_Fragment, { children: [_jsx(Button, { type: "button", variant: "outline", onClick: props.complete, children: t('onboardingUseApiKey') }), _jsx(Button, { type: "button", variant: "outline", onClick: dismiss, children: t('onboardingLater') })] });
54
+ if (identity.status === 'error') {
55
+ return (_jsxs(OnboardingModal, { title: t('onboardingConnectTitle'), closeLabel: t('onboardingClose'), onClose: dismiss, children: [_jsx("p", { className: css.description, children: identity.error ?? t('onboardingIdentityUnavailable') }), _jsx("div", { className: css.actions, children: alternatives })] }));
56
+ }
57
+ if (identity.sessionStatus === 'unregistered') {
58
+ return (_jsxs(OnboardingModal, { title: t('onboardingModelTitle'), closeLabel: t('onboardingClose'), onClose: dismiss, children: [_jsx("p", { className: css.description, children: t('onboardingRegistrationDescription') }), _jsx(AwikiRegistrationForm, { pending: identity.pending !== null, autoFocusHandle: true, sendRegistrationOtp: request => props.identity.sendRegistrationOtp(request), registerIdentity: request => props.identity.registerIdentity(request) }), _jsx("div", { className: css.actions, children: alternatives })] }));
59
+ }
60
+ if (identity.sessionStatus === 'signed-out') {
61
+ return (_jsxs(OnboardingModal, { title: t('onboardingRestoreTitle'), closeLabel: t('onboardingClose'), onClose: dismiss, children: [_jsx("p", { className: css.description, children: t('onboardingRestoreDescription') }), _jsxs("div", { className: css.actions, children: [_jsx(Button, { type: "button", disabled: identity.pending !== null, onClick: () => { void props.identity.login(); }, children: t('onboardingRestore') }), alternatives] })] }));
62
+ }
63
+ if ((models.status === 'idle' || models.status === 'loading') && models.account === null)
64
+ return null;
65
+ const account = models.account?.account;
66
+ const pendingOrder = props.rechargeEnabled ? models.account?.pending_recharge_order ?? null : null;
67
+ const accessUnavailable = account?.model_access_available === false;
68
+ return (_jsxs(OnboardingModal, { title: t('onboardingEnableTitle'), closeLabel: t('onboardingClose'), onClose: dismiss, children: [models.status === 'unavailable' || account === undefined ? (_jsx("p", { className: css.error, role: "alert", children: models.error ?? t('modelAccountUnavailable') })) : (_jsxs(_Fragment, { children: [_jsxs("div", { className: css.accountRow, children: [_jsx("span", { children: t('accountBalance') }), _jsxs("strong", { children: [account.balance, " ", account.currency] })] }), _jsx("p", { className: css.description, children: account.billing_mode === 'development_bypass'
69
+ ? t('onboardingBypassDescription')
70
+ : pendingOrder !== null
71
+ ? t('onboardingPendingRechargeDescription')
72
+ : account.model_access_reason === 'insufficient_balance'
73
+ ? t('onboardingInsufficientBalanceDescription')
74
+ : t('onboardingStrictDescription') }), props.rechargeEnabled && !account.payments_available && _jsx("p", { className: css.notice, children: t('paymentsUnavailable') })] })), _jsxs("div", { className: css.actions, children: [pendingOrder !== null ? (_jsx(Button, { type: "button", onClick: requestRecharge, children: t('continuePayment') })) : accessUnavailable ? (_jsx(Button, { type: "button", disabled: props.rechargeEnabled && account?.payments_available !== true, onClick: requestRecharge, children: t('goToRecharge') })) : account !== undefined ? (_jsx(Button, { type: "button", disabled: models.pending !== null || models.status === 'loading', onClick: () => { void props.models.setEnabled(true); }, children: models.pending === 'enable' ? t('enablingModels') : t('enableModels') })) : null, alternatives] })] }));
75
+ }
76
+ function OnboardingModal({ title, closeLabel, onClose, children }) {
77
+ useEffect(() => {
78
+ const root = document.getElementById('root');
79
+ if (root === null)
80
+ return;
81
+ const previous = root.inert;
82
+ root.inert = true;
83
+ return () => { root.inert = previous; };
84
+ }, []);
85
+ return (_jsx(Modal, { open: true, title: title, closeLabel: closeLabel, onClose: onClose, className: css.dialog ?? '', contentClassName: css.modalContent, children: _jsx("div", { className: css.content, children: children }) }));
86
+ }
87
+ //# sourceMappingURL=AwikiOnboarding.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AwikiOnboarding.js","sourceRoot":"","sources":["../../../src/client/AwikiOnboarding.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  /** AWiki trigger, identity registration, and direct/group messaging drawer. */
2
2
  import type { AwikiOverlayProps } from './slots.ts';
3
3
  export declare const AWIKI_LAUNCHER_POSITION_KEY = "dsh-awiki-launcher-position-v1";
4
+ export declare const AWIKI_DRAWER_FRAME_KEY = "dsh-awiki-drawer-frame-v1";
4
5
  export interface AwikiLauncherPosition {
5
6
  readonly left: number;
6
7
  readonly top: number;
@@ -9,10 +10,24 @@ export type AwikiDrawerDirection = 'upper-left' | 'upper-right' | 'lower-left' |
9
10
  export interface AwikiDrawerPlacement extends AwikiLauncherPosition {
10
11
  readonly direction: AwikiDrawerDirection;
11
12
  }
13
+ export interface AwikiDrawerFrame extends AwikiLauncherPosition {
14
+ readonly width: number;
15
+ readonly height: number;
16
+ }
17
+ export type AwikiDrawerResizeDirection = 'n' | 'ne' | 'e' | 'se' | 's' | 'sw' | 'w' | 'nw';
12
18
  /** Keep the floating launcher fully reachable inside the current viewport. */
13
19
  export declare function clampAwikiLauncherPosition(position: AwikiLauncherPosition, width: number, height: number): AwikiLauncherPosition;
14
20
  /** Place the chat panel in the launcher corner quadrant with the least viewport overflow. */
15
21
  export declare function resolveAwikiDrawerPlacement(launcher: AwikiLauncherPosition, panelWidth: number, panelHeight: number, viewportWidth: number, viewportHeight: number, preferredDirection?: AwikiDrawerDirection): AwikiDrawerPlacement;
22
+ /** Keep a user-sized AWiki drawer reachable and within the current viewport. */
23
+ export declare function clampAwikiDrawerFrame(frame: AwikiDrawerFrame, viewportWidth: number, viewportHeight: number): AwikiDrawerFrame;
24
+ /** Resize one or two drawer boundaries while keeping the opposite boundaries fixed. */
25
+ export declare function resizeAwikiDrawerFrame(frame: AwikiDrawerFrame, direction: AwikiDrawerResizeDirection, deltaX: number, deltaY: number, viewportWidth: number, viewportHeight: number): AwikiDrawerFrame;
26
+ /** Render the identity registration form and its OTP challenge transition. */
27
+ export declare function AwikiRegistrationForm(props: Pick<AwikiOverlayProps, 'sendRegistrationOtp' | 'registerIdentity'> & {
28
+ pending: boolean;
29
+ autoFocusHandle?: boolean;
30
+ }): import("react").JSX.Element;
16
31
  /**
17
32
  * Render the frame-wide AWiki trigger and right-side drawer.
18
33
  * @param props - slot-derived runtime, store, and injected AWiki operations.
@@ -1 +1 @@
1
- {"version":3,"file":"AwikiOverlay.d.ts","sourceRoot":"","sources":["../../../src/client/AwikiOverlay.tsx"],"names":[],"mappings":"AAAA,+EAA+E;AAgC/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAGnD,eAAO,MAAM,2BAA2B,mCAAmC,CAAA;AAe3E,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,MAAM,oBAAoB,GAAG,YAAY,GAAG,aAAa,GAAG,YAAY,GAAG,aAAa,CAAA;AAE9F,MAAM,WAAW,oBAAqB,SAAQ,qBAAqB;IACjE,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAA;CACzC;AAED,8EAA8E;AAC9E,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,qBAAqB,CAKhI;AAeD,6FAA6F;AAC7F,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,qBAAqB,EAC/B,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,MAAM,EACtB,kBAAkB,CAAC,EAAE,oBAAoB,GACxC,oBAAoB,CAqCtB;AA42BD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,+BAwapD"}
1
+ {"version":3,"file":"AwikiOverlay.d.ts","sourceRoot":"","sources":["../../../src/client/AwikiOverlay.tsx"],"names":[],"mappings":"AAAA,+EAA+E;AAiC/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAGnD,eAAO,MAAM,2BAA2B,mCAAmC,CAAA;AAC3E,eAAO,MAAM,sBAAsB,8BAA8B,CAAA;AAmBjE,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,MAAM,oBAAoB,GAAG,YAAY,GAAG,aAAa,GAAG,YAAY,GAAG,aAAa,CAAA;AAE9F,MAAM,WAAW,oBAAqB,SAAQ,qBAAqB;IACjE,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAA;CACzC;AAED,MAAM,WAAW,gBAAiB,SAAQ,qBAAqB;IAC7D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,MAAM,0BAA0B,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,CAAA;AAI1F,8EAA8E;AAC9E,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,qBAAqB,CAKhI;AAeD,6FAA6F;AAC7F,wBAAgB,2BAA2B,CACzC,QAAQ,EAAE,qBAAqB,EAC/B,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,MAAM,EACtB,kBAAkB,CAAC,EAAE,oBAAoB,GACxC,oBAAoB,CAqCtB;AAED,gFAAgF;AAChF,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,gBAAgB,EACvB,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,MAAM,GACrB,gBAAgB,CAalB;AAED,uFAAuF;AACvF,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,gBAAgB,EACvB,SAAS,EAAE,0BAA0B,EACrC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,MAAM,GACrB,gBAAgB,CAelB;AA+ED,8EAA8E;AAC9E,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,IAAI,CAAC,iBAAiB,EAAE,qBAAqB,GAAG,kBAAkB,CAAC,GAAG;IACjH,OAAO,EAAE,OAAO,CAAA;IAChB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B,+BAiEA;AA2xBD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,+BA4qBpD"}