@appsolutely-io/waypoint 0.1.1-next.0 → 0.1.1-next.1
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/README.md +37 -0
- package/dist/{block-reply-DN4RiLL0.d.cts → block-reply-r8u-DNmZ.d.cts} +15 -3
- package/dist/{block-reply-Dtof9ild.d.ts → block-reply-z8El20nD.d.ts} +15 -3
- package/dist/{blocks-UJ7GUJHD.js → blocks-2ABWECKG.js} +1 -1
- package/dist/{blocks-25YOJ5SS.cjs → blocks-7453YTYJ.cjs} +1 -1
- package/dist/{chunk-W6Y7H56X.js → chunk-5Q3INHKA.js} +1 -1
- package/dist/chunk-A3YOSFLE.cjs +1 -0
- package/dist/{chunk-Q6BD2YL3.cjs → chunk-BRUQ75G3.cjs} +1 -1
- package/dist/{chunk-SD2KAIVE.js → chunk-D4Q46KWA.js} +1 -1
- package/dist/chunk-IPI4O4LP.js +1 -0
- package/dist/chunk-QFBAOEPD.js +1 -0
- package/dist/chunk-RZ3AGK3U.cjs +1 -0
- package/dist/{chunk-4ZGW4HM4.cjs → chunk-XTKUDSDK.cjs} +1 -1
- package/dist/{confirmation-view-OMWHUYVC.cjs → confirmation-view-5BZ2PP7J.cjs} +1 -1
- package/dist/{confirmation-view-CICNJJIO.js → confirmation-view-Z5JHY2F5.js} +1 -1
- package/dist/{flows-panel-YEJ36RTY.js → flows-panel-2SCPYZ3X.js} +1 -1
- package/dist/{flows-panel-AIULKYOS.cjs → flows-panel-HQYJMOP4.cjs} +1 -1
- package/dist/{form-extras-QYE32TUY.cjs → form-extras-RNMBCYV7.cjs} +1 -1
- package/dist/{form-extras-SBBOMJS2.js → form-extras-X3B3JCMH.js} +1 -1
- package/dist/hooks/index.cjs +1 -1
- package/dist/hooks/index.d.cts +3 -3
- package/dist/hooks/index.d.ts +3 -3
- package/dist/hooks/index.js +1 -1
- package/dist/{i18n-DPNfYTMG.d.cts → i18n-WC9f-h_q.d.cts} +3 -0
- package/dist/{i18n-DPNfYTMG.d.ts → i18n-WC9f-h_q.d.ts} +3 -0
- package/dist/markdown-5NUOCOGY.js +23 -0
- package/dist/{markdown-BSRKJFFE.cjs → markdown-CG7NXI7X.cjs} +17 -11
- package/dist/{message-actions-F6SPLTT7.cjs → message-actions-ORBVYGNE.cjs} +1 -1
- package/dist/{message-actions-3HGE6VTS.js → message-actions-XNBBFHGW.js} +1 -1
- package/dist/messages/en/index.cjs +1 -1
- package/dist/messages/en/index.js +1 -1
- package/dist/messages/index.d.cts +3 -3
- package/dist/messages/index.d.ts +3 -3
- package/dist/messages/zh-Hans/index.cjs +1 -1
- package/dist/messages/zh-Hans/index.js +1 -1
- package/dist/react/index.cjs +1 -1
- package/dist/react/index.d.cts +8 -6
- package/dist/react/index.d.ts +8 -6
- package/dist/react/index.js +1 -1
- package/dist/{recovery-panel-VOKVDDZD.js → recovery-panel-6EBUMANX.js} +1 -1
- package/dist/{recovery-panel-OWY2CWOH.cjs → recovery-panel-EQIIV7TT.cjs} +3 -3
- package/dist/{reply-controls-5CWIAKIG.js → reply-controls-HUYHUO3W.js} +1 -1
- package/dist/{reply-controls-CPWB4VBK.cjs → reply-controls-LGY2RKRJ.cjs} +1 -1
- package/dist/skin-antd/index.d.cts +3 -3
- package/dist/skin-antd/index.d.ts +3 -3
- package/dist/{step-name-BdkYnb5g.d.ts → step-name-BlgVvshf.d.ts} +1 -1
- package/dist/{step-name-3hQ6CCGr.d.cts → step-name-CB3d3kkP.d.cts} +1 -1
- package/dist/styles.css +15 -0
- package/dist/testing/index.cjs +1 -1
- package/dist/testing/index.d.cts +3 -3
- package/dist/testing/index.d.ts +3 -3
- package/dist/testing/index.js +1 -1
- package/etc/hooks.api.md +9 -0
- package/etc/messages.api.md +3 -0
- package/etc/react.api.md +9 -0
- package/etc/skin-antd.api.md +9 -0
- package/etc/testing.api.md +9 -0
- package/package.json +2 -1
- package/dist/chunk-M3UENQ6L.cjs +0 -1
- package/dist/chunk-RHBDQGD4.js +0 -1
- package/dist/chunk-TGL3DR2K.js +0 -1
- package/dist/chunk-UYR3UEIW.cjs +0 -1
- package/dist/markdown-ETLB66BK.js +0 -17
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunkVGGJGRNKcjs = require('./chunk-VGGJGRNK.cjs');var _chunkUYR3UEIWcjs = require('./chunk-UYR3UEIW.cjs');require('./chunk-FBADWFRR.cjs');var _chunkTODYQ3SGcjs = require('./chunk-TODYQ3SG.cjs');require('./chunk-QS3MKZOY.cjs');require('./chunk-M3UENQ6L.cjs');require('./chunk-4BWV3SEL.cjs');require('./chunk-GT6PI4CT.cjs');require('./chunk-3KV7TDDR.cjs');require('./chunk-Q7BULGQG.cjs');require('./chunk-XSHOLIC7.cjs');require('./chunk-II26UWZM.cjs');var _react = require('react');var ce={"chat.recovery.heading":"Review the plan's status","chat.recovery.updateToControl":"Update the app to control this plan. Its recorded status is shown here.","chat.recovery.stopping":"Stopping further steps\u2026","chat.recovery.cancelling":"Cancelling\u2026","chat.recovery.leavePending":"Saving your choice to leave changes as they are\u2026","chat.recovery.currentRunning":"The plan is running now. Stop it before reviewing another action.","chat.recovery.currentStopped":"The plan is stopped. Recorded results may include changes already made.","chat.recovery.cancelledNoChanges":"Cancelled; nothing was changed.","chat.recovery.leftKnown":"Left as is. Existing changes are kept; no further steps will run from this plan.","chat.recovery.leftUnconfirmed":"Left as is; {count, plural, one {# step could not be confirmed} other {# steps could not be confirmed}}.","chat.recovery.keptKnown":"Current results kept; no further steps will run from this plan.","chat.recovery.done":"Done","chat.recovery.notDone":"Not done","chat.recovery.unknown":"Could not be confirmed","chat.recovery.stopped":"Stopped. Some changes may already have been made.","chat.recovery.capabilityMissing":"This site does not support this recovery action.","chat.recovery.intentPendingReason":"Wait for this request to be resolved before confirming another action.","chat.recovery.refreshConversation":"Refresh conversation","chat.recovery.hostGuidance":"Contact the site administrator if this problem continues.","chat.recovery.checkIntentStatus":"Check request status","chat.recovery.checkSavedChoice":"Check saved choice","chat.recovery.checkKeepStatus":"Check Keep status","chat.recovery.keepChanges":"Keep these changes","chat.recovery.leave":"Leave as is","chat.recovery.confirmKeepForwardOnly":"Keep the current results and close this plan? Remaining planned steps will not run. This plan has no Undo choice to end, and site values will not change.","chat.recovery.confirmEndRetention":"Keep the current results and close this plan's retained record? No planned steps or Undo choices remain. Site values will not change.","chat.recovery.keepReasonActive":"A confirmed action is still in progress or paused. Review that action first.","chat.recovery.keepReasonUnknown":"Some results could not be confirmed. Check their status first.","chat.recovery.keepReasonUnavailable":"This action is unavailable in the current account or conversation. Review the available status or contact the host.","chat.recovery.keepReasonChanged":"The reviewed results changed. Read the current results before choosing again.","chat.recovery.keepReasonPreview":"A different review is open. Resolve that review before choosing again.","chat.recovery.keepReasonNoSource":'There is no current result that can be closed with "Keep these changes".',"chat.recovery.alreadyKept":"The current results are already kept.","chat.recovery.stopNotSent":"Stop was not sent. A step already sent may still finish.","chat.recovery.stopNotSentElsewhere":"Stop was not sent. The plan may still be running in another window or device.","chat.recovery.stopUnconfirmed":"Stop could not be confirmed. Reconnect to check the steps.","chat.recovery.cancelNotSent":"Cancellation was not sent. Check the current status before choosing again.","chat.recovery.cancelUnconfirmed":"Cancellation could not be confirmed. Check the request status.","chat.recovery.reviewCancelNotSent":"Review cancellation was not sent. Check the current status before choosing again.","chat.recovery.reviewCancelUnconfirmed":"Review cancellation could not be confirmed. Check the request status.","chat.recovery.leaveNotSent":"Your choice was not saved. Check the current status before choosing again.","chat.recovery.leaveUnconfirmed":"Your choice could not be confirmed. Check the request status.","chat.recovery.keepNotSent":'Your "Keep these changes" choice could not be sent. Check any earlier pending choice before trying again.',"chat.recovery.keepUnconfirmed":'We could not confirm whether "Keep these changes" was saved. Check its status before choosing again.',"chat.recovery.requestAlreadyStopped":"The run you asked to stop was stopped.","chat.recovery.requestTargetStopped":"The targeted run is stopped.","chat.recovery.requestedIntentApplied":"Your earlier request was applied to its original target.","chat.recovery.requestedIntentNotApplied":"Your earlier request was not applied to its original target.","chat.recovery.intentSuperseded":"A newer independent decision is now current. This request cannot change it.","chat.recovery.intentTargetChanged":"A newer run or decision is current. This request did not change it.","chat.recovery.alreadyClosedByWinner":"This plan was already stopped or closed. Your request changed nothing.","chat.recovery.alreadyStoppedNeedsDecision":"This plan was already stopped. A decision about the recorded changes is still needed.","chat.recovery.cancelStarted":"This plan had already started. Further steps were stopped; some changes may have been made.","chat.recovery.stoppedNoChanges":"Stopped before execution. Nothing was changed.","chat.recovery.initialTargetSettled":"The original action had already finished. Its results are kept; no changes were undone.","chat.recovery.initialTargetStopped":"The original action is already stopped. Its step results are kept; no changes were undone.","chat.recovery.reviewTargetSettled":"This review had already been confirmed and finished. Its recorded results are kept.","chat.recovery.reviewTargetStopped":"This review had already been confirmed. Its execution is stopped; the recorded step results are kept.","chat.recovery.planClosedKept":'Your "Keep these changes" choice was saved and this plan was closed. Site values were not changed.',"chat.recovery.keptForwardClosed":"The remaining planned steps will not run.","chat.recovery.keptAlready":"These changes were already kept for this plan; this request did not change them.","chat.recovery.leaveCompletedByKeep":'Your choice to leave the current results was saved; "Keep these changes" then closed the remaining choice.',"chat.recovery.leaveCoveredByKeep":'Your choice to leave the current results is covered by "Keep these changes".',"chat.recovery.leaveNeedsReview":"Your choice to leave was not saved because the results changed. Review the updated step results.","chat.recovery.leaveSafetyNeedsReview":"The run and any remaining scheduled actions were stopped. Your choice to leave was not saved because results changed. Review the updated steps.","chat.recovery.laterReceiptAfterKeep":`A step's status was confirmed after "Keep these changes" was saved. Review the updated results.`,"chat.recovery.undoSelected":"Undo selected steps","chat.recovery.continue":"Continue","chat.recovery.statusProposal":"Proposed plan","chat.recovery.statusCompleted":"Completed","chat.recovery.stepsNotKnownYet":"Step results are not known yet.","chat.recovery.stepsUnknown":"{count, plural, one {# step could not be confirmed} other {# steps could not be confirmed}}. Check its status before choosing what to do.","chat.recovery.stepsNotDone":"{count, plural, one {# step was not done} other {# steps were not done}}. Review the results.","chat.recovery.laterReportAfterKeep":'After "Keep these changes" was saved, a step was reported differently. The saved results have not changed; review the newer report below.',"chat.recovery.reportedDifferently":"Reported differently later","chat.recovery.notAvailableYet":"This action is not available in this version of the app. You can leave the changes as they are, or ask for a new plan.","chat.recovery.actionLoading":"Getting this action ready\u2026","chat.recovery.retryAfterSeconds":"{seconds, plural, one {You can try again in # second.} other {You can try again in # seconds.}}","chat.recovery.keepPending":'Saving "Keep these changes"\u2026',"chat.recovery.keepRemainingSteps":"{count, plural, one {# planned step will not run.} other {# planned steps will not run.}}","chat.recovery.signInRequired":"Sign in again, then try this request again.","chat.recovery.requestRefused":"The site refused this request. Contact the site administrator if this continues.","chat.recovery.acknowledgmentAhead":"This choice was based on newer results than the site has. Refresh and choose again.","chat.recovery.cancelCoveredByLeaveSafety":"The plan had already been stopped by a choice to leave, so cancellation was not needed.","chat.recovery.cancelCoveredByStopNoChanges":"The plan had already stopped before it ran. Nothing was changed.","chat.recovery.cancelDefeatedByStop":"The plan had already been stopped, so cancellation was not needed.","chat.recovery.choiceReplacedByStop":"The earlier choice was applied; the plan was then stopped.","chat.recovery.initialTargetClosed":"The original action is already closed. Its results are kept.","chat.recovery.keepDefeatedByWinner":'"Keep these changes" was not saved because another decision was recorded first. Read the current results and choose again.',"chat.recovery.leaveDefeatedByWinner":"The choice to leave changes as they are was not saved because another decision was recorded first.","chat.recovery.leaveNoDecision":"There is no current result to leave as it is.","chat.recovery.leaveSafetyAlreadyStopped":"The plan was already stopped. A decision about the recorded changes is still needed.","chat.recovery.reopenedEvidence":"A newer step status reopened this decision. Review the updated results.","chat.recovery.winnerStopUser":"A stop was requested for this plan.","chat.recovery.winnerStopConnection":"This plan stopped because the connection was lost.","chat.recovery.winnerStopRenewal":"This plan stopped because permission to continue could not be renewed.","chat.recovery.winnerStopStep":"This plan stopped after a step failed.","chat.recovery.winnerStopStepUp":"This plan stopped because the required verification was not completed.","chat.recovery.winnerStopIdentity":"This plan stopped because its execution identity could no longer be verified.","chat.recovery.winnerStopAttribution":"This plan stopped because a step's recorded result could not be confirmed.","chat.recovery.winnerStopChanged":"This plan stopped because its reviewed steps changed.","chat.recovery.winnerStopAdapter":"This plan stopped because required execution details could not be received.","chat.recovery.winnerCancel":"Cancelling this plan was requested.","chat.recovery.winnerLeave":"A choice to leave the changes as they are was recorded.","chat.recovery.winnerKeep":'"Keep these changes" was recorded for this plan.',"chat.recovery.stepStatusChanged":"Step status updated.","chat.recovery.stepNotKnownYet":"Not known yet"},se={"chat.recovery.heading":"\u68C0\u67E5\u8BA1\u5212\u72B6\u6001","chat.recovery.updateToControl":"\u8BF7\u66F4\u65B0\u5E94\u7528\u540E\u518D\u64CD\u4F5C\u6B64\u8BA1\u5212\u3002\u6B64\u5904\u4ECD\u663E\u793A\u5DF2\u8BB0\u5F55\u7684\u72B6\u6001\u3002","chat.recovery.stopping":"\u6B63\u5728\u505C\u6B62\u540E\u7EED\u6B65\u9AA4\u2026","chat.recovery.cancelling":"\u6B63\u5728\u53D6\u6D88\u2026","chat.recovery.leavePending":"\u6B63\u5728\u4FDD\u5B58\u4FDD\u6301\u73B0\u72B6\u7684\u9009\u62E9\u2026","chat.recovery.currentRunning":"\u6B64\u8BA1\u5212\u76EE\u524D\u6B63\u5728\u6267\u884C\u3002\u8BF7\u5148\u505C\u6B62\u6267\u884C\uFF0C\u518D\u5BA1\u9605\u5176\u4ED6\u64CD\u4F5C\u3002","chat.recovery.currentStopped":"\u6B64\u8BA1\u5212\u5DF2\u505C\u6B62\u3002\u5DF2\u8BB0\u5F55\u7684\u7ED3\u679C\u53EF\u80FD\u5305\u542B\u5DF2\u7ECF\u751F\u6548\u7684\u4FEE\u6539\u3002","chat.recovery.cancelledNoChanges":"\u5DF2\u53D6\u6D88\uFF0C\u672A\u505A\u4EFB\u4F55\u4FEE\u6539\u3002","chat.recovery.leftKnown":"\u5DF2\u4FDD\u6301\u73B0\u72B6\u3002\u73B0\u6709\u4FEE\u6539\u5C06\u4E88\u4EE5\u4FDD\u7559\uFF1B\u6B64\u8BA1\u5212\u4E0D\u4F1A\u518D\u6267\u884C\u540E\u7EED\u6B65\u9AA4\u3002","chat.recovery.leftUnconfirmed":"\u5DF2\u4FDD\u6301\u73B0\u72B6\uFF1B\u6709 {count} \u4E2A\u6B65\u9AA4\u7684\u72B6\u6001\u65E0\u6CD5\u786E\u8BA4\u3002","chat.recovery.keptKnown":"\u5DF2\u4FDD\u7559\u5F53\u524D\u7ED3\u679C\uFF1B\u6B64\u8BA1\u5212\u4E0D\u4F1A\u518D\u6267\u884C\u540E\u7EED\u6B65\u9AA4\u3002","chat.recovery.done":"\u5DF2\u5B8C\u6210","chat.recovery.notDone":"\u672A\u5B8C\u6210","chat.recovery.unknown":"\u65E0\u6CD5\u786E\u8BA4","chat.recovery.stopped":"\u5DF2\u505C\u6B62\u3002\u90E8\u5206\u4FEE\u6539\u53EF\u80FD\u5DF2\u7ECF\u751F\u6548\u3002","chat.recovery.capabilityMissing":"\u6B64\u7AD9\u70B9\u4E0D\u652F\u6301\u6B64\u6062\u590D\u64CD\u4F5C\u3002","chat.recovery.intentPendingReason":"\u8BF7\u7B49\u5F85\u6B64\u8BF7\u6C42\u5904\u7406\u5B8C\u6210\u540E\uFF0C\u518D\u786E\u8BA4\u5176\u4ED6\u64CD\u4F5C\u3002","chat.recovery.refreshConversation":"\u5237\u65B0\u5BF9\u8BDD","chat.recovery.hostGuidance":"\u5982\u679C\u6B64\u95EE\u9898\u6301\u7EED\u51FA\u73B0\uFF0C\u8BF7\u8054\u7CFB\u7AD9\u70B9\u7BA1\u7406\u5458\u3002","chat.recovery.checkIntentStatus":"\u68C0\u67E5\u8BF7\u6C42\u72B6\u6001","chat.recovery.checkSavedChoice":"\u68C0\u67E5\u9009\u62E9\u662F\u5426\u5DF2\u4FDD\u5B58","chat.recovery.checkKeepStatus":"\u68C0\u67E5\u4FDD\u7559\u51B3\u5B9A\u72B6\u6001","chat.recovery.keepChanges":"\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539","chat.recovery.leave":"\u4FDD\u6301\u73B0\u72B6","chat.recovery.confirmKeepForwardOnly":"\u662F\u5426\u4FDD\u7559\u5F53\u524D\u7ED3\u679C\u5E76\u5173\u95ED\u6B64\u8BA1\u5212\uFF1F\u5269\u4F59\u8BA1\u5212\u6B65\u9AA4\u5C06\u4E0D\u518D\u6267\u884C\u3002\u6B64\u8BA1\u5212\u6CA1\u6709\u53EF\u7ED3\u675F\u7684\u64A4\u9500\u9009\u9879\uFF0C\u7AD9\u70B9\u4E2D\u7684\u503C\u4E5F\u4E0D\u4F1A\u66F4\u6539\u3002","chat.recovery.confirmEndRetention":"\u662F\u5426\u4FDD\u7559\u5F53\u524D\u7ED3\u679C\u5E76\u7ED3\u675F\u6B64\u8BA1\u5212\u8BB0\u5F55\u7684\u4FDD\u7559\uFF1F\u6CA1\u6709\u5269\u4F59\u8BA1\u5212\u6B65\u9AA4\u6216\u64A4\u9500\u9009\u9879\u3002\u7AD9\u70B9\u4E2D\u7684\u503C\u4E0D\u4F1A\u66F4\u6539\u3002","chat.recovery.keepReasonActive":"\u5DF2\u786E\u8BA4\u7684\u52A8\u4F5C\u4ECD\u5728\u6267\u884C\u6216\u6682\u505C\u4E2D\u3002\u8BF7\u5148\u67E5\u770B\u8BE5\u52A8\u4F5C\u3002","chat.recovery.keepReasonUnknown":"\u90E8\u5206\u7ED3\u679C\u65E0\u6CD5\u786E\u8BA4\u3002\u8BF7\u5148\u68C0\u67E5\u5176\u72B6\u6001\u3002","chat.recovery.keepReasonUnavailable":"\u6B64\u64CD\u4F5C\u5728\u5F53\u524D\u8D26\u6237\u6216\u5BF9\u8BDD\u4E2D\u4E0D\u53EF\u7528\u3002\u8BF7\u67E5\u770B\u53EF\u8BBF\u95EE\u7684\u72B6\u6001\u6216\u8054\u7CFB\u670D\u52A1\u63D0\u4F9B\u65B9\u3002","chat.recovery.keepReasonChanged":"\u5148\u524D\u5BA1\u9605\u7684\u7ED3\u679C\u5DF2\u53D8\u66F4\u3002\u8BF7\u5148\u67E5\u770B\u5F53\u524D\u7ED3\u679C\uFF0C\u518D\u4F5C\u9009\u62E9\u3002","chat.recovery.keepReasonPreview":"\u53E6\u4E00\u4E2A\u5BA1\u9605\u4ECD\u5904\u4E8E\u6253\u5F00\u72B6\u6001\u3002\u8BF7\u5148\u5904\u7406\u8BE5\u5BA1\u9605\uFF0C\u518D\u4F5C\u9009\u62E9\u3002","chat.recovery.keepReasonNoSource":"\u5F53\u524D\u6CA1\u6709\u53EF\u901A\u8FC7\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u51B3\u5B9A\u5173\u95ED\u7684\u7ED3\u679C\u3002","chat.recovery.alreadyKept":"\u5F53\u524D\u7ED3\u679C\u5DF2\u4FDD\u7559\u3002","chat.recovery.stopNotSent":"\u505C\u6B62\u8BF7\u6C42\u672A\u80FD\u53D1\u9001\u3002\u5DF2\u53D1\u9001\u7684\u6B65\u9AA4\u4ECD\u53EF\u80FD\u5B8C\u6210\u3002","chat.recovery.stopNotSentElsewhere":"\u505C\u6B62\u8BF7\u6C42\u672A\u80FD\u53D1\u9001\u3002\u6B64\u8BA1\u5212\u53EF\u80FD\u4ECD\u5728\u53E6\u4E00\u4E2A\u7A97\u53E3\u6216\u8BBE\u5907\u4E2D\u6267\u884C\u3002","chat.recovery.stopUnconfirmed":"\u65E0\u6CD5\u786E\u8BA4\u662F\u5426\u5DF2\u505C\u6B62\u3002\u8BF7\u91CD\u65B0\u8FDE\u63A5\u540E\u68C0\u67E5\u5404\u6B65\u9AA4\u3002","chat.recovery.cancelNotSent":"\u53D6\u6D88\u8BF7\u6C42\u672A\u80FD\u53D1\u9001\u3002\u8BF7\u5148\u68C0\u67E5\u5F53\u524D\u72B6\u6001\uFF0C\u518D\u91CD\u65B0\u9009\u62E9\u3002","chat.recovery.cancelUnconfirmed":"\u65E0\u6CD5\u786E\u8BA4\u662F\u5426\u5DF2\u53D6\u6D88\u3002\u8BF7\u68C0\u67E5\u8BF7\u6C42\u72B6\u6001\u3002","chat.recovery.reviewCancelNotSent":"\u53D6\u6D88\u5BA1\u9605\u7684\u8BF7\u6C42\u672A\u80FD\u53D1\u9001\u3002\u8BF7\u5148\u68C0\u67E5\u5F53\u524D\u72B6\u6001\uFF0C\u518D\u91CD\u65B0\u9009\u62E9\u3002","chat.recovery.reviewCancelUnconfirmed":"\u65E0\u6CD5\u786E\u8BA4\u662F\u5426\u5DF2\u53D6\u6D88\u5BA1\u9605\u3002\u8BF7\u68C0\u67E5\u8BF7\u6C42\u72B6\u6001\u3002","chat.recovery.leaveNotSent":"\u60A8\u7684\u9009\u62E9\u672A\u80FD\u4FDD\u5B58\u3002\u8BF7\u5148\u68C0\u67E5\u5F53\u524D\u72B6\u6001\uFF0C\u518D\u91CD\u65B0\u9009\u62E9\u3002","chat.recovery.leaveUnconfirmed":"\u65E0\u6CD5\u786E\u8BA4\u60A8\u7684\u9009\u62E9\u662F\u5426\u5DF2\u4FDD\u5B58\u3002\u8BF7\u68C0\u67E5\u8BF7\u6C42\u72B6\u6001\u3002","chat.recovery.keepNotSent":"\u60A8\u7684\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u9009\u62E9\u672A\u80FD\u53D1\u9001\u3002\u8BF7\u5148\u68C0\u67E5\u6B64\u524D\u5F85\u786E\u8BA4\u7684\u9009\u62E9\uFF0C\u518D\u91CD\u8BD5\u3002","chat.recovery.keepUnconfirmed":"\u65E0\u6CD5\u786E\u8BA4\u662F\u5426\u5DF2\u4FDD\u5B58\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u3002\u8BF7\u5148\u68C0\u67E5\u72B6\u6001\uFF0C\u518D\u4F5C\u9009\u62E9\u3002","chat.recovery.requestAlreadyStopped":"\u60A8\u8981\u6C42\u505C\u6B62\u7684\u5BF9\u5E94\u6267\u884C\u5DF2\u505C\u6B62\u3002","chat.recovery.requestTargetStopped":"\u5BF9\u5E94\u6267\u884C\u5DF2\u505C\u6B62\u3002","chat.recovery.requestedIntentApplied":"\u60A8\u7684\u5148\u524D\u8BF7\u6C42\u5DF2\u5BF9\u539F\u5B9A\u76EE\u6807\u751F\u6548\u3002","chat.recovery.requestedIntentNotApplied":"\u60A8\u7684\u5148\u524D\u8BF7\u6C42\u672A\u5BF9\u539F\u5B9A\u76EE\u6807\u751F\u6548\u3002","chat.recovery.intentSuperseded":"\u5F53\u524D\u5DF2\u6709\u65B0\u7684\u72EC\u7ACB\u51B3\u5B9A\u3002\u6B64\u8BF7\u6C42\u4E0D\u80FD\u66F4\u6539\u8BE5\u51B3\u5B9A\u3002","chat.recovery.intentTargetChanged":"\u5F53\u524D\u5DF2\u6709\u65B0\u7684\u6267\u884C\u6216\u51B3\u5B9A\u3002\u6B64\u8BF7\u6C42\u672A\u6539\u53D8\u8BE5\u72B6\u6001\u3002","chat.recovery.alreadyClosedByWinner":"\u6B64\u8BA1\u5212\u5DF2\u7ECF\u505C\u6B62\u6216\u5173\u95ED\u3002\u60A8\u7684\u8BF7\u6C42\u672A\u6539\u53D8\u5F53\u524D\u72B6\u6001\u3002","chat.recovery.alreadyStoppedNeedsDecision":"\u6B64\u8BA1\u5212\u5DF2\u7ECF\u505C\u6B62\u3002\u4ECD\u9700\u5BF9\u5DF2\u8BB0\u5F55\u7684\u4FEE\u6539\u4F5C\u51FA\u51B3\u5B9A\u3002","chat.recovery.cancelStarted":"\u6B64\u8BA1\u5212\u5DF2\u7ECF\u5F00\u59CB\u6267\u884C\u3002\u540E\u7EED\u6B65\u9AA4\u5DF2\u505C\u6B62\uFF1B\u90E8\u5206\u4FEE\u6539\u53EF\u80FD\u5DF2\u7ECF\u751F\u6548\u3002","chat.recovery.stoppedNoChanges":"\u5DF2\u5728\u6267\u884C\u524D\u505C\u6B62\u3002\u672A\u505A\u4EFB\u4F55\u4FEE\u6539\u3002","chat.recovery.initialTargetSettled":"\u539F\u64CD\u4F5C\u5DF2\u5B8C\u6210\u3002\u5176\u7ED3\u679C\u5C06\u4E88\u4EE5\u4FDD\u7559\uFF1B\u672A\u64A4\u9500\u4EFB\u4F55\u4FEE\u6539\u3002","chat.recovery.initialTargetStopped":"\u539F\u64CD\u4F5C\u5DF2\u505C\u6B62\u3002\u5404\u6B65\u9AA4\u7684\u7ED3\u679C\u5C06\u4E88\u4EE5\u4FDD\u7559\uFF1B\u672A\u64A4\u9500\u4EFB\u4F55\u4FEE\u6539\u3002","chat.recovery.reviewTargetSettled":"\u6B64\u6B21\u5BA1\u9605\u5DF2\u786E\u8BA4\u5E76\u6267\u884C\u7ED3\u675F\u3002\u5DF2\u8BB0\u5F55\u7684\u7ED3\u679C\u5C06\u4E88\u4EE5\u4FDD\u7559\u3002","chat.recovery.reviewTargetStopped":"\u6B64\u6B21\u5BA1\u9605\u5DF2\u786E\u8BA4\u3002\u5BF9\u5E94\u6267\u884C\u5DF2\u505C\u6B62\uFF1B\u5DF2\u8BB0\u5F55\u7684\u5404\u6B65\u9AA4\u7ED3\u679C\u5C06\u4E88\u4EE5\u4FDD\u7559\u3002","chat.recovery.planClosedKept":"\u60A8\u7684\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u9009\u62E9\u5DF2\u4FDD\u5B58\uFF0C\u8BA1\u5212\u5DF2\u5173\u95ED\u3002\u7AD9\u70B9\u4E2D\u7684\u503C\u672A\u88AB\u66F4\u6539\u3002","chat.recovery.keptForwardClosed":"\u5269\u4F59\u8BA1\u5212\u6B65\u9AA4\u5C06\u4E0D\u518D\u6267\u884C\u3002","chat.recovery.keptAlready":"\u6B64\u8BA1\u5212\u7684\u4FEE\u6539\u6B64\u524D\u5DF2\u88AB\u4FDD\u7559\uFF1B\u672C\u6B21\u8BF7\u6C42\u672A\u4F5C\u66F4\u6539\u3002","chat.recovery.leaveCompletedByKeep":"\u60A8\u4FDD\u6301\u5F53\u524D\u7ED3\u679C\u7684\u9009\u62E9\u5DF2\u4FDD\u5B58\uFF1B\u968F\u540E\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u51B3\u5B9A\u7ED3\u675F\u4E86\u5269\u4F59\u9009\u9879\u3002","chat.recovery.leaveCoveredByKeep":"\u60A8\u4FDD\u6301\u5F53\u524D\u7ED3\u679C\u7684\u9009\u62E9\u5DF2\u5305\u542B\u5728\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u51B3\u5B9A\u4E2D\u3002","chat.recovery.leaveNeedsReview":"\u7531\u4E8E\u7ED3\u679C\u5DF2\u53D8\u66F4\uFF0C\u4FDD\u6301\u73B0\u72B6\u7684\u9009\u62E9\u672A\u80FD\u4FDD\u5B58\u3002\u8BF7\u67E5\u770B\u66F4\u65B0\u540E\u7684\u5404\u6B65\u9AA4\u7ED3\u679C\u3002","chat.recovery.leaveSafetyNeedsReview":"\u5F53\u524D\u6267\u884C\u53CA\u5269\u4F59\u5B9A\u65F6\u52A8\u4F5C\uFF08\u5982\u6709\uFF09\u5DF2\u505C\u6B62\u3002\u7531\u4E8E\u7ED3\u679C\u5DF2\u53D8\u66F4\uFF0C\u4FDD\u6301\u73B0\u72B6\u7684\u9009\u62E9\u672A\u80FD\u4FDD\u5B58\u3002\u8BF7\u67E5\u770B\u66F4\u65B0\u540E\u7684\u5404\u6B65\u9AA4\u3002","chat.recovery.laterReceiptAfterKeep":"\u4FDD\u5B58\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u51B3\u5B9A\u540E\uFF0C\u4E00\u4E2A\u6B65\u9AA4\u7684\u72B6\u6001\u5F97\u5230\u4E86\u786E\u8BA4\u3002\u8BF7\u67E5\u770B\u66F4\u65B0\u540E\u7684\u7ED3\u679C\u3002","chat.recovery.undoSelected":"\u64A4\u9500\u6240\u9009\u6B65\u9AA4","chat.recovery.continue":"\u7EE7\u7EED","chat.recovery.statusProposal":"\u62DF\u8BAE\u8BA1\u5212","chat.recovery.statusCompleted":"\u5DF2\u5B8C\u6210","chat.recovery.stepsNotKnownYet":"\u5404\u6B65\u9AA4\u7684\u7ED3\u679C\u6682\u672A\u83B7\u77E5\u3002","chat.recovery.stepsUnknown":"\u6709 {count} \u4E2A\u6B65\u9AA4\u7684\u72B6\u6001\u65E0\u6CD5\u786E\u8BA4\u3002\u8BF7\u5148\u68C0\u67E5\u72B6\u6001\uFF0C\u518D\u51B3\u5B9A\u4E0B\u4E00\u6B65\u3002","chat.recovery.stepsNotDone":"\u6709 {count} \u4E2A\u6B65\u9AA4\u672A\u5B8C\u6210\u3002\u8BF7\u67E5\u770B\u7ED3\u679C\u3002","chat.recovery.laterReportAfterKeep":"\u4FDD\u5B58\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u540E\uFF0C\u6709\u6B65\u9AA4\u51FA\u73B0\u4E86\u4E0D\u540C\u7684\u72B6\u6001\u62A5\u544A\u3002\u5DF2\u4FDD\u5B58\u7684\u7ED3\u679C\u6CA1\u6709\u6539\u53D8\uFF1B\u8BF7\u67E5\u770B\u4E0B\u65B9\u7684\u65B0\u62A5\u544A\u3002","chat.recovery.reportedDifferently":"\u4E4B\u540E\u7684\u62A5\u544A\u4E0E\u6B64\u4E0D\u540C","chat.recovery.notAvailableYet":"\u6B64\u7248\u672C\u7684\u5E94\u7528\u6682\u4E0D\u652F\u6301\u6B64\u64CD\u4F5C\u3002\u60A8\u53EF\u4EE5\u4FDD\u6301\u73B0\u72B6\uFF0C\u6216\u63D0\u51FA\u65B0\u8BA1\u5212\u3002","chat.recovery.actionLoading":"\u6B63\u5728\u51C6\u5907\u6B64\u64CD\u4F5C\u2026","chat.recovery.retryAfterSeconds":"{seconds} \u79D2\u540E\u53EF\u4EE5\u91CD\u8BD5\u3002","chat.recovery.keepPending":"\u6B63\u5728\u4FDD\u5B58\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u2026","chat.recovery.keepRemainingSteps":"\u5C06\u6709 {count} \u4E2A\u8BA1\u5212\u6B65\u9AA4\u4E0D\u518D\u6267\u884C\u3002","chat.recovery.signInRequired":"\u8BF7\u91CD\u65B0\u767B\u5F55\uFF0C\u7136\u540E\u518D\u8BD5\u4E00\u6B21\u6B64\u8BF7\u6C42\u3002","chat.recovery.requestRefused":"\u7AD9\u70B9\u62D2\u7EDD\u4E86\u6B64\u8BF7\u6C42\u3002\u5982\u679C\u6B64\u95EE\u9898\u6301\u7EED\u51FA\u73B0\uFF0C\u8BF7\u8054\u7CFB\u7AD9\u70B9\u7BA1\u7406\u5458\u3002","chat.recovery.acknowledgmentAhead":"\u6B64\u9009\u62E9\u6240\u4F9D\u636E\u7684\u7ED3\u679C\u6BD4\u7AD9\u70B9\u8BB0\u5F55\u7684\u66F4\u65B0\u3002\u8BF7\u5237\u65B0\u540E\u91CD\u65B0\u9009\u62E9\u3002","chat.recovery.cancelCoveredByLeaveSafety":"\u6B64\u8BA1\u5212\u5DF2\u56E0\u4FDD\u6301\u73B0\u72B6\u7684\u9009\u62E9\u800C\u505C\u6B62\uFF0C\u65E0\u9700\u518D\u53D6\u6D88\u3002","chat.recovery.cancelCoveredByStopNoChanges":"\u6B64\u8BA1\u5212\u5DF2\u5728\u6267\u884C\u524D\u505C\u6B62\uFF0C\u672A\u505A\u4EFB\u4F55\u4FEE\u6539\u3002","chat.recovery.cancelDefeatedByStop":"\u6B64\u8BA1\u5212\u5DF2\u7ECF\u505C\u6B62\uFF0C\u65E0\u9700\u518D\u53D6\u6D88\u3002","chat.recovery.choiceReplacedByStop":"\u5148\u524D\u7684\u9009\u62E9\u5DF2\u751F\u6548\uFF0C\u968F\u540E\u8BA1\u5212\u5DF2\u505C\u6B62\u3002","chat.recovery.initialTargetClosed":"\u539F\u64CD\u4F5C\u5DF2\u5173\u95ED\uFF0C\u5176\u7ED3\u679C\u5C06\u4E88\u4EE5\u4FDD\u7559\u3002","chat.recovery.keepDefeatedByWinner":"\u7531\u4E8E\u5DF2\u5148\u8BB0\u5F55\u4E86\u5176\u4ED6\u51B3\u5B9A\uFF0C\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u672A\u80FD\u4FDD\u5B58\u3002\u8BF7\u67E5\u770B\u5F53\u524D\u7ED3\u679C\uFF0C\u518D\u4F5C\u9009\u62E9\u3002","chat.recovery.leaveDefeatedByWinner":"\u7531\u4E8E\u5DF2\u5148\u8BB0\u5F55\u4E86\u5176\u4ED6\u51B3\u5B9A\uFF0C\u4FDD\u6301\u73B0\u72B6\u7684\u9009\u62E9\u672A\u80FD\u4FDD\u5B58\u3002","chat.recovery.leaveNoDecision":"\u5F53\u524D\u6CA1\u6709\u53EF\u4EE5\u4FDD\u6301\u73B0\u72B6\u7684\u7ED3\u679C\u3002","chat.recovery.leaveSafetyAlreadyStopped":"\u6B64\u8BA1\u5212\u5DF2\u7ECF\u505C\u6B62\u3002\u4ECD\u9700\u5BF9\u5DF2\u8BB0\u5F55\u7684\u4FEE\u6539\u4F5C\u51FA\u51B3\u5B9A\u3002","chat.recovery.reopenedEvidence":"\u6709\u6B65\u9AA4\u7684\u65B0\u72B6\u6001\u4F7F\u6B64\u51B3\u5B9A\u91CD\u65B0\u6253\u5F00\u3002\u8BF7\u67E5\u770B\u66F4\u65B0\u540E\u7684\u7ED3\u679C\u3002","chat.recovery.winnerStopUser":"\u5DF2\u6709\u4EBA\u8981\u6C42\u505C\u6B62\u6B64\u8BA1\u5212\u3002","chat.recovery.winnerStopConnection":"\u6B64\u8BA1\u5212\u56E0\u8FDE\u63A5\u4E2D\u65AD\u800C\u505C\u6B62\u3002","chat.recovery.winnerStopRenewal":"\u6B64\u8BA1\u5212\u56E0\u65E0\u6CD5\u7EED\u671F\u6267\u884C\u6743\u9650\u800C\u505C\u6B62\u3002","chat.recovery.winnerStopStep":"\u6B64\u8BA1\u5212\u5728\u4E00\u4E2A\u6B65\u9AA4\u5931\u8D25\u540E\u505C\u6B62\u3002","chat.recovery.winnerStopStepUp":"\u6B64\u8BA1\u5212\u56E0\u672A\u5B8C\u6210\u6240\u9700\u9A8C\u8BC1\u800C\u505C\u6B62\u3002","chat.recovery.winnerStopIdentity":"\u6B64\u8BA1\u5212\u56E0\u65E0\u6CD5\u7EE7\u7EED\u9A8C\u8BC1\u6267\u884C\u8EAB\u4EFD\u800C\u505C\u6B62\u3002","chat.recovery.winnerStopAttribution":"\u6B64\u8BA1\u5212\u56E0\u65E0\u6CD5\u786E\u8BA4\u4E00\u4E2A\u6B65\u9AA4\u7684\u8BB0\u5F55\u7ED3\u679C\u800C\u505C\u6B62\u3002","chat.recovery.winnerStopChanged":"\u6B64\u8BA1\u5212\u56E0\u5DF2\u5BA1\u9605\u7684\u6B65\u9AA4\u53D1\u751F\u53D8\u66F4\u800C\u505C\u6B62\u3002","chat.recovery.winnerStopAdapter":"\u6B64\u8BA1\u5212\u56E0\u672A\u80FD\u63A5\u6536\u6240\u9700\u7684\u6267\u884C\u4FE1\u606F\u800C\u505C\u6B62\u3002","chat.recovery.winnerCancel":"\u5DF2\u6709\u4EBA\u8981\u6C42\u53D6\u6D88\u6B64\u8BA1\u5212\u3002","chat.recovery.winnerLeave":"\u5DF2\u8BB0\u5F55\u4FDD\u6301\u73B0\u72B6\u7684\u9009\u62E9\u3002","chat.recovery.winnerKeep":"\u5DF2\u4E3A\u6B64\u8BA1\u5212\u8BB0\u5F55\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u3002","chat.recovery.stepStatusChanged":"\u6B65\u9AA4\u72B6\u6001\u5DF2\u66F4\u65B0\u3002","chat.recovery.stepNotKnownYet":"\u6682\u672A\u83B7\u77E5"};var _jsxruntime = require('react/jsx-runtime');_chunkUYR3UEIWcjs.q.call(void 0, ce,se);_chunkUYR3UEIWcjs.q.call(void 0, _chunkVGGJGRNKcjs.a,_chunkVGGJGRNKcjs.b);var p=(t,y)=>t(y.key,y.values),ue={stop:["stop"],decline:["cancel-initial","cancel-review"],leave:["leave"],keep:["keep"]},ge={stop:"chat.recovery.stopping","cancel-initial":"chat.recovery.cancelling","cancel-review":"chat.recovery.cancelling",leave:"chat.recovery.leavePending",keep:"chat.recovery.keepPending"},T=t=>_optionalChain([t, 'access', _2 => _2.intent, 'optionalAccess', _3 => _3.status])==="sending"?ge[t.intent.kind]:void 0,fe=(t,y)=>[p(y,t.status.label),...T(t)?[y(T(t))]:[],...t.steps.map(i=>`${i.stepId}:${i.truth}`),...t.lines.map(i=>p(y,i)),...t.notice.map(i=>p(y,i))].join(`
|
|
2
|
-
`);function we({view:t,onPress:y,slots:i,sheet:u,hide:ie=[]}){let{format:n,primitives:x,planLabels:he}=
|
|
3
|
-
`));t.steps.some(s=>!k.has(`${s.stepId}:${s.truth}`))&&l.push(n("chat.recovery.stepStatusChanged"));let a=p(n,S.label);k.has(a)||l.push(a);let f=T(t);f&&!k.has(n(f))&&n(f)!==a&&l.push(n(f));for(let s of[...t.lines,...t.notice]){let b=p(n,s);k.has(b)||l.push(b)}l.length&&V(s=>({serial:(_nullishCoalesce(_optionalChain([s, 'optionalAccess', _11 => _11.serial]), () => (0)))+1,text:l.join(" ")}))}),_react.useEffect.call(void 0, ()=>()=>{
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunkVGGJGRNKcjs = require('./chunk-VGGJGRNK.cjs');var _chunkA3YOSFLEcjs = require('./chunk-A3YOSFLE.cjs');require('./chunk-FBADWFRR.cjs');var _chunkTODYQ3SGcjs = require('./chunk-TODYQ3SG.cjs');require('./chunk-QS3MKZOY.cjs');require('./chunk-RZ3AGK3U.cjs');require('./chunk-4BWV3SEL.cjs');require('./chunk-GT6PI4CT.cjs');require('./chunk-3KV7TDDR.cjs');require('./chunk-Q7BULGQG.cjs');require('./chunk-XSHOLIC7.cjs');require('./chunk-II26UWZM.cjs');var _react = require('react');var ce={"chat.recovery.heading":"Review the plan's status","chat.recovery.updateToControl":"Update the app to control this plan. Its recorded status is shown here.","chat.recovery.stopping":"Stopping further steps\u2026","chat.recovery.cancelling":"Cancelling\u2026","chat.recovery.leavePending":"Saving your choice to leave changes as they are\u2026","chat.recovery.currentRunning":"The plan is running now. Stop it before reviewing another action.","chat.recovery.currentStopped":"The plan is stopped. Recorded results may include changes already made.","chat.recovery.cancelledNoChanges":"Cancelled; nothing was changed.","chat.recovery.leftKnown":"Left as is. Existing changes are kept; no further steps will run from this plan.","chat.recovery.leftUnconfirmed":"Left as is; {count, plural, one {# step could not be confirmed} other {# steps could not be confirmed}}.","chat.recovery.keptKnown":"Current results kept; no further steps will run from this plan.","chat.recovery.done":"Done","chat.recovery.notDone":"Not done","chat.recovery.unknown":"Could not be confirmed","chat.recovery.stopped":"Stopped. Some changes may already have been made.","chat.recovery.capabilityMissing":"This site does not support this recovery action.","chat.recovery.intentPendingReason":"Wait for this request to be resolved before confirming another action.","chat.recovery.refreshConversation":"Refresh conversation","chat.recovery.hostGuidance":"Contact the site administrator if this problem continues.","chat.recovery.checkIntentStatus":"Check request status","chat.recovery.checkSavedChoice":"Check saved choice","chat.recovery.checkKeepStatus":"Check Keep status","chat.recovery.keepChanges":"Keep these changes","chat.recovery.leave":"Leave as is","chat.recovery.confirmKeepForwardOnly":"Keep the current results and close this plan? Remaining planned steps will not run. This plan has no Undo choice to end, and site values will not change.","chat.recovery.confirmEndRetention":"Keep the current results and close this plan's retained record? No planned steps or Undo choices remain. Site values will not change.","chat.recovery.keepReasonActive":"A confirmed action is still in progress or paused. Review that action first.","chat.recovery.keepReasonUnknown":"Some results could not be confirmed. Check their status first.","chat.recovery.keepReasonUnavailable":"This action is unavailable in the current account or conversation. Review the available status or contact the host.","chat.recovery.keepReasonChanged":"The reviewed results changed. Read the current results before choosing again.","chat.recovery.keepReasonPreview":"A different review is open. Resolve that review before choosing again.","chat.recovery.keepReasonNoSource":'There is no current result that can be closed with "Keep these changes".',"chat.recovery.alreadyKept":"The current results are already kept.","chat.recovery.stopNotSent":"Stop was not sent. A step already sent may still finish.","chat.recovery.stopNotSentElsewhere":"Stop was not sent. The plan may still be running in another window or device.","chat.recovery.stopUnconfirmed":"Stop could not be confirmed. Reconnect to check the steps.","chat.recovery.cancelNotSent":"Cancellation was not sent. Check the current status before choosing again.","chat.recovery.cancelUnconfirmed":"Cancellation could not be confirmed. Check the request status.","chat.recovery.reviewCancelNotSent":"Review cancellation was not sent. Check the current status before choosing again.","chat.recovery.reviewCancelUnconfirmed":"Review cancellation could not be confirmed. Check the request status.","chat.recovery.leaveNotSent":"Your choice was not saved. Check the current status before choosing again.","chat.recovery.leaveUnconfirmed":"Your choice could not be confirmed. Check the request status.","chat.recovery.keepNotSent":'Your "Keep these changes" choice could not be sent. Check any earlier pending choice before trying again.',"chat.recovery.keepUnconfirmed":'We could not confirm whether "Keep these changes" was saved. Check its status before choosing again.',"chat.recovery.requestAlreadyStopped":"The run you asked to stop was stopped.","chat.recovery.requestTargetStopped":"The targeted run is stopped.","chat.recovery.requestedIntentApplied":"Your earlier request was applied to its original target.","chat.recovery.requestedIntentNotApplied":"Your earlier request was not applied to its original target.","chat.recovery.intentSuperseded":"A newer independent decision is now current. This request cannot change it.","chat.recovery.intentTargetChanged":"A newer run or decision is current. This request did not change it.","chat.recovery.alreadyClosedByWinner":"This plan was already stopped or closed. Your request changed nothing.","chat.recovery.alreadyStoppedNeedsDecision":"This plan was already stopped. A decision about the recorded changes is still needed.","chat.recovery.cancelStarted":"This plan had already started. Further steps were stopped; some changes may have been made.","chat.recovery.stoppedNoChanges":"Stopped before execution. Nothing was changed.","chat.recovery.initialTargetSettled":"The original action had already finished. Its results are kept; no changes were undone.","chat.recovery.initialTargetStopped":"The original action is already stopped. Its step results are kept; no changes were undone.","chat.recovery.reviewTargetSettled":"This review had already been confirmed and finished. Its recorded results are kept.","chat.recovery.reviewTargetStopped":"This review had already been confirmed. Its execution is stopped; the recorded step results are kept.","chat.recovery.planClosedKept":'Your "Keep these changes" choice was saved and this plan was closed. Site values were not changed.',"chat.recovery.keptForwardClosed":"The remaining planned steps will not run.","chat.recovery.keptAlready":"These changes were already kept for this plan; this request did not change them.","chat.recovery.leaveCompletedByKeep":'Your choice to leave the current results was saved; "Keep these changes" then closed the remaining choice.',"chat.recovery.leaveCoveredByKeep":'Your choice to leave the current results is covered by "Keep these changes".',"chat.recovery.leaveNeedsReview":"Your choice to leave was not saved because the results changed. Review the updated step results.","chat.recovery.leaveSafetyNeedsReview":"The run and any remaining scheduled actions were stopped. Your choice to leave was not saved because results changed. Review the updated steps.","chat.recovery.laterReceiptAfterKeep":`A step's status was confirmed after "Keep these changes" was saved. Review the updated results.`,"chat.recovery.undoSelected":"Undo selected steps","chat.recovery.continue":"Continue","chat.recovery.statusProposal":"Proposed plan","chat.recovery.statusCompleted":"Completed","chat.recovery.stepsNotKnownYet":"Step results are not known yet.","chat.recovery.stepsUnknown":"{count, plural, one {# step could not be confirmed} other {# steps could not be confirmed}}. Check its status before choosing what to do.","chat.recovery.stepsNotDone":"{count, plural, one {# step was not done} other {# steps were not done}}. Review the results.","chat.recovery.laterReportAfterKeep":'After "Keep these changes" was saved, a step was reported differently. The saved results have not changed; review the newer report below.',"chat.recovery.reportedDifferently":"Reported differently later","chat.recovery.notAvailableYet":"This action is not available in this version of the app. You can leave the changes as they are, or ask for a new plan.","chat.recovery.actionLoading":"Getting this action ready\u2026","chat.recovery.retryAfterSeconds":"{seconds, plural, one {You can try again in # second.} other {You can try again in # seconds.}}","chat.recovery.keepPending":'Saving "Keep these changes"\u2026',"chat.recovery.keepRemainingSteps":"{count, plural, one {# planned step will not run.} other {# planned steps will not run.}}","chat.recovery.signInRequired":"Sign in again, then try this request again.","chat.recovery.requestRefused":"The site refused this request. Contact the site administrator if this continues.","chat.recovery.acknowledgmentAhead":"This choice was based on newer results than the site has. Refresh and choose again.","chat.recovery.cancelCoveredByLeaveSafety":"The plan had already been stopped by a choice to leave, so cancellation was not needed.","chat.recovery.cancelCoveredByStopNoChanges":"The plan had already stopped before it ran. Nothing was changed.","chat.recovery.cancelDefeatedByStop":"The plan had already been stopped, so cancellation was not needed.","chat.recovery.choiceReplacedByStop":"The earlier choice was applied; the plan was then stopped.","chat.recovery.initialTargetClosed":"The original action is already closed. Its results are kept.","chat.recovery.keepDefeatedByWinner":'"Keep these changes" was not saved because another decision was recorded first. Read the current results and choose again.',"chat.recovery.leaveDefeatedByWinner":"The choice to leave changes as they are was not saved because another decision was recorded first.","chat.recovery.leaveNoDecision":"There is no current result to leave as it is.","chat.recovery.leaveSafetyAlreadyStopped":"The plan was already stopped. A decision about the recorded changes is still needed.","chat.recovery.reopenedEvidence":"A newer step status reopened this decision. Review the updated results.","chat.recovery.winnerStopUser":"A stop was requested for this plan.","chat.recovery.winnerStopConnection":"This plan stopped because the connection was lost.","chat.recovery.winnerStopRenewal":"This plan stopped because permission to continue could not be renewed.","chat.recovery.winnerStopStep":"This plan stopped after a step failed.","chat.recovery.winnerStopStepUp":"This plan stopped because the required verification was not completed.","chat.recovery.winnerStopIdentity":"This plan stopped because its execution identity could no longer be verified.","chat.recovery.winnerStopAttribution":"This plan stopped because a step's recorded result could not be confirmed.","chat.recovery.winnerStopChanged":"This plan stopped because its reviewed steps changed.","chat.recovery.winnerStopAdapter":"This plan stopped because required execution details could not be received.","chat.recovery.winnerCancel":"Cancelling this plan was requested.","chat.recovery.winnerLeave":"A choice to leave the changes as they are was recorded.","chat.recovery.winnerKeep":'"Keep these changes" was recorded for this plan.',"chat.recovery.stepStatusChanged":"Step status updated.","chat.recovery.stepNotKnownYet":"Not known yet"},se={"chat.recovery.heading":"\u68C0\u67E5\u8BA1\u5212\u72B6\u6001","chat.recovery.updateToControl":"\u8BF7\u66F4\u65B0\u5E94\u7528\u540E\u518D\u64CD\u4F5C\u6B64\u8BA1\u5212\u3002\u6B64\u5904\u4ECD\u663E\u793A\u5DF2\u8BB0\u5F55\u7684\u72B6\u6001\u3002","chat.recovery.stopping":"\u6B63\u5728\u505C\u6B62\u540E\u7EED\u6B65\u9AA4\u2026","chat.recovery.cancelling":"\u6B63\u5728\u53D6\u6D88\u2026","chat.recovery.leavePending":"\u6B63\u5728\u4FDD\u5B58\u4FDD\u6301\u73B0\u72B6\u7684\u9009\u62E9\u2026","chat.recovery.currentRunning":"\u6B64\u8BA1\u5212\u76EE\u524D\u6B63\u5728\u6267\u884C\u3002\u8BF7\u5148\u505C\u6B62\u6267\u884C\uFF0C\u518D\u5BA1\u9605\u5176\u4ED6\u64CD\u4F5C\u3002","chat.recovery.currentStopped":"\u6B64\u8BA1\u5212\u5DF2\u505C\u6B62\u3002\u5DF2\u8BB0\u5F55\u7684\u7ED3\u679C\u53EF\u80FD\u5305\u542B\u5DF2\u7ECF\u751F\u6548\u7684\u4FEE\u6539\u3002","chat.recovery.cancelledNoChanges":"\u5DF2\u53D6\u6D88\uFF0C\u672A\u505A\u4EFB\u4F55\u4FEE\u6539\u3002","chat.recovery.leftKnown":"\u5DF2\u4FDD\u6301\u73B0\u72B6\u3002\u73B0\u6709\u4FEE\u6539\u5C06\u4E88\u4EE5\u4FDD\u7559\uFF1B\u6B64\u8BA1\u5212\u4E0D\u4F1A\u518D\u6267\u884C\u540E\u7EED\u6B65\u9AA4\u3002","chat.recovery.leftUnconfirmed":"\u5DF2\u4FDD\u6301\u73B0\u72B6\uFF1B\u6709 {count} \u4E2A\u6B65\u9AA4\u7684\u72B6\u6001\u65E0\u6CD5\u786E\u8BA4\u3002","chat.recovery.keptKnown":"\u5DF2\u4FDD\u7559\u5F53\u524D\u7ED3\u679C\uFF1B\u6B64\u8BA1\u5212\u4E0D\u4F1A\u518D\u6267\u884C\u540E\u7EED\u6B65\u9AA4\u3002","chat.recovery.done":"\u5DF2\u5B8C\u6210","chat.recovery.notDone":"\u672A\u5B8C\u6210","chat.recovery.unknown":"\u65E0\u6CD5\u786E\u8BA4","chat.recovery.stopped":"\u5DF2\u505C\u6B62\u3002\u90E8\u5206\u4FEE\u6539\u53EF\u80FD\u5DF2\u7ECF\u751F\u6548\u3002","chat.recovery.capabilityMissing":"\u6B64\u7AD9\u70B9\u4E0D\u652F\u6301\u6B64\u6062\u590D\u64CD\u4F5C\u3002","chat.recovery.intentPendingReason":"\u8BF7\u7B49\u5F85\u6B64\u8BF7\u6C42\u5904\u7406\u5B8C\u6210\u540E\uFF0C\u518D\u786E\u8BA4\u5176\u4ED6\u64CD\u4F5C\u3002","chat.recovery.refreshConversation":"\u5237\u65B0\u5BF9\u8BDD","chat.recovery.hostGuidance":"\u5982\u679C\u6B64\u95EE\u9898\u6301\u7EED\u51FA\u73B0\uFF0C\u8BF7\u8054\u7CFB\u7AD9\u70B9\u7BA1\u7406\u5458\u3002","chat.recovery.checkIntentStatus":"\u68C0\u67E5\u8BF7\u6C42\u72B6\u6001","chat.recovery.checkSavedChoice":"\u68C0\u67E5\u9009\u62E9\u662F\u5426\u5DF2\u4FDD\u5B58","chat.recovery.checkKeepStatus":"\u68C0\u67E5\u4FDD\u7559\u51B3\u5B9A\u72B6\u6001","chat.recovery.keepChanges":"\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539","chat.recovery.leave":"\u4FDD\u6301\u73B0\u72B6","chat.recovery.confirmKeepForwardOnly":"\u662F\u5426\u4FDD\u7559\u5F53\u524D\u7ED3\u679C\u5E76\u5173\u95ED\u6B64\u8BA1\u5212\uFF1F\u5269\u4F59\u8BA1\u5212\u6B65\u9AA4\u5C06\u4E0D\u518D\u6267\u884C\u3002\u6B64\u8BA1\u5212\u6CA1\u6709\u53EF\u7ED3\u675F\u7684\u64A4\u9500\u9009\u9879\uFF0C\u7AD9\u70B9\u4E2D\u7684\u503C\u4E5F\u4E0D\u4F1A\u66F4\u6539\u3002","chat.recovery.confirmEndRetention":"\u662F\u5426\u4FDD\u7559\u5F53\u524D\u7ED3\u679C\u5E76\u7ED3\u675F\u6B64\u8BA1\u5212\u8BB0\u5F55\u7684\u4FDD\u7559\uFF1F\u6CA1\u6709\u5269\u4F59\u8BA1\u5212\u6B65\u9AA4\u6216\u64A4\u9500\u9009\u9879\u3002\u7AD9\u70B9\u4E2D\u7684\u503C\u4E0D\u4F1A\u66F4\u6539\u3002","chat.recovery.keepReasonActive":"\u5DF2\u786E\u8BA4\u7684\u52A8\u4F5C\u4ECD\u5728\u6267\u884C\u6216\u6682\u505C\u4E2D\u3002\u8BF7\u5148\u67E5\u770B\u8BE5\u52A8\u4F5C\u3002","chat.recovery.keepReasonUnknown":"\u90E8\u5206\u7ED3\u679C\u65E0\u6CD5\u786E\u8BA4\u3002\u8BF7\u5148\u68C0\u67E5\u5176\u72B6\u6001\u3002","chat.recovery.keepReasonUnavailable":"\u6B64\u64CD\u4F5C\u5728\u5F53\u524D\u8D26\u6237\u6216\u5BF9\u8BDD\u4E2D\u4E0D\u53EF\u7528\u3002\u8BF7\u67E5\u770B\u53EF\u8BBF\u95EE\u7684\u72B6\u6001\u6216\u8054\u7CFB\u670D\u52A1\u63D0\u4F9B\u65B9\u3002","chat.recovery.keepReasonChanged":"\u5148\u524D\u5BA1\u9605\u7684\u7ED3\u679C\u5DF2\u53D8\u66F4\u3002\u8BF7\u5148\u67E5\u770B\u5F53\u524D\u7ED3\u679C\uFF0C\u518D\u4F5C\u9009\u62E9\u3002","chat.recovery.keepReasonPreview":"\u53E6\u4E00\u4E2A\u5BA1\u9605\u4ECD\u5904\u4E8E\u6253\u5F00\u72B6\u6001\u3002\u8BF7\u5148\u5904\u7406\u8BE5\u5BA1\u9605\uFF0C\u518D\u4F5C\u9009\u62E9\u3002","chat.recovery.keepReasonNoSource":"\u5F53\u524D\u6CA1\u6709\u53EF\u901A\u8FC7\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u51B3\u5B9A\u5173\u95ED\u7684\u7ED3\u679C\u3002","chat.recovery.alreadyKept":"\u5F53\u524D\u7ED3\u679C\u5DF2\u4FDD\u7559\u3002","chat.recovery.stopNotSent":"\u505C\u6B62\u8BF7\u6C42\u672A\u80FD\u53D1\u9001\u3002\u5DF2\u53D1\u9001\u7684\u6B65\u9AA4\u4ECD\u53EF\u80FD\u5B8C\u6210\u3002","chat.recovery.stopNotSentElsewhere":"\u505C\u6B62\u8BF7\u6C42\u672A\u80FD\u53D1\u9001\u3002\u6B64\u8BA1\u5212\u53EF\u80FD\u4ECD\u5728\u53E6\u4E00\u4E2A\u7A97\u53E3\u6216\u8BBE\u5907\u4E2D\u6267\u884C\u3002","chat.recovery.stopUnconfirmed":"\u65E0\u6CD5\u786E\u8BA4\u662F\u5426\u5DF2\u505C\u6B62\u3002\u8BF7\u91CD\u65B0\u8FDE\u63A5\u540E\u68C0\u67E5\u5404\u6B65\u9AA4\u3002","chat.recovery.cancelNotSent":"\u53D6\u6D88\u8BF7\u6C42\u672A\u80FD\u53D1\u9001\u3002\u8BF7\u5148\u68C0\u67E5\u5F53\u524D\u72B6\u6001\uFF0C\u518D\u91CD\u65B0\u9009\u62E9\u3002","chat.recovery.cancelUnconfirmed":"\u65E0\u6CD5\u786E\u8BA4\u662F\u5426\u5DF2\u53D6\u6D88\u3002\u8BF7\u68C0\u67E5\u8BF7\u6C42\u72B6\u6001\u3002","chat.recovery.reviewCancelNotSent":"\u53D6\u6D88\u5BA1\u9605\u7684\u8BF7\u6C42\u672A\u80FD\u53D1\u9001\u3002\u8BF7\u5148\u68C0\u67E5\u5F53\u524D\u72B6\u6001\uFF0C\u518D\u91CD\u65B0\u9009\u62E9\u3002","chat.recovery.reviewCancelUnconfirmed":"\u65E0\u6CD5\u786E\u8BA4\u662F\u5426\u5DF2\u53D6\u6D88\u5BA1\u9605\u3002\u8BF7\u68C0\u67E5\u8BF7\u6C42\u72B6\u6001\u3002","chat.recovery.leaveNotSent":"\u60A8\u7684\u9009\u62E9\u672A\u80FD\u4FDD\u5B58\u3002\u8BF7\u5148\u68C0\u67E5\u5F53\u524D\u72B6\u6001\uFF0C\u518D\u91CD\u65B0\u9009\u62E9\u3002","chat.recovery.leaveUnconfirmed":"\u65E0\u6CD5\u786E\u8BA4\u60A8\u7684\u9009\u62E9\u662F\u5426\u5DF2\u4FDD\u5B58\u3002\u8BF7\u68C0\u67E5\u8BF7\u6C42\u72B6\u6001\u3002","chat.recovery.keepNotSent":"\u60A8\u7684\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u9009\u62E9\u672A\u80FD\u53D1\u9001\u3002\u8BF7\u5148\u68C0\u67E5\u6B64\u524D\u5F85\u786E\u8BA4\u7684\u9009\u62E9\uFF0C\u518D\u91CD\u8BD5\u3002","chat.recovery.keepUnconfirmed":"\u65E0\u6CD5\u786E\u8BA4\u662F\u5426\u5DF2\u4FDD\u5B58\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u3002\u8BF7\u5148\u68C0\u67E5\u72B6\u6001\uFF0C\u518D\u4F5C\u9009\u62E9\u3002","chat.recovery.requestAlreadyStopped":"\u60A8\u8981\u6C42\u505C\u6B62\u7684\u5BF9\u5E94\u6267\u884C\u5DF2\u505C\u6B62\u3002","chat.recovery.requestTargetStopped":"\u5BF9\u5E94\u6267\u884C\u5DF2\u505C\u6B62\u3002","chat.recovery.requestedIntentApplied":"\u60A8\u7684\u5148\u524D\u8BF7\u6C42\u5DF2\u5BF9\u539F\u5B9A\u76EE\u6807\u751F\u6548\u3002","chat.recovery.requestedIntentNotApplied":"\u60A8\u7684\u5148\u524D\u8BF7\u6C42\u672A\u5BF9\u539F\u5B9A\u76EE\u6807\u751F\u6548\u3002","chat.recovery.intentSuperseded":"\u5F53\u524D\u5DF2\u6709\u65B0\u7684\u72EC\u7ACB\u51B3\u5B9A\u3002\u6B64\u8BF7\u6C42\u4E0D\u80FD\u66F4\u6539\u8BE5\u51B3\u5B9A\u3002","chat.recovery.intentTargetChanged":"\u5F53\u524D\u5DF2\u6709\u65B0\u7684\u6267\u884C\u6216\u51B3\u5B9A\u3002\u6B64\u8BF7\u6C42\u672A\u6539\u53D8\u8BE5\u72B6\u6001\u3002","chat.recovery.alreadyClosedByWinner":"\u6B64\u8BA1\u5212\u5DF2\u7ECF\u505C\u6B62\u6216\u5173\u95ED\u3002\u60A8\u7684\u8BF7\u6C42\u672A\u6539\u53D8\u5F53\u524D\u72B6\u6001\u3002","chat.recovery.alreadyStoppedNeedsDecision":"\u6B64\u8BA1\u5212\u5DF2\u7ECF\u505C\u6B62\u3002\u4ECD\u9700\u5BF9\u5DF2\u8BB0\u5F55\u7684\u4FEE\u6539\u4F5C\u51FA\u51B3\u5B9A\u3002","chat.recovery.cancelStarted":"\u6B64\u8BA1\u5212\u5DF2\u7ECF\u5F00\u59CB\u6267\u884C\u3002\u540E\u7EED\u6B65\u9AA4\u5DF2\u505C\u6B62\uFF1B\u90E8\u5206\u4FEE\u6539\u53EF\u80FD\u5DF2\u7ECF\u751F\u6548\u3002","chat.recovery.stoppedNoChanges":"\u5DF2\u5728\u6267\u884C\u524D\u505C\u6B62\u3002\u672A\u505A\u4EFB\u4F55\u4FEE\u6539\u3002","chat.recovery.initialTargetSettled":"\u539F\u64CD\u4F5C\u5DF2\u5B8C\u6210\u3002\u5176\u7ED3\u679C\u5C06\u4E88\u4EE5\u4FDD\u7559\uFF1B\u672A\u64A4\u9500\u4EFB\u4F55\u4FEE\u6539\u3002","chat.recovery.initialTargetStopped":"\u539F\u64CD\u4F5C\u5DF2\u505C\u6B62\u3002\u5404\u6B65\u9AA4\u7684\u7ED3\u679C\u5C06\u4E88\u4EE5\u4FDD\u7559\uFF1B\u672A\u64A4\u9500\u4EFB\u4F55\u4FEE\u6539\u3002","chat.recovery.reviewTargetSettled":"\u6B64\u6B21\u5BA1\u9605\u5DF2\u786E\u8BA4\u5E76\u6267\u884C\u7ED3\u675F\u3002\u5DF2\u8BB0\u5F55\u7684\u7ED3\u679C\u5C06\u4E88\u4EE5\u4FDD\u7559\u3002","chat.recovery.reviewTargetStopped":"\u6B64\u6B21\u5BA1\u9605\u5DF2\u786E\u8BA4\u3002\u5BF9\u5E94\u6267\u884C\u5DF2\u505C\u6B62\uFF1B\u5DF2\u8BB0\u5F55\u7684\u5404\u6B65\u9AA4\u7ED3\u679C\u5C06\u4E88\u4EE5\u4FDD\u7559\u3002","chat.recovery.planClosedKept":"\u60A8\u7684\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u9009\u62E9\u5DF2\u4FDD\u5B58\uFF0C\u8BA1\u5212\u5DF2\u5173\u95ED\u3002\u7AD9\u70B9\u4E2D\u7684\u503C\u672A\u88AB\u66F4\u6539\u3002","chat.recovery.keptForwardClosed":"\u5269\u4F59\u8BA1\u5212\u6B65\u9AA4\u5C06\u4E0D\u518D\u6267\u884C\u3002","chat.recovery.keptAlready":"\u6B64\u8BA1\u5212\u7684\u4FEE\u6539\u6B64\u524D\u5DF2\u88AB\u4FDD\u7559\uFF1B\u672C\u6B21\u8BF7\u6C42\u672A\u4F5C\u66F4\u6539\u3002","chat.recovery.leaveCompletedByKeep":"\u60A8\u4FDD\u6301\u5F53\u524D\u7ED3\u679C\u7684\u9009\u62E9\u5DF2\u4FDD\u5B58\uFF1B\u968F\u540E\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u51B3\u5B9A\u7ED3\u675F\u4E86\u5269\u4F59\u9009\u9879\u3002","chat.recovery.leaveCoveredByKeep":"\u60A8\u4FDD\u6301\u5F53\u524D\u7ED3\u679C\u7684\u9009\u62E9\u5DF2\u5305\u542B\u5728\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u51B3\u5B9A\u4E2D\u3002","chat.recovery.leaveNeedsReview":"\u7531\u4E8E\u7ED3\u679C\u5DF2\u53D8\u66F4\uFF0C\u4FDD\u6301\u73B0\u72B6\u7684\u9009\u62E9\u672A\u80FD\u4FDD\u5B58\u3002\u8BF7\u67E5\u770B\u66F4\u65B0\u540E\u7684\u5404\u6B65\u9AA4\u7ED3\u679C\u3002","chat.recovery.leaveSafetyNeedsReview":"\u5F53\u524D\u6267\u884C\u53CA\u5269\u4F59\u5B9A\u65F6\u52A8\u4F5C\uFF08\u5982\u6709\uFF09\u5DF2\u505C\u6B62\u3002\u7531\u4E8E\u7ED3\u679C\u5DF2\u53D8\u66F4\uFF0C\u4FDD\u6301\u73B0\u72B6\u7684\u9009\u62E9\u672A\u80FD\u4FDD\u5B58\u3002\u8BF7\u67E5\u770B\u66F4\u65B0\u540E\u7684\u5404\u6B65\u9AA4\u3002","chat.recovery.laterReceiptAfterKeep":"\u4FDD\u5B58\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u51B3\u5B9A\u540E\uFF0C\u4E00\u4E2A\u6B65\u9AA4\u7684\u72B6\u6001\u5F97\u5230\u4E86\u786E\u8BA4\u3002\u8BF7\u67E5\u770B\u66F4\u65B0\u540E\u7684\u7ED3\u679C\u3002","chat.recovery.undoSelected":"\u64A4\u9500\u6240\u9009\u6B65\u9AA4","chat.recovery.continue":"\u7EE7\u7EED","chat.recovery.statusProposal":"\u62DF\u8BAE\u8BA1\u5212","chat.recovery.statusCompleted":"\u5DF2\u5B8C\u6210","chat.recovery.stepsNotKnownYet":"\u5404\u6B65\u9AA4\u7684\u7ED3\u679C\u6682\u672A\u83B7\u77E5\u3002","chat.recovery.stepsUnknown":"\u6709 {count} \u4E2A\u6B65\u9AA4\u7684\u72B6\u6001\u65E0\u6CD5\u786E\u8BA4\u3002\u8BF7\u5148\u68C0\u67E5\u72B6\u6001\uFF0C\u518D\u51B3\u5B9A\u4E0B\u4E00\u6B65\u3002","chat.recovery.stepsNotDone":"\u6709 {count} \u4E2A\u6B65\u9AA4\u672A\u5B8C\u6210\u3002\u8BF7\u67E5\u770B\u7ED3\u679C\u3002","chat.recovery.laterReportAfterKeep":"\u4FDD\u5B58\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u540E\uFF0C\u6709\u6B65\u9AA4\u51FA\u73B0\u4E86\u4E0D\u540C\u7684\u72B6\u6001\u62A5\u544A\u3002\u5DF2\u4FDD\u5B58\u7684\u7ED3\u679C\u6CA1\u6709\u6539\u53D8\uFF1B\u8BF7\u67E5\u770B\u4E0B\u65B9\u7684\u65B0\u62A5\u544A\u3002","chat.recovery.reportedDifferently":"\u4E4B\u540E\u7684\u62A5\u544A\u4E0E\u6B64\u4E0D\u540C","chat.recovery.notAvailableYet":"\u6B64\u7248\u672C\u7684\u5E94\u7528\u6682\u4E0D\u652F\u6301\u6B64\u64CD\u4F5C\u3002\u60A8\u53EF\u4EE5\u4FDD\u6301\u73B0\u72B6\uFF0C\u6216\u63D0\u51FA\u65B0\u8BA1\u5212\u3002","chat.recovery.actionLoading":"\u6B63\u5728\u51C6\u5907\u6B64\u64CD\u4F5C\u2026","chat.recovery.retryAfterSeconds":"{seconds} \u79D2\u540E\u53EF\u4EE5\u91CD\u8BD5\u3002","chat.recovery.keepPending":"\u6B63\u5728\u4FDD\u5B58\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u2026","chat.recovery.keepRemainingSteps":"\u5C06\u6709 {count} \u4E2A\u8BA1\u5212\u6B65\u9AA4\u4E0D\u518D\u6267\u884C\u3002","chat.recovery.signInRequired":"\u8BF7\u91CD\u65B0\u767B\u5F55\uFF0C\u7136\u540E\u518D\u8BD5\u4E00\u6B21\u6B64\u8BF7\u6C42\u3002","chat.recovery.requestRefused":"\u7AD9\u70B9\u62D2\u7EDD\u4E86\u6B64\u8BF7\u6C42\u3002\u5982\u679C\u6B64\u95EE\u9898\u6301\u7EED\u51FA\u73B0\uFF0C\u8BF7\u8054\u7CFB\u7AD9\u70B9\u7BA1\u7406\u5458\u3002","chat.recovery.acknowledgmentAhead":"\u6B64\u9009\u62E9\u6240\u4F9D\u636E\u7684\u7ED3\u679C\u6BD4\u7AD9\u70B9\u8BB0\u5F55\u7684\u66F4\u65B0\u3002\u8BF7\u5237\u65B0\u540E\u91CD\u65B0\u9009\u62E9\u3002","chat.recovery.cancelCoveredByLeaveSafety":"\u6B64\u8BA1\u5212\u5DF2\u56E0\u4FDD\u6301\u73B0\u72B6\u7684\u9009\u62E9\u800C\u505C\u6B62\uFF0C\u65E0\u9700\u518D\u53D6\u6D88\u3002","chat.recovery.cancelCoveredByStopNoChanges":"\u6B64\u8BA1\u5212\u5DF2\u5728\u6267\u884C\u524D\u505C\u6B62\uFF0C\u672A\u505A\u4EFB\u4F55\u4FEE\u6539\u3002","chat.recovery.cancelDefeatedByStop":"\u6B64\u8BA1\u5212\u5DF2\u7ECF\u505C\u6B62\uFF0C\u65E0\u9700\u518D\u53D6\u6D88\u3002","chat.recovery.choiceReplacedByStop":"\u5148\u524D\u7684\u9009\u62E9\u5DF2\u751F\u6548\uFF0C\u968F\u540E\u8BA1\u5212\u5DF2\u505C\u6B62\u3002","chat.recovery.initialTargetClosed":"\u539F\u64CD\u4F5C\u5DF2\u5173\u95ED\uFF0C\u5176\u7ED3\u679C\u5C06\u4E88\u4EE5\u4FDD\u7559\u3002","chat.recovery.keepDefeatedByWinner":"\u7531\u4E8E\u5DF2\u5148\u8BB0\u5F55\u4E86\u5176\u4ED6\u51B3\u5B9A\uFF0C\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u672A\u80FD\u4FDD\u5B58\u3002\u8BF7\u67E5\u770B\u5F53\u524D\u7ED3\u679C\uFF0C\u518D\u4F5C\u9009\u62E9\u3002","chat.recovery.leaveDefeatedByWinner":"\u7531\u4E8E\u5DF2\u5148\u8BB0\u5F55\u4E86\u5176\u4ED6\u51B3\u5B9A\uFF0C\u4FDD\u6301\u73B0\u72B6\u7684\u9009\u62E9\u672A\u80FD\u4FDD\u5B58\u3002","chat.recovery.leaveNoDecision":"\u5F53\u524D\u6CA1\u6709\u53EF\u4EE5\u4FDD\u6301\u73B0\u72B6\u7684\u7ED3\u679C\u3002","chat.recovery.leaveSafetyAlreadyStopped":"\u6B64\u8BA1\u5212\u5DF2\u7ECF\u505C\u6B62\u3002\u4ECD\u9700\u5BF9\u5DF2\u8BB0\u5F55\u7684\u4FEE\u6539\u4F5C\u51FA\u51B3\u5B9A\u3002","chat.recovery.reopenedEvidence":"\u6709\u6B65\u9AA4\u7684\u65B0\u72B6\u6001\u4F7F\u6B64\u51B3\u5B9A\u91CD\u65B0\u6253\u5F00\u3002\u8BF7\u67E5\u770B\u66F4\u65B0\u540E\u7684\u7ED3\u679C\u3002","chat.recovery.winnerStopUser":"\u5DF2\u6709\u4EBA\u8981\u6C42\u505C\u6B62\u6B64\u8BA1\u5212\u3002","chat.recovery.winnerStopConnection":"\u6B64\u8BA1\u5212\u56E0\u8FDE\u63A5\u4E2D\u65AD\u800C\u505C\u6B62\u3002","chat.recovery.winnerStopRenewal":"\u6B64\u8BA1\u5212\u56E0\u65E0\u6CD5\u7EED\u671F\u6267\u884C\u6743\u9650\u800C\u505C\u6B62\u3002","chat.recovery.winnerStopStep":"\u6B64\u8BA1\u5212\u5728\u4E00\u4E2A\u6B65\u9AA4\u5931\u8D25\u540E\u505C\u6B62\u3002","chat.recovery.winnerStopStepUp":"\u6B64\u8BA1\u5212\u56E0\u672A\u5B8C\u6210\u6240\u9700\u9A8C\u8BC1\u800C\u505C\u6B62\u3002","chat.recovery.winnerStopIdentity":"\u6B64\u8BA1\u5212\u56E0\u65E0\u6CD5\u7EE7\u7EED\u9A8C\u8BC1\u6267\u884C\u8EAB\u4EFD\u800C\u505C\u6B62\u3002","chat.recovery.winnerStopAttribution":"\u6B64\u8BA1\u5212\u56E0\u65E0\u6CD5\u786E\u8BA4\u4E00\u4E2A\u6B65\u9AA4\u7684\u8BB0\u5F55\u7ED3\u679C\u800C\u505C\u6B62\u3002","chat.recovery.winnerStopChanged":"\u6B64\u8BA1\u5212\u56E0\u5DF2\u5BA1\u9605\u7684\u6B65\u9AA4\u53D1\u751F\u53D8\u66F4\u800C\u505C\u6B62\u3002","chat.recovery.winnerStopAdapter":"\u6B64\u8BA1\u5212\u56E0\u672A\u80FD\u63A5\u6536\u6240\u9700\u7684\u6267\u884C\u4FE1\u606F\u800C\u505C\u6B62\u3002","chat.recovery.winnerCancel":"\u5DF2\u6709\u4EBA\u8981\u6C42\u53D6\u6D88\u6B64\u8BA1\u5212\u3002","chat.recovery.winnerLeave":"\u5DF2\u8BB0\u5F55\u4FDD\u6301\u73B0\u72B6\u7684\u9009\u62E9\u3002","chat.recovery.winnerKeep":"\u5DF2\u4E3A\u6B64\u8BA1\u5212\u8BB0\u5F55\u201C\u4FDD\u7559\u8FD9\u4E9B\u4FEE\u6539\u201D\u3002","chat.recovery.stepStatusChanged":"\u6B65\u9AA4\u72B6\u6001\u5DF2\u66F4\u65B0\u3002","chat.recovery.stepNotKnownYet":"\u6682\u672A\u83B7\u77E5"};var _jsxruntime = require('react/jsx-runtime');_chunkA3YOSFLEcjs.q.call(void 0, ce,se);_chunkA3YOSFLEcjs.q.call(void 0, _chunkVGGJGRNKcjs.a,_chunkVGGJGRNKcjs.b);var p=(t,y)=>t(y.key,y.values),ue={stop:["stop"],decline:["cancel-initial","cancel-review"],leave:["leave"],keep:["keep"]},ge={stop:"chat.recovery.stopping","cancel-initial":"chat.recovery.cancelling","cancel-review":"chat.recovery.cancelling",leave:"chat.recovery.leavePending",keep:"chat.recovery.keepPending"},T=t=>_optionalChain([t, 'access', _2 => _2.intent, 'optionalAccess', _3 => _3.status])==="sending"?ge[t.intent.kind]:void 0,fe=(t,y)=>[p(y,t.status.label),...T(t)?[y(T(t))]:[],...t.steps.map(i=>`${i.stepId}:${i.truth}`),...t.lines.map(i=>p(y,i)),...t.notice.map(i=>p(y,i))].join(`
|
|
2
|
+
`);function we({view:t,onPress:y,slots:i,sheet:u,hide:ie=[]}){let{format:n,primitives:x,planLabels:he}=_chunkA3YOSFLEcjs.y.call(void 0, ),M=x.button,de=x.drawer,le=_chunkA3YOSFLEcjs.l.call(void 0, "keep-sheet"),pe=_chunkA3YOSFLEcjs.h.call(void 0, !!u,_optionalChain([_chunkA3YOSFLEcjs.g.call(void 0, ), 'optionalAccess', _4 => _4.owner, 'call', _5 => _5()]),()=>_optionalChain([u, 'optionalAccess', _6 => _6.onCancel, 'call', _7 => _7()])),q=_react.useRef.call(void 0, null),K=_react.useRef.call(void 0, null),h=_chunkA3YOSFLEcjs.g.call(void 0, ),d=_react.useRef.call(void 0, void 0),C=_react.useRef.call(void 0, void 0),W=_react.useRef.call(void 0, void 0),$=_react.useRef.call(void 0, void 0),P=_react.useRef.call(void 0, void 0),O=_react.useRef.call(void 0, void 0),[N,V]=_react.useState.call(void 0, null),G=_react.useId.call(void 0, ),S=t.status,r=t.alert;_react.useEffect.call(void 0, ()=>{let e=`${_optionalChain([h, 'optionalAccess', _8 => _8.owner, 'call', _9 => _9()])}|${t.planId}`;O.current!==e&&(O.current=e,P.current=void 0);let c=fe(t,n),g=P.current;if(P.current=c,g===c)return;if(g===void 0){let s=T(t);s&&V(b=>({serial:(_nullishCoalesce(_optionalChain([b, 'optionalAccess', _10 => _10.serial]), () => (0)))+1,text:n(s)}));return}let l=[],k=new Set(g.split(`
|
|
3
|
+
`));t.steps.some(s=>!k.has(`${s.stepId}:${s.truth}`))&&l.push(n("chat.recovery.stepStatusChanged"));let a=p(n,S.label);k.has(a)||l.push(a);let f=T(t);f&&!k.has(n(f))&&n(f)!==a&&l.push(n(f));for(let s of[...t.lines,...t.notice]){let b=p(n,s);k.has(b)||l.push(b)}l.length&&V(s=>({serial:(_nullishCoalesce(_optionalChain([s, 'optionalAccess', _11 => _11.serial]), () => (0)))+1,text:l.join(" ")}))}),_react.useEffect.call(void 0, ()=>()=>{_chunkA3YOSFLEcjs.d.call(void 0, _optionalChain([d, 'access', _12 => _12.current, 'optionalAccess', _13 => _13.origin])),_chunkA3YOSFLEcjs.d.call(void 0, _optionalChain([C, 'access', _14 => _14.current, 'optionalAccess', _15 => _15.origin])),d.current=void 0,C.current=void 0},[t.planId]);let m=_optionalChain([t, 'access', _16 => _16.intent, 'optionalAccess', _17 => _17.kind]);_react.useEffect.call(void 0, ()=>{!m&&!r&&(_chunkA3YOSFLEcjs.d.call(void 0, _optionalChain([d, 'access', _18 => _18.current, 'optionalAccess', _19 => _19.origin])),d.current=void 0)},[m,r]),_react.useEffect.call(void 0, ()=>{if(!r)return;let e=_optionalChain([K, 'access', _20 => _20.current, 'optionalAccess', _21 => _21.ownerDocument]);if(!e||!h)return;if(r.restoreFocus){if($.current===r.serial)return;$.current=r.serial;let a=C.current;if(C.current=void 0,!a)return;let f=_chunkA3YOSFLEcjs.a.call(void 0, e),s=!a.target.isConnected&&(!f||f===e.body)?a.target:null;if(!_chunkA3YOSFLEcjs.b.call(void 0, K.current,f)&&!s)return _chunkA3YOSFLEcjs.d.call(void 0, a.origin);let b=_chunkA3YOSFLEcjs.c.call(void 0, a.previous)&&_chunkA3YOSFLEcjs.b.call(void 0, h.root(),a.previous)?a.previous:q.current,J=a.origin.owner;_chunkA3YOSFLEcjs.j.call(void 0, h,b,{origin:a.origin,owner:J,stillCurrent:()=>h.owner()===J,removed:s,fallback:q.current});return}if(W.current===r.serial)return;W.current=r.serial;let c=d.current;if(!c||!m||!c.kinds.includes(m))return;d.current=void 0;let g=_chunkA3YOSFLEcjs.a.call(void 0, e);if(_chunkA3YOSFLEcjs.i.call(void 0, g))return _chunkA3YOSFLEcjs.d.call(void 0, c.origin);let l=_optionalChain([K, 'access', _22 => _22.current, 'optionalAccess', _23 => _23.querySelector, 'call', _24 => _24(r.action==="checkStatus"?'[data-action="status"]':r.action==="retry"||r.action==="wait"?'[data-action="retry"]':"[data-guidance]")]),k=c.origin.owner;l&&_chunkA3YOSFLEcjs.j.call(void 0, h,l,{origin:c.origin,owner:k,stillCurrent:()=>h.owner()===k,keep:!0})&&(_chunkA3YOSFLEcjs.d.call(void 0, _optionalChain([C, 'access', _25 => _25.current, 'optionalAccess', _26 => _26.origin])),C.current={origin:c.origin,target:l,previous:g})},[r,h,m]);let H=e=>{let c=_optionalChain([h, 'optionalAccess', _27 => _27.originFor, 'call', _28 => _28(`intent:${t.planId}:${e}`)]),g=_nullishCoalesce(ue[e], () => ((m?[m]:[])));_chunkA3YOSFLEcjs.d.call(void 0, _optionalChain([d, 'access', _29 => _29.current, 'optionalAccess', _30 => _30.origin])),d.current=c?{origin:c,kinds:g}:void 0,y(e)},_=T(t),j=t.actions.filter(e=>!ie.includes(e.id)),z=null;if(r&&!r.restoreFocus){let e=r.action==="signIn"?n("chat.recovery.signInRequired"):r.action==="hostGuidance"?n("chat.recovery.hostGuidance"):null;z=_jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment,{children:[r.message?_jsxruntime.jsx.call(void 0, "span",{children:p(n,r.message)}):null,e?_jsxruntime.jsx.call(void 0, "span",{tabIndex:-1,"data-guidance":"",children:e}):null,r.action==="retry"||r.action==="wait"?_jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment,{children:[_jsxruntime.jsx.call(void 0, M,{"data-action":"retry","aria-disabled":r.retryAvailable?void 0:!0,"aria-describedby":r.retryReasonKey?G:void 0,onPress:r.retryAvailable?()=>H("retry"):void 0,children:n("chat.retry")}),r.retryReasonKey?_jsxruntime.jsx.call(void 0, "span",{id:G,children:n(r.retryReasonKey,r.retryValues)}):null]}):null]})}return _jsxruntime.jsx.call(void 0, _chunkA3YOSFLEcjs.J,{name:"recoveryPanel",slots:i,data:{view:t},children:_jsxruntime.jsxs.call(void 0, "section",{ref:K,"aria-labelledby":`${t.planId}-recovery`,"data-status":S.dataStatus,"data-wire-state":S.wireState,"data-attention":String(S.attention),"data-tone":S.tone,"data-result":S.result,"data-intent-kind":_optionalChain([t, 'access', _31 => _31.intent, 'optionalAccess', _32 => _32.kind]),"data-intent-status":_optionalChain([t, 'access', _33 => _33.intent, 'optionalAccess', _34 => _34.status]),children:[_jsxruntime.jsx.call(void 0, "h3",{id:`${t.planId}-recovery`,ref:q,tabIndex:-1,children:p(n,S.label)}),_jsxruntime.jsx.call(void 0, "p",{role:"status","aria-live":"polite",children:N?_jsxruntime.jsx.call(void 0, "span",{"data-announcement":N.serial,children:N.text},N.serial):null}),_?_jsxruntime.jsx.call(void 0, "p",{"data-intent-line":"",children:n(_)}):null,t.lines.map(e=>_jsxruntime.jsx.call(void 0, "p",{"data-line":e.key,children:p(n,e)},e.key)),t.steps.length?_jsxruntime.jsx.call(void 0, "ol",{children:t.steps.map(e=>_jsxruntime.jsx.call(void 0, _chunkA3YOSFLEcjs.J,{name:"stepStatusRow",slots:i,data:{step:e},children:_jsxruntime.jsxs.call(void 0, "li",{"data-status":e.truth,"data-late":e.lateReport,children:[_chunkTODYQ3SGcjs.a.call(void 0, n,he,e),": ",n(e.textKey),e.lateReport?_jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment,{children:[" (",n("chat.recovery.reportedDifferently"),")"]}):null]})},e.stepId))}):null,t.notice.length?_jsxruntime.jsx.call(void 0, "div",{"data-notice":"",children:t.notice.map(e=>_jsxruntime.jsx.call(void 0, "p",{children:p(n,e)},e.key))}):null,_jsxruntime.jsx.call(void 0, "div",{role:"alert",children:z}),_jsxruntime.jsx.call(void 0, _chunkA3YOSFLEcjs.J,{name:"recoveryActions",slots:i,data:{actions:j},children:j.map(e=>_jsxruntime.jsx.call(void 0, _chunkA3YOSFLEcjs.F,{action:e,onPress:H},e.id))}),u&&!pe?_jsxruntime.jsxs.call(void 0, _chunkA3YOSFLEcjs.k,{as:de,open:!0,label:n("chat.recovery.keepChanges"),onClose:u.onCancel,closeLabel:n("chat.close"),...le,children:[u.messages.map(e=>_jsxruntime.jsx.call(void 0, "p",{children:p(n,e)},e.key)),_jsxruntime.jsx.call(void 0, _chunkA3YOSFLEcjs.F,{action:{id:"keep",labelKey:"chat.recovery.keepChanges",...u.proceed},onPress:()=>{let e=_optionalChain([h, 'optionalAccess', _35 => _35.originFor, 'call', _36 => _36(`intent:${t.planId}:keep`)]);_chunkA3YOSFLEcjs.d.call(void 0, _optionalChain([d, 'access', _37 => _37.current, 'optionalAccess', _38 => _38.origin])),d.current=e?{origin:e,kinds:["keep"]}:void 0,u.onProceed()}}),_jsxruntime.jsx.call(void 0, M,{onPress:u.onCancel,children:n("chat.cancel")})]}):null]})})}exports.default = we;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as g,b as S}from"./chunk-JFMVVGGB.js";import{f as y,j as m,q as f,y as d}from"./chunk-
|
|
1
|
+
import{a as g,b as S}from"./chunk-JFMVVGGB.js";import{f as y,j as m,q as f,y as d}from"./chunk-IPI4O4LP.js";import"./chunk-FQSWQLRW.js";import"./chunk-OWT55N6J.js";import{n as h}from"./chunk-QFBAOEPD.js";import"./chunk-RZZDQWC2.js";import"./chunk-M63QOANE.js";import"./chunk-L4PFFRDE.js";import"./chunk-T5XF2R74.js";import"./chunk-K73VV7KA.js";import"./chunk-5TBO732O.js";import{useContext as R,useId as v,useState as C}from"react";import{Fragment as b,jsx as e,jsxs as u}from"react/jsx-runtime";f(g,S);var T={running:"chat.tool.running",done:"chat.tool.done",failed:"chat.tool.failed"};function k({steps:o}){let{format:l,primitives:i}=d(),c=i.button,[n,s]=C(!1),a=`wp${v().replace(/[^\w-]/g,"")}-steps`,r=t=>t.label??l("chat.tool.working"),p=o.at(-1);return u("div",{"data-tool-steps":"","data-status":p.status,children:[n?null:e("p",{children:r(p)}),o.length>1?e(c,{"aria-expanded":n,"aria-controls":a,onPress:()=>s(!n),children:l(n?"chat.tool.hide":"chat.tool.show",{count:o.length})}):null,n?e("ol",{id:a,children:o.map(t=>u("li",{"data-status":t.status,children:[e("span",{children:r(t)}),e("span",{children:l(T[t.status])})]},t.id))}):null]})}function E({client:o,row:l}){let{format:i,primitives:c}=d(),n=c.button,s=R(y),a=o.getSnapshot().toolSteps,{actions:r}=h(l,{canStop:o.canStopReply(),canRetry:o.canRetryReply()}),p=t=>()=>{let w=s?.originFor("reply-wait");t(),m(s,s?.composer(),{origin:w,owner:s?.owner()??""})};return u(b,{children:[a.length?e(k,{steps:a}):null,r.length?e("div",{"data-reply-controls":"",children:r.map(t=>e(n,{onPress:t.id==="stop"?()=>{o.stopReply()}:p(()=>t.id==="retry"?o.retryReply():o.keepWaiting()),children:i(t.labelKey)},t.id))}):null]})}export{E as ReplyControls};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunkD2EGPBCXcjs = require('./chunk-D2EGPBCX.cjs');var
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunkD2EGPBCXcjs = require('./chunk-D2EGPBCX.cjs');var _chunkA3YOSFLEcjs = require('./chunk-A3YOSFLE.cjs');require('./chunk-FBADWFRR.cjs');require('./chunk-QS3MKZOY.cjs');var _chunkRZ3AGK3Ucjs = require('./chunk-RZ3AGK3U.cjs');require('./chunk-4BWV3SEL.cjs');require('./chunk-GT6PI4CT.cjs');require('./chunk-3KV7TDDR.cjs');require('./chunk-Q7BULGQG.cjs');require('./chunk-XSHOLIC7.cjs');require('./chunk-II26UWZM.cjs');var _react = require('react');var _jsxruntime = require('react/jsx-runtime');_chunkA3YOSFLEcjs.q.call(void 0, _chunkD2EGPBCXcjs.a,_chunkD2EGPBCXcjs.b);var T={running:"chat.tool.running",done:"chat.tool.done",failed:"chat.tool.failed"};function k({steps:o}){let{format:l,primitives:i}=_chunkA3YOSFLEcjs.y.call(void 0, ),c=i.button,[n,s]=_react.useState.call(void 0, !1),a=`wp${_react.useId.call(void 0, ).replace(/[^\w-]/g,"")}-steps`,r=t=>_nullishCoalesce(t.label, () => (l("chat.tool.working"))),p=o.at(-1);return _jsxruntime.jsxs.call(void 0, "div",{"data-tool-steps":"","data-status":p.status,children:[n?null:_jsxruntime.jsx.call(void 0, "p",{children:r(p)}),o.length>1?_jsxruntime.jsx.call(void 0, c,{"aria-expanded":n,"aria-controls":a,onPress:()=>s(!n),children:l(n?"chat.tool.hide":"chat.tool.show",{count:o.length})}):null,n?_jsxruntime.jsx.call(void 0, "ol",{id:a,children:o.map(t=>_jsxruntime.jsxs.call(void 0, "li",{"data-status":t.status,children:[_jsxruntime.jsx.call(void 0, "span",{children:r(t)}),_jsxruntime.jsx.call(void 0, "span",{children:l(T[t.status])})]},t.id))}):null]})}function E({client:o,row:l}){let{format:i,primitives:c}=_chunkA3YOSFLEcjs.y.call(void 0, ),n=c.button,s=_react.useContext.call(void 0, _chunkA3YOSFLEcjs.f),a=o.getSnapshot().toolSteps,{actions:r}=_chunkRZ3AGK3Ucjs.n.call(void 0, l,{canStop:o.canStopReply(),canRetry:o.canRetryReply()}),p=t=>()=>{let w=_optionalChain([s, 'optionalAccess', _ => _.originFor, 'call', _2 => _2("reply-wait")]);t(),_chunkA3YOSFLEcjs.j.call(void 0, s,_optionalChain([s, 'optionalAccess', _3 => _3.composer, 'call', _4 => _4()]),{origin:w,owner:_nullishCoalesce(_optionalChain([s, 'optionalAccess', _5 => _5.owner, 'call', _6 => _6()]), () => (""))})};return _jsxruntime.jsxs.call(void 0, _jsxruntime.Fragment,{children:[a.length?_jsxruntime.jsx.call(void 0, k,{steps:a}):null,r.length?_jsxruntime.jsx.call(void 0, "div",{"data-reply-controls":"",children:r.map(t=>_jsxruntime.jsx.call(void 0, n,{onPress:t.id==="stop"?()=>{o.stopReply()}:p(()=>t.id==="retry"?o.retryReply():o.keepWaiting()),children:i(t.labelKey)},t.id))}):null]})}exports.ReplyControls = E;
|
|
@@ -4,9 +4,9 @@ import { PrimitiveComponents, ThemeTokensHook, PartProps } from '../react/index.
|
|
|
4
4
|
export { ButtonProps, CheckboxProps, ConfirmSheet, ConversationRail, ConversationRailProps, DrawerProps, FieldAdornment, FieldAdornmentProps, FormFillFields, FormFillFieldsProps, FormFillPopup, FormFillPopupProps, InputProps, MarkdownImagePolicy, PartData, PartDataMap, PartMessage, PartName, PartPending, PartStep, PlanDiagram, PlanDiagramProps, PrivateAttachmentPort, RecoveryPanel, Slots, WaypointChat, WaypointChatProps, WaypointProvider, WaypointProviderProps, Widget, WidgetProps, WidgetRegistration, defaultProblemText, isSafeUrl, partNames, standardWidgets, useComposer, useConversation, useFlows, useFormFill, usePlan, useWaypointClient } from '../react/index.cjs';
|
|
5
5
|
import { Theme } from '../skin-default/index.cjs';
|
|
6
6
|
export { RequiredThemeToken, ResolvedTheme, ThemeToken, darkTheme, lightTheme, themeProperties } from '../skin-default/index.cjs';
|
|
7
|
-
export { A as ActionEntry, a as ActionId, B as BlockAnswer, b as BlockReply,
|
|
8
|
-
export { P as PlanLabels, s as stepName } from '../step-name-
|
|
9
|
-
export { B as BlockCatalogue, a as BlockMessageKey, C as ConfirmationCatalogue, b as ConfirmationMessageKey, F as FormCatalogue, c as FormMessageKey, d as FormatMessage, M as MessageKey, e as MessageValues, P as ProblemCatalogue, f as ProblemMessageKey, R as RecoveryCatalogue, g as RecoveryMessageKey, h as ReplyCatalogue, i as ReplyMessageKey, k as addMessages, l as catalogueFor, m as createFormatter, j as english, s as simplifiedChinese } from '../i18n-
|
|
7
|
+
export { A as ActionEntry, a as ActionId, B as BlockAnswer, b as BlockReply, m as BlockSummary, K as KeepSheet, c as KeepSheetView, P as PlanView, d as PlanViewAlert, e as PlanViewInput, f as PlanViewStatus, S as StepStatus, T as Tone, V as ViewMessage, g as cardReplyId, k as keepSheet, n as noticeMessages, p as planView, u as useBlockReply, h as usePlanView, i as useWaypointMessage, j as useWaypointSelector, l as useWaypointSnapshot } from '../block-reply-r8u-DNmZ.cjs';
|
|
8
|
+
export { P as PlanLabels, s as stepName } from '../step-name-CB3d3kkP.cjs';
|
|
9
|
+
export { B as BlockCatalogue, a as BlockMessageKey, C as ConfirmationCatalogue, b as ConfirmationMessageKey, F as FormCatalogue, c as FormMessageKey, d as FormatMessage, M as MessageKey, e as MessageValues, P as ProblemCatalogue, f as ProblemMessageKey, R as RecoveryCatalogue, g as RecoveryMessageKey, h as ReplyCatalogue, i as ReplyMessageKey, k as addMessages, l as catalogueFor, m as createFormatter, j as english, s as simplifiedChinese } from '../i18n-WC9f-h_q.cjs';
|
|
10
10
|
export { B as Block, b as BlockButtons, c as BlockCard, d as BlockChoice, e as BlockDetails, f as BlockDiff, g as BlockForm, h as BlockFormFill, i as BlockList, j as BlockMarkdown, k as BlockNotice, l as BlockPlan, m as BlockRouteLink, n as BlockTable, C as CanonicalRequest, o as CardAnswer, p as ConfirmationItem, q as ConfirmationRecord, r as ConfirmationSchedule, s as Conversation, t as CreateConversation, D as DecisionVersions, E as ExecutionAcceptance, u as ExtensionBlock, v as FinalHistory, a as Flow, w as FlowParameter, x as FormFillField, y as FormFillRequest, z as FormFillValue, A as FormSubject, G as FormValidation, F as Frame, H as FrameBlock, I as FrameMessageEnd, J as FrameMessageStart, K as FramePlanDraft, L as FramePlanFinal, N as FramePlanStep, O as FramePlanningRead, Q as FrameProblem, S as FrameStale, U as FrameTextDelta, V as FrameToolCall, W as ImmediateDraft, X as ImmediatePlan, Y as IntentCause, Z as IntentKind, _ as IntentRequest, $ as IntentTarget, a0 as IntentWinner, a1 as KeptFact, a2 as LeaveAcknowledgment, M as ManifestEntry, a3 as Message, a4 as Negotiated, a5 as Negotiation, a6 as NegotiationOfferWire, a7 as Outcome, a8 as PatchFlow, a9 as Plan, aa as PlanCommand, ab as PlanIntentReply, ac as PlanRecord, ad as PlanState, P as Problem, R as ReadTemplate, ae as RecoveryPhase, af as RecoveryView, ag as Reply, ah as ReplyAction, ai as ReplyConfirm, aj as ReplyDecline, ak as ReplyForm, al as ReplyFormFill, am as ReplyMessage, an as ReplyPlanValues, ao as ReplyStop, ap as ReplyToolResult, aq as RunFlow, ar as Source, as as Step, at as TimedPlan, T as ToolCall, au as WaypointProtocol, av as WinnerKind } from '../generated-C9tbjwK0.cjs';
|
|
11
11
|
export { A as AttachmentPort, B as BuiltinFlowTab, h as CAPABILITIES, i as Capability, C as ClientConfig, b as ClientSnapshot, j as ComposerContribution, k as ConversationReadError, d as ConversationReadResult, l as ConversationSource, m as ConversationSummary, D as DEFAULT_FLOW_TABS, n as FORM_SESSION_UNAVAILABLE, o as FeedbackInput, p as FeedbackPort, q as FlowSource, r as FlowSummary, s as FlowTab, t as FormDraft, u as FormField, v as FormMaterial, a as FormSession, F as FormSessionConfig, w as FormSnapshot, K as KeepChangesReview, x as KeepChangesReviewResult, y as KeepDisabledReason, M as MaybePromise, z as MessageVersionInput, E as MessageVersionPort, N as NegotiationOffer, P as PendingSend, G as PlanReadRefused, H as PlanRunner, I as PlatformPorts, f as ReadPorts, J as ReaderRequestContext, e as ReplyDelivery, R as ReplyInput, L as ReplyOutcome, g as ReplyState, O as RestoredMessage, Q as RunnerPorts, S as StepContext, T as StoragePort, U as ToolStep, V as TransportEvent, X as TransportPort, W as WaypointClient, c as WaypointEvent, Y as asProblem, Z as canTransition, _ as confirmationOf, $ as createMemoryStorage, a0 as createPlanRunner, a1 as createWaypointClient, a2 as flowTabId, a3 as loadFormSession, a4 as readProblem, a5 as replyRow, a6 as versionWalk } from '../form-fill-C32AHxSr.cjs';
|
|
12
12
|
export { I as IntentAlert, b as IntentFailure, c as IntentNotice, d as IntentOverlay, a as ScopeSignal } from '../intent-BQPPows1.cjs';
|
|
@@ -4,9 +4,9 @@ import { PrimitiveComponents, ThemeTokensHook, PartProps } from '../react/index.
|
|
|
4
4
|
export { ButtonProps, CheckboxProps, ConfirmSheet, ConversationRail, ConversationRailProps, DrawerProps, FieldAdornment, FieldAdornmentProps, FormFillFields, FormFillFieldsProps, FormFillPopup, FormFillPopupProps, InputProps, MarkdownImagePolicy, PartData, PartDataMap, PartMessage, PartName, PartPending, PartStep, PlanDiagram, PlanDiagramProps, PrivateAttachmentPort, RecoveryPanel, Slots, WaypointChat, WaypointChatProps, WaypointProvider, WaypointProviderProps, Widget, WidgetProps, WidgetRegistration, defaultProblemText, isSafeUrl, partNames, standardWidgets, useComposer, useConversation, useFlows, useFormFill, usePlan, useWaypointClient } from '../react/index.js';
|
|
5
5
|
import { Theme } from '../skin-default/index.js';
|
|
6
6
|
export { RequiredThemeToken, ResolvedTheme, ThemeToken, darkTheme, lightTheme, themeProperties } from '../skin-default/index.js';
|
|
7
|
-
export { A as ActionEntry, a as ActionId, B as BlockAnswer, b as BlockReply,
|
|
8
|
-
export { P as PlanLabels, s as stepName } from '../step-name-
|
|
9
|
-
export { B as BlockCatalogue, a as BlockMessageKey, C as ConfirmationCatalogue, b as ConfirmationMessageKey, F as FormCatalogue, c as FormMessageKey, d as FormatMessage, M as MessageKey, e as MessageValues, P as ProblemCatalogue, f as ProblemMessageKey, R as RecoveryCatalogue, g as RecoveryMessageKey, h as ReplyCatalogue, i as ReplyMessageKey, k as addMessages, l as catalogueFor, m as createFormatter, j as english, s as simplifiedChinese } from '../i18n-
|
|
7
|
+
export { A as ActionEntry, a as ActionId, B as BlockAnswer, b as BlockReply, m as BlockSummary, K as KeepSheet, c as KeepSheetView, P as PlanView, d as PlanViewAlert, e as PlanViewInput, f as PlanViewStatus, S as StepStatus, T as Tone, V as ViewMessage, g as cardReplyId, k as keepSheet, n as noticeMessages, p as planView, u as useBlockReply, h as usePlanView, i as useWaypointMessage, j as useWaypointSelector, l as useWaypointSnapshot } from '../block-reply-z8El20nD.js';
|
|
8
|
+
export { P as PlanLabels, s as stepName } from '../step-name-BlgVvshf.js';
|
|
9
|
+
export { B as BlockCatalogue, a as BlockMessageKey, C as ConfirmationCatalogue, b as ConfirmationMessageKey, F as FormCatalogue, c as FormMessageKey, d as FormatMessage, M as MessageKey, e as MessageValues, P as ProblemCatalogue, f as ProblemMessageKey, R as RecoveryCatalogue, g as RecoveryMessageKey, h as ReplyCatalogue, i as ReplyMessageKey, k as addMessages, l as catalogueFor, m as createFormatter, j as english, s as simplifiedChinese } from '../i18n-WC9f-h_q.js';
|
|
10
10
|
export { B as Block, b as BlockButtons, c as BlockCard, d as BlockChoice, e as BlockDetails, f as BlockDiff, g as BlockForm, h as BlockFormFill, i as BlockList, j as BlockMarkdown, k as BlockNotice, l as BlockPlan, m as BlockRouteLink, n as BlockTable, C as CanonicalRequest, o as CardAnswer, p as ConfirmationItem, q as ConfirmationRecord, r as ConfirmationSchedule, s as Conversation, t as CreateConversation, D as DecisionVersions, E as ExecutionAcceptance, u as ExtensionBlock, v as FinalHistory, a as Flow, w as FlowParameter, x as FormFillField, y as FormFillRequest, z as FormFillValue, A as FormSubject, G as FormValidation, F as Frame, H as FrameBlock, I as FrameMessageEnd, J as FrameMessageStart, K as FramePlanDraft, L as FramePlanFinal, N as FramePlanStep, O as FramePlanningRead, Q as FrameProblem, S as FrameStale, U as FrameTextDelta, V as FrameToolCall, W as ImmediateDraft, X as ImmediatePlan, Y as IntentCause, Z as IntentKind, _ as IntentRequest, $ as IntentTarget, a0 as IntentWinner, a1 as KeptFact, a2 as LeaveAcknowledgment, M as ManifestEntry, a3 as Message, a4 as Negotiated, a5 as Negotiation, a6 as NegotiationOfferWire, a7 as Outcome, a8 as PatchFlow, a9 as Plan, aa as PlanCommand, ab as PlanIntentReply, ac as PlanRecord, ad as PlanState, P as Problem, R as ReadTemplate, ae as RecoveryPhase, af as RecoveryView, ag as Reply, ah as ReplyAction, ai as ReplyConfirm, aj as ReplyDecline, ak as ReplyForm, al as ReplyFormFill, am as ReplyMessage, an as ReplyPlanValues, ao as ReplyStop, ap as ReplyToolResult, aq as RunFlow, ar as Source, as as Step, at as TimedPlan, T as ToolCall, au as WaypointProtocol, av as WinnerKind } from '../generated-C9tbjwK0.js';
|
|
11
11
|
export { A as AttachmentPort, B as BuiltinFlowTab, h as CAPABILITIES, i as Capability, C as ClientConfig, b as ClientSnapshot, j as ComposerContribution, k as ConversationReadError, d as ConversationReadResult, l as ConversationSource, m as ConversationSummary, D as DEFAULT_FLOW_TABS, n as FORM_SESSION_UNAVAILABLE, o as FeedbackInput, p as FeedbackPort, q as FlowSource, r as FlowSummary, s as FlowTab, t as FormDraft, u as FormField, v as FormMaterial, a as FormSession, F as FormSessionConfig, w as FormSnapshot, K as KeepChangesReview, x as KeepChangesReviewResult, y as KeepDisabledReason, M as MaybePromise, z as MessageVersionInput, E as MessageVersionPort, N as NegotiationOffer, P as PendingSend, G as PlanReadRefused, H as PlanRunner, I as PlatformPorts, f as ReadPorts, J as ReaderRequestContext, e as ReplyDelivery, R as ReplyInput, L as ReplyOutcome, g as ReplyState, O as RestoredMessage, Q as RunnerPorts, S as StepContext, T as StoragePort, U as ToolStep, V as TransportEvent, X as TransportPort, W as WaypointClient, c as WaypointEvent, Y as asProblem, Z as canTransition, _ as confirmationOf, $ as createMemoryStorage, a0 as createPlanRunner, a1 as createWaypointClient, a2 as flowTabId, a3 as loadFormSession, a4 as readProblem, a5 as replyRow, a6 as versionWalk } from '../form-fill-Dp3ut1_Y.js';
|
|
12
12
|
export { I as IntentAlert, b as IntentFailure, c as IntentNotice, d as IntentOverlay, a as ScopeSignal } from '../intent-BuvqEU3Q.js';
|
package/dist/styles.css
CHANGED
|
@@ -141,6 +141,21 @@
|
|
|
141
141
|
overflow: auto;
|
|
142
142
|
border-block: 1px solid var(--wp-border);
|
|
143
143
|
}
|
|
144
|
+
/* The filter spans the outline, so a narrow chat keeps it whole. */
|
|
145
|
+
.waypoint .wp-outline [data-outline-filter] {
|
|
146
|
+
margin-block-start: var(--wp-space1);
|
|
147
|
+
}
|
|
148
|
+
.waypoint .wp-outline [data-outline-filter] input {
|
|
149
|
+
box-sizing: border-box;
|
|
150
|
+
inline-size: 100%;
|
|
151
|
+
min-block-size: 24px;
|
|
152
|
+
}
|
|
153
|
+
.waypoint .wp-outline [data-outline-filter] [role="status"] {
|
|
154
|
+
margin: var(--wp-space1) 0 0;
|
|
155
|
+
}
|
|
156
|
+
.waypoint .wp-outline [data-outline-filter] [role="status"]:empty {
|
|
157
|
+
display: none;
|
|
158
|
+
}
|
|
144
159
|
/* Drawn inside the link, so the scroller never clips it; an outline, not a
|
|
145
160
|
shadow, so it stays under forced colors. */
|
|
146
161
|
.waypoint .wp-outline a:focus-visible {
|
package/dist/testing/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunkQ6BD2YL3cjs = require('../chunk-Q6BD2YL3.cjs');var _chunkUYR3UEIWcjs = require('../chunk-UYR3UEIW.cjs');require('../chunk-FBADWFRR.cjs');require('../chunk-QS3MKZOY.cjs');require('../chunk-M3UENQ6L.cjs');var _chunk4BWV3SELcjs = require('../chunk-4BWV3SEL.cjs');require('../chunk-GT6PI4CT.cjs');var _chunkLLPGVQUTcjs = require('../chunk-LLPGVQUT.cjs');var _chunk3KV7TDDRcjs = require('../chunk-3KV7TDDR.cjs');var _chunkQ7BULGQGcjs = require('../chunk-Q7BULGQG.cjs');require('../chunk-XSHOLIC7.cjs');require('../chunk-II26UWZM.cjs');var W=(e,r)=>e.id===r||(_nullishCoalesce(_optionalChain([e, 'access', _ => _.body, 'optionalAccess', _2 => _2.blocks]), () => ([]))).some(s=>W(s,r));function v(e=Date.now){let r=new Map,s=new Map,t=new Map,n=[],a=0,c=o=>{let i=t.get(o);return i||(i={protocol:"1.0",id:o,title:"Example",messages:[]},t.set(o,i)),i},u=(o,i)=>{for(let l of _nullishCoalesce(r.get(o), () => ([])))l(i)};return{transport:{negotiate:async()=>({protocol:"1.0",capabilities:["plans","flows","widgets"]}),read:async o=>structuredClone(c(o)),send:async(o,i)=>{let l=JSON.stringify([i,o.clientReplyId]),b=JSON.stringify({...o,protocol:void 0}),h=s.get(l),I={id:o.clientReplyId,code:"refused"};if(h){if(h.body!==b)throw I;return h.result}let S=c(i),R="blockId"in o?S.messages.flatMap(p=>p.blocks).find(p=>W(p,o.blockId)):void 0;if(_optionalChain([R, 'optionalAccess', _3 => _3.answered]))throw I;if(o.kind==="stop"){let p=S.messages.find(A=>A.id===o.messageId&&A.role==="assistant");if(!p)throw I;p.status==="writing"&&(o.versionIndex===void 0||o.versionIndex===(_nullishCoalesce(p.versionIndex, () => (1))))&&(p.status="stopped");let P={id:`reply-${++a}`};return s.set(l,{body:b,result:P}),P}let m=n.shift();if(_optionalChain([m, 'optionalAccess', _4 => _4.problem]))throw m.problem;if(R){let p={...o};delete p.protocol,R.answered=!0,R.answer=p}o.kind==="message"&&S.messages.push({id:`message-${++a}`,clientMessageId:o.clientMessageId,role:"user",content:o.content,blocks:[],createdAt:e()}),m&&(m.content!==void 0||m.blocks!==void 0)&&S.messages.push({id:`message-${++a}`,role:"assistant",content:_nullishCoalesce(m.content, () => ("")),blocks:_nullishCoalesce(m.blocks, () => ([])),createdAt:e(),...m.writing&&{status:"writing"}});for(let p of _nullishCoalesce(_optionalChain([m, 'optionalAccess', _5 => _5.events]), () => ([])))u(i,p);let q={id:`reply-${++a}`};return s.set(l,{body:b,result:q}),q},subscribe:(o,i)=>{let l=r.get(o);return l||(l=new Set,r.set(o,l)),l.add(i),()=>{l.delete(i)}}},enqueue:o=>{n.push(o)},emit:u,activeStreams:()=>[...r.values()].reduce((o,i)=>o+i.size,0)}}function w(){let e=0;return{clock:{now:()=>Date.now(),setTimeout:(r,s)=>setTimeout(r,s),clearTimeout:r=>clearTimeout(r)},online:()=>!0,visibility:()=>!0,ids:()=>`test-${++e}`}}var _react = require('react');var _react3 = require('@testing-library/react');function K(e,r){return _react3.render.call(void 0, _react.createElement.call(void 0, _chunkUYR3UEIWcjs.w,{client:r.client,...r.skin},e))}function te(e,r={}){e.test("composer, keyboard and accessibility contract",async()=>{let s=v(),t=_chunk3KV7TDDRcjs.i.call(void 0, {accountId:"test-account",conversationId:"test-conversation",platform:w(),transport:s.transport});await t.ready;try{let n=_react3.render.call(void 0, _react.createElement.call(void 0, _chunkUYR3UEIWcjs.O,{client:t,...r})),a=n.getByRole("textbox",{name:"Message"});await _react3.act.call(void 0, async()=>{_react3.fireEvent.change(a,{target:{value:"Keep"}})}),_react3.fireEvent.keyDown(a,{key:"Enter",shiftKey:!0}),e.assert.equal(t.getSnapshot().draft,"Keep"),await _react3.act.call(void 0, async()=>{_react3.fireEvent.keyDown(a,{key:"Enter"})}),e.assert.equal(t.getSnapshot().draft,""),e.assert.ok(n.getByRole("alert"))}finally{_react3.cleanup.call(void 0, ),t.dispose()}})}function oe(e,r={}){e.test("slot, provider and widget isolation contract",async()=>{let s=v();s.enqueue({content:"Fixture",blocks:[{type:"markdown",id:"widget-a",fallback:"Readable",body:{text:"Widget"}}]});let t=_chunk3KV7TDDRcjs.i.call(void 0, {accountId:"test-account",conversationId:"test-conversation",platform:w(),transport:s.transport});await t.ready,await t.setDraft("Start"),await t.send();try{let n=_react3.render.call(void 0, _react.createElement.call(void 0, _chunkUYR3UEIWcjs.O,{client:t,...r}));await _react3.waitFor.call(void 0, ()=>{if(!n.container.querySelector('[data-part="widgetFrame"] .wp-markdown'))throw new Error("Markdown is not ready")});let a=()=>{let u=new Map;for(let f of n.container.querySelectorAll("[data-part]")){let o=f.getAttribute("data-part");if(["composer","widgetFrame","messageActions","extraPanels"].includes(o))continue;let i=f.cloneNode(!0);for(let b of i.querySelectorAll("[data-part]"))b.replaceChildren();let l=_nullishCoalesce(u.get(o), () => ([]));l.push(i.outerHTML),u.set(o,l)}return[...u]},c=a();n.rerender(_react.createElement.call(void 0, _chunkUYR3UEIWcjs.O,{client:t,...r,slots:{composer:()=>_react.createElement.call(void 0, "span",null,"Custom composer"),messageActions:()=>_react.createElement.call(void 0, "span",null,"Custom actions"),extraPanels:()=>_react.createElement.call(void 0, "span",null,"Custom panel")}})),e.assert.equal(a(),c),e.assert.ok(n.queryAllByText("Custom actions").length),n.rerender(_react.createElement.call(void 0, _chunkUYR3UEIWcjs.O,{client:t,...r,parts:{composer:()=>_react.createElement.call(void 0, "span",null,"Custom composer")}})),e.assert.equal(a(),c),n.rerender(_react.createElement.call(void 0, _chunkUYR3UEIWcjs.O,{client:t,...r,widgets:[{type:"markdown",render:()=>_react.createElement.call(void 0, "span",null,"Custom markdown")}]})),e.assert.ok(n.queryByText("Custom markdown")),e.assert.equal(a(),c)}finally{_react3.cleanup.call(void 0, ),t.dispose()}})}function re(e,r={}){let s={markdown:{text:"**Readable**"},"form.fill":{requestId:"request-a",values:{title:{value:"Draft",validation:{status:"valid",messages:[]}}}},card:{title:"Card",blocks:[]},list:{items:["Item"]},table:{columns:["Title"],rows:[["Value"]]},form:{fields:[{name:"title",label:"Title",required:!0}]},choice:{mode:"single",options:["One","Two"]},buttons:{actions:[{id:"accept",label:"Accept"}]},diff:{before:"Before",after:"After"},plan:{planId:"plan-a"},"route-link":{label:"View",route:"/items/a"},notice:{text:"Notice"}};for(let[t,n]of Object.entries(s))e.test(`widget contract: ${t}`,async()=>{let a=v(),c=_chunk3KV7TDDRcjs.i.call(void 0, {accountId:"test-account",conversationId:"test-conversation",platform:w(),transport:a.transport});await c.ready;try{let f=K(_react.createElement.call(void 0, _chunkUYR3UEIWcjs.M,{block:{type:t,id:"widget-a",fallback:"Readable",body:n},disabled:!1,onReply:()=>{}}),{client:c,skin:r});e.assert.ok(f.container.textContent)}finally{_react3.cleanup.call(void 0, ),c.dispose()}})}function ne(e,r={}){e.test("failure announcement and direction contract",async()=>{let s=v(),t=_chunk3KV7TDDRcjs.i.call(void 0, {accountId:"test-account",conversationId:"test-conversation",platform:w(),transport:s.transport});await t.ready;try{let n=_react3.render.call(void 0, _react.createElement.call(void 0, _chunkUYR3UEIWcjs.O,{client:t,...r,dir:"rtl"}));await _react3.act.call(void 0, async()=>{t.report({id:"failure-a",code:"refused"})}),e.assert.ok(n.getByRole("alert").textContent),e.assert.equal(_optionalChain([n, 'access', _6 => _6.container, 'access', _7 => _7.querySelector, 'call', _8 => _8(".waypoint"), 'optionalAccess', _9 => _9.getAttribute, 'call', _10 => _10("dir")]),"rtl");let a=t.getSnapshot().announcement;await _react3.act.call(void 0, async()=>{t.report({id:"failure-a",code:"refused"})}),e.assert.equal(t.getSnapshot().announcement,a+1)}finally{_react3.cleanup.call(void 0, ),t.dispose()}})}function ae(e,r={}){e.test("form drafts and field adornment contract",async()=>{let s=v(),t=_chunk3KV7TDDRcjs.i.call(void 0, {accountId:"form-account",conversationId:"form-chat",platform:w(),transport:s.transport});await t.ready;let n=_chunkLLPGVQUTcjs.a.call(void 0, {fields:[{name:"title",label:"Title",tier:"low",value:"Draft"}],ids:()=>"form-contract"});try{let a=K(_react.createElement.call(void 0, _chunkQ6BD2YL3cjs.c,{session:n,onRegenerate:()=>{}}),{client:t,skin:r}),c=a.getByRole("textbox",{name:"Title"});_react3.act.call(void 0, ()=>{c.focus()}),e.assert.ok(a.getByRole("button",{name:"Regenerate Title"})),e.assert.ok(a.getAllByRole("status").some(f=>f.textContent==="Regenerate Title")),_react3.fireEvent.change(c,{target:{value:"Edited"}}),e.assert.equal(_optionalChain([n, 'access', _11 => _11.getSnapshot, 'call', _12 => _12(), 'access', _13 => _13.fields, 'access', _14 => _14.title, 'optionalAccess', _15 => _15.value]),"Edited");let u=n.begin({text:"Fill"});_react3.act.call(void 0, ()=>{n.receive({requestId:u.requestId,values:{title:{value:"Proposal",validation:{status:"valid",messages:[]}}}})}),e.assert.equal(c.value,"Edited"),_react3.fireEvent.click(await a.findByRole("button",{name:"Replace"})),e.assert.equal(c.value,"Proposal")}finally{_react3.cleanup.call(void 0, ),n.dispose(),t.dispose()}})}exports.CAPABILITIES = _chunkQ7BULGQGcjs.b; exports.addMessages = _chunkUYR3UEIWcjs.q; exports.catalogueFor = _chunkUYR3UEIWcjs.s; exports.createFormatter = _chunkUYR3UEIWcjs.t; exports.createScriptedTransport = v; exports.createTestPlatform = w; exports.darkTheme = _chunk4BWV3SELcjs.b; exports.defineAccessibilityContract = ne; exports.defineFormFillContract = ae; exports.defineOverrideContract = oe; exports.defineSkinContract = te; exports.defineWidgetContract = re; exports.english = _chunkUYR3UEIWcjs.p; exports.lightTheme = _chunk4BWV3SELcjs.a; exports.renderWithWaypoint = K; exports.simplifiedChinese = _chunkUYR3UEIWcjs.r; exports.themeProperties = _chunk4BWV3SELcjs.c;
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _chunkBRUQ75G3cjs = require('../chunk-BRUQ75G3.cjs');var _chunkA3YOSFLEcjs = require('../chunk-A3YOSFLE.cjs');require('../chunk-FBADWFRR.cjs');require('../chunk-QS3MKZOY.cjs');require('../chunk-RZ3AGK3U.cjs');var _chunk4BWV3SELcjs = require('../chunk-4BWV3SEL.cjs');require('../chunk-GT6PI4CT.cjs');var _chunkLLPGVQUTcjs = require('../chunk-LLPGVQUT.cjs');var _chunk3KV7TDDRcjs = require('../chunk-3KV7TDDR.cjs');var _chunkQ7BULGQGcjs = require('../chunk-Q7BULGQG.cjs');require('../chunk-XSHOLIC7.cjs');require('../chunk-II26UWZM.cjs');var W=(e,r)=>e.id===r||(_nullishCoalesce(_optionalChain([e, 'access', _ => _.body, 'optionalAccess', _2 => _2.blocks]), () => ([]))).some(s=>W(s,r));function v(e=Date.now){let r=new Map,s=new Map,t=new Map,n=[],a=0,c=o=>{let i=t.get(o);return i||(i={protocol:"1.0",id:o,title:"Example",messages:[]},t.set(o,i)),i},u=(o,i)=>{for(let l of _nullishCoalesce(r.get(o), () => ([])))l(i)};return{transport:{negotiate:async()=>({protocol:"1.0",capabilities:["plans","flows","widgets"]}),read:async o=>structuredClone(c(o)),send:async(o,i)=>{let l=JSON.stringify([i,o.clientReplyId]),b=JSON.stringify({...o,protocol:void 0}),h=s.get(l),I={id:o.clientReplyId,code:"refused"};if(h){if(h.body!==b)throw I;return h.result}let S=c(i),R="blockId"in o?S.messages.flatMap(p=>p.blocks).find(p=>W(p,o.blockId)):void 0;if(_optionalChain([R, 'optionalAccess', _3 => _3.answered]))throw I;if(o.kind==="stop"){let p=S.messages.find(A=>A.id===o.messageId&&A.role==="assistant");if(!p)throw I;p.status==="writing"&&(o.versionIndex===void 0||o.versionIndex===(_nullishCoalesce(p.versionIndex, () => (1))))&&(p.status="stopped");let P={id:`reply-${++a}`};return s.set(l,{body:b,result:P}),P}let m=n.shift();if(_optionalChain([m, 'optionalAccess', _4 => _4.problem]))throw m.problem;if(R){let p={...o};delete p.protocol,R.answered=!0,R.answer=p}o.kind==="message"&&S.messages.push({id:`message-${++a}`,clientMessageId:o.clientMessageId,role:"user",content:o.content,blocks:[],createdAt:e()}),m&&(m.content!==void 0||m.blocks!==void 0)&&S.messages.push({id:`message-${++a}`,role:"assistant",content:_nullishCoalesce(m.content, () => ("")),blocks:_nullishCoalesce(m.blocks, () => ([])),createdAt:e(),...m.writing&&{status:"writing"}});for(let p of _nullishCoalesce(_optionalChain([m, 'optionalAccess', _5 => _5.events]), () => ([])))u(i,p);let q={id:`reply-${++a}`};return s.set(l,{body:b,result:q}),q},subscribe:(o,i)=>{let l=r.get(o);return l||(l=new Set,r.set(o,l)),l.add(i),()=>{l.delete(i)}}},enqueue:o=>{n.push(o)},emit:u,activeStreams:()=>[...r.values()].reduce((o,i)=>o+i.size,0)}}function w(){let e=0;return{clock:{now:()=>Date.now(),setTimeout:(r,s)=>setTimeout(r,s),clearTimeout:r=>clearTimeout(r)},online:()=>!0,visibility:()=>!0,ids:()=>`test-${++e}`}}var _react = require('react');var _react3 = require('@testing-library/react');function K(e,r){return _react3.render.call(void 0, _react.createElement.call(void 0, _chunkA3YOSFLEcjs.w,{client:r.client,...r.skin},e))}function te(e,r={}){e.test("composer, keyboard and accessibility contract",async()=>{let s=v(),t=_chunk3KV7TDDRcjs.i.call(void 0, {accountId:"test-account",conversationId:"test-conversation",platform:w(),transport:s.transport});await t.ready;try{let n=_react3.render.call(void 0, _react.createElement.call(void 0, _chunkA3YOSFLEcjs.O,{client:t,...r})),a=n.getByRole("textbox",{name:"Message"});await _react3.act.call(void 0, async()=>{_react3.fireEvent.change(a,{target:{value:"Keep"}})}),_react3.fireEvent.keyDown(a,{key:"Enter",shiftKey:!0}),e.assert.equal(t.getSnapshot().draft,"Keep"),await _react3.act.call(void 0, async()=>{_react3.fireEvent.keyDown(a,{key:"Enter"})}),e.assert.equal(t.getSnapshot().draft,""),e.assert.ok(n.getByRole("alert"))}finally{_react3.cleanup.call(void 0, ),t.dispose()}})}function oe(e,r={}){e.test("slot, provider and widget isolation contract",async()=>{let s=v();s.enqueue({content:"Fixture",blocks:[{type:"markdown",id:"widget-a",fallback:"Readable",body:{text:"Widget"}}]});let t=_chunk3KV7TDDRcjs.i.call(void 0, {accountId:"test-account",conversationId:"test-conversation",platform:w(),transport:s.transport});await t.ready,await t.setDraft("Start"),await t.send();try{let n=_react3.render.call(void 0, _react.createElement.call(void 0, _chunkA3YOSFLEcjs.O,{client:t,...r}));await _react3.waitFor.call(void 0, ()=>{if(!n.container.querySelector('[data-part="widgetFrame"] .wp-markdown'))throw new Error("Markdown is not ready")});let a=()=>{let u=new Map;for(let f of n.container.querySelectorAll("[data-part]")){let o=f.getAttribute("data-part");if(["composer","widgetFrame","messageActions","extraPanels"].includes(o))continue;let i=f.cloneNode(!0);for(let b of i.querySelectorAll("[data-part]"))b.replaceChildren();let l=_nullishCoalesce(u.get(o), () => ([]));l.push(i.outerHTML),u.set(o,l)}return[...u]},c=a();n.rerender(_react.createElement.call(void 0, _chunkA3YOSFLEcjs.O,{client:t,...r,slots:{composer:()=>_react.createElement.call(void 0, "span",null,"Custom composer"),messageActions:()=>_react.createElement.call(void 0, "span",null,"Custom actions"),extraPanels:()=>_react.createElement.call(void 0, "span",null,"Custom panel")}})),e.assert.equal(a(),c),e.assert.ok(n.queryAllByText("Custom actions").length),n.rerender(_react.createElement.call(void 0, _chunkA3YOSFLEcjs.O,{client:t,...r,parts:{composer:()=>_react.createElement.call(void 0, "span",null,"Custom composer")}})),e.assert.equal(a(),c),n.rerender(_react.createElement.call(void 0, _chunkA3YOSFLEcjs.O,{client:t,...r,widgets:[{type:"markdown",render:()=>_react.createElement.call(void 0, "span",null,"Custom markdown")}]})),e.assert.ok(n.queryByText("Custom markdown")),e.assert.equal(a(),c)}finally{_react3.cleanup.call(void 0, ),t.dispose()}})}function re(e,r={}){let s={markdown:{text:"**Readable**"},"form.fill":{requestId:"request-a",values:{title:{value:"Draft",validation:{status:"valid",messages:[]}}}},card:{title:"Card",blocks:[]},list:{items:["Item"]},table:{columns:["Title"],rows:[["Value"]]},form:{fields:[{name:"title",label:"Title",required:!0}]},choice:{mode:"single",options:["One","Two"]},buttons:{actions:[{id:"accept",label:"Accept"}]},diff:{before:"Before",after:"After"},plan:{planId:"plan-a"},"route-link":{label:"View",route:"/items/a"},notice:{text:"Notice"}};for(let[t,n]of Object.entries(s))e.test(`widget contract: ${t}`,async()=>{let a=v(),c=_chunk3KV7TDDRcjs.i.call(void 0, {accountId:"test-account",conversationId:"test-conversation",platform:w(),transport:a.transport});await c.ready;try{let f=K(_react.createElement.call(void 0, _chunkA3YOSFLEcjs.M,{block:{type:t,id:"widget-a",fallback:"Readable",body:n},disabled:!1,onReply:()=>{}}),{client:c,skin:r});e.assert.ok(f.container.textContent)}finally{_react3.cleanup.call(void 0, ),c.dispose()}})}function ne(e,r={}){e.test("failure announcement and direction contract",async()=>{let s=v(),t=_chunk3KV7TDDRcjs.i.call(void 0, {accountId:"test-account",conversationId:"test-conversation",platform:w(),transport:s.transport});await t.ready;try{let n=_react3.render.call(void 0, _react.createElement.call(void 0, _chunkA3YOSFLEcjs.O,{client:t,...r,dir:"rtl"}));await _react3.act.call(void 0, async()=>{t.report({id:"failure-a",code:"refused"})}),e.assert.ok(n.getByRole("alert").textContent),e.assert.equal(_optionalChain([n, 'access', _6 => _6.container, 'access', _7 => _7.querySelector, 'call', _8 => _8(".waypoint"), 'optionalAccess', _9 => _9.getAttribute, 'call', _10 => _10("dir")]),"rtl");let a=t.getSnapshot().announcement;await _react3.act.call(void 0, async()=>{t.report({id:"failure-a",code:"refused"})}),e.assert.equal(t.getSnapshot().announcement,a+1)}finally{_react3.cleanup.call(void 0, ),t.dispose()}})}function ae(e,r={}){e.test("form drafts and field adornment contract",async()=>{let s=v(),t=_chunk3KV7TDDRcjs.i.call(void 0, {accountId:"form-account",conversationId:"form-chat",platform:w(),transport:s.transport});await t.ready;let n=_chunkLLPGVQUTcjs.a.call(void 0, {fields:[{name:"title",label:"Title",tier:"low",value:"Draft"}],ids:()=>"form-contract"});try{let a=K(_react.createElement.call(void 0, _chunkBRUQ75G3cjs.c,{session:n,onRegenerate:()=>{}}),{client:t,skin:r}),c=a.getByRole("textbox",{name:"Title"});_react3.act.call(void 0, ()=>{c.focus()}),e.assert.ok(a.getByRole("button",{name:"Regenerate Title"})),e.assert.ok(a.getAllByRole("status").some(f=>f.textContent==="Regenerate Title")),_react3.fireEvent.change(c,{target:{value:"Edited"}}),e.assert.equal(_optionalChain([n, 'access', _11 => _11.getSnapshot, 'call', _12 => _12(), 'access', _13 => _13.fields, 'access', _14 => _14.title, 'optionalAccess', _15 => _15.value]),"Edited");let u=n.begin({text:"Fill"});_react3.act.call(void 0, ()=>{n.receive({requestId:u.requestId,values:{title:{value:"Proposal",validation:{status:"valid",messages:[]}}}})}),e.assert.equal(c.value,"Edited"),_react3.fireEvent.click(await a.findByRole("button",{name:"Replace"})),e.assert.equal(c.value,"Proposal")}finally{_react3.cleanup.call(void 0, ),n.dispose(),t.dispose()}})}exports.CAPABILITIES = _chunkQ7BULGQGcjs.b; exports.addMessages = _chunkA3YOSFLEcjs.q; exports.catalogueFor = _chunkA3YOSFLEcjs.s; exports.createFormatter = _chunkA3YOSFLEcjs.t; exports.createScriptedTransport = v; exports.createTestPlatform = w; exports.darkTheme = _chunk4BWV3SELcjs.b; exports.defineAccessibilityContract = ne; exports.defineFormFillContract = ae; exports.defineOverrideContract = oe; exports.defineSkinContract = te; exports.defineWidgetContract = re; exports.english = _chunkA3YOSFLEcjs.p; exports.lightTheme = _chunk4BWV3SELcjs.a; exports.renderWithWaypoint = K; exports.simplifiedChinese = _chunkA3YOSFLEcjs.r; exports.themeProperties = _chunk4BWV3SELcjs.c;
|
package/dist/testing/index.d.cts
CHANGED
|
@@ -6,9 +6,9 @@ import { ReactElement } from 'react';
|
|
|
6
6
|
import { RenderResult } from '@testing-library/react';
|
|
7
7
|
import { WaypointProviderProps } from '../react/index.cjs';
|
|
8
8
|
export { ButtonProps, CheckboxProps, ConfirmSheet, ConversationRail, ConversationRailProps, DrawerProps, FieldAdornment, FieldAdornmentProps, FormFillFields, FormFillFieldsProps, FormFillPopup, FormFillPopupProps, InputProps, MarkdownImagePolicy, PartData, PartDataMap, PartMessage, PartName, PartPending, PartProps, PartStep, PlanDiagram, PlanDiagramProps, PrimitiveComponents, PrivateAttachmentPort, RecoveryPanel, Slots, ThemeTokensHook, WaypointChat, WaypointChatProps, WaypointProvider, Widget, WidgetProps, WidgetRegistration, defaultProblemText, isSafeUrl, partNames, standardWidgets, useComposer, useConversation, useFlows, useFormFill, usePlan, useWaypointClient } from '../react/index.cjs';
|
|
9
|
-
export { A as ActionEntry, a as ActionId, B as BlockAnswer, b as BlockReply,
|
|
10
|
-
export { P as PlanLabels, s as stepName } from '../step-name-
|
|
11
|
-
export { B as BlockCatalogue, a as BlockMessageKey, C as ConfirmationCatalogue, b as ConfirmationMessageKey, F as FormCatalogue, c as FormMessageKey, d as FormatMessage, M as MessageKey, e as MessageValues, P as ProblemCatalogue, f as ProblemMessageKey, R as RecoveryCatalogue, g as RecoveryMessageKey, h as ReplyCatalogue, i as ReplyMessageKey, k as addMessages, l as catalogueFor, m as createFormatter, j as english, s as simplifiedChinese } from '../i18n-
|
|
9
|
+
export { A as ActionEntry, a as ActionId, B as BlockAnswer, b as BlockReply, m as BlockSummary, K as KeepSheet, c as KeepSheetView, P as PlanView, d as PlanViewAlert, e as PlanViewInput, f as PlanViewStatus, S as StepStatus, T as Tone, V as ViewMessage, g as cardReplyId, k as keepSheet, n as noticeMessages, p as planView, u as useBlockReply, h as usePlanView, i as useWaypointMessage, j as useWaypointSelector, l as useWaypointSnapshot } from '../block-reply-r8u-DNmZ.cjs';
|
|
10
|
+
export { P as PlanLabels, s as stepName } from '../step-name-CB3d3kkP.cjs';
|
|
11
|
+
export { B as BlockCatalogue, a as BlockMessageKey, C as ConfirmationCatalogue, b as ConfirmationMessageKey, F as FormCatalogue, c as FormMessageKey, d as FormatMessage, M as MessageKey, e as MessageValues, P as ProblemCatalogue, f as ProblemMessageKey, R as RecoveryCatalogue, g as RecoveryMessageKey, h as ReplyCatalogue, i as ReplyMessageKey, k as addMessages, l as catalogueFor, m as createFormatter, j as english, s as simplifiedChinese } from '../i18n-WC9f-h_q.cjs';
|
|
12
12
|
export { RequiredThemeToken, ResolvedTheme, Theme, ThemeToken, darkTheme, lightTheme, themeProperties } from '../skin-default/index.cjs';
|
|
13
13
|
export { I as IntentAlert, b as IntentFailure, c as IntentNotice, d as IntentOverlay, a as ScopeSignal } from '../intent-BQPPows1.cjs';
|
|
14
14
|
|
package/dist/testing/index.d.ts
CHANGED
|
@@ -6,9 +6,9 @@ import { ReactElement } from 'react';
|
|
|
6
6
|
import { RenderResult } from '@testing-library/react';
|
|
7
7
|
import { WaypointProviderProps } from '../react/index.js';
|
|
8
8
|
export { ButtonProps, CheckboxProps, ConfirmSheet, ConversationRail, ConversationRailProps, DrawerProps, FieldAdornment, FieldAdornmentProps, FormFillFields, FormFillFieldsProps, FormFillPopup, FormFillPopupProps, InputProps, MarkdownImagePolicy, PartData, PartDataMap, PartMessage, PartName, PartPending, PartProps, PartStep, PlanDiagram, PlanDiagramProps, PrimitiveComponents, PrivateAttachmentPort, RecoveryPanel, Slots, ThemeTokensHook, WaypointChat, WaypointChatProps, WaypointProvider, Widget, WidgetProps, WidgetRegistration, defaultProblemText, isSafeUrl, partNames, standardWidgets, useComposer, useConversation, useFlows, useFormFill, usePlan, useWaypointClient } from '../react/index.js';
|
|
9
|
-
export { A as ActionEntry, a as ActionId, B as BlockAnswer, b as BlockReply,
|
|
10
|
-
export { P as PlanLabels, s as stepName } from '../step-name-
|
|
11
|
-
export { B as BlockCatalogue, a as BlockMessageKey, C as ConfirmationCatalogue, b as ConfirmationMessageKey, F as FormCatalogue, c as FormMessageKey, d as FormatMessage, M as MessageKey, e as MessageValues, P as ProblemCatalogue, f as ProblemMessageKey, R as RecoveryCatalogue, g as RecoveryMessageKey, h as ReplyCatalogue, i as ReplyMessageKey, k as addMessages, l as catalogueFor, m as createFormatter, j as english, s as simplifiedChinese } from '../i18n-
|
|
9
|
+
export { A as ActionEntry, a as ActionId, B as BlockAnswer, b as BlockReply, m as BlockSummary, K as KeepSheet, c as KeepSheetView, P as PlanView, d as PlanViewAlert, e as PlanViewInput, f as PlanViewStatus, S as StepStatus, T as Tone, V as ViewMessage, g as cardReplyId, k as keepSheet, n as noticeMessages, p as planView, u as useBlockReply, h as usePlanView, i as useWaypointMessage, j as useWaypointSelector, l as useWaypointSnapshot } from '../block-reply-z8El20nD.js';
|
|
10
|
+
export { P as PlanLabels, s as stepName } from '../step-name-BlgVvshf.js';
|
|
11
|
+
export { B as BlockCatalogue, a as BlockMessageKey, C as ConfirmationCatalogue, b as ConfirmationMessageKey, F as FormCatalogue, c as FormMessageKey, d as FormatMessage, M as MessageKey, e as MessageValues, P as ProblemCatalogue, f as ProblemMessageKey, R as RecoveryCatalogue, g as RecoveryMessageKey, h as ReplyCatalogue, i as ReplyMessageKey, k as addMessages, l as catalogueFor, m as createFormatter, j as english, s as simplifiedChinese } from '../i18n-WC9f-h_q.js';
|
|
12
12
|
export { RequiredThemeToken, ResolvedTheme, Theme, ThemeToken, darkTheme, lightTheme, themeProperties } from '../skin-default/index.js';
|
|
13
13
|
export { I as IntentAlert, b as IntentFailure, c as IntentNotice, d as IntentOverlay, a as ScopeSignal } from '../intent-BuvqEU3Q.js';
|
|
14
14
|
|
package/dist/testing/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as F}from"../chunk-
|
|
1
|
+
import{c as F}from"../chunk-5Q3INHKA.js";import{M,O as y,p as H,q as J,r as V,s as j,t as z,w as E}from"../chunk-IPI4O4LP.js";import"../chunk-FQSWQLRW.js";import"../chunk-OWT55N6J.js";import"../chunk-QFBAOEPD.js";import{a as $,b as L,c as N}from"../chunk-RZZDQWC2.js";import"../chunk-M63QOANE.js";import{a as B}from"../chunk-TCFCSGQ3.js";import{i as g}from"../chunk-L4PFFRDE.js";import{b as D}from"../chunk-T5XF2R74.js";import"../chunk-K73VV7KA.js";import"../chunk-5TBO732O.js";var W=(e,r)=>e.id===r||(e.body?.blocks??[]).some(s=>W(s,r));function v(e=Date.now){let r=new Map,s=new Map,t=new Map,n=[],a=0,c=o=>{let i=t.get(o);return i||(i={protocol:"1.0",id:o,title:"Example",messages:[]},t.set(o,i)),i},u=(o,i)=>{for(let l of r.get(o)??[])l(i)};return{transport:{negotiate:async()=>({protocol:"1.0",capabilities:["plans","flows","widgets"]}),read:async o=>structuredClone(c(o)),send:async(o,i)=>{let l=JSON.stringify([i,o.clientReplyId]),b=JSON.stringify({...o,protocol:void 0}),h=s.get(l),I={id:o.clientReplyId,code:"refused"};if(h){if(h.body!==b)throw I;return h.result}let S=c(i),R="blockId"in o?S.messages.flatMap(p=>p.blocks).find(p=>W(p,o.blockId)):void 0;if(R?.answered)throw I;if(o.kind==="stop"){let p=S.messages.find(A=>A.id===o.messageId&&A.role==="assistant");if(!p)throw I;p.status==="writing"&&(o.versionIndex===void 0||o.versionIndex===(p.versionIndex??1))&&(p.status="stopped");let P={id:`reply-${++a}`};return s.set(l,{body:b,result:P}),P}let m=n.shift();if(m?.problem)throw m.problem;if(R){let p={...o};delete p.protocol,R.answered=!0,R.answer=p}o.kind==="message"&&S.messages.push({id:`message-${++a}`,clientMessageId:o.clientMessageId,role:"user",content:o.content,blocks:[],createdAt:e()}),m&&(m.content!==void 0||m.blocks!==void 0)&&S.messages.push({id:`message-${++a}`,role:"assistant",content:m.content??"",blocks:m.blocks??[],createdAt:e(),...m.writing&&{status:"writing"}});for(let p of m?.events??[])u(i,p);let q={id:`reply-${++a}`};return s.set(l,{body:b,result:q}),q},subscribe:(o,i)=>{let l=r.get(o);return l||(l=new Set,r.set(o,l)),l.add(i),()=>{l.delete(i)}}},enqueue:o=>{n.push(o)},emit:u,activeStreams:()=>[...r.values()].reduce((o,i)=>o+i.size,0)}}function w(){let e=0;return{clock:{now:()=>Date.now(),setTimeout:(r,s)=>setTimeout(r,s),clearTimeout:r=>clearTimeout(r)},online:()=>!0,visibility:()=>!0,ids:()=>`test-${++e}`}}import{createElement as d}from"react";import{render as T,fireEvent as k,act as x,cleanup as C,waitFor as O}from"@testing-library/react";function K(e,r){return T(d(E,{client:r.client,...r.skin},e))}function te(e,r={}){e.test("composer, keyboard and accessibility contract",async()=>{let s=v(),t=g({accountId:"test-account",conversationId:"test-conversation",platform:w(),transport:s.transport});await t.ready;try{let n=T(d(y,{client:t,...r})),a=n.getByRole("textbox",{name:"Message"});await x(async()=>{k.change(a,{target:{value:"Keep"}})}),k.keyDown(a,{key:"Enter",shiftKey:!0}),e.assert.equal(t.getSnapshot().draft,"Keep"),await x(async()=>{k.keyDown(a,{key:"Enter"})}),e.assert.equal(t.getSnapshot().draft,""),e.assert.ok(n.getByRole("alert"))}finally{C(),t.dispose()}})}function oe(e,r={}){e.test("slot, provider and widget isolation contract",async()=>{let s=v();s.enqueue({content:"Fixture",blocks:[{type:"markdown",id:"widget-a",fallback:"Readable",body:{text:"Widget"}}]});let t=g({accountId:"test-account",conversationId:"test-conversation",platform:w(),transport:s.transport});await t.ready,await t.setDraft("Start"),await t.send();try{let n=T(d(y,{client:t,...r}));await O(()=>{if(!n.container.querySelector('[data-part="widgetFrame"] .wp-markdown'))throw new Error("Markdown is not ready")});let a=()=>{let u=new Map;for(let f of n.container.querySelectorAll("[data-part]")){let o=f.getAttribute("data-part");if(["composer","widgetFrame","messageActions","extraPanels"].includes(o))continue;let i=f.cloneNode(!0);for(let b of i.querySelectorAll("[data-part]"))b.replaceChildren();let l=u.get(o)??[];l.push(i.outerHTML),u.set(o,l)}return[...u]},c=a();n.rerender(d(y,{client:t,...r,slots:{composer:()=>d("span",null,"Custom composer"),messageActions:()=>d("span",null,"Custom actions"),extraPanels:()=>d("span",null,"Custom panel")}})),e.assert.equal(a(),c),e.assert.ok(n.queryAllByText("Custom actions").length),n.rerender(d(y,{client:t,...r,parts:{composer:()=>d("span",null,"Custom composer")}})),e.assert.equal(a(),c),n.rerender(d(y,{client:t,...r,widgets:[{type:"markdown",render:()=>d("span",null,"Custom markdown")}]})),e.assert.ok(n.queryByText("Custom markdown")),e.assert.equal(a(),c)}finally{C(),t.dispose()}})}function re(e,r={}){let s={markdown:{text:"**Readable**"},"form.fill":{requestId:"request-a",values:{title:{value:"Draft",validation:{status:"valid",messages:[]}}}},card:{title:"Card",blocks:[]},list:{items:["Item"]},table:{columns:["Title"],rows:[["Value"]]},form:{fields:[{name:"title",label:"Title",required:!0}]},choice:{mode:"single",options:["One","Two"]},buttons:{actions:[{id:"accept",label:"Accept"}]},diff:{before:"Before",after:"After"},plan:{planId:"plan-a"},"route-link":{label:"View",route:"/items/a"},notice:{text:"Notice"}};for(let[t,n]of Object.entries(s))e.test(`widget contract: ${t}`,async()=>{let a=v(),c=g({accountId:"test-account",conversationId:"test-conversation",platform:w(),transport:a.transport});await c.ready;try{let f=K(d(M,{block:{type:t,id:"widget-a",fallback:"Readable",body:n},disabled:!1,onReply:()=>{}}),{client:c,skin:r});e.assert.ok(f.container.textContent)}finally{C(),c.dispose()}})}function ne(e,r={}){e.test("failure announcement and direction contract",async()=>{let s=v(),t=g({accountId:"test-account",conversationId:"test-conversation",platform:w(),transport:s.transport});await t.ready;try{let n=T(d(y,{client:t,...r,dir:"rtl"}));await x(async()=>{t.report({id:"failure-a",code:"refused"})}),e.assert.ok(n.getByRole("alert").textContent),e.assert.equal(n.container.querySelector(".waypoint")?.getAttribute("dir"),"rtl");let a=t.getSnapshot().announcement;await x(async()=>{t.report({id:"failure-a",code:"refused"})}),e.assert.equal(t.getSnapshot().announcement,a+1)}finally{C(),t.dispose()}})}function ae(e,r={}){e.test("form drafts and field adornment contract",async()=>{let s=v(),t=g({accountId:"form-account",conversationId:"form-chat",platform:w(),transport:s.transport});await t.ready;let n=B({fields:[{name:"title",label:"Title",tier:"low",value:"Draft"}],ids:()=>"form-contract"});try{let a=K(d(F,{session:n,onRegenerate:()=>{}}),{client:t,skin:r}),c=a.getByRole("textbox",{name:"Title"});x(()=>{c.focus()}),e.assert.ok(a.getByRole("button",{name:"Regenerate Title"})),e.assert.ok(a.getAllByRole("status").some(f=>f.textContent==="Regenerate Title")),k.change(c,{target:{value:"Edited"}}),e.assert.equal(n.getSnapshot().fields.title?.value,"Edited");let u=n.begin({text:"Fill"});x(()=>{n.receive({requestId:u.requestId,values:{title:{value:"Proposal",validation:{status:"valid",messages:[]}}}})}),e.assert.equal(c.value,"Edited"),k.click(await a.findByRole("button",{name:"Replace"})),e.assert.equal(c.value,"Proposal")}finally{C(),n.dispose(),t.dispose()}})}export{D as CAPABILITIES,J as addMessages,j as catalogueFor,z as createFormatter,v as createScriptedTransport,w as createTestPlatform,L as darkTheme,ne as defineAccessibilityContract,ae as defineFormFillContract,oe as defineOverrideContract,te as defineSkinContract,re as defineWidgetContract,H as english,$ as lightTheme,K as renderWithWaypoint,V as simplifiedChinese,N as themeProperties};
|
package/etc/hooks.api.md
CHANGED
|
@@ -673,6 +673,9 @@ export const english: {
|
|
|
673
673
|
readonly "chat.latest": "Back to latest";
|
|
674
674
|
readonly "chat.latestNew": "{count, plural, one {Back to latest, # new reply} other {Back to latest, # new replies}}";
|
|
675
675
|
readonly "chat.outline": "Message outline";
|
|
676
|
+
readonly "chat.outlineFilter": "Filter messages";
|
|
677
|
+
readonly "chat.outlineMatches": "{count, plural, =0 {No messages match} one {# message matches} other {# messages match}}";
|
|
678
|
+
readonly "chat.outlineSearching": "Searching…";
|
|
676
679
|
readonly "chat.rail": "Conversations";
|
|
677
680
|
readonly "chat.close": "Close";
|
|
678
681
|
readonly "chat.quota": "Usage";
|
|
@@ -2254,6 +2257,12 @@ export function usePlanView(client?: WaypointClient): {
|
|
|
2254
2257
|
sheet: KeepSheet | null;
|
|
2255
2258
|
};
|
|
2256
2259
|
|
|
2260
|
+
// @public
|
|
2261
|
+
export function useWaypointMessage(messageId: string, client?: WaypointClient): Message | undefined;
|
|
2262
|
+
|
|
2263
|
+
// @public
|
|
2264
|
+
export function useWaypointSelector<T>(selector: (snapshot: ClientSnapshot) => T, isEqual?: (a: T, b: T) => boolean, client?: WaypointClient): T;
|
|
2265
|
+
|
|
2257
2266
|
// @public (undocumented)
|
|
2258
2267
|
export function useWaypointSnapshot(client?: WaypointClient): ClientSnapshot;
|
|
2259
2268
|
|
package/etc/messages.api.md
CHANGED
|
@@ -90,6 +90,9 @@ export const english: {
|
|
|
90
90
|
readonly "chat.latest": "Back to latest";
|
|
91
91
|
readonly "chat.latestNew": "{count, plural, one {Back to latest, # new reply} other {Back to latest, # new replies}}";
|
|
92
92
|
readonly "chat.outline": "Message outline";
|
|
93
|
+
readonly "chat.outlineFilter": "Filter messages";
|
|
94
|
+
readonly "chat.outlineMatches": "{count, plural, =0 {No messages match} one {# message matches} other {# messages match}}";
|
|
95
|
+
readonly "chat.outlineSearching": "Searching…";
|
|
93
96
|
readonly "chat.rail": "Conversations";
|
|
94
97
|
readonly "chat.close": "Close";
|
|
95
98
|
readonly "chat.quota": "Usage";
|
package/etc/react.api.md
CHANGED
|
@@ -795,6 +795,9 @@ export const english: {
|
|
|
795
795
|
readonly "chat.latest": "Back to latest";
|
|
796
796
|
readonly "chat.latestNew": "{count, plural, one {Back to latest, # new reply} other {Back to latest, # new replies}}";
|
|
797
797
|
readonly "chat.outline": "Message outline";
|
|
798
|
+
readonly "chat.outlineFilter": "Filter messages";
|
|
799
|
+
readonly "chat.outlineMatches": "{count, plural, =0 {No messages match} one {# message matches} other {# messages match}}";
|
|
800
|
+
readonly "chat.outlineSearching": "Searching…";
|
|
798
801
|
readonly "chat.rail": "Conversations";
|
|
799
802
|
readonly "chat.close": "Close";
|
|
800
803
|
readonly "chat.quota": "Usage";
|
|
@@ -2732,6 +2735,12 @@ export function usePlanView(client?: WaypointClient): {
|
|
|
2732
2735
|
// @public (undocumented)
|
|
2733
2736
|
export function useWaypointClient(): WaypointClient;
|
|
2734
2737
|
|
|
2738
|
+
// @public
|
|
2739
|
+
export function useWaypointMessage(messageId: string, client?: WaypointClient): Message | undefined;
|
|
2740
|
+
|
|
2741
|
+
// @public
|
|
2742
|
+
export function useWaypointSelector<T>(selector: (snapshot: ClientSnapshot) => T, isEqual?: (a: T, b: T) => boolean, client?: WaypointClient): T;
|
|
2743
|
+
|
|
2735
2744
|
// @public (undocumented)
|
|
2736
2745
|
export function useWaypointSnapshot(client?: WaypointClient): ClientSnapshot;
|
|
2737
2746
|
|
package/etc/skin-antd.api.md
CHANGED
|
@@ -816,6 +816,9 @@ export const english: {
|
|
|
816
816
|
readonly "chat.latest": "Back to latest";
|
|
817
817
|
readonly "chat.latestNew": "{count, plural, one {Back to latest, # new reply} other {Back to latest, # new replies}}";
|
|
818
818
|
readonly "chat.outline": "Message outline";
|
|
819
|
+
readonly "chat.outlineFilter": "Filter messages";
|
|
820
|
+
readonly "chat.outlineMatches": "{count, plural, =0 {No messages match} one {# message matches} other {# messages match}}";
|
|
821
|
+
readonly "chat.outlineSearching": "Searching…";
|
|
819
822
|
readonly "chat.rail": "Conversations";
|
|
820
823
|
readonly "chat.close": "Close";
|
|
821
824
|
readonly "chat.quota": "Usage";
|
|
@@ -2753,6 +2756,12 @@ export function usePlanView(client?: WaypointClient): {
|
|
|
2753
2756
|
// @public (undocumented)
|
|
2754
2757
|
export function useWaypointClient(): WaypointClient;
|
|
2755
2758
|
|
|
2759
|
+
// @public
|
|
2760
|
+
export function useWaypointMessage(messageId: string, client?: WaypointClient): Message | undefined;
|
|
2761
|
+
|
|
2762
|
+
// @public
|
|
2763
|
+
export function useWaypointSelector<T>(selector: (snapshot: ClientSnapshot) => T, isEqual?: (a: T, b: T) => boolean, client?: WaypointClient): T;
|
|
2764
|
+
|
|
2756
2765
|
// @public (undocumented)
|
|
2757
2766
|
export function useWaypointSnapshot(client?: WaypointClient): ClientSnapshot;
|
|
2758
2767
|
|
package/etc/testing.api.md
CHANGED
|
@@ -839,6 +839,9 @@ export const english: {
|
|
|
839
839
|
readonly "chat.latest": "Back to latest";
|
|
840
840
|
readonly "chat.latestNew": "{count, plural, one {Back to latest, # new reply} other {Back to latest, # new replies}}";
|
|
841
841
|
readonly "chat.outline": "Message outline";
|
|
842
|
+
readonly "chat.outlineFilter": "Filter messages";
|
|
843
|
+
readonly "chat.outlineMatches": "{count, plural, =0 {No messages match} one {# message matches} other {# messages match}}";
|
|
844
|
+
readonly "chat.outlineSearching": "Searching…";
|
|
842
845
|
readonly "chat.rail": "Conversations";
|
|
843
846
|
readonly "chat.close": "Close";
|
|
844
847
|
readonly "chat.quota": "Usage";
|
|
@@ -2798,6 +2801,12 @@ export function usePlanView(client?: WaypointClient): {
|
|
|
2798
2801
|
// @public (undocumented)
|
|
2799
2802
|
export function useWaypointClient(): WaypointClient;
|
|
2800
2803
|
|
|
2804
|
+
// @public
|
|
2805
|
+
export function useWaypointMessage(messageId: string, client?: WaypointClient): Message | undefined;
|
|
2806
|
+
|
|
2807
|
+
// @public
|
|
2808
|
+
export function useWaypointSelector<T>(selector: (snapshot: ClientSnapshot) => T, isEqual?: (a: T, b: T) => boolean, client?: WaypointClient): T;
|
|
2809
|
+
|
|
2801
2810
|
// @public (undocumented)
|
|
2802
2811
|
export function useWaypointSnapshot(client?: WaypointClient): ClientSnapshot;
|
|
2803
2812
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@appsolutely-io/waypoint",
|
|
3
|
-
"version": "0.1.1-next.
|
|
3
|
+
"version": "0.1.1-next.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -97,6 +97,7 @@
|
|
|
97
97
|
"test:consumer": "node scripts/consumer.mjs",
|
|
98
98
|
"test:native": "node scripts/native-smoke.mjs && node scripts/native-smoke.mjs dist/hooks/index.js --allow-react --forbid=intl-messageformat && node scripts/native-smoke.mjs dist/messages/index.js && node scripts/native-smoke.mjs dist/messages/en/index.js && node scripts/native-smoke.mjs dist/messages/zh-Hans/index.js",
|
|
99
99
|
"playground": "node --import tsx scripts/playground.mjs",
|
|
100
|
+
"perf": "node scripts/perf.mjs",
|
|
100
101
|
"test:playground": "playwright test --config playground/playwright.config.ts --workers=1"
|
|
101
102
|
},
|
|
102
103
|
"peerDependencies": {
|