wiki.techinc.nl/resources/lib/codex/modules/CdxButton.cjs
lwatson f4408c6d6e Update Codex from v1.9.0 to v1.10.0
Bug: T314438
Bug: T364442
Bug: T369223
Bug: T369633
Bug: T369934
Bug: T370189
Bug: T370555

Change-Id: Ic13f3b6fc62522830b1cf118f6052872d88d52a2
Depends-On: Ie236c633c3cfa181f81360daa3c1ceeca7f669ec
2024-07-25 19:08:30 +00:00

1 line
1.4 KiB
JavaScript

"use strict";const e=require("vue"),i=require("./constants.js"),f=require("./useIconOnlyButton.js"),g=require("./_plugin-vue_export-helper.js"),m=i.makeStringTypeValidator(i.ButtonActions),k=i.makeStringTypeValidator(i.ButtonWeights),b=i.makeStringTypeValidator(i.ButtonSizes),v=e.defineComponent({name:"CdxButton",props:{action:{type:String,default:"default",validator:m},weight:{type:String,default:"normal",validator:k},size:{type:String,default:"medium",validator:b}},emits:["click"],setup(t,{emit:n,slots:r,attrs:a}){const l=f.useIconOnlyButton(r.default,a,"CdxButton"),u=e.ref(!1),o=e.computed(()=>({["cdx-button--action-".concat(t.action)]:!0,["cdx-button--weight-".concat(t.weight)]:!0,["cdx-button--size-".concat(t.size)]:!0,"cdx-button--framed":t.weight!=="quiet","cdx-button--icon-only":l.value,"cdx-button--is-active":u.value})),d=s=>{n("click",s)},c=s=>{u.value=s};function p(){c(!0)}function y(s){c(!1),n("click",s)}return{rootClasses:o,onClick:d,onKeyDown:p,onKeyUp:y}}});function w(t,n,r,a,l,u){return e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(["cdx-button",t.rootClasses]),onKeydown:n[0]||(n[0]=e.withKeys(e.withModifiers((...o)=>t.onKeyDown&&t.onKeyDown(...o),["prevent"]),["space","enter"])),onKeyup:n[1]||(n[1]=e.withKeys((...o)=>t.onKeyUp&&t.onKeyUp(...o),["space","enter"])),onClick:n[2]||(n[2]=(...o)=>t.onClick&&t.onClick(...o))},[e.renderSlot(t.$slots,"default")],34)}const C=g._export_sfc(v,[["render",w]]);module.exports=C;