@purpurds/countdown 8.18.0 → 8.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/LICENSE.txt +2 -2
- package/dist/countdown.cjs.js.map +1 -1
- package/dist/countdown.es.js +2 -2
- package/dist/countdown.es.js.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +6 -6
package/dist/LICENSE.txt
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"countdown.cjs.js","sources":["../../paragraph/dist/paragraph.es.js","../../visually-hidden/dist/visually-hidden.es.js","../../../common/temp/node_modules/.pnpm/classnames@2.5.1/node_modules/classnames/bind.js","../src/counter.tsx","../src/utils.ts","../src/countdown.tsx"],"sourcesContent":["import { jsx as l } from \"react/jsx-runtime\";\nfunction d(p) {\n return p && p.__esModule && Object.prototype.hasOwnProperty.call(p, \"default\") ? p.default : p;\n}\nvar h = { exports: {} };\nvar s;\nfunction _() {\n return s || (s = 1, (function(p) {\n (function() {\n var n = {}.hasOwnProperty;\n function u() {\n for (var r = \"\", a = 0; a < arguments.length; a++) {\n var e = arguments[a];\n e && (r = i(r, o.call(this, e)));\n }\n return r;\n }\n function o(r) {\n if (typeof r == \"string\" || typeof r == \"number\")\n return this && this[r] || r;\n if (typeof r != \"object\")\n return \"\";\n if (Array.isArray(r))\n return u.apply(this, r);\n if (r.toString !== Object.prototype.toString && !r.toString.toString().includes(\"[native code]\"))\n return r.toString();\n var a = \"\";\n for (var e in r)\n n.call(r, e) && r[e] && (a = i(a, this && this[e] || e));\n return a;\n }\n function i(r, a) {\n return a ? r ? r + \" \" + a : r + a : r;\n }\n p.exports ? (u.default = u, p.exports = u) : window.classNames = u;\n })();\n })(h)), h.exports;\n}\nvar g = _();\nconst v = /* @__PURE__ */ d(g), c = {\n \"purpur-paragraph\": \"_purpur-paragraph_1vz75_1\",\n \"purpur-paragraph--disabled\": \"_purpur-paragraph--disabled_1vz75_7\",\n \"purpur-paragraph--hyphens\": \"_purpur-paragraph--hyphens_1vz75_10\",\n \"purpur-paragraph--negative\": \"_purpur-paragraph--negative_1vz75_13\",\n \"purpur-paragraph--paragraph-100\": \"_purpur-paragraph--paragraph-100_1vz75_16\",\n \"purpur-paragraph--paragraph-100-medium\": \"_purpur-paragraph--paragraph-100-medium_1vz75_22\",\n \"purpur-paragraph--paragraph-100-bold\": \"_purpur-paragraph--paragraph-100-bold_1vz75_29\",\n \"purpur-paragraph--paragraph-200\": \"_purpur-paragraph--paragraph-200_1vz75_36\",\n \"purpur-paragraph--preamble-100\": \"_purpur-paragraph--preamble-100_1vz75_42\",\n \"purpur-paragraph--preamble-200\": \"_purpur-paragraph--preamble-200_1vz75_48\",\n \"purpur-paragraph--additional-100\": \"_purpur-paragraph--additional-100_1vz75_54\",\n \"purpur-paragraph--additional-100-medium\": \"_purpur-paragraph--additional-100-medium_1vz75_60\",\n \"purpur-paragraph--additional-100-bold\": \"_purpur-paragraph--additional-100-bold_1vz75_67\",\n \"purpur-paragraph--overline-100\": \"_purpur-paragraph--overline-100_1vz75_74\",\n \"purpur-paragraph--overline-200\": \"_purpur-paragraph--overline-200_1vz75_82\"\n}, f = v.bind(c), m = {\n PARAGRAPH100: \"paragraph-100\",\n PARAGRAPH100MEDIUM: \"paragraph-100-medium\",\n PARAGRAPH100BOLD: \"paragraph-100-bold\",\n PARAGRAPH200: \"paragraph-200\",\n PREAMBLE100: \"preamble-100\",\n PREAMBLE200: \"preamble-200\",\n ADDITIONAL100: \"additional-100\",\n ADDITIONAL100MEDIUM: \"additional-100-medium\",\n ADDITIONAL100BOLD: \"additional-100-bold\",\n OVERLINE100: \"overline-100\",\n OVERLINE200: \"overline-200\"\n}, t = \"purpur-paragraph\", A = ({\n children: p,\n className: n,\n disabled: u,\n enableHyphenation: o = !1,\n negative: i = !1,\n variant: r = m.PARAGRAPH100,\n ...a\n}) => {\n const e = f(n, t, `${t}--${r}`, {\n [`${t}--hyphens`]: o,\n [`${t}--disabled`]: u,\n [`${t}--negative`]: i\n });\n return /* @__PURE__ */ l(\"p\", { ...a, className: e, children: p });\n};\nA.displayName = \"Paragraph\";\nexport {\n A as Paragraph,\n m as ParagraphVariant\n};\n//# sourceMappingURL=paragraph.es.js.map\n","import { jsx as u } from \"react/jsx-runtime\";\nimport * as l from \"react\";\nimport \"react-dom\";\nfunction d(e, n) {\n if (typeof e == \"function\")\n return e(n);\n e != null && (e.current = n);\n}\nfunction h(...e) {\n return (n) => {\n let r = !1;\n const i = e.map((t) => {\n const o = d(t, n);\n return !r && typeof o == \"function\" && (r = !0), o;\n });\n if (r)\n return () => {\n for (let t = 0; t < i.length; t++) {\n const o = i[t];\n typeof o == \"function\" ? o() : d(e[t], null);\n }\n };\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction g(e) {\n const n = /* @__PURE__ */ v(e), r = l.forwardRef((i, t) => {\n const { children: o, ...a } = i, s = l.Children.toArray(o), c = s.find(S);\n if (c) {\n const f = c.props.children, y = s.map((p) => p === c ? l.Children.count(f) > 1 ? l.Children.only(null) : l.isValidElement(f) ? f.props.children : null : p);\n return /* @__PURE__ */ u(n, { ...a, ref: t, children: l.isValidElement(f) ? l.cloneElement(f, void 0, y) : null });\n }\n return /* @__PURE__ */ u(n, { ...a, ref: t, children: o });\n });\n return r.displayName = `${e}.Slot`, r;\n}\n// @__NO_SIDE_EFFECTS__\nfunction v(e) {\n const n = l.forwardRef((r, i) => {\n const { children: t, ...o } = r;\n if (l.isValidElement(t)) {\n const a = E(t), s = C(o, t.props);\n return t.type !== l.Fragment && (s.ref = i ? h(i, a) : a), l.cloneElement(t, s);\n }\n return l.Children.count(t) > 1 ? l.Children.only(null) : null;\n });\n return n.displayName = `${e}.SlotClone`, n;\n}\nvar w = Symbol(\"radix.slottable\");\nfunction S(e) {\n return l.isValidElement(e) && typeof e.type == \"function\" && \"__radixId\" in e.type && e.type.__radixId === w;\n}\nfunction C(e, n) {\n const r = { ...n };\n for (const i in n) {\n const t = e[i], o = n[i];\n /^on[A-Z]/.test(i) ? t && o ? r[i] = (...s) => {\n o(...s), t(...s);\n } : t && (r[i] = t) : i === \"style\" ? r[i] = { ...t, ...o } : i === \"className\" && (r[i] = [t, o].filter(Boolean).join(\" \"));\n }\n return { ...e, ...r };\n}\nfunction E(e) {\n let n = Object.getOwnPropertyDescriptor(e.props, \"ref\")?.get, r = n && \"isReactWarning\" in n && n.isReactWarning;\n return r ? e.ref : (n = Object.getOwnPropertyDescriptor(e, \"ref\")?.get, r = n && \"isReactWarning\" in n && n.isReactWarning, r ? e.props.ref : e.props.ref || e.ref);\n}\nvar R = [\n \"a\",\n \"button\",\n \"div\",\n \"form\",\n \"h2\",\n \"h3\",\n \"img\",\n \"input\",\n \"label\",\n \"li\",\n \"nav\",\n \"ol\",\n \"p\",\n \"span\",\n \"svg\",\n \"ul\"\n], b = R.reduce((e, n) => {\n const r = /* @__PURE__ */ g(`Primitive.${n}`), i = l.forwardRef((t, o) => {\n const { asChild: a, ...s } = t, c = a ? r : n;\n return typeof window < \"u\" && (window[Symbol.for(\"radix-ui\")] = !0), /* @__PURE__ */ u(c, { ...s, ref: o });\n });\n return i.displayName = `Primitive.${n}`, { ...e, [n]: i };\n}, {}), N = \"VisuallyHidden\", m = l.forwardRef(\n (e, n) => /* @__PURE__ */ u(\n b.span,\n {\n ...e,\n ref: n,\n style: {\n // See: https://github.com/twbs/bootstrap/blob/main/scss/mixins/_visually-hidden.scss\n position: \"absolute\",\n border: 0,\n width: 1,\n height: 1,\n padding: 0,\n margin: -1,\n overflow: \"hidden\",\n clip: \"rect(0, 0, 0, 0)\",\n whiteSpace: \"nowrap\",\n wordWrap: \"normal\",\n ...e.style\n }\n }\n )\n);\nm.displayName = N;\nvar P = m;\nconst O = ({ asChild: e, children: n, ...r }) => /* @__PURE__ */ u(P, { asChild: e, ...r, children: n });\nexport {\n O as VisuallyHidden\n};\n//# sourceMappingURL=visually-hidden.es.js.map\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue.call(this, arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn this && this[arg] || arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(this, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, this && this[key] || key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React from \"react\";\nimport { Paragraph } from \"@purpurds/paragraph\";\nimport c from \"classnames/bind\";\n\nimport { type CounterLabels } from \"./countdown.types\";\nimport styles from \"./counter.module.scss\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-countdown-counter\";\n\ninterface CounterProps {\n numbers: string[];\n size: \"md\" | \"lg\";\n tag: \"days\" | \"hours\" | \"minutes\" | \"seconds\";\n counterLabels: CounterLabels;\n}\n\nexport const Counter = ({ tag, size, numbers, counterLabels }: CounterProps) => {\n const renderLabel = () => {\n const label = counterLabels[tag];\n const abbreviatedLabel = counterLabels[`${tag}Abbr`];\n\n return (\n <>\n {abbreviatedLabel && (\n <Paragraph className={cx(`${rootClassName}__label`, `${rootClassName}__label--abbr`)}>\n <abbr title={label}>{abbreviatedLabel}</abbr>\n </Paragraph>\n )}\n <Paragraph\n className={cx(`${rootClassName}__label`, {\n [`${rootClassName}__label--full`]: !!abbreviatedLabel,\n })}\n >\n {label}\n </Paragraph>\n </>\n );\n };\n\n return (\n <div\n className={cx(rootClassName, `${rootClassName}--size-${size}`)}\n role=\"group\"\n aria-hidden=\"true\"\n data-testid={`counter-${tag}`}\n >\n <div className={cx(`${rootClassName}__number-list-container`)}>\n {numbers.map((number, index) => {\n return (\n <ul\n key={index}\n className={cx(`${rootClassName}__number-list`)}\n style={\n {\n \"--offset\": number,\n } as React.CSSProperties\n }\n >\n {digits.map((d, i) => {\n const selected = d === number;\n\n return (\n <li\n key={i}\n className={cx(`${rootClassName}__number`, {\n [`${rootClassName}__number--selected`]: selected,\n })}\n >\n {d}\n </li>\n );\n })}\n </ul>\n );\n })}\n </div>\n\n {renderLabel()}\n </div>\n );\n};\n\nconst digits = [\"0\", \"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\"];\n","export function getDiffs(endtime: number) {\n const now = new Date().getTime();\n\n const totalSeconds = Math.max(0, endtime - now);\n\n const _days = Math.floor(totalSeconds / inMs.day);\n const _hours = Math.floor((totalSeconds % inMs.day) / inMs.hour);\n const _minutes = Math.floor((totalSeconds % inMs.hour) / inMs.minute);\n const _seconds = Math.floor((totalSeconds % inMs.minute) / inMs.second);\n\n const days = splitDigits(_days);\n const hours = splitDigits(_hours);\n const minutes = splitDigits(_minutes);\n const seconds = splitDigits(_seconds);\n\n return {\n seconds,\n minutes,\n hours,\n days,\n };\n}\n\nexport const inMs = {\n second: 1000,\n minute: 60 * 1000,\n hour: 60 * 60 * 1000,\n day: 24 * 60 * 60 * 1000,\n};\n\nexport function toDate(t: string | number | Date) {\n return t instanceof Date ? t : new Date(t);\n}\n\nexport function splitDigits(value: number) {\n const s = String(value).padStart(2, \"0\");\n return s.split(\"\");\n}\n","import React, { type ForwardedRef, forwardRef, useEffect, useId, useMemo, useState } from \"react\";\nimport { Paragraph } from \"@purpurds/paragraph\";\nimport { VisuallyHidden } from \"@purpurds/visually-hidden\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./countdown.module.scss\";\nimport { type CountdownProps } from \"./countdown.types\";\nimport { Counter } from \"./counter\";\nimport { getDiffs, toDate } from \"./utils\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-countdown\";\n\n/**\n * Countdown component to display a countdown timer.\n * @param props - CountdownProps\n * @returns A React component that displays a countdown timer.\n */\n\nexport const Countdown = forwardRef(\n (\n { renderAfterEnd, renderBeforeStart, ...props }: CountdownProps,\n ref: ForwardedRef<HTMLButtonElement>\n ) => {\n const nowInit = new Date();\n const id = useId();\n\n const {\n size = \"lg\",\n fullWidth = false,\n negative = false,\n showDays = true,\n variant = \"primary\",\n className,\n counterLabels,\n useMediaQueries = false,\n } = props;\n\n const [now, setNow] = useState<Date>(nowInit);\n\n const start = useMemo(() => toDate(props.starttime), [props.starttime]);\n const end = useMemo(() => toDate(props.endtime), [props.endtime]);\n const { days, hours, minutes, seconds } = useMemo(() => getDiffs(end.getTime()), [now]);\n\n useEffect(() => {\n if (now < start || now > end) return;\n const t = setInterval(() => setNow(new Date()), 1000);\n return () => clearInterval(t);\n }, [start, end, now]);\n\n const hasNotStarted = start > now;\n const hasEnded = end < now;\n\n // don't render if before start or after end\n if (hasNotStarted) return renderBeforeStart ? renderBeforeStart(props) : null;\n if (hasEnded) return renderAfterEnd ? renderAfterEnd(props) : null;\n\n const getCounters = () => {\n const counterProps = { size, counterLabels };\n\n return (\n <>\n {showDays && <Counter numbers={days} tag=\"days\" {...counterProps} />}\n <Counter numbers={hours} tag=\"hours\" {...counterProps} />\n <Counter numbers={minutes} tag=\"minutes\" {...counterProps} />\n <Counter numbers={seconds} tag=\"seconds\" {...counterProps} />\n </>\n );\n };\n\n // Create a single announcement of the current time (only once)\n\n const renderAnnouncer = () => {\n const getTimeAnnouncement = () => {\n const parts = [];\n\n if (showDays) parts.push(`${days.join(\"\")} ${counterLabels.days}`);\n parts.push(`${hours.join(\"\")} ${counterLabels.hours}`);\n parts.push(`${minutes.join(\"\")} ${counterLabels.minutes}`);\n parts.push(`${seconds.join(\"\")} ${counterLabels.seconds}`);\n\n return parts.join(\", \");\n };\n\n return (\n <VisuallyHidden\n data-testid=\"live-region\"\n aria-live=\"polite\"\n aria-label={props[\"aria-label\"]}\n >\n {getTimeAnnouncement()}\n </VisuallyHidden>\n );\n };\n\n const counters = getCounters();\n\n const classes = cx(\n rootClassName,\n `${rootClassName}--size-${size}`,\n `${rootClassName}--variant-${variant}`,\n {\n [`${rootClassName}--full-width`]: fullWidth,\n [`${rootClassName}--negative`]: negative,\n [`${rootClassName}--show-days`]: showDays,\n [`${rootClassName}--use-media-queries`]: useMediaQueries,\n [`${rootClassName}--use-container-queries`]: !useMediaQueries,\n },\n className\n );\n\n return (\n <section\n id={id}\n className={classes}\n ref={ref}\n role=\"timer\"\n data-testid={props[\"data-testid\"]}\n >\n {/* Visually hidden live region that announces time only once */}\n {renderAnnouncer()}\n {props.label && (\n <Paragraph className={cx(`${rootClassName}__label`)} variant=\"paragraph-100-medium\">\n {props.label}\n </Paragraph>\n )}\n <div className={cx(`${rootClassName}__counter-container`)}>{counters}</div>\n </section>\n );\n }\n);\n\nCountdown.displayName = \"Countdown\";\n"],"names":["d","p","h","s","_","n","u","r","a","e","i","g","v","c","f","m","t","A","l","o","S","y","E","C","w","R","b","N","P","O","hasOwn","classNames","classes","arg","appendClass","parseValue","key","value","newClass","module","cx","styles","rootClassName","Counter","tag","size","numbers","counterLabels","renderLabel","label","abbreviatedLabel","jsxs","Fragment","Paragraph","jsx","number","index","digits","selected","getDiffs","endtime","now","totalSeconds","_days","inMs","_hours","_minutes","_seconds","days","splitDigits","hours","minutes","toDate","Countdown","forwardRef","renderAfterEnd","renderBeforeStart","props","ref","nowInit","id","useId","fullWidth","negative","showDays","variant","className","useMediaQueries","setNow","useState","start","useMemo","end","seconds","useEffect","hasNotStarted","hasEnded","getCounters","counterProps","renderAnnouncer","getTimeAnnouncement","parts","VisuallyHidden","counters"],"mappings":"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","x_google_ignoreList":[2]}
|
|
1
|
+
{"version":3,"file":"countdown.cjs.js","sources":["../../paragraph/dist/paragraph.es.js","../../visually-hidden/dist/visually-hidden.es.js","../../../common/temp/node_modules/.pnpm/classnames@2.5.1/node_modules/classnames/bind.js","../src/counter.tsx","../src/utils.ts","../src/countdown.tsx"],"sourcesContent":["import { jsx as l } from \"react/jsx-runtime\";\nfunction d(p) {\n return p && p.__esModule && Object.prototype.hasOwnProperty.call(p, \"default\") ? p.default : p;\n}\nvar h = { exports: {} };\nvar s;\nfunction _() {\n return s || (s = 1, (function(p) {\n (function() {\n var n = {}.hasOwnProperty;\n function u() {\n for (var r = \"\", a = 0; a < arguments.length; a++) {\n var e = arguments[a];\n e && (r = i(r, o.call(this, e)));\n }\n return r;\n }\n function o(r) {\n if (typeof r == \"string\" || typeof r == \"number\")\n return this && this[r] || r;\n if (typeof r != \"object\")\n return \"\";\n if (Array.isArray(r))\n return u.apply(this, r);\n if (r.toString !== Object.prototype.toString && !r.toString.toString().includes(\"[native code]\"))\n return r.toString();\n var a = \"\";\n for (var e in r)\n n.call(r, e) && r[e] && (a = i(a, this && this[e] || e));\n return a;\n }\n function i(r, a) {\n return a ? r ? r + \" \" + a : r + a : r;\n }\n p.exports ? (u.default = u, p.exports = u) : window.classNames = u;\n })();\n })(h)), h.exports;\n}\nvar g = _();\nconst v = /* @__PURE__ */ d(g), c = {\n \"purpur-paragraph\": \"_purpur-paragraph_1vz75_1\",\n \"purpur-paragraph--disabled\": \"_purpur-paragraph--disabled_1vz75_7\",\n \"purpur-paragraph--hyphens\": \"_purpur-paragraph--hyphens_1vz75_10\",\n \"purpur-paragraph--negative\": \"_purpur-paragraph--negative_1vz75_13\",\n \"purpur-paragraph--paragraph-100\": \"_purpur-paragraph--paragraph-100_1vz75_16\",\n \"purpur-paragraph--paragraph-100-medium\": \"_purpur-paragraph--paragraph-100-medium_1vz75_22\",\n \"purpur-paragraph--paragraph-100-bold\": \"_purpur-paragraph--paragraph-100-bold_1vz75_29\",\n \"purpur-paragraph--paragraph-200\": \"_purpur-paragraph--paragraph-200_1vz75_36\",\n \"purpur-paragraph--preamble-100\": \"_purpur-paragraph--preamble-100_1vz75_42\",\n \"purpur-paragraph--preamble-200\": \"_purpur-paragraph--preamble-200_1vz75_48\",\n \"purpur-paragraph--additional-100\": \"_purpur-paragraph--additional-100_1vz75_54\",\n \"purpur-paragraph--additional-100-medium\": \"_purpur-paragraph--additional-100-medium_1vz75_60\",\n \"purpur-paragraph--additional-100-bold\": \"_purpur-paragraph--additional-100-bold_1vz75_67\",\n \"purpur-paragraph--overline-100\": \"_purpur-paragraph--overline-100_1vz75_74\",\n \"purpur-paragraph--overline-200\": \"_purpur-paragraph--overline-200_1vz75_82\"\n}, f = v.bind(c), m = {\n PARAGRAPH100: \"paragraph-100\",\n PARAGRAPH100MEDIUM: \"paragraph-100-medium\",\n PARAGRAPH100BOLD: \"paragraph-100-bold\",\n PARAGRAPH200: \"paragraph-200\",\n PREAMBLE100: \"preamble-100\",\n PREAMBLE200: \"preamble-200\",\n ADDITIONAL100: \"additional-100\",\n ADDITIONAL100MEDIUM: \"additional-100-medium\",\n ADDITIONAL100BOLD: \"additional-100-bold\",\n OVERLINE100: \"overline-100\",\n OVERLINE200: \"overline-200\"\n}, t = \"purpur-paragraph\", A = ({\n children: p,\n className: n,\n disabled: u,\n enableHyphenation: o = !1,\n negative: i = !1,\n variant: r = m.PARAGRAPH100,\n ...a\n}) => {\n const e = f(n, t, `${t}--${r}`, {\n [`${t}--hyphens`]: o,\n [`${t}--disabled`]: u,\n [`${t}--negative`]: i\n });\n return /* @__PURE__ */ l(\"p\", { ...a, className: e, children: p });\n};\nA.displayName = \"Paragraph\";\nexport {\n A as Paragraph,\n m as ParagraphVariant\n};\n//# sourceMappingURL=paragraph.es.js.map\n","import { jsx as u } from \"react/jsx-runtime\";\nimport * as l from \"react\";\nimport \"react-dom\";\nfunction d(e, n) {\n if (typeof e == \"function\")\n return e(n);\n e != null && (e.current = n);\n}\nfunction h(...e) {\n return (n) => {\n let r = !1;\n const i = e.map((t) => {\n const o = d(t, n);\n return !r && typeof o == \"function\" && (r = !0), o;\n });\n if (r)\n return () => {\n for (let t = 0; t < i.length; t++) {\n const o = i[t];\n typeof o == \"function\" ? o() : d(e[t], null);\n }\n };\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction g(e) {\n const n = /* @__PURE__ */ v(e), r = l.forwardRef((i, t) => {\n const { children: o, ...a } = i, s = l.Children.toArray(o), c = s.find(S);\n if (c) {\n const f = c.props.children, y = s.map((p) => p === c ? l.Children.count(f) > 1 ? l.Children.only(null) : l.isValidElement(f) ? f.props.children : null : p);\n return /* @__PURE__ */ u(n, { ...a, ref: t, children: l.isValidElement(f) ? l.cloneElement(f, void 0, y) : null });\n }\n return /* @__PURE__ */ u(n, { ...a, ref: t, children: o });\n });\n return r.displayName = `${e}.Slot`, r;\n}\n// @__NO_SIDE_EFFECTS__\nfunction v(e) {\n const n = l.forwardRef((r, i) => {\n const { children: t, ...o } = r;\n if (l.isValidElement(t)) {\n const a = E(t), s = C(o, t.props);\n return t.type !== l.Fragment && (s.ref = i ? h(i, a) : a), l.cloneElement(t, s);\n }\n return l.Children.count(t) > 1 ? l.Children.only(null) : null;\n });\n return n.displayName = `${e}.SlotClone`, n;\n}\nvar w = /* @__PURE__ */ Symbol(\"radix.slottable\");\nfunction S(e) {\n return l.isValidElement(e) && typeof e.type == \"function\" && \"__radixId\" in e.type && e.type.__radixId === w;\n}\nfunction C(e, n) {\n const r = { ...n };\n for (const i in n) {\n const t = e[i], o = n[i];\n /^on[A-Z]/.test(i) ? t && o ? r[i] = (...s) => {\n o(...s), t(...s);\n } : t && (r[i] = t) : i === \"style\" ? r[i] = { ...t, ...o } : i === \"className\" && (r[i] = [t, o].filter(Boolean).join(\" \"));\n }\n return { ...e, ...r };\n}\nfunction E(e) {\n let n = Object.getOwnPropertyDescriptor(e.props, \"ref\")?.get, r = n && \"isReactWarning\" in n && n.isReactWarning;\n return r ? e.ref : (n = Object.getOwnPropertyDescriptor(e, \"ref\")?.get, r = n && \"isReactWarning\" in n && n.isReactWarning, r ? e.props.ref : e.props.ref || e.ref);\n}\nvar R = [\n \"a\",\n \"button\",\n \"div\",\n \"form\",\n \"h2\",\n \"h3\",\n \"img\",\n \"input\",\n \"label\",\n \"li\",\n \"nav\",\n \"ol\",\n \"p\",\n \"span\",\n \"svg\",\n \"ul\"\n], b = R.reduce((e, n) => {\n const r = /* @__PURE__ */ g(`Primitive.${n}`), i = l.forwardRef((t, o) => {\n const { asChild: a, ...s } = t, c = a ? r : n;\n return typeof window < \"u\" && (window[/* @__PURE__ */ Symbol.for(\"radix-ui\")] = !0), /* @__PURE__ */ u(c, { ...s, ref: o });\n });\n return i.displayName = `Primitive.${n}`, { ...e, [n]: i };\n}, {}), N = \"VisuallyHidden\", m = l.forwardRef(\n (e, n) => /* @__PURE__ */ u(\n b.span,\n {\n ...e,\n ref: n,\n style: {\n // See: https://github.com/twbs/bootstrap/blob/main/scss/mixins/_visually-hidden.scss\n position: \"absolute\",\n border: 0,\n width: 1,\n height: 1,\n padding: 0,\n margin: -1,\n overflow: \"hidden\",\n clip: \"rect(0, 0, 0, 0)\",\n whiteSpace: \"nowrap\",\n wordWrap: \"normal\",\n ...e.style\n }\n }\n )\n);\nm.displayName = N;\nvar P = m;\nconst O = ({ asChild: e, children: n, ...r }) => /* @__PURE__ */ u(P, { asChild: e, ...r, children: n });\nexport {\n O as VisuallyHidden\n};\n//# sourceMappingURL=visually-hidden.es.js.map\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue.call(this, arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn this && this[arg] || arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(this, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, this && this[key] || key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React from \"react\";\nimport { Paragraph } from \"@purpurds/paragraph\";\nimport c from \"classnames/bind\";\n\nimport { type CounterLabels } from \"./countdown.types\";\nimport styles from \"./counter.module.scss\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-countdown-counter\";\n\ninterface CounterProps {\n numbers: string[];\n size: \"md\" | \"lg\";\n tag: \"days\" | \"hours\" | \"minutes\" | \"seconds\";\n counterLabels: CounterLabels;\n}\n\nexport const Counter = ({ tag, size, numbers, counterLabels }: CounterProps) => {\n const renderLabel = () => {\n const label = counterLabels[tag];\n const abbreviatedLabel = counterLabels[`${tag}Abbr`];\n\n return (\n <>\n {abbreviatedLabel && (\n <Paragraph className={cx(`${rootClassName}__label`, `${rootClassName}__label--abbr`)}>\n <abbr title={label}>{abbreviatedLabel}</abbr>\n </Paragraph>\n )}\n <Paragraph\n className={cx(`${rootClassName}__label`, {\n [`${rootClassName}__label--full`]: !!abbreviatedLabel,\n })}\n >\n {label}\n </Paragraph>\n </>\n );\n };\n\n return (\n <div\n className={cx(rootClassName, `${rootClassName}--size-${size}`)}\n role=\"group\"\n aria-hidden=\"true\"\n data-testid={`counter-${tag}`}\n >\n <div className={cx(`${rootClassName}__number-list-container`)}>\n {numbers.map((number, index) => {\n return (\n <ul\n key={index}\n className={cx(`${rootClassName}__number-list`)}\n style={\n {\n \"--offset\": number,\n } as React.CSSProperties\n }\n >\n {digits.map((d, i) => {\n const selected = d === number;\n\n return (\n <li\n key={i}\n className={cx(`${rootClassName}__number`, {\n [`${rootClassName}__number--selected`]: selected,\n })}\n >\n {d}\n </li>\n );\n })}\n </ul>\n );\n })}\n </div>\n\n {renderLabel()}\n </div>\n );\n};\n\nconst digits = [\"0\", \"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\"];\n","export function getDiffs(endtime: number) {\n const now = new Date().getTime();\n\n const totalSeconds = Math.max(0, endtime - now);\n\n const _days = Math.floor(totalSeconds / inMs.day);\n const _hours = Math.floor((totalSeconds % inMs.day) / inMs.hour);\n const _minutes = Math.floor((totalSeconds % inMs.hour) / inMs.minute);\n const _seconds = Math.floor((totalSeconds % inMs.minute) / inMs.second);\n\n const days = splitDigits(_days);\n const hours = splitDigits(_hours);\n const minutes = splitDigits(_minutes);\n const seconds = splitDigits(_seconds);\n\n return {\n seconds,\n minutes,\n hours,\n days,\n };\n}\n\nexport const inMs = {\n second: 1000,\n minute: 60 * 1000,\n hour: 60 * 60 * 1000,\n day: 24 * 60 * 60 * 1000,\n};\n\nexport function toDate(t: string | number | Date) {\n return t instanceof Date ? t : new Date(t);\n}\n\nexport function splitDigits(value: number) {\n const s = String(value).padStart(2, \"0\");\n return s.split(\"\");\n}\n","import React, { type ForwardedRef, forwardRef, useEffect, useId, useMemo, useState } from \"react\";\nimport { Paragraph } from \"@purpurds/paragraph\";\nimport { VisuallyHidden } from \"@purpurds/visually-hidden\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./countdown.module.scss\";\nimport { type CountdownProps } from \"./countdown.types\";\nimport { Counter } from \"./counter\";\nimport { getDiffs, toDate } from \"./utils\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-countdown\";\n\n/**\n * Countdown component to display a countdown timer.\n * @param props - CountdownProps\n * @returns A React component that displays a countdown timer.\n */\n\nexport const Countdown = forwardRef(\n (\n { renderAfterEnd, renderBeforeStart, ...props }: CountdownProps,\n ref: ForwardedRef<HTMLButtonElement>\n ) => {\n const nowInit = new Date();\n const id = useId();\n\n const {\n size = \"lg\",\n fullWidth = false,\n negative = false,\n showDays = true,\n variant = \"primary\",\n className,\n counterLabels,\n useMediaQueries = false,\n } = props;\n\n const [now, setNow] = useState<Date>(nowInit);\n\n const start = useMemo(() => toDate(props.starttime), [props.starttime]);\n const end = useMemo(() => toDate(props.endtime), [props.endtime]);\n const { days, hours, minutes, seconds } = useMemo(() => getDiffs(end.getTime()), [now]);\n\n useEffect(() => {\n if (now < start || now > end) return;\n const t = setInterval(() => setNow(new Date()), 1000);\n return () => clearInterval(t);\n }, [start, end, now]);\n\n const hasNotStarted = start > now;\n const hasEnded = end < now;\n\n // don't render if before start or after end\n if (hasNotStarted) return renderBeforeStart ? renderBeforeStart(props) : null;\n if (hasEnded) return renderAfterEnd ? renderAfterEnd(props) : null;\n\n const getCounters = () => {\n const counterProps = { size, counterLabels };\n\n return (\n <>\n {showDays && <Counter numbers={days} tag=\"days\" {...counterProps} />}\n <Counter numbers={hours} tag=\"hours\" {...counterProps} />\n <Counter numbers={minutes} tag=\"minutes\" {...counterProps} />\n <Counter numbers={seconds} tag=\"seconds\" {...counterProps} />\n </>\n );\n };\n\n // Create a single announcement of the current time (only once)\n\n const renderAnnouncer = () => {\n const getTimeAnnouncement = () => {\n const parts = [];\n\n if (showDays) parts.push(`${days.join(\"\")} ${counterLabels.days}`);\n parts.push(`${hours.join(\"\")} ${counterLabels.hours}`);\n parts.push(`${minutes.join(\"\")} ${counterLabels.minutes}`);\n parts.push(`${seconds.join(\"\")} ${counterLabels.seconds}`);\n\n return parts.join(\", \");\n };\n\n return (\n <VisuallyHidden\n data-testid=\"live-region\"\n aria-live=\"polite\"\n aria-label={props[\"aria-label\"]}\n >\n {getTimeAnnouncement()}\n </VisuallyHidden>\n );\n };\n\n const counters = getCounters();\n\n const classes = cx(\n rootClassName,\n `${rootClassName}--size-${size}`,\n `${rootClassName}--variant-${variant}`,\n {\n [`${rootClassName}--full-width`]: fullWidth,\n [`${rootClassName}--negative`]: negative,\n [`${rootClassName}--show-days`]: showDays,\n [`${rootClassName}--use-media-queries`]: useMediaQueries,\n [`${rootClassName}--use-container-queries`]: !useMediaQueries,\n },\n className\n );\n\n return (\n <section\n id={id}\n className={classes}\n ref={ref}\n role=\"timer\"\n data-testid={props[\"data-testid\"]}\n >\n {/* Visually hidden live region that announces time only once */}\n {renderAnnouncer()}\n {props.label && (\n <Paragraph className={cx(`${rootClassName}__label`)} variant=\"paragraph-100-medium\">\n {props.label}\n </Paragraph>\n )}\n <div className={cx(`${rootClassName}__counter-container`)}>{counters}</div>\n </section>\n );\n }\n);\n\nCountdown.displayName = \"Countdown\";\n"],"names":["d","p","h","s","_","n","u","r","a","e","i","g","v","c","f","m","t","A","l","o","S","y","E","C","w","R","b","N","P","O","hasOwn","classNames","classes","arg","appendClass","parseValue","key","value","newClass","module","cx","styles","rootClassName","Counter","tag","size","numbers","counterLabels","renderLabel","label","abbreviatedLabel","jsxs","Fragment","Paragraph","jsx","number","index","digits","selected","getDiffs","endtime","now","totalSeconds","_days","inMs","_hours","_minutes","_seconds","days","splitDigits","hours","minutes","toDate","Countdown","forwardRef","renderAfterEnd","renderBeforeStart","props","ref","nowInit","id","useId","fullWidth","negative","showDays","variant","className","useMediaQueries","setNow","useState","start","useMemo","end","seconds","useEffect","hasNotStarted","hasEnded","getCounters","counterProps","renderAnnouncer","getTimeAnnouncement","parts","VisuallyHidden","counters"],"mappings":"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","x_google_ignoreList":[2]}
|
package/dist/countdown.es.js
CHANGED
|
@@ -119,7 +119,7 @@ function lr(n) {
|
|
|
119
119
|
});
|
|
120
120
|
return u.displayName = `${n}.SlotClone`, u;
|
|
121
121
|
}
|
|
122
|
-
var dr = Symbol("radix.slottable");
|
|
122
|
+
var dr = /* @__PURE__ */ Symbol("radix.slottable");
|
|
123
123
|
function _r(n) {
|
|
124
124
|
return s.isValidElement(n) && typeof n.type == "function" && "__radixId" in n.type && n.type.__radixId === dr;
|
|
125
125
|
}
|
|
@@ -157,7 +157,7 @@ var mr = [
|
|
|
157
157
|
], br = mr.reduce((n, u) => {
|
|
158
158
|
const t = /* @__PURE__ */ cr(`Primitive.${u}`), o = s.forwardRef((a, r) => {
|
|
159
159
|
const { asChild: e, ...p } = a, l = e ? t : u;
|
|
160
|
-
return typeof window < "u" && (window[Symbol.for("radix-ui")] = !0), /* @__PURE__ */ i(l, { ...p, ref: r });
|
|
160
|
+
return typeof window < "u" && (window[/* @__PURE__ */ Symbol.for("radix-ui")] = !0), /* @__PURE__ */ i(l, { ...p, ref: r });
|
|
161
161
|
});
|
|
162
162
|
return o.displayName = `Primitive.${u}`, { ...n, [u]: o };
|
|
163
163
|
}, {}), gr = "VisuallyHidden", B = s.forwardRef(
|
package/dist/countdown.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"countdown.es.js","sources":["../../paragraph/dist/paragraph.es.js","../../visually-hidden/dist/visually-hidden.es.js","../../../common/temp/node_modules/.pnpm/classnames@2.5.1/node_modules/classnames/bind.js","../src/counter.tsx","../src/utils.ts","../src/countdown.tsx"],"sourcesContent":["import { jsx as l } from \"react/jsx-runtime\";\nfunction d(p) {\n return p && p.__esModule && Object.prototype.hasOwnProperty.call(p, \"default\") ? p.default : p;\n}\nvar h = { exports: {} };\nvar s;\nfunction _() {\n return s || (s = 1, (function(p) {\n (function() {\n var n = {}.hasOwnProperty;\n function u() {\n for (var r = \"\", a = 0; a < arguments.length; a++) {\n var e = arguments[a];\n e && (r = i(r, o.call(this, e)));\n }\n return r;\n }\n function o(r) {\n if (typeof r == \"string\" || typeof r == \"number\")\n return this && this[r] || r;\n if (typeof r != \"object\")\n return \"\";\n if (Array.isArray(r))\n return u.apply(this, r);\n if (r.toString !== Object.prototype.toString && !r.toString.toString().includes(\"[native code]\"))\n return r.toString();\n var a = \"\";\n for (var e in r)\n n.call(r, e) && r[e] && (a = i(a, this && this[e] || e));\n return a;\n }\n function i(r, a) {\n return a ? r ? r + \" \" + a : r + a : r;\n }\n p.exports ? (u.default = u, p.exports = u) : window.classNames = u;\n })();\n })(h)), h.exports;\n}\nvar g = _();\nconst v = /* @__PURE__ */ d(g), c = {\n \"purpur-paragraph\": \"_purpur-paragraph_1vz75_1\",\n \"purpur-paragraph--disabled\": \"_purpur-paragraph--disabled_1vz75_7\",\n \"purpur-paragraph--hyphens\": \"_purpur-paragraph--hyphens_1vz75_10\",\n \"purpur-paragraph--negative\": \"_purpur-paragraph--negative_1vz75_13\",\n \"purpur-paragraph--paragraph-100\": \"_purpur-paragraph--paragraph-100_1vz75_16\",\n \"purpur-paragraph--paragraph-100-medium\": \"_purpur-paragraph--paragraph-100-medium_1vz75_22\",\n \"purpur-paragraph--paragraph-100-bold\": \"_purpur-paragraph--paragraph-100-bold_1vz75_29\",\n \"purpur-paragraph--paragraph-200\": \"_purpur-paragraph--paragraph-200_1vz75_36\",\n \"purpur-paragraph--preamble-100\": \"_purpur-paragraph--preamble-100_1vz75_42\",\n \"purpur-paragraph--preamble-200\": \"_purpur-paragraph--preamble-200_1vz75_48\",\n \"purpur-paragraph--additional-100\": \"_purpur-paragraph--additional-100_1vz75_54\",\n \"purpur-paragraph--additional-100-medium\": \"_purpur-paragraph--additional-100-medium_1vz75_60\",\n \"purpur-paragraph--additional-100-bold\": \"_purpur-paragraph--additional-100-bold_1vz75_67\",\n \"purpur-paragraph--overline-100\": \"_purpur-paragraph--overline-100_1vz75_74\",\n \"purpur-paragraph--overline-200\": \"_purpur-paragraph--overline-200_1vz75_82\"\n}, f = v.bind(c), m = {\n PARAGRAPH100: \"paragraph-100\",\n PARAGRAPH100MEDIUM: \"paragraph-100-medium\",\n PARAGRAPH100BOLD: \"paragraph-100-bold\",\n PARAGRAPH200: \"paragraph-200\",\n PREAMBLE100: \"preamble-100\",\n PREAMBLE200: \"preamble-200\",\n ADDITIONAL100: \"additional-100\",\n ADDITIONAL100MEDIUM: \"additional-100-medium\",\n ADDITIONAL100BOLD: \"additional-100-bold\",\n OVERLINE100: \"overline-100\",\n OVERLINE200: \"overline-200\"\n}, t = \"purpur-paragraph\", A = ({\n children: p,\n className: n,\n disabled: u,\n enableHyphenation: o = !1,\n negative: i = !1,\n variant: r = m.PARAGRAPH100,\n ...a\n}) => {\n const e = f(n, t, `${t}--${r}`, {\n [`${t}--hyphens`]: o,\n [`${t}--disabled`]: u,\n [`${t}--negative`]: i\n });\n return /* @__PURE__ */ l(\"p\", { ...a, className: e, children: p });\n};\nA.displayName = \"Paragraph\";\nexport {\n A as Paragraph,\n m as ParagraphVariant\n};\n//# sourceMappingURL=paragraph.es.js.map\n","import { jsx as u } from \"react/jsx-runtime\";\nimport * as l from \"react\";\nimport \"react-dom\";\nfunction d(e, n) {\n if (typeof e == \"function\")\n return e(n);\n e != null && (e.current = n);\n}\nfunction h(...e) {\n return (n) => {\n let r = !1;\n const i = e.map((t) => {\n const o = d(t, n);\n return !r && typeof o == \"function\" && (r = !0), o;\n });\n if (r)\n return () => {\n for (let t = 0; t < i.length; t++) {\n const o = i[t];\n typeof o == \"function\" ? o() : d(e[t], null);\n }\n };\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction g(e) {\n const n = /* @__PURE__ */ v(e), r = l.forwardRef((i, t) => {\n const { children: o, ...a } = i, s = l.Children.toArray(o), c = s.find(S);\n if (c) {\n const f = c.props.children, y = s.map((p) => p === c ? l.Children.count(f) > 1 ? l.Children.only(null) : l.isValidElement(f) ? f.props.children : null : p);\n return /* @__PURE__ */ u(n, { ...a, ref: t, children: l.isValidElement(f) ? l.cloneElement(f, void 0, y) : null });\n }\n return /* @__PURE__ */ u(n, { ...a, ref: t, children: o });\n });\n return r.displayName = `${e}.Slot`, r;\n}\n// @__NO_SIDE_EFFECTS__\nfunction v(e) {\n const n = l.forwardRef((r, i) => {\n const { children: t, ...o } = r;\n if (l.isValidElement(t)) {\n const a = E(t), s = C(o, t.props);\n return t.type !== l.Fragment && (s.ref = i ? h(i, a) : a), l.cloneElement(t, s);\n }\n return l.Children.count(t) > 1 ? l.Children.only(null) : null;\n });\n return n.displayName = `${e}.SlotClone`, n;\n}\nvar w = Symbol(\"radix.slottable\");\nfunction S(e) {\n return l.isValidElement(e) && typeof e.type == \"function\" && \"__radixId\" in e.type && e.type.__radixId === w;\n}\nfunction C(e, n) {\n const r = { ...n };\n for (const i in n) {\n const t = e[i], o = n[i];\n /^on[A-Z]/.test(i) ? t && o ? r[i] = (...s) => {\n o(...s), t(...s);\n } : t && (r[i] = t) : i === \"style\" ? r[i] = { ...t, ...o } : i === \"className\" && (r[i] = [t, o].filter(Boolean).join(\" \"));\n }\n return { ...e, ...r };\n}\nfunction E(e) {\n let n = Object.getOwnPropertyDescriptor(e.props, \"ref\")?.get, r = n && \"isReactWarning\" in n && n.isReactWarning;\n return r ? e.ref : (n = Object.getOwnPropertyDescriptor(e, \"ref\")?.get, r = n && \"isReactWarning\" in n && n.isReactWarning, r ? e.props.ref : e.props.ref || e.ref);\n}\nvar R = [\n \"a\",\n \"button\",\n \"div\",\n \"form\",\n \"h2\",\n \"h3\",\n \"img\",\n \"input\",\n \"label\",\n \"li\",\n \"nav\",\n \"ol\",\n \"p\",\n \"span\",\n \"svg\",\n \"ul\"\n], b = R.reduce((e, n) => {\n const r = /* @__PURE__ */ g(`Primitive.${n}`), i = l.forwardRef((t, o) => {\n const { asChild: a, ...s } = t, c = a ? r : n;\n return typeof window < \"u\" && (window[Symbol.for(\"radix-ui\")] = !0), /* @__PURE__ */ u(c, { ...s, ref: o });\n });\n return i.displayName = `Primitive.${n}`, { ...e, [n]: i };\n}, {}), N = \"VisuallyHidden\", m = l.forwardRef(\n (e, n) => /* @__PURE__ */ u(\n b.span,\n {\n ...e,\n ref: n,\n style: {\n // See: https://github.com/twbs/bootstrap/blob/main/scss/mixins/_visually-hidden.scss\n position: \"absolute\",\n border: 0,\n width: 1,\n height: 1,\n padding: 0,\n margin: -1,\n overflow: \"hidden\",\n clip: \"rect(0, 0, 0, 0)\",\n whiteSpace: \"nowrap\",\n wordWrap: \"normal\",\n ...e.style\n }\n }\n )\n);\nm.displayName = N;\nvar P = m;\nconst O = ({ asChild: e, children: n, ...r }) => /* @__PURE__ */ u(P, { asChild: e, ...r, children: n });\nexport {\n O as VisuallyHidden\n};\n//# sourceMappingURL=visually-hidden.es.js.map\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue.call(this, arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn this && this[arg] || arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(this, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, this && this[key] || key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React from \"react\";\nimport { Paragraph } from \"@purpurds/paragraph\";\nimport c from \"classnames/bind\";\n\nimport { type CounterLabels } from \"./countdown.types\";\nimport styles from \"./counter.module.scss\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-countdown-counter\";\n\ninterface CounterProps {\n numbers: string[];\n size: \"md\" | \"lg\";\n tag: \"days\" | \"hours\" | \"minutes\" | \"seconds\";\n counterLabels: CounterLabels;\n}\n\nexport const Counter = ({ tag, size, numbers, counterLabels }: CounterProps) => {\n const renderLabel = () => {\n const label = counterLabels[tag];\n const abbreviatedLabel = counterLabels[`${tag}Abbr`];\n\n return (\n <>\n {abbreviatedLabel && (\n <Paragraph className={cx(`${rootClassName}__label`, `${rootClassName}__label--abbr`)}>\n <abbr title={label}>{abbreviatedLabel}</abbr>\n </Paragraph>\n )}\n <Paragraph\n className={cx(`${rootClassName}__label`, {\n [`${rootClassName}__label--full`]: !!abbreviatedLabel,\n })}\n >\n {label}\n </Paragraph>\n </>\n );\n };\n\n return (\n <div\n className={cx(rootClassName, `${rootClassName}--size-${size}`)}\n role=\"group\"\n aria-hidden=\"true\"\n data-testid={`counter-${tag}`}\n >\n <div className={cx(`${rootClassName}__number-list-container`)}>\n {numbers.map((number, index) => {\n return (\n <ul\n key={index}\n className={cx(`${rootClassName}__number-list`)}\n style={\n {\n \"--offset\": number,\n } as React.CSSProperties\n }\n >\n {digits.map((d, i) => {\n const selected = d === number;\n\n return (\n <li\n key={i}\n className={cx(`${rootClassName}__number`, {\n [`${rootClassName}__number--selected`]: selected,\n })}\n >\n {d}\n </li>\n );\n })}\n </ul>\n );\n })}\n </div>\n\n {renderLabel()}\n </div>\n );\n};\n\nconst digits = [\"0\", \"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\"];\n","export function getDiffs(endtime: number) {\n const now = new Date().getTime();\n\n const totalSeconds = Math.max(0, endtime - now);\n\n const _days = Math.floor(totalSeconds / inMs.day);\n const _hours = Math.floor((totalSeconds % inMs.day) / inMs.hour);\n const _minutes = Math.floor((totalSeconds % inMs.hour) / inMs.minute);\n const _seconds = Math.floor((totalSeconds % inMs.minute) / inMs.second);\n\n const days = splitDigits(_days);\n const hours = splitDigits(_hours);\n const minutes = splitDigits(_minutes);\n const seconds = splitDigits(_seconds);\n\n return {\n seconds,\n minutes,\n hours,\n days,\n };\n}\n\nexport const inMs = {\n second: 1000,\n minute: 60 * 1000,\n hour: 60 * 60 * 1000,\n day: 24 * 60 * 60 * 1000,\n};\n\nexport function toDate(t: string | number | Date) {\n return t instanceof Date ? t : new Date(t);\n}\n\nexport function splitDigits(value: number) {\n const s = String(value).padStart(2, \"0\");\n return s.split(\"\");\n}\n","import React, { type ForwardedRef, forwardRef, useEffect, useId, useMemo, useState } from \"react\";\nimport { Paragraph } from \"@purpurds/paragraph\";\nimport { VisuallyHidden } from \"@purpurds/visually-hidden\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./countdown.module.scss\";\nimport { type CountdownProps } from \"./countdown.types\";\nimport { Counter } from \"./counter\";\nimport { getDiffs, toDate } from \"./utils\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-countdown\";\n\n/**\n * Countdown component to display a countdown timer.\n * @param props - CountdownProps\n * @returns A React component that displays a countdown timer.\n */\n\nexport const Countdown = forwardRef(\n (\n { renderAfterEnd, renderBeforeStart, ...props }: CountdownProps,\n ref: ForwardedRef<HTMLButtonElement>\n ) => {\n const nowInit = new Date();\n const id = useId();\n\n const {\n size = \"lg\",\n fullWidth = false,\n negative = false,\n showDays = true,\n variant = \"primary\",\n className,\n counterLabels,\n useMediaQueries = false,\n } = props;\n\n const [now, setNow] = useState<Date>(nowInit);\n\n const start = useMemo(() => toDate(props.starttime), [props.starttime]);\n const end = useMemo(() => toDate(props.endtime), [props.endtime]);\n const { days, hours, minutes, seconds } = useMemo(() => getDiffs(end.getTime()), [now]);\n\n useEffect(() => {\n if (now < start || now > end) return;\n const t = setInterval(() => setNow(new Date()), 1000);\n return () => clearInterval(t);\n }, [start, end, now]);\n\n const hasNotStarted = start > now;\n const hasEnded = end < now;\n\n // don't render if before start or after end\n if (hasNotStarted) return renderBeforeStart ? renderBeforeStart(props) : null;\n if (hasEnded) return renderAfterEnd ? renderAfterEnd(props) : null;\n\n const getCounters = () => {\n const counterProps = { size, counterLabels };\n\n return (\n <>\n {showDays && <Counter numbers={days} tag=\"days\" {...counterProps} />}\n <Counter numbers={hours} tag=\"hours\" {...counterProps} />\n <Counter numbers={minutes} tag=\"minutes\" {...counterProps} />\n <Counter numbers={seconds} tag=\"seconds\" {...counterProps} />\n </>\n );\n };\n\n // Create a single announcement of the current time (only once)\n\n const renderAnnouncer = () => {\n const getTimeAnnouncement = () => {\n const parts = [];\n\n if (showDays) parts.push(`${days.join(\"\")} ${counterLabels.days}`);\n parts.push(`${hours.join(\"\")} ${counterLabels.hours}`);\n parts.push(`${minutes.join(\"\")} ${counterLabels.minutes}`);\n parts.push(`${seconds.join(\"\")} ${counterLabels.seconds}`);\n\n return parts.join(\", \");\n };\n\n return (\n <VisuallyHidden\n data-testid=\"live-region\"\n aria-live=\"polite\"\n aria-label={props[\"aria-label\"]}\n >\n {getTimeAnnouncement()}\n </VisuallyHidden>\n );\n };\n\n const counters = getCounters();\n\n const classes = cx(\n rootClassName,\n `${rootClassName}--size-${size}`,\n `${rootClassName}--variant-${variant}`,\n {\n [`${rootClassName}--full-width`]: fullWidth,\n [`${rootClassName}--negative`]: negative,\n [`${rootClassName}--show-days`]: showDays,\n [`${rootClassName}--use-media-queries`]: useMediaQueries,\n [`${rootClassName}--use-container-queries`]: !useMediaQueries,\n },\n className\n );\n\n return (\n <section\n id={id}\n className={classes}\n ref={ref}\n role=\"timer\"\n data-testid={props[\"data-testid\"]}\n >\n {/* Visually hidden live region that announces time only once */}\n {renderAnnouncer()}\n {props.label && (\n <Paragraph className={cx(`${rootClassName}__label`)} variant=\"paragraph-100-medium\">\n {props.label}\n </Paragraph>\n )}\n <div className={cx(`${rootClassName}__counter-container`)}>{counters}</div>\n </section>\n );\n }\n);\n\nCountdown.displayName = \"Countdown\";\n"],"names":["d","p","h","s","_","n","u","a","e","i","g","v","c","f","m","t","A","l","r","o","S","y","E","C","w","R","b","N","P","O","hasOwn","classNames","classes","arg","appendClass","parseValue","key","value","newClass","module","cx","styles","rootClassName","Counter","tag","size","numbers","counterLabels","renderLabel","label","abbreviatedLabel","jsxs","Fragment","Paragraph","jsx","number","index","digits","selected","getDiffs","endtime","now","totalSeconds","_days","inMs","_hours","_minutes","_seconds","days","splitDigits","hours","minutes","toDate","Countdown","forwardRef","renderAfterEnd","renderBeforeStart","props","ref","nowInit","id","useId","fullWidth","negative","showDays","variant","className","useMediaQueries","setNow","useState","start","useMemo","end","seconds","useEffect","hasNotStarted","hasEnded","getCounters","counterProps","renderAnnouncer","getTimeAnnouncement","parts","VisuallyHidden","counters"],"mappings":"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","x_google_ignoreList":[2]}
|
|
1
|
+
{"version":3,"file":"countdown.es.js","sources":["../../paragraph/dist/paragraph.es.js","../../visually-hidden/dist/visually-hidden.es.js","../../../common/temp/node_modules/.pnpm/classnames@2.5.1/node_modules/classnames/bind.js","../src/counter.tsx","../src/utils.ts","../src/countdown.tsx"],"sourcesContent":["import { jsx as l } from \"react/jsx-runtime\";\nfunction d(p) {\n return p && p.__esModule && Object.prototype.hasOwnProperty.call(p, \"default\") ? p.default : p;\n}\nvar h = { exports: {} };\nvar s;\nfunction _() {\n return s || (s = 1, (function(p) {\n (function() {\n var n = {}.hasOwnProperty;\n function u() {\n for (var r = \"\", a = 0; a < arguments.length; a++) {\n var e = arguments[a];\n e && (r = i(r, o.call(this, e)));\n }\n return r;\n }\n function o(r) {\n if (typeof r == \"string\" || typeof r == \"number\")\n return this && this[r] || r;\n if (typeof r != \"object\")\n return \"\";\n if (Array.isArray(r))\n return u.apply(this, r);\n if (r.toString !== Object.prototype.toString && !r.toString.toString().includes(\"[native code]\"))\n return r.toString();\n var a = \"\";\n for (var e in r)\n n.call(r, e) && r[e] && (a = i(a, this && this[e] || e));\n return a;\n }\n function i(r, a) {\n return a ? r ? r + \" \" + a : r + a : r;\n }\n p.exports ? (u.default = u, p.exports = u) : window.classNames = u;\n })();\n })(h)), h.exports;\n}\nvar g = _();\nconst v = /* @__PURE__ */ d(g), c = {\n \"purpur-paragraph\": \"_purpur-paragraph_1vz75_1\",\n \"purpur-paragraph--disabled\": \"_purpur-paragraph--disabled_1vz75_7\",\n \"purpur-paragraph--hyphens\": \"_purpur-paragraph--hyphens_1vz75_10\",\n \"purpur-paragraph--negative\": \"_purpur-paragraph--negative_1vz75_13\",\n \"purpur-paragraph--paragraph-100\": \"_purpur-paragraph--paragraph-100_1vz75_16\",\n \"purpur-paragraph--paragraph-100-medium\": \"_purpur-paragraph--paragraph-100-medium_1vz75_22\",\n \"purpur-paragraph--paragraph-100-bold\": \"_purpur-paragraph--paragraph-100-bold_1vz75_29\",\n \"purpur-paragraph--paragraph-200\": \"_purpur-paragraph--paragraph-200_1vz75_36\",\n \"purpur-paragraph--preamble-100\": \"_purpur-paragraph--preamble-100_1vz75_42\",\n \"purpur-paragraph--preamble-200\": \"_purpur-paragraph--preamble-200_1vz75_48\",\n \"purpur-paragraph--additional-100\": \"_purpur-paragraph--additional-100_1vz75_54\",\n \"purpur-paragraph--additional-100-medium\": \"_purpur-paragraph--additional-100-medium_1vz75_60\",\n \"purpur-paragraph--additional-100-bold\": \"_purpur-paragraph--additional-100-bold_1vz75_67\",\n \"purpur-paragraph--overline-100\": \"_purpur-paragraph--overline-100_1vz75_74\",\n \"purpur-paragraph--overline-200\": \"_purpur-paragraph--overline-200_1vz75_82\"\n}, f = v.bind(c), m = {\n PARAGRAPH100: \"paragraph-100\",\n PARAGRAPH100MEDIUM: \"paragraph-100-medium\",\n PARAGRAPH100BOLD: \"paragraph-100-bold\",\n PARAGRAPH200: \"paragraph-200\",\n PREAMBLE100: \"preamble-100\",\n PREAMBLE200: \"preamble-200\",\n ADDITIONAL100: \"additional-100\",\n ADDITIONAL100MEDIUM: \"additional-100-medium\",\n ADDITIONAL100BOLD: \"additional-100-bold\",\n OVERLINE100: \"overline-100\",\n OVERLINE200: \"overline-200\"\n}, t = \"purpur-paragraph\", A = ({\n children: p,\n className: n,\n disabled: u,\n enableHyphenation: o = !1,\n negative: i = !1,\n variant: r = m.PARAGRAPH100,\n ...a\n}) => {\n const e = f(n, t, `${t}--${r}`, {\n [`${t}--hyphens`]: o,\n [`${t}--disabled`]: u,\n [`${t}--negative`]: i\n });\n return /* @__PURE__ */ l(\"p\", { ...a, className: e, children: p });\n};\nA.displayName = \"Paragraph\";\nexport {\n A as Paragraph,\n m as ParagraphVariant\n};\n//# sourceMappingURL=paragraph.es.js.map\n","import { jsx as u } from \"react/jsx-runtime\";\nimport * as l from \"react\";\nimport \"react-dom\";\nfunction d(e, n) {\n if (typeof e == \"function\")\n return e(n);\n e != null && (e.current = n);\n}\nfunction h(...e) {\n return (n) => {\n let r = !1;\n const i = e.map((t) => {\n const o = d(t, n);\n return !r && typeof o == \"function\" && (r = !0), o;\n });\n if (r)\n return () => {\n for (let t = 0; t < i.length; t++) {\n const o = i[t];\n typeof o == \"function\" ? o() : d(e[t], null);\n }\n };\n };\n}\n// @__NO_SIDE_EFFECTS__\nfunction g(e) {\n const n = /* @__PURE__ */ v(e), r = l.forwardRef((i, t) => {\n const { children: o, ...a } = i, s = l.Children.toArray(o), c = s.find(S);\n if (c) {\n const f = c.props.children, y = s.map((p) => p === c ? l.Children.count(f) > 1 ? l.Children.only(null) : l.isValidElement(f) ? f.props.children : null : p);\n return /* @__PURE__ */ u(n, { ...a, ref: t, children: l.isValidElement(f) ? l.cloneElement(f, void 0, y) : null });\n }\n return /* @__PURE__ */ u(n, { ...a, ref: t, children: o });\n });\n return r.displayName = `${e}.Slot`, r;\n}\n// @__NO_SIDE_EFFECTS__\nfunction v(e) {\n const n = l.forwardRef((r, i) => {\n const { children: t, ...o } = r;\n if (l.isValidElement(t)) {\n const a = E(t), s = C(o, t.props);\n return t.type !== l.Fragment && (s.ref = i ? h(i, a) : a), l.cloneElement(t, s);\n }\n return l.Children.count(t) > 1 ? l.Children.only(null) : null;\n });\n return n.displayName = `${e}.SlotClone`, n;\n}\nvar w = /* @__PURE__ */ Symbol(\"radix.slottable\");\nfunction S(e) {\n return l.isValidElement(e) && typeof e.type == \"function\" && \"__radixId\" in e.type && e.type.__radixId === w;\n}\nfunction C(e, n) {\n const r = { ...n };\n for (const i in n) {\n const t = e[i], o = n[i];\n /^on[A-Z]/.test(i) ? t && o ? r[i] = (...s) => {\n o(...s), t(...s);\n } : t && (r[i] = t) : i === \"style\" ? r[i] = { ...t, ...o } : i === \"className\" && (r[i] = [t, o].filter(Boolean).join(\" \"));\n }\n return { ...e, ...r };\n}\nfunction E(e) {\n let n = Object.getOwnPropertyDescriptor(e.props, \"ref\")?.get, r = n && \"isReactWarning\" in n && n.isReactWarning;\n return r ? e.ref : (n = Object.getOwnPropertyDescriptor(e, \"ref\")?.get, r = n && \"isReactWarning\" in n && n.isReactWarning, r ? e.props.ref : e.props.ref || e.ref);\n}\nvar R = [\n \"a\",\n \"button\",\n \"div\",\n \"form\",\n \"h2\",\n \"h3\",\n \"img\",\n \"input\",\n \"label\",\n \"li\",\n \"nav\",\n \"ol\",\n \"p\",\n \"span\",\n \"svg\",\n \"ul\"\n], b = R.reduce((e, n) => {\n const r = /* @__PURE__ */ g(`Primitive.${n}`), i = l.forwardRef((t, o) => {\n const { asChild: a, ...s } = t, c = a ? r : n;\n return typeof window < \"u\" && (window[/* @__PURE__ */ Symbol.for(\"radix-ui\")] = !0), /* @__PURE__ */ u(c, { ...s, ref: o });\n });\n return i.displayName = `Primitive.${n}`, { ...e, [n]: i };\n}, {}), N = \"VisuallyHidden\", m = l.forwardRef(\n (e, n) => /* @__PURE__ */ u(\n b.span,\n {\n ...e,\n ref: n,\n style: {\n // See: https://github.com/twbs/bootstrap/blob/main/scss/mixins/_visually-hidden.scss\n position: \"absolute\",\n border: 0,\n width: 1,\n height: 1,\n padding: 0,\n margin: -1,\n overflow: \"hidden\",\n clip: \"rect(0, 0, 0, 0)\",\n whiteSpace: \"nowrap\",\n wordWrap: \"normal\",\n ...e.style\n }\n }\n )\n);\nm.displayName = N;\nvar P = m;\nconst O = ({ asChild: e, children: n, ...r }) => /* @__PURE__ */ u(P, { asChild: e, ...r, children: n });\nexport {\n O as VisuallyHidden\n};\n//# sourceMappingURL=visually-hidden.es.js.map\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue.call(this, arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn this && this[arg] || arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(this, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, this && this[key] || key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React from \"react\";\nimport { Paragraph } from \"@purpurds/paragraph\";\nimport c from \"classnames/bind\";\n\nimport { type CounterLabels } from \"./countdown.types\";\nimport styles from \"./counter.module.scss\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-countdown-counter\";\n\ninterface CounterProps {\n numbers: string[];\n size: \"md\" | \"lg\";\n tag: \"days\" | \"hours\" | \"minutes\" | \"seconds\";\n counterLabels: CounterLabels;\n}\n\nexport const Counter = ({ tag, size, numbers, counterLabels }: CounterProps) => {\n const renderLabel = () => {\n const label = counterLabels[tag];\n const abbreviatedLabel = counterLabels[`${tag}Abbr`];\n\n return (\n <>\n {abbreviatedLabel && (\n <Paragraph className={cx(`${rootClassName}__label`, `${rootClassName}__label--abbr`)}>\n <abbr title={label}>{abbreviatedLabel}</abbr>\n </Paragraph>\n )}\n <Paragraph\n className={cx(`${rootClassName}__label`, {\n [`${rootClassName}__label--full`]: !!abbreviatedLabel,\n })}\n >\n {label}\n </Paragraph>\n </>\n );\n };\n\n return (\n <div\n className={cx(rootClassName, `${rootClassName}--size-${size}`)}\n role=\"group\"\n aria-hidden=\"true\"\n data-testid={`counter-${tag}`}\n >\n <div className={cx(`${rootClassName}__number-list-container`)}>\n {numbers.map((number, index) => {\n return (\n <ul\n key={index}\n className={cx(`${rootClassName}__number-list`)}\n style={\n {\n \"--offset\": number,\n } as React.CSSProperties\n }\n >\n {digits.map((d, i) => {\n const selected = d === number;\n\n return (\n <li\n key={i}\n className={cx(`${rootClassName}__number`, {\n [`${rootClassName}__number--selected`]: selected,\n })}\n >\n {d}\n </li>\n );\n })}\n </ul>\n );\n })}\n </div>\n\n {renderLabel()}\n </div>\n );\n};\n\nconst digits = [\"0\", \"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\"];\n","export function getDiffs(endtime: number) {\n const now = new Date().getTime();\n\n const totalSeconds = Math.max(0, endtime - now);\n\n const _days = Math.floor(totalSeconds / inMs.day);\n const _hours = Math.floor((totalSeconds % inMs.day) / inMs.hour);\n const _minutes = Math.floor((totalSeconds % inMs.hour) / inMs.minute);\n const _seconds = Math.floor((totalSeconds % inMs.minute) / inMs.second);\n\n const days = splitDigits(_days);\n const hours = splitDigits(_hours);\n const minutes = splitDigits(_minutes);\n const seconds = splitDigits(_seconds);\n\n return {\n seconds,\n minutes,\n hours,\n days,\n };\n}\n\nexport const inMs = {\n second: 1000,\n minute: 60 * 1000,\n hour: 60 * 60 * 1000,\n day: 24 * 60 * 60 * 1000,\n};\n\nexport function toDate(t: string | number | Date) {\n return t instanceof Date ? t : new Date(t);\n}\n\nexport function splitDigits(value: number) {\n const s = String(value).padStart(2, \"0\");\n return s.split(\"\");\n}\n","import React, { type ForwardedRef, forwardRef, useEffect, useId, useMemo, useState } from \"react\";\nimport { Paragraph } from \"@purpurds/paragraph\";\nimport { VisuallyHidden } from \"@purpurds/visually-hidden\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./countdown.module.scss\";\nimport { type CountdownProps } from \"./countdown.types\";\nimport { Counter } from \"./counter\";\nimport { getDiffs, toDate } from \"./utils\";\n\nconst cx = c.bind(styles);\n\nconst rootClassName = \"purpur-countdown\";\n\n/**\n * Countdown component to display a countdown timer.\n * @param props - CountdownProps\n * @returns A React component that displays a countdown timer.\n */\n\nexport const Countdown = forwardRef(\n (\n { renderAfterEnd, renderBeforeStart, ...props }: CountdownProps,\n ref: ForwardedRef<HTMLButtonElement>\n ) => {\n const nowInit = new Date();\n const id = useId();\n\n const {\n size = \"lg\",\n fullWidth = false,\n negative = false,\n showDays = true,\n variant = \"primary\",\n className,\n counterLabels,\n useMediaQueries = false,\n } = props;\n\n const [now, setNow] = useState<Date>(nowInit);\n\n const start = useMemo(() => toDate(props.starttime), [props.starttime]);\n const end = useMemo(() => toDate(props.endtime), [props.endtime]);\n const { days, hours, minutes, seconds } = useMemo(() => getDiffs(end.getTime()), [now]);\n\n useEffect(() => {\n if (now < start || now > end) return;\n const t = setInterval(() => setNow(new Date()), 1000);\n return () => clearInterval(t);\n }, [start, end, now]);\n\n const hasNotStarted = start > now;\n const hasEnded = end < now;\n\n // don't render if before start or after end\n if (hasNotStarted) return renderBeforeStart ? renderBeforeStart(props) : null;\n if (hasEnded) return renderAfterEnd ? renderAfterEnd(props) : null;\n\n const getCounters = () => {\n const counterProps = { size, counterLabels };\n\n return (\n <>\n {showDays && <Counter numbers={days} tag=\"days\" {...counterProps} />}\n <Counter numbers={hours} tag=\"hours\" {...counterProps} />\n <Counter numbers={minutes} tag=\"minutes\" {...counterProps} />\n <Counter numbers={seconds} tag=\"seconds\" {...counterProps} />\n </>\n );\n };\n\n // Create a single announcement of the current time (only once)\n\n const renderAnnouncer = () => {\n const getTimeAnnouncement = () => {\n const parts = [];\n\n if (showDays) parts.push(`${days.join(\"\")} ${counterLabels.days}`);\n parts.push(`${hours.join(\"\")} ${counterLabels.hours}`);\n parts.push(`${minutes.join(\"\")} ${counterLabels.minutes}`);\n parts.push(`${seconds.join(\"\")} ${counterLabels.seconds}`);\n\n return parts.join(\", \");\n };\n\n return (\n <VisuallyHidden\n data-testid=\"live-region\"\n aria-live=\"polite\"\n aria-label={props[\"aria-label\"]}\n >\n {getTimeAnnouncement()}\n </VisuallyHidden>\n );\n };\n\n const counters = getCounters();\n\n const classes = cx(\n rootClassName,\n `${rootClassName}--size-${size}`,\n `${rootClassName}--variant-${variant}`,\n {\n [`${rootClassName}--full-width`]: fullWidth,\n [`${rootClassName}--negative`]: negative,\n [`${rootClassName}--show-days`]: showDays,\n [`${rootClassName}--use-media-queries`]: useMediaQueries,\n [`${rootClassName}--use-container-queries`]: !useMediaQueries,\n },\n className\n );\n\n return (\n <section\n id={id}\n className={classes}\n ref={ref}\n role=\"timer\"\n data-testid={props[\"data-testid\"]}\n >\n {/* Visually hidden live region that announces time only once */}\n {renderAnnouncer()}\n {props.label && (\n <Paragraph className={cx(`${rootClassName}__label`)} variant=\"paragraph-100-medium\">\n {props.label}\n </Paragraph>\n )}\n <div className={cx(`${rootClassName}__counter-container`)}>{counters}</div>\n </section>\n );\n }\n);\n\nCountdown.displayName = \"Countdown\";\n"],"names":["d","p","h","s","_","n","u","a","e","i","g","v","c","f","m","t","A","l","r","o","S","y","E","C","w","R","b","N","P","O","hasOwn","classNames","classes","arg","appendClass","parseValue","key","value","newClass","module","cx","styles","rootClassName","Counter","tag","size","numbers","counterLabels","renderLabel","label","abbreviatedLabel","jsxs","Fragment","Paragraph","jsx","number","index","digits","selected","getDiffs","endtime","now","totalSeconds","_days","inMs","_hours","_minutes","_seconds","days","splitDigits","hours","minutes","toDate","Countdown","forwardRef","renderAfterEnd","renderBeforeStart","props","ref","nowInit","id","useId","fullWidth","negative","showDays","variant","className","useMediaQueries","setNow","useState","start","useMemo","end","seconds","useEffect","hasNotStarted","hasEnded","getCounters","counterProps","renderAnnouncer","getTimeAnnouncement","parts","VisuallyHidden","counters"],"mappings":"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","x_google_ignoreList":[2]}
|
package/dist/styles.css
CHANGED
|
@@ -1 +1 @@
|
|
|
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
|
|
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_23fbu_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)}._purpur-countdown-counter--size-lg_23fbu_10{--digit-height: calc(1.1*clamp(var(--purpur-typography-scale-400), 3cqw, var(--purpur-typography-scale-600))) }._purpur-countdown-counter--size-lg_23fbu_10 ._purpur-countdown-counter__number_23fbu_15{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--size-md_23fbu_21{--digit-height: calc(1.1*clamp(var(--purpur-typography-scale-150), 3cqw, var(--purpur-typography-scale-200))) }._purpur-countdown-counter--size-md_23fbu_21 ._purpur-countdown-counter__number_23fbu_15{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_23fbu_1{--digit-width: calc(var(--digit-height) * .7)}._purpur-countdown-counter_23fbu_1>._purpur-countdown-counter__number-list-container_23fbu_35{display:flex;height:var(--digit-height);overflow:hidden}._purpur-countdown-counter_23fbu_1>._purpur-countdown-counter__number-list-container_23fbu_35>._purpur-countdown-counter__number-list_23fbu_35{list-style:none;margin:0;padding:0;display:grid;grid:repeat(10,auto)/1fr;transform:translateY(calc(var(--digit-height) * var(--offset) * -1))}@media(prefers-reduced-motion:no-preference){._purpur-countdown-counter_23fbu_1>._purpur-countdown-counter__number-list-container_23fbu_35>._purpur-countdown-counter__number-list_23fbu_35{transition:transform .6666666667s cubic-bezier(.68,-.55,.265,1.55)}}._purpur-countdown-counter_23fbu_1>._purpur-countdown-counter__number-list-container_23fbu_35>._purpur-countdown-counter__number-list_23fbu_35>._purpur-countdown-counter__number_23fbu_15{height:var(--digit-height);width:var(--digit-width);display:grid;place-items:center}._purpur-countdown-counter_23fbu_1>._purpur-countdown-counter__label_23fbu_64{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_23fbu_1>._purpur-countdown-counter__label--abbr_23fbu_71 abbr{text-decoration:none}._purpur-countdown-counter_23fbu_1>._purpur-countdown-counter__label--full_23fbu_74{display:none}@container countdown (min-width: 600px){[class*=purpur-countdown--use-container-queries] ._purpur-countdown-counter_23fbu_1>._purpur-countdown-counter__label--abbr_23fbu_71{display:none}[class*=purpur-countdown--use-container-queries] ._purpur-countdown-counter_23fbu_1>._purpur-countdown-counter__label--full_23fbu_74{display:block}}@media(min-width:600px){[class*=purpur-countdown--use-media-queries] ._purpur-countdown-counter_23fbu_1>._purpur-countdown-counter__label--abbr_23fbu_71{display:none}[class*=purpur-countdown--use-media-queries] ._purpur-countdown-counter_23fbu_1>._purpur-countdown-counter__label--full_23fbu_74{display:block}}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@purpurds/countdown",
|
|
3
|
-
"version": "8.
|
|
3
|
+
"version": "8.20.0",
|
|
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/
|
|
20
|
-
"@purpurds/
|
|
21
|
-
"@purpurds/
|
|
22
|
-
"@purpurds/
|
|
19
|
+
"@purpurds/heading": "8.20.0",
|
|
20
|
+
"@purpurds/visually-hidden": "8.20.0",
|
|
21
|
+
"@purpurds/tokens": "8.20.0",
|
|
22
|
+
"@purpurds/paragraph": "8.20.0"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
25
|
"@rushstack/eslint-patch": "~1.10.0",
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"@testing-library/dom": "~10.4.1",
|
|
28
28
|
"@testing-library/jest-dom": "~6.9.1",
|
|
29
29
|
"@testing-library/react": "~16.3.0",
|
|
30
|
-
"@types/node": "
|
|
30
|
+
"@types/node": "24.10.9",
|
|
31
31
|
"@types/react-dom": "^19.2.3",
|
|
32
32
|
"@types/react": "^19.2.6",
|
|
33
33
|
"eslint": "9.39.2",
|