@orangelogic/design-system 4.24.0 → 4.26.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 (103) hide show
  1. package/library/chunks/{array-line-clamp.Cs-rr4fT.js → array-line-clamp.AbuJqKJ3.js} +2 -2
  2. package/library/chunks/{asset-link-format.D1u9Ot34.js → asset-link-format.CyUiMsk0.js} +2 -2
  3. package/library/chunks/{bicolor-picker.CJcbV2J-.js → bicolor-picker.CojUr8VQ.js} +1 -1
  4. package/library/chunks/{block-width.WvrvegT9.js → block-width.BHqoh68k.js} +429 -427
  5. package/library/chunks/{border-input-group.B1DtY6Ta.js → border-input-group.hX_u5As5.js} +1 -1
  6. package/library/chunks/{color-picker.BoE5DUtr.js → color-picker.C3u13jWP.js} +4 -4
  7. package/library/chunks/{color-swatch-group.CRrt23hy.js → color-swatch-group.D4KGIN_7.js} +11 -11
  8. package/library/chunks/{color-swatch.CZv1XRXW.js → color-swatch.CoiPHwMX.js} +2 -2
  9. package/library/chunks/{config-manager.D2U07uI4.js → config-manager._UPFF51v.js} +21 -21
  10. package/library/chunks/{configs-controller.CMWC6o1N.js → configs-controller.CfLKthEL.js} +5 -5
  11. package/library/chunks/{confirm-popover.DtgOWnvv.js → confirm-popover.Ca_p-aec.js} +2 -2
  12. package/library/chunks/{copy-button.kjSil5XI.js → copy-button.BLHge7EN.js} +1 -1
  13. package/library/chunks/{corner-position-input-group.EbVmXfuB.js → corner-position-input-group.B6oea4JC.js} +1 -1
  14. package/library/chunks/{dialog.qaRoY3_s.js → dialog.Dw-WUyD8.js} +24 -15
  15. package/library/chunks/{document-viewer.DNfJOtnX.js → document-viewer.DvSw5R7C.js} +6 -6
  16. package/library/chunks/{dot-pagination.BK2ppZ1A.js → dot-pagination.CSSalEx6.js} +1 -1
  17. package/library/chunks/{dropdown.f2Kaf3fL.js → dropdown.CLzQHntD.js} +8 -10
  18. package/library/chunks/{dynamic-select.CMw_RQ3b.js → dynamic-select.C18Su1Hi.js} +1 -1
  19. package/library/chunks/{file-on-demand.C6a1aIG5.js → file-on-demand._LRRo_VV.js} +8 -8
  20. package/library/chunks/{folder-select.DuQBEXAx.js → folder-select.i1Map6Gy.js} +4 -4
  21. package/library/chunks/{header.GBQ0uRU9.js → header.qIpzHeNc.js} +1 -1
  22. package/library/chunks/{image.CTiMflL8.js → image.DzFSYcXq.js} +1 -1
  23. package/library/chunks/{line-clamp.CNik5DMZ.js → line-clamp.DlenWria.js} +1 -1
  24. package/library/chunks/{masonry.DuxgFely.js → masonry.D7YK0FcU.js} +2 -2
  25. package/library/chunks/{menu-item.DBDWACZq.js → menu-item.DS4-vQe3.js} +1 -1
  26. package/library/chunks/{menu.CmCugaR_.js → menu.DDiovK72.js} +19 -17
  27. package/library/chunks/{pagination.C8PXfYv0.js → pagination.Dm29rNz4.js} +2 -2
  28. package/library/chunks/{popup.BzvyCsl2.js → popup.CxGrVXG-.js} +3 -3
  29. package/library/chunks/{radio-card.Fz-PhWRZ.js → radio-card.DPIcsAW9.js} +1 -1
  30. package/library/chunks/{range.BgWk4zvl.js → range.Dl85wEtv.js} +1 -1
  31. package/library/chunks/{select.B2NKCXGR.js → select.CPCSCV1h.js} +3 -3
  32. package/library/chunks/{shadow-input-group.Dbs776dL.js → shadow-input-group.CyzUfNfD.js} +1 -1
  33. package/library/chunks/{share-option-list.DxQkZli1.js → share-option-list.BO50cnCs.js} +1 -1
  34. package/library/chunks/{size-input-group.CeykT9QX.js → size-input-group.BUyxMiGb.js} +2 -2
  35. package/library/chunks/{src.CFN9cg1F.js → src.DOywg1GE.js} +25 -25
  36. package/library/chunks/{step.rqfqMxqi.js → step.BKIlgV-h.js} +2 -2
  37. package/library/chunks/{stepper-wizard.B52n6f8y.js → stepper-wizard.BCNJD-aa.js} +2 -2
  38. package/library/chunks/{stepper.BcDcCwpI.js → stepper.D-B3UVVF.js} +1 -1
  39. package/library/chunks/{tab-group.ROPBx4C0.js → tab-group.kPeSvnQU.js} +4 -4
  40. package/library/chunks/{tab.BNnTFHDM.js → tab.C2OFvGGj.js} +1 -1
  41. package/library/chunks/{tag.LmkuK_d9.js → tag.CWTVcGc7.js} +1 -1
  42. package/library/chunks/{tooltip.CYPd2P_x.js → tooltip.CGCOh4cQ.js} +1 -1
  43. package/library/chunks/{tree.frUyPiZc.js → tree.BZvt8Ol0.js} +1 -1
  44. package/library/chunks/{typeface.BHdk69gz.js → typeface.BU6CLTXo.js} +1 -1
  45. package/library/chunks/{video.Ci7-upS9.js → video.BHfy8igQ.js} +1 -1
  46. package/library/components/array-line-clamp.js +1 -1
  47. package/library/components/asset-link-format.js +1 -1
  48. package/library/components/atoms.js +26 -26
  49. package/library/components/bicolor-picker.js +1 -1
  50. package/library/components/border-input-group.js +1 -1
  51. package/library/components/color-picker.js +1 -1
  52. package/library/components/color-swatch-group.js +1 -1
  53. package/library/components/color-swatch.js +1 -1
  54. package/library/components/confirm-popover.js +1 -1
  55. package/library/components/copy-button.js +1 -1
  56. package/library/components/corner-position-input-group.js +1 -1
  57. package/library/components/dialog.js +1 -1
  58. package/library/components/document-viewer.js +1 -1
  59. package/library/components/dot-pagination.js +1 -1
  60. package/library/components/dropdown.js +1 -1
  61. package/library/components/dynamic-select.js +1 -1
  62. package/library/components/file-on-demand.js +1 -1
  63. package/library/components/folder-select.js +1 -1
  64. package/library/components/header.js +1 -1
  65. package/library/components/image.js +1 -1
  66. package/library/components/line-clamp.js +1 -1
  67. package/library/components/masonry.js +1 -1
  68. package/library/components/menu-item.js +1 -1
  69. package/library/components/menu.js +1 -1
  70. package/library/components/molecules.js +13 -13
  71. package/library/components/organisms.js +3 -3
  72. package/library/components/pagination.js +1 -1
  73. package/library/components/popup.js +1 -1
  74. package/library/components/radio-card.js +1 -1
  75. package/library/components/range.js +1 -1
  76. package/library/components/select.js +1 -1
  77. package/library/components/shadow-input-group.js +1 -1
  78. package/library/components/share-option-list.js +1 -1
  79. package/library/components/size-input-group.js +1 -1
  80. package/library/components/step.js +1 -1
  81. package/library/components/stepper-wizard.js +1 -1
  82. package/library/components/stepper.js +1 -1
  83. package/library/components/tab-group.js +1 -1
  84. package/library/components/tab.js +1 -1
  85. package/library/components/tag.js +1 -1
  86. package/library/components/tooltip.js +1 -1
  87. package/library/components/tree-item.js +1 -1
  88. package/library/components/tree.js +1 -1
  89. package/library/components/typeface.js +1 -1
  90. package/library/components/types.js +9491 -9452
  91. package/library/components/video.js +1 -1
  92. package/library/package.json +1 -1
  93. package/library/packages/atoms/src/components/dialog/dialog.d.ts +6 -2
  94. package/library/packages/atoms/src/components/dropdown/dropdown.d.ts +0 -1
  95. package/library/packages/atoms/src/components/menu/menu.d.ts +4 -3
  96. package/library/packages/hybrid/rich-text/src/components/rich-text-toolbar/rich-text-toolbar.d.ts +4 -5
  97. package/library/packages/hybrid/rich-text/src/components/rich-text-toolbar/toolbar-list-actions.d.ts +45 -0
  98. package/library/packages/hybrid/rich-text/src/rich-text.d.ts +7 -0
  99. package/library/packages/molecules/src/graph-view/react/constant.d.ts +3 -1
  100. package/library/packages/organisms/src/content-builder/components/color-swatch-picker/color-swatch-picker.d.ts +7 -0
  101. package/library/packages/react-web-component.d.ts +0 -4
  102. package/library/react-web-component.d.ts +0 -4
  103. package/package.json +1 -1
