regular-calendar 0.0.1
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/LICENSE +21 -0
- package/README.md +337 -0
- package/dist/index.cjs +84 -0
- package/dist/index.css +1 -0
- package/dist/index.d.ts +1467 -0
- package/dist/index.js +19124 -0
- package/package.json +122 -0
- package/tailwind.preset.cjs +154 -0
- package/tailwind.preset.js +154 -0
package/package.json
ADDED
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "regular-calendar",
|
|
3
|
+
"version": "0.0.1",
|
|
4
|
+
"description": "A generic, high-performance facility schedule management component for React. Designed to be domain-agnostic, customizable, and easy to integrate with any backend.",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"keywords": [
|
|
7
|
+
"react",
|
|
8
|
+
"calendar",
|
|
9
|
+
"schedule",
|
|
10
|
+
"scheduler",
|
|
11
|
+
"facility",
|
|
12
|
+
"booking",
|
|
13
|
+
"resource-management",
|
|
14
|
+
"drag-and-drop",
|
|
15
|
+
"typescript"
|
|
16
|
+
],
|
|
17
|
+
"author": "ugnoguchigxp (Yuji Noguchi)",
|
|
18
|
+
"license": "MIT",
|
|
19
|
+
"repository": {
|
|
20
|
+
"type": "git",
|
|
21
|
+
"url": "git+https://github.com/ugnoguchigxp/regular-calendar.git"
|
|
22
|
+
},
|
|
23
|
+
"homepage": "https://wysiwyg-doc.com/",
|
|
24
|
+
"bugs": {
|
|
25
|
+
"url": "https://github.com/ugnoguchigxp/regular-calendar/issues"
|
|
26
|
+
},
|
|
27
|
+
"engines": {
|
|
28
|
+
"node": ">=18.0.0"
|
|
29
|
+
},
|
|
30
|
+
"workspaces": [
|
|
31
|
+
".",
|
|
32
|
+
"examples/*"
|
|
33
|
+
],
|
|
34
|
+
"sideEffects": [
|
|
35
|
+
"*.css"
|
|
36
|
+
],
|
|
37
|
+
"main": "dist/index.cjs",
|
|
38
|
+
"module": "dist/index.js",
|
|
39
|
+
"types": "dist/index.d.ts",
|
|
40
|
+
"exports": {
|
|
41
|
+
".": {
|
|
42
|
+
"types": "./dist/index.d.ts",
|
|
43
|
+
"import": "./dist/index.js",
|
|
44
|
+
"require": "./dist/index.cjs"
|
|
45
|
+
},
|
|
46
|
+
"./styles": "./dist/index.css",
|
|
47
|
+
"./tailwind-preset": {
|
|
48
|
+
"import": "./tailwind.preset.js",
|
|
49
|
+
"require": "./tailwind.preset.cjs"
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
"files": [
|
|
53
|
+
"dist",
|
|
54
|
+
"tailwind.preset.js",
|
|
55
|
+
"tailwind.preset.cjs"
|
|
56
|
+
],
|
|
57
|
+
"scripts": {
|
|
58
|
+
"build": "tsc -p tsconfig.build.json && vite build",
|
|
59
|
+
"type-check": "tsc --noEmit",
|
|
60
|
+
"lint": "biome check .",
|
|
61
|
+
"format": "biome format --write .",
|
|
62
|
+
"test": "vitest --run",
|
|
63
|
+
"test:ui": "vitest --ui",
|
|
64
|
+
"test:run": "vitest run",
|
|
65
|
+
"test:coverage": "vitest run --coverage",
|
|
66
|
+
"prepublishOnly": "npm run test:run && npm run build"
|
|
67
|
+
},
|
|
68
|
+
"peerDependencies": {
|
|
69
|
+
"@gxp/design-system": "*",
|
|
70
|
+
"date-fns": "^3.0.0 || ^4.0.0",
|
|
71
|
+
"i18next": ">= 23.0.0",
|
|
72
|
+
"react": "^18.0.0 || ^19.0.0",
|
|
73
|
+
"react-dom": "^18.0.0 || ^19.0.0",
|
|
74
|
+
"react-i18next": ">= 13.0.0"
|
|
75
|
+
},
|
|
76
|
+
"peerDependenciesMeta": {
|
|
77
|
+
"@gxp/design-system": {
|
|
78
|
+
"optional": true
|
|
79
|
+
}
|
|
80
|
+
},
|
|
81
|
+
"dependencies": {
|
|
82
|
+
"@dnd-kit/core": "^6.3.1",
|
|
83
|
+
"@dnd-kit/modifiers": "^9.0.0",
|
|
84
|
+
"@dnd-kit/sortable": "^10.0.0",
|
|
85
|
+
"@dnd-kit/utilities": "^3.2.2",
|
|
86
|
+
"@hookform/resolvers": "^3.3.4",
|
|
87
|
+
"@radix-ui/react-checkbox": "^1.3.3",
|
|
88
|
+
"@radix-ui/react-dialog": "^1.1.15",
|
|
89
|
+
"@radix-ui/react-popover": "^1.1.15",
|
|
90
|
+
"@radix-ui/react-slot": "^1.2.4",
|
|
91
|
+
"class-variance-authority": "^0.7.1",
|
|
92
|
+
"clsx": "^2.1.1",
|
|
93
|
+
"lucide-react": "^0.562.0",
|
|
94
|
+
"react-day-picker": "^9.13.0",
|
|
95
|
+
"react-hook-form": "^7.51.3",
|
|
96
|
+
"tailwind-merge": "^3.4.0",
|
|
97
|
+
"tailwindcss-animate": "^1.0.7",
|
|
98
|
+
"zod": "^3.22.4"
|
|
99
|
+
},
|
|
100
|
+
"devDependencies": {
|
|
101
|
+
"@biomejs/biome": "^2.3.8",
|
|
102
|
+
"@tailwindcss/postcss": "^4.1.18",
|
|
103
|
+
"@testing-library/dom": "^10.0.0",
|
|
104
|
+
"@testing-library/jest-dom": "^6.9.1",
|
|
105
|
+
"@testing-library/react": "^15.0.0",
|
|
106
|
+
"@testing-library/user-event": "^14.5.2",
|
|
107
|
+
"@types/node": "^24.10.2",
|
|
108
|
+
"@types/react": "^19.2.7",
|
|
109
|
+
"@types/react-dom": "^19.2.3",
|
|
110
|
+
"@vitejs/plugin-react": "^5.1.2",
|
|
111
|
+
"@vitest/coverage-istanbul": "^3.2.4",
|
|
112
|
+
"@vitest/ui": "^3.2.4",
|
|
113
|
+
"autoprefixer": "^10.4.22",
|
|
114
|
+
"jsdom": "^24.0.0",
|
|
115
|
+
"postcss": "^8.5.4",
|
|
116
|
+
"tailwindcss": "^4.1.17",
|
|
117
|
+
"typescript": "^5.9.2",
|
|
118
|
+
"vite": "^7.2.7",
|
|
119
|
+
"vite-plugin-dts": "^4.3.0",
|
|
120
|
+
"vitest": "^3.2.4"
|
|
121
|
+
}
|
|
122
|
+
}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
const tailwindcssAnimate = require("tailwindcss-animate");
|
|
2
|
+
|
|
3
|
+
module.exports = {
|
|
4
|
+
darkMode: "class",
|
|
5
|
+
content: ["./index.html", "./src/**/*.{js,ts,jsx,tsx}"],
|
|
6
|
+
theme: {
|
|
7
|
+
extend: {
|
|
8
|
+
fontFamily: {
|
|
9
|
+
sans: ['"メイリオ"', "Helvetica", "sans-serif"],
|
|
10
|
+
},
|
|
11
|
+
colors: {
|
|
12
|
+
border: "hsl(var(--border))",
|
|
13
|
+
input: "hsl(var(--input))",
|
|
14
|
+
ring: "hsl(var(--ring))",
|
|
15
|
+
background: "hsl(var(--background))",
|
|
16
|
+
foreground: "hsl(var(--foreground))",
|
|
17
|
+
primary: {
|
|
18
|
+
DEFAULT: "hsl(var(--primary))",
|
|
19
|
+
foreground: "hsl(var(--primary-foreground))",
|
|
20
|
+
dark: "#003366",
|
|
21
|
+
text: "#BBBBBB",
|
|
22
|
+
},
|
|
23
|
+
secondary: {
|
|
24
|
+
DEFAULT: "hsl(var(--secondary))",
|
|
25
|
+
foreground: "hsl(var(--secondary-foreground))",
|
|
26
|
+
text: "#222222",
|
|
27
|
+
},
|
|
28
|
+
destructive: {
|
|
29
|
+
DEFAULT: "hsl(var(--destructive))",
|
|
30
|
+
foreground: "hsl(var(--destructive-foreground))",
|
|
31
|
+
},
|
|
32
|
+
muted: {
|
|
33
|
+
DEFAULT: "hsl(var(--muted))",
|
|
34
|
+
foreground: "hsl(var(--muted-foreground))",
|
|
35
|
+
},
|
|
36
|
+
accent: {
|
|
37
|
+
DEFAULT: "hsl(var(--accent))",
|
|
38
|
+
foreground: "hsl(var(--accent-foreground))",
|
|
39
|
+
contrast: "#FFFFFF",
|
|
40
|
+
},
|
|
41
|
+
popover: {
|
|
42
|
+
DEFAULT: "hsl(var(--popover))",
|
|
43
|
+
foreground: "hsl(var(--popover-foreground))",
|
|
44
|
+
},
|
|
45
|
+
card: {
|
|
46
|
+
DEFAULT: "hsl(var(--card))",
|
|
47
|
+
foreground: "hsl(var(--card-foreground))",
|
|
48
|
+
},
|
|
49
|
+
warning: {
|
|
50
|
+
DEFAULT: "hsl(var(--warning))",
|
|
51
|
+
foreground: "hsl(var(--warning-foreground))",
|
|
52
|
+
},
|
|
53
|
+
success: {
|
|
54
|
+
DEFAULT: "hsl(var(--success))",
|
|
55
|
+
foreground: "hsl(var(--success-foreground))",
|
|
56
|
+
},
|
|
57
|
+
danger: {
|
|
58
|
+
DEFAULT: "#EF5555",
|
|
59
|
+
text: "#000000",
|
|
60
|
+
},
|
|
61
|
+
neutral: {
|
|
62
|
+
DEFAULT: "#9CA3AF",
|
|
63
|
+
text: "#4B5563",
|
|
64
|
+
},
|
|
65
|
+
info: {
|
|
66
|
+
DEFAULT: "#FFFFFF",
|
|
67
|
+
text: "#000000",
|
|
68
|
+
},
|
|
69
|
+
sidebar: {
|
|
70
|
+
DEFAULT: "hsl(var(--sidebar-background))",
|
|
71
|
+
foreground: "hsl(var(--sidebar-foreground))",
|
|
72
|
+
primary: "hsl(var(--sidebar-primary))",
|
|
73
|
+
"primary-foreground": "hsl(var(--sidebar-primary-foreground))",
|
|
74
|
+
accent: "hsl(var(--sidebar-accent))",
|
|
75
|
+
"accent-foreground": "hsl(var(--sidebar-accent-foreground))",
|
|
76
|
+
border: "hsl(var(--sidebar-border))",
|
|
77
|
+
ring: "hsl(var(--sidebar-ring))",
|
|
78
|
+
},
|
|
79
|
+
chart: {
|
|
80
|
+
1: "hsl(var(--chart-1))",
|
|
81
|
+
2: "hsl(var(--chart-2))",
|
|
82
|
+
3: "hsl(var(--chart-3))",
|
|
83
|
+
4: "hsl(var(--chart-4))",
|
|
84
|
+
5: "hsl(var(--chart-5))",
|
|
85
|
+
},
|
|
86
|
+
},
|
|
87
|
+
borderRadius: {
|
|
88
|
+
lg: "var(--radius)",
|
|
89
|
+
md: "max(0px, calc(var(--radius) - 2px))",
|
|
90
|
+
sm: "max(0px, calc(var(--radius) - 4px))",
|
|
91
|
+
},
|
|
92
|
+
keyframes: {
|
|
93
|
+
"accordion-down": {
|
|
94
|
+
from: { height: "0" },
|
|
95
|
+
to: { height: "var(--radix-accordion-content-height)" },
|
|
96
|
+
},
|
|
97
|
+
"accordion-up": {
|
|
98
|
+
from: { height: "var(--radix-accordion-content-height)" },
|
|
99
|
+
to: { height: "0" },
|
|
100
|
+
},
|
|
101
|
+
"progress-stripes": {
|
|
102
|
+
"0%": { backgroundPosition: "1rem 0" },
|
|
103
|
+
"100%": { backgroundPosition: "0 0" },
|
|
104
|
+
},
|
|
105
|
+
},
|
|
106
|
+
animation: {
|
|
107
|
+
"accordion-down": "accordion-down 0.2s ease-out",
|
|
108
|
+
"accordion-up": "accordion-up 0.2s ease-out",
|
|
109
|
+
"progress-stripes": "progress-stripes 1s linear infinite",
|
|
110
|
+
},
|
|
111
|
+
height: {
|
|
112
|
+
ui: "var(--ui-component-height)",
|
|
113
|
+
},
|
|
114
|
+
width: {
|
|
115
|
+
ui: "var(--ui-component-height)",
|
|
116
|
+
},
|
|
117
|
+
minHeight: {
|
|
118
|
+
"ui-touch": "var(--ui-touch-target-min)",
|
|
119
|
+
},
|
|
120
|
+
minWidth: {
|
|
121
|
+
"ui-touch": "var(--ui-touch-target-min)",
|
|
122
|
+
},
|
|
123
|
+
padding: {
|
|
124
|
+
ui: "var(--ui-component-padding-x)",
|
|
125
|
+
"ui-x": "var(--ui-component-padding-x)",
|
|
126
|
+
"ui-y": "var(--ui-component-padding-y)",
|
|
127
|
+
"ui-button": "var(--ui-button-padding-x)",
|
|
128
|
+
"ui-button-x": "var(--ui-component-padding-x)",
|
|
129
|
+
"ui-button-y": "var(--ui-button-padding-y)",
|
|
130
|
+
"ui-cell": "var(--ui-table-cell-padding)",
|
|
131
|
+
},
|
|
132
|
+
gap: {
|
|
133
|
+
ui: "var(--ui-gap-base)",
|
|
134
|
+
},
|
|
135
|
+
fontSize: {
|
|
136
|
+
xs: "0.75rem",
|
|
137
|
+
sm: "0.875rem",
|
|
138
|
+
base: "1rem",
|
|
139
|
+
lg: "1.125rem",
|
|
140
|
+
xl: "1.25rem",
|
|
141
|
+
"2xl": "1.5rem",
|
|
142
|
+
"3xl": "1.875rem",
|
|
143
|
+
"4xl": "2.25rem",
|
|
144
|
+
"5xl": "3rem",
|
|
145
|
+
"6xl": "3.75rem",
|
|
146
|
+
"7xl": "4.5rem",
|
|
147
|
+
"8xl": "6rem",
|
|
148
|
+
"9xl": "8rem",
|
|
149
|
+
ui: ["var(--ui-font-size-base)", { lineHeight: "1.5" }],
|
|
150
|
+
},
|
|
151
|
+
},
|
|
152
|
+
},
|
|
153
|
+
plugins: [tailwindcssAnimate],
|
|
154
|
+
};
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import tailwindcssAnimate from "tailwindcss-animate";
|
|
2
|
+
|
|
3
|
+
export default {
|
|
4
|
+
darkMode: "class",
|
|
5
|
+
content: ["./index.html", "./src/**/*.{js,ts,jsx,tsx}"],
|
|
6
|
+
theme: {
|
|
7
|
+
extend: {
|
|
8
|
+
fontFamily: {
|
|
9
|
+
sans: ['"メイリオ"', "Helvetica", "sans-serif"],
|
|
10
|
+
},
|
|
11
|
+
colors: {
|
|
12
|
+
border: "hsl(var(--border))",
|
|
13
|
+
input: "hsl(var(--input))",
|
|
14
|
+
ring: "hsl(var(--ring))",
|
|
15
|
+
background: "hsl(var(--background))",
|
|
16
|
+
foreground: "hsl(var(--foreground))",
|
|
17
|
+
primary: {
|
|
18
|
+
DEFAULT: "hsl(var(--primary))",
|
|
19
|
+
foreground: "hsl(var(--primary-foreground))",
|
|
20
|
+
dark: "#003366",
|
|
21
|
+
text: "#BBBBBB",
|
|
22
|
+
},
|
|
23
|
+
secondary: {
|
|
24
|
+
DEFAULT: "hsl(var(--secondary))",
|
|
25
|
+
foreground: "hsl(var(--secondary-foreground))",
|
|
26
|
+
text: "#222222",
|
|
27
|
+
},
|
|
28
|
+
destructive: {
|
|
29
|
+
DEFAULT: "hsl(var(--destructive))",
|
|
30
|
+
foreground: "hsl(var(--destructive-foreground))",
|
|
31
|
+
},
|
|
32
|
+
muted: {
|
|
33
|
+
DEFAULT: "hsl(var(--muted))",
|
|
34
|
+
foreground: "hsl(var(--muted-foreground))",
|
|
35
|
+
},
|
|
36
|
+
accent: {
|
|
37
|
+
DEFAULT: "hsl(var(--accent))",
|
|
38
|
+
foreground: "hsl(var(--accent-foreground))",
|
|
39
|
+
contrast: "#FFFFFF",
|
|
40
|
+
},
|
|
41
|
+
popover: {
|
|
42
|
+
DEFAULT: "hsl(var(--popover))",
|
|
43
|
+
foreground: "hsl(var(--popover-foreground))",
|
|
44
|
+
},
|
|
45
|
+
card: {
|
|
46
|
+
DEFAULT: "hsl(var(--card))",
|
|
47
|
+
foreground: "hsl(var(--card-foreground))",
|
|
48
|
+
},
|
|
49
|
+
warning: {
|
|
50
|
+
DEFAULT: "hsl(var(--warning))",
|
|
51
|
+
foreground: "hsl(var(--warning-foreground))",
|
|
52
|
+
},
|
|
53
|
+
success: {
|
|
54
|
+
DEFAULT: "hsl(var(--success))",
|
|
55
|
+
foreground: "hsl(var(--success-foreground))",
|
|
56
|
+
},
|
|
57
|
+
danger: {
|
|
58
|
+
DEFAULT: "#EF5555",
|
|
59
|
+
text: "#000000",
|
|
60
|
+
},
|
|
61
|
+
neutral: {
|
|
62
|
+
DEFAULT: "#9CA3AF",
|
|
63
|
+
text: "#4B5563",
|
|
64
|
+
},
|
|
65
|
+
info: {
|
|
66
|
+
DEFAULT: "#FFFFFF",
|
|
67
|
+
text: "#000000",
|
|
68
|
+
},
|
|
69
|
+
sidebar: {
|
|
70
|
+
DEFAULT: "hsl(var(--sidebar-background))",
|
|
71
|
+
foreground: "hsl(var(--sidebar-foreground))",
|
|
72
|
+
primary: "hsl(var(--sidebar-primary))",
|
|
73
|
+
"primary-foreground": "hsl(var(--sidebar-primary-foreground))",
|
|
74
|
+
accent: "hsl(var(--sidebar-accent))",
|
|
75
|
+
"accent-foreground": "hsl(var(--sidebar-accent-foreground))",
|
|
76
|
+
border: "hsl(var(--sidebar-border))",
|
|
77
|
+
ring: "hsl(var(--sidebar-ring))",
|
|
78
|
+
},
|
|
79
|
+
chart: {
|
|
80
|
+
1: "hsl(var(--chart-1))",
|
|
81
|
+
2: "hsl(var(--chart-2))",
|
|
82
|
+
3: "hsl(var(--chart-3))",
|
|
83
|
+
4: "hsl(var(--chart-4))",
|
|
84
|
+
5: "hsl(var(--chart-5))",
|
|
85
|
+
},
|
|
86
|
+
},
|
|
87
|
+
borderRadius: {
|
|
88
|
+
lg: "var(--radius)",
|
|
89
|
+
md: "max(0px, calc(var(--radius) - 2px))",
|
|
90
|
+
sm: "max(0px, calc(var(--radius) - 4px))",
|
|
91
|
+
},
|
|
92
|
+
keyframes: {
|
|
93
|
+
"accordion-down": {
|
|
94
|
+
from: { height: "0" },
|
|
95
|
+
to: { height: "var(--radix-accordion-content-height)" },
|
|
96
|
+
},
|
|
97
|
+
"accordion-up": {
|
|
98
|
+
from: { height: "var(--radix-accordion-content-height)" },
|
|
99
|
+
to: { height: "0" },
|
|
100
|
+
},
|
|
101
|
+
"progress-stripes": {
|
|
102
|
+
"0%": { backgroundPosition: "1rem 0" },
|
|
103
|
+
"100%": { backgroundPosition: "0 0" },
|
|
104
|
+
},
|
|
105
|
+
},
|
|
106
|
+
animation: {
|
|
107
|
+
"accordion-down": "accordion-down 0.2s ease-out",
|
|
108
|
+
"accordion-up": "accordion-up 0.2s ease-out",
|
|
109
|
+
"progress-stripes": "progress-stripes 1s linear infinite",
|
|
110
|
+
},
|
|
111
|
+
height: {
|
|
112
|
+
ui: "var(--ui-component-height)",
|
|
113
|
+
},
|
|
114
|
+
width: {
|
|
115
|
+
ui: "var(--ui-component-height)",
|
|
116
|
+
},
|
|
117
|
+
minHeight: {
|
|
118
|
+
"ui-touch": "var(--ui-touch-target-min)",
|
|
119
|
+
},
|
|
120
|
+
minWidth: {
|
|
121
|
+
"ui-touch": "var(--ui-touch-target-min)",
|
|
122
|
+
},
|
|
123
|
+
padding: {
|
|
124
|
+
ui: "var(--ui-component-padding-x)",
|
|
125
|
+
"ui-x": "var(--ui-component-padding-x)",
|
|
126
|
+
"ui-y": "var(--ui-component-padding-y)",
|
|
127
|
+
"ui-button": "var(--ui-button-padding-x)",
|
|
128
|
+
"ui-button-x": "var(--ui-button-padding-x)",
|
|
129
|
+
"ui-button-y": "var(--ui-button-padding-y)",
|
|
130
|
+
"ui-cell": "var(--ui-table-cell-padding)",
|
|
131
|
+
},
|
|
132
|
+
gap: {
|
|
133
|
+
ui: "var(--ui-gap-base)",
|
|
134
|
+
},
|
|
135
|
+
fontSize: {
|
|
136
|
+
xs: "0.75rem",
|
|
137
|
+
sm: "0.875rem",
|
|
138
|
+
base: "1rem",
|
|
139
|
+
lg: "1.125rem",
|
|
140
|
+
xl: "1.25rem",
|
|
141
|
+
"2xl": "1.5rem",
|
|
142
|
+
"3xl": "1.875rem",
|
|
143
|
+
"4xl": "2.25rem",
|
|
144
|
+
"5xl": "3rem",
|
|
145
|
+
"6xl": "3.75rem",
|
|
146
|
+
"7xl": "4.5rem",
|
|
147
|
+
"8xl": "6rem",
|
|
148
|
+
"9xl": "8rem",
|
|
149
|
+
ui: ["var(--ui-font-size-base)", { lineHeight: "1.5" }],
|
|
150
|
+
},
|
|
151
|
+
},
|
|
152
|
+
},
|
|
153
|
+
plugins: [tailwindcssAnimate],
|
|
154
|
+
};
|