@uipath/apollo-wind 0.8.0 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/dist/archived-ui-path.svg +3 -0
  2. package/dist/components/ui/index.cjs +10 -10
  3. package/dist/components/ui/input.cjs +1 -1
  4. package/dist/components/ui/input.js +1 -1
  5. package/dist/components/ui/select.cjs +1 -1
  6. package/dist/components/ui/select.js +1 -1
  7. package/dist/components/ui/textarea.cjs +1 -1
  8. package/dist/components/ui/textarea.js +1 -1
  9. package/dist/examples/admin-layout-example.cjs +490 -0
  10. package/dist/examples/admin-layout-example.js +411 -0
  11. package/dist/examples/app-shell-example.cjs +452 -0
  12. package/dist/examples/app-shell-example.js +418 -0
  13. package/dist/examples/dashboard-example.cjs +590 -0
  14. package/dist/examples/dashboard-example.js +556 -0
  15. package/dist/examples/data-management-example.cjs +584 -0
  16. package/dist/examples/data-management-example.js +550 -0
  17. package/dist/examples/flow-editor-layout-example.cjs +309 -0
  18. package/dist/examples/flow-editor-layout-example.js +269 -0
  19. package/dist/examples/flow-start-example.cjs +467 -0
  20. package/dist/examples/flow-start-example.js +433 -0
  21. package/dist/examples/form-builder-example.cjs +674 -0
  22. package/dist/examples/form-builder-example.js +640 -0
  23. package/dist/examples/new-project-example.cjs +550 -0
  24. package/dist/examples/new-project-example.js +516 -0
  25. package/dist/examples/settings-example.cjs +864 -0
  26. package/dist/examples/settings-example.js +830 -0
  27. package/dist/examples/vscode-example.cjs +340 -0
  28. package/dist/examples/vscode-example.js +270 -0
  29. package/dist/templates/admin-layout-example.d.ts +92 -0
  30. package/dist/templates/app-shell-example.d.ts +52 -0
  31. package/dist/templates/dashboard-example.d.ts +11 -0
  32. package/dist/templates/data-management-example.d.ts +1 -0
  33. package/dist/templates/flow-editor-layout-example.d.ts +22 -0
  34. package/dist/templates/flow-start-example.d.ts +30 -0
  35. package/dist/templates/form-builder-example.d.ts +1 -0
  36. package/dist/templates/new-project-example.d.ts +30 -0
  37. package/dist/templates/settings-example.d.ts +1 -0
  38. package/dist/templates/vscode-example.d.ts +80 -0
  39. package/dist/ui-path.svg +11 -0
  40. package/package.json +1 -1
