@copilotkit/web-inspector 1.75.2 → 1.76.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.
@@ -8,11 +8,11 @@ function updateSizeFromElement(state, element, fallback) {
8
8
  };
9
9
  }
10
10
  function clampSize(size, viewport, edgeMargin, minWidth, minHeight) {
11
- const maxWidth = Math.max(minWidth, viewport.width - edgeMargin * 2);
12
- const maxHeight = Math.max(minHeight, viewport.height - edgeMargin * 2);
11
+ const maxWidth = Math.max(0, viewport.width - edgeMargin * 2);
12
+ const maxHeight = Math.max(0, viewport.height - edgeMargin * 2);
13
13
  return {
14
- width: clamp(size.width, minWidth, maxWidth),
15
- height: clamp(size.height, minHeight, maxHeight)
14
+ width: clamp(size.width, Math.min(minWidth, maxWidth), maxWidth),
15
+ height: clamp(size.height, Math.min(minHeight, maxHeight), maxHeight)
16
16
  };
17
17
  }
18
18
  function constrainToViewport(state, position, viewport, edgeMargin) {
@@ -1 +1 @@
1
- {"version":3,"file":"context-helpers.cjs","names":[],"sources":["../../src/lib/context-helpers.ts"],"sourcesContent":["import type { Anchor, ContextState, Position, Size } from \"./types.js\";\n\nexport function updateSizeFromElement(\n state: ContextState,\n element: HTMLElement,\n fallback: Size,\n): void {\n const rect = element.getBoundingClientRect();\n state.size = {\n width: rect.width || fallback.width,\n height: rect.height || fallback.height,\n };\n}\n\nexport function clampSize(\n size: Size,\n viewport: Size,\n edgeMargin: number,\n minWidth: number,\n minHeight: number,\n): Size {\n const maxWidth = Math.max(minWidth, viewport.width - edgeMargin * 2);\n const maxHeight = Math.max(minHeight, viewport.height - edgeMargin * 2);\n\n return {\n width: clamp(size.width, minWidth, maxWidth),\n height: clamp(size.height, minHeight, maxHeight),\n };\n}\n\nexport function constrainToViewport(\n state: ContextState,\n position: Position,\n viewport: Size,\n edgeMargin: number,\n): Position {\n const maxX = Math.max(\n edgeMargin,\n viewport.width - state.size.width - edgeMargin,\n );\n const maxY = Math.max(\n edgeMargin,\n viewport.height - state.size.height - edgeMargin,\n );\n\n return {\n x: clamp(position.x, edgeMargin, maxX),\n y: clamp(position.y, edgeMargin, maxY),\n };\n}\n\nexport function keepPositionWithinViewport(\n state: ContextState,\n viewport: Size,\n edgeMargin: number,\n): void {\n state.position = constrainToViewport(\n state,\n state.position,\n viewport,\n edgeMargin,\n );\n}\n\nexport function centerContext(\n state: ContextState,\n viewport: Size,\n edgeMargin: number,\n): Position {\n const centered: Position = {\n x: Math.round((viewport.width - state.size.width) / 2),\n y: Math.round((viewport.height - state.size.height) / 2),\n };\n\n state.position = constrainToViewport(state, centered, viewport, edgeMargin);\n updateAnchorFromPosition(state, viewport, edgeMargin);\n return state.position;\n}\n\nexport function updateAnchorFromPosition(\n state: ContextState,\n viewport: Size,\n edgeMargin: number,\n): void {\n const centerX = state.position.x + state.size.width / 2;\n const centerY = state.position.y + state.size.height / 2;\n\n const horizontal: Anchor[\"horizontal\"] =\n centerX < viewport.width / 2 ? \"left\" : \"right\";\n const vertical: Anchor[\"vertical\"] =\n centerY < viewport.height / 2 ? \"top\" : \"bottom\";\n\n state.anchor = { horizontal, vertical };\n\n const maxHorizontalOffset = Math.max(\n edgeMargin,\n viewport.width - state.size.width - edgeMargin,\n );\n const maxVerticalOffset = Math.max(\n edgeMargin,\n viewport.height - state.size.height - edgeMargin,\n );\n\n state.anchorOffset = {\n x:\n horizontal === \"left\"\n ? clamp(state.position.x, edgeMargin, maxHorizontalOffset)\n : clamp(\n viewport.width - state.position.x - state.size.width,\n edgeMargin,\n maxHorizontalOffset,\n ),\n y:\n vertical === \"top\"\n ? clamp(state.position.y, edgeMargin, maxVerticalOffset)\n : clamp(\n viewport.height - state.position.y - state.size.height,\n edgeMargin,\n maxVerticalOffset,\n ),\n };\n}\n\nexport function applyAnchorPosition(\n state: ContextState,\n viewport: Size,\n edgeMargin: number,\n): Position {\n const maxHorizontalOffset = Math.max(\n edgeMargin,\n viewport.width - state.size.width - edgeMargin,\n );\n const maxVerticalOffset = Math.max(\n edgeMargin,\n viewport.height - state.size.height - edgeMargin,\n );\n\n const horizontalOffset = clamp(\n state.anchorOffset.x,\n edgeMargin,\n maxHorizontalOffset,\n );\n const verticalOffset = clamp(\n state.anchorOffset.y,\n edgeMargin,\n maxVerticalOffset,\n );\n\n const x =\n state.anchor.horizontal === \"left\"\n ? horizontalOffset\n : viewport.width - state.size.width - horizontalOffset;\n\n const y =\n state.anchor.vertical === \"top\"\n ? verticalOffset\n : viewport.height - state.size.height - verticalOffset;\n\n state.anchorOffset = { x: horizontalOffset, y: verticalOffset };\n state.position = constrainToViewport(state, { x, y }, viewport, edgeMargin);\n return state.position;\n}\n\nfunction clamp(value: number, min: number, max: number): number {\n return Math.min(Math.max(min, value), max);\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"context-helpers.cjs","names":[],"sources":["../../src/lib/context-helpers.ts"],"sourcesContent":["import type { Anchor, ContextState, Position, Size } from \"./types.js\";\n\nexport function updateSizeFromElement(\n state: ContextState,\n element: HTMLElement,\n fallback: Size,\n): void {\n const rect = element.getBoundingClientRect();\n state.size = {\n width: rect.width || fallback.width,\n height: rect.height || fallback.height,\n };\n}\n\nexport function clampSize(\n size: Size,\n viewport: Size,\n edgeMargin: number,\n minWidth: number,\n minHeight: number,\n): Size {\n // The viewport wins over the minimums, so the size always fits on screen.\n const maxWidth = Math.max(0, viewport.width - edgeMargin * 2);\n const maxHeight = Math.max(0, viewport.height - edgeMargin * 2);\n\n return {\n width: clamp(size.width, Math.min(minWidth, maxWidth), maxWidth),\n height: clamp(size.height, Math.min(minHeight, maxHeight), maxHeight),\n };\n}\n\nexport function constrainToViewport(\n state: ContextState,\n position: Position,\n viewport: Size,\n edgeMargin: number,\n): Position {\n const maxX = Math.max(\n edgeMargin,\n viewport.width - state.size.width - edgeMargin,\n );\n const maxY = Math.max(\n edgeMargin,\n viewport.height - state.size.height - edgeMargin,\n );\n\n return {\n x: clamp(position.x, edgeMargin, maxX),\n y: clamp(position.y, edgeMargin, maxY),\n };\n}\n\nexport function keepPositionWithinViewport(\n state: ContextState,\n viewport: Size,\n edgeMargin: number,\n): void {\n state.position = constrainToViewport(\n state,\n state.position,\n viewport,\n edgeMargin,\n );\n}\n\nexport function centerContext(\n state: ContextState,\n viewport: Size,\n edgeMargin: number,\n): Position {\n const centered: Position = {\n x: Math.round((viewport.width - state.size.width) / 2),\n y: Math.round((viewport.height - state.size.height) / 2),\n };\n\n state.position = constrainToViewport(state, centered, viewport, edgeMargin);\n updateAnchorFromPosition(state, viewport, edgeMargin);\n return state.position;\n}\n\nexport function updateAnchorFromPosition(\n state: ContextState,\n viewport: Size,\n edgeMargin: number,\n): void {\n const centerX = state.position.x + state.size.width / 2;\n const centerY = state.position.y + state.size.height / 2;\n\n const horizontal: Anchor[\"horizontal\"] =\n centerX < viewport.width / 2 ? \"left\" : \"right\";\n const vertical: Anchor[\"vertical\"] =\n centerY < viewport.height / 2 ? \"top\" : \"bottom\";\n\n state.anchor = { horizontal, vertical };\n\n const maxHorizontalOffset = Math.max(\n edgeMargin,\n viewport.width - state.size.width - edgeMargin,\n );\n const maxVerticalOffset = Math.max(\n edgeMargin,\n viewport.height - state.size.height - edgeMargin,\n );\n\n state.anchorOffset = {\n x:\n horizontal === \"left\"\n ? clamp(state.position.x, edgeMargin, maxHorizontalOffset)\n : clamp(\n viewport.width - state.position.x - state.size.width,\n edgeMargin,\n maxHorizontalOffset,\n ),\n y:\n vertical === \"top\"\n ? clamp(state.position.y, edgeMargin, maxVerticalOffset)\n : clamp(\n viewport.height - state.position.y - state.size.height,\n edgeMargin,\n maxVerticalOffset,\n ),\n };\n}\n\nexport function applyAnchorPosition(\n state: ContextState,\n viewport: Size,\n edgeMargin: number,\n): Position {\n const maxHorizontalOffset = Math.max(\n edgeMargin,\n viewport.width - state.size.width - edgeMargin,\n );\n const maxVerticalOffset = Math.max(\n edgeMargin,\n viewport.height - state.size.height - edgeMargin,\n );\n\n const horizontalOffset = clamp(\n state.anchorOffset.x,\n edgeMargin,\n maxHorizontalOffset,\n );\n const verticalOffset = clamp(\n state.anchorOffset.y,\n edgeMargin,\n maxVerticalOffset,\n );\n\n const x =\n state.anchor.horizontal === \"left\"\n ? horizontalOffset\n : viewport.width - state.size.width - horizontalOffset;\n\n const y =\n state.anchor.vertical === \"top\"\n ? verticalOffset\n : viewport.height - state.size.height - verticalOffset;\n\n state.anchorOffset = { x: horizontalOffset, y: verticalOffset };\n state.position = constrainToViewport(state, { x, y }, viewport, edgeMargin);\n return state.position;\n}\n\nfunction clamp(value: number, min: number, max: number): number {\n return Math.min(Math.max(min, value), max);\n}\n"],"mappings":"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"}
@@ -7,11 +7,11 @@ function updateSizeFromElement(state, element, fallback) {
7
7
  };
8
8
  }
