@kubex/zinc 1.1.118 → 1.1.119

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/dist/zn.d.ts CHANGED
@@ -7322,36 +7322,30 @@ declare module "components/form-group/form-group.component" {
7322
7322
  forceCols: boolean;
7323
7323
  layout: string;
7324
7324
  pad: boolean;
7325
- /** The scroller the label is tracked against by hand; null while native sticky is enough. */
7326
- private tracked;
7327
- private stickyTop;
7325
+ /** The scroll containers we have clipped, against the inline overflow each carried before. */
7326
+ private readonly clipped;
7328
7327
  private frame;
7329
- private rebind;
7330
- private offset;
7331
7328
  private resizeObserver;
7332
7329
  connectedCallback(): void;
7333
7330
  disconnectedCallback(): void;
7334
7331
  protected firstUpdated(changedProperties: PropertyValues): void;
7335
7332
  private get labelColumn();
7336
- /** Coalesces scroll and resize work into one frame, and out of the ResizeObserver callback. */
7333
+ /** Coalesces resize work into one frame, and out of the ResizeObserver callback. */
7337
7334
  private schedule;
7335
+ private readonly onViewportResize;
7338
7336
  /**
7339
- * Native sticky only follows the nearest scroll container. Where that container isn't the one
7340
- * the user actually scrolls — a `zn-panel` body sized to its content inside a scrolling
7341
- * slideout, say — the label never moves, so it gets translated by hand instead.
7337
+ * Native sticky anchors to the nearest scroll container, even one that cannot scroll — a `zn-panel` body sized to
7338
+ * its content, say — where it then holds the label still for the whole scroll. `overflow: clip` clips without
7339
+ * making a scroll container, so clipping those takes them out of sticky's search and the label follows the box the
7340
+ * user actually scrolls, moved by the compositor rather than by hand.
7342
7341
  */
7343
- private findScroller;
7344
- private trackScroller;
7345
- /** The document scrolls through the window, every other scroller reports its own events. */
7346
- private scrollTarget;
7347
- private readonly onScroll;
7348
- private readonly onViewportResize;
7349
- private positionLabel;
7342
+ private freeSticky;
7343
+ private clip;
7344
+ private release;
7350
7345
  /** The box native sticky would anchor to, whether or not it can be scrolled. */
7351
- private nearestScrollContainer;
7352
- /** The nearest ancestor the user can actually scroll, falling back to the document. */
7353
- private scrollingAncestor;
7346
+ private isStickyAnchor;
7354
7347
  private isScrollContainer;
7348
+ private overflows;
7355
7349
  /** Walks the flattened tree, so slots and shadow boundaries are crossed the way layout does. */
7356
7350
  private ancestors;
7357
7351
  render(): import("lit-html").TemplateResult<1>;
@@ -9730,7 +9724,7 @@ declare module "components/remarkd-editor/actions" {
9730
9724
  /** Where the caret lands within `prefix`. Defaults to the end. */
9731
9725
  caretOffset?: number;
9732
9726
  /** Actions that open their own picker instead of inserting text. */
9733
- opens?: 'image' | 'include';
9727
+ opens?: 'image' | 'include' | 'link';
9734
9728
  }
9735
9729
  /** Toolbar order, most-used first — the last groups are the first to collapse. */
9736
9730
  export const ACTION_GROUPS: {
@@ -9846,6 +9840,16 @@ declare module "components/remarkd-editor/remarkd-editor.component" {
9846
9840
  private includeLoadFailed;
9847
9841
  private includePickerIndex;
9848
9842
  private includeQuery;
9843
+ private linkPickerOpen;
9844
+ private linkQuery;
9845
+ private linkResults;
9846
+ private linkSearchFailed;
9847
+ private linkSelection;
9848
+ private linkSearchTimer?;
9849
+ private linkSearchToken;
9850
+ /** Resolved link targets by reference; a null value is one the app does not know. */
9851
+ private linkRefs;
9852
+ private linkRefsPending;
9849
9853
  private pendingDragHandle;
9850
9854
  private dragStartX;
9851
9855
  private dragStartY;
@@ -9872,6 +9876,13 @@ declare module "components/remarkd-editor/remarkd-editor.component" {
9872
9876
  * chips rendered for `include::` directives and feeds the include picker.
9873
9877
  */
9874
9878
  includeUrl: string;
9879
+ /**
9880
+ * Endpoint the article link picker searches, as
9881
+ * `{"items":[{ref,kind,title,context,status}]}`. Queried with `?q=<term>` as
9882
+ * the author types and with `?refs=a,b` to resolve the references a body
9883
+ * already carries.
9884
+ */
9885
+ linkUrl: string;
9875
9886
  /** Adds a toolbar toggle that swaps the block view for the full remarkd source. */
9876
9887
  allowRaw: boolean;
9877
9888
  /** Makes the editor required for form submission. */
@@ -9895,6 +9906,7 @@ declare module "components/remarkd-editor/remarkd-editor.component" {
9895
9906
  disconnectedCallback(): void;
9896
9907
  handleValueChange(): void;
9897
9908
  handleIncludeUrlChange(): void;
9909
+ handleLinkUrlChange(): void;
9898
9910
  /**
9899
9911
  * Splits remarkd source into blocks on blank lines, keeping fenced /
9900
9912
  * delimited containers (``` ==== !!!! .... ---- ____ **** ////) as single blocks.
@@ -9979,6 +9991,15 @@ declare module "components/remarkd-editor/remarkd-editor.component" {
9979
9991
  private moveDragGhost;
9980
9992
  private pickImage;
9981
9993
  private pickInclude;
9994
+ /**
9995
+ * Opens the picker over the block being edited. The caret range is captured
9996
+ * now: the picker's own filter takes focus, so the textarea's selection is
9997
+ * gone by the time an option is chosen.
9998
+ */
9999
+ private pickLink;
10000
+ private closeLinkPicker;
10001
+ /** Debounced; only the newest response is kept. */
10002
+ private searchLinks;
9982
10003
  private closeIncludePicker;
9983
10004
  private insertInclude;
9984
10005
  private closeImagePicker;
@@ -9996,6 +10017,13 @@ declare module "components/remarkd-editor/remarkd-editor.component" {
9996
10017
  private hasIncludeBlock;
9997
10018
  /** Fetches the include list once; every later caller shares the same promise. */
9998
10019
  private loadIncludeOptions;
10020
+ /**
10021
+ * Resolves the references in the body that have not been resolved yet, so a
10022
+ * link whose target is gone can be marked. A failed request records nothing:
10023
+ * an unanswered reference is not a broken one.
10024
+ */
10025
+ private resolveContentLinks;
10026
+ private markContentLinks;
9999
10027
  private autosize;
10000
10028
  /**
10001
10029
  * Applies an inline mark to the open block's textarea: wraps the selection, toggles the
@@ -10042,8 +10070,11 @@ declare module "components/remarkd-editor/remarkd-editor.component" {
10042
10070
  */
10043
10071
  private renderConditional;
10044
10072
  private renderBlock;
10045
- /** An inline action needs an open block to apply its mark to. */
10073
+ /** Inline marks and the article link both apply into an open block, not a new one. */
10046
10074
  private isActionDisabled;
10075
+ /** A picker action with no endpoint configured is not offered at all. */
10076
+ private actionAvailable;
10077
+ private slashItemAvailable;
10047
10078
  /** Routes a toolbar/menu action to the inline or block insert path — the one place both
10048
10079
  * `renderAction` and `renderMenuAction` call, so the bar and the overflow menu cannot
10049
10080
  * drift out of sync on what a given action actually does. */
@@ -10057,6 +10088,8 @@ declare module "components/remarkd-editor/remarkd-editor.component" {
10057
10088
  /** The block views, with the inline image picker spliced in when active. */
10058
10089
  private renderBody;
10059
10090
  private renderIncludePicker;
10091
+ private renderLinkPicker;
10092
+ private insertLink;
10060
10093
  private renderImagePicker;
10061
10094
  }
10062
10095
  }