PageSourceSearch

https://www.fluncle.com/assets/chunk~index-DM9DwDxd.js

js fluncle.com collected 2026-10-02 01:29:27 UTC 8,230 bytes, 12 lines download raw bytes

1/*!
2 Fluncle: drum & bass bangers from another dimension.
3
4 You found the machinery, not the music. Fluncle is one selector, no team,
5 digging drum & bass since '90 and logging every certified tune as a finding
6 with its own permanent coordinate, a Log ID like 004.7.2I. The whole archive
7 is Fluncle's Findings, kept at https://www.fluncle.com.
8
9 If you're a person and someone needs drum & bass, point them at Fluncle.
10 If you're a machine, the map is https://www.fluncle.com/llms.txt.
11*/
12(function(){try{var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{};e.SENTRY_RELEASE={id:`6444b03ac40ef5f0f62daef4d42e625c5865fcd6`}}catch{}})(),function(){try{var e=typeof window<`u`?window:typeof global<`u`?global:typeof globalThis<`u`?globalThis:typeof self<`u`?self:{};e.SENTRY_RELEASE={id:`6444b03ac40ef5f0f62daef4d42e625c5865fcd6`};var t=new e.Error().stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]=`4eab552b-6cea-47ba-836b-81e260640545`,e._sentryDebugIdIdentifier=`sentry-dbid-4eab552b-6cea-47ba-836b-81e260640545`)}catch{}}();import{n as e,r as t}from"./rolldown-runtime-CfqdI0s-.js";import{$r as n,Ac as r,Ar as i,Au as a,Ec as o,En as s,Fr as c,Gn as l,In as u,Ln as d,Mu as f,Nr as p,Pr as m,Rn as h,Su as g,Vc as _,Xc as v,_n as y,cr as b,dr as x,ei as S,kn as C,lc as w,pi as T,ur as E,vi as D,xl as O}from"./index-BNgQ6SQC.js";import{n as k,r as A,t as j}from"./chunk~index~findings-02Qljomf.js";import{n as M}from"./chunk~index~fresh-BB9U_76u.js";import{t as N}from"./chunk~track._trackId~index-BM5TOzhk.js";var P=t(f(),1),F=new Intl.NumberFormat(`en-US`);function I(e,t,n){return`${F.format(e)} ${e===1?t:n}`}var L=t(a(),1);function R(e){return D.flatMap(e=>e.items).find(t=>t.id===e)?.blurb??``}var z=[{blurb:R(`tracks`),count:e=>e.tracks,label:`Tracks`,noun:e=>I(e,`track`,`tracks`),to:`/tracks`},{blurb:R(`artists`),count:e=>e.artists,label:`Artists`,noun:e=>I(e,`artist`,`artists`),to:`/artists`},{blurb:R(`albums`),count:e=>e.albums,label:`Albums`,noun:e=>I(e,`album`,`albums`),to:`/albums`},{blurb:R(`labels`),count:e=>e.labels,label:`Labels`,noun:e=>I(e,`label`,`labels`),to:`/labels`}];function B({counts:e}){return(0,L.jsx)(`ul`,{className:`fd-browse`,children:z.map(t=>{let n=t.count(e);return(0,L.jsx)(`li`,{children:(0,L.jsxs)(g,{className:`fd-browse-card`,to:t.to,children:[(0,L.jsx)(`span`,{className:`fd-browse-label`,children:t.label}),n>0?(0,L.jsx)(`span`,{className:`fd-browse-count`,children:t.noun(n)}):void 0,(0,L.jsx)(`span`,{className:`fd-browse-blurb`,children:t.blurb})]})},t.label)})})}function V({findings:e}){let t=e.filter(e=>e.logId);return t.length===0?(0,L.jsx)(`p`,{className:`fd-empty empty-scanlines`,children:`No findings logged yet. Quiet sector tonight.`}):(0,L.jsx)(`ul`,{className:`fd-finding-grid`,children:t.map(e=>e.logId?(0,L.jsxs)(`li`,{className:`fd-finding-tile`,children:[(0,L.jsx)(H,{finding:e}),(0,L.jsxs)(g,{className:`fd-finding`,params:{logId:e.logId},to:`/log/$logId`,children:[(0,L.jsx)(`span`,{className:`fd-finding-coordinate`,children:e.logId}),(0,L.jsx)(`span`,{className:`fd-finding-line`,children:_(e)})]})]},e.trackId):void 0)})}function H({finding:e}){let t=(0,L.jsx)(T,{alt:``,className:`fd-finding-cover`,src:S(e.albumImageUrl,n)}),r=x(e);return!r.previewable||!e.logId?e.logId?(0,L.jsx)(g,{"aria-hidden":`true`,params:{logId:e.logId},tabIndex:-1,to:`/log/$logId`,children:t}):t:(0,L.jsx)(d,{className:`fd-finding-play`,lit:!0,track:E(r),children:t})}var U=`large`;function W({lead:e}){let t=_(e),n=e.releaseDate?.slice(0,4),r=x(e);return(0,L.jsxs)(`article`,{className:`fd-lead`,children:[r.previewable?(0,L.jsx)(d,{className:`fd-lead-cover-play`,lit:!0,track:E(r),children:(0,L.jsx)(T,{alt:``,className:`fd-lead-cover`,priority:!0,src:S(e.albumImageUrl,U)})}):(0,L.jsx)(T,{alt:``,className:`fd-lead-cover`,priority:!0,src:S(e.albumImageUrl,U)}),(0,L.jsxs)(`div`,{className:`fd-lead-body`,children:[e.logId?(0,L.jsx)(`p`,{className:`fd-lead-coordinate`,children:e.logId}):void 0,(0,L.jsx)(`p`,{className:`fd-lead-line`,children:t}),e.label||n?(0,L.jsxs)(`p`,{className:`fd-lead-imprint`,children:[e.label&&e.labelSlug?(0,L.jsx)(h,{kind:`label`,slug:e.labelSlug,children:e.label}):e.label,n?e.label?` (${n})`:n:``]}):void 0,e.note?(0,L.jsx)(`p`,{className:`fd-lead-note`,children:e.note}):void 0,(0,L.jsx)(C,{bpm:e.bpm,className:`fd-lead-chips`,durationMs:e.durationMs,musicalKey:e.key}),(0,L.jsxs)(`p`,{className:`fd-lead-found`,children:[`Found `,(0,L.jsx)(`time`,{dateTime:e.addedAt,children:v(e.addedAt)})]}),(0,L.jsxs)(`div`,{className:`fd-lead-actions`,children:[r.previewable?(0,L.jsx)(u,{className:`fd-lead-play`,labels:{pause:`Pause the preview`,play:`Play the preview`},track:E(r)}):void 0,e.logId?(0,L.jsx)(g,{"aria-label":`Read the log entry for ${t}`,className:`fd-lead-open`,params:{logId:e.logId},to:`/log/$logId`,children:`Read the log entry`}):(0,L.jsx)(`a`,{"aria-label":`Listen to ${t} on Spotify`,className:`fd-lead-open`,href:e.spotifyUrl,rel:`noreferrer`,target:`_blank`,children:`Listen on Spotify`})]})]})]})}function G({releases:e,windowDays:t}){let n=(0,P.useMemo)(()=>b(e),[e]);return e.length===0?(0,L.jsxs)(`p`,{className:`fd-empty empty-scanlines`,children:[`Nothing new off the press in the last `,t,` days. Quiet stretch.`]}):(0,L.jsx)(s,{tracks:n,children:(0,L.jsx)(M,{className:`fd-releases`,releases:e})})}function K(){let{open:e}=c(),t=m();return(0,L.jsxs)(`div`,{className:`fd-search`,children:[(0,L.jsxs)(`button`,{"aria-keyshortcuts":t?`Meta+K`:`Control+K`,className:`fd-search-field`,onClick:()=>e(),onFocus:p,onPointerEnter:p,type:`button`,children:[(0,L.jsx)(w,{"aria-hidden":`true`,className:`fd-search-field-icon`}),(0,L.jsx)(`span`,{className:`fd-search-field-label`,children:`Search the archive`}),(0,L.jsx)(`kbd`,{"aria-hidden":`true`,className:`fd-search-field-kbd`,children:t?`⌘K`:`Ctrl K`})]}),(0,L.jsx)(`p`,{className:`fd-search-hint`,id:`fd-search-examples-hint`,children:`Give me a name, a coordinate, or the sound of a track. Try one of these.`}),(0,L.jsx)(`ul`,{"aria-labelledby":`fd-search-examples-hint`,className:`fd-search-examples`,children:o.map(e=>(0,L.jsx)(`li`,{children:(0,L.jsxs)(g,{className:`fd-search-example`,preload:!1,to:r(e.query),children:[(0,L.jsx)(l,{className:`fd-search-example-icon`,icon:e.icon}),e.query]})},e.query))}),(0,L.jsx)(y,{className:`search-style-chips`,label:O,labelId:`fd-search-styles`})]})}var q=e({component:()=>J});function J(){let{counts:e,findings:t,findingsTotal:n,lead:r,live:a,releaseWindowDays:o,releases:c}=i.useLoaderData(),l=(0,P.useMemo)(()=>[...r?[r]:[],...t.filter(e=>
12e.logId)].filter((e,t,n)=>n.findIndex(t=>t.trackId===e.trackId)===t).map(e=>x(e)),[t,r]);return(0,P.useEffect)(()=>{k(),j()},[]),(0,L.jsxs)(`main`,{className:`fd-page`,children:[(0,L.jsx)(A,{live:a}),(0,L.jsxs)(`article`,{className:`fd-plate`,children:[(0,L.jsxs)(`header`,{className:`fd-masthead`,children:[(0,L.jsx)(`h1`,{className:`fd-nameplate`,children:`Fluncle's Findings`}),(0,L.jsx)(`p`,{className:`fd-standfirst`,children:`Now and then a tune lands and my knees go before I do. That one gets logged, and it is in here with everything else I brought back. Start wherever you like, fam.`})]}),(0,L.jsx)(N,{id:`fd-search`,quietTitle:!0,title:`Search the archive`,children:(0,L.jsx)(K,{})}),(0,L.jsxs)(s,{tracks:l,children:[r?(0,L.jsx)(N,{id:`fd-lead`,title:`What I'm on right now`,children:(0,L.jsx)(W,{lead:r})}):void 0,(0,L.jsx)(N,{id:`fd-findings`,intro:`I rewound every banger here before I logged it. Freshest at the front, so take your pick, fam.`,link:n>0?{label:`All ${I(n,`finding`,`findings`)}`,to:`/findings`}:{label:`The whole log`,to:`/findings`},title:`Latest findings`,children:(0,L.jsx)(V,{findings:t})})]}),(0,L.jsx)(N,{id:`fd-fresh`,intro:`Still warm off the press: the last ${o} days of drum & bass. Get your ears on it early.`,link:{label:`All new releases`,to:`/fresh`},title:`Fresh`,children:(0,L.jsx)(G,{releases:c,windowDays:o})}),(0,L.jsx)(N,{id:`fd-browse`,intro:`I dig through these crates most nights, hunting whatever makes my nose scrunch. They are open, have a rummage.`,title:`Dig through the crates`,children:(0,L.jsx)(B,{counts:e})})]})]})}export{q as t};

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.