Schedule posts to Bluesky with Cloudflare workers. skyscheduler.work
cf tool bsky-tool cloudflare bluesky schedule bsky service social-media cloudflare-workers

make this ui look better on mobile

woof

+17 -6
+11
assets/css/stylesheet.css
··· 16 16 } 17 17 18 18 .repostScheduleSimple { 19 + display: inherit !important; 20 + text-align: center; 19 21 select { 20 22 width: 10%; 21 23 height: 50px; ··· 25 27 } 26 28 } 27 29 30 + .pico #posts blockquote { 31 + margin: 0 !important; 32 + padding: 0 !important; 33 + } 34 + 28 35 .dz-filename, .truncate { 29 36 width: 80%; 30 37 white-space: nowrap; ··· 34 41 35 42 .postText { 36 43 white-space: pre-wrap; 44 + } 45 + 46 + .checkboxLine { 47 + width: unset !important; 37 48 } 38 49 39 50 .btn-error, .pico .btn-error {
+3 -3
src/layout/options/retweetOptions.tsx
··· 16 16 return ( 17 17 <section> 18 18 <input class="autoRepostBox" type="checkbox" id={props.id} hidden={props.hidden} startchecked={props.checked} /> 19 - <label hidden={props.hidden} class="noselect" for={props.id}>{checkboxLabel}</label> 20 - <center class="repostScheduleSimple"> 19 + <label hidden={props.hidden} class="noselect checkboxLine" for={props.id}>{checkboxLabel}</label> 20 + <fieldset class="repostScheduleSimple"> 21 21 Automatically repost this {props.contentType || "content"} every 22 22 <select disabled> 23 23 {[...Array(MAX_REPOST_IN_HOURS)].map((x, i) => { ··· 32 32 return (<option value={i}>{i}</option>); 33 33 })} 34 34 </select> times from {repostedFrom}. 35 - </center> 35 + </fieldset> 36 36 </section> 37 37 ); 38 38 }
+3 -3
src/layout/options/scheduleOptions.tsx
··· 13 13 const headerText = hasHeader ? props.header : ""; 14 14 15 15 const postNowHTML = (props.allowNow) ? 16 - (<> 16 + (<div> 17 17 <input class="postNow" type="checkbox" id={props.checkboxID} /> 18 - <label class="noselect capitialize" for={props.checkboxID}>Make {props.type} Now?</label> 19 - </>) : null; 18 + <label class="noselect capitialize checkboxLine" for={props.checkboxID}>Make {props.type} Now?</label> 19 + </div>) : null; 20 20 21 21 return ( 22 22 <section class="scheduledDateBlock">