@design.estate/dees-catalog 11.2.1 → 12.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/dist_bundle/bundle.js +1927 -1305
  2. package/dist_bundle/bundle.js.map +1 -1
  3. package/dist_ts_web/00_commitinfo_data.js +1 -1
  4. package/dist_ts_web/elements/00group-harness/dees-harness-conversation-picker/dees-harness-conversation-picker.d.ts +62 -0
  5. package/dist_ts_web/elements/00group-harness/dees-harness-conversation-picker/dees-harness-conversation-picker.demo.d.ts +1 -0
  6. package/dist_ts_web/elements/00group-harness/dees-harness-conversation-picker/dees-harness-conversation-picker.demo.js +38 -0
  7. package/dist_ts_web/elements/00group-harness/dees-harness-conversation-picker/dees-harness-conversation-picker.js +455 -0
  8. package/dist_ts_web/elements/00group-harness/dees-harness-conversation-picker/index.d.ts +1 -0
  9. package/dist_ts_web/elements/00group-harness/dees-harness-conversation-picker/index.js +2 -0
  10. package/dist_ts_web/elements/00group-harness/dees-harness-session-list/dees-harness-session-list.d.ts +39 -10
  11. package/dist_ts_web/elements/00group-harness/dees-harness-session-list/dees-harness-session-list.demo.js +81 -27
  12. package/dist_ts_web/elements/00group-harness/dees-harness-session-list/dees-harness-session-list.js +327 -115
  13. package/dist_ts_web/elements/00group-harness/dees-harness-tool-card/dees-harness-tool-card.d.ts +6 -2
  14. package/dist_ts_web/elements/00group-harness/dees-harness-tool-card/dees-harness-tool-card.js +68 -17
  15. package/dist_ts_web/elements/00group-harness/index.d.ts +1 -0
  16. package/dist_ts_web/elements/00group-harness/index.js +2 -1
  17. package/dist_ts_web/elements/00group-harness/interfaces.d.ts +35 -16
  18. package/package.json +2 -2
  19. package/readme.md +56 -24
  20. package/ts_web/00_commitinfo_data.ts +1 -1
  21. package/ts_web/elements/00group-harness/dees-harness-conversation-picker/dees-harness-conversation-picker.demo.ts +46 -0
  22. package/ts_web/elements/00group-harness/dees-harness-conversation-picker/dees-harness-conversation-picker.ts +420 -0
  23. package/ts_web/elements/00group-harness/dees-harness-conversation-picker/index.ts +1 -0
  24. package/ts_web/elements/00group-harness/dees-harness-session-list/dees-harness-session-list.demo.ts +94 -36
  25. package/ts_web/elements/00group-harness/dees-harness-session-list/dees-harness-session-list.ts +357 -120
  26. package/ts_web/elements/00group-harness/dees-harness-tool-card/dees-harness-tool-card.ts +67 -16
  27. package/ts_web/elements/00group-harness/index.ts +1 -0
  28. package/ts_web/elements/00group-harness/interfaces.ts +41 -16
@@ -1,5 +1,5 @@
1
1
  import { DeesElement, type TemplateResult } from '@design.estate/dees-element';
2
- import type { IDropSlot, IHarnessResourceAssociation, IHarnessResourceMeta, IHarnessSessionGroup, IHarnessSessionListItemRef, IHarnessSessionMeta, THarnessResourceAssociationInteractionSource } from '../interfaces.js';
2
+ import type { IDropSlot, IHarnessResourceAssociation, IHarnessResourceMeta, IHarnessSessionGroup, IHarnessSessionListItemRef, IHarnessSessionMeta, THarnessResourceAssociationInteractionSource, THarnessResourceAssociateMode } from '../interfaces.js';
3
3
  import '../../00group-utility/dees-icon/dees-icon.js';