@@ -0,0 +1,550 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, definition)=>{
5
+ for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
6
+ enumerable: true,
7
+ get: definition[key]
8
+ });
9
+ };
10
+ })();
11
+ (()=>{
12
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
13
+ })();
14
+ (()=>{
15
+ __webpack_require__.r = (exports1)=>{
16
+ if ('undefined' != typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
17
+ value: 'Module'
18
+ });
19
+ Object.defineProperty(exports1, '__esModule', {
20
+ value: true
21
+ });
22
+ };
23
+ })();
24
+ var __webpack_exports__ = {};
25
+ __webpack_require__.r(__webpack_exports__);
26
+ __webpack_require__.d(__webpack_exports__, {
27
+ NewProjectExample: ()=>NewProjectExample
28
+ });
29
+ const jsx_runtime_namespaceObject = require("react/jsx-runtime");
30
+ const external_lucide_react_namespaceObject = require("lucide-react");
31
+ const external_react_namespaceObject = require("react");
32
+ const button_cjs_namespaceObject = require("../components/ui/button.cjs");
33
+ const checkbox_cjs_namespaceObject = require("../components/ui/checkbox.cjs");
34
+ const drawer_cjs_namespaceObject = require("../components/ui/drawer.cjs");
35
+ const input_cjs_namespaceObject = require("../components/ui/input.cjs");
36
+ const label_cjs_namespaceObject = require("../components/ui/label.cjs");
37
+ const textarea_cjs_namespaceObject = require("../components/ui/textarea.cjs");
38
+ const index_cjs_namespaceObject = require("../lib/index.cjs");
39
+ const layout_index_cjs_namespaceObject = require("../components/ui/layout/index.cjs");
40
+ function NewProjectExample({ className, title = "Let's create an agentic process", subtitle = 'Design and orchestrate end-to-end processes with AI agents, robots, and people using BPMN-based diagrams.', templates = [
41
+ {
42
+ id: '1',
43
+ name: 'Invoice processing',
44
+ description: 'Automate the end-to-end process of capturing, validating, and approving invoices.',
45
+ usageCount: 3400,
46
+ category: 'financial',
47
+ tools: [
48
+ 'office365',
49
+ 'maestro'
50
+ ]
51
+ },
52
+ {
53
+ id: '2',
54
+ name: 'Loan processing',
55
+ description: 'Optimize the evaluation, approval, and disbursement of loans.',
56
+ usageCount: 1700,
57
+ category: 'financial',
58
+ tools: [
59
+ 'google',
60
+ 'maestro'
61
+ ]
62
+ },
63
+ {
64
+ id: '3',
65
+ name: 'Supplier onboarding',
66
+ description: 'Coordinate the registration, verification, and integration of new suppliers.',
67
+ usageCount: 1200,
68
+ category: 'other',
69
+ tools: [
70
+ 'office365',
71
+ 'maestro'
72
+ ]
73
+ }
74
+ ], categories = [
75
+ {
76
+ id: 'financial',
77
+ label: 'Financial'
78
+ },
79
+ {
80
+ id: 'healthcare',
81
+ label: 'Healthcare'
82
+ },
83
+ {
84
+ id: 'other',
85
+ label: 'Other'
86
+ }
87
+ ], tools = [
88
+ {
89
+ id: 'office365',
90
+ label: 'Office365'
91
+ },
92
+ {
93
+ id: 'jira',
94
+ label: 'Jira'
95
+ },
96
+ {
97
+ id: 'sap-concur',
98
+ label: 'SAP Concur'
99
+ },
100
+ {
101
+ id: 'slack',
102
+ label: 'Slack'
103
+ },
104
+ {
105
+ id: 'docusign',
106
+ label: 'DocuSign'
107
+ }
108
+ ], autopilot, onCreateBlank }) {
109
+ const [autopilotPrompt, setAutopilotPrompt] = external_react_namespaceObject.useState('');
110
+ const [drawerOpen, setDrawerOpen] = external_react_namespaceObject.useState(false);
111
+ const [searchQuery, setSearchQuery] = external_react_namespaceObject.useState('');
112
+ const [selectedCategories, setSelectedCategories] = external_react_namespaceObject.useState([]);
113
+ const [selectedTools, setSelectedTools] = external_react_namespaceObject.useState([]);
114
+ const handleAutopilotSubmit = ()=>{
115
+ if (autopilot?.onSubmit && autopilotPrompt.trim()) autopilot.onSubmit(autopilotPrompt);
116
+ };
117
+ const formatUsageCount = (count)=>{
118
+ if (count >= 1000) return `${(count / 1000).toFixed(1)}k`;
119
+ return count.toString();
120
+ };
121
+ const toggleCategory = (categoryId)=>{
122
+ setSelectedCategories((prev)=>prev.includes(categoryId) ? prev.filter((c)=>c !== categoryId) : [
123
+ ...prev,
124
+ categoryId
125
+ ]);
126
+ };
127
+ const toggleTool = (toolId)=>{
128
+ setSelectedTools((prev)=>prev.includes(toolId) ? prev.filter((t)=>t !== toolId) : [
129
+ ...prev,
130
+ toolId
131
+ ]);
132
+ };
133
+ const filteredExamples = external_react_namespaceObject.useMemo(()=>templates.filter((template)=>{
134
+ const matchesSearch = '' === searchQuery || template.name.toLowerCase().includes(searchQuery.toLowerCase()) || template.description.toLowerCase().includes(searchQuery.toLowerCase());
135
+ const matchesCategory = 0 === selectedCategories.length || template.category && selectedCategories.includes(template.category);
136
+ const matchesTools = 0 === selectedTools.length || template.tools && template.tools.some((tool)=>selectedTools.includes(tool));
137
+ return matchesSearch && matchesCategory && matchesTools;
138
+ }), [
139
+ templates,
140
+ searchQuery,
141
+ selectedCategories,
142
+ selectedTools
143
+ ]);
144
+ const ExampleCard = ({ template })=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(layout_index_cjs_namespaceObject.Column, {
145
+ className: "group rounded-lg border border-border/30 bg-card p-8 transition-all hover:border-border/60 hover:shadow-sm",
146
+ children: [
147
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(layout_index_cjs_namespaceObject.Column, {
148
+ gap: 4,
149
+ flex: 1,
150
+ className: "mb-8",
151
+ children: [
152
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("h3", {
153
+ className: "text-base font-semibold leading-tight",
154
+ children: template.name
155
+ }),
156
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("p", {
157
+ className: "text-sm text-muted-foreground leading-relaxed",
158
+ children: template.description
159
+ }),
160
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(layout_index_cjs_namespaceObject.Row, {
161
+ gap: 1.5,
162
+ align: "center",
163
+ className: "text-xs text-muted-foreground",
164
+ children: [
165
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("svg", {
166
+ className: "h-3.5 w-3.5",
167
+ fill: "none",
168
+ stroke: "currentColor",
169
+ viewBox: "0 0 24 24",
170
+ xmlns: "http://www.w3.org/2000/svg",
171
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("path", {
172
+ strokeLinecap: "round",
173
+ strokeLinejoin: "round",
174
+ strokeWidth: 2,
175
+ d: "M17 20h5v-2a3 3 0 00-5.356-1.857M17 20H7m10 0v-2c0-.656-.126-1.283-.356-1.857M7 20H2v-2a3 3 0 015.356-1.857M7 20v-2c0-.656.126-1.283.356-1.857m0 0a5.002 5.002 0 019.288 0M15 7a3 3 0 11-6 0 3 3 0 016 0zm6 3a2 2 0 11-4 0 2 2 0 014 0zM7 10a2 2 0 11-4 0 2 2 0 014 0z"
176
+ })
177
+ }),
178
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
179
+ children: formatUsageCount(template.usageCount)
180
+ })
181
+ ]
182
+ })
183
+ ]
184
+ }),
185
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(button_cjs_namespaceObject.Button, {
186
+ variant: "outline",
187
+ size: "sm",
188
+ className: "h-9 w-full",
189
+ onClick: template.onUse,
190
+ children: "Use"
191
+ })
192
+ ]
193
+ });
194
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(jsx_runtime_namespaceObject.Fragment, {
195
+ children: [
196
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(layout_index_cjs_namespaceObject.Column, {
197
+ minH: "screen",
198
+ gap: 8,
199
+ className: (0, index_cjs_namespaceObject.cn)('bg-background px-8 py-16 md:px-16 md:py-20', className),
200
+ children: [
201
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
202
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(layout_index_cjs_namespaceObject.Row, {
203
+ justify: "between",
204
+ align: "start",
205
+ gap: 8,
206
+ children: [
207
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(layout_index_cjs_namespaceObject.Column, {
208
+ flex: 1,
209
+ children: [
210
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("h1", {
211
+ className: "text-3xl font-bold tracking-tight",
212
+ children: title
213
+ }),
214
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("p", {
215
+ className: "mt-4 text-base text-muted-foreground",
216
+ children: subtitle
217
+ })
218
+ ]
219
+ }),
220
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(button_cjs_namespaceObject.Button, {
221
+ variant: "link",
222
+ onClick: ()=>setDrawerOpen(true),
223
+ className: "shrink-0",
224
+ children: "Explore templates"
225
+ })
226
+ ]
227
+ })
228
+ }),
229
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(layout_index_cjs_namespaceObject.Grid, {
230
+ gap: 8,
231
+ cols: 1,
232
+ className: "sm:grid-cols-2 lg:grid-cols-4",
233
+ children: [
234
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("button", {
235
+ className: "group flex cursor-pointer flex-col items-center justify-between rounded-lg border border-dashed border-border/40 bg-card p-8 text-center transition-all hover:border-border/70 hover:shadow-sm",
236
+ onClick: onCreateBlank,
237
+ children: [
238
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(layout_index_cjs_namespaceObject.Column, {
239
+ gap: 4,
240
+ w: "full",
241
+ children: [
242
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("h3", {
243
+ className: "text-base font-semibold",
244
+ children: "Blank agentic process"
245
+ }),
246
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("p", {
247
+ className: "text-sm text-muted-foreground",
248
+ children: "Start building without a template."
249
+ })
250
+ ]
251
+ }),
252
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
253
+ className: "mt-8 flex h-20 w-20 items-center justify-center rounded-lg border-2 border-dashed border-border/50",
254
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_lucide_react_namespaceObject.Plus, {
255
+ className: "h-8 w-8 text-primary"
256
+ })
257
+ })
258
+ ]
259
+ }),
260
+ templates.slice(0, 3).map((template)=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(ExampleCard, {
261
+ template: template
262
+ }, template.id))
263
+ ]
264
+ }),
265
+ autopilot && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
266
+ className: "mx-auto w-full max-w-3xl",
267
+ children: [
268
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("h2", {
269
+ className: "mb-6 text-lg font-semibold",
270
+ children: "Autopilot"
271
+ }),
272
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
273
+ className: "rounded-lg border border-border/30 bg-card",
274
+ children: [
275
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
276
+ className: "relative p-6",
277
+ children: [
278
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(textarea_cjs_namespaceObject.Textarea, {
279
+ placeholder: autopilot.placeholder,
280
+ value: autopilotPrompt,
281
+ onChange: (e)=>setAutopilotPrompt(e.target.value),
282
+ className: "min-h-[120px] resize-none border-0 p-0 pb-12 text-sm placeholder:text-muted-foreground/50 focus-visible:ring-0",
283
+ onKeyDown: (e)=>{
284
+ if ('Enter' === e.key && (e.metaKey || e.ctrlKey)) {
285
+ e.preventDefault();
286
+ handleAutopilotSubmit();
287
+ }
288
+ }
289
+ }),
290
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
291
+ className: "absolute bottom-6 left-6 right-6 flex items-center justify-between",
292
+ children: [
293
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(button_cjs_namespaceObject.Button, {
294
+ variant: "ghost",
295
+ size: "icon",
296
+ className: "h-8 w-8",
297
+ onClick: ()=>setAutopilotPrompt(''),
298
+ disabled: !autopilotPrompt,
299
+ "aria-label": "Clear prompt",
300
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_lucide_react_namespaceObject.Plus, {
301
+ className: "h-4 w-4"
302
+ })
303
+ }),
304
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(button_cjs_namespaceObject.Button, {
305
+ variant: "ghost",
306
+ size: "icon",
307
+ className: "h-8 w-8",
308
+ onClick: handleAutopilotSubmit,
309
+ disabled: !autopilotPrompt.trim(),
310
+ "aria-label": "Submit prompt",
311
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_lucide_react_namespaceObject.ArrowUp, {
312
+ className: "h-4 w-4"
313
+ })
314
+ })
315
+ ]
316
+ })
317
+ ]
318
+ }),
319
+ autopilot.disclaimer && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
320
+ className: "border-t border-border/20 px-6 py-3 text-center",
321
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("p", {
322
+ className: "text-xs text-muted-foreground",
323
+ children: autopilot.disclaimer
324
+ })
325
+ })
326
+ ]
327
+ })
328
+ ]
329
+ })
330
+ ]
331
+ }),
332
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(drawer_cjs_namespaceObject.Drawer, {
333
+ open: drawerOpen,
334
+ onOpenChange: setDrawerOpen,
335
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(drawer_cjs_namespaceObject.DrawerContent, {
336
+ className: "max-h-[75vh]",
337
+ children: [
338
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(drawer_cjs_namespaceObject.DrawerHeader, {
339
+ className: "border-b px-4 py-2 md:px-6 md:py-3",
340
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(layout_index_cjs_namespaceObject.Row, {
341
+ justify: "between",
342
+ align: "start",
343
+ children: [
344
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
345
+ children: [
346
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(drawer_cjs_namespaceObject.DrawerTitle, {
347
+ className: "text-base md:text-lg",
348
+ children: "Explore templates"
349
+ }),
350
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(drawer_cjs_namespaceObject.DrawerDescription, {
351
+ className: "text-xs md:text-sm",
352
+ children: "Build, customise and deploy an Agentic Process starting from a template."
353
+ })
354
+ ]
355
+ }),
356
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(drawer_cjs_namespaceObject.DrawerClose, {
357
+ asChild: true,
358
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(button_cjs_namespaceObject.Button, {
359
+ variant: "ghost",
360
+ size: "icon",
361
+ className: "h-7 w-7 md:h-8 md:w-8 shrink-0",
362
+ children: [
363
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_lucide_react_namespaceObject.X, {
364
+ className: "h-3 w-3 md:h-4 md:w-4"
365
+ }),
366
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
367
+ className: "sr-only",
368
+ children: "Close"
369
+ })
370
+ ]
371
+ })
372
+ })
373
+ ]
374
+ })
375
+ }),
376
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(layout_index_cjs_namespaceObject.Row, {
377
+ overflow: "hidden",
378
+ className: "h-[calc(75vh-80px)]",
379
+ children: [
380
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
381
+ className: "hidden w-56 border-r bg-muted/20 p-3 md:block",
382
+ children: [
383
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
384
+ className: "mb-3",
385
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
386
+ className: "relative",
387
+ children: [
388
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_lucide_react_namespaceObject.Search, {
389
+ className: "absolute left-2 top-1/2 h-3 w-3 -translate-y-1/2 text-muted-foreground"
390
+ }),
391
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(input_cjs_namespaceObject.Input, {
392
+ placeholder: "Search",
393
+ value: searchQuery,
394
+ onChange: (e)=>setSearchQuery(e.target.value),
395
+ className: "h-8 pl-7 text-xs"
396
+ })
397
+ ]
398
+ })
399
+ }),
400
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(layout_index_cjs_namespaceObject.Column, {
401
+ gap: 3,
402
+ children: [
403
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
404
+ children: [
405
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(layout_index_cjs_namespaceObject.Row, {
406
+ justify: "between",
407
+ align: "center",
408
+ className: "mb-1.5",
409
+ children: [
410
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("h4", {
411
+ className: "text-xs font-semibold",
412
+ children: "Category"
413
+ }),
414
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(button_cjs_namespaceObject.Button, {
415
+ variant: "ghost",
416
+ size: "sm",
417
+ className: "h-auto p-0 text-[10px]",
418
+ onClick: ()=>setSelectedCategories([]),
419
+ children: "Clear"
420
+ })
421
+ ]
422
+ }),
423
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(layout_index_cjs_namespaceObject.Column, {
424
+ gap: 1.5,
425
+ children: categories.map((category)=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(layout_index_cjs_namespaceObject.Row, {
426
+ gap: 2,
427
+ align: "center",
428
+ children: [
429
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(checkbox_cjs_namespaceObject.Checkbox, {
430
+ id: `category-${category.id}`,
431
+ checked: selectedCategories.includes(category.id),
432
+ onCheckedChange: ()=>toggleCategory(category.id),
433
+ className: "h-3 w-3"
434
+ }),
435
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(label_cjs_namespaceObject.Label, {
436
+ htmlFor: `category-${category.id}`,
437
+ className: "cursor-pointer text-xs font-normal",
438
+ children: category.label
439
+ })
440
+ ]
441
+ }, category.id))
442
+ })
443
+ ]
444
+ }),
445
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
446
+ children: [
447
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(layout_index_cjs_namespaceObject.Row, {
448
+ justify: "between",
449
+ align: "center",
450
+ className: "mb-1.5",
451
+ children: [
452
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("h4", {
453
+ className: "text-xs font-semibold",
454
+ children: "Tool"
455
+ }),
456
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(button_cjs_namespaceObject.Button, {
457
+ variant: "ghost",
458
+ size: "sm",
459
+ className: "h-auto p-0 text-[10px]",
460
+ onClick: ()=>setSelectedTools([]),
461
+ children: "Clear"
462
+ })
463
+ ]
464
+ }),
465
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(layout_index_cjs_namespaceObject.Column, {
466
+ gap: 1.5,
467
+ children: tools.map((tool)=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(layout_index_cjs_namespaceObject.Row, {
468
+ gap: 2,
469
+ align: "center",
470
+ children: [
471
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(checkbox_cjs_namespaceObject.Checkbox, {
472
+ id: `tool-${tool.id}`,
473
+ checked: selectedTools.includes(tool.id),
474
+ onCheckedChange: ()=>toggleTool(tool.id),
475
+ className: "h-3 w-3"
476
+ }),
477
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(label_cjs_namespaceObject.Label, {
478
+ htmlFor: `tool-${tool.id}`,
479
+ className: "cursor-pointer text-xs font-normal",
480
+ children: tool.label
481
+ })
482
+ ]
483
+ }, tool.id))
484
+ })
485
+ ]
486
+ }),
487
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(button_cjs_namespaceObject.Button, {
488
+ variant: "link",
489
+ size: "sm",
490
+ className: "h-auto p-0 text-[10px]",
491
+ children: "Show more"
492
+ })
493
+ ]
494
+ })
495
+ ]
496
+ }),
497
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
498
+ className: "flex-1 overflow-y-auto p-3 md:p-4",
499
+ children: [
500
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
501
+ className: "mb-3 md:hidden",
502
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
503
+ className: "relative",
504
+ children: [
505
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_lucide_react_namespaceObject.Search, {
506
+ className: "absolute left-2 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground"
507
+ }),
508
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(input_cjs_namespaceObject.Input, {
509
+ placeholder: "Search",
510
+ value: searchQuery,
511
+ onChange: (e)=>setSearchQuery(e.target.value),
512
+ className: "pl-8 text-sm"
513
+ })
514
+ ]
515
+ })
516
+ }),
517
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(layout_index_cjs_namespaceObject.Grid, {
518
+ gap: 3,
519
+ cols: 1,
520
+ className: "sm:grid-cols-2 lg:grid-cols-3",
521
+ children: filteredExamples.map((template)=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(ExampleCard, {
522
+ template: template
523
+ }, template.id))
524
+ }),
525
+ 0 === filteredExamples.length && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(layout_index_cjs_namespaceObject.Row, {
526
+ h: 32,
527
+ justify: "center",
528
+ align: "center",
529
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("p", {
530
+ className: "text-sm text-muted-foreground",
531
+ children: "No templates found"
532
+ })
533
+ })
534
+ ]
535
+ })
536
+ ]
537
+ })
538
+ ]
539
+ })
540
+ })
541
+ ]
542
+ });
543
+ }
544
+ exports.NewProjectExample = __webpack_exports__.NewProjectExample;
545
+ for(var __webpack_i__ in __webpack_exports__)if (-1 === [
546
+ "NewProjectExample"
547
+ ].indexOf(__webpack_i__)) exports[__webpack_i__] = __webpack_exports__[__webpack_i__];
548
+ Object.defineProperty(exports, '__esModule', {
549
+ value: true
550
+ });