@vonage/vivid 3.39.0 → 3.40.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/accordion/index.js +1 -1
- package/accordion-item/index.js +1 -1
- package/alert/index.js +3 -2
- package/banner/index.js +2 -1
- package/breadcrumb-item/index.js +1 -1
- package/button/index.js +2 -1
- package/card/index.js +1 -1
- package/checkbox/index.js +1 -1
- package/combobox/index.js +5 -3
- package/custom-elements.json +512 -0
- package/data-grid/index.js +1 -0
- package/date-picker/index.js +6 -4
- package/date-range-picker/index.js +5 -3
- package/dialog/index.js +6 -2
- package/elevation/index.js +1 -1
- package/fab/index.js +1 -1
- package/file-picker/index.js +2 -1
- package/focus/index.js +1 -1
- package/header/index.js +1 -1
- package/index.js +23 -19
- package/lib/checkbox/checkbox.d.ts +1 -0
- package/lib/components.d.ts +1 -0
- package/lib/dialog/dialog.d.ts +4 -0
- package/lib/dialog/locale.d.ts +3 -0
- package/lib/menu/menu.d.ts +1 -0
- package/lib/number-field/locale.d.ts +4 -0
- package/lib/number-field/number-field.d.ts +4 -2
- package/lib/progress/progress.d.ts +1 -0
- package/lib/progress-ring/progress-ring.d.ts +1 -0
- package/lib/radio/radio.d.ts +1 -0
- package/lib/selectable-box/definition.d.ts +3 -0
- package/lib/selectable-box/selectable-box.d.ts +13 -0
- package/lib/selectable-box/selectable-box.template.d.ts +4 -0
- package/lib/slider/definition.d.ts +1 -0
- package/lib/slider/slider.d.ts +5 -0
- package/lib/text-area/text-area.d.ts +3 -0
- package/lib/text-field/text-field.d.ts +5 -2
- package/listbox/index.js +3 -2
- package/locales/en-GB.js +7 -0
- package/locales/en-US.js +7 -0
- package/locales/ja-JP.js +7 -0
- package/locales/zh-CN.js +7 -0
- package/menu/index.js +4 -3
- package/menu-item/index.js +1 -1
- package/nav-disclosure/index.js +1 -1
- package/nav-item/index.js +1 -1
- package/number-field/index.js +3 -1
- package/option/index.js +1 -1
- package/package.json +1 -1
- package/pagination/index.js +2 -1
- package/popup/index.js +4 -3
- package/radio/index.js +1 -1
- package/select/index.js +5 -3
- package/selectable-box/index.js +23 -0
- package/shared/Reflector.js +65 -0
- package/shared/date-picker/calendar/segment.d.ts +21 -0
- package/shared/date-picker/date-picker-base.d.ts +1 -0
- package/shared/definition.js +2 -2
- package/shared/definition10.js +4 -73
- package/shared/definition11.js +1 -1
- package/shared/definition12.js +1 -1
- package/shared/definition13.js +2 -2
- package/shared/definition14.js +12 -5
- package/shared/definition15.js +3 -3
- package/shared/definition16.js +22 -8
- package/shared/definition17.js +5 -5
- package/shared/definition18.js +15 -8
- package/shared/definition19.js +18 -10
- package/shared/definition2.js +2 -2
- package/shared/definition20.js +1 -1
- package/shared/definition21.js +1 -1
- package/shared/definition22.js +2 -2
- package/shared/definition23.js +4 -3
- package/shared/definition24.js +2 -2
- package/shared/definition27.js +13 -4
- package/shared/definition28.js +2 -2
- package/shared/definition29.js +2 -2
- package/shared/definition3.js +1 -1
- package/shared/definition30.js +2 -2
- package/shared/definition32.js +1 -1
- package/shared/definition33.js +19 -4
- package/shared/definition34.js +2 -2
- package/shared/definition35.js +3 -2
- package/shared/definition36.js +11 -3
- package/shared/definition37.js +13 -9
- package/shared/definition38.js +2 -2
- package/shared/definition39.js +5 -4
- package/shared/definition4.js +4 -3
- package/shared/definition40.js +4 -4
- package/shared/definition41.js +111 -76
- package/shared/definition42.js +77 -557
- package/shared/definition43.js +568 -102
- package/shared/definition44.js +104 -135
- package/shared/definition45.js +153 -17
- package/shared/definition46.js +16 -79
- package/shared/definition47.js +53 -475
- package/shared/definition48.js +493 -25
- package/shared/definition49.js +22 -121
- package/shared/definition5.js +1 -1
- package/shared/definition50.js +114 -261
- package/shared/definition51.js +258 -119
- package/shared/definition52.js +258 -109
- package/shared/definition53.js +84 -74
- package/shared/definition54.js +114 -69
- package/shared/definition55.js +81 -292
- package/shared/definition56.js +302 -13
- package/shared/definition57.js +11 -41
- package/shared/definition58.js +20 -154
- package/shared/definition59.js +181 -0
- package/shared/definition6.js +1 -1
- package/shared/definition7.js +3 -2
- package/shared/definition8.js +2 -2
- package/shared/enums.js +71 -0
- package/shared/icon.js +1 -1
- package/shared/index2.js +28 -1
- package/shared/key-codes.js +1 -1
- package/shared/key-codes2.js +9 -0
- package/shared/listbox.js +2 -7
- package/shared/localization/Locale.d.ts +4 -0
- package/shared/presentationDate.js +194 -141
- package/shared/radio.js +7 -0
- package/shared/text-field.js +1 -1
- package/shared/utils/Reflector.d.ts +8 -0
- package/shared/utils/randomId.d.ts +1 -0
- package/side-drawer/index.js +1 -1
- package/slider/index.js +2 -2
- package/split-button/index.js +2 -2
- package/style.css +686 -559
- package/styles/core/all.css +1 -1
- package/styles/core/theme.css +1 -1
- package/styles/core/typography.css +1 -1
- package/styles/tokens/theme-dark.css +4 -4
- package/styles/tokens/theme-light.css +4 -4
- package/styles/tokens/vivid-2-compat.css +1 -1
- package/switch/index.js +2 -2
- package/tab/index.js +2 -2
- package/tab-panel/index.js +1 -1
- package/tabs/index.js +4 -4
- package/tag/index.js +2 -2
- package/tag-group/index.js +1 -1
- package/text-area/index.js +3 -2
- package/text-field/index.js +3 -2
- package/toggletip/index.js +5 -4
- package/tooltip/index.js +5 -4
- package/tree-item/index.js +2 -2
- package/tree-view/index.js +1 -1
- package/vivid.api.json +141 -0
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
import { a as attr, F as FoundationElement, h as html, r as registerFactory } from './index.js';
|
|
2
|
+
import { B as Button, a as buttonRegistries } from './definition10.js';
|
|
3
|
+
import { E as Elevation, e as elevationRegistries } from './definition58.js';
|
|
4
|
+
import { r as ref } from './ref.js';
|
|
5
|
+
import { w as when } from './when.js';
|
|
6
|
+
import { c as classNames } from './class-names.js';
|
|
7
|
+
|
|
8
|
+
function t(t){return t.split("-")[1]}function e(t){return "y"===t?"height":"width"}function n$1(t){return t.split("-")[0]}function o$1(t){return ["top","bottom"].includes(n$1(t))?"x":"y"}function i$1(i,r,a){let{reference:l,floating:s}=i;const c=l.x+l.width/2-s.width/2,f=l.y+l.height/2-s.height/2,m=o$1(r),u=e(m),g=l[u]/2-s[u]/2,d="x"===m;let p;switch(n$1(r)){case"top":p={x:c,y:l.y-s.height};break;case"bottom":p={x:c,y:l.y+l.height};break;case"right":p={x:l.x+l.width,y:f};break;case"left":p={x:l.x-s.width,y:f};break;default:p={x:l.x,y:l.y};}switch(t(r)){case"start":p[m]-=g*(a&&d?-1:1);break;case"end":p[m]+=g*(a&&d?-1:1);}return p}const r$1=async(t,e,n)=>{const{placement:o="bottom",strategy:r="absolute",middleware:a=[],platform:l}=n,s=a.filter(Boolean),c=await(null==l.isRTL?void 0:l.isRTL(e));let f=await l.getElementRects({reference:t,floating:e,strategy:r}),{x:m,y:u}=i$1(f,o,c),g=o,d={},p=0;for(let n=0;n<s.length;n++){const{name:a,fn:h}=s[n],{x:y,y:x,data:w,reset:v}=await h({x:m,y:u,initialPlacement:o,placement:g,strategy:r,middlewareData:d,rects:f,platform:l,elements:{reference:t,floating:e}});m=null!=y?y:m,u=null!=x?x:u,d={...d,[a]:{...d[a],...w}},v&&p<=50&&(p++,"object"==typeof v&&(v.placement&&(g=v.placement),v.rects&&(f=!0===v.rects?await l.getElementRects({reference:t,floating:e,strategy:r}):v.rects),({x:m,y:u}=i$1(f,g,c))),n=-1);}return {x:m,y:u,placement:g,strategy:r,middlewareData:d}};function a$1(t,e){return "function"==typeof t?t(e):t}function l$1(t){return "number"!=typeof t?function(t){return {top:0,right:0,bottom:0,left:0,...t}}(t):{top:t,right:t,bottom:t,left:t}}function s$1(t){return {...t,top:t.y,left:t.x,right:t.x+t.width,bottom:t.y+t.height}}async function c$1(t,e){var n;void 0===e&&(e={});const{x:o,y:i,platform:r,rects:c,elements:f,strategy:m}=t,{boundary:u="clippingAncestors",rootBoundary:g="viewport",elementContext:d="floating",altBoundary:p=!1,padding:h=0}=a$1(e,t),y=l$1(h),x=f[p?"floating"===d?"reference":"floating":d],w=s$1(await r.getClippingRect({element:null==(n=await(null==r.isElement?void 0:r.isElement(x)))||n?x:x.contextElement||await(null==r.getDocumentElement?void 0:r.getDocumentElement(f.floating)),boundary:u,rootBoundary:g,strategy:m})),v="floating"===d?{...c.floating,x:o,y:i}:c.reference,b=await(null==r.getOffsetParent?void 0:r.getOffsetParent(f.floating)),A=await(null==r.isElement?void 0:r.isElement(b))&&await(null==r.getScale?void 0:r.getScale(b))||{x:1,y:1},R=s$1(r.convertOffsetParentRelativeRectToViewportRelativeRect?await r.convertOffsetParentRelativeRectToViewportRelativeRect({rect:v,offsetParent:b,strategy:m}):v);return {top:(w.top-R.top+y.top)/A.y,bottom:(R.bottom-w.bottom+y.bottom)/A.y,left:(w.left-R.left+y.left)/A.x,right:(R.right-w.right+y.right)/A.x}}const f$1=Math.min,m$1=Math.max;function u$1(t,e,n){return m$1(t,f$1(e,n))}const g$1=n=>({name:"arrow",options:n,async fn(i){const{x:r,y:s,placement:c,rects:m,platform:g,elements:d}=i,{element:p,padding:h=0}=a$1(n,i)||{};if(null==p)return {};const y=l$1(h),x={x:r,y:s},w=o$1(c),v=e(w),b=await g.getDimensions(p),A="y"===w,R=A?"top":"left",P=A?"bottom":"right",E=A?"clientHeight":"clientWidth",T=m.reference[v]+m.reference[w]-x[w]-m.floating[v],D=x[w]-m.reference[w],L=await(null==g.getOffsetParent?void 0:g.getOffsetParent(p));let k=L?L[E]:0;k&&await(null==g.isElement?void 0:g.isElement(L))||(k=d.floating[E]||m.floating[v]);const O=T/2-D/2,B=k/2-b[v]/2-1,C=f$1(y[R],B),H=f$1(y[P],B),S=C,F=k-b[v]-H,M=k/2-b[v]/2+O,V=u$1(S,M,F),W=null!=t(c)&&M!=V&&m.reference[v]/2-(M<S?C:H)-b[v]/2<0?M<S?S-M:F-M:0;return {[w]:x[w]-W,data:{[w]:V,centerOffset:M-V+W}}}}),d$1=["top","right","bottom","left"];d$1.reduce(((t,e)=>t.concat(e,e+"-start",e+"-end")),[]);const h$1={left:"right",right:"left",bottom:"top",top:"bottom"};function y$1(t){return t.replace(/left|right|bottom|top/g,(t=>h$1[t]))}function x$1(n,i,r){void 0===r&&(r=!1);const a=t(n),l=o$1(n),s=e(l);let c="x"===l?a===(r?"end":"start")?"right":"left":"start"===a?"bottom":"top";return i.reference[s]>i.floating[s]&&(c=y$1(c)),{main:c,cross:y$1(c)}}const w$1={start:"end",end:"start"};function v$1(t){return t.replace(/start|end/g,(t=>w$1[t]))}const A$1=function(e){return void 0===e&&(e={}),{name:"flip",options:e,async fn(o){var i;const{placement:r,middlewareData:l,rects:s,initialPlacement:f,platform:m,elements:u}=o,{mainAxis:g=!0,crossAxis:d=!0,fallbackPlacements:p,fallbackStrategy:h="bestFit",fallbackAxisSideDirection:w="none",flipAlignment:b=!0,...A}=a$1(e,o),R=n$1(r),P=n$1(f)===f,E=await(null==m.isRTL?void 0:m.isRTL(u.floating)),T=p||(P||!b?[y$1(f)]:function(t){const e=y$1(t);return [v$1(t),e,v$1(e)]}(f));p||"none"===w||T.push(...function(e,o,i,r){const a=t(e);let l=function(t,e,n){const o=["left","right"],i=["right","left"],r=["top","bottom"],a=["bottom","top"];switch(t){case"top":case"bottom":return n?e?i:o:e?o:i;case"left":case"right":return e?r:a;default:return []}}(n$1(e),"start"===i,r);return a&&(l=l.map((t=>t+"-"+a)),o&&(l=l.concat(l.map(v$1)))),l}(f,b,w,E));const D=[f,...T],L=await c$1(o,A),k=[];let O=(null==(i=l.flip)?void 0:i.overflows)||[];if(g&&k.push(L[R]),d){const{main:t,cross:e}=x$1(r,s,E);k.push(L[t],L[e]);}if(O=[...O,{placement:r,overflows:k}],!k.every((t=>t<=0))){var B,C;const t=((null==(B=l.flip)?void 0:B.index)||0)+1,e=D[t];if(e)return {data:{index:t,overflows:O},reset:{placement:e}};let n=null==(C=O.filter((t=>t.overflows[0]<=0)).sort(((t,e)=>t.overflows[1]-e.overflows[1]))[0])?void 0:C.placement;if(!n)switch(h){case"bestFit":{var H;const t=null==(H=O.map((t=>[t.placement,t.overflows.filter((t=>t>0)).reduce(((t,e)=>t+e),0)])).sort(((t,e)=>t[1]-e[1]))[0])?void 0:H[0];t&&(n=t);break}case"initialPlacement":n=f;}if(r!==n)return {reset:{placement:n}}}return {}}}};function R$1(t,e){return {top:t.top-e.height,right:t.right-e.width,bottom:t.bottom-e.height,left:t.left-e.width}}function P$1(t){return d$1.some((e=>t[e]>=0))}const E$1=function(t){return void 0===t&&(t={}),{name:"hide",options:t,async fn(e){const{rects:n}=e,{strategy:o="referenceHidden",...i}=a$1(t,e);switch(o){case"referenceHidden":{const t=R$1(await c$1(e,{...i,elementContext:"reference"}),n.reference);return {data:{referenceHiddenOffsets:t,referenceHidden:P$1(t)}}}case"escaped":{const t=R$1(await c$1(e,{...i,altBoundary:!0}),n.floating);return {data:{escapedOffsets:t,escaped:P$1(t)}}}default:return {}}}}};function T$1(t){const e=f$1(...t.map((t=>t.left))),n=f$1(...t.map((t=>t.top)));return {x:e,y:n,width:m$1(...t.map((t=>t.right)))-e,height:m$1(...t.map((t=>t.bottom)))-n}}const D$1=function(t){return void 0===t&&(t={}),{name:"inline",options:t,async fn(e){const{placement:i,elements:r,rects:c,platform:u,strategy:g}=e,{padding:d=2,x:p,y:h}=a$1(t,e),y=Array.from(await(null==u.getClientRects?void 0:u.getClientRects(r.reference))||[]),x=function(t){const e=t.slice().sort(((t,e)=>t.y-e.y)),n=[];let o=null;for(let t=0;t<e.length;t++){const i=e[t];!o||i.y-o.y>o.height/2?n.push([i]):n[n.length-1].push(i),o=i;}return n.map((t=>s$1(T$1(t))))}(y),w=s$1(T$1(y)),v=l$1(d);const b=await u.getElementRects({reference:{getBoundingClientRect:function(){if(2===x.length&&x[0].left>x[1].right&&null!=p&&null!=h)return x.find((t=>p>t.left-v.left&&p<t.right+v.right&&h>t.top-v.top&&h<t.bottom+v.bottom))||w;if(x.length>=2){if("x"===o$1(i)){const t=x[0],e=x[x.length-1],o="top"===n$1(i),r=t.top,a=e.bottom,l=o?t.left:e.left,s=o?t.right:e.right;return {top:r,bottom:a,left:l,right:s,width:s-l,height:a-r,x:l,y:r}}const t="left"===n$1(i),e=m$1(...x.map((t=>t.right))),r=f$1(...x.map((t=>t.left))),a=x.filter((n=>t?n.left===r:n.right===e)),l=a[0].top,s=a[a.length-1].bottom;return {top:l,bottom:s,left:r,right:e,width:e-r,height:s-l,x:r,y:l}}return w}},floating:r.floating,strategy:g});return c.reference.x!==b.reference.x||c.reference.y!==b.reference.y||c.reference.width!==b.reference.width||c.reference.height!==b.reference.height?{reset:{rects:b}}:{}}}};const L$1=function(e){return void 0===e&&(e=0),{name:"offset",options:e,async fn(i){const{x:r,y:l}=i,s=await async function(e,i){const{placement:r,platform:l,elements:s}=e,c=await(null==l.isRTL?void 0:l.isRTL(s.floating)),f=n$1(r),m=t(r),u="x"===o$1(r),g=["left","top"].includes(f)?-1:1,d=c&&u?-1:1,p=a$1(i,e);let{mainAxis:h,crossAxis:y,alignmentAxis:x}="number"==typeof p?{mainAxis:p,crossAxis:0,alignmentAxis:null}:{mainAxis:0,crossAxis:0,alignmentAxis:null,...p};return m&&"number"==typeof x&&(y="end"===m?-1*x:x),u?{x:y*d,y:h*g}:{x:h*g,y:y*d}}(i,e);return {x:r+s.x,y:l+s.y,data:s}}}};
|
|
9
|
+
|
|
10
|
+
function n(t){var e;return (null==t||null==(e=t.ownerDocument)?void 0:e.defaultView)||window}function o(t){return n(t).getComputedStyle(t)}function i(t){return t instanceof n(t).Node}function r(t){return i(t)?(t.nodeName||"").toLowerCase():"#document"}function c(t){return t instanceof HTMLElement||t instanceof n(t).HTMLElement}function l(t){return "undefined"!=typeof ShadowRoot&&(t instanceof n(t).ShadowRoot||t instanceof ShadowRoot)}function s(t){const{overflow:e,overflowX:n,overflowY:i,display:r}=o(t);return /auto|scroll|overlay|hidden|clip/.test(e+i+n)&&!["inline","contents"].includes(r)}function f(t){return ["table","td","th"].includes(r(t))}function u(t){const e=a(),n=o(t);return "none"!==n.transform||"none"!==n.perspective||!!n.containerType&&"normal"!==n.containerType||!e&&!!n.backdropFilter&&"none"!==n.backdropFilter||!e&&!!n.filter&&"none"!==n.filter||["transform","perspective","filter"].some((t=>(n.willChange||"").includes(t)))||["paint","layout","strict","content"].some((t=>(n.contain||"").includes(t)))}function a(){return !("undefined"==typeof CSS||!CSS.supports)&&CSS.supports("-webkit-backdrop-filter","none")}function d(t){return ["html","body","#document"].includes(r(t))}const h=Math.min,p=Math.max,m=Math.round,g=Math.floor,y=t=>({x:t,y:t});function w(t){const e=o(t);let n=parseFloat(e.width)||0,i=parseFloat(e.height)||0;const r=c(t),l=r?t.offsetWidth:n,s=r?t.offsetHeight:i,f=m(n)!==l||m(i)!==s;return f&&(n=l,i=s),{width:n,height:i,$:f}}function x(t){return t instanceof Element||t instanceof n(t).Element}function v(t){return x(t)?t:t.contextElement}function b(t){const e=v(t);if(!c(e))return y(1);const n=e.getBoundingClientRect(),{width:o,height:i,$:r}=w(e);let l=(r?m(n.width):n.width)/o,s=(r?m(n.height):n.height)/i;return l&&Number.isFinite(l)||(l=1),s&&Number.isFinite(s)||(s=1),{x:l,y:s}}const L=y(0);function T(t){const e=n(t);return a()&&e.visualViewport?{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}:L}function R(e,o,i,r){void 0===o&&(o=!1),void 0===i&&(i=!1);const c=e.getBoundingClientRect(),l=v(e);let s=y(1);o&&(r?x(r)&&(s=b(r)):s=b(e));const f=function(t,e,o){return void 0===e&&(e=!1),!(!o||e&&o!==n(t))&&e}(l,i,r)?T(l):y(0);let u=(c.left+f.x)/s.x,a=(c.top+f.y)/s.y,d=c.width/s.x,h=c.height/s.y;if(l){const t=n(l),e=r&&x(r)?n(r):r;let o=t.frameElement;for(;o&&r&&e!==t;){const t=b(o),e=o.getBoundingClientRect(),i=getComputedStyle(o),r=e.left+(o.clientLeft+parseFloat(i.paddingLeft))*t.x,c=e.top+(o.clientTop+parseFloat(i.paddingTop))*t.y;u*=t.x,a*=t.y,d*=t.x,h*=t.y,u+=r,a+=c,o=n(o).frameElement;}}return s$1({width:d,height:h,x:u,y:a})}function E(t){return x(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function S(t){var e;return null==(e=(i(t)?t.ownerDocument:t.document)||window.document)?void 0:e.documentElement}function C(t){return R(S(t)).left+E(t).scrollLeft}function F(t){if("html"===r(t))return t;const e=t.assignedSlot||t.parentNode||l(t)&&t.host||S(t);return l(e)?e.host:e}function O(t){const e=F(t);return d(e)?t.ownerDocument?t.ownerDocument.body:t.body:c(e)&&s(e)?e:O(e)}function D(t,e){var o;void 0===e&&(e=[]);const i=O(t),r=i===(null==(o=t.ownerDocument)?void 0:o.body),c=n(i);return r?e.concat(c,c.visualViewport||[],s(i)?i:[]):e.concat(i,D(i))}function H(e,i,r){let l;if("viewport"===i)l=function(t,e){const o=n(t),i=S(t),r=o.visualViewport;let c=i.clientWidth,l=i.clientHeight,s=0,f=0;if(r){c=r.width,l=r.height;const t=a();(!t||t&&"fixed"===e)&&(s=r.offsetLeft,f=r.offsetTop);}return {width:c,height:l,x:s,y:f}}(e,r);else if("document"===i)l=function(t){const e=S(t),n=E(t),i=t.ownerDocument.body,r=p(e.scrollWidth,e.clientWidth,i.scrollWidth,i.clientWidth),c=p(e.scrollHeight,e.clientHeight,i.scrollHeight,i.clientHeight);let l=-n.scrollLeft+C(t);const s=-n.scrollTop;return "rtl"===o(i).direction&&(l+=p(e.clientWidth,i.clientWidth)-r),{width:r,height:c,x:l,y:s}}(S(e));else if(x(i))l=function(t,e){const n=R(t,!0,"fixed"===e),o=n.top+t.clientTop,i=n.left+t.clientLeft,r=c(t)?b(t):y(1);return {width:t.clientWidth*r.x,height:t.clientHeight*r.y,x:i*r.x,y:o*r.y}}(i,r);else {const t=T(e);l={...i,x:i.x-t.x,y:i.y-t.y};}return s$1(l)}function W(t,e){const n=F(t);return !(n===e||!x(n)||d(n))&&("fixed"===o(n).position||W(n,e))}function M(t,e,n){const o=c(e),i=S(e),l="fixed"===n,f=R(t,!0,l,e);let u={scrollLeft:0,scrollTop:0};const a=y(0);if(o||!o&&!l)if(("body"!==r(e)||s(i))&&(u=E(e)),c(e)){const t=R(e,!0,l,e);a.x=t.x+e.clientLeft,a.y=t.y+e.clientTop;}else i&&(a.x=C(i));return {x:f.left+u.scrollLeft-a.x,y:f.top+u.scrollTop-a.y,width:f.width,height:f.height}}function z(t,e){return c(t)&&"fixed"!==o(t).position?e?e(t):t.offsetParent:null}function P(t,e){const i=n(t);if(!c(t))return i;let l=z(t,e);for(;l&&f(l)&&"static"===o(l).position;)l=z(l,e);return l&&("html"===r(l)||"body"===r(l)&&"static"===o(l).position&&!u(l))?i:l||function(t){let e=F(t);for(;c(e)&&!d(e);){if(u(e))return e;e=F(e);}return null}(t)||i}const V={convertOffsetParentRelativeRectToViewportRelativeRect:function(t){let{rect:e,offsetParent:n,strategy:o}=t;const i=c(n),l=S(n);if(n===l)return e;let f={scrollLeft:0,scrollTop:0},u=y(1);const a=y(0);if((i||!i&&"fixed"!==o)&&(("body"!==r(n)||s(l))&&(f=E(n)),c(n))){const t=R(n);u=b(n),a.x=t.x+n.clientLeft,a.y=t.y+n.clientTop;}return {width:e.width*u.x,height:e.height*u.y,x:e.x*u.x-f.scrollLeft*u.x+a.x,y:e.y*u.y-f.scrollTop*u.y+a.y}},getDocumentElement:S,getClippingRect:function(t){let{element:e,boundary:n,rootBoundary:i,strategy:c}=t;const l=[..."clippingAncestors"===n?function(t,e){const n=e.get(t);if(n)return n;let i=D(t).filter((t=>x(t)&&"body"!==r(t))),c=null;const l="fixed"===o(t).position;let f=l?F(t):t;for(;x(f)&&!d(f);){const e=o(f),n=u(f);n||"fixed"!==e.position||(c=null),(l?!n&&!c:!n&&"static"===e.position&&c&&["absolute","fixed"].includes(c.position)||s(f)&&!n&&W(t,f))?i=i.filter((t=>t!==f)):c=e,f=F(f);}return e.set(t,i),i}(e,this._c):[].concat(n),i],f=l[0],a=l.reduce(((t,n)=>{const o=H(e,n,c);return t.top=p(o.top,t.top),t.right=h(o.right,t.right),t.bottom=h(o.bottom,t.bottom),t.left=p(o.left,t.left),t}),H(e,f,c));return {width:a.right-a.left,height:a.bottom-a.top,x:a.left,y:a.top}},getOffsetParent:P,getElementRects:async function(t){let{reference:e,floating:n,strategy:o}=t;const i=this.getOffsetParent||P,r=this.getDimensions;return {reference:M(e,await i(n),o),floating:{x:0,y:0,...await r(n)}}},getClientRects:function(t){return Array.from(t.getClientRects())},getDimensions:function(t){return w(t)},getScale:b,isElement:x,isRTL:function(t){return "rtl"===getComputedStyle(t).direction}};function A(t,e,n,o){void 0===o&&(o={});const{ancestorScroll:i=!0,ancestorResize:r=!0,elementResize:c="function"==typeof ResizeObserver,layoutShift:l="function"==typeof IntersectionObserver,animationFrame:s=!1}=o,f=v(t),u=i||r?[...f?D(f):[],...D(e)]:[];u.forEach((t=>{i&&t.addEventListener("scroll",n,{passive:!0}),r&&t.addEventListener("resize",n);}));const a=f&&l?function(t,e){let n,o=null;const i=S(t);function r(){clearTimeout(n),o&&o.disconnect(),o=null;}return function c(l,s){void 0===l&&(l=!1),void 0===s&&(s=1),r();const{left:f,top:u,width:a,height:d}=t.getBoundingClientRect();if(l||e(),!a||!d)return;const m={rootMargin:-g(u)+"px "+-g(i.clientWidth-(f+a))+"px "+-g(i.clientHeight-(u+d))+"px "+-g(f)+"px",threshold:p(0,h(1,s))||1};let y=!0;function w(t){const e=t[0].intersectionRatio;if(e!==s){if(!y)return c();e?c(!1,e):n=setTimeout((()=>{c(!1,1e-7);}),100);}y=!1;}try{o=new IntersectionObserver(w,{...m,root:i.ownerDocument});}catch(t){o=new IntersectionObserver(w,m);}o.observe(t);}(!0),r}(f,n):null;let d,m=-1,y=null;c&&(y=new ResizeObserver((t=>{let[o]=t;o&&o.target===f&&y&&(y.unobserve(e),cancelAnimationFrame(m),m=requestAnimationFrame((()=>{y&&y.observe(e);}))),n();})),f&&!s&&y.observe(f),y.observe(e));let w=s?R(t):null;return s&&function e(){const o=R(t);!w||o.x===w.x&&o.y===w.y&&o.width===w.width&&o.height===w.height||n();w=o,d=requestAnimationFrame(e);}(),n(),()=>{u.forEach((t=>{i&&t.removeEventListener("scroll",n),r&&t.removeEventListener("resize",n);})),a&&a(),y&&y.disconnect(),y=null,s&&cancelAnimationFrame(d);}}const B=(t,n,o)=>{const i=new Map,r={platform:V,...o},c={...r.platform,_c:i};return r$1(t,n,{...r,platform:c})};
|
|
11
|
+
|
|
12
|
+
var __defProp = Object.defineProperty;
|
|
13
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
14
|
+
var __decorateClass = (decorators, target, key, kind) => {
|
|
15
|
+
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
|
|
16
|
+
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
17
|
+
if (decorator = decorators[i])
|
|
18
|
+
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
19
|
+
if (kind && result)
|
|
20
|
+
__defProp(target, key, result);
|
|
21
|
+
return result;
|
|
22
|
+
};
|
|
23
|
+
class Popup extends FoundationElement {
|
|
24
|
+
constructor() {
|
|
25
|
+
super(...arguments);
|
|
26
|
+
this.open = false;
|
|
27
|
+
this.dismissible = false;
|
|
28
|
+
this.arrow = false;
|
|
29
|
+
this.alternate = false;
|
|
30
|
+
this.strategy = "fixed";
|
|
31
|
+
}
|
|
32
|
+
get #middleware() {
|
|
33
|
+
let middleware = [D$1(), A$1(), E$1()];
|
|
34
|
+
if (this.arrow) {
|
|
35
|
+
middleware = [L$1(12), ...middleware, g$1({ element: this.arrowEl, padding: 10 })];
|
|
36
|
+
}
|
|
37
|
+
return middleware;
|
|
38
|
+
}
|
|
39
|
+
#cleanup;
|
|
40
|
+
openChanged(_, newValue) {
|
|
41
|
+
newValue ? this.$emit("vwc-popup:open") : this.$emit("vwc-popup:close");
|
|
42
|
+
}
|
|
43
|
+
disconnectedCallback() {
|
|
44
|
+
super.disconnectedCallback();
|
|
45
|
+
this.#cleanup?.();
|
|
46
|
+
}
|
|
47
|
+
attributeChangedCallback(name, oldValue, newValue) {
|
|
48
|
+
super.attributeChangedCallback(name, oldValue, newValue);
|
|
49
|
+
this.#cleanup?.();
|
|
50
|
+
if (this.anchorEl && this.popupEl) {
|
|
51
|
+
this.#cleanup = A(this.anchorEl, this.popupEl, () => this.updatePosition());
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Updates popup's position
|
|
56
|
+
*
|
|
57
|
+
* @public
|
|
58
|
+
*/
|
|
59
|
+
async updatePosition() {
|
|
60
|
+
if (!this.open || !this.anchorEl) {
|
|
61
|
+
return;
|
|
62
|
+
}
|
|
63
|
+
const positionData = await B(this.anchorEl, this.popupEl, {
|
|
64
|
+
placement: this.placement,
|
|
65
|
+
strategy: this.strategy,
|
|
66
|
+
middleware: this.#middleware
|
|
67
|
+
});
|
|
68
|
+
this.#assignPopupPosition(positionData);
|
|
69
|
+
if (this.arrow) {
|
|
70
|
+
this.#assignArrowPosition(positionData);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
#assignPopupPosition(data) {
|
|
74
|
+
const { x: popupX, y: popupY } = data;
|
|
75
|
+
const { referenceHidden } = data.middlewareData.hide;
|
|
76
|
+
Object.assign(this.popupEl.style, {
|
|
77
|
+
left: `${popupX}px`,
|
|
78
|
+
top: `${popupY}px`,
|
|
79
|
+
visibility: referenceHidden ? "hidden" : "visible"
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
#assignArrowPosition(data) {
|
|
83
|
+
const { x: arrowX, y: arrowY } = data.middlewareData.arrow;
|
|
84
|
+
const styles = {
|
|
85
|
+
"left": "calc(100% - 4px)",
|
|
86
|
+
"right": "-4px",
|
|
87
|
+
"top": "calc(100% - 4px)",
|
|
88
|
+
"bottom": "-4px"
|
|
89
|
+
};
|
|
90
|
+
const staticAxis = data.placement.split("-")[0];
|
|
91
|
+
Object.assign(this.arrowEl.style, {
|
|
92
|
+
left: arrowX ? `${arrowX}px` : styles[staticAxis],
|
|
93
|
+
top: arrowY ? `${arrowY}px` : styles[staticAxis]
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Gets the anchor element by id
|
|
98
|
+
*/
|
|
99
|
+
get anchorEl() {
|
|
100
|
+
return this.anchor instanceof HTMLElement ? this.anchor : document.getElementById(this.anchor ? this.anchor : "");
|
|
101
|
+
}
|
|
102
|
+
show() {
|
|
103
|
+
this.open = true;
|
|
104
|
+
}
|
|
105
|
+
hide() {
|
|
106
|
+
this.open = false;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
__decorateClass([
|
|
110
|
+
attr({
|
|
111
|
+
mode: "boolean"
|
|
112
|
+
})
|
|
113
|
+
], Popup.prototype, "open", 2);
|
|
114
|
+
__decorateClass([
|
|
115
|
+
attr({
|
|
116
|
+
mode: "boolean"
|
|
117
|
+
})
|
|
118
|
+
], Popup.prototype, "dismissible", 2);
|
|
119
|
+
__decorateClass([
|
|
120
|
+
attr({
|
|
121
|
+
mode: "boolean"
|
|
122
|
+
})
|
|
123
|
+
], Popup.prototype, "arrow", 2);
|
|
124
|
+
__decorateClass([
|
|
125
|
+
attr({
|
|
126
|
+
mode: "boolean"
|
|
127
|
+
})
|
|
128
|
+
], Popup.prototype, "alternate", 2);
|
|
129
|
+
__decorateClass([
|
|
130
|
+
attr({ mode: "fromView" })
|
|
131
|
+
], Popup.prototype, "placement", 2);
|
|
132
|
+
__decorateClass([
|
|
133
|
+
attr({ mode: "fromView" })
|
|
134
|
+
], Popup.prototype, "strategy", 2);
|
|
135
|
+
__decorateClass([
|
|
136
|
+
attr
|
|
137
|
+
], Popup.prototype, "anchor", 2);
|
|
138
|
+
|
|
139
|
+
const styles = ".control {\n background: var(--vvd-color-surface-4dp);\n border-radius: inherit;\n contain: layout;\n}\n.control:not(.open) {\n display: none;\n}\n\n.popup-wrapper {\n z-index: 10;\n border-radius: 6px;\n inline-size: fit-content;\n}\n.popup-wrapper:not(.absolute) {\n position: fixed;\n}\n.popup-wrapper.absolute {\n position: absolute;\n}\n\n.popup-content {\n display: grid;\n color: var(--vvd-color-canvas-text); /* neutral-100 */\n}\n.dismissible .popup-content {\n align-content: start;\n grid-template-columns: 1fr auto;\n}\n\n.arrow {\n position: absolute;\n z-index: -1;\n width: 8px;\n height: 8px;\n background: var(--vvd-color-surface-4dp);\n transform: rotate(45deg);\n}\n\n.dismissible-button {\n align-self: flex-start;\n margin-block-start: 4px;\n margin-inline-end: 4px;\n}";
|
|
140
|
+
|
|
141
|
+
const getClasses = ({
|
|
142
|
+
open,
|
|
143
|
+
dismissible,
|
|
144
|
+
alternate
|
|
145
|
+
}) => classNames(
|
|
146
|
+
"control",
|
|
147
|
+
["open", Boolean(open)],
|
|
148
|
+
["dismissible", Boolean(dismissible)],
|
|
149
|
+
["alternate", Boolean(alternate)]
|
|
150
|
+
);
|
|
151
|
+
const popupTemplate = (context) => {
|
|
152
|
+
const elevationTag = context.tagFor(Elevation);
|
|
153
|
+
const buttonTag = context.tagFor(Button);
|
|
154
|
+
return html`
|
|
155
|
+
<${elevationTag}>
|
|
156
|
+
<div class="popup-wrapper ${(x) => x.strategy}" ${ref("popupEl")} part="popup-base">
|
|
157
|
+
<div class="${getClasses}" aria-hidden="${(x) => x.open ? "false" : "true"}"
|
|
158
|
+
part="${(x) => x.alternate ? "vvd-theme-alternate" : ""}">
|
|
159
|
+
<div class="popup-content">
|
|
160
|
+
<slot></slot>
|
|
161
|
+
${when(
|
|
162
|
+
(x) => x.dismissible,
|
|
163
|
+
html`<${buttonTag} size="condensed" @click="${(x) => x.open = false}"
|
|
164
|
+
class="dismissible-button" icon="close-small-solid" shape="pill"></${buttonTag}>`
|
|
165
|
+
)}
|
|
166
|
+
</div>
|
|
167
|
+
${when((x) => x.arrow, html`<div class="arrow" ${ref("arrowEl")}></div>`)}
|
|
168
|
+
</div>
|
|
169
|
+
</div>
|
|
170
|
+
</${elevationTag}>`;
|
|
171
|
+
};
|
|
172
|
+
|
|
173
|
+
const popupDefinition = Popup.compose({
|
|
174
|
+
baseName: "popup",
|
|
175
|
+
template: popupTemplate,
|
|
176
|
+
styles
|
|
177
|
+
});
|
|
178
|
+
const popupRegistries = [popupDefinition(), ...elevationRegistries, ...buttonRegistries];
|
|
179
|
+
const registerPopup = registerFactory(popupRegistries);
|
|
180
|
+
|
|
181
|
+
export { Popup as P, popupRegistries as p, registerPopup as r };
|
package/shared/definition6.js
CHANGED
|
@@ -32,7 +32,7 @@ __decorateClass([
|
|
|
32
32
|
], Badge.prototype, "text", 2);
|
|
33
33
|
applyMixins(Badge, AffixIconWithTrailing);
|
|
34
34
|
|
|
35
|
-
const styles = "/**\n * Do not edit directly\n * Generated on
|
|
35
|
+
const styles = "/**\n * Do not edit directly\n * Generated on Wed, 01 Nov 2023 12:16:28 GMT\n */\n.base {\n --_badge-block-size: calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density, 0), 2) - 20));\n display: inline-flex;\n box-sizing: border-box;\n align-items: center;\n background-color: var(--_appearance-color-fill);\n block-size: var(--_badge-block-size);\n box-shadow: inset 0 0 0 1px var(--_appearance-color-outline);\n color: var(--_appearance-color-text);\n column-gap: 8px;\n font: var(--vvd-typography-base-condensed-bold);\n padding-inline: 8px;\n vertical-align: middle;\n}\n.base.connotation-cta {\n /* @cssprop [--vvd-badge-cta-primary=var(--vvd-color-cta-500)] */\n --_connotation-color-primary: var(--vvd-badge-cta-primary, var(--vvd-color-cta-500));\n /* @cssprop [--vvd-badge-cta-primary-text=var(--vvd-color-canvas)] */\n --_connotation-color-primary-text: var(--vvd-badge-cta-primary-text, var(--vvd-color-canvas));\n /* @cssprop [--vvd-badge-cta-intermediate=var(--vvd-color-cta-500)] */\n --_connotation-color-intermediate: var(--vvd-badge-cta-intermediate, var(--vvd-color-cta-500));\n /* @cssprop [--vvd-badge-cta-soft=var(--vvd-color-cta-100)] */\n --_connotation-color-soft: var(--vvd-badge-cta-soft, var(--vvd-color-cta-100));\n /* @cssprop [--vvd-badge-cta-contrast=var(--vvd-color-cta-800)] */\n --_connotation-color-contrast: var(--vvd-badge-cta-contrast, var(--vvd-color-cta-800));\n /* @cssprop [--vvd-badge-cta-pale=var(--vvd-color-cta-300)] */\n --_connotation-color-pale: var(--vvd-badge-cta-pale, var(--vvd-color-cta-300));\n /* @cssprop [--vvd-badge-cta-fierce=var(--vvd-color-cta-700)] */\n --_connotation-color-fierce: var(--vvd-badge-cta-fierce, var(--vvd-color-cta-700));\n}\n.base.connotation-success {\n /* @cssprop [--vvd-badge-success-primary=var(--vvd-color-success-500)] */\n --_connotation-color-primary: var(--vvd-badge-success-primary, var(--vvd-color-success-500));\n /* @cssprop [--vvd-badge-success-primary-text=var(--vvd-color-canvas)] */\n --_connotation-color-primary-text: var(--vvd-badge-success-primary-text, var(--vvd-color-canvas));\n /* @cssprop [--vvd-badge-success-intermediate=var(--vvd-color-success-500)] */\n --_connotation-color-intermediate: var(--vvd-badge-success-intermediate, var(--vvd-color-success-500));\n /* @cssprop [--vvd-badge-success-soft=var(--vvd-color-success-100)] */\n --_connotation-color-soft: var(--vvd-badge-success-soft, var(--vvd-color-success-100));\n /* @cssprop [--vvd-badge-success-contrast=var(--vvd-color-success-800)] */\n --_connotation-color-contrast: var(--vvd-badge-success-contrast, var(--vvd-color-success-800));\n /* @cssprop [--vvd-badge-success-pale=var(--vvd-color-success-300)] */\n --_connotation-color-pale: var(--vvd-badge-success-pale, var(--vvd-color-success-300));\n /* @cssprop [--vvd-badge-success-fierce=var(--vvd-color-success-700)] */\n --_connotation-color-fierce: var(--vvd-badge-success-fierce, var(--vvd-color-success-700));\n}\n.base.connotation-alert {\n /* @cssprop [--vvd-badge-alert-primary=var(--vvd-color-alert-500)] */\n --_connotation-color-primary: var(--vvd-badge-alert-primary, var(--vvd-color-alert-500));\n /* @cssprop [--vvd-badge-alert-primary-text=var(--vvd-color-canvas)] */\n --_connotation-color-primary-text: var(--vvd-badge-alert-primary-text, var(--vvd-color-canvas));\n /* @cssprop [--vvd-badge-alert-intermediate=var(--vvd-color-alert-500)] */\n --_connotation-color-intermediate: var(--vvd-badge-alert-intermediate, var(--vvd-color-alert-500));\n /* @cssprop [--vvd-badge-alert-soft=var(--vvd-color-alert-100)] */\n --_connotation-color-soft: var(--vvd-badge-alert-soft, var(--vvd-color-alert-100));\n /* @cssprop [--vvd-badge-alert-contrast=var(--vvd-color-alert-800)] */\n --_connotation-color-contrast: var(--vvd-badge-alert-contrast, var(--vvd-color-alert-800));\n /* @cssprop [--vvd-badge-alert-pale=var(--vvd-color-alert-300)] */\n --_connotation-color-pale: var(--vvd-badge-alert-pale, var(--vvd-color-alert-300));\n /* @cssprop [--vvd-badge-alert-fierce=var(--vvd-color-alert-700)] */\n --_connotation-color-fierce: var(--vvd-badge-alert-fierce, var(--vvd-color-alert-700));\n}\n.base.connotation-warning {\n /* @cssprop [--vvd-badge-warning-primary=var(--vvd-color-warning-300)] */\n --_connotation-color-primary: var(--vvd-badge-warning-primary, var(--vvd-color-warning-300));\n /* @cssprop [--vvd-badge-warning-primary-text=var(--vvd-color-canvas-text)] */\n --_connotation-color-primary-text: var(--vvd-badge-warning-primary-text, var(--vvd-color-canvas-text));\n /* @cssprop [--vvd-badge-warning-intermediate=var(--vvd-color-warning-300)] */\n --_connotation-color-intermediate: var(--vvd-badge-warning-intermediate, var(--vvd-color-warning-300));\n /* @cssprop [--vvd-badge-warning-soft=var(--vvd-color-warning-100)] */\n --_connotation-color-soft: var(--vvd-badge-warning-soft, var(--vvd-color-warning-100));\n /* @cssprop [--vvd-badge-warning-contrast=var(--vvd-color-warning-800)] */\n --_connotation-color-contrast: var(--vvd-badge-warning-contrast, var(--vvd-color-warning-800));\n /* @cssprop [--vvd-badge-warning-pale=var(--vvd-color-warning-300)] */\n --_connotation-color-pale: var(--vvd-badge-warning-pale, var(--vvd-color-warning-300));\n /* @cssprop [--vvd-badge-warning-fierce=var(--vvd-color-warning-700)] */\n --_connotation-color-fierce: var(--vvd-badge-warning-fierce, var(--vvd-color-warning-700));\n}\n.base.connotation-information {\n /* @cssprop [--vvd-badge-information-primary=var(--vvd-color-information-500)] */\n --_connotation-color-primary: var(--vvd-badge-information-primary, var(--vvd-color-information-500));\n /* @cssprop [--vvd-badge-information-primary-text=var(--vvd-color-canvas)] */\n --_connotation-color-primary-text: var(--vvd-badge-information-primary-text, var(--vvd-color-canvas));\n /* @cssprop [--vvd-badge-information-intermediate=var(--vvd-color-information-500)] */\n --_connotation-color-intermediate: var(--vvd-badge-information-intermediate, var(--vvd-color-information-500));\n /* @cssprop [--vvd-badge-information-soft=var(--vvd-color-information-100)] */\n --_connotation-color-soft: var(--vvd-badge-information-soft, var(--vvd-color-information-100));\n /* @cssprop [--vvd-badge-information-contrast=var(--vvd-color-information-800)] */\n --_connotation-color-contrast: var(--vvd-badge-information-contrast, var(--vvd-color-information-800));\n /* @cssprop [--vvd-badge-information-pale=var(--vvd-color-information-300)] */\n --_connotation-color-pale: var(--vvd-badge-information-pale, var(--vvd-color-information-300));\n /* @cssprop [--vvd-badge-information-fierce=var(--vvd-color-information-700)] */\n --_connotation-color-fierce: var(--vvd-badge-information-fierce, var(--vvd-color-information-700));\n}\n.base:not(.connotation-cta, .connotation-success, .connotation-alert, .connotation-warning, .connotation-information) {\n /* @cssprop [--vvd-badge-accent-primary=var(--vvd-color-canvas-text)] */\n --_connotation-color-primary: var(--vvd-badge-accent-primary, var(--vvd-color-canvas-text));\n /* @cssprop [--vvd-badge-accent-primary-text=var(--vvd-color-canvas)] */\n --_connotation-color-primary-text: var(--vvd-badge-accent-primary-text, var(--vvd-color-canvas));\n /* @cssprop [--vvd-badge-accent-intermediate=var(--vvd-color-neutral-500)] */\n --_connotation-color-intermediate: var(--vvd-badge-accent-intermediate, var(--vvd-color-neutral-500));\n /* @cssprop [--vvd-badge-accent-soft=var(--vvd-color-neutral-100)] */\n --_connotation-color-soft: var(--vvd-badge-accent-soft, var(--vvd-color-neutral-100));\n /* @cssprop [--vvd-badge-accent-contrast=var(--vvd-color-neutral-800)] */\n --_connotation-color-contrast: var(--vvd-badge-accent-contrast, var(--vvd-color-neutral-800));\n /* @cssprop [--vvd-badge-accent-pale=var(--vvd-color-neutral-300)] */\n --_connotation-color-pale: var(--vvd-badge-accent-pale, var(--vvd-color-neutral-300));\n /* @cssprop [--vvd-badge-accent-fierce=var(--vvd-color-neutral-700)] */\n --_connotation-color-fierce: var(--vvd-badge-accent-fierce, var(--vvd-color-neutral-700));\n}\n.base {\n --_appearance-color-text: var(--_connotation-color-primary-text);\n --_appearance-color-fill: var(--_connotation-color-primary);\n --_appearance-color-outline: transparent;\n}\n.base.appearance-duotone {\n --_appearance-color-text: var(--_connotation-color-fierce);\n --_appearance-color-fill: transparent;\n --_appearance-color-outline: var(--_connotation-color-pale);\n}\n.base.appearance-subtle {\n --_appearance-color-text: var(--_connotation-color-contrast);\n --_appearance-color-fill: var(--_connotation-color-soft);\n --_appearance-color-outline: transparent;\n}\n.base:not(.icon-only) {\n max-inline-size: 100%;\n}\n.base.icon-only {\n contain: size;\n padding-inline: 0;\n place-content: center;\n}\n@supports (aspect-ratio: 1) {\n .base.icon-only {\n aspect-ratio: 1;\n }\n}\n@supports not (aspect-ratio: 1) {\n .base.icon-only {\n inline-size: var(--_badge-block-size);\n }\n}\n\n.text {\n overflow: hidden;\n max-inline-size: 100%;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n/* Shape */\n.base:not(.shape-pill) {\n border-radius: 4px;\n}\n\n.base.shape-pill {\n border-radius: 14px;\n}\n\n/* Icon */\nslot[name=icon] {\n flex-shrink: 0;\n font-size: calc(var(--_badge-block-size) / 1.6667);\n line-height: 1;\n}\n.icon-trailing slot[name=icon] {\n display: flex;\n order: 1;\n}";
|
|
36
36
|
|
|
37
37
|
const getClasses = ({
|
|
38
38
|
connotation,
|
package/shared/definition7.js
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { a as attr, F as FoundationElement, h as html, r as registerFactory } from './index.js';
|
|
2
|
-
import {
|
|
2
|
+
import { B as Button, a as buttonRegistries } from './definition10.js';
|
|
3
3
|
import { a as iconRegistries } from './definition25.js';
|
|
4
|
+
import { C as Connotation } from './enums.js';
|
|
4
5
|
import { A as AffixIcon, a as affixIconTemplateFactory, I as IconWrapper } from './affix.js';
|
|
5
6
|
import { a as applyMixins } from './apply-mixins.js';
|
|
6
7
|
import { w as when } from './when.js';
|
|
7
8
|
import { c as classNames } from './class-names.js';
|
|
8
9
|
|
|
9
|
-
const styles = "/**\n * Do not edit directly\n * Generated on
|
|
10
|
+
const styles = "/**\n * Do not edit directly\n * Generated on Wed, 01 Nov 2023 12:16:28 GMT\n */\n:host {\n display: block;\n}\n\n.control {\n overflow: hidden;\n max-height: 160px;\n background-color: var(--_appearance-color-fill);\n color: var(--_appearance-color-text);\n transition: max-height var(--transition-delay, 200ms);\n}\n.control.connotation-success {\n /* @cssprop [--vvd-banner-success-primary=var(--vvd-color-success-500)] */\n --_connotation-color-primary: var(--vvd-banner-success-primary, var(--vvd-color-success-500));\n /* @cssprop [--vvd-banner-success-primary-text=var(--vvd-color-canvas)] */\n --_connotation-color-primary-text: var(--vvd-banner-success-primary-text, var(--vvd-color-canvas));\n}\n.control.connotation-alert {\n /* @cssprop [--vvd-banner-alert-primary=var(--vvd-color-alert-500)] */\n --_connotation-color-primary: var(--vvd-banner-alert-primary, var(--vvd-color-alert-500));\n /* @cssprop [--vvd-banner-alert-primary-text=var(--vvd-color-canvas)] */\n --_connotation-color-primary-text: var(--vvd-banner-alert-primary-text, var(--vvd-color-canvas));\n}\n.control.connotation-announcement {\n /* @cssprop [--vvd-banner-announcement-primary=var(--vvd-color-announcement-500)] */\n --_connotation-color-primary: var(--vvd-banner-announcement-primary, var(--vvd-color-announcement-500));\n /* @cssprop [--vvd-banner-announcement-primary-text=var(--vvd-color-canvas)] */\n --_connotation-color-primary-text: var(--vvd-banner-announcement-primary-text, var(--vvd-color-canvas));\n}\n.control.connotation-warning {\n /* @cssprop [--vvd-banner-warning-primary=var(--vvd-color-warning-300)] */\n --_connotation-color-primary: var(--vvd-banner-warning-primary, var(--vvd-color-warning-300));\n /* @cssprop [--vvd-banner-warning-primary-text=var(--vvd-color-canvas-text)] */\n --_connotation-color-primary-text: var(--vvd-banner-warning-primary-text, var(--vvd-color-canvas-text));\n}\n.control:not(.connotation-success, .connotation-alert, .connotation-announcement, .connotation-warning) {\n /* @cssprop [--vvd-banner-information-primary=var(--vvd-color-information-500)] */\n --_connotation-color-primary: var(--vvd-banner-information-primary, var(--vvd-color-information-500));\n /* @cssprop [--vvd-banner-information-primary-text=var(--vvd-color-canvas)] */\n --_connotation-color-primary-text: var(--vvd-banner-information-primary-text, var(--vvd-color-canvas));\n}\n.control {\n --_appearance-color-text: var(--_connotation-color-primary-text);\n --_appearance-color-fill: var(--_connotation-color-primary);\n --_appearance-color-outline: transparent;\n}\n.control.removing {\n max-height: 0;\n}\n\n.header {\n display: flex;\n min-height: calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density, 0), 2) + 20));\n align-items: center;\n font: var(--vvd-typography-base-bold);\n inline-size: 100%;\n}\n.header .content {\n display: flex;\n flex-grow: 1;\n align-items: center;\n justify-content: center;\n column-gap: 16px;\n inline-size: 100%;\n padding-inline: 16px;\n}\n.header .content slot[name=icon] {\n flex-shrink: 0;\n font-size: 20px;\n line-height: 1;\n}\n.header .content .action-items {\n flex-shrink: 0;\n}\n.header .dismiss-button {\n flex-shrink: 0;\n margin-inline-end: 8px;\n}";
|
|
10
11
|
|
|
11
12
|
var __defProp = Object.defineProperty;
|
|
12
13
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
package/shared/definition8.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { a as attr, h as html, r as registerFactory } from './index.js';
|
|
2
2
|
import { a as iconRegistries } from './definition25.js';
|
|
3
|
-
import { f as focusRegistries } from './
|
|
3
|
+
import { f as focusRegistries } from './definition57.js';
|
|
4
4
|
import { B as BreadcrumbItem$1 } from './breadcrumb-item.js';
|
|
5
5
|
import { t as textAnchorTemplate } from './text-anchor.template.js';
|
|
6
6
|
import { I as Icon } from './icon.js';
|
|
7
7
|
import { w as when } from './when.js';
|
|
8
8
|
import { c as classNames } from './class-names.js';
|
|
9
9
|
|
|
10
|
-
const styles = "/**\n * Do not edit directly\n * Generated on
|
|
10
|
+
const styles = "/**\n * Do not edit directly\n * Generated on Wed, 01 Nov 2023 12:16:28 GMT\n */\n.base {\n display: flex;\n align-items: center;\n color: var(--vvd-color-canvas-text);\n font: var(--vvd-typography-base);\n}\n.base .separator {\n margin: 0 16px;\n color: var(--vvd-color-neutral-600);\n font-size: 12px;\n}\n\n.control {\n position: relative;\n font: inherit;\n}\n@supports selector(:focus-visible) {\n .control:focus-visible {\n outline: none;\n }\n}\n.control:any-link {\n color: var(--vvd-color-cta-600);\n text-decoration: none;\n}\n.control:any-link:hover {\n text-decoration: underline;\n}\n\n.focus-indicator {\n --focus-inset: -4px -8px;\n --focus-stroke-gap-color: transparent;\n border-radius: 6px;\n}\n.control:not(:focus-visible) > .focus-indicator {\n display: none;\n}";
|
|
11
11
|
|
|
12
12
|
var __defProp = Object.defineProperty;
|
|
13
13
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
package/shared/enums.js
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
var Connotation = /* @__PURE__ */ ((Connotation2) => {
|
|
2
|
+
Connotation2["Accent"] = "accent";
|
|
3
|
+
Connotation2["CTA"] = "cta";
|
|
4
|
+
Connotation2["Success"] = "success";
|
|
5
|
+
Connotation2["Alert"] = "alert";
|
|
6
|
+
Connotation2["Warning"] = "warning";
|
|
7
|
+
Connotation2["Information"] = "information";
|
|
8
|
+
Connotation2["Announcement"] = "announcement";
|
|
9
|
+
return Connotation2;
|
|
10
|
+
})(Connotation || {});
|
|
11
|
+
var ConnotationDecorative = /* @__PURE__ */ ((ConnotationDecorative2) => {
|
|
12
|
+
ConnotationDecorative2["Pacific"] = "pacific";
|
|
13
|
+
return ConnotationDecorative2;
|
|
14
|
+
})(ConnotationDecorative || {});
|
|
15
|
+
var Shape = /* @__PURE__ */ ((Shape2) => {
|
|
16
|
+
Shape2["Rounded"] = "rounded";
|
|
17
|
+
Shape2["Pill"] = "pill";
|
|
18
|
+
Shape2["Circled"] = "circled";
|
|
19
|
+
Shape2["Sharp"] = "sharp";
|
|
20
|
+
return Shape2;
|
|
21
|
+
})(Shape || {});
|
|
22
|
+
var Appearance = /* @__PURE__ */ ((Appearance2) => {
|
|
23
|
+
Appearance2["Filled"] = "filled";
|
|
24
|
+
Appearance2["Outlined"] = "outlined";
|
|
25
|
+
Appearance2["Duotone"] = "duotone";
|
|
26
|
+
Appearance2["Fieldset"] = "fieldset";
|
|
27
|
+
Appearance2["Subtle"] = "subtle";
|
|
28
|
+
Appearance2["Ghost"] = "ghost";
|
|
29
|
+
Appearance2["Listitem"] = "listitem";
|
|
30
|
+
return Appearance2;
|
|
31
|
+
})(Appearance || {});
|
|
32
|
+
var Size = /* @__PURE__ */ ((Size2) => {
|
|
33
|
+
Size2["UltraCondensed"] = "ultra-condensed";
|
|
34
|
+
Size2["SuperCondensed"] = "super-condensed";
|
|
35
|
+
Size2["ExtraCondensed"] = "extra-condensed";
|
|
36
|
+
Size2["SemiCondensed"] = "semi-condensed";
|
|
37
|
+
Size2["Condensed"] = "condensed";
|
|
38
|
+
Size2["Normal"] = "normal";
|
|
39
|
+
Size2["SemiExpanded"] = "semi-expanded";
|
|
40
|
+
Size2["Expanded"] = "expanded";
|
|
41
|
+
Size2["ExtraExpanded"] = "extra-expanded";
|
|
42
|
+
Size2["SuperExpanded"] = "super-expanded";
|
|
43
|
+
Size2["UltraExpanded"] = "ultra-expanded";
|
|
44
|
+
return Size2;
|
|
45
|
+
})(Size || {});
|
|
46
|
+
var LayoutSize = /* @__PURE__ */ ((LayoutSize2) => {
|
|
47
|
+
LayoutSize2["Small"] = "small";
|
|
48
|
+
LayoutSize2["Medium"] = "medium";
|
|
49
|
+
LayoutSize2["Large"] = "large";
|
|
50
|
+
return LayoutSize2;
|
|
51
|
+
})(LayoutSize || {});
|
|
52
|
+
var Position = /* @__PURE__ */ ((Position2) => {
|
|
53
|
+
Position2["Top"] = "TOP";
|
|
54
|
+
Position2["Bottom"] = "BOTTOM";
|
|
55
|
+
Position2["Start"] = "START";
|
|
56
|
+
Position2["Center"] = "CENTER";
|
|
57
|
+
Position2["End"] = "END";
|
|
58
|
+
return Position2;
|
|
59
|
+
})(Position || {});
|
|
60
|
+
var Role = /* @__PURE__ */ ((Role2) => {
|
|
61
|
+
Role2["Status"] = "status";
|
|
62
|
+
Role2["Alert"] = "alert";
|
|
63
|
+
return Role2;
|
|
64
|
+
})(Role || {});
|
|
65
|
+
var AriaLive = /* @__PURE__ */ ((AriaLive2) => {
|
|
66
|
+
AriaLive2["Polite"] = "polite";
|
|
67
|
+
AriaLive2["Assertive"] = "assertive";
|
|
68
|
+
return AriaLive2;
|
|
69
|
+
})(AriaLive || {});
|
|
70
|
+
|
|
71
|
+
export { Appearance as A, Connotation as C, LayoutSize as L, Position as P, Role as R, Shape as S, ConnotationDecorative as a, Size as b, AriaLive as c };
|
package/shared/icon.js
CHANGED
|
@@ -143,7 +143,7 @@ _curry2(function memoizeWith(mFn, fn) {
|
|
|
143
143
|
const memoizeWith$1 = memoizeWith;
|
|
144
144
|
|
|
145
145
|
const ICONS_BASE_URL = "https://icon.resources.vonage.com";
|
|
146
|
-
const ICONS_VERSION = "4.
|
|
146
|
+
const ICONS_VERSION = "4.5.0";
|
|
147
147
|
|
|
148
148
|
const PLACEHOLDER_ICON = `<svg width="80%" height="80%" viewBox="0 0 64 64">
|
|
149
149
|
<g>
|
package/shared/index2.js
CHANGED
|
@@ -3,7 +3,7 @@ import { a as attr, o as observable, h as html } from './index.js';
|
|
|
3
3
|
import { w as when } from './when.js';
|
|
4
4
|
import enUS from '../locales/en-US.js';
|
|
5
5
|
|
|
6
|
-
const messageStyles = "/**\n * Do not edit directly\n * Generated on
|
|
6
|
+
const messageStyles = "/**\n * Do not edit directly\n * Generated on Wed, 01 Nov 2023 12:16:28 GMT\n */\n.message {\n display: flex;\n contain: inline-size;\n font: var(--vvd-typography-base-condensed);\n gap: 4px;\n grid-column: 1/-1;\n}\n.message-text {\n color: var(--vvd-color-canvas-text);\n}\n.helper-message .message-text {\n color: var(--_low-ink-color);\n}\n.message-icon {\n font-size: 16px;\n}\n.success-message .message-icon {\n color: var(--vvd-color-success-500);\n}\n.error-message .message-icon {\n color: var(--vvd-color-alert-500);\n}";
|
|
7
7
|
|
|
8
8
|
var __defProp$1 = Object.defineProperty;
|
|
9
9
|
var __getOwnPropDesc$1 = Object.getOwnPropertyDescriptor;
|
|
@@ -38,6 +38,33 @@ __decorateClass$1([
|
|
|
38
38
|
})
|
|
39
39
|
], FormElementCharCount.prototype, "charCount", 2);
|
|
40
40
|
function formElements(constructor) {
|
|
41
|
+
let currentPrototype = constructor.prototype;
|
|
42
|
+
while (currentPrototype) {
|
|
43
|
+
const parentPrototype = Object.getPrototypeOf(currentPrototype);
|
|
44
|
+
if (currentPrototype.validate && !parentPrototype.validate) {
|
|
45
|
+
currentPrototype.validate = function(anchor) {
|
|
46
|
+
if (this.proxy instanceof HTMLElement) {
|
|
47
|
+
const isValid = this.proxy.validity.valid;
|
|
48
|
+
const controlIsInvalidDueToMinOrMaxLength = this.control && this.control.validity && !this.control.validity.valid && (this.control.validity.tooShort || this.control.validity.tooLong);
|
|
49
|
+
if (isValid && controlIsInvalidDueToMinOrMaxLength) {
|
|
50
|
+
this.setValidity(
|
|
51
|
+
this.control.validity,
|
|
52
|
+
this.control.validationMessage,
|
|
53
|
+
anchor
|
|
54
|
+
);
|
|
55
|
+
} else {
|
|
56
|
+
this.setValidity(
|
|
57
|
+
this.proxy.validity,
|
|
58
|
+
this.proxy.validationMessage,
|
|
59
|
+
anchor
|
|
60
|
+
);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
break;
|
|
65
|
+
}
|
|
66
|
+
currentPrototype = parentPrototype;
|
|
67
|
+
}
|
|
41
68
|
class Decorated extends constructor {
|
|
42
69
|
constructor(...args) {
|
|
43
70
|
super(...args);
|
package/shared/key-codes.js
CHANGED
|
@@ -97,4 +97,4 @@ const ArrowKeys = {
|
|
|
97
97
|
ArrowUp: keyArrowUp,
|
|
98
98
|
};
|
|
99
99
|
|
|
100
|
-
export { ArrowKeys as A, keySpace as a,
|
|
100
|
+
export { ArrowKeys as A, keySpace as a, keyEscape as b, keyTab as c, keyEnd as d, keyArrowUp as e, keyArrowDown as f, keyHome as g, keyArrowRight as h, keyArrowLeft as i, keyPageDown as j, keyEnter as k, keyPageUp as l, keyFunction2 as m };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* String values for use with KeyboardEvent.key
|
|
3
|
+
*/
|
|
4
|
+
const keyArrowLeft = "ArrowLeft";
|
|
5
|
+
const keyArrowRight = "ArrowRight";
|
|
6
|
+
const keyEnter = "Enter";
|
|
7
|
+
const keySpace = " ";
|
|
8
|
+
|
|
9
|
+
export { keyArrowRight as a, keyEnter as b, keySpace as c, keyArrowLeft as k };
|
package/shared/listbox.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
+
import { k as keyArrowLeft, a as keyArrowRight } from './key-codes2.js';
|
|
1
2
|
import { F as FoundationElement, O as Observable, _ as __decorate, a as attr, o as observable, D as DOM, n as nullableNumberConverter } from './index.js';
|
|
2
3
|
import { i as isListboxOption } from './definition34.js';
|
|
3
4
|
import { A as ARIAGlobalStatesAndProperties } from './aria-global.js';
|
|
4
5
|
import { a as applyMixins } from './apply-mixins.js';
|
|
5
|
-
import { a as keySpace,
|
|
6
|
+
import { a as keySpace, b as keyEscape, k as keyEnter, c as keyTab, d as keyEnd, e as keyArrowUp, f as keyArrowDown, g as keyHome } from './key-codes.js';
|
|
6
7
|
import { u as uniqueId } from './strings.js';
|
|
7
8
|
import { i as inRange } from './numbers.js';
|
|
8
9
|
|
|
@@ -989,12 +990,6 @@ __decorate([
|
|
|
989
990
|
attr({ converter: nullableNumberConverter })
|
|
990
991
|
], ListboxElement.prototype, "size", void 0);
|
|
991
992
|
|
|
992
|
-
/**
|
|
993
|
-
* String values for use with KeyboardEvent.key
|
|
994
|
-
*/
|
|
995
|
-
const keyArrowLeft = "ArrowLeft";
|
|
996
|
-
const keyArrowRight = "ArrowRight";
|
|
997
|
-
|
|
998
993
|
var __defProp = Object.defineProperty;
|
|
999
994
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
1000
995
|
var __decorateClass = (decorators, target, key, kind) => {
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import type { DatePickerLocale } from '../date-picker/locale';
|
|
2
2
|
import type { FilePickerLocale } from '../../lib/file-picker/locale';
|
|
3
|
+
import type { DialogLocale } from '../../lib/dialog/locale';
|
|
4
|
+
import type { NumberFieldLocale } from '../../lib/number-field/locale';
|
|
3
5
|
export interface Locale {
|
|
4
6
|
datePicker: DatePickerLocale;
|
|
5
7
|
filePicker: FilePickerLocale;
|
|
8
|
+
dialog: DialogLocale;
|
|
9
|
+
numberField: NumberFieldLocale;
|
|
6
10
|
}
|