@dialpad/dialtone-vue 3.96.0 → 3.96.1
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/CHANGELOG.json +1 -1
- package/CHANGELOG.md +12 -0
- package/dist/dialtone-vue.cjs +1 -1
- package/dist/dialtone-vue.js +2 -2
- package/dist/{message_input-s1pJ2P6G.cjs → message_input-SgLogXZ3.cjs} +1 -1
- package/dist/{message_input-JdPf8pn2.js → message_input-zOYCybPr.js} +169 -192
- package/dist/message_input.cjs +1 -1
- package/dist/message_input.js +1 -1
- package/dist/types/components/emoji_picker/composables/useKeyboardNavigation.d.ts.map +1 -1
- package/dist/types/components/scroller/modules/core_scroller.vue.d.ts.map +1 -1
- package/dist/types/components/scroller/modules/scroller_item.vue.d.ts.map +1 -1
- package/dist/types/recipes/conversation_view/message_input/message_input.vue.d.ts +13 -61
- package/dist/types/recipes/conversation_view/message_input/message_input.vue.d.ts.map +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
## [3.96.1](https://github.com/dialpad/dialtone-vue/compare/v3.96.0...v3.96.1) (2023-11-24)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Bug Fixes
|
|
5
|
+
|
|
6
|
+
* npm run lint not detecting errors ([#1317](https://github.com/dialpad/dialtone-vue/issues/1317)) ([bf99a34](https://github.com/dialpad/dialtone-vue/commit/bf99a342cb759f3f2878953bd969bf4bd6bc8fb5))
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Code Refactoring
|
|
10
|
+
|
|
11
|
+
* **Dp 85018:** modify msg input emoji picker pass through props structure ([#1315](https://github.com/dialpad/dialtone-vue/issues/1315)) ([296d98f](https://github.com/dialpad/dialtone-vue/commit/296d98f49de6cb6e0bf686f195276604da66afa8))
|
|
12
|
+
|
|
1
13
|
# [3.96.0](https://github.com/dialpad/dialtone-vue/compare/v3.95.1...v3.96.0) (2023-11-20)
|
|
2
14
|
|
|
3
15
|
|
package/dist/dialtone-vue.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("./message_input-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("./message_input-SgLogXZ3.cjs"),h=require("./emoji-5anz0QgY.cjs"),e=require("vue"),u=require("./tooltip-3LC0ejIh.cjs"),dt=require("./emoji.cjs"),Ke={default:"",info:"d-badge--info",success:"d-badge--success",warning:"d-badge--warning",critical:"d-badge--critical",bulletin:"d-badge--bulletin",ai:"d-badge--ai"},je={label:"",count:"d-badge--count"},Ye={"black-400":"d-badge--decorate-black-400","black-500":"d-badge--decorate-black-500","black-900":"d-badge--decorate-black-900","red-200":"d-badge--decorate-red-200","red-300":"d-badge--decorate-red-300","red-400":"d-badge--decorate-red-400","purple-200":"d-badge--decorate-purple-200","purple-300":"d-badge--decorate-purple-300","purple-400":"d-badge--decorate-purple-400","purple-500":"d-badge--decorate-purple-500","blue-200":"d-badge--decorate-blue-200","blue-300":"d-badge--decorate-blue-300","blue-400":"d-badge--decorate-blue-400","green-300":"d-badge--decorate-green-300","green-400":"d-badge--decorate-green-400","green-500":"d-badge--decorate-green-500","gold-300":"d-badge--decorate-gold-300","gold-400":"d-badge--decorate-gold-400","gold-500":"d-badge--decorate-gold-500","magenta-200":"d-badge--decorate-magenta-200","magenta-300":"d-badge--decorate-magenta-300","magenta-400":"d-badge--decorate-magenta-400"},Tn={name:"DtBadge",components:{DtIcon:h.DtIcon},props:{iconLeft:{type:String,default:""},iconRight:{type:String,default:""},text:{type:String,default:""},kind:{type:String,default:"label",validator:t=>Object.keys(je).includes(t)},type:{type:String,default:"default",validator:t=>Object.keys(Ke).includes(t)},decoration:{type:String,default:void 0,validator:t=>Object.keys(Ye).includes(t)},labelClass:{type:[String,Array,Object],default:""}},data(){return{BADGE_TYPE_MODIFIERS:Ke,BADGE_KIND_MODIFIERS:je,BADGE_DECORATION_MODIFIERS:Ye}},computed:{hasIcons(){return this.iconLeft!==""||this.iconRight!==""}},watch:{$props:{immediate:!0,deep:!0,handler(){this.validateProps()}}},methods:{validateProps(){this.validateTypePropCombination(),this.validateDecorationPropCombination()},validateTypePropCombination(){this.type==="ai"&&this.kind==="count"&&console.error("DtBadge error: type: 'ai' with kind: 'count' is an invalid combination.")},validateDecorationPropCombination(){this.decoration&&((this.kind!=="label"||this.type!=="default")&&console.error("DtBadge error: decoration prop can only be used with kind: 'label' and type: 'default'."),this.hasIcons&&console.error("DtBadge error: decoration prop cannot be used with iconLeft or iconRight."))}}},On={key:0,class:"d-badge__decorative"},Nn={key:1,class:"d-badge__icon-left"},Ln={key:2,class:"d-badge__icon-right"};function Bn(t,a,n,r,i,o){const s=e.resolveComponent("dt-icon");return e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(["d-badge",i.BADGE_TYPE_MODIFIERS[n.type],i.BADGE_KIND_MODIFIERS[n.kind],i.BADGE_DECORATION_MODIFIERS[n.decoration]]),"data-qa":"dt-badge"},[n.decoration?(e.openBlock(),e.createElementBlock("span",On)):e.createCommentVNode("",!0),n.iconLeft||n.type==="ai"?(e.openBlock(),e.createElementBlock("span",Nn,[e.createVNode(s,{name:n.iconLeft||"dialpad-ai",size:"200"},null,8,["name"])])):e.createCommentVNode("",!0),e.createElementVNode("span",{class:e.normalizeClass(["d-badge__label",n.labelClass])},[e.renderSlot(t.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(n.text),1)])],2),n.iconRight?(e.openBlock(),e.createElementBlock("span",Ln,[e.createVNode(s,{name:n.iconRight,size:"200"},null,8,["name"])])):e.createCommentVNode("",!0)],2)}const ct=u._export_sfc(Tn,[["render",Bn]]),xn={name:"DtBanner",components:{DtNoticeIcon:g.DtNoticeIcon,DtNoticeContent:g.DtNoticeContent,DtNoticeAction:g.DtNoticeAction},mixins:[g.Modal,g.SrOnlyCloseButtonMixin],props:{titleId:{type:String,default(){return u.utils.getUniqueString()}},contentId:{type:String,default(){return u.utils.getUniqueString()}},title:{type:String,default:""},important:{type:Boolean,default:!1},pinned:{type:Boolean,default:!1},kind:{type:String,default:"base",validate(t){return g.NOTICE_KINDS.includes(t)}},closeButtonProps:{type:Object,default:()=>({})},hideClose:{type:Boolean,default:!1},hideIcon:{type:Boolean,default:!1},dialogClass:{type:String,default:""},backgroundImage:{type:String,default:""},backgroundSize:{type:String,default:"cover"}},emits:["close"],computed:{role(){return this.important?"alertdialog":"status"},bannerClass(){return["d-banner",{error:"d-banner--error",info:"d-banner--info",success:"d-banner--success",warning:"d-banner--warning",base:"d-banner--base"}[this.kind],{"d-banner--important":this.important,"d-banner--pinned":this.pinned}]},bannerBackgroundImage(){return this.backgroundImage===""?null:`background-image: url(${this.backgroundImage});
|
|
2
2
|
background-size: ${this.backgroundSize};`}},mounted(){this.important&&this.focusFirstElement()},methods:{trapFocus(t){this.important&&this.focusTrappedTabPress(t)}}},An=["role","aria-labelledby","aria-describedby"];function Mn(t,a,n,r,i,o){const s=e.resolveComponent("dt-notice-icon"),d=e.resolveComponent("dt-notice-content"),l=e.resolveComponent("dt-notice-action");return e.openBlock(),e.createElementBlock("aside",{class:e.normalizeClass(o.bannerClass),style:e.normalizeStyle(o.bannerBackgroundImage),onKeydown:a[1]||(a[1]=e.withKeys((...m)=>o.trapFocus&&o.trapFocus(...m),["tab"]))},[e.createElementVNode("div",{class:e.normalizeClass(["d-banner__dialog",n.dialogClass]),role:o.role,"aria-labelledby":n.titleId,"aria-describedby":n.contentId},[n.hideIcon?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(s,{key:0,kind:n.kind},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"icon")]),_:3},8,["kind"])),e.createVNode(d,{"title-id":n.titleId,"content-id":n.contentId,title:n.title},{titleOverride:e.withCtx(()=>[e.renderSlot(t.$slots,"titleOverride")]),default:e.withCtx(()=>[e.renderSlot(t.$slots,"default")]),_:3},8,["title-id","content-id","title"]),e.createVNode(l,{"hide-close":n.hideClose,"close-button-props":n.closeButtonProps,"visually-hidden-close":t.visuallyHiddenClose,"visually-hidden-close-label":t.visuallyHiddenCloseLabel,onClose:a[0]||(a[0]=m=>t.$emit("close"))},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"action")]),_:3},8,["hide-close","close-button-props","visually-hidden-close","visually-hidden-close-label"])],10,An)],38)}const Vn=u._export_sfc(xn,[["render",Mn]]),Ht="d-breadcrumbs__item--selected",Ut="d-breadcrumbs--inverted",Rn={name:"DtBreadcrumbItem",components:{DtLink:g.DtLink},inheritAttrs:!1,props:{inverted:{type:Boolean,default:!1},selected:{type:Boolean,default:!1},label:{type:String,default:""}},data(){return{BREADCRUMB_ITEM_SELECTED_MODIFIER:Ht}},computed:{linkKind(){return this.inverted?h.INVERTED:h.MUTED},ariaCurrent(){return this.selected?"location":void 0}}};function Pn(t,a,n,r,i,o){const s=e.resolveComponent("dt-link");return e.openBlock(),e.createElementBlock("li",{"data-qa":"dt-breadcrumb-item",class:e.normalizeClass(["d-breadcrumbs__item",{[i.BREADCRUMB_ITEM_SELECTED_MODIFIER]:n.selected}])},[e.createVNode(s,e.mergeProps({kind:o.linkKind,"aria-current":o.ariaCurrent,"data-qa":"breadcrumb-item"},t.$attrs),{default:e.withCtx(()=>[e.renderSlot(t.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(n.label),1)])]),_:3},16,["kind","aria-current"])],2)}const Wt=u._export_sfc(Rn,[["render",Pn]]),$n={name:"DtBreadcrumbs",components:{DtBreadcrumbItem:Wt},props:{breadcrumbs:{type:Array,default:()=>[],validate(t){return t.every(({href:a,label:n})=>a!==void 0&&n!==void 0)}},inverted:{type:Boolean,default:!1},ariaLabel:{type:String,default:"breadcrumb"}},data(){return{BREADCRUMBS_INVERTED_MODIFIER:Ut}},methods:{getBreadcrumbItemKey(t){return`breadcrumbs-item-${t}-${u.utils.getUniqueString()}`}}},zn=["aria-label"];function Fn(t,a,n,r,i,o){const s=e.resolveComponent("dt-breadcrumb-item");return e.openBlock(),e.createElementBlock("nav",{"aria-label":n.ariaLabel,"data-qa":"dt-breadcrumbs",class:e.normalizeClass(["d-breadcrumbs",{[i.BREADCRUMBS_INVERTED_MODIFIER]:n.inverted}])},[e.createElementVNode("ol",null,[e.renderSlot(t.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.breadcrumbs,(d,l)=>(e.openBlock(),e.createBlock(s,e.mergeProps({key:o.getBreadcrumbItemKey(l),inverted:n.inverted},d),null,16,["inverted"]))),128))])])],10,zn)}const qn=u._export_sfc($n,[["render",Fn]]),Ge={start:"d-btn-group--start",end:"d-btn-group--end","space-between":"d-btn-group--space-between"},Hn={name:"DtButtonGroup",props:{alignment:{type:String,default:"start",validator:t=>Object.keys(Ge).includes(t)}},data(){return{BUTTON_GROUP_ALIGNMENT:Ge}}};function Un(t,a,n,r,i,o){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["d-btn-group",i.BUTTON_GROUP_ALIGNMENT[n.alignment]]),role:"group"},[e.renderSlot(t.$slots,"default")],2)}const Wn=u._export_sfc(Hn,[["render",Un]]),Kn={name:"DtCard",props:{maxHeight:{type:String,default:null},containerClass:{type:[String,Array,Object],default:""},contentClass:{type:[String,Array,Object],default:""},headerClass:{type:[String,Array,Object],default:""},footerClass:{type:[String,Array,Object],default:""}},data(){return{hasSlotContent:u.hasSlotContent}}};function jn(t,a,n,r,i,o){return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["d-card",n.containerClass]),"data-qa":"dt-card"},[i.hasSlotContent(t.$slots.header)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["d-card__header",n.headerClass])},[e.renderSlot(t.$slots,"header")],2)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["d-card__content",n.contentClass]),style:e.normalizeStyle({"max-height":n.maxHeight})},[e.renderSlot(t.$slots,"content")],6),i.hasSlotContent(t.$slots.footer)?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["d-card__footer",n.footerClass])},[e.renderSlot(t.$slots,"footer")],2)):e.createCommentVNode("",!0)],2)}const Kt=u._export_sfc(Kn,[["render",jn]]),Yn={name:"DtCodeblock",props:{text:{type:String,required:!0}}},Gn={class:"d-d-block d-bgc-secondary d-ws-pre-wrap d-p8 d-ba d-bc-subtle d-bar8 d-fs-200 d-ff-mono d-lh-400 d-fc-secondary"};function Xn(t,a,n,r,i,o){return e.openBlock(),e.createElementBlock("pre",null,[e.createTextVNode(" "),e.createElementVNode("code",Gn,e.toDisplayString(n.text),1),e.createTextVNode(`
|
|
3
3
|
`)])}const Zn=u._export_sfc(Yn,[["render",Xn]]),Qn={methods:{scrollElementIntoViewIfNeeded(t,a,n,r){t.scrollIntoViewIfNeeded?this.scrollIntoViewIfNeeded(t,a,n,r):this.scrollIntoView(t,"bottom",!1,n,r)},scrollElementIntoView(t,a,n,r){if(a==="center"){this.scrollIntoView(t,"center",!1,n,r);return}a===!1?this.scrollIntoView(t,"bottom",!1,n,r):this.scrollIntoView(t,"top",!1,n,r)},scrollIntoViewIfNeeded(t,a,n,r){const i=a?"center":void 0;this.scrollIntoView(t,i,!0,n,r)},scrollIntoView(t,a,n,r,i){if(!t||!t.parentElement)return;const o=t.offsetTop,s=i||t.parentElement,d=this._getScrollBounds(s),l=d.bottom-d.top,m=this._getElementHeight(t),p=o+m;let c=-1;switch(a){case"top":c=o;break;case"center":c=o+(m-l)/2;break;case"bottom":c=c=p-l;break;default:o-d.top<=l/2?c=o:c=p-l;break}this._setScrollTop(s,c,d,o,p,n,r)},_setScrollTop(t,a,n,r,i,o,s){n=n||this._getScrollBounds(t);const d=n.bottom-n.top;if(o&&this._inScrollBounds(r,i,n))if(r<n.top)a=r;else if(i>n.bottom)a=i-d;else return;s?t.scrollTo({top:a,behavior:s}):t.scrollTop=a},_getElementHeight(t){return t.getBoundingClientRect().height},_getScrollBounds(t){const a=this._getElementHeight(t),n=t.scrollTop;return{top:n,bottom:n+a}},_inScrollBounds(t,a,n){const r=a-t;return a<=n.bottom+3*r/4&&t>=n.top-r/4}}},Jn="listElementKey is required or the referenced element doesn't exist. Received listElement: ",ut=({listItemRole:t="option",indexKey:a="highlightIndex",idKey:n="highlightId",listElementKey:r="listRef",activeItemKey:i="",openMethod:o=null,afterHighlightMethod:s=null,beginningOfListMethod:d=null,endOfListMethod:l=null,scrollToOnHighlight:m=!0,focusOnKeyboardNavigation:p=!1}={})=>({mixins:[Qn],data(){return{[a]:-1,[n]:"",scrollToOnHighlight:m,focusOnKeyboardNavigation:p}},provide(){return{highlightId:()=>this[n]}},methods:{_getListElement(){var c;return((c=this[r]())==null?void 0:c.$el)||this[r]()},_itemsLength(){const c=this._getListItemNodes();return c===null?0:c.length},_getListItemNodes(){const c=this._getListElement();return c?Array.from(c.querySelectorAll(`[role="${t}"], #sr-only-close-button`)):(console.error(Jn,c),null)},onUpKey(){o&&this[o](!0),this[a]>0?this.setHighlightIndex(this[a]-1):d&&this[d](),this.scrollActiveItemIntoViewIfNeeded(),this.focusActiveItemIfNeeded()},onDownKey(){o&&this[o](!0),this[a]<this._itemsLength()-1?this.setHighlightIndex(this[a]+1):l&&this[l](),this.scrollActiveItemIntoViewIfNeeded(),this.focusActiveItemIfNeeded()},onHomeKey(){this.jumpToBeginning(),this.scrollActiveItemIntoViewIfNeeded(),this.focusActiveItemIfNeeded()},onEndKey(){this.jumpToEnd(),this.scrollActiveItemIntoViewIfNeeded(),this.focusActiveItemIfNeeded()},onNavigationKey(c){const _=this._getListItemNodes(),f=_.filter(I=>I.textContent.trim().toLowerCase().startsWith(c.toLowerCase()));if(f.length<=0)return;const b=f.findIndex(I=>this[a]===_.indexOf(I)),C=_.indexOf(b<f.length-1?f[b+1]:f[0]);this.setHighlightIndex(C),this.scrollActiveItemIntoViewIfNeeded(),this.focusActiveItemIfNeeded()},isValidLetter(c){return c.length>1?!1:c>="a"&&c<="z"||c>="A"&&c<="Z"},jumpToBeginning(){this.setHighlightIndex(0)},jumpToEnd(){this.setHighlightIndex(this._itemsLength()-1)},setHighlightIndex(c){this[a]=c,this[n]=this._getItemId(c),this._itemsLength()&&s&&this[s](c)},setHighlightId(c){this[n]=c,this[a]=this._getItemIndex(c),this._itemsLength()&&s&&this[s](this._getItemIndex(c))},_getItemIndex(c){const _=this._getListElement();return _?Array.from(_.querySelectorAll(`[role="${t}"], #sr-only-close-button`)).indexOf(_.querySelector(`#${c}`)):void 0},_getItemId(c){var f;const _=this._getListElement();if(_)return(f=_.querySelectorAll(`[role="${t}"], #sr-only-close-button`)[c])==null?void 0:f.id},scrollActiveItemIntoViewIfNeeded(){if(!this.scrollToOnHighlight)return;const c=this[i];if(c){const _=this._getListElement();this.scrollElementIntoViewIfNeeded(c,null,null,_)}},focusActiveItemIfNeeded(){if(!this.focusOnKeyboardNavigation)return;const c=this[i];c&&c.focus()}}}),ea={name:"ComboboxLoadingList",components:{DtListItem:g.DtListItem,DtSkeleton:h.DtSkeleton}},ta={class:"d-p0 d-mt8 d-hmx332 d-of-y-auto","aria-busy":"true"};function na(t,a,n,r,i,o){const s=e.resolveComponent("dt-skeleton"),d=e.resolveComponent("dt-list-item");return e.openBlock(),e.createElementBlock("ol",ta,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,l=>e.createVNode(d,{key:l,role:"option","navigation-type":"none"},{default:e.withCtx(()=>[e.createVNode(s,{"text-option":{type:"body"},offset:0})]),_:2},1024)),64))])}const jt=u._export_sfc(ea,[["render",na]]),aa={name:"ComboboxEmptyList",components:{DtListItem:g.DtListItem},props:{message:{type:String,required:!0},itemClass:{type:[String,Object,Array],default:""}}},ra={class:"d-p0","data-qa":"dt-combobox-empty-list"};function oa(t,a,n,r,i,o){const s=e.resolveComponent("dt-list-item");return e.openBlock(),e.createElementBlock("ol",ra,[e.renderSlot(t.$slots,"default",{},()=>[e.createVNode(s,{role:"option","navigation-type":"none",type:"custom",class:e.normalizeClass(["dt-empty-list-item",n.itemClass])},{default:e.withCtx(()=>[e.createElementVNode("span",null,e.toDisplayString(n.message),1)]),_:1},8,["class"])])])}const Yt=u._export_sfc(aa,[["render",oa]]),Gt={EXTRA_SMALL:"xs",SMALL:"sm",DEFAULT:"md",LARGE:"lg",EXTRA_LARGE:"xl"},ia={name:"DtCombobox",components:{ComboboxLoadingList:jt,ComboboxEmptyList:Yt},mixins:[ut({indexKey:"highlightIndex",idKey:"highlightId",listElementKey:"getListElement",afterHighlightMethod:"afterHighlight",beginningOfListMethod:"beginningOfListMethod",endOfListMethod:"endOfListMethod",activeItemKey:"activeItemEl"})],props:{label:{type:String,required:!0},labelVisible:{type:Boolean,default:!0},size:{type:String,default:null,validator:t=>Object.values(Gt).includes(t)},description:{type:String,default:""},listId:{type:String,default(){return u.getUniqueString()}},onBeginningOfList:{type:Function,default:null},onEndOfList:{type:Function,default:null},showList:{type:Boolean,default:!1},listRenderedOutside:{type:Boolean,default:!1},loading:{type:Boolean,default:!1},emptyList:{type:Boolean,default:!1},emptyStateMessage:{type:String,default:""},emptyStateClass:{type:[String,Object,Array],default:""},clickOnSelect:{type:Boolean,default:!1}},emits:["select","escape","highlight","opened"],data(){return{outsideRenderedListRef:null,hasSlotContent:u.hasSlotContent}},computed:{inputProps(){return{label:this.label,labelVisible:this.labelVisible,size:this.size,description:this.description,role:"combobox","aria-label":this.label,"aria-expanded":this.showList.toString(),"aria-owns":this.listId,"aria-haspopup":"listbox","aria-activedescendant":this.activeItemId,"aria-controls":this.listId}},listProps(){return{role:"listbox",id:this.listId,class:"d-ps-relative","aria-label":this.label}},beginningOfListMethod(){return this.onBeginningOfList||this.jumpToEnd},endOfListMethod(){return this.onEndOfList||this.jumpToBeginning},activeItemId(){if(!(!this.showList||this.highlightIndex<0||this.loading))return this.highlightId},activeItemEl(){return this.highlightId?this.getListElement().querySelector("#"+this.highlightId):""}},watch:{showList(t){this.listRenderedOutside||(this.setInitialHighlightIndex(),this.$emit("opened",t)),!t&&this.outsideRenderedListRef&&(this.outsideRenderedListRef.removeEventListener("mousemove",this.onMouseHighlight),this.outsideRenderedListRef=null)},loading(t){this.$nextTick(()=>{this.setInitialHighlightIndex()})},$props:{deep:!0,immediate:!0,handler(){this.validateEmptyListProps()}}},created(){this.validateEmptyListProps()},methods:{onMouseHighlight(t){if(this.loading)return;const a=t.target.closest("li");a&&this.highlightId!==a.id&&this.setHighlightId(a.id)},getListElement(){var t;return this.outsideRenderedListRef??((t=this.$refs.listWrapper)==null?void 0:t.querySelector(`#${this.listId}`))},clearHighlightIndex(){this.showList&&this.setHighlightIndex(-1)},afterHighlight(){this.loading||this.$emit("highlight",this.highlightIndex)},onEnterKey(){var t;this.loading||this.emptyList||this.highlightIndex>=0&&(this.$emit("select",this.highlightIndex),this.clickOnSelect&&((t=this.activeItemEl)==null||t.click()))},onEscapeKey(){this.$emit("escape")},onOpen(t,a){var n;this.outsideRenderedListRef=a,(n=this.outsideRenderedListRef)==null||n.addEventListener("mousemove",this.onMouseHighlight),this.$emit("opened",t),t&&this.setInitialHighlightIndex()},onKeyValidation(t,a){!this.showList||!this.getListElement()||this[a](t)},setInitialHighlightIndex(){this.showList&&this.$nextTick(()=>{this.setHighlightIndex(this.loading?-1:0)})},validateEmptyListProps(){this.$slots.emptyListItem||(this.emptyList&&!this.emptyStateMessage||!this.emptyList&&this.emptyStateMessage)&&console.error(`Invalid props: you must pass both props emptyList and emptyStateMessage to show the
|
|
4
4
|
empty message.`)}}},sa={"data-qa":"dt-combobox-input-wrapper"};function la(t,a,n,r,i,o){const s=e.resolveComponent("combobox-loading-list"),d=e.resolveComponent("combobox-empty-list");return e.openBlock(),e.createElementBlock("div",{onKeydown:[a[3]||(a[3]=e.withKeys(e.withModifiers(l=>o.onKeyValidation(l,"onEscapeKey"),["stop"]),["esc"])),a[4]||(a[4]=e.withKeys(e.withModifiers(l=>o.onKeyValidation(l,"onEnterKey"),["exact"]),["enter"])),a[5]||(a[5]=e.withKeys(e.withModifiers(l=>o.onKeyValidation(l,"onUpKey"),["stop","prevent"]),["up"])),a[6]||(a[6]=e.withKeys(e.withModifiers(l=>o.onKeyValidation(l,"onDownKey"),["stop","prevent"]),["down"])),a[7]||(a[7]=e.withKeys(e.withModifiers(l=>o.onKeyValidation(l,"onHomeKey"),["stop","prevent"]),["home"])),a[8]||(a[8]=e.withKeys(e.withModifiers(l=>o.onKeyValidation(l,"onEndKey"),["stop","prevent"]),["end"]))]},[e.createElementVNode("div",sa,[e.renderSlot(t.$slots,"input",{inputProps:o.inputProps})]),n.showList?(e.openBlock(),e.createElementBlock("div",{key:0,ref:"listWrapper","data-qa":"dt-combobox-list-wrapper",onMouseleave:a[0]||(a[0]=(...l)=>o.clearHighlightIndex&&o.clearHighlightIndex(...l)),onFocusout:a[1]||(a[1]=(...l)=>o.clearHighlightIndex&&o.clearHighlightIndex(...l)),onMousemoveCapture:a[2]||(a[2]=(...l)=>o.onMouseHighlight&&o.onMouseHighlight(...l))},[n.loading&&!n.listRenderedOutside?(e.openBlock(),e.createBlock(s,e.normalizeProps(e.mergeProps({key:0},o.listProps)),null,16)):n.emptyList&&(n.emptyStateMessage||i.hasSlotContent(t.$slots.emptyListItem))&&!n.listRenderedOutside?(e.openBlock(),e.createBlock(d,e.mergeProps({key:1},o.listProps,{message:n.emptyStateMessage,"item-class":n.emptyStateClass}),{default:e.withCtx(()=>[e.renderSlot(t.$slots,"emptyListItem")]),_:3},16,["message","item-class"])):e.renderSlot(t.$slots,"list",{key:2,listProps:o.listProps,opened:o.onOpen,clearHighlightIndex:o.clearHighlightIndex})],544)):e.createCommentVNode("",!0)],32)}const Xt=u._export_sfc(ia,[["render",la]]),da={name:"DtCollapsibleLazyShow",inheritAttrs:!1,props:{show:{type:Boolean,default:null},appear:{type:Boolean,default:!1},elementType:{type:String,default:"div"}},data(){return{initialized:!!this.show}},computed:{isCSSEnabled(){return process.env.NODE_ENV!=="test"}},watch:{show:function(t){!t||this.initialized||(this.initialized=!0)}},methods:{beforeEnter(t){requestAnimationFrame(()=>{t.style.height||(t.style.height="0px")})},enter(t){requestAnimationFrame(()=>{requestAnimationFrame(()=>{t.style.height=`${t.scrollHeight}px`})})},afterEnter(t){t.style.height=null},beforeLeave(t){requestAnimationFrame(()=>{t.style.height||(t.style.height=`${t.offsetHeight}px`)})},leave(t){requestAnimationFrame(()=>{requestAnimationFrame(()=>{t.style.height="0px"})})},afterLeave(t){t.style.height=null}}};function ca(t,a,n,r,i,o){return e.openBlock(),e.createBlock(e.Transition,e.mergeProps({appear:n.appear,"enter-active-class":"enter-active","leave-active-class":"leave-active"},t.$attrs,{css:o.isCSSEnabled,onBeforeEnter:o.beforeEnter,onEnter:o.enter,onAfterEnter:o.afterEnter,onBeforeLeave:o.beforeLeave,onLeave:o.leave,onAfterLeave:o.afterLeave}),{default:e.withCtx(()=>[e.withDirectives((e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.elementType),e.normalizeProps(e.guardReactiveProps(t.$attrs)),{default:e.withCtx(()=>[i.initialized?e.renderSlot(t.$slots,"default",{key:0}):e.createCommentVNode("",!0)]),_:3},16)),[[e.vShow,n.show]])]),_:3},16,["appear","css","onBeforeEnter","onEnter","onAfterEnter","onBeforeLeave","onLeave","onAfterLeave"])}const ua=u._export_sfc(da,[["render",ca]]),ma={name:"DtCollapsible",components:{DtButton:h.DtButton,DtCollapsibleLazyShow:ua,DtLazyShow:u.DtLazyShow,DtIcon:h.DtIcon},props:{anchorText:{type:String,default:null},open:{type:Boolean,default:null},id:{type:String,default(){return u.getUniqueString()}},elementType:{type:String,default:"div"},contentElementType:{type:String,default:"div"},anchorClass:{type:[String,Array,Object],default:null},contentClass:{type:[String,Array,Object],default:null},maxWidth:{type:String,default:null},maxHeight:{type:String,default:null},ariaLabel:{type:String,default:null},ariaLabelledBy:{type:String,default:null}},emits:["update:open","opened"],data(){return{isOpen:!0}},computed:{labelledBy(){return this.ariaLabelledBy||!this.ariaLabel&&u.getUniqueString("DtCollapsible__anchor")},collapsibleListeners(){return u.extractVueListeners(this.$attrs)}},watch:{open:{handler:function(t){t!==null&&(this.isOpen=t)},immediate:!0}},created(){this.validateProperAnchor()},methods:{onLeaveTransitionComplete(){this.$emit("opened",!1),this.open!==null&&this.$emit("update:open",!1)},onEnterTransitionComplete(){this.$emit("opened",!0,this.$refs.content),this.open!==null&&this.$emit("update:open",!0)},defaultToggleOpen(){this.open===null&&this.toggleOpen()},toggleOpen(){this.isOpen=!this.isOpen},validateProperAnchor(){!this.anchorText&&!u.hasSlotContent(this.$slots.anchor)&&console.error("anchor text and anchor slot content cannot both be falsy")}}},ha=["id"],fa=["title"];function pa(t,a,n,r,i,o){const s=e.resolveComponent("dt-icon"),d=e.resolveComponent("dt-button"),l=e.resolveComponent("dt-collapsible-lazy-show");return e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.elementType),e.mergeProps({ref:"collapsible"},e.toHandlers(o.collapsibleListeners)),{default:e.withCtx(()=>[e.createElementVNode("div",{id:!n.ariaLabelledBy&&o.labelledBy,ref:"anchor",class:e.normalizeClass(["d-dt-collapsibe__anchor",n.anchorClass])},[e.renderSlot(t.$slots,"anchor",{attrs:{"aria-controls":n.id,"aria-expanded":i.isOpen.toString(),role:"button"}},()=>[e.createVNode(d,{importance:"clear",kind:"muted","aria-controls":n.id,"aria-expanded":`${i.isOpen}`,style:e.normalizeStyle({width:n.maxWidth}),onClick:o.defaultToggleOpen},{default:e.withCtx(()=>[e.createVNode(s,{name:i.isOpen?"chevron-down":"chevron-right",class:"d-icon d-icon--size-300 d-mr8 d-fl-shrink0"},null,8,["name"]),e.createElementVNode("span",{class:"d-mr-auto d-truncate",title:n.anchorText},e.toDisplayString(n.anchorText),9,fa)]),_:1},8,["aria-controls","aria-expanded","style","onClick"])])],10,ha),e.createVNode(l,e.mergeProps({id:n.id,ref:"contentWrapper","aria-hidden":`${!i.isOpen}`,"aria-labelledby":o.labelledBy,"aria-label":n.ariaLabel,show:i.isOpen,"element-type":n.contentElementType,class:["d-dt-collapsible__content",n.contentClass],style:{"max-height":n.maxHeight,"max-width":n.maxWidth},tabindex:"-1",appear:""},e.toHandlers(o.collapsibleListeners),{onAfterLeave:o.onLeaveTransitionComplete,onAfterEnter:o.onEnterTransitionComplete}),{default:e.withCtx(()=>[e.renderSlot(t.$slots,"content")]),_:3},16,["id","aria-hidden","aria-labelledby","aria-label","show","element-type","class","style","onAfterLeave","onAfterEnter"])]),_:3},16)}const Zt=u._export_sfc(ma,[["render",pa]]),Qt=["row","column"],ga=t=>t.term?typeof t.term=="string":!1,_a=t=>t.description?typeof t.description=="string":!1,ba=t=>Array.isArray(t)?t.every(a=>!(typeof a!="object"||!ga(a)||!_a(a))):!1,va={name:"DtDescriptionList",props:{direction:{type:String,default:"row",validator:t=>Qt.includes(t)},items:{type:Array,default:()=>[],validator:t=>ba(t),required:!0},gap:{type:String,default:"400",validator:t=>g.DT_STACK_GAP.includes(t)},termClass:{type:[String,Array,Object],default:""},descriptionClass:{type:[String,Array,Object],default:""}},computed:{dtClass(){return["dt-description-list__term",this.termClass]},ddClass(){return["dt-description-list__description",this.descriptionClass]},getDirectionClass(){return`dt-description-list--${this.direction}`},getGapClass(){return`dt-description-list--gap-${this.gap}`}}};function ya(t,a,n,r,i,o){return e.openBlock(),e.createElementBlock("dl",{class:e.normalizeClass(["dt-description-list",o.getDirectionClass,o.getGapClass])},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.items,s=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:s.term},[e.createElementVNode("dt",{class:e.normalizeClass(o.dtClass)},e.toDisplayString(s.term),3),e.createElementVNode("dd",{class:e.normalizeClass(o.ddClass)},e.toDisplayString(s.description),3)],64))),128))],2)}const Sa=u._export_sfc(va,[["render",ya]]),ge={none:void 0,small:"d-py0",large:"d-py4"},Ca={name:"DtDropdown",components:{DtPopover:g.DtPopover,SrOnlyCloseButton:g.SrOnlyCloseButton},mixins:[ut({indexKey:"highlightIndex",idKey:"highlightId",listElementKey:"getListElement",listItemRole:"menuitem",afterHighlightMethod:"afterHighlight",beginningOfListMethod:"beginningOfListMethod",endOfListMethod:"endOfListMethod",activeItemKey:"activeItemEl",focusOnKeyboardNavigation:!0}),g.SrOnlyCloseButtonMixin],inheritAttrs:!1,props:{open:{type:Boolean,default:null},openOnContext:{type:Boolean,default:!1},padding:{type:String,default:"small",validator:t=>Object.keys(ge).some(a=>a===t)},modal:{type:Boolean,default:!0},contentWidth:{type:String,default:null},maxHeight:{type:String,default:""},maxWidth:{type:String,default:""},listId:{type:String,default(){return u.getUniqueString()}},navigationType:{type:String,default:g.LIST_ITEM_NAVIGATION_TYPES.ARROW_KEYS,validator:t=>Object.values(g.LIST_ITEM_NAVIGATION_TYPES).includes(t)},fallbackPlacements:{type:Array,default:()=>["auto"]},placement:{type:String,default:"bottom"},onBeginningOfList:{type:Function,default:null},onEndOfList:{type:Function,default:null},listClass:{type:[String,Array,Object],default:""},appendTo:{type:[HTMLElement,String],default:"body",validator:t=>g.POPOVER_APPEND_TO_VALUES.includes(t)||t instanceof HTMLElement},tether:{type:Boolean,default:!0},transition:{type:String,default:"fade"}},emits:["keydown","highlight","update:open","opened","update:open"],data(){return{LIST_ITEM_NAVIGATION_TYPES:g.LIST_ITEM_NAVIGATION_TYPES,DROPDOWN_PADDING_CLASSES:ge,openedWithKeyboard:!1,isOpen:null}},computed:{dropdownListeners(){return{opened:t=>{this.updateInitialHighlightIndex(t)},keydown:t=>{switch(t.code){case u.EVENT_KEYNAMES.up:case u.EVENT_KEYNAMES.arrowup:this.onUpKeyPress(t),t.stopPropagation(),t.preventDefault();break;case u.EVENT_KEYNAMES.down:case u.EVENT_KEYNAMES.arrowdown:this.onDownKeyPress(t),t.stopPropagation(),t.preventDefault();break;case u.EVENT_KEYNAMES.space:case u.EVENT_KEYNAMES.spacebar:this.onSpaceKey();break;case u.EVENT_KEYNAMES.enter:this.onEnterKey();break;case u.EVENT_KEYNAMES.home:this.onHomeKeyPress(t),t.stopPropagation(),t.preventDefault();break;case u.EVENT_KEYNAMES.end:this.onEndKeyPress(t),t.stopPropagation(),t.preventDefault();break;default:this.onKeyPress(t);break}this.$emit("keydown",t)}}},beginningOfListMethod(){return this.onBeginningOfList||this.jumpToEnd},endOfListMethod(){return this.onEndOfList||this.jumpToBeginning},activeItemEl(){return this.getListElement().querySelector("#"+this.highlightId)},isArrowKeyNav(){return this.navigationType===this.LIST_ITEM_NAVIGATION_TYPES.ARROW_KEYS},listClasses(){return["d-ps-relative","d-stack2","d-m4","d-px0",ge[this.padding],this.listClass,{"d-context-menu-list":this.openOnContext}]},shouldOpenWithArrowKeys(){return!this.openOnContext}},methods:{onMouseHighlight(t){const a=t.target.closest("li");a&&a.role&&this.highlightId!==a.id&&(this.setHighlightId(a.id),a.focus())},getListElement(){return this.$refs.listWrapper},clearHighlightIndex(){this.setHighlightIndex(-1)},afterHighlight(){this.visuallyHiddenClose&&this.highlightIndex===this._itemsLength()-1||this.$emit("highlight",this.highlightIndex)},updateInitialHighlightIndex(t){this.isOpen=t,t?(this.openedWithKeyboard&&this.isArrowKeyNav&&this.setHighlightIndex(0),this.$emit("opened",!0)):(this.clearHighlightIndex(),this.openedWithKeyboard=!1,this.$emit("opened",!1))},onSpaceKey(){this.open||(this.openedWithKeyboard=!0)},onEnterKey(){this.open||(this.openedWithKeyboard=!0)},onUpKeyPress(){if(!this.isOpen){this.openedWithKeyboard=!0;return}if(this.isArrowKeyNav)return this.onUpKey()},onDownKeyPress(){if(!this.isOpen){this.openedWithKeyboard=!0;return}if(this.isArrowKeyNav)return this.onDownKey()},onHomeKeyPress(){if(!(!this.isOpen||!this.isArrowKeyNav))return this.onHomeKey()},onEndKeyPress(){if(!(!this.isOpen||!this.isArrowKeyNav))return this.onEndKey()},onKeyPress(t){if(!(!this.isOpen||!this.isArrowKeyNav||!this.isValidLetter(t.key)))return t.stopPropagation(),t.preventDefault(),this.onNavigationKey(t.key)}}},wa=["id"];function Ea(t,a,n,r,i,o){const s=e.resolveComponent("sr-only-close-button"),d=e.resolveComponent("dt-popover");return e.openBlock(),e.createBlock(d,e.mergeProps({ref:"popover","content-width":n.contentWidth,open:n.open,placement:n.placement,"initial-focus-element":i.openedWithKeyboard?"first":"dialog","fallback-placements":n.fallbackPlacements,padding:"none",role:"menu","append-to":n.appendTo,modal:n.modal,"max-height":n.maxHeight,"max-width":n.maxWidth,"open-with-arrow-keys":o.shouldOpenWithArrowKeys,"open-on-context":n.openOnContext},t.$attrs,{tether:n.tether,transition:n.transition},e.toHandlers(o.dropdownListeners)),{anchor:e.withCtx(({attrs:l})=>[e.renderSlot(t.$slots,"anchor",e.mergeProps({ref:"anchor"},l))]),content:e.withCtx(({close:l})=>[e.createElementVNode("ul",{id:n.listId,ref:"listWrapper",class:e.normalizeClass(o.listClasses),"data-qa":"dt-dropdown-list-wrapper",onMouseleave:a[0]||(a[0]=(...m)=>o.clearHighlightIndex&&o.clearHighlightIndex(...m)),onMousemoveCapture:a[1]||(a[1]=(...m)=>o.onMouseHighlight&&o.onMouseHighlight(...m))},[e.renderSlot(t.$slots,"list",{close:l}),t.showVisuallyHiddenClose?(e.openBlock(),e.createBlock(s,{key:0,"visually-hidden-close-label":t.visuallyHiddenCloseLabel,tabindex:o.isArrowKeyNav?-1:0,onClose:l},null,8,["visually-hidden-close-label","tabindex","onClose"])):e.createCommentVNode("",!0)],42,wa)]),_:3},16,["content-width","open","placement","initial-focus-element","fallback-placements","append-to","modal","max-height","max-width","open-with-arrow-keys","open-on-context","tether","transition"])}const Jt=u._export_sfc(Ca,[["render",Ea]]),ka={name:"DtDropdownSeparator"},Da={"aria-hidden":"true",class:"dt-list-separator d-my4 d-mxn4"};function Ia(t,a,n,r,i,o){return e.openBlock(),e.createElementBlock("li",Da)}const Ta=u._export_sfc(ka,[["render",Ia]]),Oa={name:"DtImageViewer",components:{DtButton:h.DtButton,DtIcon:h.DtIcon},mixins:[g.Modal],props:{open:{type:Boolean,default:null},imageSrc:{type:String,required:!0},imageAlt:{type:String,required:!0},imageButtonClass:{type:String,required:!1,default:""},ariaLabel:{type:String,required:!0},closeAriaLabel:{type:String,required:!0}},emits:["opened","update:open"],data(){return{showCloseButton:!0,isOpen:!1}},computed:{modalListeners(){return{click:t=>{t.target===t.currentTarget&&this.close()},keydown:t=>{switch(t.code){case u.EVENT_KEYNAMES.esc:case u.EVENT_KEYNAMES.escape:this.close();break;case u.EVENT_KEYNAMES.tab:this.trapFocus(t);break}}}}},watch:{isOpen:{immediate:!0,handler(t){var a;t?this.previousActiveElement=document.activeElement:((a=this.previousActiveElement)==null||a.focus(),this.previousActiveElement=null)}},open:{handler:function(t){t!==null&&(this.isOpen=t)},immediate:!0}},methods:{openModal(){this.open===null&&(this.isOpen=!0,this.showCloseButton=!0,this.$emit("opened",!0),setTimeout(()=>{this.focusAfterOpen()}))},close(){this.isOpen=!1,this.$emit("opened",!1),this.open!==null&&this.$emit("update:open",!1)},focusAfterOpen(){var t;(t=this.$refs.closeImage)==null||t.$el.focus()},trapFocus(t){this.isOpen&&this.focusTrappedTabPress(t)}}},Na=["src","alt"],La=["aria-hidden"],Ba={"data-qa":"dt-image-viewer-full",class:"d-p0 d-bar0 d-wmx80p d-hmx80p",role:"dialog","aria-modal":"true"},xa=["src","alt"];function Aa(t,a,n,r,i,o){const s=e.resolveComponent("dt-button"),d=e.resolveComponent("dt-icon");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(s,{"data-qa":"dt-image-viewer-preview",class:"d-p0 d-c-zoom-in","aria-label":n.ariaLabel,importance:"clear",onClick:o.openModal},{default:e.withCtx(()=>[e.createElementVNode("img",{class:e.normalizeClass(n.imageButtonClass),src:n.imageSrc,alt:n.imageAlt},null,10,Na)]),_:1},8,["aria-label","onClick"]),i.isOpen?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"body"},[e.createElementVNode("div",e.mergeProps({"aria-hidden":i.isOpen?"false":"true",class:"d-modal","data-qa":"dt-modal"},e.toHandlers(o.modalListeners,!0),{onMouseover:a[0]||(a[0]=l=>i.showCloseButton=!0),onMouseleave:a[1]||(a[1]=l=>i.showCloseButton=!1),onFocusin:a[2]||(a[2]=l=>i.showCloseButton=!0),onFocusout:a[3]||(a[3]=l=>i.showCloseButton=!1)}),[e.createElementVNode("div",Ba,[e.createElementVNode("img",{class:"d-wmx100p d-hmx100p",src:n.imageSrc,alt:n.imageAlt},null,8,xa)]),e.createVNode(e.Transition,{name:"fade"},{default:e.withCtx(()=>[i.showCloseButton?(e.openBlock(),e.createBlock(s,{key:0,ref:"closeImage","data-qa":"dt-image-viewer-close-btn",class:"d-modal__close",circle:"",size:"lg",importance:"clear",kind:"inverted","aria-label":n.closeAriaLabel,onClick:o.close},{icon:e.withCtx(()=>[e.createVNode(d,{class:"d-fc-neutral-white",name:"close",size:"400"})]),_:1},8,["aria-label","onClick"])):e.createCommentVNode("",!0)]),_:1})],16,La)])):e.createCommentVNode("",!0)])}const en=u._export_sfc(Oa,[["render",Aa]]),tn={components:{DtValidationMessages:h.DtValidationMessages},provide(){return{groupContext:this.provideObj,setGroupValue:this.setGroupValue}},props:{id:{type:String,default(){return u.getUniqueString()}},value:{type:[String,Number,Boolean,Object],default:null},name:{type:String,required:!0},legend:{type:String,default:""},disabled:{type:Boolean,default:!1},messages:{type:Array,default:()=>[],validator:t=>h.validationMessageValidator(t)},showMessages:{type:Boolean,default:!0},legendClass:{type:[String,Array,Object],default:""},messagesClass:{type:[String,Array,Object],default:""},legendChildProps:{type:Object,default:()=>({})},messagesChildProps:{type:Object,default:()=>({})}},emits:["input"],data(){const t=u.formatMessages(this.messages);return{provideObj:{name:this.name,disabled:this.disabled,validationState:u.getValidationState(t)}}},computed:{formattedMessages(){return u.formatMessages(this.messages)},validationState(){return u.getValidationState(this.formattedMessages)}},watch:{disabled(t){this.provideObj.disabled=t},validationState(t){this.provideObj.validationState=t}},methods:{setGroupValue(t){this.internalValue=t,this.$emit("input",t)}},mounted(){!this.legend&&!this.$slots.legend&&!this.$attrs["aria-label"]&&e.warn("It is expected that an aria-label is provided when there is no legend.",this)}},Ma={name:"DtInputGroup",components:{DtValidationMessages:h.DtValidationMessages},mixins:[tn],props:{dataQaGroup:{type:String,default:"input-group"},dataQaGroupLegend:{type:String,default:"input-group-legend"},dataQaGroupMessages:{type:String,default:"input-group-messages"}},data(){return{internalValue:this.value,hasSlotContent:u.hasSlotContent}},watch:{value(t){this.internalValue=t},internalValue:{immediate:!0,handler(t){this.provideObj.value=t}}},methods:{getMessageKey(t,a){return`input-group-message-${t}-${a}-${this.id}`}}},Va=["data-qa"],Ra=["data-qa"];function Pa(t,a,n,r,i,o){const s=e.resolveComponent("dt-validation-messages");return e.openBlock(),e.createElementBlock("fieldset",{class:"d-input-group__fieldset","data-qa":n.dataQaGroup},[i.hasSlotContent(t.$slots.legend)||t.legend?(e.openBlock(),e.createElementBlock("legend",e.mergeProps({key:0,class:["d-label",t.legendClass]},t.legendChildProps,{"data-qa":n.dataQaGroupLegend}),[e.renderSlot(t.$slots,"legend",{},()=>[e.createTextVNode(e.toDisplayString(t.legend),1)])],16,Ra)):e.createCommentVNode("",!0),e.renderSlot(t.$slots,"default"),e.createVNode(s,e.mergeProps({"validation-messages":t.formattedMessages,"show-messages":t.showMessages,class:t.messagesClass,"data-qa":n.dataQaGroupMessages},t.messagesChildProps),null,16,["validation-messages","show-messages","class","data-qa"])],8,Va)}const mt=u._export_sfc(Ma,[["render",Pa]]),Xe={default:"",danger:"d-modal--danger"},Ze={default:"",full:"d-modal--full"},Qe={error:"d-modal__banner--critical",info:"d-modal__banner--info",success:"d-modal__banner--success",warning:"d-modal__banner--warning",base:"d-modal__banner--general"},$a={name:"DtModal",components:{DtLazyShow:u.DtLazyShow,DtButton:h.DtButton,DtIcon:h.DtIcon,SrOnlyCloseButton:g.SrOnlyCloseButton},mixins:[g.Modal,g.SrOnlyCloseButtonMixin],props:{closeButtonProps:{type:Object,required:!0,validator:t=>!!t.ariaLabel},copy:{type:String,default:""},describedById:{type:String,default:""},labelledById:{type:String,default:function(){return u.getUniqueString()}},show:{type:Boolean,default:!1},title:{type:String,default:""},bannerTitle:{type:String,default:""},kind:{type:String,default:"default",validator:t=>Object.keys(Xe).includes(t)},size:{type:String,default:"default",validator:t=>Object.keys(Ze).includes(t)},modalClass:{type:[String,Object,Array],default:""},dialogClass:{type:[String,Object,Array],default:""},contentClass:{type:[String,Object,Array],default:""},bannerKind:{type:String,default:"warning",validate(t){return g.NOTICE_KINDS.includes(t)}},bannerClass:{type:[String,Object,Array],default:""},hideClose:{type:Boolean,default:!1},closeOnClick:{type:Boolean,default:!0},fixedHeaderFooter:{type:Boolean,default:!0}},emits:["click","keydown","update:show"],data(){return{MODAL_KIND_MODIFIERS:Xe,MODAL_SIZE_MODIFIERS:Ze,MODAL_BANNER_KINDS:Qe,EVENT_KEYNAMES:u.EVENT_KEYNAMES,hasSlotContent:u.hasSlotContent}},computed:{modalListeners(){return{click:t=>{this.closeOnClick&&(t.target===t.currentTarget&&this.close(),this.$emit("click",t))},keydown:t=>{switch(t.code){case u.EVENT_KEYNAMES.esc:case u.EVENT_KEYNAMES.escape:this.close();break;case u.EVENT_KEYNAMES.tab:this.trapFocus(t);break}this.$emit("keydown",t)},"after-enter":t=>{t.target===t.currentTarget&&this.setFocusAfterTransition()}}},open(){return`${!this.show}`},hasFooterSlot(){return!!this.$slots.footer},bannerKindClass(){return Qe[this.bannerKind]}},watch:{show:{immediate:!0,handler(t){var a;t?this.previousActiveElement=document.activeElement:((a=this.previousActiveElement)==null||a.focus(),this.previousActiveElement=null)}},$props:{immediate:!0,deep:!0,handler(){this.validateProps()}}},methods:{close(){this.$emit("update:show",!1)},setFocusAfterTransition(){this.focusFirstElement()},trapFocus(t){this.show&&this.focusTrappedTabPress(t)},validateProps(){this.hideClose&&!this.visuallyHiddenClose&&console.error(`If hideClose prop is true, visuallyHiddenClose and visuallyHiddenCloseLabel props
|
package/dist/dialtone-vue.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { D as Ra, a as Pa, b as $a, M as lt, S as Pe, N as Tt, c as dn, d as dt, e as cn, f as Ot, g as Na, L as vt, P as Lt, h as un, i as ct, j as hn } from "./message_input-
|
|
2
|
-
import { o as nh, p as ih, n as sh, k as rh, l as oh, m as lh, A as dh, q as ch, w as uh, B as hh, z as fh, r as mh, t as ph, v as gh, s as bh, u as vh, x as yh, y as _h } from "./message_input-
|
|
1
|
+
import { D as Ra, a as Pa, b as $a, M as lt, S as Pe, N as Tt, c as dn, d as dt, e as cn, f as Ot, g as Na, L as vt, P as Lt, h as un, i as ct, j as hn } from "./message_input-zOYCybPr.js";
|
|
2
|
+
import { o as nh, p as ih, n as sh, k as rh, l as oh, m as lh, A as dh, q as ch, w as uh, B as hh, z as fh, r as mh, t as ph, v as gh, s as bh, u as vh, x as yh, y as _h } from "./message_input-zOYCybPr.js";
|
|
3
3
|
import { D as V, I as fn, M as mn, a as pn, b as J, c as $e, v as Ba, d as za, C as qa, G as Fa, e as Et, f as gn, g as bn } from "./emoji-zsImd-qD.js";
|
|
4
4
|
import { z as wh, _ as Ch, p as Ih, s as kh, r as Dh, q as Th, l as Oh, k as Lh, E as Eh, B as Mh, A as Ah, y as xh, i as Rh, h as Ph, j as $h, L as Nh, x as Bh, S as zh, t as qh, w as Fh, u as Hh, o as Wh, n as Vh, T as Uh, m as jh } from "./emoji-zsImd-qD.js";
|
|
5
5
|
import { resolveComponent as g, openBlock as d, createElementBlock as h, normalizeClass as w, createCommentVNode as C, createVNode as b, createElementVNode as p, renderSlot as m, createTextVNode as F, toDisplayString as O, normalizeStyle as Le, withKeys as le, createBlock as L, withCtx as f, mergeProps as T, Fragment as G, renderList as Z, withModifiers as he, normalizeProps as Ge, Transition as Mt, withDirectives as De, resolveDynamicComponent as Se, guardReactiveProps as At, vShow as Te, toHandlers as U, Teleport as vn, warn as ut, reactive as da, ref as Q, computed as Ie, watch as Ke, onMounted as Ha, nextTick as yn, unref as R, markRaw as _n, shallowReactive as Sn, h as wn, provide as Cn, createSlots as xt, pushScopeId as In, popScopeId as kn } from "vue";
|
|
@@ -90,4 +90,4 @@ img.ProseMirror-separator {
|
|
|
90
90
|
|
|
91
91
|
`);return!o||!s?!1:n.chain().command(({tr:l})=>(l.delete(r.pos-2,r.pos),!0)).exitCode().run()},ArrowDown:({editor:n})=>{if(!this.options.exitOnArrowDown)return!1;const{state:e}=n,{selection:t,doc:r}=e,{$from:i,empty:o}=t;if(!o||i.parent.type!==this.type||!(i.parentOffset===i.parent.nodeSize-2))return!1;const l=i.after();return l===void 0||r.nodeAt(l)?!1:n.commands.exitCode()}}},addInputRules(){return[Ii({find:Gh,type:this.type,getAttributes:n=>({language:n[1]})}),Ii({find:Yh,type:this.type,getAttributes:n=>({language:n[1]})})]},addProseMirrorPlugins(){return[new X({key:new ee("codeBlockVSCodeHandler"),props:{handlePaste:(n,e)=>{if(!e.clipboardData||this.editor.isActive(this.type.name))return!1;const t=e.clipboardData.getData("text/plain"),r=e.clipboardData.getData("vscode-editor-data"),i=r?JSON.parse(r):void 0,o=i==null?void 0:i.mode;if(!t||!o)return!1;const{tr:s}=n.state;return s.replaceSelectionWith(this.type.create({language:o})),s.setSelection(D.near(s.doc.resolve(Math.max(0,s.selection.from-2)))),s.insertText(t.replace(/\r\n?/g,`
|
|
92
92
|
`)),s.setMeta("paste",!0),n.dispatch(s),!0}}})]}}),Zh=pe.create({name:"doc",topNode:!0,content:"block+"}),Qh=pe.create({name:"hardBreak",addOptions(){return{keepMarks:!0,HTMLAttributes:{}}},inline:!0,group:"inline",selectable:!1,parseHTML(){return[{tag:"br"}]},renderHTML({HTMLAttributes:n}){return["br",Ne(this.options.HTMLAttributes,n)]},renderText(){return`
|
|
93
|
-
`},addCommands(){return{setHardBreak:()=>({commands:n,chain:e,state:t,editor:r})=>n.first([()=>n.exitCode(),()=>n.command(()=>{const{selection:i,storedMarks:o}=t;if(i.$from.parent.type.spec.isolating)return!1;const{keepMarks:s}=this.options,{splittableMarks:l}=r.extensionManager,a=o||i.$to.parentOffset&&i.$from.marks();return e().insertContent({type:this.name}).command(({tr:c,dispatch:d})=>{if(d&&a&&s){const u=a.filter(f=>l.includes(f.type.name));c.ensureMarks(u)}return!0}).run()})])}},addKeyboardShortcuts(){return{"Mod-Enter":()=>this.editor.commands.setHardBreak(),"Shift-Enter":()=>this.editor.commands.setHardBreak()}}}),ef=pe.create({name:"paragraph",priority:1e3,addOptions(){return{HTMLAttributes:{}}},group:"block",content:"inline*",parseHTML(){return[{tag:"p"}]},renderHTML({HTMLAttributes:n}){return["p",Ne(this.options.HTMLAttributes,n),0]},addCommands(){return{setParagraph:()=>({commands:n})=>n.setNode(this.name)}},addKeyboardShortcuts(){return{"Mod-Alt-0":()=>this.editor.commands.setParagraph()}}}),tf=ie.create({name:"placeholder",addOptions(){return{emptyEditorClass:"is-editor-empty",emptyNodeClass:"is-empty",placeholder:"Write something …",showOnlyWhenEditable:!0,showOnlyCurrent:!0,includeChildren:!1}},addProseMirrorPlugins(){return[new X({key:new ee("placeholder"),props:{decorations:({doc:n,selection:e})=>{const t=this.editor.isEditable||!this.options.showOnlyWhenEditable,{anchor:r}=e,i=[];if(!t)return null;const o=n.type.createAndFill(),s=(o==null?void 0:o.sameMarkup(n))&&o.content.findDiffStart(n.content)===null;return n.descendants((l,a)=>{const c=r>=a&&r<=a+l.nodeSize,d=!l.isLeaf&&!l.childCount;if((c||!this.options.showOnlyCurrent)&&d){const u=[this.options.emptyNodeClass];s&&u.push(this.options.emptyEditorClass);const f=Q.node(a,a+l.nodeSize,{class:u.join(" "),"data-placeholder":typeof this.options.placeholder=="function"?this.options.placeholder({editor:this.editor,node:l,pos:a,hasAnchor:c}):this.options.placeholder});i.push(f)}return this.options.includeChildren}),L.create(n,i)}}})]}}),nf=pe.create({name:"text",group:"inline"}),rf={name:"EmojiComponent",components:{NodeViewWrapper:Rs,DtEmoji:R.DtEmoji},props:_s};function of(n,e,t,r,i,o){const s=h.resolveComponent("dt-emoji"),l=h.resolveComponent("node-view-wrapper");return h.openBlock(),h.createBlock(l,{class:"d-d-inline-block"},{default:h.withCtx(()=>[h.createVNode(s,{size:"300",code:n.node.attrs.code},null,8,["code"])]),_:1})}const sf=O._export_sfc(rf,[["render",of]]);function lf(n){var e;const{char:t,allowSpaces:r,allowedPrefixes:i,startOfLine:o,$position:s}=n,l=$h(t),a=new RegExp(`\\s${l}$`),c=o?"^":"",d=r?new RegExp(`${c}${l}.*?(?=\\s${l}|$)`,"gm"):new RegExp(`${c}(?:^)?${l}[^\\s${l}]*`,"gm"),u=((e=s.nodeBefore)===null||e===void 0?void 0:e.isText)&&s.nodeBefore.text;if(!u)return null;const f=s.pos-u.length,p=Array.from(u.matchAll(d)).pop();if(!p||p.input===void 0||p.index===void 0)return null;const m=p.input.slice(Math.max(0,p.index-1),p.index),g=new RegExp(`^[${i==null?void 0:i.join("")}\0]?$`).test(m);if(i!==null&&!g)return null;const y=f+p.index;let b=y+p[0].length;return r&&a.test(u.slice(b-1,b+1))&&(p[0]+=" ",b+=1),y<s.pos&&b>=s.pos?{range:{from:y,to:b},query:p[0].slice(t.length),text:p[0]}:null}const af=new ee("suggestion");function Fs({pluginKey:n=af,editor:e,char:t="@",allowSpaces:r=!1,allowedPrefixes:i=[" "],startOfLine:o=!1,decorationTag:s="span",decorationClass:l="suggestion",command:a=()=>null,items:c=()=>[],render:d=()=>({}),allow:u=()=>!0}){let f;const p=d==null?void 0:d(),m=new X({key:n,view(){return{update:async(g,y)=>{var b,w,E,I,N,A,B;const C=(b=this.key)===null||b===void 0?void 0:b.getState(y),_=(w=this.key)===null||w===void 0?void 0:w.getState(g.state),ae=C.active&&_.active&&C.range.from!==_.range.from,Nt=!C.active&&_.active,vr=C.active&&!_.active,Hs=!Nt&&!vr&&C.query!==_.query,at=Nt||ae,Dt=Hs&&!ae,hn=vr||ae;if(!at&&!Dt&&!hn)return;const Ke=hn&&!at?C:_,Er=g.dom.querySelector(`[data-decoration-id="${Ke.decorationId}"]`);f={editor:e,range:Ke.range,query:Ke.query,text:Ke.text,items:[],command:ct=>{a({editor:e,range:Ke.range,props:ct})},decorationNode:Er,clientRect:Er?()=>{var ct;const{decorationId:$s}=(ct=this.key)===null||ct===void 0?void 0:ct.getState(e.state),fn=g.dom.querySelector(`[data-decoration-id="${$s}"]`);return(fn==null?void 0:fn.getBoundingClientRect())||null}:null},at&&((E=p==null?void 0:p.onBeforeStart)===null||E===void 0||E.call(p,f)),Dt&&((I=p==null?void 0:p.onBeforeUpdate)===null||I===void 0||I.call(p,f)),(Dt||at)&&(f.items=await c({editor:e,query:Ke.query})),hn&&((N=p==null?void 0:p.onExit)===null||N===void 0||N.call(p,f)),Dt&&((A=p==null?void 0:p.onUpdate)===null||A===void 0||A.call(p,f)),at&&((B=p==null?void 0:p.onStart)===null||B===void 0||B.call(p,f))},destroy:()=>{var g;f&&((g=p==null?void 0:p.onExit)===null||g===void 0||g.call(p,f))}}},state:{init(){return{active:!1,range:{from:0,to:0},query:null,text:null,composing:!1}},apply(g,y,b,w){const{isEditable:E}=e,{composing:I}=e.view,{selection:N}=g,{empty:A,from:B}=N,C={...y};if(C.composing=I,E&&(A||e.view.composing)){(B<y.range.from||B>y.range.to)&&!I&&!y.composing&&(C.active=!1);const _=lf({char:t,allowSpaces:r,allowedPrefixes:i,startOfLine:o,$position:N.$from}),ae=`id_${Math.floor(Math.random()*4294967295)}`;_&&u({editor:e,state:w,range:_.range})?(C.active=!0,C.decorationId=y.decorationId?y.decorationId:ae,C.range=_.range,C.query=_.query,C.text=_.text):C.active=!1}else C.active=!1;return C.active||(C.decorationId=null,C.range={from:0,to:0},C.query=null,C.text=null),C}},props:{handleKeyDown(g,y){var b;const{active:w,range:E}=m.getState(g.state);return w&&((b=p==null?void 0:p.onKeyDown)===null||b===void 0?void 0:b.call(p,{view:g,event:y,range:E}))||!1},decorations(g){const{active:y,range:b,decorationId:w}=m.getState(g);return y?L.create(g.doc,[Q.inline(b.from,b.to,{nodeName:s,class:l,"data-decoration-id":w})]):null}}});return m}const cf={name:"SuggestionList",components:{DtListItem:Qi},props:{items:{type:Array,required:!0},command:{type:Function,required:!0},itemComponent:{type:Object,required:!0},itemType:{type:String,required:!0}},data(){return{selectedIndex:0}},watch:{items(){this.selectedIndex=0}},methods:{onKeyDown({event:n}){return n.key==="ArrowUp"?(this.upHandler(),!0):n.key==="ArrowDown"?(this.downHandler(),!0):n.key==="Enter"?(this.enterHandler(),n.stopPropagation(),!0):!1},upHandler(){this.selectedIndex=(this.selectedIndex+this.items.length-1)%this.items.length,this.scrollActiveElementIntoView()},downHandler(){this.selectedIndex=(this.selectedIndex+1)%this.items.length,this.scrollActiveElementIntoView()},scrollActiveElementIntoView(){const n=this.$refs.suggestionList.querySelector(".dt-list-item--highlighted");n&&n.scrollIntoView({behaviour:"smooth",block:"center"})},enterHandler(){this.selectItem(this.selectedIndex)},selectItem(n){const e=this.items[n];switch(this.itemType){case"emoji":this.command(e);return;case"mention":this.command({name:e.name,id:e.contactId,avatarSrc:e.avatarSrc});break}}}},df={class:"d-popover__dialog"},uf={ref:"suggestionList",class:"dt-suggestion-list"};function hf(n,e,t,r,i,o){const s=h.resolveComponent("dt-list-item");return h.openBlock(),h.createElementBlock("div",df,[h.withDirectives(h.createElementVNode("ul",uf,[(h.openBlock(!0),h.createElementBlock(h.Fragment,null,h.renderList(t.items,(l,a)=>(h.openBlock(),h.createBlock(s,{key:l.id,class:h.normalizeClass(["dt-suggestion-list--item",{"dt-list-item--highlighted":a===i.selectedIndex}]),"navigation-type":"arrow-keys",onClick:c=>o.selectItem(a),onKeydown:h.withModifiers(o.onKeyDown,["prevent","stop"])},{default:h.withCtx(()=>[(h.openBlock(),h.createBlock(h.resolveDynamicComponent(t.itemComponent),{item:l},null,8,["item"]))]),_:2},1032,["class","onClick","onKeydown"]))),128))],512),[[h.vShow,t.items.length]])])}const Vs=O._export_sfc(cf,[["render",hf]]),ff={name:"EmojiSuggestion",components:{DtEmoji:R.DtEmoji,DtStack:sr},props:{item:{type:Object,required:!0}}};function pf(n,e,t,r,i,o){const s=h.resolveComponent("dt-emoji"),l=h.resolveComponent("dt-stack");return h.openBlock(),h.createBlock(l,{direction:"row",gap:"400"},{default:h.withCtx(()=>[h.createVNode(s,{size:"200",code:t.item.code},null,8,["code"]),h.createTextVNode(" "+h.toDisplayString(t.item.code),1)]),_:1})}const mf=O._export_sfc(ff,[["render",pf]]),gf={items:({query:n})=>n.length<2?[]:Object.values(R.emojisIndexed).filter(function(r){return!!r.shortname.substring(1,r.shortname.length-1).startsWith(n.toLowerCase())}).map(r=>({id:r.unicode_character,code:r.shortname})),command:({editor:n,range:e,props:t})=>{var o,s;const r=n.view.state.selection.$to.nodeAfter;((o=r==null?void 0:r.text)==null?void 0:o.startsWith(" "))&&(e.to+=1),n.chain().focus().insertContentAt(e,[{type:"emoji",attrs:t},{type:"text",text:" "}]).run(),(s=window.getSelection())==null||s.collapseToEnd()},render:()=>{let n,e;return{onStart:t=>{n=new wr(Vs,{props:{itemComponent:h.markRaw(mf),itemType:"emoji",...t},editor:t.editor}),t.clientRect&&(e=O.tippy("body",{getReferenceClientRect:t.clientRect,appendTo:()=>document.body,content:n.element,showOnCreate:!0,interactive:!0,trigger:"manual",placement:"bottom-start",contentElement:null,zIndex:650}))},onUpdate(t){n.updateProps(t),t.clientRect&&e[0].setProps({getReferenceClientRect:t.clientRect})},onKeyDown(t){var r;return t.event.key==="Escape"?(e[0].hide(),!0):(r=n.ref)==null?void 0:r.onKeyDown(t)},onExit(){e[0].destroy(),n.destroy()}}}},yf=new ee("emoji"),bf=/:\w+:$/,kf=/:\w+:/g,Sf=/(\u00a9|\u00ae|[\u2000-\u3300]|\ud83c[\ud000-\udfff]|\ud83d[\ud000-\udfff]|\ud83e[\ud000-\udfff])$/,Cf=/(\u00a9|\u00ae|[\u2000-\u3300]|\ud83c[\ud000-\udfff]|\ud83d[\ud000-\udfff]|\ud83e[\ud000-\udfff])/g,Ri=n=>{if(n&&R.codeToEmojiData(n[0]))return{index:n.index,text:n[0],match:n}},xf=n=>[...n.matchAll(kf)].filter(t=>R.codeToEmojiData(t[0])).map(t=>({index:t.index,text:t[0],match:t})),wf=pe.create({addOptions(){return{HTMLAttributes:{},suggestion:{char:":",pluginKey:yf}}},name:"emoji",group:"inline",inline:!0,selectable:!0,addNodeView(){return Ls(sf)},addAttributes(){return{code:{default:null},id:{default:null}}},parseHTML(){return[{tag:"emoji-component"}]},renderText({node:n}){return n.attrs.code},renderHTML({HTMLAttributes:n}){return["emoji-component",Ne(this.options.HTMLAttributes,n),0]},addInputRules(){return[Ai({find:n=>{const e=n.match(bf);return Ri(e)},type:this.type,getAttributes(n){return{code:n[0]}}}),Ai({find:n=>{const e=n.match(Sf);return Ri(e)},type:this.type,getAttributes(n){const e=R.shortcodeToEmojiData(n[0]).unicode_output;return{code:String.fromCodePoint(parseInt(e,16)),label:"emoji"}}})]},addPasteRules(){return[Pi({find:xf,type:this.type,getAttributes(n){return{code:n[0]}}}),Pi({find:Cf,type:this.type,getAttributes(n){return{code:n[0]}}})]},addProseMirrorPlugins(){return[Fs({editor:this.editor,...this.options.suggestion,...gf})]}});function vf(n,e,t=()=>!0){const r=[];e.lastIndex=0;let i;for(;i=e.exec(n);)t(n,i)&&r.push(i);return r}function Ef(n,e){return!["#","@"].includes(n.charAt(e.index))&&!["#","@"].includes(n.charAt(e.index-1))}function Of(n){const e=new RegExp("(?:"+[`[!?.,:;'"]`,"(?:&|&)(?:lt|gt|quot|apos|raquo|laquo|rsaquo|lsaquo);)+$"].join("|"),"g");return n.replace(e,"")}function Mf(n,e){const t=n.slice(0,e+1).search(/\S+\s*$/),r=n.slice(e).search(/\s/);if(r<0){const i=n.slice(t);return{text:i,from:t,to:t+i.length}}return{text:n.slice(t,r+e),from:t,to:r+e}}function ir(n,e,t,r){const i=Mf(n,e);if(r.lastIndex=0,!r.test(i.text))return i;const o=t==="left"?i.from-1:i.to+1;return o<=0||o>=n.length||o===e?i:ir(n,o,t,r)}function Tf(n,e,t,r){const i=Math.max(n.from-1,0),o=Math.min(n.to+1,e.content.size),s=ch(i,o,e);for(const l of s)l.mark.type===r&&t.removeMark(l.from,l.to,r)}const _i=O.getPhoneNumberRegex(1,15);function Li(n,e,t,r,i,o){if(!n)return;let s=t-e-1;s=s<0?0:s;const l=r-e,a=ir(n,s,"left",_i),c=ir(n,l,"right",_i),d=n.slice(a.from,c.to);vf(d,O.linkRegex,Ef).forEach(f=>{const p=Of(f[0]),m=e+a.from+f.index+1,g=m+p.length;i.addMark(m,g,o.create())})}function Nf(n){let e=!1;return new X({key:new ee("autolink"),appendTransaction:(t,r,i)=>{const o=t.some(d=>d.docChanged)&&!r.doc.eq(i.doc);if(e&&!o)return;const{tr:s}=i,{textContent:l}=i.doc;e||Li(l,0,0,l.length,s,n.type),e=!0;const a=Zu(r.doc,[...t]);return ah(a).forEach(({oldRange:d,newRange:u})=>{Tf(u,i.doc,s,n.type),eh(i.doc,u,p=>p.isTextblock).forEach(({node:p,pos:m})=>{Li(p.textContent,m,d.from,u.to,s,n.type)})}),s}})}const Df={class:"d-link d-c-text d-d-inline-block",rel:"noopener noreferrer nofollow"},Af=Mt.create({name:"Link",renderHTML({HTMLAttributes:n}){return["a",Ne(this.options.HTMLAttributes,n,Df),0]},renderText({node:n}){return n.attrs.text},addProseMirrorPlugins(){return[Nf({type:this.type})]}}),If=new ee("mention"),Pf=pe.create({name:"mention",addOptions(){return{HTMLAttributes:{},renderLabel({options:n,node:e}){var t;return`${n.suggestion.char}${(t=e.attrs.label)!==null&&t!==void 0?t:e.attrs.id}`},suggestion:{char:"@",pluginKey:If,command:({editor:n,range:e,props:t})=>{var r,i;const o=n.view.state.selection.$to.nodeAfter;((r=o==null?void 0:o.text)===null||r===void 0?void 0:r.startsWith(" "))&&(e.to+=1),n.chain().focus().insertContentAt(e,[{type:this.name,attrs:t},{type:"text",text:" "}]).run(),(i=window.getSelection())===null||i===void 0||i.collapseToEnd()},allow:({state:n,range:e})=>{const t=n.doc.resolve(e.from),r=n.schema.nodes[this.name];return!!t.parent.type.contentMatch.matchType(r)}}}},group:"inline",inline:!0,selectable:!1,atom:!0,addAttributes(){return{id:{default:null,parseHTML:n=>n.getAttribute("data-id"),renderHTML:n=>n.id?{"data-id":n.id}:{}},label:{default:null,parseHTML:n=>n.getAttribute("data-label"),renderHTML:n=>n.label?{"data-label":n.label}:{}}}},parseHTML(){return[{tag:`span[data-type="${this.name}"]`}]},renderHTML({node:n,HTMLAttributes:e}){return["span",Ne({"data-type":this.name},this.options.HTMLAttributes,e),this.options.renderLabel({options:this.options,node:n})]},renderText({node:n}){return this.options.renderLabel({options:this.options,node:n})},addKeyboardShortcuts(){return{Backspace:()=>this.editor.commands.command(({tr:n,state:e})=>{let t=!1;const{selection:r}=e,{empty:i,anchor:o}=r;return i?(e.doc.nodesBetween(o-1,o,(s,l)=>{if(s.type.name===this.name)return t=!0,n.insertText(this.options.suggestion.char||"",l,l+s.nodeSize),!1}),t):!1})}},addProseMirrorPlugins(){return[Fs({editor:this.editor,...this.options.suggestion})]}}),Bf={name:"MentionComponent",components:{NodeViewWrapper:Rs,DtLink:Zi},props:_s,computed:{text(){return"@"+this.$props.node.attrs.name}}};function Rf(n,e,t,r,i,o){const s=h.resolveComponent("dt-link"),l=h.resolveComponent("node-view-wrapper");return h.openBlock(),h.createBlock(l,{class:"d-d-inline-block"},{default:h.withCtx(()=>[h.createVNode(s,{kind:"inverted",class:"dt-link--mention",href:null},{default:h.withCtx(()=>[h.createTextVNode(h.toDisplayString(o.text),1)]),_:1})]),_:1})}const _f=O._export_sfc(Bf,[["render",Rf]]),Lf=Pf.extend({addNodeView(){return Ls(_f)},parseHTML(){return[{tag:"mention-component"}]},addAttributes(){return{name:{default:""},avatarSrc:{default:""},id:{default:""}}},renderText({node:n}){return"@ "+n.attrs.name},renderHTML({HTMLAttributes:n}){return["mention-component",Ne(this.options.HTMLAttributes,n),0]}}),zs=["text","json","html"],js=["start","end","all"],Ff={name:"MentionSuggestion",components:{DtAvatar:qi,DtStack:sr},props:{item:{type:Object,required:!0}},computed:{name(){return this.item.name},avatarSrc(){return this.item.avatarSrc}}};function Vf(n,e,t,r,i,o){const s=h.resolveComponent("dt-avatar"),l=h.resolveComponent("dt-stack");return h.openBlock(),h.createBlock(l,{direction:"row",gap:"400"},{default:h.withCtx(()=>[h.createVNode(s,{"full-name":o.name,"image-src":o.avatarSrc,size:"xs"},null,8,["full-name","image-src"]),h.createTextVNode(" "+h.toDisplayString(o.name),1)]),_:1})}const zf=O._export_sfc(Ff,[["render",Vf]]),jf={render:()=>{let n,e;return{onStart:t=>{n=new wr(Vs,{props:{itemComponent:h.markRaw(zf),itemType:"mention",...t},editor:t.editor}),t.clientRect&&(e=O.tippy("body",{getReferenceClientRect:t.clientRect,appendTo:()=>document.body,content:n.element,showOnCreate:!0,interactive:!0,trigger:"manual",placement:"bottom-start"}))},onUpdate(t){n.updateProps(t),t.clientRect&&e[0].setProps({getReferenceClientRect:t.clientRect})},onKeyDown(t){var r;return t.event.key==="Escape"?(e[0].hide(),!0):(r=n.ref)==null?void 0:r.onKeyDown(t)},onExit(){e[0].destroy(),n.destroy()}}}},Hf={name:"DtRichTextEditor",components:{EditorContent:Jh},props:{modelValue:{type:[Object,String],default:""},editable:{type:Boolean,default:!0},inputAriaLabel:{type:String,required:!0},inputClass:{type:String,default:""},autoFocus:{type:[Boolean,String,Number],default:!1,validator(n){return typeof n=="string"?js.includes(n):!0}},outputFormat:{type:String,default:"text",validator(n){return zs.includes(n)}},placeholder:{type:String,default:""},link:{type:[Boolean,Object],default:!1},mentionSuggestion:{type:Object,default:null}},emits:["input","update:modelValue","blur","focus"],data(){return{editor:null,popoverOpened:!1}},computed:{extensions(){const n=[Xh,Zh,ef,nf];if(this.link&&n.push(this.getExtension(Af,this.link)),n.push(tf.configure({placeholder:this.placeholder})),n.push(Qh.extend({addKeyboardShortcuts(){return{Enter:()=>!0,"Shift-Enter":()=>this.editor.commands.first(({commands:e})=>[()=>e.newlineInCode(),()=>e.createParagraphNear(),()=>e.liftEmptyBlock(),()=>e.splitBlock()])}}})),this.mentionSuggestion){const e={...this.mentionSuggestion,...jf};n.push(Lf.configure({suggestion:e}))}return n.push(wf),n},inputAttrs(){const n={"aria-label":this.inputAriaLabel,"aria-multiline":!0,role:"textbox"};return this.editable||(n["aria-readonly"]=!0),n}},watch:{editable(n){this.editor.setEditable(n),this.updateEditorAttributes({"aria-readonly":!n})},inputClass(n){this.updateEditorAttributes({class:n})},inputAriaLabel(n){this.updateEditorAttributes({"aria-label":n})},extensions(){this.destroyEditor(),this.createEditor()},modelValue(n){let e=this.getOutput();this.outputFormat==="json"&&(n=JSON.stringify(n),e=JSON.stringify(e)),n!==e&&this.editor.commands.setContent(n,!1)}},created(){this.createEditor()},beforeUnmount(){this.destroyEditor()},methods:{createEditor(){this.editor=new Wh({autofocus:this.autoFocus,content:this.modelValue,editable:this.editable,extensions:this.extensions,editorProps:{attributes:{...this.inputAttrs,class:this.inputClass}}}),this.addEditorListeners()},destroyEditor(){this.editor.destroy()},addEditorListeners(){this.editor.on("update",()=>{const n=this.getOutput();this.$emit("input",n),this.$emit("update:modelValue",n)}),this.editor.on("focus",({event:n})=>{this.$emit("focus",n)}),this.editor.on("blur",({event:n})=>{this.$emit("blur",n)})},getOutput(){switch(this.outputFormat){case"json":return this.editor.getJSON();case"html":return this.editor.getHTML();case"text":default:return this.editor.getText()}},getExtension(n,e){var t;return typeof e=="boolean"?n:(t=n.configure)==null?void 0:t.call(n,e)},updateEditorAttributes(n){this.editor.setOptions({editorProps:{attributes:n}})},focusEditor(){this.editor.commands.focus()}}};function $f(n,e,t,r,i,o){const s=h.resolveComponent("editor-content");return h.openBlock(),h.createBlock(s,{editor:i.editor,"data-qa":"dt-rich-text-editor"},null,8,["editor"])}const qf=O._export_sfc(Hf,[["render",$f]]),Kf={name:"DtRecipeMessageInput",components:{DtButton:R.DtButton,DtEmojiPicker:R._sfc_main,DtIcon:R.DtIcon,DtInput:R.DtInput,DtNotice:Gi,DtPopover:so,DtRichTextEditor:qf,DtTooltip:O.DtTooltip},mixins:[],inheritAttrs:!1,props:{modelValue:{type:[Object,String],default:""},editable:{type:Boolean,default:!0},inputAriaLabel:{type:String,required:!0,default:""},inputClass:{type:String,default:""},autoFocus:{type:[Boolean,String,Number],default:!1,validator(n){return typeof n=="string"?js.includes(n):!0}},outputFormat:{type:String,default:"text",validator(n){return zs.includes(n)}},link:{type:[Boolean,Object],default:!1},placeholder:{type:String,default:""},disableSend:{type:Boolean,default:!1},hasCharacterLimit:{type:Boolean,default:!0},characterLimitCount:{type:Number,default:1500},characterLimitWarning:{type:Number,default:500},characterLimitWarningMessage:{type:String,default:""},showNotice:{type:Boolean,default:!1},noticeMessage:{type:String,default:""},noticeKind:{type:String,default:"error",validate(n){return Yt.includes(n)}},maxHeight:{type:String,default:"unset"},emojiTabSetLabels:{type:Array,default:()=>["Most recently used","Smileys and people","Nature","Food","Activity","Travel","Objects","Symbols","Flags"]},emojiSkinSelectorButtonTooltipLabel:{type:String,default:"Change default skin tone"},emojiSearchNoResultsLabel:{type:String,default:"No results"},emojiSearchResultsLabel:{type:String,default:"Search results"},emojiSearchPlaceholderLabel:{type:String,default:"Search..."},emojiTooltipMessage:{type:String,default:"Emoji"},emojiButtonAriaLabel:{type:String,default:"emoji button"},imageButtonAriaLabel:{type:String,default:"image button"},imageTooltipLabel:{type:String,default:"Attach Image"},sendButtonAriaLabel:{type:String,default:"send button"},sendTooltipLabel:{type:String,default:"Send"},isEdit:{type:Boolean,default:!1},saveChangesButtonText:{type:String,default:"Save changes"},cancelButtonAriaLabel:{type:String,default:"Cancel button"},cancelButtonText:{type:String,default:"Cancel"},skinTone:{type:String,default:"Default"}},emits:["submit","select-media","add-media","notice-close","cancel","skin-tone"],data(){return{internalInputValue:this.modelValue,hasFocus:!1,imagePickerFocus:!1,emojiPickerFocus:!1,sendButtonFocus:!1,emojiPickerOpened:!1}},computed:{inputLength(){return this.internalInputValue.length},displayCharacterLimitWarning(){return this.hasCharacterLimit&&this.characterLimitCount-this.inputLength<=this.characterLimitWarning},isSendDisabled(){return this.inputLength===0||this.disableSend||this.hasCharacterLimit&&this.inputLength>this.characterLimitCount},computedCloseButtonProps(){return{ariaLabel:"Close"}},noticeClasses(){return["dt-message-input-notice","d-ps-relative","d-t8","d-bbr0","d-pt4","d-pb8","d-pr12","d-pl16","d-bs-none","d-fs-100","d-wmx-unset"]},emojiPickerHovered(){return this.emojiPickerFocus||this.emojiPickerOpened},sendButtonKind(){return this.isSendDisabled?"muted":"default"}},watch:{modelValue(n){this.internalInputValue=n}},methods:{onDrag(n){n.stopPropagation(),n.preventDefault()},onDrop(n){n.stopPropagation(),n.preventDefault();const e=n.dataTransfer,r=Array.from(e.files).map(i=>i.name);this.$emit("add-media",r)},onSkinTone(n){this.$emit("skin-tone",n)},onSelectEmoji(n){if(!n){this.emojiPickerOpened=!1;return}this.$refs.richTextEditor.editor.commands.insertContent({type:"emoji",attrs:{code:n.shortname}}),this.emojiPickerOpened=!1},onSelectImage(){this.$refs.messageInputImageUpload.$refs.input.click()},onImageUpload(n){this.$emit("select-media",n)},toggleEmojiPicker(){this.emojiPickerOpened=!this.emojiPickerOpened},onSend(){this.isSendDisabled||this.$emit("submit",this.internalInputValue)},onCancel(){this.$emit("cancel")},noticeClose(){this.$emit("notice-close",!0)},focus(){this.$refs.richTextEditor.focusEditor(),this.hasFocus=!0}}},Wf={class:"d-ps-relative d-bar8 d-bgc-white"},Jf={class:"d-d-flex d-jc-space-between d-mx8 d-my4"},Uf={class:"d-d-flex"},Gf={class:"d-d-flex"},Yf={key:0,class:"d-fc-error d-mr16 d-as-center dt-message-input--remaining-char","data-qa":"dt-message-input-character-limit"},Xf={key:0},Zf={key:0,class:"d-d-flex d-jc-space-between d-h24 d-ai-center"},Qf={"data-qa":"dt-message-input-footer-left"},ep={"data-qa":"dt-message-input-footer-right"};function tp(n,e,t,r,i,o){const s=h.resolveComponent("dt-icon"),l=h.resolveComponent("dt-notice"),a=h.resolveComponent("dt-rich-text-editor"),c=h.resolveComponent("dt-button"),d=h.resolveComponent("dt-input"),u=h.resolveComponent("dt-tooltip"),f=h.resolveComponent("dt-emoji-picker"),p=h.resolveComponent("dt-popover");return h.openBlock(),h.createElementBlock(h.Fragment,null,[t.showNotice?(h.openBlock(),h.createBlock(l,{key:0,"data-qa":"dt-message-input-error-notice",class:h.normalizeClass(o.noticeClasses),kind:t.noticeKind,"close-button-props":o.computedCloseButtonProps,onClose:o.noticeClose},{icon:h.withCtx(()=>[h.createVNode(s,{size:"300",name:"alert-circle"})]),default:h.withCtx(()=>[h.createTextVNode(h.toDisplayString(t.noticeMessage)+" ",1)]),_:1},8,["class","kind","close-button-props","onClose"])):h.createCommentVNode("",!0),h.createElementVNode("div",Wf,[h.createElementVNode("div",{"data-qa":"dt-message-input",role:"presentation",class:h.normalizeClass(["d-d-flex d-fd-column d-bar8 d-baw1 d-ba d-c-text",{"d-bc-black-500 d-bs-sm":i.hasFocus,"d-bc-default":!i.hasFocus}]),onClick:e[16]||(e[16]=m=>n.$refs.richTextEditor.focusEditor()),onDragEnter:e[17]||(e[17]=(...m)=>o.onDrag&&o.onDrag(...m)),onDragOver:e[18]||(e[18]=(...m)=>o.onDrag&&o.onDrag(...m)),onDrop:e[19]||(e[19]=(...m)=>o.onDrop&&o.onDrop(...m)),onKeydown:e[20]||(e[20]=h.withKeys(h.withModifiers((...m)=>o.onSend&&o.onSend(...m),["exact"]),["enter"])),onFocusin:e[21]||(e[21]=m=>i.hasFocus=!0),onFocusout:e[22]||(e[22]=m=>i.hasFocus=!1)},[h.createElementVNode("div",{class:"d-of-auto d-mx16 d-mt8 d-mb4",style:h.normalizeStyle({"max-height":t.maxHeight})},[h.createVNode(a,h.mergeProps({ref:"richTextEditor",modelValue:i.internalInputValue,"onUpdate:modelValue":e[0]||(e[0]=m=>i.internalInputValue=m),editable:t.editable,"input-aria-label":t.inputAriaLabel,"input-class":t.inputClass,"output-format":t.outputFormat,"auto-focus":t.autoFocus,link:t.link,placeholder:t.placeholder},n.$attrs,{onFocus:e[1]||(e[1]=m=>i.hasFocus=!0),onBlur:e[2]||(e[2]=m=>i.hasFocus=!1)}),null,16,["modelValue","editable","input-aria-label","input-class","output-format","auto-focus","link","placeholder"])],4),h.renderSlot(n.$slots,"middle"),h.createElementVNode("section",Jf,[h.createElementVNode("div",Uf,[t.isEdit?h.createCommentVNode("",!0):(h.openBlock(),h.createBlock(u,{key:0,placement:"top-start",message:t.imageTooltipLabel,offset:[-4,-4]},{anchor:h.withCtx(()=>[h.createVNode(c,{"data-qa":"dt-message-input-image-btn",size:"sm",circle:"",kind:i.imagePickerFocus?"default":"muted",importance:"clear","aria-label":t.imageButtonAriaLabel,onClick:o.onSelectImage,onMouseenter:e[3]||(e[3]=m=>i.imagePickerFocus=!0),onMouseleave:e[4]||(e[4]=m=>i.imagePickerFocus=!1),onFocusin:e[5]||(e[5]=m=>i.imagePickerFocus=!0),onFocusout:e[6]||(e[6]=m=>i.imagePickerFocus=!1)},{icon:h.withCtx(()=>[h.createVNode(s,{name:"image",size:"300"})]),_:1},8,["kind","aria-label","onClick"]),h.createVNode(d,{ref:"messageInputImageUpload","data-qa":"dt-message-input-image-input",type:"file",class:"d-ps-absolute",multiple:"",hidden:"",onInput:o.onImageUpload},null,8,["onInput"])]),_:1},8,["message"])),h.createVNode(p,{"data-qa":"dt-message-input-emoji-picker-popover",open:i.emojiPickerOpened,"initial-focus-element":"#searchInput",padding:"none",onOpened:e[11]||(e[11]=m=>{i.emojiPickerOpened=m})},{anchor:h.withCtx(()=>[h.createVNode(u,{message:t.emojiTooltipMessage,offset:[0,-4]},{anchor:h.withCtx(()=>[h.createVNode(c,{"data-qa":"dt-message-input-emoji-picker-btn",size:"sm",circle:"",kind:o.emojiPickerHovered?"default":"muted",importance:"clear","aria-label":t.emojiButtonAriaLabel,offset:[0,0],onClick:o.toggleEmojiPicker,onMouseenter:e[7]||(e[7]=m=>i.emojiPickerFocus=!0),onMouseleave:e[8]||(e[8]=m=>i.emojiPickerFocus=!1),onFocusin:e[9]||(e[9]=m=>i.emojiPickerFocus=!0),onFocusout:e[10]||(e[10]=m=>i.emojiPickerFocus=!1)},{icon:h.withCtx(()=>[h.createVNode(s,{name:o.emojiPickerHovered?"very-satisfied":"satisfied",size:"300"},null,8,["name"])]),_:1},8,["kind","aria-label","onClick"])]),_:1},8,["message"])]),content:h.withCtx(()=>[h.createVNode(f,{"tab-set-labels":t.emojiTabSetLabels,"skin-selector-button-tooltip-label":t.emojiSkinSelectorButtonTooltipLabel,"search-no-results-label":t.emojiSearchNoResultsLabel,"search-results-label":t.emojiSearchResultsLabel,"search-placeholder-label":t.emojiSearchPlaceholderLabel,"skin-tone":t.skinTone,onSkinTone:o.onSkinTone,onSelectedEmoji:o.onSelectEmoji},null,8,["tab-set-labels","skin-selector-button-tooltip-label","search-no-results-label","search-results-label","search-placeholder-label","skin-tone","onSkinTone","onSelectedEmoji"])]),_:1},8,["open"])]),h.createElementVNode("div",Gf,[o.displayCharacterLimitWarning?(h.openBlock(),h.createBlock(u,{key:0,enabled:t.characterLimitWarningMessage&&t.characterLimitCount-o.inputLength<0,placement:"top-end",message:t.characterLimitWarningMessage,offset:[10,-8]},{anchor:h.withCtx(()=>[o.displayCharacterLimitWarning?(h.openBlock(),h.createElementBlock("p",Yf,h.toDisplayString(t.characterLimitCount-o.inputLength),1)):h.createCommentVNode("",!0)]),_:1},8,["enabled","message"])):h.createCommentVNode("",!0),t.isEdit?(h.openBlock(),h.createBlock(c,{key:1,"data-qa":"dt-message-input-cancel-button",class:"dt-message-input--cancel-button",size:"sm",kind:"muted",importance:"clear","aria-label":t.cancelButtonAriaLabel,onClick:o.onCancel},{default:h.withCtx(()=>[h.createElementVNode("p",null,h.toDisplayString(t.cancelButtonText),1)]),_:1},8,["aria-label","onClick"])):h.createCommentVNode("",!0),h.createVNode(u,{placement:"top-end",enabled:!t.isEdit,message:t.sendTooltipLabel,show:!o.isSendDisabled&&i.sendButtonFocus,offset:[6,-8]},{anchor:h.withCtx(()=>[h.createVNode(c,{"data-qa":"dt-message-input-send-btn",size:"sm",kind:o.sendButtonKind,circle:!t.isEdit,importance:"primary",class:h.normalizeClass({"message-input-button__disabled d-fc-muted":o.isSendDisabled}),"aria-label":t.sendButtonAriaLabel,"aria-disabled":o.isSendDisabled,onClick:o.onSend,onMouseenter:e[12]||(e[12]=m=>i.sendButtonFocus=!0),onMouseleave:e[13]||(e[13]=m=>i.sendButtonFocus=!1),onFocusin:e[14]||(e[14]=m=>i.sendButtonFocus=!0),onFocusout:e[15]||(e[15]=m=>i.sendButtonFocus=!1)},h.createSlots({default:h.withCtx(()=>[t.isEdit?(h.openBlock(),h.createElementBlock("p",Xf,h.toDisplayString(t.saveChangesButtonText),1)):h.createCommentVNode("",!0)]),_:2},[t.isEdit?void 0:{name:"icon",fn:h.withCtx(()=>[h.createVNode(s,{name:"send",size:"300"})]),key:"0"}]),1032,["kind","circle","class","aria-label","aria-disabled","onClick"])]),_:1},8,["enabled","message","show"])])])],34),t.isEdit?h.createCommentVNode("",!0):(h.openBlock(),h.createElementBlock("section",Zf,[h.createElementVNode("div",Qf,[h.renderSlot(n.$slots,"footerLeft")]),h.createElementVNode("div",ep,[h.renderSlot(n.$slots,"footerRight")])]))])],64)}const np=O._export_sfc(Kf,[["render",tp]]);exports.AVATAR_COLORS=$i;exports.AVATAR_GROUP_VALIDATOR=Ln;exports.AVATAR_ICON_SIZES=Hi;exports.AVATAR_KIND_MODIFIERS=zi;exports.AVATAR_PRESENCE_SIZE_MODIFIERS=ji;exports.AVATAR_PRESENCE_STATES=_n;exports.AVATAR_SIZE_MODIFIERS=Bt;exports.DT_STACK_GAP=Zt;exports.DtAvatar=qi;exports.DtItemLayout=Fn;exports.DtLink=Zi;exports.DtListItem=Qi;exports.DtNotice=Gi;exports.DtNoticeAction=Ui;exports.DtNoticeContent=Ji;exports.DtNoticeIcon=Wi;exports.DtPopover=so;exports.DtPresence=Vi;exports.DtStack=sr;exports.LIST_ITEM_NAVIGATION_TYPES=ht;exports.Modal=Xi;exports.NOTICE_KINDS=Yt;exports.NOTICE_ROLES=Ki;exports.POPOVER_APPEND_TO_VALUES=oo;exports.POPOVER_CONTENT_WIDTHS=ro;exports.POPOVER_HEADER_FOOTER_PADDING_CLASSES=to;exports.POPOVER_INITIAL_FOCUS_STRINGS=io;exports.POPOVER_PADDING_CLASSES=Vn;exports.POPOVER_ROLES=no;exports.PRESENCE_STATES=Ge;exports.PRESENCE_STATES_LIST=Fi;exports.SrOnlyCloseButton=or;exports.SrOnlyCloseButtonMixin=Xt;exports.message_input=np;
|
|
93
|
+
`},addCommands(){return{setHardBreak:()=>({commands:n,chain:e,state:t,editor:r})=>n.first([()=>n.exitCode(),()=>n.command(()=>{const{selection:i,storedMarks:o}=t;if(i.$from.parent.type.spec.isolating)return!1;const{keepMarks:s}=this.options,{splittableMarks:l}=r.extensionManager,a=o||i.$to.parentOffset&&i.$from.marks();return e().insertContent({type:this.name}).command(({tr:c,dispatch:d})=>{if(d&&a&&s){const u=a.filter(f=>l.includes(f.type.name));c.ensureMarks(u)}return!0}).run()})])}},addKeyboardShortcuts(){return{"Mod-Enter":()=>this.editor.commands.setHardBreak(),"Shift-Enter":()=>this.editor.commands.setHardBreak()}}}),ef=pe.create({name:"paragraph",priority:1e3,addOptions(){return{HTMLAttributes:{}}},group:"block",content:"inline*",parseHTML(){return[{tag:"p"}]},renderHTML({HTMLAttributes:n}){return["p",Ne(this.options.HTMLAttributes,n),0]},addCommands(){return{setParagraph:()=>({commands:n})=>n.setNode(this.name)}},addKeyboardShortcuts(){return{"Mod-Alt-0":()=>this.editor.commands.setParagraph()}}}),tf=ie.create({name:"placeholder",addOptions(){return{emptyEditorClass:"is-editor-empty",emptyNodeClass:"is-empty",placeholder:"Write something …",showOnlyWhenEditable:!0,showOnlyCurrent:!0,includeChildren:!1}},addProseMirrorPlugins(){return[new X({key:new ee("placeholder"),props:{decorations:({doc:n,selection:e})=>{const t=this.editor.isEditable||!this.options.showOnlyWhenEditable,{anchor:r}=e,i=[];if(!t)return null;const o=n.type.createAndFill(),s=(o==null?void 0:o.sameMarkup(n))&&o.content.findDiffStart(n.content)===null;return n.descendants((l,a)=>{const c=r>=a&&r<=a+l.nodeSize,d=!l.isLeaf&&!l.childCount;if((c||!this.options.showOnlyCurrent)&&d){const u=[this.options.emptyNodeClass];s&&u.push(this.options.emptyEditorClass);const f=Q.node(a,a+l.nodeSize,{class:u.join(" "),"data-placeholder":typeof this.options.placeholder=="function"?this.options.placeholder({editor:this.editor,node:l,pos:a,hasAnchor:c}):this.options.placeholder});i.push(f)}return this.options.includeChildren}),L.create(n,i)}}})]}}),nf=pe.create({name:"text",group:"inline"}),rf={name:"EmojiComponent",components:{NodeViewWrapper:Rs,DtEmoji:R.DtEmoji},props:_s};function of(n,e,t,r,i,o){const s=h.resolveComponent("dt-emoji"),l=h.resolveComponent("node-view-wrapper");return h.openBlock(),h.createBlock(l,{class:"d-d-inline-block"},{default:h.withCtx(()=>[h.createVNode(s,{size:"300",code:n.node.attrs.code},null,8,["code"])]),_:1})}const sf=O._export_sfc(rf,[["render",of]]);function lf(n){var e;const{char:t,allowSpaces:r,allowedPrefixes:i,startOfLine:o,$position:s}=n,l=$h(t),a=new RegExp(`\\s${l}$`),c=o?"^":"",d=r?new RegExp(`${c}${l}.*?(?=\\s${l}|$)`,"gm"):new RegExp(`${c}(?:^)?${l}[^\\s${l}]*`,"gm"),u=((e=s.nodeBefore)===null||e===void 0?void 0:e.isText)&&s.nodeBefore.text;if(!u)return null;const f=s.pos-u.length,p=Array.from(u.matchAll(d)).pop();if(!p||p.input===void 0||p.index===void 0)return null;const m=p.input.slice(Math.max(0,p.index-1),p.index),g=new RegExp(`^[${i==null?void 0:i.join("")}\0]?$`).test(m);if(i!==null&&!g)return null;const y=f+p.index;let b=y+p[0].length;return r&&a.test(u.slice(b-1,b+1))&&(p[0]+=" ",b+=1),y<s.pos&&b>=s.pos?{range:{from:y,to:b},query:p[0].slice(t.length),text:p[0]}:null}const af=new ee("suggestion");function Fs({pluginKey:n=af,editor:e,char:t="@",allowSpaces:r=!1,allowedPrefixes:i=[" "],startOfLine:o=!1,decorationTag:s="span",decorationClass:l="suggestion",command:a=()=>null,items:c=()=>[],render:d=()=>({}),allow:u=()=>!0}){let f;const p=d==null?void 0:d(),m=new X({key:n,view(){return{update:async(g,y)=>{var b,w,E,I,N,A,B;const C=(b=this.key)===null||b===void 0?void 0:b.getState(y),_=(w=this.key)===null||w===void 0?void 0:w.getState(g.state),ae=C.active&&_.active&&C.range.from!==_.range.from,Nt=!C.active&&_.active,vr=C.active&&!_.active,Hs=!Nt&&!vr&&C.query!==_.query,at=Nt||ae,Dt=Hs&&!ae,hn=vr||ae;if(!at&&!Dt&&!hn)return;const Ke=hn&&!at?C:_,Er=g.dom.querySelector(`[data-decoration-id="${Ke.decorationId}"]`);f={editor:e,range:Ke.range,query:Ke.query,text:Ke.text,items:[],command:ct=>{a({editor:e,range:Ke.range,props:ct})},decorationNode:Er,clientRect:Er?()=>{var ct;const{decorationId:$s}=(ct=this.key)===null||ct===void 0?void 0:ct.getState(e.state),fn=g.dom.querySelector(`[data-decoration-id="${$s}"]`);return(fn==null?void 0:fn.getBoundingClientRect())||null}:null},at&&((E=p==null?void 0:p.onBeforeStart)===null||E===void 0||E.call(p,f)),Dt&&((I=p==null?void 0:p.onBeforeUpdate)===null||I===void 0||I.call(p,f)),(Dt||at)&&(f.items=await c({editor:e,query:Ke.query})),hn&&((N=p==null?void 0:p.onExit)===null||N===void 0||N.call(p,f)),Dt&&((A=p==null?void 0:p.onUpdate)===null||A===void 0||A.call(p,f)),at&&((B=p==null?void 0:p.onStart)===null||B===void 0||B.call(p,f))},destroy:()=>{var g;f&&((g=p==null?void 0:p.onExit)===null||g===void 0||g.call(p,f))}}},state:{init(){return{active:!1,range:{from:0,to:0},query:null,text:null,composing:!1}},apply(g,y,b,w){const{isEditable:E}=e,{composing:I}=e.view,{selection:N}=g,{empty:A,from:B}=N,C={...y};if(C.composing=I,E&&(A||e.view.composing)){(B<y.range.from||B>y.range.to)&&!I&&!y.composing&&(C.active=!1);const _=lf({char:t,allowSpaces:r,allowedPrefixes:i,startOfLine:o,$position:N.$from}),ae=`id_${Math.floor(Math.random()*4294967295)}`;_&&u({editor:e,state:w,range:_.range})?(C.active=!0,C.decorationId=y.decorationId?y.decorationId:ae,C.range=_.range,C.query=_.query,C.text=_.text):C.active=!1}else C.active=!1;return C.active||(C.decorationId=null,C.range={from:0,to:0},C.query=null,C.text=null),C}},props:{handleKeyDown(g,y){var b;const{active:w,range:E}=m.getState(g.state);return w&&((b=p==null?void 0:p.onKeyDown)===null||b===void 0?void 0:b.call(p,{view:g,event:y,range:E}))||!1},decorations(g){const{active:y,range:b,decorationId:w}=m.getState(g);return y?L.create(g.doc,[Q.inline(b.from,b.to,{nodeName:s,class:l,"data-decoration-id":w})]):null}}});return m}const cf={name:"SuggestionList",components:{DtListItem:Qi},props:{items:{type:Array,required:!0},command:{type:Function,required:!0},itemComponent:{type:Object,required:!0},itemType:{type:String,required:!0}},data(){return{selectedIndex:0}},watch:{items(){this.selectedIndex=0}},methods:{onKeyDown({event:n}){return n.key==="ArrowUp"?(this.upHandler(),!0):n.key==="ArrowDown"?(this.downHandler(),!0):n.key==="Enter"?(this.enterHandler(),n.stopPropagation(),!0):!1},upHandler(){this.selectedIndex=(this.selectedIndex+this.items.length-1)%this.items.length,this.scrollActiveElementIntoView()},downHandler(){this.selectedIndex=(this.selectedIndex+1)%this.items.length,this.scrollActiveElementIntoView()},scrollActiveElementIntoView(){const n=this.$refs.suggestionList.querySelector(".dt-list-item--highlighted");n&&n.scrollIntoView({behaviour:"smooth",block:"center"})},enterHandler(){this.selectItem(this.selectedIndex)},selectItem(n){const e=this.items[n];switch(this.itemType){case"emoji":this.command(e);return;case"mention":this.command({name:e.name,id:e.contactId,avatarSrc:e.avatarSrc});break}}}},df={class:"d-popover__dialog"},uf={ref:"suggestionList",class:"dt-suggestion-list"};function hf(n,e,t,r,i,o){const s=h.resolveComponent("dt-list-item");return h.openBlock(),h.createElementBlock("div",df,[h.withDirectives(h.createElementVNode("ul",uf,[(h.openBlock(!0),h.createElementBlock(h.Fragment,null,h.renderList(t.items,(l,a)=>(h.openBlock(),h.createBlock(s,{key:l.id,class:h.normalizeClass(["dt-suggestion-list--item",{"dt-list-item--highlighted":a===i.selectedIndex}]),"navigation-type":"arrow-keys",onClick:c=>o.selectItem(a),onKeydown:h.withModifiers(o.onKeyDown,["prevent","stop"])},{default:h.withCtx(()=>[(h.openBlock(),h.createBlock(h.resolveDynamicComponent(t.itemComponent),{item:l},null,8,["item"]))]),_:2},1032,["class","onClick","onKeydown"]))),128))],512),[[h.vShow,t.items.length]])])}const Vs=O._export_sfc(cf,[["render",hf]]),ff={name:"EmojiSuggestion",components:{DtEmoji:R.DtEmoji,DtStack:sr},props:{item:{type:Object,required:!0}}};function pf(n,e,t,r,i,o){const s=h.resolveComponent("dt-emoji"),l=h.resolveComponent("dt-stack");return h.openBlock(),h.createBlock(l,{direction:"row",gap:"400"},{default:h.withCtx(()=>[h.createVNode(s,{size:"200",code:t.item.code},null,8,["code"]),h.createTextVNode(" "+h.toDisplayString(t.item.code),1)]),_:1})}const mf=O._export_sfc(ff,[["render",pf]]),gf={items:({query:n})=>n.length<2?[]:Object.values(R.emojisIndexed).filter(function(r){return!!r.shortname.substring(1,r.shortname.length-1).startsWith(n.toLowerCase())}).map(r=>({id:r.unicode_character,code:r.shortname})),command:({editor:n,range:e,props:t})=>{var o,s;const r=n.view.state.selection.$to.nodeAfter;((o=r==null?void 0:r.text)==null?void 0:o.startsWith(" "))&&(e.to+=1),n.chain().focus().insertContentAt(e,[{type:"emoji",attrs:t},{type:"text",text:" "}]).run(),(s=window.getSelection())==null||s.collapseToEnd()},render:()=>{let n,e;return{onStart:t=>{n=new wr(Vs,{props:{itemComponent:h.markRaw(mf),itemType:"emoji",...t},editor:t.editor}),t.clientRect&&(e=O.tippy("body",{getReferenceClientRect:t.clientRect,appendTo:()=>document.body,content:n.element,showOnCreate:!0,interactive:!0,trigger:"manual",placement:"bottom-start",contentElement:null,zIndex:650}))},onUpdate(t){n.updateProps(t),t.clientRect&&e[0].setProps({getReferenceClientRect:t.clientRect})},onKeyDown(t){var r;return t.event.key==="Escape"?(e[0].hide(),!0):(r=n.ref)==null?void 0:r.onKeyDown(t)},onExit(){e[0].destroy(),n.destroy()}}}},yf=new ee("emoji"),bf=/:\w+:$/,kf=/:\w+:/g,Sf=/(\u00a9|\u00ae|[\u2000-\u3300]|\ud83c[\ud000-\udfff]|\ud83d[\ud000-\udfff]|\ud83e[\ud000-\udfff])$/,Cf=/(\u00a9|\u00ae|[\u2000-\u3300]|\ud83c[\ud000-\udfff]|\ud83d[\ud000-\udfff]|\ud83e[\ud000-\udfff])/g,Ri=n=>{if(n&&R.codeToEmojiData(n[0]))return{index:n.index,text:n[0],match:n}},xf=n=>[...n.matchAll(kf)].filter(t=>R.codeToEmojiData(t[0])).map(t=>({index:t.index,text:t[0],match:t})),wf=pe.create({addOptions(){return{HTMLAttributes:{},suggestion:{char:":",pluginKey:yf}}},name:"emoji",group:"inline",inline:!0,selectable:!0,addNodeView(){return Ls(sf)},addAttributes(){return{code:{default:null},id:{default:null}}},parseHTML(){return[{tag:"emoji-component"}]},renderText({node:n}){return n.attrs.code},renderHTML({HTMLAttributes:n}){return["emoji-component",Ne(this.options.HTMLAttributes,n),0]},addInputRules(){return[Ai({find:n=>{const e=n.match(bf);return Ri(e)},type:this.type,getAttributes(n){return{code:n[0]}}}),Ai({find:n=>{const e=n.match(Sf);return Ri(e)},type:this.type,getAttributes(n){const e=R.shortcodeToEmojiData(n[0]).unicode_output;return{code:String.fromCodePoint(parseInt(e,16)),label:"emoji"}}})]},addPasteRules(){return[Pi({find:xf,type:this.type,getAttributes(n){return{code:n[0]}}}),Pi({find:Cf,type:this.type,getAttributes(n){return{code:n[0]}}})]},addProseMirrorPlugins(){return[Fs({editor:this.editor,...this.options.suggestion,...gf})]}});function vf(n,e,t=()=>!0){const r=[];e.lastIndex=0;let i;for(;i=e.exec(n);)t(n,i)&&r.push(i);return r}function Ef(n,e){return!["#","@"].includes(n.charAt(e.index))&&!["#","@"].includes(n.charAt(e.index-1))}function Of(n){const e=new RegExp("(?:"+[`[!?.,:;'"]`,"(?:&|&)(?:lt|gt|quot|apos|raquo|laquo|rsaquo|lsaquo);)+$"].join("|"),"g");return n.replace(e,"")}function Mf(n,e){const t=n.slice(0,e+1).search(/\S+\s*$/),r=n.slice(e).search(/\s/);if(r<0){const i=n.slice(t);return{text:i,from:t,to:t+i.length}}return{text:n.slice(t,r+e),from:t,to:r+e}}function ir(n,e,t,r){const i=Mf(n,e);if(r.lastIndex=0,!r.test(i.text))return i;const o=t==="left"?i.from-1:i.to+1;return o<=0||o>=n.length||o===e?i:ir(n,o,t,r)}function Tf(n,e,t,r){const i=Math.max(n.from-1,0),o=Math.min(n.to+1,e.content.size),s=ch(i,o,e);for(const l of s)l.mark.type===r&&t.removeMark(l.from,l.to,r)}const _i=O.getPhoneNumberRegex(1,15);function Li(n,e,t,r,i,o){if(!n)return;let s=t-e-1;s=s<0?0:s;const l=r-e,a=ir(n,s,"left",_i),c=ir(n,l,"right",_i),d=n.slice(a.from,c.to);vf(d,O.linkRegex,Ef).forEach(f=>{const p=Of(f[0]),m=e+a.from+f.index+1,g=m+p.length;i.addMark(m,g,o.create())})}function Nf(n){let e=!1;return new X({key:new ee("autolink"),appendTransaction:(t,r,i)=>{const o=t.some(d=>d.docChanged)&&!r.doc.eq(i.doc);if(e&&!o)return;const{tr:s}=i,{textContent:l}=i.doc;e||Li(l,0,0,l.length,s,n.type),e=!0;const a=Zu(r.doc,[...t]);return ah(a).forEach(({oldRange:d,newRange:u})=>{Tf(u,i.doc,s,n.type),eh(i.doc,u,p=>p.isTextblock).forEach(({node:p,pos:m})=>{Li(p.textContent,m,d.from,u.to,s,n.type)})}),s}})}const Df={class:"d-link d-c-text d-d-inline-block",rel:"noopener noreferrer nofollow"},Af=Mt.create({name:"Link",renderHTML({HTMLAttributes:n}){return["a",Ne(this.options.HTMLAttributes,n,Df),0]},renderText({node:n}){return n.attrs.text},addProseMirrorPlugins(){return[Nf({type:this.type})]}}),If=new ee("mention"),Pf=pe.create({name:"mention",addOptions(){return{HTMLAttributes:{},renderLabel({options:n,node:e}){var t;return`${n.suggestion.char}${(t=e.attrs.label)!==null&&t!==void 0?t:e.attrs.id}`},suggestion:{char:"@",pluginKey:If,command:({editor:n,range:e,props:t})=>{var r,i;const o=n.view.state.selection.$to.nodeAfter;((r=o==null?void 0:o.text)===null||r===void 0?void 0:r.startsWith(" "))&&(e.to+=1),n.chain().focus().insertContentAt(e,[{type:this.name,attrs:t},{type:"text",text:" "}]).run(),(i=window.getSelection())===null||i===void 0||i.collapseToEnd()},allow:({state:n,range:e})=>{const t=n.doc.resolve(e.from),r=n.schema.nodes[this.name];return!!t.parent.type.contentMatch.matchType(r)}}}},group:"inline",inline:!0,selectable:!1,atom:!0,addAttributes(){return{id:{default:null,parseHTML:n=>n.getAttribute("data-id"),renderHTML:n=>n.id?{"data-id":n.id}:{}},label:{default:null,parseHTML:n=>n.getAttribute("data-label"),renderHTML:n=>n.label?{"data-label":n.label}:{}}}},parseHTML(){return[{tag:`span[data-type="${this.name}"]`}]},renderHTML({node:n,HTMLAttributes:e}){return["span",Ne({"data-type":this.name},this.options.HTMLAttributes,e),this.options.renderLabel({options:this.options,node:n})]},renderText({node:n}){return this.options.renderLabel({options:this.options,node:n})},addKeyboardShortcuts(){return{Backspace:()=>this.editor.commands.command(({tr:n,state:e})=>{let t=!1;const{selection:r}=e,{empty:i,anchor:o}=r;return i?(e.doc.nodesBetween(o-1,o,(s,l)=>{if(s.type.name===this.name)return t=!0,n.insertText(this.options.suggestion.char||"",l,l+s.nodeSize),!1}),t):!1})}},addProseMirrorPlugins(){return[Fs({editor:this.editor,...this.options.suggestion})]}}),Bf={name:"MentionComponent",components:{NodeViewWrapper:Rs,DtLink:Zi},props:_s,computed:{text(){return"@"+this.$props.node.attrs.name}}};function Rf(n,e,t,r,i,o){const s=h.resolveComponent("dt-link"),l=h.resolveComponent("node-view-wrapper");return h.openBlock(),h.createBlock(l,{class:"d-d-inline-block"},{default:h.withCtx(()=>[h.createVNode(s,{kind:"inverted",class:"dt-link--mention",href:null},{default:h.withCtx(()=>[h.createTextVNode(h.toDisplayString(o.text),1)]),_:1})]),_:1})}const _f=O._export_sfc(Bf,[["render",Rf]]),Lf=Pf.extend({addNodeView(){return Ls(_f)},parseHTML(){return[{tag:"mention-component"}]},addAttributes(){return{name:{default:""},avatarSrc:{default:""},id:{default:""}}},renderText({node:n}){return"@ "+n.attrs.name},renderHTML({HTMLAttributes:n}){return["mention-component",Ne(this.options.HTMLAttributes,n),0]}}),zs=["text","json","html"],js=["start","end","all"],Ff={name:"MentionSuggestion",components:{DtAvatar:qi,DtStack:sr},props:{item:{type:Object,required:!0}},computed:{name(){return this.item.name},avatarSrc(){return this.item.avatarSrc}}};function Vf(n,e,t,r,i,o){const s=h.resolveComponent("dt-avatar"),l=h.resolveComponent("dt-stack");return h.openBlock(),h.createBlock(l,{direction:"row",gap:"400"},{default:h.withCtx(()=>[h.createVNode(s,{"full-name":o.name,"image-src":o.avatarSrc,size:"xs"},null,8,["full-name","image-src"]),h.createTextVNode(" "+h.toDisplayString(o.name),1)]),_:1})}const zf=O._export_sfc(Ff,[["render",Vf]]),jf={render:()=>{let n,e;return{onStart:t=>{n=new wr(Vs,{props:{itemComponent:h.markRaw(zf),itemType:"mention",...t},editor:t.editor}),t.clientRect&&(e=O.tippy("body",{getReferenceClientRect:t.clientRect,appendTo:()=>document.body,content:n.element,showOnCreate:!0,interactive:!0,trigger:"manual",placement:"bottom-start"}))},onUpdate(t){n.updateProps(t),t.clientRect&&e[0].setProps({getReferenceClientRect:t.clientRect})},onKeyDown(t){var r;return t.event.key==="Escape"?(e[0].hide(),!0):(r=n.ref)==null?void 0:r.onKeyDown(t)},onExit(){e[0].destroy(),n.destroy()}}}},Hf={name:"DtRichTextEditor",components:{EditorContent:Jh},props:{modelValue:{type:[Object,String],default:""},editable:{type:Boolean,default:!0},inputAriaLabel:{type:String,required:!0},inputClass:{type:String,default:""},autoFocus:{type:[Boolean,String,Number],default:!1,validator(n){return typeof n=="string"?js.includes(n):!0}},outputFormat:{type:String,default:"text",validator(n){return zs.includes(n)}},placeholder:{type:String,default:""},link:{type:[Boolean,Object],default:!1},mentionSuggestion:{type:Object,default:null}},emits:["input","update:modelValue","blur","focus"],data(){return{editor:null,popoverOpened:!1}},computed:{extensions(){const n=[Xh,Zh,ef,nf];if(this.link&&n.push(this.getExtension(Af,this.link)),n.push(tf.configure({placeholder:this.placeholder})),n.push(Qh.extend({addKeyboardShortcuts(){return{Enter:()=>!0,"Shift-Enter":()=>this.editor.commands.first(({commands:e})=>[()=>e.newlineInCode(),()=>e.createParagraphNear(),()=>e.liftEmptyBlock(),()=>e.splitBlock()])}}})),this.mentionSuggestion){const e={...this.mentionSuggestion,...jf};n.push(Lf.configure({suggestion:e}))}return n.push(wf),n},inputAttrs(){const n={"aria-label":this.inputAriaLabel,"aria-multiline":!0,role:"textbox"};return this.editable||(n["aria-readonly"]=!0),n}},watch:{editable(n){this.editor.setEditable(n),this.updateEditorAttributes({"aria-readonly":!n})},inputClass(n){this.updateEditorAttributes({class:n})},inputAriaLabel(n){this.updateEditorAttributes({"aria-label":n})},extensions(){this.destroyEditor(),this.createEditor()},modelValue(n){let e=this.getOutput();this.outputFormat==="json"&&(n=JSON.stringify(n),e=JSON.stringify(e)),n!==e&&this.editor.commands.setContent(n,!1)}},created(){this.createEditor()},beforeUnmount(){this.destroyEditor()},methods:{createEditor(){this.editor=new Wh({autofocus:this.autoFocus,content:this.modelValue,editable:this.editable,extensions:this.extensions,editorProps:{attributes:{...this.inputAttrs,class:this.inputClass}}}),this.addEditorListeners()},destroyEditor(){this.editor.destroy()},addEditorListeners(){this.editor.on("update",()=>{const n=this.getOutput();this.$emit("input",n),this.$emit("update:modelValue",n)}),this.editor.on("focus",({event:n})=>{this.$emit("focus",n)}),this.editor.on("blur",({event:n})=>{this.$emit("blur",n)})},getOutput(){switch(this.outputFormat){case"json":return this.editor.getJSON();case"html":return this.editor.getHTML();case"text":default:return this.editor.getText()}},getExtension(n,e){var t;return typeof e=="boolean"?n:(t=n.configure)==null?void 0:t.call(n,e)},updateEditorAttributes(n){this.editor.setOptions({editorProps:{attributes:n}})},focusEditor(){this.editor.commands.focus()}}};function $f(n,e,t,r,i,o){const s=h.resolveComponent("editor-content");return h.openBlock(),h.createBlock(s,{editor:i.editor,"data-qa":"dt-rich-text-editor"},null,8,["editor"])}const qf=O._export_sfc(Hf,[["render",$f]]),Kf={name:"DtRecipeMessageInput",components:{DtButton:R.DtButton,DtEmojiPicker:R._sfc_main,DtIcon:R.DtIcon,DtInput:R.DtInput,DtNotice:Gi,DtPopover:so,DtRichTextEditor:qf,DtTooltip:O.DtTooltip},mixins:[],inheritAttrs:!1,props:{modelValue:{type:[Object,String],default:""},editable:{type:Boolean,default:!0},inputAriaLabel:{type:String,required:!0,default:""},inputClass:{type:String,default:""},autoFocus:{type:[Boolean,String,Number],default:!1,validator(n){return typeof n=="string"?js.includes(n):!0}},outputFormat:{type:String,default:"text",validator(n){return zs.includes(n)}},link:{type:[Boolean,Object],default:!1},placeholder:{type:String,default:""},disableSend:{type:Boolean,default:!1},hasCharacterLimit:{type:Boolean,default:!0},characterLimitCount:{type:Number,default:1500},characterLimitWarning:{type:Number,default:500},characterLimitWarningMessage:{type:String,default:""},showNotice:{type:Boolean,default:!1},noticeMessage:{type:String,default:""},noticeKind:{type:String,default:"error",validate(n){return Yt.includes(n)}},maxHeight:{type:String,default:"unset"},emojiPickerProps:{type:Object,default:()=>({}),validate(n){return["searchNoResultsLabel","searchResultsLabel","searchPlaceholderLabel","skinSelectorButtonTooltipLabel","tabSetLabels"].every(e=>n[e]!=null)}},emojiTooltipMessage:{type:String,default:"Emoji"},emojiButtonAriaLabel:{type:String,default:"emoji button"},imageButtonAriaLabel:{type:String,default:"image button"},imageTooltipLabel:{type:String,default:"Attach Image"},sendButtonAriaLabel:{type:String,default:"send button"},sendTooltipLabel:{type:String,default:"Send"},isEdit:{type:Boolean,default:!1},saveChangesButtonText:{type:String,default:"Save changes"},cancelButtonAriaLabel:{type:String,default:"Cancel button"},cancelButtonText:{type:String,default:"Cancel"}},emits:["submit","select-media","add-media","notice-close","cancel","skin-tone","selected-emoji"],data(){return{internalInputValue:this.modelValue,hasFocus:!1,imagePickerFocus:!1,emojiPickerFocus:!1,sendButtonFocus:!1,emojiPickerOpened:!1}},computed:{inputLength(){return this.internalInputValue.length},displayCharacterLimitWarning(){return this.hasCharacterLimit&&this.characterLimitCount-this.inputLength<=this.characterLimitWarning},isSendDisabled(){return this.inputLength===0||this.disableSend||this.hasCharacterLimit&&this.inputLength>this.characterLimitCount},computedCloseButtonProps(){return{ariaLabel:"Close"}},noticeClasses(){return["dt-message-input-notice","d-ps-relative","d-t8","d-bbr0","d-pt4","d-pb8","d-pr12","d-pl16","d-bs-none","d-fs-100","d-wmx-unset"]},emojiPickerHovered(){return this.emojiPickerFocus||this.emojiPickerOpened},sendButtonKind(){return this.isSendDisabled?"muted":"default"}},watch:{modelValue(n){this.internalInputValue=n}},methods:{onDrag(n){n.stopPropagation(),n.preventDefault()},onDrop(n){n.stopPropagation(),n.preventDefault();const e=n.dataTransfer,r=Array.from(e.files).map(i=>i.name);this.$emit("add-media",r)},onSkinTone(n){this.$emit("skin-tone",n)},onSelectEmoji(n){if(!n){this.emojiPickerOpened=!1;return}this.$refs.richTextEditor.editor.commands.insertContent({type:"emoji",attrs:{code:n.shortname}}),this.emojiPickerOpened=!1,this.$emit("selected-emoji",n)},onSelectImage(){this.$refs.messageInputImageUpload.$refs.input.click()},onImageUpload(n){this.$emit("select-media",n)},toggleEmojiPicker(){this.emojiPickerOpened=!this.emojiPickerOpened},onSend(){this.isSendDisabled||this.$emit("submit",this.internalInputValue)},onCancel(){this.$emit("cancel")},noticeClose(){this.$emit("notice-close",!0)},focus(){this.$refs.richTextEditor.focusEditor(),this.hasFocus=!0}}},Wf={class:"d-ps-relative d-bar8 d-bgc-white"},Jf={class:"d-d-flex d-jc-space-between d-mx8 d-my4"},Uf={class:"d-d-flex"},Gf={class:"d-d-flex"},Yf={key:0,class:"d-fc-error d-mr16 d-as-center dt-message-input--remaining-char","data-qa":"dt-message-input-character-limit"},Xf={key:0},Zf={key:0,class:"d-d-flex d-jc-space-between d-h24 d-ai-center"},Qf={"data-qa":"dt-message-input-footer-left"},ep={"data-qa":"dt-message-input-footer-right"};function tp(n,e,t,r,i,o){const s=h.resolveComponent("dt-icon"),l=h.resolveComponent("dt-notice"),a=h.resolveComponent("dt-rich-text-editor"),c=h.resolveComponent("dt-button"),d=h.resolveComponent("dt-input"),u=h.resolveComponent("dt-tooltip"),f=h.resolveComponent("dt-emoji-picker"),p=h.resolveComponent("dt-popover");return h.openBlock(),h.createElementBlock(h.Fragment,null,[t.showNotice?(h.openBlock(),h.createBlock(l,{key:0,"data-qa":"dt-message-input-error-notice",class:h.normalizeClass(o.noticeClasses),kind:t.noticeKind,"close-button-props":o.computedCloseButtonProps,onClose:o.noticeClose},{icon:h.withCtx(()=>[h.createVNode(s,{size:"300",name:"alert-circle"})]),default:h.withCtx(()=>[h.createTextVNode(h.toDisplayString(t.noticeMessage)+" ",1)]),_:1},8,["class","kind","close-button-props","onClose"])):h.createCommentVNode("",!0),h.createElementVNode("div",Wf,[h.createElementVNode("div",{"data-qa":"dt-message-input",role:"presentation",class:h.normalizeClass(["d-d-flex d-fd-column d-bar8 d-baw1 d-ba d-c-text",{"d-bc-black-500 d-bs-sm":i.hasFocus,"d-bc-default":!i.hasFocus}]),onClick:e[16]||(e[16]=m=>n.$refs.richTextEditor.focusEditor()),onDragEnter:e[17]||(e[17]=(...m)=>o.onDrag&&o.onDrag(...m)),onDragOver:e[18]||(e[18]=(...m)=>o.onDrag&&o.onDrag(...m)),onDrop:e[19]||(e[19]=(...m)=>o.onDrop&&o.onDrop(...m)),onKeydown:e[20]||(e[20]=h.withKeys(h.withModifiers((...m)=>o.onSend&&o.onSend(...m),["exact"]),["enter"])),onFocusin:e[21]||(e[21]=m=>i.hasFocus=!0),onFocusout:e[22]||(e[22]=m=>i.hasFocus=!1)},[h.createElementVNode("div",{class:"d-of-auto d-mx16 d-mt8 d-mb4",style:h.normalizeStyle({"max-height":t.maxHeight})},[h.createVNode(a,h.mergeProps({ref:"richTextEditor",modelValue:i.internalInputValue,"onUpdate:modelValue":e[0]||(e[0]=m=>i.internalInputValue=m),editable:t.editable,"input-aria-label":t.inputAriaLabel,"input-class":t.inputClass,"output-format":t.outputFormat,"auto-focus":t.autoFocus,link:t.link,placeholder:t.placeholder},n.$attrs,{onFocus:e[1]||(e[1]=m=>i.hasFocus=!0),onBlur:e[2]||(e[2]=m=>i.hasFocus=!1)}),null,16,["modelValue","editable","input-aria-label","input-class","output-format","auto-focus","link","placeholder"])],4),h.renderSlot(n.$slots,"middle"),h.createElementVNode("section",Jf,[h.createElementVNode("div",Uf,[t.isEdit?h.createCommentVNode("",!0):(h.openBlock(),h.createBlock(u,{key:0,placement:"top-start",message:t.imageTooltipLabel,offset:[-4,-4]},{anchor:h.withCtx(()=>[h.createVNode(c,{"data-qa":"dt-message-input-image-btn",size:"sm",circle:"",kind:i.imagePickerFocus?"default":"muted",importance:"clear","aria-label":t.imageButtonAriaLabel,onClick:o.onSelectImage,onMouseenter:e[3]||(e[3]=m=>i.imagePickerFocus=!0),onMouseleave:e[4]||(e[4]=m=>i.imagePickerFocus=!1),onFocusin:e[5]||(e[5]=m=>i.imagePickerFocus=!0),onFocusout:e[6]||(e[6]=m=>i.imagePickerFocus=!1)},{icon:h.withCtx(()=>[h.createVNode(s,{name:"image",size:"300"})]),_:1},8,["kind","aria-label","onClick"]),h.createVNode(d,{ref:"messageInputImageUpload","data-qa":"dt-message-input-image-input",type:"file",class:"d-ps-absolute",multiple:"",hidden:"",onInput:o.onImageUpload},null,8,["onInput"])]),_:1},8,["message"])),h.createVNode(p,{"data-qa":"dt-message-input-emoji-picker-popover",open:i.emojiPickerOpened,"initial-focus-element":"#searchInput",padding:"none",onOpened:e[11]||(e[11]=m=>{i.emojiPickerOpened=m})},{anchor:h.withCtx(()=>[h.createVNode(u,{message:t.emojiTooltipMessage,offset:[0,-4]},{anchor:h.withCtx(()=>[h.createVNode(c,{"data-qa":"dt-message-input-emoji-picker-btn",size:"sm",circle:"",kind:o.emojiPickerHovered?"default":"muted",importance:"clear","aria-label":t.emojiButtonAriaLabel,offset:[0,0],onClick:o.toggleEmojiPicker,onMouseenter:e[7]||(e[7]=m=>i.emojiPickerFocus=!0),onMouseleave:e[8]||(e[8]=m=>i.emojiPickerFocus=!1),onFocusin:e[9]||(e[9]=m=>i.emojiPickerFocus=!0),onFocusout:e[10]||(e[10]=m=>i.emojiPickerFocus=!1)},{icon:h.withCtx(()=>[h.createVNode(s,{name:o.emojiPickerHovered?"very-satisfied":"satisfied",size:"300"},null,8,["name"])]),_:1},8,["kind","aria-label","onClick"])]),_:1},8,["message"])]),content:h.withCtx(()=>[h.createVNode(f,h.mergeProps(t.emojiPickerProps,{onSkinTone:o.onSkinTone,onSelectedEmoji:o.onSelectEmoji}),null,16,["onSkinTone","onSelectedEmoji"])]),_:1},8,["open"])]),h.createElementVNode("div",Gf,[o.displayCharacterLimitWarning?(h.openBlock(),h.createBlock(u,{key:0,enabled:t.characterLimitWarningMessage&&t.characterLimitCount-o.inputLength<0,placement:"top-end",message:t.characterLimitWarningMessage,offset:[10,-8]},{anchor:h.withCtx(()=>[o.displayCharacterLimitWarning?(h.openBlock(),h.createElementBlock("p",Yf,h.toDisplayString(t.characterLimitCount-o.inputLength),1)):h.createCommentVNode("",!0)]),_:1},8,["enabled","message"])):h.createCommentVNode("",!0),t.isEdit?(h.openBlock(),h.createBlock(c,{key:1,"data-qa":"dt-message-input-cancel-button",class:"dt-message-input--cancel-button",size:"sm",kind:"muted",importance:"clear","aria-label":t.cancelButtonAriaLabel,onClick:o.onCancel},{default:h.withCtx(()=>[h.createElementVNode("p",null,h.toDisplayString(t.cancelButtonText),1)]),_:1},8,["aria-label","onClick"])):h.createCommentVNode("",!0),h.createVNode(u,{placement:"top-end",enabled:!t.isEdit,message:t.sendTooltipLabel,show:!o.isSendDisabled&&i.sendButtonFocus,offset:[6,-8]},{anchor:h.withCtx(()=>[h.createVNode(c,{"data-qa":"dt-message-input-send-btn",size:"sm",kind:o.sendButtonKind,circle:!t.isEdit,importance:"primary",class:h.normalizeClass({"message-input-button__disabled d-fc-muted":o.isSendDisabled}),"aria-label":t.sendButtonAriaLabel,"aria-disabled":o.isSendDisabled,onClick:o.onSend,onMouseenter:e[12]||(e[12]=m=>i.sendButtonFocus=!0),onMouseleave:e[13]||(e[13]=m=>i.sendButtonFocus=!1),onFocusin:e[14]||(e[14]=m=>i.sendButtonFocus=!0),onFocusout:e[15]||(e[15]=m=>i.sendButtonFocus=!1)},h.createSlots({default:h.withCtx(()=>[t.isEdit?(h.openBlock(),h.createElementBlock("p",Xf,h.toDisplayString(t.saveChangesButtonText),1)):h.createCommentVNode("",!0)]),_:2},[t.isEdit?void 0:{name:"icon",fn:h.withCtx(()=>[h.createVNode(s,{name:"send",size:"300"})]),key:"0"}]),1032,["kind","circle","class","aria-label","aria-disabled","onClick"])]),_:1},8,["enabled","message","show"])])])],34),t.isEdit?h.createCommentVNode("",!0):(h.openBlock(),h.createElementBlock("section",Zf,[h.createElementVNode("div",Qf,[h.renderSlot(n.$slots,"footerLeft")]),h.createElementVNode("div",ep,[h.renderSlot(n.$slots,"footerRight")])]))])],64)}const np=O._export_sfc(Kf,[["render",tp]]);exports.AVATAR_COLORS=$i;exports.AVATAR_GROUP_VALIDATOR=Ln;exports.AVATAR_ICON_SIZES=Hi;exports.AVATAR_KIND_MODIFIERS=zi;exports.AVATAR_PRESENCE_SIZE_MODIFIERS=ji;exports.AVATAR_PRESENCE_STATES=_n;exports.AVATAR_SIZE_MODIFIERS=Bt;exports.DT_STACK_GAP=Zt;exports.DtAvatar=qi;exports.DtItemLayout=Fn;exports.DtLink=Zi;exports.DtListItem=Qi;exports.DtNotice=Gi;exports.DtNoticeAction=Ui;exports.DtNoticeContent=Ji;exports.DtNoticeIcon=Wi;exports.DtPopover=so;exports.DtPresence=Vi;exports.DtStack=sr;exports.LIST_ITEM_NAVIGATION_TYPES=ht;exports.Modal=Xi;exports.NOTICE_KINDS=Yt;exports.NOTICE_ROLES=Ki;exports.POPOVER_APPEND_TO_VALUES=oo;exports.POPOVER_CONTENT_WIDTHS=ro;exports.POPOVER_HEADER_FOOTER_PADDING_CLASSES=to;exports.POPOVER_INITIAL_FOCUS_STRINGS=io;exports.POPOVER_PADDING_CLASSES=Vn;exports.POPOVER_ROLES=no;exports.PRESENCE_STATES=Ge;exports.PRESENCE_STATES_LIST=Fi;exports.SrOnlyCloseButton=or;exports.SrOnlyCloseButtonMixin=Xt;exports.message_input=np;
|