@@ -1,2 +1,2 @@
1
- import { n as e, t } from "../chunks/video.Ci7-upS9.js";
1
+ import { n as e, t } from "../chunks/video.BHfy8igQ.js";
2
2
  export { t as VIDEO_BACKGROUND_SIZE_BY_OBJECT_FIT, e as default };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@orangelogic/design-system",
3
3
  "type": "module",
4
- "version": "4.24.0",
4
+ "version": "4.26.0",
5
5
  "license": "UNLICENSED",
6
6
  "types": "library/types.d.ts",
7
7
  "scripts": {
@@ -78,6 +78,7 @@ export default class CxDialog extends CortexElement {
78
78
  popup: CxPopup;
79
79
  panel: HTMLElement;
80
80
  body: HTMLElement;
81
+ overlay: HTMLElement;
81
82
  /**
82
83
  * Indicates whether or not the dialog is open. You can toggle this attribute to show and hide the dialog, or you can
83
84
  * use the `show()` and `hide()` methods and this attribute will reflect the dialog's open state.
@@ -128,14 +129,14 @@ export default class CxDialog extends CortexElement {
128
129
  */
129
130
  strategy: 'fixed' | 'overlay';
130
131
  private osInstance;
131
- overlay: HTMLElement;
132
132
  boundaryObserver: ResizeObserver | null;
133
+ /** Keeps an open dialog hidden until its popup has applied its first position. */
134
+ private positionReady;
133
135
  boundarySize: {
134
136
  height: number;
135
137
  width: number;
136
138
  };
137
139
  constructor();
138
- runFirstUpdated(): void;
139
140
  connectedUpdatedCallback(): void;
140
141
  disconnectedCallback(): void;
141
142
  protected shouldUpdate(_changedProperties: PropertyValues): boolean;
@@ -152,6 +153,9 @@ export default class CxDialog extends CortexElement {
152
153
  private handleDocumentMouseDown;
153
154
  private handleDocumentKeyDown;
154
155
  private handleCloseButtonClick;
156
+ private handlePopupReposition;
157
+ private initializeOverlayScrollbar;
158
+ private destroyOverlayScrollbar;
155
159
  handleOpenChange(): Promise<void>;
156
160
  /** Shows the dialog. */
157
161
  show(): Promise<void>;
@@ -112,7 +112,6 @@ export default class CxDropdown extends CortexElement {
112
112
  private handleKeyDown;
113
113
  private handleDocumentKeyDown;
114
114
  private handleDocumentMouseDown;
115
- private handleDocumentFocusIn;
116
115
  private handlePanelSelect;
117
116
  handleTriggerClick(): Promise<void>;
118
117
  handleTriggerKeyDown(event: KeyboardEvent): void;
@@ -23,6 +23,7 @@ export default class CxMenu extends CortexElement {
23
23
  static styles: CSSResultGroup;
24
24
  private readonly localize;
25
25
  defaultSlot: HTMLSlotElement;
26
+ backSlot: HTMLSlotElement | null;
26
27
  horizontal: boolean;
27
28
  /** The menu's variant */
28
29
  variant: MenuMode.Default | MenuMode.Multiple;
@@ -38,8 +39,6 @@ export default class CxMenu extends CortexElement {
38
39
  bubbleKeyDown: boolean;
39
40
  /** Override the default keydown navigation behavior of the dropdown menu. */
40
41
  ignoredKeys: string[];
41
- /** @deprecated Only stops ArrowUp/ArrowDown wrapping now; Tab is no longer intercepted. */
42
- disabledTabLoop: boolean;
43
42
  /** When true, checkbox items don't toggle off when already checked (same as each item's own `no-uncheck`). */
44
43
  noUncheck: boolean;
45
44
  resizeObserver: ResizeObserver | null;
@@ -57,7 +56,9 @@ export default class CxMenu extends CortexElement {
57
56
  private setRovingTabIndex;
58
57
  private isMenuSection;
59
58
  private isMenuItem;
60
- /** @internal Gets all slotted menu items, ignoring dividers, headers, and other elements. */
59
+ /** Focuses a panel's tab stop, so focus doesn't stay behind in the panel that is being hidden. */
60
+ private focusPanelTabStop;
61
+ /** @internal Gets all menu items, back button first, ignoring dividers, headers, and other elements. */
61
62
  getAllItems(): CxMenuItem[];
62
63
  /** @internal Gets all slotted submenus, used for 'multiple' variant */
63
64
  getAllSubMenus(): CxMenu[];
@@ -279,13 +279,12 @@ export default class CxRichTextToolbar extends CortexElement {
279
279
  private getOrderedListStyleForToolbar;
280
280
  private applyBulletListStyle;
281
281
  private applyOrderedListStyle;
282
- /** Selection's touched blocks as blank-line-separated runs, as `setTextSelection` spans. */
282
+ /** The touched blocks of each list scope as one run, as a `setTextSelection` span. */
283
283
  private collectSelectedBlockGroups;
284
- /**
285
- * Flattens each touched blank-line-separated section to paragraphs, then lets `applyToGroup`
286
- * turn each one into its own list. Toggling off passes nothing, so off mirrors on.
287
- */
284
+ /** Flattens each touched run to paragraphs, then lets `applyToGroup` turn it into a list. */
288
285
  private flattenSelectionGroups;
286
+ /** Unlists only the selected lines; lifting them splits the list around the selection. */
287
+ private unlistSelection;
289
288
  /**
290
289
  * Whether every touched block is already this list type — i.e. a click should remove
291
290
  * (vs. add). Block-level on purpose: Tiptap's `isActive` is range-coverage based and
@@ -0,0 +1,45 @@
1
+ import { Command } from '@tiptap/core';
2
+ import { Node as ProseMirrorNode } from '@tiptap/pm/model';
3
+ import { EditorState, Transaction } from '@tiptap/pm/state';
4
+ /** A block container the list toggles work inside, with the selection clipped to it. */
5
+ export type ListScope = {
6
+ from: number;
7
+ node: ProseMirrorNode;
8
+ /** Position of the container's first child. */
9
+ start: number;
10
+ to: number;
11
+ };
12
+ export type TouchedBlock = {
13
+ from: number;
14
+ node: ProseMirrorNode;
15
+ to: number;
16
+ };
17
+ export declare function isListNode(node: ProseMirrorNode): boolean;
18
+ /**
19
+ * The toggles work inside the nearest container around the selection that is not part of a list
20
+ * (a table cell, a blockquote, the document), with one scope per cell for a cell selection.
21
+ */
22
+ export declare function listScopes(state: EditorState): ListScope[];
23
+ /** The direct children of the scopes that the selection touches, in document order. */
24
+ export declare function touchedBlocks(scopes: ListScope[]): TouchedBlock[];
25
+ /**
26
+ * clearNodes collapses the selection to a cursor; re-select [from, to] through the mapping, with
27
+ * `between` since a lifted boundary can map outside any text.
28
+ */
29
+ export declare function reselectMappedRange(from: number, to: number): Command;
30
+ /**
31
+ * Takes the selected textblocks out of their lists. Replaces Tiptap's clearNodes, which resets
32
+ * their attributes (alignment, line height…), strips non-list wrappers such as a blockquote too,
33
+ * and walks a cached doc that goes stale once an earlier command in the chain changed an ancestor.
34
+ */
35
+ export declare function clearNodesKeepingAttrs(): Command;
36
+ /** List items holding nothing but nested lists, within `ranges`. */
37
+ export declare function nestedOnlyItemPositions(doc: ProseMirrorNode, ranges: Array<{
38
+ from: number;
39
+ to: number;
40
+ }>): number[];
41
+ /**
42
+ * Lifting a parent item out of its list leaves its nested list in an item with no text of its own,
43
+ * which renders as a bare marker. Moves the nested items at `positions` up into the enclosing list.
44
+ */
45
+ export declare function liftNestedOnlyItems(tr: Transaction, positions: number[]): void;
@@ -288,6 +288,13 @@ export default class CxRichText extends CortexElement {
288
288
  private teardownEditor;
289
289
  private initializeEditor;
290
290
  private emitRichTextChange;
291
+ /** Hides the caret until the selection and placeholder have painted, so it does not jump. */
292
+ private revealCaretAfterPaint;
293
+ /**
294
+ * No blur() here: hosts save on cx-rich-text-blur. The DOM selection is collapsed by hand since
295
+ * it still spans the emptied <p>, which shadowRoot.getSelection() wrongly reports as collapsed.
296
+ */
297
+ private resetEmptyCaret;
291
298
  private shouldCheckForbiddenKeys;
292
299
  private getLegacyKeyCodeFromKeyboardEvent;
293
300
  private getLegacyKeyCodeFromBeforeInputEvent;
@@ -26,7 +26,9 @@ export declare const MENU_ACTION: {
26
26
  UNLINK: string;
27
27
  };
28
28
  export declare const LAYOUT_DEBOUNCE = 100;
29
- export declare const SUMMARY_HEIGHT = 46;
29
+ export declare const SUMMARY_LINE_HEIGHT = 20;
30
+ export declare const SUMMARY_GAP = 4;
31
+ export declare const SUMMARY_VERTICAL_PADDING = 8;
30
32
  export declare const MAX_LABEL_WIDTH = 132;
31
33
  export declare const MAX_LABEL_HEIGHT = 80;
32
34
  export declare const VERTICAL_LABEL_OFFSET: number;
@@ -96,6 +96,13 @@ export default class CxColorSwatchPicker extends CortexElement {
96
96
  * The hex color value.
97
97
  */
98
98
  private dialogHex;
99
+ /**
100
+ * The color picker's displayed value. This stays in the format selected by the user,
101
+ * while `dialogHex` remains the canonical value saved with the color swatch.
102
+ */
103
+ private dialogPickerValue;
104
+ /** The display format selected in the current color dialog. */
105
+ private dialogPickerFormat;
99
106
  /**
100
107
  * The RGB color value.
101
108
  */
@@ -5004,10 +5004,6 @@ interface CxMenuAttributes extends HTMLAttributes<CxMenu> {
5004
5004
  * Override the default keydown navigation behavior of the dropdown menu.
5005
5005
  */
5006
5006
  ignoredKeys?: string[];
5007
- /**
5008
- *
5009
- */
5010
- disabledTabLoop?: boolean;
5011
5007
  /**
5012
5008
  * When true, checkbox items in this menu do not toggle off when already activated while checked—the same behavior as setting `no-uncheck` on each checkbox item.
5013
5009
  */
@@ -884,10 +884,6 @@
884
884
  * Override the default keydown navigation behavior of the dropdown menu.
885
885
  */
886
886
  ignoredKeys?: string[];
887
- /**
888
- * @deprecated Only stops ArrowUp/ArrowDown wrapping now; Tab is no longer intercepted.
889
- */
890
- disabledTabLoop?: boolean;
891
887
  /**
892
888
  * When true, checkbox items don't toggle off when already checked (same as each item's own `no-uncheck`).
893
889
  */
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@orangelogic/design-system",
3
3
  "type": "module",
4
- "version": "4.24.0",
4
+ "version": "4.26.0",
5
5
  "license": "UNLICENSED",
6
6
  "types": "library/types.d.ts",
7
7
  "scripts": {