@dialpad/dialtone-vue 4.0.2 → 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/component-documentation.json +1 -1
- package/dist/components/SplitButton/SplitButton.vue.d.ts +20 -2
- package/dist/components/SplitButton/SplitButton.vue.d.ts.map +1 -1
- package/dist/lib/split-button/split-button.cjs +1 -1
- package/dist/lib/split-button/split-button.cjs.map +1 -1
- package/dist/lib/split-button/split-button.js +18 -2
- package/dist/lib/split-button/split-button.js.map +1 -1
- package/package.json +5 -5
|
@@ -26,6 +26,10 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
26
26
|
default: undefined;
|
|
27
27
|
validator: (position: unknown) => boolean;
|
|
28
28
|
};
|
|
29
|
+
startButtonClass: {
|
|
30
|
+
type: (ObjectConstructor | ArrayConstructor | StringConstructor)[];
|
|
31
|
+
default: string;
|
|
32
|
+
};
|
|
29
33
|
startLabelClass: {
|
|
30
34
|
type: (ObjectConstructor | ArrayConstructor | StringConstructor)[];
|
|
31
35
|
default: string;
|
|
@@ -112,6 +116,10 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
112
116
|
type: StringConstructor;
|
|
113
117
|
default: undefined;
|
|
114
118
|
};
|
|
119
|
+
endButtonClass: {
|
|
120
|
+
type: (ObjectConstructor | ArrayConstructor | StringConstructor)[];
|
|
121
|
+
default: string;
|
|
122
|
+
};
|
|
115
123
|
endDisabled: {
|
|
116
124
|
type: BooleanConstructor;
|
|
117
125
|
default: boolean;
|
|
@@ -178,6 +186,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
178
186
|
assertiveOnFocus: boolean;
|
|
179
187
|
disabled: boolean;
|
|
180
188
|
iconPosition: string;
|
|
189
|
+
class: string | unknown[] | Record<string, any>;
|
|
181
190
|
labelClass: string | unknown[] | Record<string, any>;
|
|
182
191
|
leadingClass: string | unknown[] | Record<string, any>;
|
|
183
192
|
trailingClass: string | unknown[] | Record<string, any>;
|
|
@@ -191,7 +200,6 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
191
200
|
href: string;
|
|
192
201
|
target: string;
|
|
193
202
|
rel: string;
|
|
194
|
-
class: import('vue').ClassValue;
|
|
195
203
|
style: import('vue').StyleValue;
|
|
196
204
|
};
|
|
197
205
|
endButtonProps(): {
|
|
@@ -199,11 +207,11 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
199
207
|
active: boolean;
|
|
200
208
|
ariaLabel: string;
|
|
201
209
|
disabled: boolean;
|
|
210
|
+
class: string | unknown[] | Record<string, any>;
|
|
202
211
|
importance: string;
|
|
203
212
|
kind: string;
|
|
204
213
|
size: string | number;
|
|
205
214
|
tooltipText: string | undefined;
|
|
206
|
-
class: import('vue').ClassValue;
|
|
207
215
|
style: import('vue').StyleValue;
|
|
208
216
|
};
|
|
209
217
|
}, {
|
|
@@ -240,6 +248,10 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
240
248
|
default: undefined;
|
|
241
249
|
validator: (position: unknown) => boolean;
|
|
242
250
|
};
|
|
251
|
+
startButtonClass: {
|
|
252
|
+
type: (ObjectConstructor | ArrayConstructor | StringConstructor)[];
|
|
253
|
+
default: string;
|
|
254
|
+
};
|
|
243
255
|
startLabelClass: {
|
|
244
256
|
type: (ObjectConstructor | ArrayConstructor | StringConstructor)[];
|
|
245
257
|
default: string;
|
|
@@ -326,6 +338,10 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
326
338
|
type: StringConstructor;
|
|
327
339
|
default: undefined;
|
|
328
340
|
};
|
|
341
|
+
endButtonClass: {
|
|
342
|
+
type: (ObjectConstructor | ArrayConstructor | StringConstructor)[];
|
|
343
|
+
default: string;
|
|
344
|
+
};
|
|
329
345
|
endDisabled: {
|
|
330
346
|
type: BooleanConstructor;
|
|
331
347
|
default: boolean;
|
|
@@ -404,6 +420,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
404
420
|
alphaAriaLabel: string;
|
|
405
421
|
startIconPosition: string;
|
|
406
422
|
alphaIconPosition: string;
|
|
423
|
+
startButtonClass: string | unknown[] | Record<string, any>;
|
|
407
424
|
startLabelClass: string | unknown[] | Record<string, any>;
|
|
408
425
|
startLeadingClass: string | unknown[] | Record<string, any>;
|
|
409
426
|
alphaLeadingClass: string | unknown[] | Record<string, any>;
|
|
@@ -420,6 +437,7 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
|
420
437
|
omegaActive: boolean;
|
|
421
438
|
endAriaLabel: string;
|
|
422
439
|
omegaAriaLabel: string;
|
|
440
|
+
endButtonClass: string | unknown[] | Record<string, any>;
|
|
423
441
|
endDisabled: boolean;
|
|
424
442
|
omegaDisabled: boolean;
|
|
425
443
|
endId: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SplitButton.vue.d.ts","sourceRoot":"","sources":["../../../components/SplitButton/SplitButton.vue"],"names":[],"mappings":"AA+IA
|
|
1
|
+
{"version":3,"file":"SplitButton.vue.d.ts","sourceRoot":"","sources":["../../../components/SplitButton/SplitButton.vue"],"names":[],"mappings":"AA+IA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBA6rBA,GAnpB0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6EAmpB1B,IArlBqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCAqlBrB,GAnpB0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCAmpB1B,GAnpB0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+BA4pBqC,gBAAgB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}}),require(`../../chunk-Bmb41Sf3.cjs`);const e=require(`../../common/validators/index.cjs`),t=require(`../../common/utils/index.cjs`),n=require(`../../_plugin-vue_export-helper-D8jCH6HB.cjs`),r=require(`../button/button-constants.cjs`),i=require(`../dropdown/dropdown.cjs`),a=require(`./split-button-start.cjs`),o=require(`./split-button-end.cjs`);let s=require(`vue`);var c={name:`DtSplitButton`,components:{SplitButtonEnd:o.default,DtDropdown:i.default,SplitButtonStart:a.default},inheritAttrs:!1,props:{startActive:{type:Boolean,default:!1},alphaActive:{type:Boolean,default:null},startAriaLabel:{type:String,default:null},alphaAriaLabel:{type:String,default:void 0},startIconPosition:{type:String,default:`left`,validator:e=>Object.keys(r.ICON_POSITION_MODIFIERS).includes(e)},alphaIconPosition:{type:String,default:void 0,validator:e=>e===void 0||Object.keys(r.ICON_POSITION_MODIFIERS).includes(e)},startLabelClass:{type:[String,Array,Object],default:``},startLeadingClass:{type:[String,Array,Object],default:``},alphaLeadingClass:{type:[String,Array,Object],default:void 0},startTrailingClass:{type:[String,Array,Object],default:``},alphaTrailingClass:{type:[String,Array,Object],default:void 0},alphaLabelClass:{type:[String,Array,Object],default:void 0},startDisabled:{type:Boolean,default:!1},alphaDisabled:{type:Boolean,default:null},startLoading:{type:Boolean,default:!1},alphaLoading:{type:Boolean,default:null},startTooltipText:{type:String,default:void 0},alphaTooltipText:{type:String,default:void 0},assertiveOnFocus:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},dropdownPlacement:{type:String,default:`bottom-end`},importance:{type:String,default:`primary`,validator:e=>Object.keys(r.BUTTON_IMPORTANCE_MODIFIERS).includes(e)},kind:{type:String,default:`default`,validator:e=>Object.keys(r.BUTTON_KIND_MODIFIERS).includes(e)},endActive:{type:Boolean,default:!1},omegaActive:{type:Boolean,default:null},endAriaLabel:{type:String,default:null},omegaAriaLabel:{type:String,default:void 0},endDisabled:{type:Boolean,default:!1},omegaDisabled:{type:Boolean,default:null},endId:{type:String,default:void 0},omegaId:{type:String,default:void 0},endTooltipText:{type:String,default:void 0},omegaTooltipText:{type:String,default:void 0},size:{type:[String,Number],default:300,validator:e.ordinalSizeValidator(r.BUTTON_SIZE_MODIFIERS)},width:{type:String,default:null},showDivider:{type:Boolean,default:!0},startTo:{type:[String,Object],default:null},startReplace:{type:Boolean,default:!1},startHref:{type:String,default:null},startTarget:{type:String,default:null},startRel:{type:String,default:null}},emits:[`start-clicked`,`alpha-clicked`,`end-clicked`,`omega-clicked`],data(){return{isDropdownOpen:!1}},computed:{startButtonProps(){return{active:this.alphaActive??this.startActive,ariaLabel:this.alphaAriaLabel??this.startAriaLabel,assertiveOnFocus:this.assertiveOnFocus,disabled:this.disabled||(this.alphaDisabled??this.startDisabled),iconPosition:this.alphaIconPosition??this.startIconPosition,labelClass:this.alphaLabelClass??this.startLabelClass,leadingClass:this.alphaLeadingClass??this.startLeadingClass,trailingClass:this.alphaTrailingClass??this.startTrailingClass,loading:this.alphaLoading??this.startLoading,importance:this.importance,kind:this.kind,size:this.size,tooltipText:this.alphaTooltipText??this.startTooltipText,to:this.startTo,replace:this.startReplace,href:this.startHref,target:this.startTarget,rel:this.startRel,
|
|
1
|
+
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}}),require(`../../chunk-Bmb41Sf3.cjs`);const e=require(`../../common/validators/index.cjs`),t=require(`../../common/utils/index.cjs`),n=require(`../../_plugin-vue_export-helper-D8jCH6HB.cjs`),r=require(`../button/button-constants.cjs`),i=require(`../dropdown/dropdown.cjs`),a=require(`./split-button-start.cjs`),o=require(`./split-button-end.cjs`);let s=require(`vue`);var c={name:`DtSplitButton`,components:{SplitButtonEnd:o.default,DtDropdown:i.default,SplitButtonStart:a.default},inheritAttrs:!1,props:{startActive:{type:Boolean,default:!1},alphaActive:{type:Boolean,default:null},startAriaLabel:{type:String,default:null},alphaAriaLabel:{type:String,default:void 0},startIconPosition:{type:String,default:`left`,validator:e=>Object.keys(r.ICON_POSITION_MODIFIERS).includes(e)},alphaIconPosition:{type:String,default:void 0,validator:e=>e===void 0||Object.keys(r.ICON_POSITION_MODIFIERS).includes(e)},startButtonClass:{type:[String,Array,Object],default:``},startLabelClass:{type:[String,Array,Object],default:``},startLeadingClass:{type:[String,Array,Object],default:``},alphaLeadingClass:{type:[String,Array,Object],default:void 0},startTrailingClass:{type:[String,Array,Object],default:``},alphaTrailingClass:{type:[String,Array,Object],default:void 0},alphaLabelClass:{type:[String,Array,Object],default:void 0},startDisabled:{type:Boolean,default:!1},alphaDisabled:{type:Boolean,default:null},startLoading:{type:Boolean,default:!1},alphaLoading:{type:Boolean,default:null},startTooltipText:{type:String,default:void 0},alphaTooltipText:{type:String,default:void 0},assertiveOnFocus:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},dropdownPlacement:{type:String,default:`bottom-end`},importance:{type:String,default:`primary`,validator:e=>Object.keys(r.BUTTON_IMPORTANCE_MODIFIERS).includes(e)},kind:{type:String,default:`default`,validator:e=>Object.keys(r.BUTTON_KIND_MODIFIERS).includes(e)},endActive:{type:Boolean,default:!1},omegaActive:{type:Boolean,default:null},endAriaLabel:{type:String,default:null},omegaAriaLabel:{type:String,default:void 0},endButtonClass:{type:[String,Array,Object],default:``},endDisabled:{type:Boolean,default:!1},omegaDisabled:{type:Boolean,default:null},endId:{type:String,default:void 0},omegaId:{type:String,default:void 0},endTooltipText:{type:String,default:void 0},omegaTooltipText:{type:String,default:void 0},size:{type:[String,Number],default:300,validator:e.ordinalSizeValidator(r.BUTTON_SIZE_MODIFIERS)},width:{type:String,default:null},showDivider:{type:Boolean,default:!0},startTo:{type:[String,Object],default:null},startReplace:{type:Boolean,default:!1},startHref:{type:String,default:null},startTarget:{type:String,default:null},startRel:{type:String,default:null}},emits:[`start-clicked`,`alpha-clicked`,`end-clicked`,`omega-clicked`],data(){return{isDropdownOpen:!1}},computed:{startButtonProps(){return{active:this.alphaActive??this.startActive,ariaLabel:this.alphaAriaLabel??this.startAriaLabel,assertiveOnFocus:this.assertiveOnFocus,disabled:this.disabled||(this.alphaDisabled??this.startDisabled),iconPosition:this.alphaIconPosition??this.startIconPosition,class:this.startButtonClass,labelClass:this.alphaLabelClass??this.startLabelClass,leadingClass:this.alphaLeadingClass??this.startLeadingClass,trailingClass:this.alphaTrailingClass??this.startTrailingClass,loading:this.alphaLoading??this.startLoading,importance:this.importance,kind:this.kind,size:this.size,tooltipText:this.alphaTooltipText??this.startTooltipText,to:this.startTo,replace:this.startReplace,href:this.startHref,target:this.startTarget,rel:this.startRel,style:this.$attrs.style}},endButtonProps(){return{id:this.omegaId??this.endId,active:this.omegaActive??this.endActive,ariaLabel:this.omegaAriaLabel??this.endAriaLabel,disabled:this.disabled||(this.omegaDisabled??this.endDisabled),class:this.endButtonClass,importance:this.importance,kind:this.kind,size:this.size,tooltipText:this.omegaTooltipText??this.endTooltipText,style:this.$attrs.style}}},created(){this.validateProps()},updated(){this.validateProps()},mounted(){t.warnIfUnmounted(t.returnFirstEl(this.$el),this.$options.name)},methods:{onStartClick(){this.$emit(`start-clicked`),this.$emit(`alpha-clicked`)},onEndClick(){this.$emit(`end-clicked`),this.$emit(`omega-clicked`)},validateProps(){this.validateStartButtonProps(),this.validateEndButtonProps(),this.validateShowDivider()},validateStartButtonProps(){t.hasSlotContent(this.$slots.default)||(t.hasSlotContent(this.$slots.startIcon)||t.hasSlotContent(this.$slots.alphaIcon))&&!(this.alphaTooltipText??this.startTooltipText)&&console.warn(`start-tooltip-text prop must be set if start button has an icon only`)},validateEndButtonProps(){t.hasSlotContent(this.$slots.end)||t.hasSlotContent(this.$slots.omega)||(this.omegaTooltipText??this.endTooltipText)||console.warn(`end-tooltip-text prop is required as it is an icon-only button`)},validateShowDivider(){!this.showDivider&&this.importance!==`clear`&&console.warn(`show-divider prop set to false has no effect when importance is not "clear". The divider is always shown for "outlined" and "primary" importances.`)}}};function l(e,t,n,r,i,a){let o=(0,s.resolveComponent)(`split-button-start`),c=(0,s.resolveComponent)(`split-button-end`),l=(0,s.resolveComponent)(`dt-dropdown`);return(0,s.openBlock)(),(0,s.createElementBlock)(`span`,{"data-qa":`dt-split-button`,class:(0,s.normalizeClass)([`d-split-btn`,{"d-split-btn--no-divider":!n.showDivider&&n.importance===`clear`},e.$attrs.class]),style:(0,s.normalizeStyle)([e.$attrs.style,{width:n.width}])},[(0,s.createVNode)(o,(0,s.mergeProps)(a.startButtonProps,{ref:`startButton`,onClick:a.onStartClick}),(0,s.createSlots)({default:(0,s.withCtx)(()=>[(0,s.renderSlot)(e.$slots,`default`)]),_:2},[e.$slots.startEndIcon?{name:`startIcon`,fn:(0,s.withCtx)(({size:t})=>[e.$slots.startIcon?(0,s.renderSlot)(e.$slots,`startIcon`,{key:0,size:t}):(0,s.renderSlot)(e.$slots,`alphaIcon`,{key:1,size:t})]),key:`0`}:void 0,e.$slots.startEndIcon?{name:`endIcon`,fn:(0,s.withCtx)(({size:t})=>[(0,s.renderSlot)(e.$slots,`startEndIcon`,{size:t})]),key:`1`}:void 0,e.$slots.startEndIcon?void 0:{name:`icon`,fn:(0,s.withCtx)(({size:t})=>[e.$slots.startIcon?(0,s.renderSlot)(e.$slots,`startIcon`,{key:0,size:t}):(0,s.renderSlot)(e.$slots,`alphaIcon`,{key:1,size:t})]),key:`2`},e.$slots.leading?{name:`leading`,fn:(0,s.withCtx)(()=>[(0,s.renderSlot)(e.$slots,`leading`)]),key:`3`}:void 0,e.$slots.trailing?{name:`trailing`,fn:(0,s.withCtx)(()=>[(0,s.renderSlot)(e.$slots,`trailing`)]),key:`4`}:void 0]),1040,[`onClick`]),e.$slots.end?(0,s.renderSlot)(e.$slots,`end`,{key:0}):e.$slots.omega?(0,s.renderSlot)(e.$slots,`omega`,{key:1}):((0,s.openBlock)(),(0,s.createElementBlock)(s.Fragment,{key:2},[e.$slots.dropdownList?((0,s.openBlock)(),(0,s.createBlock)(l,{key:0,placement:n.dropdownPlacement,onClick:t[0]||(t[0]=e=>i.isDropdownOpen=!0),onOpened:t[1]||(t[1]=e=>i.isDropdownOpen=e)},{anchor:(0,s.withCtx)(t=>[(0,s.createVNode)(c,(0,s.mergeProps)({...t,...a.endButtonProps},{active:i.isDropdownOpen,onClick:a.onEndClick}),{icon:(0,s.withCtx)(({size:t})=>[e.$slots.endIcon?(0,s.renderSlot)(e.$slots,`endIcon`,{key:0,size:t}):(0,s.renderSlot)(e.$slots,`omegaIcon`,{key:1,size:t})]),_:3},16,[`active`,`onClick`])]),list:(0,s.withCtx)(({close:t})=>[(0,s.renderSlot)(e.$slots,`dropdownList`,{close:t})]),_:3},8,[`placement`])):((0,s.openBlock)(),(0,s.createBlock)(c,(0,s.mergeProps)({key:1},a.endButtonProps,{onClick:a.onEndClick}),{icon:(0,s.withCtx)(({size:t})=>[e.$slots.endIcon?(0,s.renderSlot)(e.$slots,`endIcon`,{key:0,size:t}):(0,s.renderSlot)(e.$slots,`omegaIcon`,{key:1,size:t})]),_:3},16,[`onClick`]))],64))],6)}var u=n.t(c,[[`render`,l]]);exports.default=u;
|
|
2
2
|
//# sourceMappingURL=split-button.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"split-button.cjs","names":[],"sources":["../../../components/SplitButton/SplitButton.vue"],"sourcesContent":["<template>\n <span\n data-qa=\"dt-split-button\"\n :class=\"['d-split-btn', { 'd-split-btn--no-divider': !showDivider && importance === 'clear' }, $attrs.class]\"\n :style=\"[$attrs.style, { width }]\"\n >\n <split-button-start\n v-bind=\"startButtonProps\"\n ref=\"startButton\"\n @click=\"onStartClick\"\n >\n <!-- Dual-icon path: when startEndIcon is provided, use DtButton's startIcon/endIcon -->\n <template\n v-if=\"$slots.startEndIcon\"\n #startIcon=\"{ size: iconSize }\"\n >\n <!-- @slot Start (left) button icon slot -->\n <slot\n v-if=\"$slots.startIcon\"\n name=\"startIcon\"\n :size=\"iconSize\"\n />\n <!-- @slot @deprecated Use startIcon -->\n <slot\n v-else\n name=\"alphaIcon\"\n :size=\"iconSize\"\n />\n </template>\n <template\n v-if=\"$slots.startEndIcon\"\n #endIcon=\"{ size: iconSize }\"\n >\n <!-- @slot End-positioned icon within the start button (enables dual icons on the start button) -->\n <slot\n name=\"startEndIcon\"\n :size=\"iconSize\"\n />\n </template>\n <!-- Legacy single-icon path: uses DtButton's icon slot with iconPosition -->\n <template\n v-if=\"!$slots.startEndIcon\"\n #icon=\"{ size: iconSize }\"\n >\n <!-- @slot Start (left) button icon slot -->\n <slot\n v-if=\"$slots.startIcon\"\n name=\"startIcon\"\n :size=\"iconSize\"\n />\n <!-- @slot @deprecated Use startIcon -->\n <slot\n v-else\n name=\"alphaIcon\"\n :size=\"iconSize\"\n />\n </template>\n <template\n v-if=\"$slots.leading\"\n #leading\n >\n <!-- @slot Leading slot, forwarded to the alpha button's leading slot -->\n <slot name=\"leading\" />\n </template>\n <template\n v-if=\"$slots.trailing\"\n #trailing\n >\n <!-- @slot Trailing slot, forwarded to the alpha button's trailing slot -->\n <slot name=\"trailing\" />\n </template>\n <!-- @slot Default content slot -->\n <slot name=\"default\" />\n </split-button-start>\n <!-- @slot End (right) content slot, overrides end button styling and functionality completely -->\n <template v-if=\"$slots.end\">\n <slot name=\"end\" />\n </template>\n <!-- @slot @deprecated Use end -->\n <template v-else-if=\"$slots.omega\">\n <slot name=\"omega\" />\n </template>\n <template v-else>\n <dt-dropdown\n v-if=\"$slots.dropdownList\"\n :placement=\"dropdownPlacement\"\n @click=\"isDropdownOpen = true\"\n @opened=\"open => isDropdownOpen = open\"\n >\n <template #anchor=\"attrs\">\n <split-button-end\n v-bind=\"{ ...attrs, ...endButtonProps }\"\n :active=\"isDropdownOpen\"\n @click=\"onEndClick\"\n >\n <template #icon=\"{ size: iconSize }\">\n <!-- @slot End (right) button icon slot -->\n <slot\n v-if=\"$slots.endIcon\"\n name=\"endIcon\"\n :size=\"iconSize\"\n />\n <!-- @slot @deprecated Use endIcon -->\n <slot\n v-else\n name=\"omegaIcon\"\n :size=\"iconSize\"\n />\n </template>\n </split-button-end>\n </template>\n <template #list=\"{ close }\">\n <!-- @slot Built-in dropdown content slot, use of dt-list-item is highly recommended here. -->\n <slot\n name=\"dropdownList\"\n :close=\"close\"\n />\n </template>\n </dt-dropdown>\n\n <split-button-end\n v-else\n v-bind=\"endButtonProps\"\n @click=\"onEndClick\"\n >\n <template #icon=\"{ size: iconSize }\">\n <!-- @slot End (right) button icon slot -->\n <slot\n v-if=\"$slots.endIcon\"\n name=\"endIcon\"\n :size=\"iconSize\"\n />\n <!-- @slot @deprecated Use endIcon -->\n <slot\n v-else\n name=\"omegaIcon\"\n :size=\"iconSize\"\n />\n </template>\n </split-button-end>\n </template>\n </span>\n</template>\n\n<script>\nimport {\n BUTTON_IMPORTANCE_MODIFIERS,\n BUTTON_KIND_MODIFIERS,\n BUTTON_SIZE_MODIFIERS,\n ICON_POSITION_MODIFIERS,\n} from '@/components/Button';\nimport SplitButtonStart from './SplitButtonStart.vue';\nimport SplitButtonEnd from './SplitButtonEnd.vue';\nimport { DtDropdown } from '@/components/Dropdown';\nimport { hasSlotContent, warnIfUnmounted, returnFirstEl } from '@/common/utils';\nimport { ordinalSizeValidator } from '@/common/validators';\n\nexport default {\n name: 'DtSplitButton',\n\n components: {\n SplitButtonEnd,\n DtDropdown,\n SplitButtonStart,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Determines whether the start button should have active styling\n * @values true, false\n */\n startActive: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use startActive\n * @values true, false\n */\n alphaActive: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Descriptive label for the start button\n */\n startAriaLabel: {\n type: String,\n default: null,\n },\n\n /**\n * @deprecated Use startAriaLabel\n */\n alphaAriaLabel: {\n type: String,\n default: undefined,\n },\n\n /**\n * The position of the icon slot within the start button.\n * @values start, end, blockStart, blockEnd, left, right, top, bottom\n */\n startIconPosition: {\n type: String,\n default: 'left',\n validator: (position) => Object.keys(ICON_POSITION_MODIFIERS).includes(position),\n },\n\n /**\n * @deprecated Use startIconPosition\n * @values start, end, blockStart, blockEnd, left, right, top, bottom\n */\n alphaIconPosition: {\n type: String,\n default: undefined,\n validator: (position) => position === undefined || Object.keys(ICON_POSITION_MODIFIERS).includes(position),\n },\n\n /**\n * Used to customize the start label container\n */\n startLabelClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the start button leading container\n */\n startLeadingClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * @deprecated Use startLeadingClass\n */\n alphaLeadingClass: {\n type: [String, Array, Object],\n default: undefined,\n },\n\n /**\n * Used to customize the start button trailing container\n */\n startTrailingClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * @deprecated Use startTrailingClass\n */\n alphaTrailingClass: {\n type: [String, Array, Object],\n default: undefined,\n },\n\n /**\n * @deprecated Use startLabelClass\n */\n alphaLabelClass: {\n type: [String, Array, Object],\n default: undefined,\n },\n\n /**\n * HTML button disabled attribute for start button only\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#disabled\" target=\"_blank\">\n * (Reference)\n * </a>\n * @values true, false\n */\n startDisabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use startDisabled\n * @values true, false\n */\n alphaDisabled: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Whether the start button should display a loading animation or not.\n * @values true, false\n */\n startLoading: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use startLoading\n * @values true, false\n */\n alphaLoading: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Text shown in tooltip when you hover the start button,\n * required if no content is passed to default slot\n */\n startTooltipText: {\n type: String,\n default: undefined,\n },\n\n /**\n * @deprecated Use startTooltipText\n */\n alphaTooltipText: {\n type: String,\n default: undefined,\n },\n\n /**\n * Determines whether a screenreader reads live updates of\n * the button content to the user while the button\n * is in focus.\n * @values true, false\n */\n assertiveOnFocus: {\n type: Boolean,\n default: false,\n },\n\n /**\n * HTML button disabled attribute for both buttons.\n * Use startDisabled or endDisabled to disable buttons individually.\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#disabled\" target=\"_blank\">\n * (Reference)\n * </a>\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The direction the dropdown displays relative to the anchor.\n * @values top, top-start, top-end, right, right-start, right-end, left, left-start, left-end, bottom, bottom-start, bottom-end, auto, auto-start, auto-end\n */\n dropdownPlacement: {\n type: String,\n default: 'bottom-end',\n },\n\n /**\n * The fill and outline of the button associated with its visual importance.\n * @values clear, outlined, primary\n */\n importance: {\n type: String,\n default: 'primary',\n validator: (i) => Object.keys(BUTTON_IMPORTANCE_MODIFIERS).includes(i),\n },\n\n /**\n * The color of the button.\n * The inverted value is deprecated and will be removed in the next major version.\n * Please use the v-dt-mode directive instead.\n * @values default, unstyled, muted, critical, positive, inverted\n */\n kind: {\n type: String,\n default: 'default',\n validator: (k) => Object.keys(BUTTON_KIND_MODIFIERS).includes(k),\n },\n\n /**\n * Determines whether the end button should have active styling\n * @values true, false\n */\n endActive: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use endActive\n * @values true, false\n */\n omegaActive: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Descriptive label for the end button\n */\n endAriaLabel: {\n type: String,\n default: null,\n },\n\n /**\n * @deprecated Use endAriaLabel\n */\n omegaAriaLabel: {\n type: String,\n default: undefined,\n },\n\n /**\n * HTML button disabled attribute for end button only\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#disabled\" target=\"_blank\">\n * (Reference)\n * </a>\n * @values true, false\n */\n endDisabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use endDisabled\n * @values true, false\n */\n omegaDisabled: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Element ID, useful in case you need to reference the button\n * as an external anchor for popover.\n */\n endId: {\n type: String,\n default: undefined,\n },\n\n /**\n * @deprecated Use endId\n */\n omegaId: {\n type: String,\n default: undefined,\n },\n\n /**\n * Text shown in tooltip when you hover the end button,\n * required as it is an icon only button\n */\n endTooltipText: {\n type: String,\n default: undefined,\n },\n\n /**\n * @deprecated Use endTooltipText\n */\n omegaTooltipText: {\n type: String,\n default: undefined,\n },\n\n /**\n * The size of the button.\n * @values 100, 200, 300, 400, 500\n */\n size: {\n type: [String, Number],\n default: 300,\n validator: ordinalSizeValidator(BUTTON_SIZE_MODIFIERS),\n },\n\n /**\n * Button width, accepts\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/width\" target=\"_blank\">\n * CSS width attribute\n * </a>\n * values\n */\n width: {\n type: String,\n default: null,\n },\n\n /**\n * Whether to show the vertical divider between the start and end buttons.\n * Only applies when importance is \"clear\".\n * @values true, false\n */\n showDivider: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Vue router `to` prop for the start button.\n * When set, renders the start button as a `<router-link>`.\n */\n startTo: {\n type: [String, Object],\n default: null,\n },\n\n /**\n * Whether to use `router.replace()` instead of `router.push()`\n * when navigating via `startTo`.\n * @values true, false\n */\n startReplace: {\n type: Boolean,\n default: false,\n },\n\n /**\n * HTML href for the start button.\n * When set, renders the start button as an `<a>` element.\n */\n startHref: {\n type: String,\n default: null,\n },\n\n /**\n * HTML target attribute for the start button link.\n * Only applies when `startHref` is set.\n */\n startTarget: {\n type: String,\n default: null,\n },\n\n /**\n * HTML rel attribute for the start button link.\n * Only applies when `startHref` is set.\n */\n startRel: {\n type: String,\n default: null,\n },\n },\n\n emits: [\n /**\n * Native start button click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'start-clicked',\n\n /**\n * @deprecated Use start-clicked\n */\n 'alpha-clicked',\n\n /**\n * Native end button click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'end-clicked',\n\n /**\n * @deprecated Use end-clicked\n */\n 'omega-clicked',\n ],\n\n data () {\n return {\n isDropdownOpen: false,\n };\n },\n\n computed: {\n startButtonProps () {\n return {\n active: this.alphaActive ?? this.startActive,\n ariaLabel: this.alphaAriaLabel ?? this.startAriaLabel,\n assertiveOnFocus: this.assertiveOnFocus,\n disabled: this.disabled || (this.alphaDisabled ?? this.startDisabled),\n iconPosition: this.alphaIconPosition ?? this.startIconPosition,\n labelClass: this.alphaLabelClass ?? this.startLabelClass,\n leadingClass: this.alphaLeadingClass ?? this.startLeadingClass,\n trailingClass: this.alphaTrailingClass ?? this.startTrailingClass,\n loading: this.alphaLoading ?? this.startLoading,\n importance: this.importance,\n kind: this.kind,\n size: this.size,\n tooltipText: this.alphaTooltipText ?? this.startTooltipText,\n to: this.startTo,\n replace: this.startReplace,\n href: this.startHref,\n target: this.startTarget,\n rel: this.startRel,\n class: this.$attrs.class,\n style: this.$attrs.style,\n };\n },\n\n endButtonProps () {\n return {\n id: this.omegaId ?? this.endId,\n active: this.omegaActive ?? this.endActive,\n ariaLabel: this.omegaAriaLabel ?? this.endAriaLabel,\n disabled: this.disabled || (this.omegaDisabled ?? this.endDisabled),\n importance: this.importance,\n kind: this.kind,\n size: this.size,\n tooltipText: this.omegaTooltipText ?? this.endTooltipText,\n class: this.$attrs.class,\n style: this.$attrs.style,\n };\n },\n },\n\n created () {\n this.validateProps();\n },\n\n updated () {\n this.validateProps();\n },\n\n mounted () {\n warnIfUnmounted(returnFirstEl(this.$el), this.$options.name);\n },\n\n methods: {\n onStartClick () {\n this.$emit('start-clicked');\n this.$emit('alpha-clicked');\n },\n\n onEndClick () {\n this.$emit('end-clicked');\n this.$emit('omega-clicked');\n },\n\n validateProps () {\n this.validateStartButtonProps();\n this.validateEndButtonProps();\n this.validateShowDivider();\n },\n\n validateStartButtonProps () {\n if (hasSlotContent(this.$slots.default)) return;\n\n if ((hasSlotContent(this.$slots.startIcon) || hasSlotContent(this.$slots.alphaIcon)) &&\n !(this.alphaTooltipText ?? this.startTooltipText)) {\n console.warn('start-tooltip-text prop must be set if start button has an icon only');\n }\n },\n\n validateEndButtonProps () {\n if (hasSlotContent(this.$slots.end) || hasSlotContent(this.$slots.omega)) return;\n\n if (!(this.omegaTooltipText ?? this.endTooltipText)) {\n console.warn('end-tooltip-text prop is required as it is an icon-only button');\n }\n },\n\n validateShowDivider () {\n if (!this.showDivider && this.importance !== 'clear') {\n console.warn(\n 'show-divider prop set to false has no effect when importance is not \"clear\". ' +\n 'The divider is always shown for \"outlined\" and \"primary\" importances.',\n );\n }\n },\n },\n};\n</script>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"split-button.cjs","names":[],"sources":["../../../components/SplitButton/SplitButton.vue"],"sourcesContent":["<template>\n <span\n data-qa=\"dt-split-button\"\n :class=\"['d-split-btn', { 'd-split-btn--no-divider': !showDivider && importance === 'clear' }, $attrs.class]\"\n :style=\"[$attrs.style, { width }]\"\n >\n <split-button-start\n v-bind=\"startButtonProps\"\n ref=\"startButton\"\n @click=\"onStartClick\"\n >\n <!-- Dual-icon path: when startEndIcon is provided, use DtButton's startIcon/endIcon -->\n <template\n v-if=\"$slots.startEndIcon\"\n #startIcon=\"{ size: iconSize }\"\n >\n <!-- @slot Start (left) button icon slot -->\n <slot\n v-if=\"$slots.startIcon\"\n name=\"startIcon\"\n :size=\"iconSize\"\n />\n <!-- @slot @deprecated Use startIcon -->\n <slot\n v-else\n name=\"alphaIcon\"\n :size=\"iconSize\"\n />\n </template>\n <template\n v-if=\"$slots.startEndIcon\"\n #endIcon=\"{ size: iconSize }\"\n >\n <!-- @slot End-positioned icon within the start button (enables dual icons on the start button) -->\n <slot\n name=\"startEndIcon\"\n :size=\"iconSize\"\n />\n </template>\n <!-- Legacy single-icon path: uses DtButton's icon slot with iconPosition -->\n <template\n v-if=\"!$slots.startEndIcon\"\n #icon=\"{ size: iconSize }\"\n >\n <!-- @slot Start (left) button icon slot -->\n <slot\n v-if=\"$slots.startIcon\"\n name=\"startIcon\"\n :size=\"iconSize\"\n />\n <!-- @slot @deprecated Use startIcon -->\n <slot\n v-else\n name=\"alphaIcon\"\n :size=\"iconSize\"\n />\n </template>\n <template\n v-if=\"$slots.leading\"\n #leading\n >\n <!-- @slot Leading slot, forwarded to the alpha button's leading slot -->\n <slot name=\"leading\" />\n </template>\n <template\n v-if=\"$slots.trailing\"\n #trailing\n >\n <!-- @slot Trailing slot, forwarded to the alpha button's trailing slot -->\n <slot name=\"trailing\" />\n </template>\n <!-- @slot Default content slot -->\n <slot name=\"default\" />\n </split-button-start>\n <!-- @slot End (right) content slot, overrides end button styling and functionality completely -->\n <template v-if=\"$slots.end\">\n <slot name=\"end\" />\n </template>\n <!-- @slot @deprecated Use end -->\n <template v-else-if=\"$slots.omega\">\n <slot name=\"omega\" />\n </template>\n <template v-else>\n <dt-dropdown\n v-if=\"$slots.dropdownList\"\n :placement=\"dropdownPlacement\"\n @click=\"isDropdownOpen = true\"\n @opened=\"open => isDropdownOpen = open\"\n >\n <template #anchor=\"attrs\">\n <split-button-end\n v-bind=\"{ ...attrs, ...endButtonProps }\"\n :active=\"isDropdownOpen\"\n @click=\"onEndClick\"\n >\n <template #icon=\"{ size: iconSize }\">\n <!-- @slot End (right) button icon slot -->\n <slot\n v-if=\"$slots.endIcon\"\n name=\"endIcon\"\n :size=\"iconSize\"\n />\n <!-- @slot @deprecated Use endIcon -->\n <slot\n v-else\n name=\"omegaIcon\"\n :size=\"iconSize\"\n />\n </template>\n </split-button-end>\n </template>\n <template #list=\"{ close }\">\n <!-- @slot Built-in dropdown content slot, use of dt-list-item is highly recommended here. -->\n <slot\n name=\"dropdownList\"\n :close=\"close\"\n />\n </template>\n </dt-dropdown>\n\n <split-button-end\n v-else\n v-bind=\"endButtonProps\"\n @click=\"onEndClick\"\n >\n <template #icon=\"{ size: iconSize }\">\n <!-- @slot End (right) button icon slot -->\n <slot\n v-if=\"$slots.endIcon\"\n name=\"endIcon\"\n :size=\"iconSize\"\n />\n <!-- @slot @deprecated Use endIcon -->\n <slot\n v-else\n name=\"omegaIcon\"\n :size=\"iconSize\"\n />\n </template>\n </split-button-end>\n </template>\n </span>\n</template>\n\n<script>\nimport {\n BUTTON_IMPORTANCE_MODIFIERS,\n BUTTON_KIND_MODIFIERS,\n BUTTON_SIZE_MODIFIERS,\n ICON_POSITION_MODIFIERS,\n} from '@/components/Button';\nimport SplitButtonStart from './SplitButtonStart.vue';\nimport SplitButtonEnd from './SplitButtonEnd.vue';\nimport { DtDropdown } from '@/components/Dropdown';\nimport { hasSlotContent, warnIfUnmounted, returnFirstEl } from '@/common/utils';\nimport { ordinalSizeValidator } from '@/common/validators';\n\nexport default {\n name: 'DtSplitButton',\n\n components: {\n SplitButtonEnd,\n DtDropdown,\n SplitButtonStart,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Determines whether the start button should have active styling\n * @values true, false\n */\n startActive: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use startActive\n * @values true, false\n */\n alphaActive: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Descriptive label for the start button\n */\n startAriaLabel: {\n type: String,\n default: null,\n },\n\n /**\n * @deprecated Use startAriaLabel\n */\n alphaAriaLabel: {\n type: String,\n default: undefined,\n },\n\n /**\n * The position of the icon slot within the start button.\n * @values start, end, blockStart, blockEnd, left, right, top, bottom\n */\n startIconPosition: {\n type: String,\n default: 'left',\n validator: (position) => Object.keys(ICON_POSITION_MODIFIERS).includes(position),\n },\n\n /**\n * @deprecated Use startIconPosition\n * @values start, end, blockStart, blockEnd, left, right, top, bottom\n */\n alphaIconPosition: {\n type: String,\n default: undefined,\n validator: (position) => position === undefined || Object.keys(ICON_POSITION_MODIFIERS).includes(position),\n },\n\n /**\n * Used to customize the start button (aka left)\n */\n startButtonClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the start label container\n */\n startLabelClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the start button leading container\n */\n startLeadingClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * @deprecated Use startLeadingClass\n */\n alphaLeadingClass: {\n type: [String, Array, Object],\n default: undefined,\n },\n\n /**\n * Used to customize the start button trailing container\n */\n startTrailingClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * @deprecated Use startTrailingClass\n */\n alphaTrailingClass: {\n type: [String, Array, Object],\n default: undefined,\n },\n\n /**\n * @deprecated Use startLabelClass\n */\n alphaLabelClass: {\n type: [String, Array, Object],\n default: undefined,\n },\n\n /**\n * HTML button disabled attribute for start button only\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#disabled\" target=\"_blank\">\n * (Reference)\n * </a>\n * @values true, false\n */\n startDisabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use startDisabled\n * @values true, false\n */\n alphaDisabled: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Whether the start button should display a loading animation or not.\n * @values true, false\n */\n startLoading: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use startLoading\n * @values true, false\n */\n alphaLoading: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Text shown in tooltip when you hover the start button,\n * required if no content is passed to default slot\n */\n startTooltipText: {\n type: String,\n default: undefined,\n },\n\n /**\n * @deprecated Use startTooltipText\n */\n alphaTooltipText: {\n type: String,\n default: undefined,\n },\n\n /**\n * Determines whether a screenreader reads live updates of\n * the button content to the user while the button\n * is in focus.\n * @values true, false\n */\n assertiveOnFocus: {\n type: Boolean,\n default: false,\n },\n\n /**\n * HTML button disabled attribute for both buttons.\n * Use startDisabled or endDisabled to disable buttons individually.\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#disabled\" target=\"_blank\">\n * (Reference)\n * </a>\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The direction the dropdown displays relative to the anchor.\n * @values top, top-start, top-end, right, right-start, right-end, left, left-start, left-end, bottom, bottom-start, bottom-end, auto, auto-start, auto-end\n */\n dropdownPlacement: {\n type: String,\n default: 'bottom-end',\n },\n\n /**\n * The fill and outline of the button associated with its visual importance.\n * @values clear, outlined, primary\n */\n importance: {\n type: String,\n default: 'primary',\n validator: (i) => Object.keys(BUTTON_IMPORTANCE_MODIFIERS).includes(i),\n },\n\n /**\n * The color of the button.\n * The inverted value is deprecated and will be removed in the next major version.\n * Please use the v-dt-mode directive instead.\n * @values default, unstyled, muted, critical, positive, inverted\n */\n kind: {\n type: String,\n default: 'default',\n validator: (k) => Object.keys(BUTTON_KIND_MODIFIERS).includes(k),\n },\n\n /**\n * Determines whether the end button should have active styling\n * @values true, false\n */\n endActive: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use endActive\n * @values true, false\n */\n omegaActive: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Descriptive label for the end button\n */\n endAriaLabel: {\n type: String,\n default: null,\n },\n\n /**\n * @deprecated Use endAriaLabel\n */\n omegaAriaLabel: {\n type: String,\n default: undefined,\n },\n\n /**\n * Used to customize the end button (aka right)\n */\n endButtonClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * HTML button disabled attribute for end button only\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#disabled\" target=\"_blank\">\n * (Reference)\n * </a>\n * @values true, false\n */\n endDisabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use endDisabled\n * @values true, false\n */\n omegaDisabled: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Element ID, useful in case you need to reference the button\n * as an external anchor for popover.\n */\n endId: {\n type: String,\n default: undefined,\n },\n\n /**\n * @deprecated Use endId\n */\n omegaId: {\n type: String,\n default: undefined,\n },\n\n /**\n * Text shown in tooltip when you hover the end button,\n * required as it is an icon only button\n */\n endTooltipText: {\n type: String,\n default: undefined,\n },\n\n /**\n * @deprecated Use endTooltipText\n */\n omegaTooltipText: {\n type: String,\n default: undefined,\n },\n\n /**\n * The size of the button.\n * @values 100, 200, 300, 400, 500\n */\n size: {\n type: [String, Number],\n default: 300,\n validator: ordinalSizeValidator(BUTTON_SIZE_MODIFIERS),\n },\n\n /**\n * Button width, accepts\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/width\" target=\"_blank\">\n * CSS width attribute\n * </a>\n * values\n */\n width: {\n type: String,\n default: null,\n },\n\n /**\n * Whether to show the vertical divider between the start and end buttons.\n * Only applies when importance is \"clear\".\n * @values true, false\n */\n showDivider: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Vue router `to` prop for the start button.\n * When set, renders the start button as a `<router-link>`.\n */\n startTo: {\n type: [String, Object],\n default: null,\n },\n\n /**\n * Whether to use `router.replace()` instead of `router.push()`\n * when navigating via `startTo`.\n * @values true, false\n */\n startReplace: {\n type: Boolean,\n default: false,\n },\n\n /**\n * HTML href for the start button.\n * When set, renders the start button as an `<a>` element.\n */\n startHref: {\n type: String,\n default: null,\n },\n\n /**\n * HTML target attribute for the start button link.\n * Only applies when `startHref` is set.\n */\n startTarget: {\n type: String,\n default: null,\n },\n\n /**\n * HTML rel attribute for the start button link.\n * Only applies when `startHref` is set.\n */\n startRel: {\n type: String,\n default: null,\n },\n },\n\n emits: [\n /**\n * Native start button click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'start-clicked',\n\n /**\n * @deprecated Use start-clicked\n */\n 'alpha-clicked',\n\n /**\n * Native end button click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'end-clicked',\n\n /**\n * @deprecated Use end-clicked\n */\n 'omega-clicked',\n ],\n\n data () {\n return {\n isDropdownOpen: false,\n };\n },\n\n computed: {\n startButtonProps () {\n return {\n active: this.alphaActive ?? this.startActive,\n ariaLabel: this.alphaAriaLabel ?? this.startAriaLabel,\n assertiveOnFocus: this.assertiveOnFocus,\n disabled: this.disabled || (this.alphaDisabled ?? this.startDisabled),\n iconPosition: this.alphaIconPosition ?? this.startIconPosition,\n class: this.startButtonClass,\n labelClass: this.alphaLabelClass ?? this.startLabelClass,\n leadingClass: this.alphaLeadingClass ?? this.startLeadingClass,\n trailingClass: this.alphaTrailingClass ?? this.startTrailingClass,\n loading: this.alphaLoading ?? this.startLoading,\n importance: this.importance,\n kind: this.kind,\n size: this.size,\n tooltipText: this.alphaTooltipText ?? this.startTooltipText,\n to: this.startTo,\n replace: this.startReplace,\n href: this.startHref,\n target: this.startTarget,\n rel: this.startRel,\n style: this.$attrs.style,\n };\n },\n\n endButtonProps () {\n return {\n id: this.omegaId ?? this.endId,\n active: this.omegaActive ?? this.endActive,\n ariaLabel: this.omegaAriaLabel ?? this.endAriaLabel,\n disabled: this.disabled || (this.omegaDisabled ?? this.endDisabled),\n class: this.endButtonClass,\n importance: this.importance,\n kind: this.kind,\n size: this.size,\n tooltipText: this.omegaTooltipText ?? this.endTooltipText,\n style: this.$attrs.style,\n };\n },\n },\n\n created () {\n this.validateProps();\n },\n\n updated () {\n this.validateProps();\n },\n\n mounted () {\n warnIfUnmounted(returnFirstEl(this.$el), this.$options.name);\n },\n\n methods: {\n onStartClick () {\n this.$emit('start-clicked');\n this.$emit('alpha-clicked');\n },\n\n onEndClick () {\n this.$emit('end-clicked');\n this.$emit('omega-clicked');\n },\n\n validateProps () {\n this.validateStartButtonProps();\n this.validateEndButtonProps();\n this.validateShowDivider();\n },\n\n validateStartButtonProps () {\n if (hasSlotContent(this.$slots.default)) return;\n\n if ((hasSlotContent(this.$slots.startIcon) || hasSlotContent(this.$slots.alphaIcon)) &&\n !(this.alphaTooltipText ?? this.startTooltipText)) {\n console.warn('start-tooltip-text prop must be set if start button has an icon only');\n }\n },\n\n validateEndButtonProps () {\n if (hasSlotContent(this.$slots.end) || hasSlotContent(this.$slots.omega)) return;\n\n if (!(this.omegaTooltipText ?? this.endTooltipText)) {\n console.warn('end-tooltip-text prop is required as it is an icon-only button');\n }\n },\n\n validateShowDivider () {\n if (!this.showDivider && this.importance !== 'clear') {\n console.warn(\n 'show-divider prop set to false has no effect when importance is not \"clear\". ' +\n 'The divider is always shown for \"outlined\" and \"primary\" importances.',\n );\n }\n },\n },\n};\n</script>\n"],"mappings":"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"}
|
|
@@ -42,6 +42,14 @@ var w = {
|
|
|
42
42
|
default: void 0,
|
|
43
43
|
validator: (e) => e === void 0 || Object.keys(c).includes(e)
|
|
44
44
|
},
|
|
45
|
+
startButtonClass: {
|
|
46
|
+
type: [
|
|
47
|
+
String,
|
|
48
|
+
Array,
|
|
49
|
+
Object
|
|
50
|
+
],
|
|
51
|
+
default: ""
|
|
52
|
+
},
|
|
45
53
|
startLabelClass: {
|
|
46
54
|
type: [
|
|
47
55
|
String,
|
|
@@ -152,6 +160,14 @@ var w = {
|
|
|
152
160
|
type: String,
|
|
153
161
|
default: void 0
|
|
154
162
|
},
|
|
163
|
+
endButtonClass: {
|
|
164
|
+
type: [
|
|
165
|
+
String,
|
|
166
|
+
Array,
|
|
167
|
+
Object
|
|
168
|
+
],
|
|
169
|
+
default: ""
|
|
170
|
+
},
|
|
155
171
|
endDisabled: {
|
|
156
172
|
type: Boolean,
|
|
157
173
|
default: !1
|
|
@@ -227,6 +243,7 @@ var w = {
|
|
|
227
243
|
assertiveOnFocus: this.assertiveOnFocus,
|
|
228
244
|
disabled: this.disabled || (this.alphaDisabled ?? this.startDisabled),
|
|
229
245
|
iconPosition: this.alphaIconPosition ?? this.startIconPosition,
|
|
246
|
+
class: this.startButtonClass,
|
|
230
247
|
labelClass: this.alphaLabelClass ?? this.startLabelClass,
|
|
231
248
|
leadingClass: this.alphaLeadingClass ?? this.startLeadingClass,
|
|
232
249
|
trailingClass: this.alphaTrailingClass ?? this.startTrailingClass,
|
|
@@ -240,7 +257,6 @@ var w = {
|
|
|
240
257
|
href: this.startHref,
|
|
241
258
|
target: this.startTarget,
|
|
242
259
|
rel: this.startRel,
|
|
243
|
-
class: this.$attrs.class,
|
|
244
260
|
style: this.$attrs.style
|
|
245
261
|
};
|
|
246
262
|
},
|
|
@@ -250,11 +266,11 @@ var w = {
|
|
|
250
266
|
active: this.omegaActive ?? this.endActive,
|
|
251
267
|
ariaLabel: this.omegaAriaLabel ?? this.endAriaLabel,
|
|
252
268
|
disabled: this.disabled || (this.omegaDisabled ?? this.endDisabled),
|
|
269
|
+
class: this.endButtonClass,
|
|
253
270
|
importance: this.importance,
|
|
254
271
|
kind: this.kind,
|
|
255
272
|
size: this.size,
|
|
256
273
|
tooltipText: this.omegaTooltipText ?? this.endTooltipText,
|
|
257
|
-
class: this.$attrs.class,
|
|
258
274
|
style: this.$attrs.style
|
|
259
275
|
};
|
|
260
276
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"split-button.js","names":[],"sources":["../../../components/SplitButton/SplitButton.vue"],"sourcesContent":["<template>\n <span\n data-qa=\"dt-split-button\"\n :class=\"['d-split-btn', { 'd-split-btn--no-divider': !showDivider && importance === 'clear' }, $attrs.class]\"\n :style=\"[$attrs.style, { width }]\"\n >\n <split-button-start\n v-bind=\"startButtonProps\"\n ref=\"startButton\"\n @click=\"onStartClick\"\n >\n <!-- Dual-icon path: when startEndIcon is provided, use DtButton's startIcon/endIcon -->\n <template\n v-if=\"$slots.startEndIcon\"\n #startIcon=\"{ size: iconSize }\"\n >\n <!-- @slot Start (left) button icon slot -->\n <slot\n v-if=\"$slots.startIcon\"\n name=\"startIcon\"\n :size=\"iconSize\"\n />\n <!-- @slot @deprecated Use startIcon -->\n <slot\n v-else\n name=\"alphaIcon\"\n :size=\"iconSize\"\n />\n </template>\n <template\n v-if=\"$slots.startEndIcon\"\n #endIcon=\"{ size: iconSize }\"\n >\n <!-- @slot End-positioned icon within the start button (enables dual icons on the start button) -->\n <slot\n name=\"startEndIcon\"\n :size=\"iconSize\"\n />\n </template>\n <!-- Legacy single-icon path: uses DtButton's icon slot with iconPosition -->\n <template\n v-if=\"!$slots.startEndIcon\"\n #icon=\"{ size: iconSize }\"\n >\n <!-- @slot Start (left) button icon slot -->\n <slot\n v-if=\"$slots.startIcon\"\n name=\"startIcon\"\n :size=\"iconSize\"\n />\n <!-- @slot @deprecated Use startIcon -->\n <slot\n v-else\n name=\"alphaIcon\"\n :size=\"iconSize\"\n />\n </template>\n <template\n v-if=\"$slots.leading\"\n #leading\n >\n <!-- @slot Leading slot, forwarded to the alpha button's leading slot -->\n <slot name=\"leading\" />\n </template>\n <template\n v-if=\"$slots.trailing\"\n #trailing\n >\n <!-- @slot Trailing slot, forwarded to the alpha button's trailing slot -->\n <slot name=\"trailing\" />\n </template>\n <!-- @slot Default content slot -->\n <slot name=\"default\" />\n </split-button-start>\n <!-- @slot End (right) content slot, overrides end button styling and functionality completely -->\n <template v-if=\"$slots.end\">\n <slot name=\"end\" />\n </template>\n <!-- @slot @deprecated Use end -->\n <template v-else-if=\"$slots.omega\">\n <slot name=\"omega\" />\n </template>\n <template v-else>\n <dt-dropdown\n v-if=\"$slots.dropdownList\"\n :placement=\"dropdownPlacement\"\n @click=\"isDropdownOpen = true\"\n @opened=\"open => isDropdownOpen = open\"\n >\n <template #anchor=\"attrs\">\n <split-button-end\n v-bind=\"{ ...attrs, ...endButtonProps }\"\n :active=\"isDropdownOpen\"\n @click=\"onEndClick\"\n >\n <template #icon=\"{ size: iconSize }\">\n <!-- @slot End (right) button icon slot -->\n <slot\n v-if=\"$slots.endIcon\"\n name=\"endIcon\"\n :size=\"iconSize\"\n />\n <!-- @slot @deprecated Use endIcon -->\n <slot\n v-else\n name=\"omegaIcon\"\n :size=\"iconSize\"\n />\n </template>\n </split-button-end>\n </template>\n <template #list=\"{ close }\">\n <!-- @slot Built-in dropdown content slot, use of dt-list-item is highly recommended here. -->\n <slot\n name=\"dropdownList\"\n :close=\"close\"\n />\n </template>\n </dt-dropdown>\n\n <split-button-end\n v-else\n v-bind=\"endButtonProps\"\n @click=\"onEndClick\"\n >\n <template #icon=\"{ size: iconSize }\">\n <!-- @slot End (right) button icon slot -->\n <slot\n v-if=\"$slots.endIcon\"\n name=\"endIcon\"\n :size=\"iconSize\"\n />\n <!-- @slot @deprecated Use endIcon -->\n <slot\n v-else\n name=\"omegaIcon\"\n :size=\"iconSize\"\n />\n </template>\n </split-button-end>\n </template>\n </span>\n</template>\n\n<script>\nimport {\n BUTTON_IMPORTANCE_MODIFIERS,\n BUTTON_KIND_MODIFIERS,\n BUTTON_SIZE_MODIFIERS,\n ICON_POSITION_MODIFIERS,\n} from '@/components/Button';\nimport SplitButtonStart from './SplitButtonStart.vue';\nimport SplitButtonEnd from './SplitButtonEnd.vue';\nimport { DtDropdown } from '@/components/Dropdown';\nimport { hasSlotContent, warnIfUnmounted, returnFirstEl } from '@/common/utils';\nimport { ordinalSizeValidator } from '@/common/validators';\n\nexport default {\n name: 'DtSplitButton',\n\n components: {\n SplitButtonEnd,\n DtDropdown,\n SplitButtonStart,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Determines whether the start button should have active styling\n * @values true, false\n */\n startActive: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use startActive\n * @values true, false\n */\n alphaActive: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Descriptive label for the start button\n */\n startAriaLabel: {\n type: String,\n default: null,\n },\n\n /**\n * @deprecated Use startAriaLabel\n */\n alphaAriaLabel: {\n type: String,\n default: undefined,\n },\n\n /**\n * The position of the icon slot within the start button.\n * @values start, end, blockStart, blockEnd, left, right, top, bottom\n */\n startIconPosition: {\n type: String,\n default: 'left',\n validator: (position) => Object.keys(ICON_POSITION_MODIFIERS).includes(position),\n },\n\n /**\n * @deprecated Use startIconPosition\n * @values start, end, blockStart, blockEnd, left, right, top, bottom\n */\n alphaIconPosition: {\n type: String,\n default: undefined,\n validator: (position) => position === undefined || Object.keys(ICON_POSITION_MODIFIERS).includes(position),\n },\n\n /**\n * Used to customize the start label container\n */\n startLabelClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the start button leading container\n */\n startLeadingClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * @deprecated Use startLeadingClass\n */\n alphaLeadingClass: {\n type: [String, Array, Object],\n default: undefined,\n },\n\n /**\n * Used to customize the start button trailing container\n */\n startTrailingClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * @deprecated Use startTrailingClass\n */\n alphaTrailingClass: {\n type: [String, Array, Object],\n default: undefined,\n },\n\n /**\n * @deprecated Use startLabelClass\n */\n alphaLabelClass: {\n type: [String, Array, Object],\n default: undefined,\n },\n\n /**\n * HTML button disabled attribute for start button only\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#disabled\" target=\"_blank\">\n * (Reference)\n * </a>\n * @values true, false\n */\n startDisabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use startDisabled\n * @values true, false\n */\n alphaDisabled: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Whether the start button should display a loading animation or not.\n * @values true, false\n */\n startLoading: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use startLoading\n * @values true, false\n */\n alphaLoading: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Text shown in tooltip when you hover the start button,\n * required if no content is passed to default slot\n */\n startTooltipText: {\n type: String,\n default: undefined,\n },\n\n /**\n * @deprecated Use startTooltipText\n */\n alphaTooltipText: {\n type: String,\n default: undefined,\n },\n\n /**\n * Determines whether a screenreader reads live updates of\n * the button content to the user while the button\n * is in focus.\n * @values true, false\n */\n assertiveOnFocus: {\n type: Boolean,\n default: false,\n },\n\n /**\n * HTML button disabled attribute for both buttons.\n * Use startDisabled or endDisabled to disable buttons individually.\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#disabled\" target=\"_blank\">\n * (Reference)\n * </a>\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The direction the dropdown displays relative to the anchor.\n * @values top, top-start, top-end, right, right-start, right-end, left, left-start, left-end, bottom, bottom-start, bottom-end, auto, auto-start, auto-end\n */\n dropdownPlacement: {\n type: String,\n default: 'bottom-end',\n },\n\n /**\n * The fill and outline of the button associated with its visual importance.\n * @values clear, outlined, primary\n */\n importance: {\n type: String,\n default: 'primary',\n validator: (i) => Object.keys(BUTTON_IMPORTANCE_MODIFIERS).includes(i),\n },\n\n /**\n * The color of the button.\n * The inverted value is deprecated and will be removed in the next major version.\n * Please use the v-dt-mode directive instead.\n * @values default, unstyled, muted, critical, positive, inverted\n */\n kind: {\n type: String,\n default: 'default',\n validator: (k) => Object.keys(BUTTON_KIND_MODIFIERS).includes(k),\n },\n\n /**\n * Determines whether the end button should have active styling\n * @values true, false\n */\n endActive: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use endActive\n * @values true, false\n */\n omegaActive: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Descriptive label for the end button\n */\n endAriaLabel: {\n type: String,\n default: null,\n },\n\n /**\n * @deprecated Use endAriaLabel\n */\n omegaAriaLabel: {\n type: String,\n default: undefined,\n },\n\n /**\n * HTML button disabled attribute for end button only\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#disabled\" target=\"_blank\">\n * (Reference)\n * </a>\n * @values true, false\n */\n endDisabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use endDisabled\n * @values true, false\n */\n omegaDisabled: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Element ID, useful in case you need to reference the button\n * as an external anchor for popover.\n */\n endId: {\n type: String,\n default: undefined,\n },\n\n /**\n * @deprecated Use endId\n */\n omegaId: {\n type: String,\n default: undefined,\n },\n\n /**\n * Text shown in tooltip when you hover the end button,\n * required as it is an icon only button\n */\n endTooltipText: {\n type: String,\n default: undefined,\n },\n\n /**\n * @deprecated Use endTooltipText\n */\n omegaTooltipText: {\n type: String,\n default: undefined,\n },\n\n /**\n * The size of the button.\n * @values 100, 200, 300, 400, 500\n */\n size: {\n type: [String, Number],\n default: 300,\n validator: ordinalSizeValidator(BUTTON_SIZE_MODIFIERS),\n },\n\n /**\n * Button width, accepts\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/width\" target=\"_blank\">\n * CSS width attribute\n * </a>\n * values\n */\n width: {\n type: String,\n default: null,\n },\n\n /**\n * Whether to show the vertical divider between the start and end buttons.\n * Only applies when importance is \"clear\".\n * @values true, false\n */\n showDivider: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Vue router `to` prop for the start button.\n * When set, renders the start button as a `<router-link>`.\n */\n startTo: {\n type: [String, Object],\n default: null,\n },\n\n /**\n * Whether to use `router.replace()` instead of `router.push()`\n * when navigating via `startTo`.\n * @values true, false\n */\n startReplace: {\n type: Boolean,\n default: false,\n },\n\n /**\n * HTML href for the start button.\n * When set, renders the start button as an `<a>` element.\n */\n startHref: {\n type: String,\n default: null,\n },\n\n /**\n * HTML target attribute for the start button link.\n * Only applies when `startHref` is set.\n */\n startTarget: {\n type: String,\n default: null,\n },\n\n /**\n * HTML rel attribute for the start button link.\n * Only applies when `startHref` is set.\n */\n startRel: {\n type: String,\n default: null,\n },\n },\n\n emits: [\n /**\n * Native start button click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'start-clicked',\n\n /**\n * @deprecated Use start-clicked\n */\n 'alpha-clicked',\n\n /**\n * Native end button click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'end-clicked',\n\n /**\n * @deprecated Use end-clicked\n */\n 'omega-clicked',\n ],\n\n data () {\n return {\n isDropdownOpen: false,\n };\n },\n\n computed: {\n startButtonProps () {\n return {\n active: this.alphaActive ?? this.startActive,\n ariaLabel: this.alphaAriaLabel ?? this.startAriaLabel,\n assertiveOnFocus: this.assertiveOnFocus,\n disabled: this.disabled || (this.alphaDisabled ?? this.startDisabled),\n iconPosition: this.alphaIconPosition ?? this.startIconPosition,\n labelClass: this.alphaLabelClass ?? this.startLabelClass,\n leadingClass: this.alphaLeadingClass ?? this.startLeadingClass,\n trailingClass: this.alphaTrailingClass ?? this.startTrailingClass,\n loading: this.alphaLoading ?? this.startLoading,\n importance: this.importance,\n kind: this.kind,\n size: this.size,\n tooltipText: this.alphaTooltipText ?? this.startTooltipText,\n to: this.startTo,\n replace: this.startReplace,\n href: this.startHref,\n target: this.startTarget,\n rel: this.startRel,\n class: this.$attrs.class,\n style: this.$attrs.style,\n };\n },\n\n endButtonProps () {\n return {\n id: this.omegaId ?? this.endId,\n active: this.omegaActive ?? this.endActive,\n ariaLabel: this.omegaAriaLabel ?? this.endAriaLabel,\n disabled: this.disabled || (this.omegaDisabled ?? this.endDisabled),\n importance: this.importance,\n kind: this.kind,\n size: this.size,\n tooltipText: this.omegaTooltipText ?? this.endTooltipText,\n class: this.$attrs.class,\n style: this.$attrs.style,\n };\n },\n },\n\n created () {\n this.validateProps();\n },\n\n updated () {\n this.validateProps();\n },\n\n mounted () {\n warnIfUnmounted(returnFirstEl(this.$el), this.$options.name);\n },\n\n methods: {\n onStartClick () {\n this.$emit('start-clicked');\n this.$emit('alpha-clicked');\n },\n\n onEndClick () {\n this.$emit('end-clicked');\n this.$emit('omega-clicked');\n },\n\n validateProps () {\n this.validateStartButtonProps();\n this.validateEndButtonProps();\n this.validateShowDivider();\n },\n\n validateStartButtonProps () {\n if (hasSlotContent(this.$slots.default)) return;\n\n if ((hasSlotContent(this.$slots.startIcon) || hasSlotContent(this.$slots.alphaIcon)) &&\n !(this.alphaTooltipText ?? this.startTooltipText)) {\n console.warn('start-tooltip-text prop must be set if start button has an icon only');\n }\n },\n\n validateEndButtonProps () {\n if (hasSlotContent(this.$slots.end) || hasSlotContent(this.$slots.omega)) return;\n\n if (!(this.omegaTooltipText ?? this.endTooltipText)) {\n console.warn('end-tooltip-text prop is required as it is an icon-only button');\n }\n },\n\n validateShowDivider () {\n if (!this.showDivider && this.importance !== 'clear') {\n console.warn(\n 'show-divider prop set to false has no effect when importance is not \"clear\". ' +\n 'The divider is always shown for \"outlined\" and \"primary\" importances.',\n );\n }\n },\n },\n};\n</script>\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"split-button.js","names":[],"sources":["../../../components/SplitButton/SplitButton.vue"],"sourcesContent":["<template>\n <span\n data-qa=\"dt-split-button\"\n :class=\"['d-split-btn', { 'd-split-btn--no-divider': !showDivider && importance === 'clear' }, $attrs.class]\"\n :style=\"[$attrs.style, { width }]\"\n >\n <split-button-start\n v-bind=\"startButtonProps\"\n ref=\"startButton\"\n @click=\"onStartClick\"\n >\n <!-- Dual-icon path: when startEndIcon is provided, use DtButton's startIcon/endIcon -->\n <template\n v-if=\"$slots.startEndIcon\"\n #startIcon=\"{ size: iconSize }\"\n >\n <!-- @slot Start (left) button icon slot -->\n <slot\n v-if=\"$slots.startIcon\"\n name=\"startIcon\"\n :size=\"iconSize\"\n />\n <!-- @slot @deprecated Use startIcon -->\n <slot\n v-else\n name=\"alphaIcon\"\n :size=\"iconSize\"\n />\n </template>\n <template\n v-if=\"$slots.startEndIcon\"\n #endIcon=\"{ size: iconSize }\"\n >\n <!-- @slot End-positioned icon within the start button (enables dual icons on the start button) -->\n <slot\n name=\"startEndIcon\"\n :size=\"iconSize\"\n />\n </template>\n <!-- Legacy single-icon path: uses DtButton's icon slot with iconPosition -->\n <template\n v-if=\"!$slots.startEndIcon\"\n #icon=\"{ size: iconSize }\"\n >\n <!-- @slot Start (left) button icon slot -->\n <slot\n v-if=\"$slots.startIcon\"\n name=\"startIcon\"\n :size=\"iconSize\"\n />\n <!-- @slot @deprecated Use startIcon -->\n <slot\n v-else\n name=\"alphaIcon\"\n :size=\"iconSize\"\n />\n </template>\n <template\n v-if=\"$slots.leading\"\n #leading\n >\n <!-- @slot Leading slot, forwarded to the alpha button's leading slot -->\n <slot name=\"leading\" />\n </template>\n <template\n v-if=\"$slots.trailing\"\n #trailing\n >\n <!-- @slot Trailing slot, forwarded to the alpha button's trailing slot -->\n <slot name=\"trailing\" />\n </template>\n <!-- @slot Default content slot -->\n <slot name=\"default\" />\n </split-button-start>\n <!-- @slot End (right) content slot, overrides end button styling and functionality completely -->\n <template v-if=\"$slots.end\">\n <slot name=\"end\" />\n </template>\n <!-- @slot @deprecated Use end -->\n <template v-else-if=\"$slots.omega\">\n <slot name=\"omega\" />\n </template>\n <template v-else>\n <dt-dropdown\n v-if=\"$slots.dropdownList\"\n :placement=\"dropdownPlacement\"\n @click=\"isDropdownOpen = true\"\n @opened=\"open => isDropdownOpen = open\"\n >\n <template #anchor=\"attrs\">\n <split-button-end\n v-bind=\"{ ...attrs, ...endButtonProps }\"\n :active=\"isDropdownOpen\"\n @click=\"onEndClick\"\n >\n <template #icon=\"{ size: iconSize }\">\n <!-- @slot End (right) button icon slot -->\n <slot\n v-if=\"$slots.endIcon\"\n name=\"endIcon\"\n :size=\"iconSize\"\n />\n <!-- @slot @deprecated Use endIcon -->\n <slot\n v-else\n name=\"omegaIcon\"\n :size=\"iconSize\"\n />\n </template>\n </split-button-end>\n </template>\n <template #list=\"{ close }\">\n <!-- @slot Built-in dropdown content slot, use of dt-list-item is highly recommended here. -->\n <slot\n name=\"dropdownList\"\n :close=\"close\"\n />\n </template>\n </dt-dropdown>\n\n <split-button-end\n v-else\n v-bind=\"endButtonProps\"\n @click=\"onEndClick\"\n >\n <template #icon=\"{ size: iconSize }\">\n <!-- @slot End (right) button icon slot -->\n <slot\n v-if=\"$slots.endIcon\"\n name=\"endIcon\"\n :size=\"iconSize\"\n />\n <!-- @slot @deprecated Use endIcon -->\n <slot\n v-else\n name=\"omegaIcon\"\n :size=\"iconSize\"\n />\n </template>\n </split-button-end>\n </template>\n </span>\n</template>\n\n<script>\nimport {\n BUTTON_IMPORTANCE_MODIFIERS,\n BUTTON_KIND_MODIFIERS,\n BUTTON_SIZE_MODIFIERS,\n ICON_POSITION_MODIFIERS,\n} from '@/components/Button';\nimport SplitButtonStart from './SplitButtonStart.vue';\nimport SplitButtonEnd from './SplitButtonEnd.vue';\nimport { DtDropdown } from '@/components/Dropdown';\nimport { hasSlotContent, warnIfUnmounted, returnFirstEl } from '@/common/utils';\nimport { ordinalSizeValidator } from '@/common/validators';\n\nexport default {\n name: 'DtSplitButton',\n\n components: {\n SplitButtonEnd,\n DtDropdown,\n SplitButtonStart,\n },\n\n inheritAttrs: false,\n\n props: {\n /**\n * Determines whether the start button should have active styling\n * @values true, false\n */\n startActive: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use startActive\n * @values true, false\n */\n alphaActive: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Descriptive label for the start button\n */\n startAriaLabel: {\n type: String,\n default: null,\n },\n\n /**\n * @deprecated Use startAriaLabel\n */\n alphaAriaLabel: {\n type: String,\n default: undefined,\n },\n\n /**\n * The position of the icon slot within the start button.\n * @values start, end, blockStart, blockEnd, left, right, top, bottom\n */\n startIconPosition: {\n type: String,\n default: 'left',\n validator: (position) => Object.keys(ICON_POSITION_MODIFIERS).includes(position),\n },\n\n /**\n * @deprecated Use startIconPosition\n * @values start, end, blockStart, blockEnd, left, right, top, bottom\n */\n alphaIconPosition: {\n type: String,\n default: undefined,\n validator: (position) => position === undefined || Object.keys(ICON_POSITION_MODIFIERS).includes(position),\n },\n\n /**\n * Used to customize the start button (aka left)\n */\n startButtonClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the start label container\n */\n startLabelClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * Used to customize the start button leading container\n */\n startLeadingClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * @deprecated Use startLeadingClass\n */\n alphaLeadingClass: {\n type: [String, Array, Object],\n default: undefined,\n },\n\n /**\n * Used to customize the start button trailing container\n */\n startTrailingClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * @deprecated Use startTrailingClass\n */\n alphaTrailingClass: {\n type: [String, Array, Object],\n default: undefined,\n },\n\n /**\n * @deprecated Use startLabelClass\n */\n alphaLabelClass: {\n type: [String, Array, Object],\n default: undefined,\n },\n\n /**\n * HTML button disabled attribute for start button only\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#disabled\" target=\"_blank\">\n * (Reference)\n * </a>\n * @values true, false\n */\n startDisabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use startDisabled\n * @values true, false\n */\n alphaDisabled: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Whether the start button should display a loading animation or not.\n * @values true, false\n */\n startLoading: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use startLoading\n * @values true, false\n */\n alphaLoading: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Text shown in tooltip when you hover the start button,\n * required if no content is passed to default slot\n */\n startTooltipText: {\n type: String,\n default: undefined,\n },\n\n /**\n * @deprecated Use startTooltipText\n */\n alphaTooltipText: {\n type: String,\n default: undefined,\n },\n\n /**\n * Determines whether a screenreader reads live updates of\n * the button content to the user while the button\n * is in focus.\n * @values true, false\n */\n assertiveOnFocus: {\n type: Boolean,\n default: false,\n },\n\n /**\n * HTML button disabled attribute for both buttons.\n * Use startDisabled or endDisabled to disable buttons individually.\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#disabled\" target=\"_blank\">\n * (Reference)\n * </a>\n * @values true, false\n */\n disabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * The direction the dropdown displays relative to the anchor.\n * @values top, top-start, top-end, right, right-start, right-end, left, left-start, left-end, bottom, bottom-start, bottom-end, auto, auto-start, auto-end\n */\n dropdownPlacement: {\n type: String,\n default: 'bottom-end',\n },\n\n /**\n * The fill and outline of the button associated with its visual importance.\n * @values clear, outlined, primary\n */\n importance: {\n type: String,\n default: 'primary',\n validator: (i) => Object.keys(BUTTON_IMPORTANCE_MODIFIERS).includes(i),\n },\n\n /**\n * The color of the button.\n * The inverted value is deprecated and will be removed in the next major version.\n * Please use the v-dt-mode directive instead.\n * @values default, unstyled, muted, critical, positive, inverted\n */\n kind: {\n type: String,\n default: 'default',\n validator: (k) => Object.keys(BUTTON_KIND_MODIFIERS).includes(k),\n },\n\n /**\n * Determines whether the end button should have active styling\n * @values true, false\n */\n endActive: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use endActive\n * @values true, false\n */\n omegaActive: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Descriptive label for the end button\n */\n endAriaLabel: {\n type: String,\n default: null,\n },\n\n /**\n * @deprecated Use endAriaLabel\n */\n omegaAriaLabel: {\n type: String,\n default: undefined,\n },\n\n /**\n * Used to customize the end button (aka right)\n */\n endButtonClass: {\n type: [String, Array, Object],\n default: '',\n },\n\n /**\n * HTML button disabled attribute for end button only\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#disabled\" target=\"_blank\">\n * (Reference)\n * </a>\n * @values true, false\n */\n endDisabled: {\n type: Boolean,\n default: false,\n },\n\n /**\n * @deprecated Use endDisabled\n * @values true, false\n */\n omegaDisabled: {\n type: Boolean,\n default: null,\n },\n\n /**\n * Element ID, useful in case you need to reference the button\n * as an external anchor for popover.\n */\n endId: {\n type: String,\n default: undefined,\n },\n\n /**\n * @deprecated Use endId\n */\n omegaId: {\n type: String,\n default: undefined,\n },\n\n /**\n * Text shown in tooltip when you hover the end button,\n * required as it is an icon only button\n */\n endTooltipText: {\n type: String,\n default: undefined,\n },\n\n /**\n * @deprecated Use endTooltipText\n */\n omegaTooltipText: {\n type: String,\n default: undefined,\n },\n\n /**\n * The size of the button.\n * @values 100, 200, 300, 400, 500\n */\n size: {\n type: [String, Number],\n default: 300,\n validator: ordinalSizeValidator(BUTTON_SIZE_MODIFIERS),\n },\n\n /**\n * Button width, accepts\n * <a class=\"d-link\" href=\"https://developer.mozilla.org/en-US/docs/Web/CSS/width\" target=\"_blank\">\n * CSS width attribute\n * </a>\n * values\n */\n width: {\n type: String,\n default: null,\n },\n\n /**\n * Whether to show the vertical divider between the start and end buttons.\n * Only applies when importance is \"clear\".\n * @values true, false\n */\n showDivider: {\n type: Boolean,\n default: true,\n },\n\n /**\n * Vue router `to` prop for the start button.\n * When set, renders the start button as a `<router-link>`.\n */\n startTo: {\n type: [String, Object],\n default: null,\n },\n\n /**\n * Whether to use `router.replace()` instead of `router.push()`\n * when navigating via `startTo`.\n * @values true, false\n */\n startReplace: {\n type: Boolean,\n default: false,\n },\n\n /**\n * HTML href for the start button.\n * When set, renders the start button as an `<a>` element.\n */\n startHref: {\n type: String,\n default: null,\n },\n\n /**\n * HTML target attribute for the start button link.\n * Only applies when `startHref` is set.\n */\n startTarget: {\n type: String,\n default: null,\n },\n\n /**\n * HTML rel attribute for the start button link.\n * Only applies when `startHref` is set.\n */\n startRel: {\n type: String,\n default: null,\n },\n },\n\n emits: [\n /**\n * Native start button click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'start-clicked',\n\n /**\n * @deprecated Use start-clicked\n */\n 'alpha-clicked',\n\n /**\n * Native end button click event\n *\n * @event click\n * @type {PointerEvent | KeyboardEvent}\n */\n 'end-clicked',\n\n /**\n * @deprecated Use end-clicked\n */\n 'omega-clicked',\n ],\n\n data () {\n return {\n isDropdownOpen: false,\n };\n },\n\n computed: {\n startButtonProps () {\n return {\n active: this.alphaActive ?? this.startActive,\n ariaLabel: this.alphaAriaLabel ?? this.startAriaLabel,\n assertiveOnFocus: this.assertiveOnFocus,\n disabled: this.disabled || (this.alphaDisabled ?? this.startDisabled),\n iconPosition: this.alphaIconPosition ?? this.startIconPosition,\n class: this.startButtonClass,\n labelClass: this.alphaLabelClass ?? this.startLabelClass,\n leadingClass: this.alphaLeadingClass ?? this.startLeadingClass,\n trailingClass: this.alphaTrailingClass ?? this.startTrailingClass,\n loading: this.alphaLoading ?? this.startLoading,\n importance: this.importance,\n kind: this.kind,\n size: this.size,\n tooltipText: this.alphaTooltipText ?? this.startTooltipText,\n to: this.startTo,\n replace: this.startReplace,\n href: this.startHref,\n target: this.startTarget,\n rel: this.startRel,\n style: this.$attrs.style,\n };\n },\n\n endButtonProps () {\n return {\n id: this.omegaId ?? this.endId,\n active: this.omegaActive ?? this.endActive,\n ariaLabel: this.omegaAriaLabel ?? this.endAriaLabel,\n disabled: this.disabled || (this.omegaDisabled ?? this.endDisabled),\n class: this.endButtonClass,\n importance: this.importance,\n kind: this.kind,\n size: this.size,\n tooltipText: this.omegaTooltipText ?? this.endTooltipText,\n style: this.$attrs.style,\n };\n },\n },\n\n created () {\n this.validateProps();\n },\n\n updated () {\n this.validateProps();\n },\n\n mounted () {\n warnIfUnmounted(returnFirstEl(this.$el), this.$options.name);\n },\n\n methods: {\n onStartClick () {\n this.$emit('start-clicked');\n this.$emit('alpha-clicked');\n },\n\n onEndClick () {\n this.$emit('end-clicked');\n this.$emit('omega-clicked');\n },\n\n validateProps () {\n this.validateStartButtonProps();\n this.validateEndButtonProps();\n this.validateShowDivider();\n },\n\n validateStartButtonProps () {\n if (hasSlotContent(this.$slots.default)) return;\n\n if ((hasSlotContent(this.$slots.startIcon) || hasSlotContent(this.$slots.alphaIcon)) &&\n !(this.alphaTooltipText ?? this.startTooltipText)) {\n console.warn('start-tooltip-text prop must be set if start button has an icon only');\n }\n },\n\n validateEndButtonProps () {\n if (hasSlotContent(this.$slots.end) || hasSlotContent(this.$slots.omega)) return;\n\n if (!(this.omegaTooltipText ?? this.endTooltipText)) {\n console.warn('end-tooltip-text prop is required as it is an icon-only button');\n }\n },\n\n validateShowDivider () {\n if (!this.showDivider && this.importance !== 'clear') {\n console.warn(\n 'show-divider prop set to false has no effect when importance is not \"clear\". ' +\n 'The divider is always shown for \"outlined\" and \"primary\" importances.',\n );\n }\n },\n },\n};\n</script>\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dialpad/dialtone-vue",
|
|
3
|
-
"version": "4.0
|
|
3
|
+
"version": "4.1.0",
|
|
4
4
|
"description": "Vue component library for Dialpad's design system Dialtone",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist"
|
|
@@ -46,8 +46,8 @@
|
|
|
46
46
|
"overlayscrollbars": "2.10.0",
|
|
47
47
|
"regex-combined-emojis": "1.6.0",
|
|
48
48
|
"tippy.js": "6.3.7",
|
|
49
|
-
"@dialpad/dialtone-
|
|
50
|
-
"@dialpad/dialtone-
|
|
49
|
+
"@dialpad/dialtone-icons": "5.0.0",
|
|
50
|
+
"@dialpad/dialtone-emojis": "1.3.0"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
53
|
"@storybook/addon-a11y": "10.3.0",
|
|
@@ -61,8 +61,8 @@
|
|
|
61
61
|
"react": "19.2.4",
|
|
62
62
|
"storybook": "10.3.0",
|
|
63
63
|
"vue": "^3.3.4",
|
|
64
|
-
"@dialpad/
|
|
65
|
-
"@dialpad/dialtone
|
|
64
|
+
"@dialpad/dialtone-css": "9.0.1",
|
|
65
|
+
"@dialpad/generator-dialtone": "0.1.0"
|
|
66
66
|
},
|
|
67
67
|
"peerDependencies": {
|
|
68
68
|
"vue": ">=3.2",
|