@prettier-ai/dsh-client-ui-message-feedback 0.1.2-alpha.2 → 0.1.2-alpha.4

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.i18n.yaml CHANGED
@@ -2,5 +2,5 @@
2
2
  # side as of the last confirmed-consistent state. Both languages carry equal authority;
3
3
  # after editing either side, bring the other along and re-record with:
4
4
  # pnpm run verify-translation-pairing --write packages/client/ui-message-feedback/README.md
5
- README.md: 2610d0d362438977512ce753eecb66cb77497812
6
- README.zh.md: 58e4dc10d8d42c14cb711261b401d9cf3bec8f98
5
+ README.md: 58e3bd3eeae2f5701a23dc3bdf7da94f72acfbba
6
+ README.zh.md: f04fda4f038c2c301b21a2332f4c20ce776a629c
package/README.md CHANGED
@@ -85,3 +85,5 @@ These limits define the current feedback surface. They are current package const
85
85
  None.
86
86
 
87
87
  </details>
88
+
89
+ **Runtime invariant:** No companion is published. The plugin owns one slot registration and one per-session controller map, both released by the same effect disposer. The lifecycle spec proves the registration is withdrawn and every controller is dropped when the owning fiber is disposed, so no second authority exists to check at runtime.
package/README.zh.md CHANGED
@@ -85,3 +85,5 @@ kind: "package-reference"
85
85
  无。
86
86
 
87
87
  </details>
