@vonage/vivid 4.25.0 → 4.27.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.
- package/custom-elements.json +3371 -1999
- package/lib/accordion-item/accordion-item.d.ts +2 -2
- package/lib/action-group/action-group.d.ts +1 -1
- package/lib/alert/alert.d.ts +5 -5
- package/lib/audio-player/audio-player.d.ts +3 -3
- package/lib/avatar/avatar.d.ts +393 -1
- package/lib/avatar/avatar.template.d.ts +2 -2
- package/lib/badge/badge.d.ts +2 -2
- package/lib/banner/banner.d.ts +6 -6
- package/lib/breadcrumb/breadcrumb.d.ts +1 -1
- package/lib/breadcrumb-item/breadcrumb-item.d.ts +1 -1
- package/lib/button/button.d.ts +6 -6
- package/lib/calendar/calendar.d.ts +2 -0
- package/lib/calendar-event/calendar-event.d.ts +1 -1
- package/lib/card/card.d.ts +1 -1
- package/lib/checkbox/checkbox.d.ts +10 -10
- package/lib/combobox/combobox.d.ts +11 -11
- package/lib/data-grid/data-grid-cell.d.ts +6 -4
- package/lib/data-grid/data-grid-row.d.ts +1 -0
- package/lib/data-grid/data-grid.d.ts +1 -1
- package/lib/date-picker/date-picker.d.ts +75 -75
- package/lib/date-picker/date-picker.template.d.ts +1 -1
- package/lib/date-range-picker/date-range-picker.d.ts +44 -44
- package/lib/date-range-picker/date-range-picker.template.d.ts +1 -1
- package/lib/date-time-picker/date-time-picker.d.ts +64 -64
- package/lib/date-time-picker/date-time-picker.template.d.ts +1 -1
- package/lib/dial-pad/dial-pad.d.ts +3 -3
- package/lib/dialog/dialog.d.ts +5 -4
- package/lib/divider/divider.d.ts +1 -1
- package/lib/fab/fab.d.ts +2 -2
- package/lib/file-picker/file-picker.d.ts +10 -10
- package/lib/header/header.d.ts +1 -1
- package/lib/menu/menu.d.ts +2 -2
- package/lib/menu-item/menu-item.d.ts +3 -3
- package/lib/nav/nav.d.ts +1 -1
- package/lib/nav-disclosure/nav-disclosure.d.ts +3 -3
- package/lib/nav-item/nav-item.d.ts +3 -3
- package/lib/note/note.d.ts +2 -2
- package/lib/number-field/locale.d.ts +3 -2
- package/lib/number-field/number-field.d.ts +15 -15
- package/lib/option/option.d.ts +3 -3
- package/lib/pagination/locale.d.ts +5 -0
- package/lib/pagination/pagination.d.ts +341 -2
- package/lib/popup/popup.d.ts +1 -0
- package/lib/progress/progress.d.ts +1 -1
- package/lib/progress-ring/progress-ring.d.ts +1 -1
- package/lib/radio/radio.d.ts +3 -3
- package/lib/radio-group/radio-group.d.ts +4 -4
- package/lib/range-slider/range-slider.d.ts +5 -5
- package/lib/rich-text-editor/menubar/menubar.d.ts +3 -3
- package/lib/rich-text-editor/rich-text-editor.d.ts +3 -3
- package/lib/searchable-select/locale.d.ts +1 -1
- package/lib/searchable-select/option-tag.d.ts +3 -3
- package/lib/searchable-select/searchable-select.d.ts +15 -15
- package/lib/select/select.d.ts +12 -12
- package/lib/selectable-box/selectable-box.d.ts +1 -1
- package/lib/slider/slider.d.ts +5 -5
- package/lib/split-button/split-button.d.ts +6 -6
- package/lib/switch/switch.d.ts +2 -2
- package/lib/tab/tab.d.ts +6 -6
- package/lib/tab-panel/tab-panel.d.ts +1 -1
- package/lib/tag/locale.d.ts +3 -0
- package/lib/tag/tag.d.ts +343 -6
- package/lib/tag-group/tag-group.d.ts +1 -1
- package/lib/text-area/text-area.d.ts +14 -14
- package/lib/text-field/text-field.d.ts +16 -16
- package/lib/time-picker/time-picker.d.ts +21 -21
- package/lib/toggletip/toggletip.d.ts +1 -1
- package/lib/tooltip/tooltip.d.ts +1 -1
- package/lib/tree-item/tree-item.d.ts +3 -3
- package/lib/tree-view/tree-view.d.ts +1 -1
- package/lib/video-player/video-player.d.ts +3 -3
- package/locales/de-DE.cjs +40 -5
- package/locales/de-DE.js +40 -5
- package/locales/en-GB.cjs +40 -5
- package/locales/en-GB.js +40 -5
- package/locales/en-US.cjs +40 -5
- package/locales/en-US.js +40 -5
- package/locales/ja-JP.cjs +40 -5
- package/locales/ja-JP.js +40 -5
- package/locales/zh-CN.cjs +40 -5
- package/locales/zh-CN.js +40 -5
- package/package.json +73 -45
- package/shared/aria/delegates-aria.d.ts +1 -1
- package/shared/aria/host-semantics.d.ts +1 -1
- package/shared/calendar-picker.template.cjs +40 -13
- package/shared/calendar-picker.template.js +40 -13
- package/shared/definition.cjs +19 -3
- package/shared/definition.js +20 -4
- package/shared/definition11.cjs +1 -1
- package/shared/definition11.js +1 -1
- package/shared/definition13.cjs +25 -0
- package/shared/definition13.js +26 -1
- package/shared/definition15.cjs +1 -1
- package/shared/definition15.js +1 -1
- package/shared/definition16.cjs +1 -1
- package/shared/definition16.js +1 -1
- package/shared/definition17.cjs +602 -522
- package/shared/definition17.js +600 -520
- package/shared/definition18.cjs +8 -1
- package/shared/definition18.js +8 -1
- package/shared/definition19.cjs +9 -2
- package/shared/definition19.js +9 -2
- package/shared/definition2.cjs +1 -1
- package/shared/definition2.js +1 -1
- package/shared/definition20.cjs +3 -1
- package/shared/definition20.js +3 -1
- package/shared/definition21.cjs +2 -2
- package/shared/definition21.js +2 -2
- package/shared/definition22.cjs +9 -3
- package/shared/definition22.js +9 -3
- package/shared/definition28.cjs +2 -2
- package/shared/definition28.js +2 -2
- package/shared/definition3.cjs +1 -1
- package/shared/definition3.js +1 -1
- package/shared/definition30.cjs +1 -1
- package/shared/definition30.js +1 -1
- package/shared/definition31.cjs +1 -1
- package/shared/definition31.js +1 -1
- package/shared/definition32.cjs +1 -1
- package/shared/definition32.js +1 -1
- package/shared/definition36.cjs +41 -30
- package/shared/definition36.js +34 -23
- package/shared/definition38.cjs +30 -23
- package/shared/definition38.js +30 -23
- package/shared/definition4.cjs +1 -1
- package/shared/definition4.js +1 -1
- package/shared/definition41.cjs +1 -1
- package/shared/definition41.js +1 -1
- package/shared/definition42.cjs +2 -2
- package/shared/definition42.js +2 -2
- package/shared/definition44.cjs +129 -117
- package/shared/definition44.js +130 -118
- package/shared/definition45.cjs +17 -7
- package/shared/definition45.js +17 -7
- package/shared/definition46.cjs +1 -1
- package/shared/definition46.js +1 -1
- package/shared/definition49.cjs +6 -6
- package/shared/definition49.js +6 -6
- package/shared/definition54.cjs +2 -2
- package/shared/definition54.js +2 -2
- package/shared/definition56.cjs +5 -4
- package/shared/definition56.js +5 -4
- package/shared/definition57.cjs +1 -1
- package/shared/definition57.js +1 -1
- package/shared/definition58.cjs +1 -1
- package/shared/definition58.js +1 -1
- package/shared/definition59.cjs +3 -1
- package/shared/definition59.js +3 -1
- package/shared/definition6.cjs +45 -12
- package/shared/definition6.js +45 -12
- package/shared/definition63.cjs +2 -2
- package/shared/definition63.js +2 -2
- package/shared/definition64.cjs +136 -38
- package/shared/definition64.js +136 -38
- package/shared/definition67.cjs +36 -15
- package/shared/definition67.js +37 -16
- package/shared/feedback/feedback-message.d.ts +1 -1
- package/shared/feedback/mixins.d.ts +2 -2
- package/shared/form-associated.cjs +4 -0
- package/shared/form-associated.js +4 -0
- package/shared/foundation/button/button.d.ts +1 -1
- package/shared/foundation/vivid-element/vivid-element.d.ts +2 -0
- package/shared/key-codes.js +1 -1
- package/shared/localization/Locale.d.ts +4 -0
- package/shared/mixins.cjs +4 -1
- package/shared/mixins.js +4 -1
- package/shared/patterns/affix.d.ts +2 -2
- package/shared/patterns/char-count/char-count.d.ts +1 -1
- package/shared/patterns/form-elements/with-success-text.d.ts +1 -1
- package/shared/patterns/linkable.d.ts +1 -1
- package/shared/patterns/localized.d.ts +1 -1
- package/shared/patterns/trapped-focus.d.ts +1 -1
- package/shared/picker-field/mixins/calendar-picker.d.ts +2 -2
- package/shared/picker-field/mixins/calendar-picker.locale.d.ts +5 -0
- package/shared/picker-field/mixins/calendar-picker.template.d.ts +2 -2
- package/shared/picker-field/mixins/calendar-segments/segment.d.ts +1 -0
- package/shared/picker-field/mixins/inline-time-picker/inline-time-picker.d.ts +1 -1
- package/shared/picker-field/mixins/min-max-calendar-picker.d.ts +4 -4
- package/shared/picker-field/mixins/single-date-picker.d.ts +4 -4
- package/shared/picker-field/mixins/single-value-picker.d.ts +1 -1
- package/shared/picker-field/mixins/time-selection-picker.d.ts +2 -2
- package/shared/picker-field/mixins/time-selection-picker.template.d.ts +2 -2
- package/shared/picker-field/picker-field.d.ts +3 -3
- package/shared/picker-field.template.cjs +13 -13
- package/shared/picker-field.template.js +13 -13
- package/shared/vivid-element.cjs +11 -1
- package/shared/vivid-element.js +11 -1
- package/styles/core/all.css +5 -5
- package/styles/core/theme.css +2 -2
- package/styles/core/typography.css +4 -4
- package/styles/fonts/spezia-variable.css +15 -15
- package/styles/tokens/theme-dark.css +4 -4
- package/styles/tokens/theme-light.css +4 -4
- package/styles/tokens/vivid-2-compat.css +1 -1
- package/vivid.api.json +395 -277
package/shared/definition44.cjs
CHANGED
|
@@ -1,70 +1,21 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
const vividElement = require('./vivid-element.cjs');
|
|
4
|
-
const localized = require('./localized.cjs');
|
|
5
4
|
const definition$1 = require('./definition11.cjs');
|
|
6
|
-
const
|
|
5
|
+
const definition$6 = require('./definition23.cjs');
|
|
6
|
+
const definition$5 = require('./definition37.cjs');
|
|
7
7
|
const definition$2 = require('./definition61.cjs');
|
|
8
|
-
const definition$4 = require('./definition46.cjs');
|
|
9
|
-
const option = require('./option.cjs');
|
|
10
8
|
const definition = require('./definition31.cjs');
|
|
11
9
|
const definition$3 = require('./definition30.cjs');
|
|
10
|
+
const definition$4 = require('./definition46.cjs');
|
|
11
|
+
const divider = require('./divider.cjs');
|
|
12
|
+
const option = require('./option.cjs');
|
|
12
13
|
const repeat = require('./repeat.cjs');
|
|
13
14
|
const classNames = require('./class-names.cjs');
|
|
14
|
-
const
|
|
15
|
-
const definition$6 = require('./definition23.cjs');
|
|
15
|
+
const localized = require('./localized.cjs');
|
|
16
16
|
|
|
17
17
|
const styles$1 = "@charset \"UTF-8\";.ProseMirror li{position:relative}.ProseMirror-hideselection *::selection{background:transparent}.ProseMirror-hideselection *::-moz-selection{background:transparent}.ProseMirror-hideselection{caret-color:transparent}.ProseMirror [draggable][contenteditable=false]{user-select:text}.ProseMirror-selectednode{outline:2px solid #8cf}li.ProseMirror-selectednode{outline:none}li.ProseMirror-selectednode:after{content:\"\";position:absolute;inset:-2px -2px -2px -32px;border:2px solid #8cf;pointer-events:none}img.ProseMirror-separator{display:inline!important;border:none!important;margin:0!important}.ProseMirror-textblock-dropdown{min-width:3em}.ProseMirror-menu{margin:0 -4px;line-height:1}.ProseMirror-tooltip .ProseMirror-menu{width:-webkit-fit-content;width:fit-content;white-space:pre}.ProseMirror-menuitem{margin-right:3px;display:inline-block}.ProseMirror-menuseparator{border-right:1px solid #ddd;margin-right:3px}.ProseMirror-menu-dropdown,.ProseMirror-menu-dropdown-menu{font-size:90%;white-space:nowrap}.ProseMirror-menu-dropdown{vertical-align:1px;cursor:pointer;position:relative;padding-right:15px}.ProseMirror-menu-dropdown-wrap{padding:1px 0 1px 4px;display:inline-block;position:relative}.ProseMirror-menu-dropdown:after{content:\"\";border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid currentColor;opacity:.6;position:absolute;right:4px;top:calc(50% - 2px)}.ProseMirror-menu-dropdown-menu,.ProseMirror-menu-submenu{position:absolute;background:#fff;color:#666;border:1px solid #aaa;padding:2px}.ProseMirror-menu-dropdown-menu{z-index:15;min-width:6em}.ProseMirror-menu-dropdown-item{cursor:pointer;padding:2px 8px 2px 4px}.ProseMirror-menu-dropdown-item:hover{background:#f2f2f2}.ProseMirror-menu-submenu-wrap{position:relative;margin-right:-4px}.ProseMirror-menu-submenu-label:after{content:\"\";border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:4px solid currentColor;opacity:.6;position:absolute;right:4px;top:calc(50% - 4px)}.ProseMirror-menu-submenu{display:none;min-width:4em;left:100%;top:-3px}.ProseMirror-menu-active{background:#eee;border-radius:4px}.ProseMirror-menu-disabled{opacity:.3}.ProseMirror-menu-submenu-wrap:hover .ProseMirror-menu-submenu,.ProseMirror-menu-submenu-wrap-active .ProseMirror-menu-submenu{display:block}.ProseMirror-menubar{border-top-left-radius:inherit;border-top-right-radius:inherit;position:relative;min-height:1em;color:#666;padding:1px 6px;top:0;left:0;right:0;border-bottom:1px solid silver;background:#fff;z-index:10;-moz-box-sizing:border-box;box-sizing:border-box;overflow:visible}.ProseMirror-icon{display:inline-block;line-height:.8;vertical-align:-2px;padding:2px 8px;cursor:pointer}.ProseMirror-menu-disabled.ProseMirror-icon{cursor:default}.ProseMirror-icon svg{fill:currentColor;height:1em}.ProseMirror-icon span{vertical-align:text-top}.ProseMirror-gapcursor{display:none;pointer-events:none;position:absolute}.ProseMirror-gapcursor:after{content:\"\";display:block;position:absolute;top:-2px;width:20px;border-top:1px solid black;animation:ProseMirror-cursor-blink 1.1s steps(2,start) infinite}@keyframes ProseMirror-cursor-blink{to{visibility:hidden}}.ProseMirror-focused .ProseMirror-gapcursor{display:block}.ProseMirror-example-setup-style hr{padding:2px 10px;border:none;margin:1em 0}.ProseMirror-example-setup-style hr:after{content:\"\";display:block;height:1px;background-color:silver;line-height:2px}.ProseMirror ul,.ProseMirror ol{padding-left:30px}.ProseMirror blockquote{padding-left:1em;border-left:3px solid #eee;margin-left:0;margin-right:0}.ProseMirror-example-setup-style img{cursor:default}.ProseMirror-prompt{background:#fff;padding:5px 10px 5px 15px;border:1px solid silver;position:fixed;border-radius:3px;z-index:11;box-shadow:-.5px 2px 5px #0003}.ProseMirror-prompt h5{margin:0;font-weight:400;font-size:100%;color:#444}.ProseMirror-prompt input[type=text],.ProseMirror-prompt textarea{background:#eee;border:none;outline:none}.ProseMirror-prompt input[type=text]{padding:0 4px}.ProseMirror-prompt-close{position:absolute;left:2px;top:1px;color:#666;border:none;background:transparent;padding:0}.ProseMirror-prompt-close:after{content:\"✕\";font-size:12px}.ProseMirror-invalid{background:#ffc;border:1px solid #cc7;border-radius:4px;padding:5px 10px;position:absolute;min-width:10em}.ProseMirror-prompt-buttons{margin-top:5px;display:none}.placeholder:before{position:absolute;color:var(--vvd-color-neutral-600);content:attr(data-placeholder);font:var(--vvd-typography-base);pointer-events:none}.editor{box-sizing:border-box;background:var(--vvd-color-canvas);background-clip:padding-box;color:var(--vvd-color-canvas-text)}.ProseMirror{position:relative;box-sizing:border-box;padding:10px 16px;block-size:120px;font:var(--vvd-typography-base);font-feature-settings:\"liga\" 0;font-variant-ligatures:none;line-height:1.2;outline:none;overflow-y:auto;white-space:break-spaces;word-wrap:break-word}.ProseMirror pre{white-space:pre-wrap}.ProseMirror p{margin-bottom:1em}.ProseMirror p:first-child,.ProseMirror h1:first-child,.ProseMirror h2:first-child,.ProseMirror h3:first-child,.ProseMirror h4:first-child,.ProseMirror h5:first-child,.ProseMirror h6:first-child{margin-top:10px}h2{font:var(--vvd-typography-heading-4)}h3{font:var(--vvd-typography-base-extended)}p{font:var(--vvd-typography-base)}:host{display:block}#editor{--scrollbar-track-color: transparent;--scrollbar-thumb-color: color-mix(in srgb, var(--vvd-color-neutral-950), transparent 70%)}#editor{scrollbar-color:var(--scrollbar-thumb-color) var(--scrollbar-track-color);scrollbar-width:thin}#editor ::-webkit-scrollbar{width:4px}#editor ::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}#editor ::-webkit-scrollbar-thumb{border:0;border-radius:4px;background-color:var(--scrollbar-fallback-track-color, var(--scrollbar-thumb-color))}#editor{position:relative;display:flex;flex-direction:column;block-size:100%;overflow-y:auto}[contenteditable=true]{overflow:unset;block-size:unset}#attachments-wrapper{order:1}#attachments-wrapper .divider{padding:0 12px}.hidden{display:none}.drag-overlay{position:absolute;z-index:10;display:none;align-items:center;justify-content:center;border:1px dashed var(--vvd-color-cta-400);border-radius:8px;background:var(--vvd-color-cta-100);font:var(--vvd-typography-base);inset:0;opacity:.8;pointer-events:none;transition:opacity .2s}.drag-over .drag-overlay{display:flex}";
|
|
18
18
|
|
|
19
|
-
const styles = ":host{display:flex;align-items:center;background-color:var(--vvd-color-neutral-50);gap:4px}:host .hide-menubar{display:none}.title{--_text-primary-custom-size: var(--vvd-typography-heading-4)}.subtitle{--_text-primary-custom-size: var(--vvd-typography-base-extended)}.body{--_text-primary-custom-size: var(--vvd-typography-base)}.divider{height:28px}#text-block{width:104px}";
|
|
20
|
-
|
|
21
|
-
var __defProp$1 = Object.defineProperty;
|
|
22
|
-
var __decorateClass$1 = (decorators, target, key, kind) => {
|
|
23
|
-
var result = void 0 ;
|
|
24
|
-
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
25
|
-
if (decorator = decorators[i])
|
|
26
|
-
result = (decorator(target, key, result) ) || result;
|
|
27
|
-
if (result) __defProp$1(target, key, result);
|
|
28
|
-
return result;
|
|
29
|
-
};
|
|
30
|
-
class MenuBar extends localized.Localized(vividElement.VividElement) {
|
|
31
|
-
get #textEditorElement() {
|
|
32
|
-
return this.parentElement;
|
|
33
|
-
}
|
|
34
|
-
#updateTextStyleState = () => {
|
|
35
|
-
this.dispatchEvent(
|
|
36
|
-
new CustomEvent("text-styles-changed", {
|
|
37
|
-
detail: this.#textEditorElement?.selectionStyles
|
|
38
|
-
})
|
|
39
|
-
);
|
|
40
|
-
};
|
|
41
|
-
connectedCallback() {
|
|
42
|
-
super.connectedCallback();
|
|
43
|
-
this.#textEditorElement.addEventListener(
|
|
44
|
-
"selection-changed",
|
|
45
|
-
this.#updateTextStyleState
|
|
46
|
-
);
|
|
47
|
-
this.#textEditorElement.addEventListener(
|
|
48
|
-
"change",
|
|
49
|
-
this.#updateTextStyleState
|
|
50
|
-
);
|
|
51
|
-
}
|
|
52
|
-
disconnectedCallback() {
|
|
53
|
-
super.disconnectedCallback();
|
|
54
|
-
this.#textEditorElement?.removeEventListener(
|
|
55
|
-
"selection-changed",
|
|
56
|
-
this.#updateTextStyleState
|
|
57
|
-
);
|
|
58
|
-
this.#textEditorElement?.removeEventListener(
|
|
59
|
-
"change",
|
|
60
|
-
this.#updateTextStyleState
|
|
61
|
-
);
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
__decorateClass$1([
|
|
65
|
-
vividElement.attr({ attribute: "menu-items" })
|
|
66
|
-
], MenuBar.prototype, "menuItems");
|
|
67
|
-
|
|
68
19
|
function notifyMenuBarChange(menuBar, eventName, payload) {
|
|
69
20
|
menuBar.$emit(eventName, payload, { bubbles: false, composed: false });
|
|
70
21
|
return true;
|
|
@@ -305,6 +256,53 @@ const MENU_BAR_ITEMS = {
|
|
|
305
256
|
}
|
|
306
257
|
};
|
|
307
258
|
|
|
259
|
+
var __defProp$1 = Object.defineProperty;
|
|
260
|
+
var __decorateClass$1 = (decorators, target, key, kind) => {
|
|
261
|
+
var result = void 0 ;
|
|
262
|
+
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
263
|
+
if (decorator = decorators[i])
|
|
264
|
+
result = (decorator(target, key, result) ) || result;
|
|
265
|
+
if (result) __defProp$1(target, key, result);
|
|
266
|
+
return result;
|
|
267
|
+
};
|
|
268
|
+
class MenuBar extends localized.Localized(vividElement.VividElement) {
|
|
269
|
+
get #textEditorElement() {
|
|
270
|
+
return this.parentElement;
|
|
271
|
+
}
|
|
272
|
+
#updateTextStyleState = () => {
|
|
273
|
+
this.dispatchEvent(
|
|
274
|
+
new CustomEvent("text-styles-changed", {
|
|
275
|
+
detail: this.#textEditorElement?.selectionStyles
|
|
276
|
+
})
|
|
277
|
+
);
|
|
278
|
+
};
|
|
279
|
+
connectedCallback() {
|
|
280
|
+
super.connectedCallback();
|
|
281
|
+
this.#textEditorElement.addEventListener(
|
|
282
|
+
"selection-changed",
|
|
283
|
+
this.#updateTextStyleState
|
|
284
|
+
);
|
|
285
|
+
this.#textEditorElement.addEventListener(
|
|
286
|
+
"change",
|
|
287
|
+
this.#updateTextStyleState
|
|
288
|
+
);
|
|
289
|
+
}
|
|
290
|
+
disconnectedCallback() {
|
|
291
|
+
super.disconnectedCallback();
|
|
292
|
+
this.#textEditorElement?.removeEventListener(
|
|
293
|
+
"selection-changed",
|
|
294
|
+
this.#updateTextStyleState
|
|
295
|
+
);
|
|
296
|
+
this.#textEditorElement?.removeEventListener(
|
|
297
|
+
"change",
|
|
298
|
+
this.#updateTextStyleState
|
|
299
|
+
);
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
__decorateClass$1([
|
|
303
|
+
vividElement.attr({ attribute: "menu-items" })
|
|
304
|
+
], MenuBar.prototype, "menuItems");
|
|
305
|
+
|
|
308
306
|
const getClasses$1 = (menuBar) => classNames.classNames("control", [
|
|
309
307
|
"hide-menubar",
|
|
310
308
|
getValidMenuItems(menuBar).length === 0
|
|
@@ -334,6 +332,8 @@ const MenuBarTemplate = (context) => {
|
|
|
334
332
|
</template>`;
|
|
335
333
|
};
|
|
336
334
|
|
|
335
|
+
const styles = ":host{display:flex;align-items:center;background-color:var(--vvd-color-neutral-50);gap:4px}:host .hide-menubar{display:none}.title{--_text-primary-custom-size: var(--vvd-typography-heading-4)}.subtitle{--_text-primary-custom-size: var(--vvd-typography-base-extended)}.body{--_text-primary-custom-size: var(--vvd-typography-base)}.divider{height:28px}#text-block{width:104px}";
|
|
336
|
+
|
|
337
337
|
const menuBarDefinition = vividElement.defineVividComponent(
|
|
338
338
|
"menubar",
|
|
339
339
|
MenuBar,
|
|
@@ -7067,6 +7067,7 @@ const isEquivalentPosition = function (node, off, targetNode, targetOff) {
|
|
|
7067
7067
|
};
|
|
7068
7068
|
const atomElements = /^(img|br|input|textarea|hr)$/i;
|
|
7069
7069
|
function scanFor(node, off, targetNode, targetOff, dir) {
|
|
7070
|
+
var _a;
|
|
7070
7071
|
for (;;) {
|
|
7071
7072
|
if (node == targetNode && off == targetOff)
|
|
7072
7073
|
return true;
|
|
@@ -7079,10 +7080,17 @@ function scanFor(node, off, targetNode, targetOff, dir) {
|
|
|
7079
7080
|
node = parent;
|
|
7080
7081
|
}
|
|
7081
7082
|
else if (node.nodeType == 1) {
|
|
7082
|
-
|
|
7083
|
-
if (
|
|
7084
|
-
|
|
7085
|
-
|
|
7083
|
+
let child = node.childNodes[off + (dir < 0 ? -1 : 0)];
|
|
7084
|
+
if (child.nodeType == 1 && child.contentEditable == "false") {
|
|
7085
|
+
if ((_a = child.pmViewDesc) === null || _a === void 0 ? void 0 : _a.ignoreForSelection)
|
|
7086
|
+
off += dir;
|
|
7087
|
+
else
|
|
7088
|
+
return false;
|
|
7089
|
+
}
|
|
7090
|
+
else {
|
|
7091
|
+
node = child;
|
|
7092
|
+
off = dir < 0 ? nodeSize(node) : 0;
|
|
7093
|
+
}
|
|
7086
7094
|
}
|
|
7087
7095
|
else {
|
|
7088
7096
|
return false;
|
|
@@ -7203,7 +7211,7 @@ const safari = !ie$1 && !!nav && /Apple Computer/.test(nav.vendor);
|
|
|
7203
7211
|
// Is true for both iOS and iPadOS for convenience
|
|
7204
7212
|
const ios = safari && (/Mobile\/\w+/.test(agent) || !!nav && nav.maxTouchPoints > 2);
|
|
7205
7213
|
const mac$3 = ios || (nav ? /Mac/.test(nav.platform) : false);
|
|
7206
|
-
const windows = nav ? /Win/.test(nav.platform) : false;
|
|
7214
|
+
const windows$1 = nav ? /Win/.test(nav.platform) : false;
|
|
7207
7215
|
const android = /Android \d/.test(agent);
|
|
7208
7216
|
const webkit = !!doc && "webkitFontSmoothing" in doc.documentElement.style;
|
|
7209
7217
|
const webkit_version = webkit ? +(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent) || [0, 0])[1] : 0;
|
|
@@ -8166,6 +8174,7 @@ class ViewDesc {
|
|
|
8166
8174
|
}
|
|
8167
8175
|
get domAtom() { return false; }
|
|
8168
8176
|
get ignoreForCoords() { return false; }
|
|
8177
|
+
get ignoreForSelection() { return false; }
|
|
8169
8178
|
isText(text) { return false; }
|
|
8170
8179
|
}
|
|
8171
8180
|
// A widget desc represents a widget decoration, which is a DOM node
|
|
@@ -8210,6 +8219,7 @@ class WidgetViewDesc extends ViewDesc {
|
|
|
8210
8219
|
super.destroy();
|
|
8211
8220
|
}
|
|
8212
8221
|
get domAtom() { return true; }
|
|
8222
|
+
get ignoreForSelection() { return !!this.widget.type.spec.relaxedSide; }
|
|
8213
8223
|
get side() { return this.widget.type.side; }
|
|
8214
8224
|
}
|
|
8215
8225
|
class CompositionViewDesc extends ViewDesc {
|
|
@@ -9673,7 +9683,7 @@ function setSelFocus(view, node, offset) {
|
|
|
9673
9683
|
}
|
|
9674
9684
|
function findDirection(view, pos) {
|
|
9675
9685
|
let $pos = view.state.doc.resolve(pos);
|
|
9676
|
-
if (!(chrome || windows) && $pos.parent.inlineContent) {
|
|
9686
|
+
if (!(chrome || windows$1) && $pos.parent.inlineContent) {
|
|
9677
9687
|
let coords = view.coordsAtPos(pos);
|
|
9678
9688
|
if (pos > $pos.start()) {
|
|
9679
9689
|
let before = view.coordsAtPos(pos - 1);
|
|
@@ -10079,7 +10089,7 @@ class InputState {
|
|
|
10079
10089
|
this.mouseDown = null;
|
|
10080
10090
|
this.lastKeyCode = null;
|
|
10081
10091
|
this.lastKeyCodeTime = 0;
|
|
10082
|
-
this.lastClick = { time: 0, x: 0, y: 0, type: "" };
|
|
10092
|
+
this.lastClick = { time: 0, x: 0, y: 0, type: "", button: 0 };
|
|
10083
10093
|
this.lastSelectionOrigin = null;
|
|
10084
10094
|
this.lastSelectionTime = 0;
|
|
10085
10095
|
this.lastIOSEnter = 0;
|
|
@@ -10207,8 +10217,9 @@ editHandlers.keypress = (view, _event) => {
|
|
|
10207
10217
|
let sel = view.state.selection;
|
|
10208
10218
|
if (!(sel instanceof TextSelection) || !sel.$from.sameParent(sel.$to)) {
|
|
10209
10219
|
let text = String.fromCharCode(event.charCode);
|
|
10210
|
-
|
|
10211
|
-
|
|
10220
|
+
let deflt = () => view.state.tr.insertText(text).scrollIntoView();
|
|
10221
|
+
if (!/[\r\n]/.test(text) && !view.someProp("handleTextInput", f => f(view, sel.$from.pos, sel.$to.pos, text, deflt)))
|
|
10222
|
+
view.dispatch(deflt());
|
|
10212
10223
|
event.preventDefault();
|
|
10213
10224
|
}
|
|
10214
10225
|
};
|
|
@@ -10320,13 +10331,14 @@ handlers.mousedown = (view, _event) => {
|
|
|
10320
10331
|
view.input.shiftKey = event.shiftKey;
|
|
10321
10332
|
let flushed = forceDOMFlush(view);
|
|
10322
10333
|
let now = Date.now(), type = "singleClick";
|
|
10323
|
-
if (now - view.input.lastClick.time < 500 && isNear(event, view.input.lastClick) && !event[selectNodeModifier]
|
|
10334
|
+
if (now - view.input.lastClick.time < 500 && isNear(event, view.input.lastClick) && !event[selectNodeModifier] &&
|
|
10335
|
+
view.input.lastClick.button == event.button) {
|
|
10324
10336
|
if (view.input.lastClick.type == "singleClick")
|
|
10325
10337
|
type = "doubleClick";
|
|
10326
10338
|
else if (view.input.lastClick.type == "doubleClick")
|
|
10327
10339
|
type = "tripleClick";
|
|
10328
10340
|
}
|
|
10329
|
-
view.input.lastClick = { time: now, x: event.clientX, y: event.clientY, type };
|
|
10341
|
+
view.input.lastClick = { time: now, x: event.clientX, y: event.clientY, type, button: event.button };
|
|
10330
10342
|
let pos = view.posAtCoords(eventCoords(event));
|
|
10331
10343
|
if (!pos)
|
|
10332
10344
|
return;
|
|
@@ -10583,10 +10595,10 @@ function endComposition(view, restarting = false) {
|
|
|
10583
10595
|
view.domObserver.forceFlush();
|
|
10584
10596
|
clearComposition(view);
|
|
10585
10597
|
if (restarting || view.docView && view.docView.dirty) {
|
|
10586
|
-
let sel = selectionFromDOM(view);
|
|
10587
|
-
if (sel && !sel.eq(
|
|
10598
|
+
let sel = selectionFromDOM(view), cur = view.state.selection;
|
|
10599
|
+
if (sel && !sel.eq(cur))
|
|
10588
10600
|
view.dispatch(view.state.tr.setSelection(sel));
|
|
10589
|
-
else if ((view.markCursor || restarting) && !
|
|
10601
|
+
else if ((view.markCursor || restarting) && !cur.$from.node(cur.$from.sharedDepth(cur.to)).inlineContent)
|
|
10590
10602
|
view.dispatch(view.state.tr.deleteSelection());
|
|
10591
10603
|
else
|
|
10592
10604
|
view.updateState(view.state);
|
|
@@ -12091,7 +12103,26 @@ function readDOMChange(view, from, to, typeOver, addedNodes) {
|
|
|
12091
12103
|
}, 20);
|
|
12092
12104
|
}
|
|
12093
12105
|
let chFrom = change.start, chTo = change.endA;
|
|
12094
|
-
let
|
|
12106
|
+
let mkTr = (base) => {
|
|
12107
|
+
let tr = base || view.state.tr.replace(chFrom, chTo, parse.doc.slice(change.start - parse.from, change.endB - parse.from));
|
|
12108
|
+
if (parse.sel) {
|
|
12109
|
+
let sel = resolveSelection(view, tr.doc, parse.sel);
|
|
12110
|
+
// Chrome will sometimes, during composition, report the
|
|
12111
|
+
// selection in the wrong place. If it looks like that is
|
|
12112
|
+
// happening, don't update the selection.
|
|
12113
|
+
// Edge just doesn't move the cursor forward when you start typing
|
|
12114
|
+
// in an empty block or between br nodes.
|
|
12115
|
+
if (sel && !(chrome && view.composing && sel.empty &&
|
|
12116
|
+
(change.start != change.endB || view.input.lastChromeDelete < Date.now() - 100) &&
|
|
12117
|
+
(sel.head == chFrom || sel.head == tr.mapping.map(chTo) - 1) ||
|
|
12118
|
+
ie$1 && sel.empty && sel.head == chFrom))
|
|
12119
|
+
tr.setSelection(sel);
|
|
12120
|
+
}
|
|
12121
|
+
if (compositionID)
|
|
12122
|
+
tr.setMeta("composition", compositionID);
|
|
12123
|
+
return tr.scrollIntoView();
|
|
12124
|
+
};
|
|
12125
|
+
let markChange;
|
|
12095
12126
|
if (inlineChange) {
|
|
12096
12127
|
if ($from.pos == $to.pos) { // Deletion
|
|
12097
12128
|
// IE11 sometimes weirdly moves the DOM selection around after
|
|
@@ -12100,46 +12131,33 @@ function readDOMChange(view, from, to, typeOver, addedNodes) {
|
|
|
12100
12131
|
view.domObserver.suppressSelectionUpdates();
|
|
12101
12132
|
setTimeout(() => selectionToDOM(view), 20);
|
|
12102
12133
|
}
|
|
12103
|
-
tr = view.state.tr.delete(chFrom, chTo);
|
|
12104
|
-
|
|
12134
|
+
let tr = mkTr(view.state.tr.delete(chFrom, chTo));
|
|
12135
|
+
let marks = doc.resolve(change.start).marksAcross(doc.resolve(change.endA));
|
|
12136
|
+
if (marks)
|
|
12137
|
+
tr.ensureMarks(marks);
|
|
12138
|
+
view.dispatch(tr);
|
|
12105
12139
|
}
|
|
12106
12140
|
else if ( // Adding or removing a mark
|
|
12107
12141
|
change.endA == change.endB &&
|
|
12108
12142
|
(markChange = isMarkChange($from.parent.content.cut($from.parentOffset, $to.parentOffset), $fromA.parent.content.cut($fromA.parentOffset, change.endA - $fromA.start())))) {
|
|
12109
|
-
tr = view.state.tr;
|
|
12143
|
+
let tr = mkTr(view.state.tr);
|
|
12110
12144
|
if (markChange.type == "add")
|
|
12111
12145
|
tr.addMark(chFrom, chTo, markChange.mark);
|
|
12112
12146
|
else
|
|
12113
12147
|
tr.removeMark(chFrom, chTo, markChange.mark);
|
|
12148
|
+
view.dispatch(tr);
|
|
12114
12149
|
}
|
|
12115
12150
|
else if ($from.parent.child($from.index()).isText && $from.index() == $to.index() - ($to.textOffset ? 0 : 1)) {
|
|
12116
12151
|
// Both positions in the same text node -- simply insert text
|
|
12117
12152
|
let text = $from.parent.textBetween($from.parentOffset, $to.parentOffset);
|
|
12118
|
-
|
|
12119
|
-
|
|
12120
|
-
|
|
12121
|
-
}
|
|
12122
|
-
}
|
|
12123
|
-
|
|
12124
|
-
|
|
12125
|
-
|
|
12126
|
-
let sel = resolveSelection(view, tr.doc, parse.sel);
|
|
12127
|
-
// Chrome will sometimes, during composition, report the
|
|
12128
|
-
// selection in the wrong place. If it looks like that is
|
|
12129
|
-
// happening, don't update the selection.
|
|
12130
|
-
// Edge just doesn't move the cursor forward when you start typing
|
|
12131
|
-
// in an empty block or between br nodes.
|
|
12132
|
-
if (sel && !(chrome && view.composing && sel.empty &&
|
|
12133
|
-
(change.start != change.endB || view.input.lastChromeDelete < Date.now() - 100) &&
|
|
12134
|
-
(sel.head == chFrom || sel.head == tr.mapping.map(chTo) - 1) ||
|
|
12135
|
-
ie$1 && sel.empty && sel.head == chFrom))
|
|
12136
|
-
tr.setSelection(sel);
|
|
12137
|
-
}
|
|
12138
|
-
if (storedMarks)
|
|
12139
|
-
tr.ensureMarks(storedMarks);
|
|
12140
|
-
if (compositionID)
|
|
12141
|
-
tr.setMeta("composition", compositionID);
|
|
12142
|
-
view.dispatch(tr.scrollIntoView());
|
|
12153
|
+
let deflt = () => mkTr(view.state.tr.insertText(text, chFrom, chTo));
|
|
12154
|
+
if (!view.someProp("handleTextInput", f => f(view, chFrom, chTo, text, deflt)))
|
|
12155
|
+
view.dispatch(deflt());
|
|
12156
|
+
}
|
|
12157
|
+
}
|
|
12158
|
+
else {
|
|
12159
|
+
view.dispatch(mkTr());
|
|
12160
|
+
}
|
|
12143
12161
|
}
|
|
12144
12162
|
function resolveSelection(view, doc, parsedSel) {
|
|
12145
12163
|
if (Math.max(parsedSel.anchor, parsedSel.head) > doc.content.size)
|
|
@@ -12733,22 +12751,6 @@ class EditorView {
|
|
|
12733
12751
|
return dispatchEvent(this, event);
|
|
12734
12752
|
}
|
|
12735
12753
|
/**
|
|
12736
|
-
Dispatch a transaction. Will call
|
|
12737
|
-
[`dispatchTransaction`](https://prosemirror.net/docs/ref/#view.DirectEditorProps.dispatchTransaction)
|
|
12738
|
-
when given, and otherwise defaults to applying the transaction to
|
|
12739
|
-
the current state and calling
|
|
12740
|
-
[`updateState`](https://prosemirror.net/docs/ref/#view.EditorView.updateState) with the result.
|
|
12741
|
-
This method is bound to the view instance, so that it can be
|
|
12742
|
-
easily passed around.
|
|
12743
|
-
*/
|
|
12744
|
-
dispatch(tr) {
|
|
12745
|
-
let dispatchTransaction = this._props.dispatchTransaction;
|
|
12746
|
-
if (dispatchTransaction)
|
|
12747
|
-
dispatchTransaction.call(this, tr);
|
|
12748
|
-
else
|
|
12749
|
-
this.updateState(this.state.apply(tr));
|
|
12750
|
-
}
|
|
12751
|
-
/**
|
|
12752
12754
|
@internal
|
|
12753
12755
|
*/
|
|
12754
12756
|
domSelectionRange() {
|
|
@@ -12765,6 +12767,13 @@ class EditorView {
|
|
|
12765
12767
|
return this.root.getSelection();
|
|
12766
12768
|
}
|
|
12767
12769
|
}
|
|
12770
|
+
EditorView.prototype.dispatch = function (tr) {
|
|
12771
|
+
let dispatchTransaction = this._props.dispatchTransaction;
|
|
12772
|
+
if (dispatchTransaction)
|
|
12773
|
+
dispatchTransaction.call(this, tr);
|
|
12774
|
+
else
|
|
12775
|
+
this.updateState(this.state.apply(tr));
|
|
12776
|
+
};
|
|
12768
12777
|
function computeDocDeco(view) {
|
|
12769
12778
|
let attrs = Object.create(null);
|
|
12770
12779
|
attrs.class = "ProseMirror";
|
|
@@ -12952,7 +12961,8 @@ function keyName(event) {
|
|
|
12952
12961
|
return name
|
|
12953
12962
|
}
|
|
12954
12963
|
|
|
12955
|
-
const mac$1 = typeof navigator != "undefined"
|
|
12964
|
+
const mac$1 = typeof navigator != "undefined" && /Mac|iP(hone|[oa]d)/.test(navigator.platform);
|
|
12965
|
+
const windows = typeof navigator != "undefined" && /Win/.test(navigator.platform);
|
|
12956
12966
|
function normalizeKeyName(name) {
|
|
12957
12967
|
let parts = name.split(/-(?!$)/), result = parts[parts.length - 1];
|
|
12958
12968
|
if (result == "Space")
|
|
@@ -13058,12 +13068,14 @@ function keydownHandler(bindings) {
|
|
|
13058
13068
|
if (noShift && noShift(view.state, view.dispatch, view))
|
|
13059
13069
|
return true;
|
|
13060
13070
|
}
|
|
13061
|
-
if ((event.
|
|
13071
|
+
if ((event.altKey || event.metaKey || event.ctrlKey) &&
|
|
13072
|
+
// Ctrl-Alt may be used for AltGr on Windows
|
|
13073
|
+
!(windows && event.ctrlKey && event.altKey) &&
|
|
13062
13074
|
(baseName = base[event.keyCode]) && baseName != name) {
|
|
13063
13075
|
// Try falling back to the keyCode when there's a modifier
|
|
13064
13076
|
// active or the character produced isn't ASCII, and our table
|
|
13065
13077
|
// produces a different name from the the keyCode. See #668,
|
|
13066
|
-
// #1060
|
|
13078
|
+
// #1060, #1529.
|
|
13067
13079
|
let fromCode = map[modifiers(baseName, event)];
|
|
13068
13080
|
if (fromCode && fromCode(view.state, view.dispatch, view))
|
|
13069
13081
|
return true;
|