Spaces:
Running
Running
| import{r,j as t}from"./react-_fH1j4AW.js";import{e as g}from"./index-Nqm_ElTk.js";import"./@braintree-9Zuj5s7N.js";import"./react-dom-B47xkeQg.js";import"./scheduler-DYLXRpC5.js";import"./mermaid-CwNlsT42.js";import"./dayjs-LlU9W_sF.js";import"./d3-transition-593SbTzI.js";import"./d3-timer-DdKHrDhs.js";import"./d3-dispatch-kxCwF96_.js";import"./d3-interpolate-CfLzPKWk.js";import"./d3-color-amxIadob.js";import"./d3-selection-C52G7wmG.js";import"./d3-ease-DRPgKoYJ.js";import"./d3-zoom-Dc8HCWOS.js";import"./dompurify-J5RlrwSC.js";import"./dagre-d3-es-CXvdFQqV.js";import"./lodash-es-CKQobiyk.js";import"./d3-shape-C6amFesj.js";import"./d3-path-CimkQT29.js";import"./d3-fetch-BOsq7VnW.js";import"./khroma-DUX6PT6k.js";import"./uuid-DhYbOkY1.js";import"./d3-scale-BchcX-lF.js";import"./internmap-BkD7Hj8s.js";import"./d3-array-DGRYoJHh.js";import"./d3-format-CzD4bSOQ.js";import"./d3-time-format-CUNN4Ell.js";import"./d3-time-6cSPyVSY.js";import"./d3-axis-DSWTncID.js";import"./elkjs-BS_sNva5.js";import"./cytoscape-Copgxxlq.js";import"./cytoscape-cose-bilkent-DNVwk4oY.js";import"./cose-base-HlRMd3jM.js";import"./layout-base-BVPXtQQC.js";import"./d3-sankey-DgqkLiUE.js";import"./d3-scale-chromatic-B-NsZVaP.js";import"./ts-dedent-DrFu-skq.js";import"./stylis-D5iaQeiq.js";import"./mdast-util-from-markdown-CLAsVoWb.js";import"./micromark-CTBPIv-_.js";import"./micromark-util-combine-extensions-Bka6Sc1c.js";import"./micromark-util-chunked-DrRIdSP-.js";import"./micromark-factory-space-x2vfxbz5.js";import"./micromark-util-character-Bcm1tP9o.js";import"./micromark-core-commonmark-AH8VCgT7.js";import"./micromark-util-classify-character-Cq7Fg3xE.js";import"./micromark-util-resolve-all-PQCKh0dx.js";import"./decode-named-character-reference-C3-224fz.js";import"./micromark-util-subtokenize-QwsxNXk2.js";import"./micromark-factory-destination-CypD_wgM.js";import"./micromark-factory-label-CRHH4ZHP.js";import"./micromark-factory-title-B7kCBvC9.js";import"./micromark-factory-whitespace-B322EA6O.js";import"./micromark-util-normalize-identifier-C9ANKk3v.js";import"./micromark-util-html-tag-name-DbKNfynz.js";import"./micromark-util-decode-numeric-character-reference-DRnCnno4.js";import"./micromark-util-decode-string-DJl8Y_PO.js";import"./unist-util-stringify-position-Ch_qCilz.js";import"./mdast-util-to-string-C_aolqmU.js";const m=({label:s,value:a,onChange:i,options:n})=>t.jsxs("div",{children:[t.jsx("label",{className:"block text-sm font-medium text-slate-400",children:s}),t.jsxs("select",{value:a,onChange:e=>i(e.target.value),className:"w-full mt-1 px-3 py-2 rounded-md bg-slate-800 border border-slate-700",children:[t.jsx("option",{value:"*",children:"* (every)"}),n.map(e=>t.jsx("option",{value:e,children:e},e))]})]}),Nt=()=>{const[s,a]=r.useState("0"),[i,n]=r.useState("0"),[e,d]=r.useState("*"),[l,h]=r.useState("*"),[c,u]=r.useState("*"),x=r.useMemo(()=>`${s} ${i} ${e} ${l} ${c}`,[s,i,e,l,c]);return t.jsxs("div",{className:"h-full flex flex-col p-4 sm:p-6 lg:p-8",children:[t.jsxs("header",{className:"mb-6",children:[t.jsxs("h1",{className:"text-3xl font-bold text-slate-100 flex items-center",children:[t.jsx(g,{}),t.jsx("span",{className:"ml-3",children:"Cron Job Builder"})]}),t.jsx("p",{className:"text-slate-400 mt-1",children:"Visually construct a cron expression for scheduling tasks."})]}),t.jsxs("div",{className:"grid grid-cols-2 md:grid-cols-5 gap-4 mb-6",children:[t.jsx(m,{label:"Minute",value:s,onChange:a,options:Array.from({length:60},(p,o)=>o)}),t.jsx(m,{label:"Hour",value:i,onChange:n,options:Array.from({length:24},(p,o)=>o)}),t.jsx(m,{label:"Day (Month)",value:e,onChange:d,options:Array.from({length:31},(p,o)=>o+1)}),t.jsx(m,{label:"Month",value:l,onChange:h,options:Array.from({length:12},(p,o)=>o+1)}),t.jsx(m,{label:"Day (Week)",value:c,onChange:u,options:Array.from({length:7},(p,o)=>o)})]}),t.jsxs("div",{className:"bg-slate-900 p-4 rounded-lg text-center",children:[t.jsx("p",{className:"text-slate-400 text-sm",children:"Generated Expression"}),t.jsx("p",{className:"font-mono text-cyan-400 text-2xl mt-1",children:x}),t.jsx("button",{onClick:()=>navigator.clipboard.writeText(x),className:"mt-4 px-3 py-1 bg-slate-700 hover:bg-slate-600 rounded-md text-xs",children:"Copy"})]})]})};export{Nt as CronJobBuilder}; | |
| //# sourceMappingURL=CronJobBuilder-BIeiRqkV.js.map | |