88
+
89
+ **运行时不变式:** 不发布伴生入口。插件持有一个 slot 注册和按 Session 的 controller map,两者由同一 effect disposer 释放;生命周期测试已直接观察该关系。
package/lib/client.js CHANGED
@@ -298,7 +298,7 @@ window.__ModuleLoader__.load({
298
298
  };
299
299
  //#endregion
300
300
  //#region \0dsh-css:/home/runner/work/dsh-publisher/dsh-publisher/upstream/packages/client/ui-message-feedback/src/client/MessageFeedbackActions.module.css.mjs
301
- const css = ".-ssFWa_action{width:calc(28px + var(--dsh-content-font-delta,0px));height:calc(28px + var(--dsh-content-font-delta,0px));color:var(--dsw-alias-label-tertiary);cursor:pointer;background:0 0;border:none;border-radius:28px;justify-content:center;align-items:center;padding:6px;display:inline-flex}.-ssFWa_action svg{width:calc(15px + var(--dsh-content-font-delta,0px));height:calc(15px + var(--dsh-content-font-delta,0px))}.-ssFWa_action:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-secondary)}.-ssFWa_action:disabled{cursor:default;opacity:.4}.-ssFWa_action[data-active]{color:var(--dsw-alias-label-primary)}.-ssFWa_noteOpen{max-width:220px;color:var(--dsw-alias-label-tertiary);font-size:var(--dsh-content-font-size-secondary,13px);line-height:calc(28px + var(--dsh-content-font-delta,0px));white-space:nowrap;text-overflow:ellipsis;cursor:pointer;background:0 0;border:none;border-radius:14px;padding:0 8px;overflow:hidden}.-ssFWa_noteOpen:hover,.-ssFWa_noteOpen[aria-expanded=true]{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-secondary)}.-ssFWa_notePanel{z-index:1100;box-sizing:border-box;border:1px solid var(--dsw-alias-border-inverted);background:var(--dsw-specific-menu);width:320px;max-width:min(360px,100vw - 24px);max-height:calc(100vh - 24px);box-shadow:var(--dsw-shadow-lv3);--dsh-scrollbar-thumb:var(--dsw-alias-scrollbar-bg-l2);--dsh-scrollbar-thumb-hover:var(--dsw-alias-scrollbar-hover-l2);border-radius:12px;flex-direction:column;gap:8px;padding:8px;display:flex;position:fixed;overflow-y:auto}.-ssFWa_noteInput{box-sizing:border-box;border:1px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-layer-1);width:100%;color:var(--dsw-alias-label-primary);font:inherit;resize:vertical;border-radius:8px;padding:6px 8px;font-size:13px}.-ssFWa_noteActions{justify-content:flex-end;gap:6px;display:flex}.-ssFWa_noteSave,.-ssFWa_noteCancel{cursor:pointer;border:none;border-radius:14px;height:28px;padding:0 10px;font-size:13px}.-ssFWa_noteSave{background:var(--dsw-alias-button-primary-fill);color:var(--dsw-alias-label-primary-foreground)}.-ssFWa_noteSave:hover:not(:disabled){background:var(--dsw-alias-button-primary-hover)}.-ssFWa_noteSave:disabled{cursor:default;opacity:.4}.-ssFWa_noteCancel{color:var(--dsw-alias-label-tertiary);background:0 0}.-ssFWa_noteCancel:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-secondary)}.-ssFWa_failure{color:var(--dsw-alias-label-tertiary);padding-left:4px;font-size:13px;line-height:20px}";
301
+ const css = ".-ssFWa_action{width:calc(28px + var(--dsh-content-font-delta,0px));height:calc(28px + var(--dsh-content-font-delta,0px));color:var(--dsw-alias-label-tertiary);cursor:pointer;background:0 0;border:none;border-radius:28px;justify-content:center;align-items:center;padding:6px;display:inline-flex}.-ssFWa_action svg{width:calc(15px + var(--dsh-content-font-delta,0px));height:calc(15px + var(--dsh-content-font-delta,0px))}.-ssFWa_action:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-secondary)}.-ssFWa_action:disabled{cursor:default;opacity:.4}.-ssFWa_action[data-active]{color:var(--dsw-alias-label-primary)}.-ssFWa_noteOpen{max-width:220px;color:var(--dsw-alias-label-tertiary);font-size:var(--dsh-content-font-size-secondary,13px);line-height:calc(28px + var(--dsh-content-font-delta,0px));white-space:nowrap;text-overflow:ellipsis;cursor:pointer;background:0 0;border:none;border-radius:14px;padding:0 8px;overflow:hidden}.-ssFWa_noteOpen:hover,.-ssFWa_noteOpen[aria-expanded=true]{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-secondary)}.-ssFWa_notePanel{z-index:1100;box-sizing:border-box;background:var(--dsw-specific-menu);--dsw-elevation-stroke-color:var(--dsw-alias-border-l1);width:320px;max-width:min(360px,100vw - 24px);max-height:calc(100vh - 24px);box-shadow:var(--dsw-elevation-prominent);--dsh-scrollbar-thumb:var(--dsw-alias-scrollbar-bg-l2);--dsh-scrollbar-thumb-hover:var(--dsw-alias-scrollbar-hover-l2);border:0;border-radius:12px;flex-direction:column;gap:8px;padding:8px;display:flex;position:fixed;overflow-y:auto}.-ssFWa_noteInput{box-sizing:border-box;border:.5px solid var(--dsw-alias-border-l4);background:var(--dsw-alias-bg-layer-1);width:100%;color:var(--dsw-alias-label-primary);font:inherit;resize:vertical;border-radius:8px;padding:6px 8px;font-size:13px}.-ssFWa_noteActions{justify-content:flex-end;gap:6px;display:flex}.-ssFWa_noteSave,.-ssFWa_noteCancel{cursor:pointer;border:none;border-radius:14px;height:28px;padding:0 10px;font-size:13px}.-ssFWa_noteSave{background:var(--dsw-alias-button-primary-fill);color:var(--dsw-alias-label-primary-foreground)}.-ssFWa_noteSave:hover:not(:disabled){background:var(--dsw-alias-button-primary-hover)}.-ssFWa_noteSave:disabled{cursor:default;opacity:.4}.-ssFWa_noteCancel{color:var(--dsw-alias-label-tertiary);background:0 0}.-ssFWa_noteCancel:hover{background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-secondary)}.-ssFWa_failure{color:var(--dsw-alias-label-tertiary);padding-left:4px;font-size:13px;line-height:20px}";
302
302
  const tagId = "@prettier-ai/dsh-client-ui-message-feedback/MessageFeedbackActions.module.css";
303
303
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId) + "]") === null) {
304
304
  const tag = document.createElement("style");
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@prettier-ai/dsh-client-ui-message-feedback",
3
3
  "description": "Per-message feedback controls contributed to the assistant-message action strip, backed by the messageFeedback Host Remote",
4
- "version": "0.1.2-alpha.2",
4
+ "version": "0.1.2-alpha.4",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -18,10 +18,6 @@
18
18
  "types": "./lib/types/index.d.ts",
19
19
  "default": "./lib/index.js"
20
20
  },
