@tanstack/create 0.68.2 → 0.68.3
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.
- package/CHANGELOG.md +6 -0
- package/dist/edge-add-ons.js +106 -0
- package/dist/edge-config-file.js +15 -0
- package/dist/edge-create-app.js +438 -0
- package/dist/edge-environment.js +141 -0
- package/dist/edge-file-helpers.js +88 -0
- package/dist/edge-frameworks.js +33 -0
- package/dist/edge-package-json.js +146 -0
- package/dist/edge-path.js +62 -0
- package/dist/edge-render.js +31 -0
- package/dist/edge-template-file.js +141 -0
- package/dist/edge.js +7 -0
- package/dist/frameworks/react/add-ons/storybook/info.json +5 -10
- package/dist/generated/create-manifest.js +4683 -0
- package/dist/manifest-types.js +1 -0
- package/dist/manifest.js +1 -0
- package/dist/types/custom-add-ons/add-on.d.ts +5 -3
- package/dist/types/edge-add-ons.d.ts +5 -0
- package/dist/types/edge-config-file.d.ts +8 -0
- package/dist/types/edge-create-app.d.ts +2 -0
- package/dist/types/edge-environment.d.ts +19 -0
- package/dist/types/edge-file-helpers.d.ts +7 -0
- package/dist/types/edge-frameworks.d.ts +7 -0
- package/dist/types/edge-package-json.d.ts +3 -0
- package/dist/types/edge-path.d.ts +5 -0
- package/dist/types/edge-render.d.ts +1 -0
- package/dist/types/edge-template-file.d.ts +2 -0
- package/dist/types/edge.d.ts +9 -0
- package/dist/types/generated/create-manifest.d.ts +36 -0
- package/dist/types/manifest-types.d.ts +4 -0
- package/dist/types/manifest.d.ts +1 -0
- package/dist/types/types.d.ts +96 -56
- package/dist/types.js +5 -3
- package/package.json +25 -5
- package/scripts/generate-manifest.mjs +407 -0
- package/src/edge-add-ons.ts +138 -0
- package/src/edge-config-file.ts +35 -0
- package/src/edge-create-app.ts +594 -0
- package/src/edge-environment.ts +175 -0
- package/src/edge-file-helpers.ts +112 -0
- package/src/edge-frameworks.ts +54 -0
- package/src/edge-package-json.ts +212 -0
- package/src/edge-path.ts +77 -0
- package/src/edge-render.ts +32 -0
- package/src/edge-template-file.ts +204 -0
- package/src/edge.ts +43 -0
- package/src/frameworks/react/add-ons/storybook/info.json +5 -10
- package/src/generated/create-manifest.ts +6490 -0
- package/src/manifest-types.ts +8 -0
- package/src/manifest.ts +1 -0
- package/src/types.ts +5 -3
- package/tests/edge-import.test.ts +31 -0
- package/tests/edge-manifest.test.ts +168 -0
- package/dist/frameworks/react/add-ons/storybook/assets/_dot_storybook/main.ts +0 -17
- package/dist/frameworks/react/add-ons/storybook/assets/_dot_storybook/preview.ts +0 -15
- package/dist/frameworks/react/add-ons/storybook/assets/src/components/storybook/button.stories.ts +0 -67
- package/dist/frameworks/react/add-ons/storybook/assets/src/components/storybook/button.tsx +0 -47
- package/dist/frameworks/react/add-ons/storybook/assets/src/components/storybook/dialog.stories.tsx +0 -92
- package/dist/frameworks/react/add-ons/storybook/assets/src/components/storybook/dialog.tsx +0 -29
- package/dist/frameworks/react/add-ons/storybook/assets/src/components/storybook/index.ts +0 -14
- package/dist/frameworks/react/add-ons/storybook/assets/src/components/storybook/input.stories.ts +0 -43
- package/dist/frameworks/react/add-ons/storybook/assets/src/components/storybook/input.tsx +0 -39
- package/dist/frameworks/react/add-ons/storybook/assets/src/components/storybook/radio-group.stories.ts +0 -53
- package/dist/frameworks/react/add-ons/storybook/assets/src/components/storybook/radio-group.tsx +0 -52
- package/dist/frameworks/react/add-ons/storybook/assets/src/components/storybook/slider.stories.ts +0 -55
- package/dist/frameworks/react/add-ons/storybook/assets/src/components/storybook/slider.tsx +0 -57
- package/dist/frameworks/react/add-ons/storybook/assets/src/routes/demo/storybook.tsx +0 -93
- package/dist/frameworks/react/add-ons/storybook/package.json +0 -10
- package/src/frameworks/react/add-ons/storybook/assets/_dot_storybook/main.ts +0 -17
- package/src/frameworks/react/add-ons/storybook/assets/_dot_storybook/preview.ts +0 -15
- package/src/frameworks/react/add-ons/storybook/assets/src/components/storybook/button.stories.ts +0 -67
- package/src/frameworks/react/add-ons/storybook/assets/src/components/storybook/button.tsx +0 -47
- package/src/frameworks/react/add-ons/storybook/assets/src/components/storybook/dialog.stories.tsx +0 -92
- package/src/frameworks/react/add-ons/storybook/assets/src/components/storybook/dialog.tsx +0 -29
- package/src/frameworks/react/add-ons/storybook/assets/src/components/storybook/index.ts +0 -14
- package/src/frameworks/react/add-ons/storybook/assets/src/components/storybook/input.stories.ts +0 -43
- package/src/frameworks/react/add-ons/storybook/assets/src/components/storybook/input.tsx +0 -39
- package/src/frameworks/react/add-ons/storybook/assets/src/components/storybook/radio-group.stories.ts +0 -53
- package/src/frameworks/react/add-ons/storybook/assets/src/components/storybook/radio-group.tsx +0 -52
- package/src/frameworks/react/add-ons/storybook/assets/src/components/storybook/slider.stories.ts +0 -55
- package/src/frameworks/react/add-ons/storybook/assets/src/components/storybook/slider.tsx +0 -57
- package/src/frameworks/react/add-ons/storybook/assets/src/routes/demo/storybook.tsx +0 -93
- package/src/frameworks/react/add-ons/storybook/package.json +0 -10
package/src/frameworks/react/add-ons/storybook/assets/src/components/storybook/radio-group.tsx
DELETED
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import React from 'react'
|
|
2
|
-
|
|
3
|
-
export interface RadioOption {
|
|
4
|
-
value: string
|
|
5
|
-
label: string
|
|
6
|
-
}
|
|
7
|
-
|
|
8
|
-
export interface RadioGroupProps {
|
|
9
|
-
label: string
|
|
10
|
-
name: string
|
|
11
|
-
options: RadioOption[]
|
|
12
|
-
value?: string
|
|
13
|
-
onChange?: (value: string) => void
|
|
14
|
-
className?: string
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
export const RadioGroup: React.FC<RadioGroupProps> = ({
|
|
18
|
-
label,
|
|
19
|
-
name,
|
|
20
|
-
options,
|
|
21
|
-
value,
|
|
22
|
-
onChange,
|
|
23
|
-
className = '',
|
|
24
|
-
}) => {
|
|
25
|
-
return (
|
|
26
|
-
<div className={`flex flex-col gap-3 ${className}`}>
|
|
27
|
-
<label className="text-sm font-medium text-[var(--sea-ink)]">
|
|
28
|
-
{label}
|
|
29
|
-
</label>
|
|
30
|
-
<div className="flex gap-4">
|
|
31
|
-
{options.map((option) => (
|
|
32
|
-
<label
|
|
33
|
-
key={option.value}
|
|
34
|
-
className="flex items-center gap-2 cursor-pointer group"
|
|
35
|
-
>
|
|
36
|
-
<input
|
|
37
|
-
type="radio"
|
|
38
|
-
name={name}
|
|
39
|
-
value={option.value}
|
|
40
|
-
checked={value === option.value}
|
|
41
|
-
onChange={(e) => onChange?.(e.target.value)}
|
|
42
|
-
className="h-4 w-4 cursor-pointer accent-[var(--lagoon-deep)]"
|
|
43
|
-
/>
|
|
44
|
-
<span className="demo-muted text-sm transition-colors group-hover:text-[var(--sea-ink)]">
|
|
45
|
-
{option.label}
|
|
46
|
-
</span>
|
|
47
|
-
</label>
|
|
48
|
-
))}
|
|
49
|
-
</div>
|
|
50
|
-
</div>
|
|
51
|
-
)
|
|
52
|
-
}
|
package/src/frameworks/react/add-ons/storybook/assets/src/components/storybook/slider.stories.ts
DELETED
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import type { Meta, StoryObj } from "@storybook/react-vite";
|
|
2
|
-
import { fn } from "storybook/test";
|
|
3
|
-
|
|
4
|
-
import { Slider } from "./slider";
|
|
5
|
-
|
|
6
|
-
const meta = {
|
|
7
|
-
title: "Form/Slider",
|
|
8
|
-
component: Slider,
|
|
9
|
-
parameters: {
|
|
10
|
-
layout: "centered",
|
|
11
|
-
},
|
|
12
|
-
tags: ["autodocs"],
|
|
13
|
-
args: { onChange: fn() },
|
|
14
|
-
} satisfies Meta<typeof Slider>;
|
|
15
|
-
|
|
16
|
-
export default meta;
|
|
17
|
-
type Story = StoryObj<typeof meta>;
|
|
18
|
-
|
|
19
|
-
export const Default: Story = {
|
|
20
|
-
args: {
|
|
21
|
-
label: "Volume",
|
|
22
|
-
id: "volume",
|
|
23
|
-
value: 50,
|
|
24
|
-
},
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
export const Skill: Story = {
|
|
28
|
-
args: {
|
|
29
|
-
label: "Plays Guitar",
|
|
30
|
-
id: "guitar",
|
|
31
|
-
value: 75,
|
|
32
|
-
min: 0,
|
|
33
|
-
max: 100,
|
|
34
|
-
},
|
|
35
|
-
};
|
|
36
|
-
|
|
37
|
-
export const NoValue: Story = {
|
|
38
|
-
args: {
|
|
39
|
-
label: "Experience Level",
|
|
40
|
-
id: "experience",
|
|
41
|
-
value: 30,
|
|
42
|
-
showValue: false,
|
|
43
|
-
},
|
|
44
|
-
};
|
|
45
|
-
|
|
46
|
-
export const CustomRange: Story = {
|
|
47
|
-
args: {
|
|
48
|
-
label: "Custom Range",
|
|
49
|
-
id: "custom-range",
|
|
50
|
-
value: 5,
|
|
51
|
-
min: 1,
|
|
52
|
-
max: 20,
|
|
53
|
-
step: 1,
|
|
54
|
-
},
|
|
55
|
-
};
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import React from 'react'
|
|
2
|
-
|
|
3
|
-
export interface SliderProps {
|
|
4
|
-
label: string
|
|
5
|
-
id: string
|
|
6
|
-
value?: number
|
|
7
|
-
onChange?: (value: number) => void
|
|
8
|
-
min?: number
|
|
9
|
-
max?: number
|
|
10
|
-
step?: number
|
|
11
|
-
showValue?: boolean
|
|
12
|
-
className?: string
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
export const Slider: React.FC<SliderProps> = ({
|
|
16
|
-
label,
|
|
17
|
-
id,
|
|
18
|
-
value = 0,
|
|
19
|
-
onChange,
|
|
20
|
-
min = 0,
|
|
21
|
-
max = 100,
|
|
22
|
-
step = 1,
|
|
23
|
-
showValue = true,
|
|
24
|
-
className = '',
|
|
25
|
-
}) => {
|
|
26
|
-
return (
|
|
27
|
-
<div className={`flex flex-col gap-2 ${className}`}>
|
|
28
|
-
<div className="flex justify-between items-center">
|
|
29
|
-
<label
|
|
30
|
-
htmlFor={id}
|
|
31
|
-
className="text-sm font-medium text-[var(--sea-ink)]"
|
|
32
|
-
>
|
|
33
|
-
{label}
|
|
34
|
-
</label>
|
|
35
|
-
{showValue && (
|
|
36
|
-
<span className="min-w-12 text-right text-sm font-semibold text-[var(--lagoon-deep)]">
|
|
37
|
-
{value}
|
|
38
|
-
</span>
|
|
39
|
-
)}
|
|
40
|
-
</div>
|
|
41
|
-
<input
|
|
42
|
-
type="range"
|
|
43
|
-
id={id}
|
|
44
|
-
value={value}
|
|
45
|
-
onChange={(e) => onChange?.(Number(e.target.value))}
|
|
46
|
-
min={min}
|
|
47
|
-
max={max}
|
|
48
|
-
step={step}
|
|
49
|
-
className="h-2 w-full cursor-pointer appearance-none rounded-lg bg-[var(--chip-bg)] accent-[var(--lagoon-deep)]"
|
|
50
|
-
/>
|
|
51
|
-
<div className="demo-muted flex justify-between text-xs">
|
|
52
|
-
<span>{min}</span>
|
|
53
|
-
<span>{max}</span>
|
|
54
|
-
</div>
|
|
55
|
-
</div>
|
|
56
|
-
)
|
|
57
|
-
}
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import { createFileRoute } from '@tanstack/react-router'
|
|
2
|
-
import { useState } from 'react'
|
|
3
|
-
|
|
4
|
-
import { Dialog } from '#/components/storybook/dialog'
|
|
5
|
-
import { Input } from '#/components/storybook/input'
|
|
6
|
-
import { RadioGroup } from '#/components/storybook/radio-group'
|
|
7
|
-
import { Slider } from '#/components/storybook/slider'
|
|
8
|
-
import { Button } from '#/components/storybook/button'
|
|
9
|
-
|
|
10
|
-
export const Route = createFileRoute('/demo/storybook')({
|
|
11
|
-
component: StorybookDemo,
|
|
12
|
-
})
|
|
13
|
-
|
|
14
|
-
function StorybookDemo() {
|
|
15
|
-
const [firstName, setFirstName] = useState('')
|
|
16
|
-
const [lastName, setLastName] = useState('')
|
|
17
|
-
const [employmentType, setEmploymentType] = useState('full-time')
|
|
18
|
-
const [coffeeCups, setCoffeeCups] = useState(3)
|
|
19
|
-
|
|
20
|
-
const handleSubmit = () => {}
|
|
21
|
-
|
|
22
|
-
const handleReset = () => {
|
|
23
|
-
setFirstName('')
|
|
24
|
-
setLastName('')
|
|
25
|
-
setEmploymentType('full-time')
|
|
26
|
-
setCoffeeCups(3)
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
return (
|
|
30
|
-
<main className="demo-page demo-center">
|
|
31
|
-
<div className="w-full max-w-2xl">
|
|
32
|
-
<Dialog
|
|
33
|
-
title="Employee Information Form"
|
|
34
|
-
footer={
|
|
35
|
-
<div className="flex gap-3 justify-end">
|
|
36
|
-
<Button variant="secondary" size="medium" onClick={handleReset}>
|
|
37
|
-
Reset
|
|
38
|
-
</Button>
|
|
39
|
-
<Button
|
|
40
|
-
variant="primary"
|
|
41
|
-
size="medium"
|
|
42
|
-
type="submit"
|
|
43
|
-
onClick={handleSubmit}
|
|
44
|
-
>
|
|
45
|
-
Submit
|
|
46
|
-
</Button>
|
|
47
|
-
</div>
|
|
48
|
-
}
|
|
49
|
-
>
|
|
50
|
-
<form onSubmit={handleSubmit} className="space-y-6">
|
|
51
|
-
<Input
|
|
52
|
-
label="First Name"
|
|
53
|
-
id="firstName"
|
|
54
|
-
value={firstName}
|
|
55
|
-
onChange={setFirstName}
|
|
56
|
-
placeholder="John"
|
|
57
|
-
required
|
|
58
|
-
/>
|
|
59
|
-
|
|
60
|
-
<Input
|
|
61
|
-
label="Last Name"
|
|
62
|
-
id="lastName"
|
|
63
|
-
value={lastName}
|
|
64
|
-
onChange={setLastName}
|
|
65
|
-
placeholder="Doe"
|
|
66
|
-
required
|
|
67
|
-
/>
|
|
68
|
-
|
|
69
|
-
<RadioGroup
|
|
70
|
-
label="Employment Type"
|
|
71
|
-
name="employmentType"
|
|
72
|
-
options={[
|
|
73
|
-
{ value: 'full-time', label: 'Full Time' },
|
|
74
|
-
{ value: 'part-time', label: 'Part Time' },
|
|
75
|
-
]}
|
|
76
|
-
value={employmentType}
|
|
77
|
-
onChange={setEmploymentType}
|
|
78
|
-
/>
|
|
79
|
-
|
|
80
|
-
<Slider
|
|
81
|
-
label="Coffee Cups Per Day"
|
|
82
|
-
id="coffeeCups"
|
|
83
|
-
value={coffeeCups}
|
|
84
|
-
onChange={setCoffeeCups}
|
|
85
|
-
min={0}
|
|
86
|
-
max={10}
|
|
87
|
-
/>
|
|
88
|
-
</form>
|
|
89
|
-
</Dialog>
|
|
90
|
-
</div>
|
|
91
|
-
</main>
|
|
92
|
-
)
|
|
93
|
-
}
|