module.exports=[69147,a=>{"use strict";var b=a.i(87924);function c({title:a,description:c,controls:d,output:e}){return(0,b.jsxs)("div",{className:"container mx-auto px-4 py-8 max-w-7xl",children:[(0,b.jsxs)("div",{className:"mb-8",children:[(0,b.jsx)("h1",{className:"text-3xl font-bold tracking-tight text-foreground mb-2",children:a}),(0,b.jsx)("p",{className:"text-muted-foreground",children:c})]}),(0,b.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-8 items-start",children:[(0,b.jsx)("div",{className:"space-y-6",children:(0,b.jsx)("div",{className:"bg-card rounded-2xl border border-border p-6 shadow-sm",children:d})}),(0,b.jsx)("div",{className:"lg:sticky lg:top-24",children:(0,b.jsxs)("div",{className:"space-y-4",children:[(0,b.jsx)("h2",{className:"text-sm font-semibold text-muted-foreground uppercase tracking-wider px-1",children:"Generated Output"}),e]})})]})]})}a.s(["ToolLayout",()=>c])},5151,a=>{"use strict";let b=(0,a.i(70106).default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);a.s(["Copy",()=>b],5151)},33441,a=>{"use strict";let b=(0,a.i(70106).default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);a.s(["Check",()=>b],33441)},87532,a=>{"use strict";let b=(0,a.i(70106).default)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]]);a.s(["Search",()=>b],87532)},97063,a=>{"use strict";let b=(0,a.i(70106).default)("info",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 16v-4",key:"1dtifu"}],["path",{d:"M12 8h.01",key:"e9boi3"}]]);a.s(["Info",()=>b],97063)},25015,a=>{"use strict";let b=(0,a.i(70106).default)("play",[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]]);a.s(["Play",()=>b],25015)},23019,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(69147),e=a.i(62258),f=a.i(87532),g=a.i(52495),h=a.i(53722),i=a.i(80032),j=a.i(53254),k=a.i(8406),l=a.i(97063),m=a.i(25015);let n=[{name:"CustomPaint",category:"Drawing",description:"A widget that provides a canvas on which to draw during the paint phase.",code:`CustomPaint(
  painter: MyPainter(),
  child: Container(
    height: 200,
    width: 200,
  ),
)`,docs:"https://api.flutter.dev/flutter/widgets/CustomPaint-class.html",advanced:!0},{name:"SliverAppBar",category:"Layout",description:"A material design app bar that integrates with a CustomScrollView.",code:`CustomScrollView(
  slivers: [
    SliverAppBar(
      expandedHeight: 200.0,
      floating: false,
      pinned: true,
      flexibleSpace: FlexibleSpaceBar(
        title: Text("SliverAppBar"),
        background: Image.network(
          "https://example.com/image.jpg",
          fit: BoxFit.cover,
        ),
      ),
    ),
    SliverList(
      delegate: SliverChildListDelegate([
        // List items
      ]),
    ),
  ],
)`,docs:"https://api.flutter.dev/flutter/material/SliverAppBar-class.html",advanced:!0},{name:"LayoutBuilder",category:"Responsive",description:"Builds a widget tree that can depend on the parent widget's size.",code:`LayoutBuilder(
  builder: (context, constraints) {
    if (constraints.maxWidth > 600) {
      return _buildWideLayout();
    } else {
      return _buildNarrowLayout();
    }
  },
)`,docs:"https://api.flutter.dev/flutter/widgets/LayoutBuilder-class.html",advanced:!0},{name:"FutureBuilder",category:"Async",description:"Widget that builds itself based on the latest snapshot of interaction with a Future.",code:`FutureBuilder<String>(
  future: _fetchData(),
  builder: (context, snapshot) {
    if (snapshot.connectionState == ConnectionState.waiting) {
      return CircularProgressIndicator();
    } else if (snapshot.hasError) {
      return Text('Error: \${snapshot.error}');
    } else {
      return Text('Result: \${snapshot.data}');
    }
  },
)`,docs:"https://api.flutter.dev/flutter/widgets/FutureBuilder-class.html",advanced:!0},{name:"Hero",category:"Animation",description:"A widget that marks its child as being a candidate for hero animations.",code:`Hero(
  tag: "profile-image",
  child: Image.network("https://example.com/avatar.jpg"),
)`,docs:"https://api.flutter.dev/flutter/widgets/Hero-class.html",advanced:!0},{name:"ReorderableListView",category:"List",description:"A list whose items the user can reorder by drag and drop.",code:`ReorderableListView(
  children: _items.map((item) => ListTile(
    key: Key(item),
    title: Text(item),
  )).toList(),
  onReorder: (oldIndex, newIndex) {
    // Update state
  },
)`,docs:"https://api.flutter.dev/flutter/material/ReorderableListView-class.html",advanced:!0},{name:"DraggableScrollableSheet",category:"Layout",description:"A container for a Scrollable that responds to drag gestures by resizing the scrollable.",code:`DraggableScrollableSheet(
  initialChildSize: 0.3,
  minChildSize: 0.1,
  maxChildSize: 0.8,
  builder: (context, scrollController) {
    return Container(
      color: Colors.blue[100],
      child: ListView.builder(
        controller: scrollController,
        itemCount: 25,
        itemBuilder: (context, index) => ListTile(title: Text('Item $index')),
      ),
    );
  },
)`,docs:"https://api.flutter.dev/flutter/widgets/DraggableScrollableSheet-class.html",advanced:!0},{name:"InteractiveViewer",category:"Interaction",description:"A widget that allows panning and zooming its child.",code:`InteractiveViewer(
  boundaryMargin: EdgeInsets.all(20.0),
  minScale: 0.1,
  maxScale: 1.6,
  child: Image.network("https://example.com/big-image.jpg"),
)`,docs:"https://api.flutter.dev/flutter/widgets/InteractiveViewer-class.html",advanced:!0}];function o(){let[a,o]=(0,c.useState)(n[0]),[p,q]=(0,c.useState)(""),[r,s]=(0,c.useState)("All"),t=["All",...Array.from(new Set(n.map(a=>a.category)))],u=n.filter(a=>("All"===r||a.category===r)&&a.name.toLowerCase().includes(p.toLowerCase()));return(0,b.jsx)(d.ToolLayout,{title:"Advanced Widget Explorer",description:"Deep dive into Flutter's most powerful and complex widgets. Learn when to use them and copy production-ready code examples.",controls:(0,b.jsxs)("div",{className:"space-y-6 h-full flex flex-col",children:[(0,b.jsxs)("div",{className:"relative",children:[(0,b.jsx)(f.Search,{className:"absolute left-4 top-1/2 -translate-y-1/2 w-4 h-4 text-muted-foreground"}),(0,b.jsx)("input",{type:"text",placeholder:"Search widgets...",value:p,onChange:a=>q(a.target.value),className:"w-full pl-12 pr-4 py-3 bg-secondary/30 border border-border rounded-2xl outline-none focus:ring-2 focus:ring-primary"})]}),(0,b.jsx)("div",{className:"flex flex-wrap gap-2",children:t.map(a=>(0,b.jsx)("button",{onClick:()=>s(a),className:`px-4 py-1.5 rounded-full text-[10px] font-bold tracking-widest uppercase transition-all ${r===a?"bg-primary text-white":"bg-card border border-border"}`,children:a},a))}),(0,b.jsx)("div",{className:"flex-1 overflow-y-auto space-y-3 pr-2 custom-scrollbar",children:u.map(c=>(0,b.jsxs)("button",{onClick:()=>o(c),className:`w-full p-4 rounded-2xl text-left border transition-all group ${a.name===c.name?"bg-primary/5 border-primary shadow-lg":"bg-card border-border hover:border-primary/50"}`,children:[(0,b.jsxs)("div",{className:"flex justify-between items-start mb-1",children:[(0,b.jsx)("h3",{className:"font-black text-lg group-hover:text-primary transition-colors",children:c.name}),c.advanced&&(0,b.jsx)(k.Sparkles,{className:"w-4 h-4 text-orange-400"})]}),(0,b.jsx)("p",{className:"text-xs text-muted-foreground line-clamp-1",children:c.description}),(0,b.jsx)("div",{className:"mt-2 flex items-center gap-2",children:(0,b.jsx)("span",{className:"px-2 py-0.5 bg-secondary rounded text-[8px] font-bold text-muted-foreground uppercase",children:c.category})})]},c.name))})]}),output:(0,b.jsxs)("div",{className:"space-y-8 animate-in slide-in-from-right-8 duration-500 h-full flex flex-col",children:[(0,b.jsxs)("div",{className:"flex justify-between items-start",children:[(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{className:"flex items-center gap-3 mb-2",children:[(0,b.jsx)("h2",{className:"text-4xl font-black",children:a.name}),(0,b.jsx)("span",{className:"px-3 py-1 bg-primary/10 text-primary rounded-full text-[10px] font-black uppercase tracking-widest",children:"ADVANCED"})]}),(0,b.jsx)("p",{className:"text-muted-foreground max-w-xl",children:a.description})]}),(0,b.jsx)("div",{className:"flex gap-2",children:(0,b.jsx)("a",{href:a.docs,target:"_blank",className:"p-3 bg-secondary rounded-2xl hover:bg-secondary/80 transition-all text-muted-foreground",children:(0,b.jsx)(g.ExternalLink,{className:"w-5 h-5"})})})]}),(0,b.jsxs)("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6 flex-1 min-h-0",children:[(0,b.jsxs)("div",{className:"flex flex-col h-full space-y-4",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 px-1",children:[(0,b.jsx)(j.Code2,{className:"w-4 h-4 text-primary"}),(0,b.jsx)("span",{className:"text-[10px] font-black uppercase tracking-widest text-muted-foreground",children:"Implementation Template"})]}),(0,b.jsx)("div",{className:"flex-1",children:(0,b.jsx)(e.CodeOutput,{code:a.code,language:"dart"})})]}),(0,b.jsxs)("div",{className:"flex flex-col h-full space-y-4",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2 px-1",children:[(0,b.jsx)(l.Info,{className:"w-4 h-4 text-orange-400"}),(0,b.jsx)("span",{className:"text-[10px] font-black uppercase tracking-widest text-muted-foreground",children:"Developer Notes"})]}),(0,b.jsxs)("div",{className:"flex-1 bg-card border border-border rounded-[2rem] p-8 space-y-6",children:[(0,b.jsxs)("div",{className:"space-y-4",children:[(0,b.jsxs)("h4",{className:"font-bold text-sm flex items-center gap-2",children:[(0,b.jsx)("div",{className:"w-1.5 h-1.5 rounded-full bg-primary"})," Best Practices"]}),(0,b.jsxs)("ul",{className:"text-xs text-muted-foreground space-y-3 pl-4",children:[(0,b.jsxs)("li",{className:"list-disc leading-relaxed",children:["Ensure you manage resources efficiently when using ",(0,b.jsx)("b",{children:a.name}),"."]}),(0,b.jsxs)("li",{className:"list-disc leading-relaxed",children:["Combine with ",(0,b.jsx)("b",{children:"ThemeData"})," to maintain visual consistency across your app."]}),(0,b.jsxs)("li",{className:"list-disc leading-relaxed",children:["Always check the ",(0,b.jsx)("b",{children:"performance impacts"})," when nesting complex drawing widgets."]})]})]}),(0,b.jsxs)("div",{className:"pt-6 border-t border-border",children:[(0,b.jsxs)("h4",{className:"font-bold text-sm flex items-center gap-2 mb-4",children:[(0,b.jsx)(m.Play,{className:"w-4 h-4 text-green-500"})," Visual Preview"]}),(0,b.jsxs)("div",{className:"w-full aspect-video bg-secondary/30 rounded-2xl flex items-center justify-center border border-border group overflow-hidden relative",children:[(0,b.jsx)("div",{className:"absolute inset-0 bg-gradient-to-br from-primary/5 to-transparent"}),(0,b.jsx)(i.Box,{className:"w-12 h-12 text-primary opacity-20 group-hover:scale-110 transition-transform duration-700"}),(0,b.jsx)("span",{className:"absolute bottom-4 text-[10px] font-bold text-muted-foreground italic",children:"Sandbox Preview Environment"})]})]})]})]})]}),(0,b.jsxs)("div",{className:"p-4 bg-primary/5 border border-primary/20 rounded-2xl flex items-center justify-between",children:[(0,b.jsxs)("div",{className:"flex items-center gap-3",children:[(0,b.jsx)(h.BookOpen,{className:"w-5 h-5 text-primary"}),(0,b.jsx)("span",{className:"text-xs font-bold italic",children:"Want to learn more? Check our comprehensive Performance Guide."})]}),(0,b.jsx)("button",{className:"text-[10px] font-black uppercase text-primary tracking-widest hover:underline",children:"Read Guide"})]})]})})}a.s(["default",()=>o])}];

//# sourceMappingURL=_fc0d4f9d._.js.map