21
- "./invariant": {
22
- "types": "./lib/types/invariant.d.ts",
23
- "default": "./lib/invariant.js"
24
- },
25
21
  "./client": {
26
22
  "types": "./lib/types/client/index.d.ts",
27
23
  "default": "./lib/client.js"
@@ -50,25 +46,23 @@
50
46
  "@types/react-dom": "~18.3.0",
51
47
  "react": "^18.2.0",
52
48
  "react-dom": "^18.2.0",
53
- "@prettier-ai/dsh-api-remotes": "^0.1.2-alpha.2",
54
- "@prettier-ai/dsh-client-connection": "^0.1.2-alpha.2",
55
- "@prettier-ai/dsh-client-ui-conversation": "^0.1.2-alpha.2",
56
- "@prettier-ai/dsh-client-locale": "^0.1.2-alpha.2",
57
- "@prettier-ai/dsh-client-ui-primitives": "^0.1.2-alpha.2",
58
- "@prettier-ai/dsh-client-test-runtime": "^0.1.2-alpha.2",
59
- "@prettier-ai/dsh-client-ui-renderer": "^0.1.2-alpha.2",
60
- "@prettier-ai/dsh-client-ui-slots": "^0.1.2-alpha.2",
61
- "@prettier-ai/dsh-invariants": "^0.1.2-alpha.2",
62
- "@prettier-ai/dsh-message-feedback": "^0.1.2-alpha.2",
63
- "@prettier-ai/dsh-session": "^0.1.2-alpha.2",
64
- "@prettier-ai/dsh-typert-protocol": "^0.1.2-alpha.2",
65
- "@prettier-ai/cordis": "^4.0.2",
66
- "@prettier-ai/dsh-client-ui-chat": "^0.1.2-alpha.2",
67
- "@prettier-ai/dsh-client-ui-session": "^0.1.2-alpha.2"
49
+ "@prettier-ai/dsh-client-connection": "^0.1.2-alpha.4",
50
+ "@prettier-ai/dsh-api-remotes": "^0.1.2-alpha.4",
51
+ "@prettier-ai/dsh-client-locale": "^0.1.2-alpha.4",
52
+ "@prettier-ai/dsh-client-test-runtime": "^0.1.2-alpha.4",
53
+ "@prettier-ai/dsh-client-ui-primitives": "^0.1.2-alpha.4",
54
+ "@prettier-ai/dsh-client-ui-conversation": "^0.1.2-alpha.4",
55
+ "@prettier-ai/dsh-client-ui-renderer": "^0.1.2-alpha.4",
56
+ "@prettier-ai/dsh-client-ui-slots": "^0.1.2-alpha.4",
57
+ "@prettier-ai/dsh-message-feedback": "^0.1.2-alpha.4",
58
+ "@prettier-ai/dsh-typert-protocol": "^0.1.2-alpha.4",
59
+ "@prettier-ai/dsh-client-ui-chat": "^0.1.2-alpha.4",
60
+ "@prettier-ai/dsh-session": "^0.1.2-alpha.4",
61
+ "@prettier-ai/dsh-client-ui-session": "^0.1.2-alpha.4",
62
+ "@prettier-ai/cordis": "^4.0.2"
68
63
  },
69
64
  "files": [
70
65
  "lib/index.js",
71
- "lib/invariant.js",
72
66
  "lib/client.js",
73
67
  "lib/types/**/*.d.ts"
74
68
  ],
package/lib/invariant.js DELETED
@@ -1,26 +0,0 @@
1
- //#region lib/types/invariant.js
2
- /**
3
- * Package-owned invariant companion for `@prettier-ai/dsh-client-ui-message-feedback`.
4
- * @module @prettier-ai/dsh-client-ui-message-feedback/invariant
5
- */
6
- const PACKAGE_NAME = "@prettier-ai/dsh-client-ui-message-feedback";
7
- /** Cordis companion plugin name. */
8
- const name = "client-ui-feedback-invariant";
9
- /** Service required before the companion can reserve package ownership. */
10
- const inject = ["invariants"];
11
- /**
12
- * No runtime invariant: the plugin owns one slot registration and one
13
- * per-session controller map, both released by the same effect disposer. The
14
- * lifecycle spec proves the registration is withdrawn and every controller is
15
- * dropped when the owning fiber is disposed, so no second authority exists to
16
- * check at runtime.
17
- */
18
- const install = () => {};
19
- /**
20
- * Register this package's invariant companion.
21
- * @param ctx - Cordis context carrying the invariant service.
22
- * @returns the installed registration's disposer after setup succeeds.
23
- */
24
- const apply = (ctx) => Promise.resolve(ctx.invariants.register(PACKAGE_NAME, install));
25
- //#endregion
26
- export { apply, inject, name };
@@ -1,16 +0,0 @@
1
- /**
2
- * Package-owned invariant companion for `@prettier-ai/dsh-client-ui-message-feedback`.
3
- * @module @prettier-ai/dsh-client-ui-message-feedback/invariant
4
- */
5
- import type { Context } from '@prettier-ai/cordis';
6
- /** Cordis companion plugin name. */
7
- export declare const name = "client-ui-feedback-invariant";
8
- /** Service required before the companion can reserve package ownership. */
9
- export declare const inject: string[];
10
- /**
11
- * Register this package's invariant companion.
12
- * @param ctx - Cordis context carrying the invariant service.
13
- * @returns the installed registration's disposer after setup succeeds.
14
- */
15
- export declare const apply: (ctx: Context) => Promise<() => void>;
16
- //# sourceMappingURL=invariant.d.ts.map