1const u={stepUsesHeading:"For this step",stepUsesNone:"This step doesn't use anything from the ingredient list.",notMatchedHeading:"Not matched to a step",notMatchedHint:"Use these where the steps say.",stepUsesNoneMatched:"Nothing from the ingredient list is matched to this step.",previous:"Back",next:"Next step",finish:"Finish",finishAndMark:"Finish · mark cooked",finishWithoutMarking:"Finish without marking",markingCooked:"Marking cookedâ¦",cooked:"Cooked. Pantry updated",markCookedFailed:"Couldn't mark it cooked",close:"Close cook mode",recipeIngredients:"Recipe ingredients",allIngredients:"All ingredients",closeIngredients:"Close ingredients",ingredientsHint:"Tick items off as you use them.",allTicked:"Everything is ticked off.",timerFinished:"Timer finished.",timerDone:"Timer finished",pauseTimer:"Pause timer",resumeTimer:"Resume timer",restartTimer:"Restart",steps:"Steps",goToStep:e=>`Go to step ${e}`,keepScreenOn:"Keep screen awake",moreActions:"More actions",used:"used"};function d(e){return`Start ${e} min timer`}function f(e,t){return`Start ${e} minute timer for step ${t}`}function m(e,t,i){const n=`Step ${e+1} of ${t}`;return i==null?n:`${n} · ${s(i)}`}function p(e,t){return e===0?u.allTicked:`${e} of ${t} left to use`}function h(e){return`Marks ${e} cooked and takes what you used out of your pantry.`}function s(e){return`${e} ${e===1?"serving":"servings"}`}function l(e,t){return e.toLowerCase().includes(t)}function c(e){const t=e.original.amount_kind;return t==="to_taste"?"to taste":t==="as_needed"?"as needed":e.original.quantity==null?"(no amount given)":null}function a(e){return e.name==="Prepared earlier"?"what you prepared earlier":`the mixture ${e.name}`}function g(e){const t=c(e),i=e.prepared&&e.draw!=="single",n=e.contributors.length?e.contributors.map(r=>r.label?`${r.label} ${r.name}`:r.name).join(", "):null;return t==null?{amount:e.label,text:i?`of ${a(e)}`:e.name,qualifier:null,contributors:n,reserved:e.reserved}:{amount:null,text:i?a(e).replace(/^the/,"The").replace(/^what/,"What"):e.name,qualifier:!i&&l(e.name,t)?null:t,contributors:n,reserved:e.reserved}}function k(e){return e.scale===1?null:e.instructionServings!=null&&e.effectiveServings!=null?`The steps still give amounts for ${s(e.instructionServings)}. The ingredient lists show amounts for ${e.effectiveServings}.`:`The steps still give the recipe's original amounts. The ingredient lists show them multiplied by ${Math.round(e.scale*100)/100}.`}function v(e){return e.effectiveServings==null?"Every ingredient in this recipe.":`Every ingredient in this recipe, for ${s(e.effectiveServings)}.`}function $(e,t=48){const n=e.trim().replace(/\s+/g," ").split(new RegExp("(?<=[.!?])\\s"))[0];if(n.length<=t)return n.replace(/[.!?]$/,"");const r=n.slice(0,t),o=r.lastIndexOf(" ");return`${(o>t/2?r.slice(0,o):r).replace(/[,;:]$/,"")}â¦`}function T(e,t){const n=(e??"").trim()||t.trim();return n?n.charAt(0).toUpperCase()+n.slice(1):""}export{u as C,f as a,k as b,m as c,$ as d,g as e,T as f,p as i,h as m,v as r,d as s};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.