@purpurds/countdown 8.9.0 → 8.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/LICENSE.txt CHANGED
@@ -1,12 +1,12 @@
1
1
  Name: @purpurds/paragraph
2
- Version: 8.9.0
2
+ Version: 8.10.0
3
3
  License: AGPL-3.0-only
4
4
  Private: false
5
5
 
6
6
  ---
7
7
 
8
8
  Name: @purpurds/visually-hidden
9
- Version: 8.9.0
9
+ Version: 8.10.0
10
10
  License: AGPL-3.0-only
11
11
  Private: false
12
12
 
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),d=require("react");require("react-dom");function J(r){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const e in r)if(e!=="default"){const o=Object.getOwnPropertyDescriptor(r,e);Object.defineProperty(t,e,o.get?o:{enumerable:!0,get:()=>r[e]})}}return t.default=r,Object.freeze(t)}const p=J(d);function L(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var k={exports:{}},A;function U(){return A||(A=1,(function(r){(function(){var t={}.hasOwnProperty;function e(){for(var n="",u=0;u<arguments.length;u++){var i=arguments[u];i&&(n=a(n,o.call(this,i)))}return n}function o(n){if(typeof n=="string"||typeof n=="number")return this&&this[n]||n;if(typeof n!="object")return"";if(Array.isArray(n))return e.apply(this,n);if(n.toString!==Object.prototype.toString&&!n.toString.toString().includes("[native code]"))return n.toString();var u="";for(var i in n)t.call(n,i)&&n[i]&&(u=a(u,this&&this[i]||i));return u}function a(n,u){return u?n?n+" "+u:n+u:n}r.exports?(e.default=e,r.exports=e):window.classNames=e})()})(k)),k.exports}var X=U();const Y=L(X),rr={"purpur-paragraph":"_purpur-paragraph_1rh57_1","purpur-paragraph--disabled":"_purpur-paragraph--disabled_1rh57_7","purpur-paragraph--hyphens":"_purpur-paragraph--hyphens_1rh57_10","purpur-paragraph--negative":"_purpur-paragraph--negative_1rh57_13","purpur-paragraph--paragraph-100":"_purpur-paragraph--paragraph-100_1rh57_16","purpur-paragraph--paragraph-100-medium":"_purpur-paragraph--paragraph-100-medium_1rh57_22","purpur-paragraph--paragraph-100-bold":"_purpur-paragraph--paragraph-100-bold_1rh57_29","purpur-paragraph--paragraph-200":"_purpur-paragraph--paragraph-200_1rh57_36","purpur-paragraph--preamble-100":"_purpur-paragraph--preamble-100_1rh57_42","purpur-paragraph--preamble-200":"_purpur-paragraph--preamble-200_1rh57_48","purpur-paragraph--additional-100":"_purpur-paragraph--additional-100_1rh57_54","purpur-paragraph--additional-100-medium":"_purpur-paragraph--additional-100-medium_1rh57_60","purpur-paragraph--overline-100":"_purpur-paragraph--overline-100_1rh57_67","purpur-paragraph--overline-200":"_purpur-paragraph--overline-200_1rh57_75"},nr=Y.bind(rr),er={PARAGRAPH100:"paragraph-100"},x="purpur-paragraph",j=({children:r,className:t,disabled:e,enableHyphenation:o=!1,negative:a=!1,variant:n=er.PARAGRAPH100,...u})=>{const i=nr(t,x,`${x}--${n}`,{[`${x}--hyphens`]:o,[`${x}--disabled`]:e,[`${x}--negative`]:a});return s.jsx("p",{...u,className:i,children:r})};j.displayName="Paragraph";function R(r,t){if(typeof r=="function")return r(t);r!=null&&(r.current=t)}function tr(...r){return t=>{let e=!1;const o=r.map(a=>{const n=R(a,t);return!e&&typeof n=="function"&&(e=!0),n});if(e)return()=>{for(let a=0;a<o.length;a++){const n=o[a];typeof n=="function"?n():R(r[a],null)}}}}function ur(r){const t=ar(r),e=p.forwardRef((o,a)=>{const{children:n,...u}=o,i=p.Children.toArray(n),l=i.find(ir);if(l){const f=l.props.children,v=i.map(_=>_===l?p.Children.count(f)>1?p.Children.only(null):p.isValidElement(f)?f.props.children:null:_);return s.jsx(t,{...u,ref:a,children:p.isValidElement(f)?p.cloneElement(f,void 0,v):null})}return s.jsx(t,{...u,ref:a,children:n})});return e.displayName=`${r}.Slot`,e}function ar(r){const t=p.forwardRef((e,o)=>{const{children:a,...n}=e;if(p.isValidElement(a)){const u=pr(a),i=sr(n,a.props);return a.type!==p.Fragment&&(i.ref=o?tr(o,u):u),p.cloneElement(a,i)}return p.Children.count(a)>1?p.Children.only(null):null});return t.displayName=`${r}.SlotClone`,t}var or=Symbol("radix.slottable");function ir(r){return p.isValidElement(r)&&typeof r.type=="function"&&"__radixId"in r.type&&r.type.__radixId===or}function sr(r,t){const e={...t};for(const o in t){const a=r[o],n=t[o];/^on[A-Z]/.test(o)?a&&n?e[o]=(...u)=>{n(...u),a(...u)}:a&&(e[o]=a):o==="style"?e[o]={...a,...n}:o==="className"&&(e[o]=[a,n].filter(Boolean).join(" "))}return{...r,...e}}function pr(r){let t=Object.getOwnPropertyDescriptor(r.props,"ref")?.get,e=t&&"isReactWarning"in t&&t.isReactWarning;return e?r.ref:(t=Object.getOwnPropertyDescriptor(r,"ref")?.get,e=t&&"isReactWarning"in t&&t.isReactWarning,e?r.props.ref:r.props.ref||r.ref)}var cr=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","span","svg","ul"],lr=cr.reduce((r,t)=>{const e=ur(`Primitive.${t}`),o=p.forwardRef((a,n)=>{const{asChild:u,...i}=a,l=u?e:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),s.jsx(l,{...i,ref:n})});return o.displayName=`Primitive.${t}`,{...r,[t]:o}},{}),dr="VisuallyHidden",E=p.forwardRef((r,t)=>s.jsx(lr.span,{...r,ref:t,style:{position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal",...r.style}}));E.displayName=dr;var _r=E;const hr=({asChild:r,children:t,...e})=>s.jsx(_r,{asChild:r,...e,children:t});function fr(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var C={exports:{}};var T;function mr(){return T||(T=1,(function(r){(function(){var t={}.hasOwnProperty;function e(){for(var n="",u=0;u<arguments.length;u++){var i=arguments[u];i&&(n=a(n,o.call(this,i)))}return n}function o(n){if(typeof n=="string"||typeof n=="number")return this&&this[n]||n;if(typeof n!="object")return"";if(Array.isArray(n))return e.apply(this,n);if(n.toString!==Object.prototype.toString&&!n.toString.toString().includes("[native code]"))return n.toString();var u="";for(var i in n)t.call(n,i)&&n[i]&&(u=a(u,this&&this[i]||i));return u}function a(n,u){return u?n?n+" "+u:n+u:n}r.exports?(e.default=e,r.exports=e):window.classNames=e})()})(C)),C.exports}var gr=mr();const D=fr(gr),yr={"purpur-countdown--size-md":"_purpur-countdown--size-md_1kmr5_1","purpur-countdown--size-lg":"_purpur-countdown--size-lg_1kmr5_5","purpur-countdown--use-container-queries":"_purpur-countdown--use-container-queries_1kmr5_10","purpur-countdown__counter-container":"_purpur-countdown__counter-container_1kmr5_10","purpur-countdown--full-width":"_purpur-countdown--full-width_1kmr5_15","purpur-countdown--use-media-queries":"_purpur-countdown--use-media-queries_1kmr5_20","purpur-countdown":"_purpur-countdown_1kmr5_1","purpur-countdown--variant-primary":"_purpur-countdown--variant-primary_1kmr5_30","purpur-countdown--variant-secondary":"_purpur-countdown--variant-secondary_1kmr5_33","purpur-countdown--negative":"_purpur-countdown--negative_1kmr5_36","purpur-countdown--show-days":"_purpur-countdown--show-days_1kmr5_46","purpur-countdown__label":"_purpur-countdown__label_1kmr5_62"},br={"purpur-countdown-counter":"_purpur-countdown-counter_1h7qy_1","purpur-countdown-counter__number--size-lg":"_purpur-countdown-counter__number--size-lg_1h7qy_11","purpur-countdown-counter__number--size-md":"_purpur-countdown-counter__number--size-md_1h7qy_17","purpur-countdown-counter__number":"_purpur-countdown-counter__number_1h7qy_11","tick-animation":"_tick-animation_1h7qy_1","tick-animation-pseudo":"_tick-animation-pseudo_1h7qy_1","purpur-countdown-counter__label":"_purpur-countdown-counter__label_1h7qy_44","purpur-countdown-counter__label--abbr":"_purpur-countdown-counter__label--abbr_1h7qy_51","purpur-countdown-counter__label--full":"_purpur-countdown-counter__label--full_1h7qy_54"};function I(r){const t=new Date().getTime(),e=Math.abs(r-t);let o=0,a=0,n=0,u=0;return e>=c.day&&(u=Math.floor(e/c.day)),e>=c.hour&&(n=Math.floor(e%c.day/c.hour)),e>=c.minute&&(a=Math.floor(e%c.hour/c.minute)),e>=c.second&&(o=Math.floor(e%c.minute/c.second)),{seconds:o,minutes:a,hours:n,days:u}}function wr(r,t){let e=0;return t==="seconds"&&(e=r-1>=0?r-1:59),t==="minutes"&&(e=r-1>=0?r-1:59),t==="hours"&&(e=r-1>=0?r-1:23),t==="days"&&(e=r-1>=0?r-1:0),e}const c={day:1440*60*1e3,hour:3600*1e3,minute:60*1e3,second:1e3},S=D.bind(br),g="purpur-countdown-counter",M=new Map,q=({tag:r,size:t,end:e,counterLabels:o})=>{const a=d.useRef(null),n=`${r}-interval`,[u,i]=d.useState(0),[l,f]=d.useState(0),[v,_]=d.useState(0),y=d.useCallback(()=>{const b=I(e),O=wr(b[r],r);f(O),i(b[r])},[e,r]);d.useEffect(()=>{y()},[]),d.useEffect(()=>(M.set(n,setInterval(y,c.second)),()=>clearInterval(M.get(n))),[y,n]),d.useEffect(()=>{_(b=>b+1)},[u]);const N=o[r],m=o[`${r}Abbr`];return s.jsxs("div",{className:S(g),role:"group","aria-hidden":"true","data-testid":`counter-${r}`,children:[s.jsx(j,{className:S(`${g}__number`,`${g}__number--size-${t}`),ref:a,"data-tick":l,children:u},v),m&&s.jsx(j,{className:S(`${g}__label`,`${g}__label--abbr`),children:s.jsx("abbr",{title:N,children:m})}),s.jsx(j,{className:S(`${g}__label`,{[`${g}__label--full`]:!!m}),children:N})]})},P=D.bind(yr),h="purpur-countdown",z=new Date,V=d.forwardRef(({renderAfterEnd:r,renderBeforeStart:t,...e},o)=>{const a=d.useId(),{size:n="lg",fullWidth:u=!1,negative:i=!1,showDays:l=!0,variant:f="primary",className:v,counterLabels:_,useMediaQueries:y=!1}=e,N=new Date(e.starttime).getTime(),m=new Date(e.endtime).getTime(),b=N>z.getTime(),O=m<z.getTime();if(b)return t?t(e):null;if(O)return r?r(e):null;const W=()=>{const w={size:n,end:m,counterLabels:_};return s.jsxs(s.Fragment,{children:[l&&s.jsx(q,{tag:"days",...w}),s.jsx(q,{tag:"hours",...w}),s.jsx(q,{tag:"minutes",...w}),s.jsx(q,{tag:"seconds",...w})]})},H=()=>{const w=()=>{const{days:G,hours:K,minutes:Q,seconds:Z}=I(m),$=[];return l&&$.push(`${G} ${_.days}`),$.push(`${K} ${_.hours}`),$.push(`${Q} ${_.minutes}`),$.push(`${Z} ${_.seconds}`),$.join(", ")};return s.jsx(hr,{"data-testid":"live-region","aria-live":"polite","aria-label":e["aria-label"],children:w()})},F=W(),B=P(h,`${h}--size-${n}`,`${h}--variant-${f}`,{[`${h}--full-width`]:u,[`${h}--negative`]:i,[`${h}--show-days`]:l,[`${h}--use-media-queries`]:y,[`${h}--use-container-queries`]:!y},v);return s.jsxs("section",{id:a,className:B,ref:o,role:"timer","data-testid":e["data-testid"],children:[H(),e.label&&s.jsx(j,{className:P(`${h}__label`),variant:"paragraph-100-medium",children:e.label}),s.jsx("div",{className:P(`${h}__counter-container`),children:F})]})});V.displayName="Countdown";exports.Countdown=V;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),d=require("react");require("react-dom");function J(r){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const e in r)if(e!=="default"){const o=Object.getOwnPropertyDescriptor(r,e);Object.defineProperty(t,e,o.get?o:{enumerable:!0,get:()=>r[e]})}}return t.default=r,Object.freeze(t)}const p=J(d);function L(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var A={exports:{}},R;function U(){return R||(R=1,(function(r){(function(){var t={}.hasOwnProperty;function e(){for(var n="",u=0;u<arguments.length;u++){var i=arguments[u];i&&(n=a(n,o.call(this,i)))}return n}function o(n){if(typeof n=="string"||typeof n=="number")return this&&this[n]||n;if(typeof n!="object")return"";if(Array.isArray(n))return e.apply(this,n);if(n.toString!==Object.prototype.toString&&!n.toString.toString().includes("[native code]"))return n.toString();var u="";for(var i in n)t.call(n,i)&&n[i]&&(u=a(u,this&&this[i]||i));return u}function a(n,u){return u?n?n+" "+u:n+u:n}r.exports?(e.default=e,r.exports=e):window.classNames=e})()})(A)),A.exports}var X=U();const Y=L(X),rr={"purpur-paragraph":"_purpur-paragraph_1rh57_1","purpur-paragraph--disabled":"_purpur-paragraph--disabled_1rh57_7","purpur-paragraph--hyphens":"_purpur-paragraph--hyphens_1rh57_10","purpur-paragraph--negative":"_purpur-paragraph--negative_1rh57_13","purpur-paragraph--paragraph-100":"_purpur-paragraph--paragraph-100_1rh57_16","purpur-paragraph--paragraph-100-medium":"_purpur-paragraph--paragraph-100-medium_1rh57_22","purpur-paragraph--paragraph-100-bold":"_purpur-paragraph--paragraph-100-bold_1rh57_29","purpur-paragraph--paragraph-200":"_purpur-paragraph--paragraph-200_1rh57_36","purpur-paragraph--preamble-100":"_purpur-paragraph--preamble-100_1rh57_42","purpur-paragraph--preamble-200":"_purpur-paragraph--preamble-200_1rh57_48","purpur-paragraph--additional-100":"_purpur-paragraph--additional-100_1rh57_54","purpur-paragraph--additional-100-medium":"_purpur-paragraph--additional-100-medium_1rh57_60","purpur-paragraph--overline-100":"_purpur-paragraph--overline-100_1rh57_67","purpur-paragraph--overline-200":"_purpur-paragraph--overline-200_1rh57_75"},nr=Y.bind(rr),er={PARAGRAPH100:"paragraph-100"},x="purpur-paragraph",j=({children:r,className:t,disabled:e,enableHyphenation:o=!1,negative:a=!1,variant:n=er.PARAGRAPH100,...u})=>{const i=nr(t,x,`${x}--${n}`,{[`${x}--hyphens`]:o,[`${x}--disabled`]:e,[`${x}--negative`]:a});return s.jsx("p",{...u,className:i,children:r})};j.displayName="Paragraph";function T(r,t){if(typeof r=="function")return r(t);r!=null&&(r.current=t)}function tr(...r){return t=>{let e=!1;const o=r.map(a=>{const n=T(a,t);return!e&&typeof n=="function"&&(e=!0),n});if(e)return()=>{for(let a=0;a<o.length;a++){const n=o[a];typeof n=="function"?n():T(r[a],null)}}}}function ur(r){const t=ar(r),e=p.forwardRef((o,a)=>{const{children:n,...u}=o,i=p.Children.toArray(n),l=i.find(ir);if(l){const f=l.props.children,v=i.map(_=>_===l?p.Children.count(f)>1?p.Children.only(null):p.isValidElement(f)?f.props.children:null:_);return s.jsx(t,{...u,ref:a,children:p.isValidElement(f)?p.cloneElement(f,void 0,v):null})}return s.jsx(t,{...u,ref:a,children:n})});return e.displayName=`${r}.Slot`,e}function ar(r){const t=p.forwardRef((e,o)=>{const{children:a,...n}=e;if(p.isValidElement(a)){const u=pr(a),i=sr(n,a.props);return a.type!==p.Fragment&&(i.ref=o?tr(o,u):u),p.cloneElement(a,i)}return p.Children.count(a)>1?p.Children.only(null):null});return t.displayName=`${r}.SlotClone`,t}var or=Symbol("radix.slottable");function ir(r){return p.isValidElement(r)&&typeof r.type=="function"&&"__radixId"in r.type&&r.type.__radixId===or}function sr(r,t){const e={...t};for(const o in t){const a=r[o],n=t[o];/^on[A-Z]/.test(o)?a&&n?e[o]=(...u)=>{n(...u),a(...u)}:a&&(e[o]=a):o==="style"?e[o]={...a,...n}:o==="className"&&(e[o]=[a,n].filter(Boolean).join(" "))}return{...r,...e}}function pr(r){let t=Object.getOwnPropertyDescriptor(r.props,"ref")?.get,e=t&&"isReactWarning"in t&&t.isReactWarning;return e?r.ref:(t=Object.getOwnPropertyDescriptor(r,"ref")?.get,e=t&&"isReactWarning"in t&&t.isReactWarning,e?r.props.ref:r.props.ref||r.ref)}var cr=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","span","svg","ul"],lr=cr.reduce((r,t)=>{const e=ur(`Primitive.${t}`),o=p.forwardRef((a,n)=>{const{asChild:u,...i}=a,l=u?e:t;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),s.jsx(l,{...i,ref:n})});return o.displayName=`Primitive.${t}`,{...r,[t]:o}},{}),dr="VisuallyHidden",D=p.forwardRef((r,t)=>s.jsx(lr.span,{...r,ref:t,style:{position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal",...r.style}}));D.displayName=dr;var _r=D;const hr=({asChild:r,children:t,...e})=>s.jsx(_r,{asChild:r,...e,children:t});function fr(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var C={exports:{}};var M;function mr(){return M||(M=1,(function(r){(function(){var t={}.hasOwnProperty;function e(){for(var n="",u=0;u<arguments.length;u++){var i=arguments[u];i&&(n=a(n,o.call(this,i)))}return n}function o(n){if(typeof n=="string"||typeof n=="number")return this&&this[n]||n;if(typeof n!="object")return"";if(Array.isArray(n))return e.apply(this,n);if(n.toString!==Object.prototype.toString&&!n.toString.toString().includes("[native code]"))return n.toString();var u="";for(var i in n)t.call(n,i)&&n[i]&&(u=a(u,this&&this[i]||i));return u}function a(n,u){return u?n?n+" "+u:n+u:n}r.exports?(e.default=e,r.exports=e):window.classNames=e})()})(C)),C.exports}var gr=mr();const I=fr(gr),yr={"purpur-countdown--size-md":"_purpur-countdown--size-md_ytnsp_1","purpur-countdown--size-lg":"_purpur-countdown--size-lg_ytnsp_5","purpur-countdown--use-container-queries":"_purpur-countdown--use-container-queries_ytnsp_10","purpur-countdown__counter-container":"_purpur-countdown__counter-container_ytnsp_10","purpur-countdown--full-width":"_purpur-countdown--full-width_ytnsp_15","purpur-countdown--use-media-queries":"_purpur-countdown--use-media-queries_ytnsp_25","purpur-countdown":"_purpur-countdown_ytnsp_1","purpur-countdown--variant-primary":"_purpur-countdown--variant-primary_ytnsp_40","purpur-countdown--variant-secondary":"_purpur-countdown--variant-secondary_ytnsp_43","purpur-countdown--negative":"_purpur-countdown--negative_ytnsp_46","purpur-countdown--show-days":"_purpur-countdown--show-days_ytnsp_56","purpur-countdown__label":"_purpur-countdown__label_ytnsp_72"},br={"purpur-countdown-counter":"_purpur-countdown-counter_19zid_1","purpur-countdown-counter__number--size-lg":"_purpur-countdown-counter__number--size-lg_19zid_11","purpur-countdown-counter__number--size-md":"_purpur-countdown-counter__number--size-md_19zid_17","purpur-countdown-counter__number":"_purpur-countdown-counter__number_19zid_11","tick-animation":"_tick-animation_19zid_1","tick-animation-pseudo":"_tick-animation-pseudo_19zid_1","purpur-countdown-counter__label":"_purpur-countdown-counter__label_19zid_44","purpur-countdown-counter__label--abbr":"_purpur-countdown-counter__label--abbr_19zid_51","purpur-countdown-counter__label--full":"_purpur-countdown-counter__label--full_19zid_54"};function V(r){const t=new Date().getTime(),e=Math.abs(r-t);let o=0,a=0,n=0,u=0;return e>=c.day&&(u=Math.floor(e/c.day)),e>=c.hour&&(n=Math.floor(e%c.day/c.hour)),e>=c.minute&&(a=Math.floor(e%c.hour/c.minute)),e>=c.second&&(o=Math.floor(e%c.minute/c.second)),{seconds:o,minutes:a,hours:n,days:u}}function wr(r,t){let e=0;return t==="seconds"&&(e=r-1>=0?r-1:59),t==="minutes"&&(e=r-1>=0?r-1:59),t==="hours"&&(e=r-1>=0?r-1:23),t==="days"&&(e=r-1>=0?r-1:0),e}const c={day:1440*60*1e3,hour:3600*1e3,minute:60*1e3,second:1e3},S=I.bind(br),g="purpur-countdown-counter",E=new Map,z=({tag:r,size:t,end:e,counterLabels:o})=>{const a=d.useRef(null),n=`${r}-interval`,[u,i]=d.useState(0),[l,f]=d.useState(0),[v,_]=d.useState(0),y=d.useCallback(()=>{const b=V(e),O=wr(b[r],r);f(O),i(b[r])},[e,r]);d.useEffect(()=>{y()},[]),d.useEffect(()=>(E.set(n,setInterval(y,c.second)),()=>clearInterval(E.get(n))),[y,n]),d.useEffect(()=>{_(b=>b+1)},[u]);const N=o[r],m=o[`${r}Abbr`];return s.jsxs("div",{className:S(g),role:"group","aria-hidden":"true","data-testid":`counter-${r}`,children:[s.jsx(j,{className:S(`${g}__number`,`${g}__number--size-${t}`),ref:a,"data-tick":l,children:u},v),m&&s.jsx(j,{className:S(`${g}__label`,`${g}__label--abbr`),children:s.jsx("abbr",{title:N,children:m})}),s.jsx(j,{className:S(`${g}__label`,{[`${g}__label--full`]:!!m}),children:N})]})},P=I.bind(yr),h="purpur-countdown",q=new Date,W=d.forwardRef(({renderAfterEnd:r,renderBeforeStart:t,...e},o)=>{const a=d.useId(),{size:n="lg",fullWidth:u=!1,negative:i=!1,showDays:l=!0,variant:f="primary",className:v,counterLabels:_,useMediaQueries:y=!1}=e,N=new Date(e.starttime).getTime(),m=new Date(e.endtime).getTime(),b=N>q.getTime(),O=m<q.getTime();if(b)return t?t(e):null;if(O)return r?r(e):null;const k=()=>{const w={size:n,end:m,counterLabels:_};return s.jsxs(s.Fragment,{children:[l&&s.jsx(z,{tag:"days",...w}),s.jsx(z,{tag:"hours",...w}),s.jsx(z,{tag:"minutes",...w}),s.jsx(z,{tag:"seconds",...w})]})},H=()=>{const w=()=>{const{days:G,hours:K,minutes:Q,seconds:Z}=V(m),$=[];return l&&$.push(`${G} ${_.days}`),$.push(`${K} ${_.hours}`),$.push(`${Q} ${_.minutes}`),$.push(`${Z} ${_.seconds}`),$.join(", ")};return s.jsx(hr,{"data-testid":"live-region","aria-live":"polite","aria-label":e["aria-label"],children:w()})},F=k(),B=P(h,`${h}--size-${n}`,`${h}--variant-${f}`,{[`${h}--full-width`]:u,[`${h}--negative`]:i,[`${h}--show-days`]:l,[`${h}--use-media-queries`]:y,[`${h}--use-container-queries`]:!y},v);return s.jsxs("section",{id:a,className:B,ref:o,role:"timer","data-testid":e["data-testid"],children:[H(),e.label&&s.jsx(j,{className:P(`${h}__label`),variant:"paragraph-100-medium",children:e.label}),s.jsx("div",{className:P(`${h}__counter-container`),children:F})]})});W.displayName="Countdown";exports.Countdown=W;
2
2
  //# sourceMappingURL=countdown.cjs.js.map
@@ -1,16 +1,16 @@
1
- import { jsx as p, jsxs as O, Fragment as L } from "react/jsx-runtime";
1
+ import { jsx as p, jsxs as j, Fragment as L } from "react/jsx-runtime";
2
2
  import * as s from "react";
3
- import { useRef as U, useState as S, useCallback as X, useEffect as k, forwardRef as Y, useId as rr } from "react";
3
+ import { useRef as U, useState as S, useCallback as X, useEffect as R, forwardRef as Y, useId as rr } from "react";
4
4
  import "react-dom";
5
5
  function nr(r) {
6
6
  return r && r.__esModule && Object.prototype.hasOwnProperty.call(r, "default") ? r.default : r;
7
7
  }
8
- var j = { exports: {} }, T;
9
- function er() {
10
- return T || (T = 1, (function(r) {
8
+ var T = { exports: {} }, M;
9
+ function tr() {
10
+ return M || (M = 1, (function(r) {
11
11
  (function() {
12
- var t = {}.hasOwnProperty;
13
- function e() {
12
+ var e = {}.hasOwnProperty;
13
+ function t() {
14
14
  for (var n = "", a = 0; a < arguments.length; a++) {
15
15
  var i = arguments[a];
16
16
  i && (n = u(n, o.call(this, i)));
@@ -23,23 +23,23 @@ function er() {
23
23
  if (typeof n != "object")
24
24
  return "";
25
25
  if (Array.isArray(n))
26
- return e.apply(this, n);
26
+ return t.apply(this, n);
27
27
  if (n.toString !== Object.prototype.toString && !n.toString.toString().includes("[native code]"))
28
28
  return n.toString();
29
29
  var a = "";
30
30
  for (var i in n)
31
- t.call(n, i) && n[i] && (a = u(a, this && this[i] || i));
31
+ e.call(n, i) && n[i] && (a = u(a, this && this[i] || i));
32
32
  return a;
33
33
  }
34
34
  function u(n, a) {
35
35
  return a ? n ? n + " " + a : n + a : n;
36
36
  }
37
- r.exports ? (e.default = e, r.exports = e) : window.classNames = e;
37
+ r.exports ? (t.default = t, r.exports = t) : window.classNames = t;
38
38
  })();
39
- })(j)), j.exports;
39
+ })(T)), T.exports;
40
40
  }
41
- var tr = er();
42
- const ar = /* @__PURE__ */ nr(tr), ur = {
41
+ var er = tr();
42
+ const ar = /* @__PURE__ */ nr(er), ur = {
43
43
  "purpur-paragraph": "_purpur-paragraph_1rh57_1",
44
44
  "purpur-paragraph--disabled": "_purpur-paragraph--disabled_1rh57_7",
45
45
  "purpur-paragraph--hyphens": "_purpur-paragraph--hyphens_1rh57_10",
@@ -58,83 +58,83 @@ const ar = /* @__PURE__ */ nr(tr), ur = {
58
58
  PARAGRAPH100: "paragraph-100"
59
59
  }, $ = "purpur-paragraph", N = ({
60
60
  children: r,
61
- className: t,
62
- disabled: e,
61
+ className: e,
62
+ disabled: t,
63
63
  enableHyphenation: o = !1,
64
64
  negative: u = !1,
65
65
  variant: n = ir.PARAGRAPH100,
66
66
  ...a
67
67
  }) => {
68
- const i = or(t, $, `${$}--${n}`, {
68
+ const i = or(e, $, `${$}--${n}`, {
69
69
  [`${$}--hyphens`]: o,
70
- [`${$}--disabled`]: e,
70
+ [`${$}--disabled`]: t,
71
71
  [`${$}--negative`]: u
72
72
  });
73
73
  return /* @__PURE__ */ p("p", { ...a, className: i, children: r });
74
74
  };
75
75
  N.displayName = "Paragraph";
76
- function z(r, t) {
76
+ function E(r, e) {
77
77
  if (typeof r == "function")
78
- return r(t);
79
- r != null && (r.current = t);
78
+ return r(e);
79
+ r != null && (r.current = e);
80
80
  }
81
81
  function pr(...r) {
82
- return (t) => {
83
- let e = !1;
82
+ return (e) => {
83
+ let t = !1;
84
84
  const o = r.map((u) => {
85
- const n = z(u, t);
86
- return !e && typeof n == "function" && (e = !0), n;
85
+ const n = E(u, e);
86
+ return !t && typeof n == "function" && (t = !0), n;
87
87
  });
88
- if (e)
88
+ if (t)
89
89
  return () => {
90
90
  for (let u = 0; u < o.length; u++) {
91
91
  const n = o[u];
92
- typeof n == "function" ? n() : z(r[u], null);
92
+ typeof n == "function" ? n() : E(r[u], null);
93
93
  }
94
94
  };
95
95
  };
96
96
  }
97
97
  // @__NO_SIDE_EFFECTS__
98
98
  function sr(r) {
99
- const t = /* @__PURE__ */ cr(r), e = s.forwardRef((o, u) => {
99
+ const e = /* @__PURE__ */ cr(r), t = s.forwardRef((o, u) => {
100
100
  const { children: n, ...a } = o, i = s.Children.toArray(n), l = i.find(dr);
101
101
  if (l) {
102
102
  const h = l.props.children, b = i.map((d) => d === l ? s.Children.count(h) > 1 ? s.Children.only(null) : s.isValidElement(h) ? h.props.children : null : d);
103
- return /* @__PURE__ */ p(t, { ...a, ref: u, children: s.isValidElement(h) ? s.cloneElement(h, void 0, b) : null });
103
+ return /* @__PURE__ */ p(e, { ...a, ref: u, children: s.isValidElement(h) ? s.cloneElement(h, void 0, b) : null });
104
104
  }
105
- return /* @__PURE__ */ p(t, { ...a, ref: u, children: n });
105
+ return /* @__PURE__ */ p(e, { ...a, ref: u, children: n });
106
106
  });
107
- return e.displayName = `${r}.Slot`, e;
107
+ return t.displayName = `${r}.Slot`, t;
108
108
  }
109
109
  // @__NO_SIDE_EFFECTS__
110
110
  function cr(r) {
111
- const t = s.forwardRef((e, o) => {
112
- const { children: u, ...n } = e;
111
+ const e = s.forwardRef((t, o) => {
112
+ const { children: u, ...n } = t;
113
113
  if (s.isValidElement(u)) {
114
114
  const a = hr(u), i = _r(n, u.props);
115
115
  return u.type !== s.Fragment && (i.ref = o ? pr(o, a) : a), s.cloneElement(u, i);
116
116
  }
117
117
  return s.Children.count(u) > 1 ? s.Children.only(null) : null;
118
118
  });
119
- return t.displayName = `${r}.SlotClone`, t;
119
+ return e.displayName = `${r}.SlotClone`, e;
120
120
  }
121
121
  var lr = Symbol("radix.slottable");
122
122
  function dr(r) {
123
123
  return s.isValidElement(r) && typeof r.type == "function" && "__radixId" in r.type && r.type.__radixId === lr;
124
124
  }
125
- function _r(r, t) {
126
- const e = { ...t };
127
- for (const o in t) {
128
- const u = r[o], n = t[o];
129
- /^on[A-Z]/.test(o) ? u && n ? e[o] = (...a) => {
125
+ function _r(r, e) {
126
+ const t = { ...e };
127
+ for (const o in e) {
128
+ const u = r[o], n = e[o];
129
+ /^on[A-Z]/.test(o) ? u && n ? t[o] = (...a) => {
130
130
  n(...a), u(...a);
131
- } : u && (e[o] = u) : o === "style" ? e[o] = { ...u, ...n } : o === "className" && (e[o] = [u, n].filter(Boolean).join(" "));
131
+ } : u && (t[o] = u) : o === "style" ? t[o] = { ...u, ...n } : o === "className" && (t[o] = [u, n].filter(Boolean).join(" "));
132
132
  }
133
- return { ...r, ...e };
133
+ return { ...r, ...t };
134
134
  }
135
135
  function hr(r) {
136
- let t = Object.getOwnPropertyDescriptor(r.props, "ref")?.get, e = t && "isReactWarning" in t && t.isReactWarning;
137
- return e ? r.ref : (t = Object.getOwnPropertyDescriptor(r, "ref")?.get, e = t && "isReactWarning" in t && t.isReactWarning, e ? r.props.ref : r.props.ref || r.ref);
136
+ let e = Object.getOwnPropertyDescriptor(r.props, "ref")?.get, t = e && "isReactWarning" in e && e.isReactWarning;
137
+ return t ? r.ref : (e = Object.getOwnPropertyDescriptor(r, "ref")?.get, t = e && "isReactWarning" in e && e.isReactWarning, t ? r.props.ref : r.props.ref || r.ref);
138
138
  }
139
139
  var fr = [
140
140
  "a",
@@ -153,18 +153,18 @@ var fr = [
153
153
  "span",
154
154
  "svg",
155
155
  "ul"
156
- ], mr = fr.reduce((r, t) => {
157
- const e = /* @__PURE__ */ sr(`Primitive.${t}`), o = s.forwardRef((u, n) => {
158
- const { asChild: a, ...i } = u, l = a ? e : t;
156
+ ], mr = fr.reduce((r, e) => {
157
+ const t = /* @__PURE__ */ sr(`Primitive.${e}`), o = s.forwardRef((u, n) => {
158
+ const { asChild: a, ...i } = u, l = a ? t : e;
159
159
  return typeof window < "u" && (window[Symbol.for("radix-ui")] = !0), /* @__PURE__ */ p(l, { ...i, ref: n });
160
160
  });
161
- return o.displayName = `Primitive.${t}`, { ...r, [t]: o };
162
- }, {}), gr = "VisuallyHidden", I = s.forwardRef(
163
- (r, t) => /* @__PURE__ */ p(
161
+ return o.displayName = `Primitive.${e}`, { ...r, [e]: o };
162
+ }, {}), gr = "VisuallyHidden", V = s.forwardRef(
163
+ (r, e) => /* @__PURE__ */ p(
164
164
  mr.span,
165
165
  {
166
166
  ...r,
167
- ref: t,
167
+ ref: e,
168
168
  style: {
169
169
  // See: https://github.com/twbs/bootstrap/blob/main/scss/mixins/_visually-hidden.scss
170
170
  position: "absolute",
@@ -182,19 +182,19 @@ var fr = [
182
182
  }
183
183
  )
184
184
  );
185
- I.displayName = gr;
186
- var wr = I;
187
- const yr = ({ asChild: r, children: t, ...e }) => /* @__PURE__ */ p(wr, { asChild: r, ...e, children: t });
185
+ V.displayName = gr;
186
+ var yr = V;
187
+ const wr = ({ asChild: r, children: e, ...t }) => /* @__PURE__ */ p(yr, { asChild: r, ...t, children: e });
188
188
  function br(r) {
189
189
  return r && r.__esModule && Object.prototype.hasOwnProperty.call(r, "default") ? r.default : r;
190
190
  }
191
- var R = { exports: {} };
192
- var M;
191
+ var P = { exports: {} };
192
+ var D;
193
193
  function vr() {
194
- return M || (M = 1, (function(r) {
194
+ return D || (D = 1, (function(r) {
195
195
  (function() {
196
- var t = {}.hasOwnProperty;
197
- function e() {
196
+ var e = {}.hasOwnProperty;
197
+ function t() {
198
198
  for (var n = "", a = 0; a < arguments.length; a++) {
199
199
  var i = arguments[a];
200
200
  i && (n = u(n, o.call(this, i)));
@@ -207,80 +207,80 @@ function vr() {
207
207
  if (typeof n != "object")
208
208
  return "";
209
209
  if (Array.isArray(n))
210
- return e.apply(this, n);
210
+ return t.apply(this, n);
211
211
  if (n.toString !== Object.prototype.toString && !n.toString.toString().includes("[native code]"))
212
212
  return n.toString();
213
213
  var a = "";
214
214
  for (var i in n)
215
- t.call(n, i) && n[i] && (a = u(a, this && this[i] || i));
215
+ e.call(n, i) && n[i] && (a = u(a, this && this[i] || i));
216
216
  return a;
217
217
  }
218
218
  function u(n, a) {
219
219
  return a ? n ? n + " " + a : n + a : n;
220
220
  }
221
- r.exports ? (e.default = e, r.exports = e) : window.classNames = e;
221
+ r.exports ? (t.default = t, r.exports = t) : window.classNames = t;
222
222
  })();
223
- })(R)), R.exports;
223
+ })(P)), P.exports;
224
224
  }
225
225
  var $r = vr();
226
- const V = /* @__PURE__ */ br($r), Nr = {
227
- "purpur-countdown--size-md": "_purpur-countdown--size-md_1kmr5_1",
228
- "purpur-countdown--size-lg": "_purpur-countdown--size-lg_1kmr5_5",
229
- "purpur-countdown--use-container-queries": "_purpur-countdown--use-container-queries_1kmr5_10",
230
- "purpur-countdown__counter-container": "_purpur-countdown__counter-container_1kmr5_10",
231
- "purpur-countdown--full-width": "_purpur-countdown--full-width_1kmr5_15",
232
- "purpur-countdown--use-media-queries": "_purpur-countdown--use-media-queries_1kmr5_20",
233
- "purpur-countdown": "_purpur-countdown_1kmr5_1",
234
- "purpur-countdown--variant-primary": "_purpur-countdown--variant-primary_1kmr5_30",
235
- "purpur-countdown--variant-secondary": "_purpur-countdown--variant-secondary_1kmr5_33",
236
- "purpur-countdown--negative": "_purpur-countdown--negative_1kmr5_36",
237
- "purpur-countdown--show-days": "_purpur-countdown--show-days_1kmr5_46",
238
- "purpur-countdown__label": "_purpur-countdown__label_1kmr5_62"
226
+ const W = /* @__PURE__ */ br($r), Nr = {
227
+ "purpur-countdown--size-md": "_purpur-countdown--size-md_ytnsp_1",
228
+ "purpur-countdown--size-lg": "_purpur-countdown--size-lg_ytnsp_5",
229
+ "purpur-countdown--use-container-queries": "_purpur-countdown--use-container-queries_ytnsp_10",
230
+ "purpur-countdown__counter-container": "_purpur-countdown__counter-container_ytnsp_10",
231
+ "purpur-countdown--full-width": "_purpur-countdown--full-width_ytnsp_15",
232
+ "purpur-countdown--use-media-queries": "_purpur-countdown--use-media-queries_ytnsp_25",
233
+ "purpur-countdown": "_purpur-countdown_ytnsp_1",
234
+ "purpur-countdown--variant-primary": "_purpur-countdown--variant-primary_ytnsp_40",
235
+ "purpur-countdown--variant-secondary": "_purpur-countdown--variant-secondary_ytnsp_43",
236
+ "purpur-countdown--negative": "_purpur-countdown--negative_ytnsp_46",
237
+ "purpur-countdown--show-days": "_purpur-countdown--show-days_ytnsp_56",
238
+ "purpur-countdown__label": "_purpur-countdown__label_ytnsp_72"
239
239
  }, xr = {
240
- "purpur-countdown-counter": "_purpur-countdown-counter_1h7qy_1",
241
- "purpur-countdown-counter__number--size-lg": "_purpur-countdown-counter__number--size-lg_1h7qy_11",
242
- "purpur-countdown-counter__number--size-md": "_purpur-countdown-counter__number--size-md_1h7qy_17",
243
- "purpur-countdown-counter__number": "_purpur-countdown-counter__number_1h7qy_11",
244
- "tick-animation": "_tick-animation_1h7qy_1",
245
- "tick-animation-pseudo": "_tick-animation-pseudo_1h7qy_1",
246
- "purpur-countdown-counter__label": "_purpur-countdown-counter__label_1h7qy_44",
247
- "purpur-countdown-counter__label--abbr": "_purpur-countdown-counter__label--abbr_1h7qy_51",
248
- "purpur-countdown-counter__label--full": "_purpur-countdown-counter__label--full_1h7qy_54"
240
+ "purpur-countdown-counter": "_purpur-countdown-counter_19zid_1",
241
+ "purpur-countdown-counter__number--size-lg": "_purpur-countdown-counter__number--size-lg_19zid_11",
242
+ "purpur-countdown-counter__number--size-md": "_purpur-countdown-counter__number--size-md_19zid_17",
243
+ "purpur-countdown-counter__number": "_purpur-countdown-counter__number_19zid_11",
244
+ "tick-animation": "_tick-animation_19zid_1",
245
+ "tick-animation-pseudo": "_tick-animation-pseudo_19zid_1",
246
+ "purpur-countdown-counter__label": "_purpur-countdown-counter__label_19zid_44",
247
+ "purpur-countdown-counter__label--abbr": "_purpur-countdown-counter__label--abbr_19zid_51",
248
+ "purpur-countdown-counter__label--full": "_purpur-countdown-counter__label--full_19zid_54"
249
249
  };
250
- function W(r) {
251
- const t = (/* @__PURE__ */ new Date()).getTime(), e = Math.abs(r - t);
250
+ function k(r) {
251
+ const e = (/* @__PURE__ */ new Date()).getTime(), t = Math.abs(r - e);
252
252
  let o = 0, u = 0, n = 0, a = 0;
253
- return e >= c.day && (a = Math.floor(e / c.day)), e >= c.hour && (n = Math.floor(e % c.day / c.hour)), e >= c.minute && (u = Math.floor(e % c.hour / c.minute)), e >= c.second && (o = Math.floor(e % c.minute / c.second)), {
253
+ return t >= c.day && (a = Math.floor(t / c.day)), t >= c.hour && (n = Math.floor(t % c.day / c.hour)), t >= c.minute && (u = Math.floor(t % c.hour / c.minute)), t >= c.second && (o = Math.floor(t % c.minute / c.second)), {
254
254
  seconds: o,
255
255
  minutes: u,
256
256
  hours: n,
257
257
  days: a
258
258
  };
259
259
  }
260
- function Cr(r, t) {
261
- let e = 0;
262
- return t === "seconds" && (e = r - 1 >= 0 ? r - 1 : 59), t === "minutes" && (e = r - 1 >= 0 ? r - 1 : 59), t === "hours" && (e = r - 1 >= 0 ? r - 1 : 23), t === "days" && (e = r - 1 >= 0 ? r - 1 : 0), e;
260
+ function zr(r, e) {
261
+ let t = 0;
262
+ return e === "seconds" && (t = r - 1 >= 0 ? r - 1 : 59), e === "minutes" && (t = r - 1 >= 0 ? r - 1 : 59), e === "hours" && (t = r - 1 >= 0 ? r - 1 : 23), e === "days" && (t = r - 1 >= 0 ? r - 1 : 0), t;
263
263
  }
264
264
  const c = {
265
265
  day: 1440 * 60 * 1e3,
266
266
  hour: 3600 * 1e3,
267
267
  minute: 60 * 1e3,
268
268
  second: 1e3
269
- }, C = V.bind(xr), m = "purpur-countdown-counter", E = /* @__PURE__ */ new Map(), q = ({ tag: r, size: t, end: e, counterLabels: o }) => {
269
+ }, z = W.bind(xr), m = "purpur-countdown-counter", q = /* @__PURE__ */ new Map(), C = ({ tag: r, size: e, end: t, counterLabels: o }) => {
270
270
  const u = U(null), n = `${r}-interval`, [a, i] = S(0), [l, h] = S(0), [b, d] = S(0), g = X(() => {
271
- const w = W(e), A = Cr(w[r], r);
272
- h(A), i(w[r]);
273
- }, [e, r]);
274
- k(() => {
271
+ const y = k(t), A = zr(y[r], r);
272
+ h(A), i(y[r]);
273
+ }, [t, r]);
274
+ R(() => {
275
275
  g();
276
- }, []), k(() => (E.set(n, setInterval(g, c.second)), () => clearInterval(E.get(n))), [g, n]), k(() => {
277
- d((w) => w + 1);
276
+ }, []), R(() => (q.set(n, setInterval(g, c.second)), () => clearInterval(q.get(n))), [g, n]), R(() => {
277
+ d((y) => y + 1);
278
278
  }, [a]);
279
279
  const x = o[r], f = o[`${r}Abbr`];
280
- return /* @__PURE__ */ O(
280
+ return /* @__PURE__ */ j(
281
281
  "div",
282
282
  {
283
- className: C(m),
283
+ className: z(m),
284
284
  role: "group",
285
285
  "aria-hidden": "true",
286
286
  "data-testid": `counter-${r}`,
@@ -288,18 +288,18 @@ const c = {
288
288
  /* @__PURE__ */ p(
289
289
  N,
290
290
  {
291
- className: C(`${m}__number`, `${m}__number--size-${t}`),
291
+ className: z(`${m}__number`, `${m}__number--size-${e}`),
292
292
  ref: u,
293
293
  "data-tick": l,
294
294
  children: a
295
295
  },
296
296
  b
297
297
  ),
298
- f && /* @__PURE__ */ p(N, { className: C(`${m}__label`, `${m}__label--abbr`), children: /* @__PURE__ */ p("abbr", { title: x, children: f }) }),
298
+ f && /* @__PURE__ */ p(N, { className: z(`${m}__label`, `${m}__label--abbr`), children: /* @__PURE__ */ p("abbr", { title: x, children: f }) }),
299
299
  /* @__PURE__ */ p(
300
300
  N,
301
301
  {
302
- className: C(`${m}__label`, {
302
+ className: z(`${m}__label`, {
303
303
  [`${m}__label--full`]: !!f
304
304
  }),
305
305
  children: x
@@ -308,8 +308,8 @@ const c = {
308
308
  ]
309
309
  }
310
310
  );
311
- }, P = V.bind(Nr), _ = "purpur-countdown", D = /* @__PURE__ */ new Date(), qr = Y(
312
- ({ renderAfterEnd: r, renderBeforeStart: t, ...e }, o) => {
311
+ }, O = W.bind(Nr), _ = "purpur-countdown", I = /* @__PURE__ */ new Date(), Cr = Y(
312
+ ({ renderAfterEnd: r, renderBeforeStart: e, ...t }, o) => {
313
313
  const u = rr(), {
314
314
  size: n = "lg",
315
315
  fullWidth: a = !1,
@@ -319,32 +319,32 @@ const c = {
319
319
  className: b,
320
320
  counterLabels: d,
321
321
  useMediaQueries: g = !1
322
- } = e, x = new Date(e.starttime).getTime(), f = new Date(e.endtime).getTime(), w = x > D.getTime(), A = f < D.getTime();
323
- if (w) return t ? t(e) : null;
324
- if (A) return r ? r(e) : null;
322
+ } = t, x = new Date(t.starttime).getTime(), f = new Date(t.endtime).getTime(), y = x > I.getTime(), A = f < I.getTime();
323
+ if (y) return e ? e(t) : null;
324
+ if (A) return r ? r(t) : null;
325
325
  const H = () => {
326
- const y = { size: n, end: f, counterLabels: d };
327
- return /* @__PURE__ */ O(L, { children: [
328
- l && /* @__PURE__ */ p(q, { tag: "days", ...y }),
329
- /* @__PURE__ */ p(q, { tag: "hours", ...y }),
330
- /* @__PURE__ */ p(q, { tag: "minutes", ...y }),
331
- /* @__PURE__ */ p(q, { tag: "seconds", ...y })
326
+ const w = { size: n, end: f, counterLabels: d };
327
+ return /* @__PURE__ */ j(L, { children: [
328
+ l && /* @__PURE__ */ p(C, { tag: "days", ...w }),
329
+ /* @__PURE__ */ p(C, { tag: "hours", ...w }),
330
+ /* @__PURE__ */ p(C, { tag: "minutes", ...w }),
331
+ /* @__PURE__ */ p(C, { tag: "seconds", ...w })
332
332
  ] });
333
333
  }, F = () => {
334
- const y = () => {
335
- const { days: K, hours: Q, minutes: Z, seconds: J } = W(f), v = [];
334
+ const w = () => {
335
+ const { days: K, hours: Q, minutes: Z, seconds: J } = k(f), v = [];
336
336
  return l && v.push(`${K} ${d.days}`), v.push(`${Q} ${d.hours}`), v.push(`${Z} ${d.minutes}`), v.push(`${J} ${d.seconds}`), v.join(", ");
337
337
  };
338
338
  return /* @__PURE__ */ p(
339
- yr,
339
+ wr,
340
340
  {
341
341
  "data-testid": "live-region",
342
342
  "aria-live": "polite",
343
- "aria-label": e["aria-label"],
344
- children: y()
343
+ "aria-label": t["aria-label"],
344
+ children: w()
345
345
  }
346
346
  );
347
- }, B = H(), G = P(
347
+ }, B = H(), G = O(
348
348
  _,
349
349
  `${_}--size-${n}`,
350
350
  `${_}--variant-${h}`,
@@ -357,25 +357,25 @@ const c = {
357
357
  },
358
358
  b
359
359
  );
360
- return /* @__PURE__ */ O(
360
+ return /* @__PURE__ */ j(
361
361
  "section",
362
362
  {
363
363
  id: u,
364
364
  className: G,
365
365
  ref: o,
366
366
  role: "timer",
367
- "data-testid": e["data-testid"],
367
+ "data-testid": t["data-testid"],
368
368
  children: [
369
369
  F(),
370
- e.label && /* @__PURE__ */ p(N, { className: P(`${_}__label`), variant: "paragraph-100-medium", children: e.label }),
371
- /* @__PURE__ */ p("div", { className: P(`${_}__counter-container`), children: B })
370
+ t.label && /* @__PURE__ */ p(N, { className: O(`${_}__label`), variant: "paragraph-100-medium", children: t.label }),
371
+ /* @__PURE__ */ p("div", { className: O(`${_}__counter-container`), children: B })
372
372
  ]
373
373
  }
374
374
  );
375
375
  }
376
376
  );
377
- qr.displayName = "Countdown";
377
+ Cr.displayName = "Countdown";
378
378
  export {
379
- qr as Countdown
379
+ Cr as Countdown
380
380
  };
381
381
  //# sourceMappingURL=countdown.es.js.map
package/dist/styles.css CHANGED
@@ -1 +1 @@
1
- ._purpur-countdown--size-md_1kmr5_1{--counter-height: calc(56 * var(--purpur-spacing-10));--counter-width: calc(56 * var(--purpur-spacing-10))}._purpur-countdown--size-lg_1kmr5_5{--counter-height: calc(72 * var(--purpur-spacing-10));--counter-width: calc(72 * var(--purpur-spacing-10))}@container countdown (min-width: 600px){._purpur-countdown--size-lg_1kmr5_5._purpur-countdown--use-container-queries_1kmr5_10 ._purpur-countdown__counter-container_1kmr5_10{gap:var(--purpur-spacing-200)}}@container countdown (min-width: 600px){._purpur-countdown--size-lg_1kmr5_5._purpur-countdown--use-container-queries_1kmr5_10:not(._purpur-countdown--full-width_1kmr5_15) ._purpur-countdown__counter-container_1kmr5_10{--counter-width: calc(80 * var(--purpur-spacing-10))}}@media(min-width:600px){._purpur-countdown--size-lg_1kmr5_5._purpur-countdown--use-media-queries_1kmr5_20:not(._purpur-countdown--full-width_1kmr5_15){--counter-width: calc(80 * var(--purpur-spacing-10))}._purpur-countdown--size-lg_1kmr5_5._purpur-countdown--use-media-queries_1kmr5_20 ._purpur-countdown__counter-container_1kmr5_10{gap:var(--purpur-spacing-200)}}._purpur-countdown_1kmr5_1{--text-color: var(--purpur-color-text-default)}._purpur-countdown--variant-primary_1kmr5_30{--bg-color: var(--purpur-color-background-primary)}._purpur-countdown--variant-secondary_1kmr5_33{--bg-color: var(--purpur-color-background-secondary)}._purpur-countdown--negative_1kmr5_36{--text-color: var(--purpur-color-text-default-negative);--bg-color: var(--purpur-color-background-interactive-read-only-negative)}._purpur-countdown--full-width_1kmr5_15{--counter-width: 1fr}._purpur-countdown_1kmr5_1{--counter-count: 3}._purpur-countdown--show-days_1kmr5_46{--counter-count: 4}._purpur-countdown_1kmr5_1{display:grid;gap:var(--purpur-spacing-150);color:var(--text-color)}._purpur-countdown--use-container-queries_1kmr5_10{container:countdown/inline-size}._purpur-countdown__counter-container_1kmr5_10{display:grid;grid:var(--counter-height)/repeat(var(--counter-count),var(--counter-width));gap:var(--purpur-spacing-100)}._purpur-countdown__label_1kmr5_62{color:inherit}._purpur-countdown-counter_1h7qy_1{display:grid;justify-items:center;align-items:center;padding:var(--purpur-spacing-100);border-radius:var(--purpur-border-radius-md);background-color:var(--bg-color);color:var(--text-color);overflow:hidden}._purpur-countdown-counter__number--size-lg_1h7qy_11{font-family:var(--purpur-typography-family-display);font-weight:var(--purpur-typography-weight-normal);font-size:clamp(var(--purpur-typography-scale-400),3cqw,var(--purpur-typography-scale-600));line-height:var(--purpur-typography-line-height-snug)}._purpur-countdown-counter__number--size-md_1h7qy_17{font-family:var(--purpur-typography-family-display);font-weight:var(--purpur-typography-weight-normal);font-size:clamp(var(--purpur-typography-scale-150),3cqw,var(--purpur-typography-scale-200));line-height:var(--purpur-typography-line-height-snug)}._purpur-countdown-counter__number_1h7qy_11{position:relative;width:100%;color:inherit;text-align:center}@media(prefers-reduced-motion:no-preference){._purpur-countdown-counter__number_1h7qy_11[data-tick]{text-align:center;animation:_tick-animation_1h7qy_1 .15s ease-out forwards}._purpur-countdown-counter__number_1h7qy_11[data-tick]:after{content:attr(data-tick);position:absolute;bottom:100%;inset-inline:0;color:inherit;animation:_tick-animation-pseudo_1h7qy_1 .25s forwards}}._purpur-countdown-counter__label_1h7qy_44{font-family:var(--purpur-typography-family-default);font-weight:var(--purpur-typography-weight-normal);font-size:var(--purpur-typography-scale-75);line-height:var(--purpur-typography-line-height-loose);color:inherit}._purpur-countdown-counter__label--abbr_1h7qy_51 abbr{text-decoration:none}._purpur-countdown-counter__label--full_1h7qy_54{display:none}@container countdown (min-width: 600px){[class*=purpur-countdown--use-container-queries] ._purpur-countdown-counter__label--abbr_1h7qy_51{display:none}[class*=purpur-countdown--use-container-queries] ._purpur-countdown-counter__label--full_1h7qy_54{display:block}}@media(min-width:600px){[class*=purpur-countdown--use-media-queries] ._purpur-countdown-counter__label--abbr_1h7qy_51{display:none}[class*=purpur-countdown--use-media-queries] ._purpur-countdown-counter__label--full_1h7qy_54{display:block}}@keyframes _tick-animation_1h7qy_1{0%{transform:translateY(100%);color:transparent}to{transform:translateY(0);color:var(--text-color)}}@keyframes _tick-animation-pseudo_1h7qy_1{0%{color:var(--text-color)}to{color:transparent}}
1
+ ._purpur-countdown--size-md_ytnsp_1{--counter-height: calc(56 * var(--purpur-spacing-10));--counter-width: calc(56 * var(--purpur-spacing-10))}._purpur-countdown--size-lg_ytnsp_5{--counter-height: calc(72 * var(--purpur-spacing-10));--counter-width: 1fr}@container countdown (min-width: 600px){._purpur-countdown--size-lg_ytnsp_5._purpur-countdown--use-container-queries_ytnsp_10 ._purpur-countdown__counter-container_ytnsp_10{gap:var(--purpur-spacing-200)}}@container countdown (min-width: 320px){._purpur-countdown--size-lg_ytnsp_5._purpur-countdown--use-container-queries_ytnsp_10:not(._purpur-countdown--full-width_ytnsp_15) ._purpur-countdown__counter-container_ytnsp_10{--counter-width: calc(72 * var(--purpur-spacing-10))}}@container countdown (min-width: 600px){._purpur-countdown--size-lg_ytnsp_5._purpur-countdown--use-container-queries_ytnsp_10:not(._purpur-countdown--full-width_ytnsp_15) ._purpur-countdown__counter-container_ytnsp_10{--counter-width: calc(80 * var(--purpur-spacing-10))}}@media(min-width:350px){._purpur-countdown--size-lg_ytnsp_5._purpur-countdown--use-media-queries_ytnsp_25:not(._purpur-countdown--full-width_ytnsp_15){--counter-width: calc(72 * var(--purpur-spacing-10))}}@media(min-width:600px){._purpur-countdown--size-lg_ytnsp_5._purpur-countdown--use-media-queries_ytnsp_25:not(._purpur-countdown--full-width_ytnsp_15){--counter-width: calc(80 * var(--purpur-spacing-10))}._purpur-countdown--size-lg_ytnsp_5._purpur-countdown--use-media-queries_ytnsp_25 ._purpur-countdown__counter-container_ytnsp_10{gap:var(--purpur-spacing-200)}}._purpur-countdown_ytnsp_1{--text-color: var(--purpur-color-text-default)}._purpur-countdown--variant-primary_ytnsp_40{--bg-color: var(--purpur-color-background-primary)}._purpur-countdown--variant-secondary_ytnsp_43{--bg-color: var(--purpur-color-background-secondary)}._purpur-countdown--negative_ytnsp_46{--text-color: var(--purpur-color-text-default-negative);--bg-color: var(--purpur-color-background-interactive-read-only-negative)}._purpur-countdown--full-width_ytnsp_15{--counter-width: 1fr}._purpur-countdown_ytnsp_1{--counter-count: 3}._purpur-countdown--show-days_ytnsp_56{--counter-count: 4}._purpur-countdown_ytnsp_1{display:grid;gap:var(--purpur-spacing-150);color:var(--text-color)}._purpur-countdown--use-container-queries_ytnsp_10{container:countdown/inline-size}._purpur-countdown__counter-container_ytnsp_10{display:grid;grid:var(--counter-height)/repeat(var(--counter-count),var(--counter-width));gap:var(--purpur-spacing-100)}._purpur-countdown__label_ytnsp_72{color:inherit}._purpur-countdown-counter_19zid_1{display:grid;justify-items:center;align-items:center;padding:var(--purpur-spacing-100);border-radius:var(--purpur-border-radius-md);background-color:var(--bg-color);color:var(--text-color);overflow:hidden}._purpur-countdown-counter_19zid_1>._purpur-countdown-counter__number--size-lg_19zid_11{font-family:var(--purpur-typography-family-display);font-weight:var(--purpur-typography-weight-normal);font-size:clamp(var(--purpur-typography-scale-400),3cqw,var(--purpur-typography-scale-600));line-height:var(--purpur-typography-line-height-snug)}._purpur-countdown-counter_19zid_1>._purpur-countdown-counter__number--size-md_19zid_17{font-family:var(--purpur-typography-family-display);font-weight:var(--purpur-typography-weight-normal);font-size:clamp(var(--purpur-typography-scale-150),3cqw,var(--purpur-typography-scale-200));line-height:var(--purpur-typography-line-height-snug)}._purpur-countdown-counter_19zid_1>._purpur-countdown-counter__number_19zid_11{position:relative;width:100%;color:inherit;text-align:center}@media(prefers-reduced-motion:no-preference){._purpur-countdown-counter_19zid_1>._purpur-countdown-counter__number_19zid_11[data-tick]{text-align:center;animation:_tick-animation_19zid_1 .15s ease-out forwards}._purpur-countdown-counter_19zid_1>._purpur-countdown-counter__number_19zid_11[data-tick]:after{content:attr(data-tick);position:absolute;bottom:100%;inset-inline:0;color:inherit;animation:_tick-animation-pseudo_19zid_1 .25s forwards}}._purpur-countdown-counter_19zid_1>._purpur-countdown-counter__label_19zid_44{font-family:var(--purpur-typography-family-default);font-weight:var(--purpur-typography-weight-normal);font-size:var(--purpur-typography-scale-75);line-height:var(--purpur-typography-line-height-loose);color:inherit}._purpur-countdown-counter_19zid_1>._purpur-countdown-counter__label--abbr_19zid_51 abbr{text-decoration:none}._purpur-countdown-counter_19zid_1>._purpur-countdown-counter__label--full_19zid_54{display:none}@container countdown (min-width: 600px){[class*=purpur-countdown--use-container-queries] ._purpur-countdown-counter_19zid_1>._purpur-countdown-counter__label--abbr_19zid_51{display:none}[class*=purpur-countdown--use-container-queries] ._purpur-countdown-counter_19zid_1>._purpur-countdown-counter__label--full_19zid_54{display:block}}@media(min-width:600px){[class*=purpur-countdown--use-media-queries] ._purpur-countdown-counter_19zid_1>._purpur-countdown-counter__label--abbr_19zid_51{display:none}[class*=purpur-countdown--use-media-queries] ._purpur-countdown-counter_19zid_1>._purpur-countdown-counter__label--full_19zid_54{display:block}}@keyframes _tick-animation_19zid_1{0%{transform:translateY(100%);color:transparent}to{transform:translateY(0);color:var(--text-color)}}@keyframes _tick-animation-pseudo_19zid_1{0%{color:var(--text-color)}to{color:transparent}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@purpurds/countdown",
3
- "version": "8.9.0",
3
+ "version": "8.10.1",
4
4
  "license": "AGPL-3.0-only",
5
5
  "main": "./dist/countdown.cjs.js",
6
6
  "types": "./dist/countdown.d.ts",
@@ -16,10 +16,10 @@
16
16
  "source": "src/countdown.tsx",
17
17
  "dependencies": {
18
18
  "classnames": "~2.5.1",
19
- "@purpurds/heading": "8.9.0",
20
- "@purpurds/paragraph": "8.9.0",
21
- "@purpurds/visually-hidden": "8.9.0",
22
- "@purpurds/tokens": "8.9.0"
19
+ "@purpurds/heading": "8.10.1",
20
+ "@purpurds/tokens": "8.10.1",
21
+ "@purpurds/visually-hidden": "8.10.1",
22
+ "@purpurds/paragraph": "8.10.1"
23
23
  },
24
24
  "devDependencies": {
25
25
  "@rushstack/eslint-patch": "~1.10.0",
@@ -10,7 +10,7 @@ $root: ".purpur-countdown";
10
10
 
11
11
  &--size-lg {
12
12
  --counter-height: calc(72 * var(--purpur-spacing-10));
13
- --counter-width: calc(72 * var(--purpur-spacing-10));
13
+ --counter-width: 1fr;
14
14
 
15
15
  &#{$root}--use-container-queries {
16
16
  #{$root}__counter-container {
@@ -21,6 +21,9 @@ $root: ".purpur-countdown";
21
21
 
22
22
  &:not(#{$root}--full-width) {
23
23
  #{$root}__counter-container {
24
+ @container countdown (min-width: 320px) {
25
+ --counter-width: calc(72 * var(--purpur-spacing-10));
26
+ }
24
27
  @container countdown (min-width: #{$purpur-breakpoint-md}) {
25
28
  --counter-width: calc(80 * var(--purpur-spacing-10));
26
29
  }
@@ -29,6 +32,12 @@ $root: ".purpur-countdown";
29
32
  }
30
33
 
31
34
  &#{$root}--use-media-queries {
35
+ @media (min-width: 350px) {
36
+ &:not(#{$root}--full-width) {
37
+ --counter-width: calc(72 * var(--purpur-spacing-10));
38
+ }
39
+ }
40
+
32
41
  @media (min-width: $purpur-breakpoint-md) {
33
42
  &:not(#{$root}--full-width) {
34
43
  --counter-width: calc(80 * var(--purpur-spacing-10));
@@ -26,7 +26,7 @@ $root: ".purpur-countdown-counter";
26
26
  color: var(--text-color);
27
27
  overflow: hidden;
28
28
 
29
- &__number {
29
+ & > #{$root}__number {
30
30
  @include size();
31
31
 
32
32
  position: relative;
@@ -52,7 +52,7 @@ $root: ".purpur-countdown-counter";
52
52
  }
53
53
  }
54
54
 
55
- &__label {
55
+ & > #{$root}__label {
56
56
  @include paragraph.purpur-additional-100();
57
57
 
58
58
  color: inherit;