4
4
  declare global {
5
5
  interface HTMLElementTagNameMap {
@@ -14,10 +14,13 @@ declare global {
14
14
  *
15
15
  * Sessions and host resources are peers in ONE ordered list: a resource row
16
16
  * can be dragged anywhere a session can, including between sessions and into
17
- * or out of groups. Attaching a resource to a session is a separate explicit
18
- * host action (`requestResourceAssociation()` /
19
- * `harness-resource-association-request`) that never moves a row; the
20
- * association only renders as a marker on the resource row.
17
+ * or out of groups. A resource can also be attached to several items at once.
18
+ * Attaching happens either through `requestResourceAssociation()` from a host
19
+ * menu, or by releasing a resource drag on the centre half of an eligible row;
20
+ * the outer quarters of that row, and every gap between rows, stay purely
21
+ * positional. Attaching never moves a row, and the association renders only as
22
+ * markers on the resource row. Every change is requested through
23
+ * `harness-resource-associate`; the host owns the controlled set.
21
24
  *
22
25
  * The component never mutates its inputs: reordering emits `harness-item-move`,
23
26
  * the "new group" button emits `harness-group-create-request`, and
@@ -44,13 +47,20 @@ export declare class DeesHarnessSessionList extends DeesElement {
44
47
  accessor resourceAssociations: IHarnessResourceAssociation[];
45
48
  accessor selectedResourceId: string;
46
49
  /**
47
- * Serializable attach/reassign targets for host menus. A missing entry leaves
48
- * the resource unrestricted; an empty array means no eligible target.
50
+ * Serializable association targets, honoured by host menus and by the drop
51
+ * affordance alike: an ineligible row offers no attachment and commits
52
+ * nothing. A missing entry leaves the resource unrestricted; an empty array
53
+ * means no eligible target.
49
54
  */
50
55
  accessor eligibleTargetsByResourceId: Record<string, IHarnessSessionListItemRef[]>;
51
56
  accessor search: string;
52
57
  accessor draggingItem: IHarnessSessionListItemRef | undefined;
53
58
  accessor dropSlot: IDropSlot | undefined;
59
+ /**
60
+ * The row a resource drag would attach to. Mutually exclusive with `dropSlot`: a pointer is
61
+ * either inserting between rows or attaching to one, never both.
62
+ */
63
+ accessor dropAttachTarget: IHarnessSessionListItemRef | undefined;
54
64
  accessor draggedItemHeight: number;
55
65
  accessor expandedSessionIds: ReadonlySet<string>;
56
66
  accessor collapsedGroupIds: ReadonlySet<string>;
@@ -81,6 +91,8 @@ export declare class DeesHarnessSessionList extends DeesElement {
81
91
  * remain untouched but are not projected. Keyed by resource id.
82
92
  */
83
93
  private get acceptedResourceAssociations();
94
+ /** The controlled attachments of one resource, in declaration order; empty when unattached. */
95
+ private resourceTargets;
84
96
  private get acceptedResources();
85
97
  /** Sessions and resources as one pool of orderable items, before grouping and search. */
86
98
  private get acceptedItems();
@@ -101,7 +113,13 @@ export declare class DeesHarnessSessionList extends DeesElement {
101
113
  private groupIdForItem;
102
114
  private rowElementFor;
103
115
  focusSearch(): void;
104
- requestResourceAssociation(resourceIdArg: string, toTargetArg: IHarnessSessionListItemRef | null, sourceArg?: THarnessResourceAssociationInteractionSource): boolean;
116
+ /**
117
+ * Requests one association change. With no explicit mode the list infers it from the controlled
118
+ * set: an unattached resource attaches, a singly attached one moves, and a resource with several
119
+ * attachments is refused — only the host knows which of them the user meant, so it must pass a
120
+ * mode (and a `fromTarget` for `move` and `detach`).
121
+ */
122
+ requestResourceAssociation(resourceIdArg: string, toTargetArg: IHarnessSessionListItemRef | null, sourceArg?: THarnessResourceAssociationInteractionSource, modeArg?: THarnessResourceAssociateMode, fromTargetArg?: IHarnessSessionListItemRef | null): boolean;
105
123
  updated(changedProperties: Map<PropertyKey, unknown>): void;
106
124
  connectedCallback(): Promise<void>;
107
125
  disconnectedCallback(): Promise<void>;
@@ -137,10 +155,19 @@ export declare class DeesHarnessSessionList extends DeesElement {
137
155
  private startPointerDrag;
138
156
  private moveDragPreview;
139
157
  private setDropSlot;
158
+ private setDropAttachTarget;
140
159
  private clearDropSlot;
141
160
  private updateDragAutoScrollVelocity;
142
161
  private readonly runDragAutoScroll;
143
162
  private updateDropSlotFromPointer;
163
+ /**
164
+ * A resource released on the centre of an eligible row attaches to it. Only a row qualifies —
165
+ * never an insertion slot — and only while a resource is the dragged item. A resource that is
166
+ * already attached to several items is excluded: a drag cannot name which attachment would
167
+ * move, so such a row offers no affordance and the drop stays purely positional. Moving one of
168
+ * several attachments is a menu action.
169
+ */
170
+ private attachTargetForDrop;
144
171
  private get scrollContainer();
145
172
  private observeScrollGeometry;
146
173
  private readonly syncScrollShadowState;
@@ -154,6 +181,10 @@ export declare class DeesHarnessSessionList extends DeesElement {
154
181
  /** Known, de-duplicated targets the host allows; an absent entry means unrestricted. */
155
182
  private eligibleTargets;
156
183
  private isResourceTargetEligible;
184
+ private reconcilePendingResourceAssociation;
185
+ /** The set the request started from, reconstructed from the expected set and the request. */
186
+ private pendingRequestPriorTargets;
187
+ private resourceAssociationAnnouncement;
157
188
  private itemTitleFor;
158
189
  private emitSession;
159
190
  private emitResource;
@@ -161,8 +192,6 @@ export declare class DeesHarnessSessionList extends DeesElement {
161
192
  private emitResourceContext;
162
193
  private closeResourceContext;
163
194
  private clearResourceContextState;
164
- private reconcilePendingResourceAssociation;
165
- private resourceAssociationAnnouncement;
166
195
  private animateRowReflow;
167
196
  private cancelReflowAnimations;
168
197
  private finishPointerDrag;
@@ -36,6 +36,7 @@ import { DeesElement, css, customElement, directives, html, state } from '@desig
36
36
  import { demoApp, demoOutput, demoStyles, showDemoResult } from '../../../demos/templates.js';
37
37
  import { themeDefaultStyles } from '../../00theme.js';
38
38
  import { harnessPillStyles } from '../harness.styles.js';
39
+ import { DeesHarnessConversationPicker } from '../dees-harness-conversation-picker/dees-harness-conversation-picker.js';
39
40
  import { DeesContextmenu } from '../../00group-overlay/dees-contextmenu/dees-contextmenu.js';
40
41
  import '../dees-harness-question-card/dees-harness-question-card.js';
41
42
  import '../dees-harness-permission-card/dees-harness-permission-card.js';
@@ -121,10 +122,14 @@ const demoResources = [
121
122
  updatedAt: Date.now() - 240_000,
122
123
  },
123
124
  ];
124
- // An association targets any other item: a session, or a resource such as a terminal.
125
+ // A resource can be attached to several items at once, and a target is any other item: a session,
126
+ // or a resource such as a terminal.
125
127
  const demoResourceAssociations = [
126
- { resourceId: 'terminal:build', target: { kind: 'session', id: 'session-4' } },
127
- { resourceId: 'file:release-notes', target: { kind: 'resource', id: 'terminal:build' } },
128
+ {
129
+ resourceId: 'terminal:build',
130
+ targets: [{ kind: 'session', id: 'session-4' }, { kind: 'session', id: 'session-0' }],
131
+ },
132
+ { resourceId: 'file:release-notes', targets: [{ kind: 'resource', id: 'terminal:build' }] },
128
133
  ];
129
134
  const demoEligibleSessionTargets = [
130
135
  { kind: 'session', id: 'session-0' },
@@ -214,47 +219,96 @@ const handleSessionContext = async (event, onChange = () => { }) => {
214
219
  control?.focus({ preventScroll: true });
215
220
  });
216
221
  };
222
+ const sameTarget = (leftArg, rightArg) => leftArg.kind === rightArg.kind && leftArg.id === rightArg.id;
223
+ /** Applies one validated request to the controlled set; the list never mutates it itself. */
217
224
  const handleResourceAssociation = (event) => {
218
225
  const list = event.currentTarget;
219
- const next = list.resourceAssociations.filter((association) => association.resourceId !== event.detail.resource.id);
220
- if (event.detail.toTarget) {
221
- next.push({
222
- resourceId: event.detail.resource.id,
223
- target: { ...event.detail.toTarget },
224
- });
225
- }
226
+ const detail = event.detail;
227
+ const current = list.resourceAssociations
228
+ .find((association) => association.resourceId === detail.resource.id)?.targets ?? [];
229
+ const targets = detail.mode === 'detach'
230
+ ? current.filter((target) => !sameTarget(target, detail.fromTarget))
231
+ : detail.mode === 'move'
232
+ ? current.map((target) => (sameTarget(target, detail.fromTarget) ? { ...detail.toTarget } : target))
233
+ : [...current, { ...detail.toTarget }];
234
+ const next = list.resourceAssociations.filter((association) => association.resourceId !== detail.resource.id);
235
+ if (targets.length)
236
+ next.push({ resourceId: detail.resource.id, targets });
226
237
  list.resourceAssociations = next;
227
238
  };
228
239
  const handleResourceContext = async (event) => {
229
240
  const list = event.currentTarget;
230
- const currentTarget = event.detail.target;
231
- const eligibleTargets = list.eligibleTargetsByResourceId[event.detail.resource.id] ?? [];
232
- const titleFor = (refArg) => (refArg.kind === 'session'
233
- ? list.sessions.find((session) => session.id === refArg.id)?.title
234
- : list.resources.find((resource) => resource.id === refArg.id)?.title) ?? refArg.id;
241
+ const resource = event.detail.resource;
242
+ const currentTargets = event.detail.targets;
243
+ const eligibleTargets = list.eligibleTargetsByResourceId[resource.id];
244
+ const pickerOptions = {
245
+ sessions: list.sessions,
246
+ groups: list.groups,
247
+ resources: list.resources.filter((candidate) => candidate.id !== resource.id),
248
+ eligibleTargets,
249
+ };
250
+ /** Which attachment did the user mean? Only asked when there is more than one. */
251
+ const pickAttachment = async (headingArg) => {
252
+ if (currentTargets.length <= 1)
253
+ return currentTargets[0] ?? null;
254
+ return DeesHarnessConversationPicker.pick({
255
+ sessions: list.sessions,
256
+ groups: list.groups,
257
+ resources: list.resources,
258
+ eligibleTargets: currentTargets,
259
+ heading: headingArg,
260
+ emptyText: 'No attachment to choose.',
261
+ });
262
+ };
235
263
  const menu = await DeesContextmenu.openContextMenuWithOptions(new MouseEvent('contextmenu', {
236
264
  clientX: event.detail.clientX,
237
265
  clientY: event.detail.clientY,
238
266
  }), [
239
- ...eligibleTargets
240
- .filter((target) => !currentTarget || !sameRef(target, currentTarget))
241
- .map((target) => ({
242
- name: `${currentTarget ? 'Reassign' : 'Attach'} to ${titleFor(target)}`,
267
+ {
268
+ name: currentTargets.length ? 'Additionally attach to…' : 'Attach to…',
243
269
  iconName: 'lucide:Link',
244
270
  action: async () => {
245
- event.detail.requestAssociation(target);
246
271
  event.detail.close();
272
+ const target = await DeesHarnessConversationPicker.pick({
273
+ ...pickerOptions,
274
+ excludeTargets: currentTargets,
275
+ heading: `Attach ${resource.title} to…`,
276
+ });
277
+ if (target) {
278
+ event.detail.requestAssociation(target, currentTargets.length ? 'attach-additional' : 'attach');
279
+ }
247
280
  },
248
- })),
249
- ...(currentTarget
250
- ? [{
281
+ },
282
+ ...(currentTargets.length
283
+ ? [
284
+ {
285
+ name: 'Move to…',
286
+ iconName: 'lucide:MoveRight',
287
+ action: async () => {
288
+ event.detail.close();
289
+ const fromTarget = await pickAttachment(`Move which attachment of ${resource.title}?`);
290
+ if (!fromTarget)
291
+ return;
292
+ const target = await DeesHarnessConversationPicker.pick({
293
+ ...pickerOptions,
294
+ excludeTargets: currentTargets,
295
+ heading: `Move ${resource.title} to…`,
296
+ });
297
+ if (target)
298
+ event.detail.requestAssociation(target, 'move', fromTarget);
299
+ },
300
+ },
301
+ {
251
302
  name: 'Detach',
252
303
  iconName: 'lucide:Unlink',
253
304
  action: async () => {
254
- event.detail.requestAssociation(null);
255
305
  event.detail.close();
306
+ const fromTarget = await pickAttachment(`Detach which attachment of ${resource.title}?`);
307
+ if (fromTarget)
308
+ event.detail.requestAssociation(null, 'detach', fromTarget);
256
309
  },
257
- }]
310
+ },
311
+ ]
258
312
  : []),
259
313
  ]);
260
314
  if (!menu) {
@@ -486,7 +540,7 @@ let DeesDemoSessionWorkspace = (() => {
486
540
  this.notice = `Selected ${event.detail.resource.title}. Use Actions to attach or move it.`;
487
541
  }}
488
542
  @harness-resource-context=${handleResourceContext}
489
- @harness-resource-association-request=${(event) => { handleResourceAssociation(event); this.syncList(); }}
543
+ @harness-resource-associate=${(event) => { handleResourceAssociation(event); this.syncList(); }}
490
544
  ></dees-harness-session-list>
491
545
  <output role="status">${this.notice}</output>
492
546
  </aside>
@@ -565,4 +619,4 @@ let DeesDemoSessionWorkspace = (() => {
565
619
  return DeesDemoSessionWorkspace = _classThis;
566
620
  })();
567
621
  export const demoFunc = () => demoApp(html `<dees-demo-session-workspace></dees-demo-session-workspace>`);
568
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVlcy1oYXJuZXNzLXNlc3Npb24tbGlzdC5kZW1vLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdHNfd2ViL2VsZW1lbnRzLzAwZ3JvdXAtaGFybmVzcy9kZWVzLWhhcm5lc3Mtc2Vzc2lvbi1saXN0L2RlZXMtaGFybmVzcy1zZXNzaW9uLWxpc3QuZGVtby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxHQUFHLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdkcsT0FBTyxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0REFBNEQsQ0FBQztBQUM3RixPQUFPLDZEQUE2RCxDQUFDO0FBQ3JFLE9BQU8saUVBQWlFLENBQUM7QUF3QnpFLE1BQU0sTUFBTSxHQUFpSDtJQUMzSCxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsaUVBQWlFLEVBQUU7SUFDbEksUUFBUSxFQUFFLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSw2REFBNkQsRUFBRTtJQUM3SCxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLGlFQUFpRSxFQUFFO0lBQy9ILFFBQVEsRUFBRSxFQUFFLEtBQUssRUFBRSxXQUFX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
622
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVlcy1oYXJuZXNzLXNlc3Npb24tbGlzdC5kZW1vLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdHNfd2ViL2VsZW1lbnRzLzAwZ3JvdXAtaGFybmVzcy9kZWVzLWhhcm5lc3Mtc2Vzc2lvbi1saXN0L2RlZXMtaGFybmVzcy1zZXNzaW9uLWxpc3QuZGVtby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxHQUFHLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdkcsT0FBTyxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzlGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHlFQUF5RSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0REFBNEQsQ0FBQztBQUM3RixPQUFPLDZEQUE2RCxDQUFDO0FBQ3JFLE9BQU8saUVBQWlFLENBQUM7QUF3QnpFLE1BQU0sTUFBTSxHQUFpSDtJQUMzSCxJQUFJLEVBQUUsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsaUVBQWlFLEVBQUU7SUFDbEksUUFBUSxFQUFFLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBRSw2REFBNkQsRUFBRTtJQUM3SCxPQUFPLEVBQUUsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLGlF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