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/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
+ };