docs(changeset): Fixed types

This commit is contained in:
Hein 2025-10-21 16:13:02 +02:00
parent c42bc20069
commit 027f08fe9f
12 changed files with 110 additions and 78 deletions

View File

@ -0,0 +1,5 @@
---
'@warkypublic/oranguru': patch
---
Fixed types

47
global.d.ts vendored Normal file
View File

@ -0,0 +1,47 @@
declare module "*.module.css"
declare module '*.png' {
const value: string
export default value
}
declare module '*.jpg' {
const value: string
export default value
}
declare module '*.jpeg' {
const value: string
export default value
}
declare module '*.gif' {
const value: string
export default value
}
declare module '*.svg' {
const value: string
export default value
}
declare module '*.ico' {
const value: string
export default value
}
declare module '*.webp' {
const value: string
export default value
}
declare module '*.bmp' {
const value: string
export default value
}
declare module '*.tiff' {
const value: string
export default value
}
declare module '*.cur' {
const value: string
export default value
}
// Add URL query suffix declarations
declare module '*?url' {
const value: string
export default value
}

View File

@ -37,14 +37,16 @@
"types": "./dist/lib.d.ts",
"default": "./dist/lib.cjs.js"
},
"./package.json": "./package.json"
"./package.json": "./package.json",
"./oranguru.css": "./oranguru.css"
}
},
"exports": {
".": {
"types": "./src/lib.ts",
"default": "./src/lib.ts"
}
},
"./oranguru.css": "./oranguru.css"
},
"dependencies": {
"@glideapps/glide-data-grid": "^6.0.3",

View File

@ -1,2 +0,0 @@
import { type MenuStoreProps } from './Store';
export declare function MantineBetterMenusProvider(props: React.PropsWithChildren<MenuStoreProps>): import("react/jsx-runtime").JSX.Element;

View File

@ -1 +0,0 @@
export declare function MenuRenderer(): import("react/jsx-runtime").JSX.Element;

View File

@ -1,43 +0,0 @@
import { type MenuItemProps, type MenuProps } from '@mantine/core';
import { type ReactNode } from 'react';
export interface MantineBetterMenuInstance {
id: string;
items?: Array<MantineBetterMenuInstanceItem>;
menuProps?: MenuProps;
renderer?: ReactNode;
visible: boolean;
x: number;
y: number;
}
export interface MantineBetterMenuInstanceItem extends Partial<MenuItemProps> {
isDivider?: boolean;
label?: string;
onClick?: (e?: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
onClickAsync?: () => Promise<void>;
renderer?: ((props: MantineBetterMenuInstanceItem & Record<string, unknown>) => ReactNode) | ReactNode;
}
export interface MenuStoreProps {
providerID?: string;
}
export type MenuStoreState = MenuStoreProps & MenuStoreStateOnly;
export interface MenuStoreStateOnly {
hide: (id: string) => void;
menus: Array<MantineBetterMenuInstance>;
setInstanceState: <K extends keyof MantineBetterMenuInstance>(instanceID: string, key: K, value: MantineBetterMenuInstance[K]) => void;
setState: <K extends keyof MenuStoreState>(key: K, value: Partial<MenuStoreState[K]>) => void;
show: (id: string, options?: Partial<MantineBetterMenuInstance>) => void;
}
declare const MantineBetterMenusStoreProvider: (props: {
children: ReactNode;
} & {
firstSyncProps?: string[];
persist?: import("zustand/middleware").PersistOptions<Partial<MenuStoreProps & MenuStoreStateOnly>, Partial<MenuStoreProps & MenuStoreStateOnly>, unknown> | undefined;
} & MenuStoreProps) => React.ReactNode, useMantineBetterMenus: {
(): {
$sync?: ((props: MenuStoreProps) => void) | undefined;
} & MenuStoreProps & MenuStoreStateOnly;
<U>(selector: (state: {
$sync?: ((props: MenuStoreProps) => void) | undefined;
} & MenuStoreProps & MenuStoreStateOnly) => U, equalityFn?: ((a: U, b: U) => boolean) | undefined): U;
};
export { MantineBetterMenusStoreProvider, useMantineBetterMenus };

View File

@ -1,3 +0,0 @@
export { MantineBetterMenusProvider } from './MantineBetterMenu';
export { useMantineBetterMenus } from './Store';
export type { MantineBetterMenuInstance, MantineBetterMenuInstanceItem, MenuStoreState } from './Store';

1
src/lib.d.ts vendored
View File

@ -1 +0,0 @@
export { type MantineBetterMenuInstance, type MantineBetterMenuInstanceItem, MantineBetterMenusProvider, type MenuStoreState, useMantineBetterMenus, } from "./MantineBetterMenu";

View File

@ -1,18 +1,23 @@
{
"compilerOptions": {
"tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",
"target": "ES2022",
"target": "es6",
"useDefineForClassFields": true,
"types": [
"./global.d.ts"
],
"lib": [
"ES2022",
"ES2016",
"ESNext",
"DOM",
"DOM.Iterable"
],
"module": "ESNext",
"skipLibCheck": true,
/* Bundler mode */
"moduleResolution": "bundler",
"moduleResolution": "Node",
"allowImportingTsExtensions": true,
"resolveJsonModule": true,
"verbatimModuleSyntax": true,
"moduleDetection": "force",
"noEmit": true,
@ -22,12 +27,15 @@
/* Linting */
"strict": true,
"noUnusedLocals": true,
"allowSyntheticDefaultImports": true,
"noUnusedParameters": true,
"erasableSyntaxOnly": true,
"noFallthroughCasesInSwitch": true,
"noUncheckedSideEffectImports": true
},
"include": [
"src"
"src",
"lib.ts",
"*.d.ts",
]
}

View File

@ -1,5 +1,14 @@
{
"files": [],
"exclude": [
"public",
"dist",
"./dist",
"*.config.ts",
"node_modules",
"./.storybook",
"vite.config.ts"
],
"references": [
{
"path": "./tsconfig.app.json"

View File

@ -2,17 +2,17 @@
"compilerOptions": {
"tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo",
"target": "ES2023",
"lib": ["ES2023"],
"lib": [
"ES2023"
],
"module": "ESNext",
"skipLibCheck": true,
/* Bundler mode */
"moduleResolution": "bundler",
"allowImportingTsExtensions": true,
"verbatimModuleSyntax": true,
"moduleDetection": "force",
"noEmit": true,
/* Linting */
"strict": true,
"noUnusedLocals": true,
@ -21,5 +21,7 @@
"noFallthroughCasesInSwitch": true,
"noUncheckedSideEffectImports": true
},
"include": ["vite.config.ts"]
"include": [
"vite.config.ts"
]
}

View File

@ -1,35 +1,44 @@
import { defineConfig } from "vite";
import { dirname } from "node:path";
import * as path from "path";
import { fileURLToPath } from "node:url";
import react from "@vitejs/plugin-react-swc";
import { peerDependencies } from "./package.json";
import dts from "vite-plugin-dts";
import { defineConfig } from 'vite';
import { dirname } from 'node:path';
import * as path from 'path';
import { fileURLToPath } from 'node:url';
import react from '@vitejs/plugin-react-swc';
import { peerDependencies } from './package.json';
import dts from 'vite-plugin-dts';
const __dirname = dirname(fileURLToPath(import.meta.url));
// https://vite.dev/config/
export default defineConfig({
plugins: [
dts({
outDir: "dist",
entryRoot: "src",
staticImport: true,
}),
react(),
],
dts({
outDir: 'dist',
entryRoot: 'src',
staticImport: true,
copyDtsFiles: true,
rollupTypes: true,
tsconfigPath: './tsconfig.app.json',
compilerOptions: {
noEmit: false,
emitDeclarationOnly: true,
},
}),
],
publicDir: 'public',
build: {
minify: true,
sourcemap: true,
assetsDir: 'assets',
lib: {
entry: path.resolve(__dirname, "src/lib.ts"),
name: "lib",
formats: ["es", "cjs"],
entry: path.resolve(__dirname, 'src/lib.ts'),
name: 'lib',
formats: ['es', 'cjs'],
fileName: (format) => `lib.${format}.js`,
},
emptyOutDir: true,
outDir: "dist",
outDir: 'dist',
rollupOptions: {
external: Object.keys(peerDependencies),