9
9
  function clampSize(size, viewport, edgeMargin, minWidth, minHeight) {
10
- const maxWidth = Math.max(minWidth, viewport.width - edgeMargin * 2);
11
- const maxHeight = Math.max(minHeight, viewport.height - edgeMargin * 2);
10
+ const maxWidth = Math.max(0, viewport.width - edgeMargin * 2);
11
+ const maxHeight = Math.max(0, viewport.height - edgeMargin * 2);
12
12
  return {
13
- width: clamp(size.width, minWidth, maxWidth),
14
- height: clamp(size.height, minHeight, maxHeight)
13
+ width: clamp(size.width, Math.min(minWidth, maxWidth), maxWidth),
14
+ height: clamp(size.height, Math.min(minHeight, maxHeight), maxHeight)
15
15
  };
16
16
  }
17
17
  function constrainToViewport(state, position, viewport, edgeMargin) {
@@ -1 +1 @@
1
- {"version":3,"file":"context-helpers.mjs","names":[],"sources":["../../src/lib/context-helpers.ts"],"sourcesContent":["import type { Anchor, ContextState, Position, Size } from \"./types.js\";\n\nexport function updateSizeFromElement(\n state: ContextState,\n element: HTMLElement,\n fallback: Size,\n): void {\n const rect = element.getBoundingClientRect();\n state.size = {\n width: rect.width || fallback.width,\n height: rect.height || fallback.height,\n };\n}\n\nexport function clampSize(\n size: Size,\n viewport: Size,\n edgeMargin: number,\n minWidth: number,\n minHeight: number,\n): Size {\n const maxWidth = Math.max(minWidth, viewport.width - edgeMargin * 2);\n const maxHeight = Math.max(minHeight, viewport.height - edgeMargin * 2);\n\n return {\n width: clamp(size.width, minWidth, maxWidth),\n height: clamp(size.height, minHeight, maxHeight),\n };\n}\n\nexport function constrainToViewport(\n state: ContextState,\n position: Position,\n viewport: Size,\n edgeMargin: number,\n): Position {\n const maxX = Math.max(\n edgeMargin,\n viewport.width - state.size.width - edgeMargin,\n );\n const maxY = Math.max(\n edgeMargin,\n viewport.height - state.size.height - edgeMargin,\n );\n\n return {\n x: clamp(position.x, edgeMargin, maxX),\n y: clamp(position.y, edgeMargin, maxY),\n };\n}\n\nexport function keepPositionWithinViewport(\n state: ContextState,\n viewport: Size,\n edgeMargin: number,\n): void {\n state.position = constrainToViewport(\n state,\n state.position,\n viewport,\n edgeMargin,\n );\n}\n\nexport function centerContext(\n state: ContextState,\n viewport: Size,\n edgeMargin: number,\n): Position {\n const centered: Position = {\n x: Math.round((viewport.width - state.size.width) / 2),\n y: Math.round((viewport.height - state.size.height) / 2),\n };\n\n state.position = constrainToViewport(state, centered, viewport, edgeMargin);\n updateAnchorFromPosition(state, viewport, edgeMargin);\n return state.position;\n}\n\nexport function updateAnchorFromPosition(\n state: ContextState,\n viewport: Size,\n edgeMargin: number,\n): void {\n const centerX = state.position.x + state.size.width / 2;\n const centerY = state.position.y + state.size.height / 2;\n\n const horizontal: Anchor[\"horizontal\"] =\n centerX < viewport.width / 2 ? \"left\" : \"right\";\n const vertical: Anchor[\"vertical\"] =\n centerY < viewport.height / 2 ? \"top\" : \"bottom\";\n\n state.anchor = { horizontal, vertical };\n\n const maxHorizontalOffset = Math.max(\n edgeMargin,\n viewport.width - state.size.width - edgeMargin,\n );\n const maxVerticalOffset = Math.max(\n edgeMargin,\n viewport.height - state.size.height - edgeMargin,\n );\n\n state.anchorOffset = {\n x:\n horizontal === \"left\"\n ? clamp(state.position.x, edgeMargin, maxHorizontalOffset)\n : clamp(\n viewport.width - state.position.x - state.size.width,\n edgeMargin,\n maxHorizontalOffset,\n ),\n y:\n vertical === \"top\"\n ? clamp(state.position.y, edgeMargin, maxVerticalOffset)\n : clamp(\n viewport.height - state.position.y - state.size.height,\n edgeMargin,\n maxVerticalOffset,\n ),\n };\n}\n\nexport function applyAnchorPosition(\n state: ContextState,\n viewport: Size,\n edgeMargin: number,\n): Position {\n const maxHorizontalOffset = Math.max(\n edgeMargin,\n viewport.width - state.size.width - edgeMargin,\n );\n const maxVerticalOffset = Math.max(\n edgeMargin,\n viewport.height - state.size.height - edgeMargin,\n );\n\n const horizontalOffset = clamp(\n state.anchorOffset.x,\n edgeMargin,\n maxHorizontalOffset,\n );\n const verticalOffset = clamp(\n state.anchorOffset.y,\n edgeMargin,\n maxVerticalOffset,\n );\n\n const x =\n state.anchor.horizontal === \"left\"\n ? horizontalOffset\n : viewport.width - state.size.width - horizontalOffset;\n\n const y =\n state.anchor.vertical === \"top\"\n ? verticalOffset\n : viewport.height - state.size.height - verticalOffset;\n\n state.anchorOffset = { x: horizontalOffset, y: verticalOffset };\n state.position = constrainToViewport(state, { x, y }, viewport, edgeMargin);\n return state.position;\n}\n\nfunction clamp(value: number, min: number, max: number): number {\n return Math.min(Math.max(min, value), max);\n}\n"],"mappings":";AAEA,SAAgB,sBACd,OACA,SACA,UACM;CACN,MAAM,OAAO,QAAQ,uBAAuB;AAC5C,OAAM,OAAO;EACX,OAAO,KAAK,SAAS,SAAS;EAC9B,QAAQ,KAAK,UAAU,SAAS;EACjC;;AAGH,SAAgB,UACd,MACA,UACA,YACA,UACA,WACM;CACN,MAAM,WAAW,KAAK,IAAI,UAAU,SAAS,QAAQ,aAAa,EAAE;CACpE,MAAM,YAAY,KAAK,IAAI,WAAW,SAAS,SAAS,aAAa,EAAE;AAEvE,QAAO;EACL,OAAO,MAAM,KAAK,OAAO,UAAU,SAAS;EAC5C,QAAQ,MAAM,KAAK,QAAQ,WAAW,UAAU;EACjD;;AAGH,SAAgB,oBACd,OACA,UACA,UACA,YACU;CACV,MAAM,OAAO,KAAK,IAChB,YACA,SAAS,QAAQ,MAAM,KAAK,QAAQ,WACrC;CACD,MAAM,OAAO,KAAK,IAChB,YACA,SAAS,SAAS,MAAM,KAAK,SAAS,WACvC;AAED,QAAO;EACL,GAAG,MAAM,SAAS,GAAG,YAAY,KAAK;EACtC,GAAG,MAAM,SAAS,GAAG,YAAY,KAAK;EACvC;;AAGH,SAAgB,2BACd,OACA,UACA,YACM;AACN,OAAM,WAAW,oBACf,OACA,MAAM,UACN,UACA,WACD;;AAGH,SAAgB,cACd,OACA,UACA,YACU;AAMV,OAAM,WAAW,oBAAoB,OALV;EACzB,GAAG,KAAK,OAAO,SAAS,QAAQ,MAAM,KAAK,SAAS,EAAE;EACtD,GAAG,KAAK,OAAO,SAAS,SAAS,MAAM,KAAK,UAAU,EAAE;EACzD,EAEqD,UAAU,WAAW;AAC3E,0BAAyB,OAAO,UAAU,WAAW;AACrD,QAAO,MAAM;;AAGf,SAAgB,yBACd,OACA,UACA,YACM;CACN,MAAM,UAAU,MAAM,SAAS,IAAI,MAAM,KAAK,QAAQ;CACtD,MAAM,UAAU,MAAM,SAAS,IAAI,MAAM,KAAK,SAAS;CAEvD,MAAM,aACJ,UAAU,SAAS,QAAQ,IAAI,SAAS;CAC1C,MAAM,WACJ,UAAU,SAAS,SAAS,IAAI,QAAQ;AAE1C,OAAM,SAAS;EAAE;EAAY;EAAU;CAEvC,MAAM,sBAAsB,KAAK,IAC/B,YACA,SAAS,QAAQ,MAAM,KAAK,QAAQ,WACrC;CACD,MAAM,oBAAoB,KAAK,IAC7B,YACA,SAAS,SAAS,MAAM,KAAK,SAAS,WACvC;AAED,OAAM,eAAe;EACnB,GACE,eAAe,SACX,MAAM,MAAM,SAAS,GAAG,YAAY,oBAAoB,GACxD,MACE,SAAS,QAAQ,MAAM,SAAS,IAAI,MAAM,KAAK,OAC/C,YACA,oBACD;EACP,GACE,aAAa,QACT,MAAM,MAAM,SAAS,GAAG,YAAY,kBAAkB,GACtD,MACE,SAAS,SAAS,MAAM,SAAS,IAAI,MAAM,KAAK,QAChD,YACA,kBACD;EACR;;AAGH,SAAgB,oBACd,OACA,UACA,YACU;CACV,MAAM,sBAAsB,KAAK,IAC/B,YACA,SAAS,QAAQ,MAAM,KAAK,QAAQ,WACrC;CACD,MAAM,oBAAoB,KAAK,IAC7B,YACA,SAAS,SAAS,MAAM,KAAK,SAAS,WACvC;CAED,MAAM,mBAAmB,MACvB,MAAM,aAAa,GACnB,YACA,oBACD;CACD,MAAM,iBAAiB,MACrB,MAAM,aAAa,GACnB,YACA,kBACD;CAED,MAAM,IACJ,MAAM,OAAO,eAAe,SACxB,mBACA,SAAS,QAAQ,MAAM,KAAK,QAAQ;CAE1C,MAAM,IACJ,MAAM,OAAO,aAAa,QACtB,iBACA,SAAS,SAAS,MAAM,KAAK,SAAS;AAE5C,OAAM,eAAe;EAAE,GAAG;EAAkB,GAAG;EAAgB;AAC/D,OAAM,WAAW,oBAAoB,OAAO;EAAE;EAAG;EAAG,EAAE,UAAU,WAAW;AAC3E,QAAO,MAAM;;AAGf,SAAS,MAAM,OAAe,KAAa,KAAqB;AAC9D,QAAO,KAAK,IAAI,KAAK,IAAI,KAAK,MAAM,EAAE,IAAI"}
1
+ {"version":3,"file":"context-helpers.mjs","names":[],"sources":["../../src/lib/context-helpers.ts"],"sourcesContent":["import type { Anchor, ContextState, Position, Size } from \"./types.js\";\n\nexport function updateSizeFromElement(\n state: ContextState,\n element: HTMLElement,\n fallback: Size,\n): void {\n const rect = element.getBoundingClientRect();\n state.size = {\n width: rect.width || fallback.width,\n height: rect.height || fallback.height,\n };\n}\n\nexport function clampSize(\n size: Size,\n viewport: Size,\n edgeMargin: number,\n minWidth: number,\n minHeight: number,\n): Size {\n // The viewport wins over the minimums, so the size always fits on screen.\n const maxWidth = Math.max(0, viewport.width - edgeMargin * 2);\n const maxHeight = Math.max(0, viewport.height - edgeMargin * 2);\n\n return {\n width: clamp(size.width, Math.min(minWidth, maxWidth), maxWidth),\n height: clamp(size.height, Math.min(minHeight, maxHeight), maxHeight),\n };\n}\n\nexport function constrainToViewport(\n state: ContextState,\n position: Position,\n viewport: Size,\n edgeMargin: number,\n): Position {\n const maxX = Math.max(\n edgeMargin,\n viewport.width - state.size.width - edgeMargin,\n );\n const maxY = Math.max(\n edgeMargin,\n viewport.height - state.size.height - edgeMargin,\n );\n\n return {\n x: clamp(position.x, edgeMargin, maxX),\n y: clamp(position.y, edgeMargin, maxY),\n };\n}\n\nexport function keepPositionWithinViewport(\n state: ContextState,\n viewport: Size,\n edgeMargin: number,\n): void {\n state.position = constrainToViewport(\n state,\n state.position,\n viewport,\n edgeMargin,\n );\n}\n\nexport function centerContext(\n state: ContextState,\n viewport: Size,\n edgeMargin: number,\n): Position {\n const centered: Position = {\n x: Math.round((viewport.width - state.size.width) / 2),\n y: Math.round((viewport.height - state.size.height) / 2),\n };\n\n state.position = constrainToViewport(state, centered, viewport, edgeMargin);\n updateAnchorFromPosition(state, viewport, edgeMargin);\n return state.position;\n}\n\nexport function updateAnchorFromPosition(\n state: ContextState,\n viewport: Size,\n edgeMargin: number,\n): void {\n const centerX = state.position.x + state.size.width / 2;\n const centerY = state.position.y + state.size.height / 2;\n\n const horizontal: Anchor[\"horizontal\"] =\n centerX < viewport.width / 2 ? \"left\" : \"right\";\n const vertical: Anchor[\"vertical\"] =\n centerY < viewport.height / 2 ? \"top\" : \"bottom\";\n\n state.anchor = { horizontal, vertical };\n\n const maxHorizontalOffset = Math.max(\n edgeMargin,\n viewport.width - state.size.width - edgeMargin,\n );\n const maxVerticalOffset = Math.max(\n edgeMargin,\n viewport.height - state.size.height - edgeMargin,\n );\n\n state.anchorOffset = {\n x:\n horizontal === \"left\"\n ? clamp(state.position.x, edgeMargin, maxHorizontalOffset)\n : clamp(\n viewport.width - state.position.x - state.size.width,\n edgeMargin,\n maxHorizontalOffset,\n ),\n y:\n vertical === \"top\"\n ? clamp(state.position.y, edgeMargin, maxVerticalOffset)\n : clamp(\n viewport.height - state.position.y - state.size.height,\n edgeMargin,\n maxVerticalOffset,\n ),\n };\n}\n\nexport function applyAnchorPosition(\n state: ContextState,\n viewport: Size,\n edgeMargin: number,\n): Position {\n const maxHorizontalOffset = Math.max(\n edgeMargin,\n viewport.width - state.size.width - edgeMargin,\n );\n const maxVerticalOffset = Math.max(\n edgeMargin,\n viewport.height - state.size.height - edgeMargin,\n );\n\n const horizontalOffset = clamp(\n state.anchorOffset.x,\n edgeMargin,\n maxHorizontalOffset,\n );\n const verticalOffset = clamp(\n state.anchorOffset.y,\n edgeMargin,\n maxVerticalOffset,\n );\n\n const x =\n state.anchor.horizontal === \"left\"\n ? horizontalOffset\n : viewport.width - state.size.width - horizontalOffset;\n\n const y =\n state.anchor.vertical === \"top\"\n ? verticalOffset\n : viewport.height - state.size.height - verticalOffset;\n\n state.anchorOffset = { x: horizontalOffset, y: verticalOffset };\n state.position = constrainToViewport(state, { x, y }, viewport, edgeMargin);\n return state.position;\n}\n\nfunction clamp(value: number, min: number, max: number): number {\n return Math.min(Math.max(min, value), max);\n}\n"],"mappings":"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"}
package/dist/package.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
 
2
2
  //#region package.json
3
- var version = "1.75.2";
3
+ var version = "1.76.0";
4
4
 
5
5
  //#endregion
6
6
  Object.defineProperty(exports, 'version', {
package/dist/package.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  //#region package.json
2
- var version = "1.75.2";
2
+ var version = "1.76.0";
3
3
 
4
4
  //#endregion
5
5
  export { version };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@copilotkit/web-inspector",
3
- "version": "1.75.2",
3
+ "version": "1.76.0",
4
4
  "description": "Lit-based web component for the CopilotKit web inspector",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -27,13 +27,13 @@
27
27
  "access": "public"
28
28
  },
29
29
  "dependencies": {
30
- "@ag-ui/client": "0.0.59",
30
+ "@ag-ui/client": "1.0.1",
31
31
  "lit": "^3.2.0",
32
32
  "lucide": "^0.525.0",
33
33
  "marked": "^12.0.2",
34
34
  "semver": "^7.8.5",
35
- "@copilotkit/shared": "1.75.2",
36
- "@copilotkit/core": "1.75.2"
35
+ "@copilotkit/core": "1.76.0",
36
+ "@copilotkit/shared": "1.76.0"
37
37
  },
38
38
  "devDependencies": {
39
39
  "@playwright/test": "^1.59.1",