@admin-layout/tailwind-ui 12.2.1-alpha.0 → 12.2.1-alpha.4

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.
@@ -0,0 +1,11 @@
1
+ import * as React from 'react';
2
+ /**
3
+ * Remix Route ErrorBoundary Component
4
+ * This is specifically for Remix route errors (404s, loader errors, etc.)
5
+ * Different from React's ErrorBoundary which handles component errors
6
+ *
7
+ * Usage in root.tsx or any route file:
8
+ * export { RemixErrorBoundary as ErrorBoundary } from '@admin-layout/tailwind-ui';
9
+ */
10
+ export declare function RemixErrorBoundary(): React.JSX.Element;
11
+ //# sourceMappingURL=RemixErrorBoundary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RemixErrorBoundary.d.ts","sourceRoot":"","sources":["../../../src/components/ErrorHandlers/RemixErrorBoundary.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,sBA0HjC"}
@@ -0,0 +1,119 @@
1
+ import*as React from'react';import {useRouteError,useNavigate,isRouteErrorResponse}from'@remix-run/react';import {logger}from'@cdm-logger/client';/**
2
+ * Remix Route ErrorBoundary Component
3
+ * This is specifically for Remix route errors (404s, loader errors, etc.)
4
+ * Different from React's ErrorBoundary which handles component errors
5
+ *
6
+ * Usage in root.tsx or any route file:
7
+ * export { RemixErrorBoundary as ErrorBoundary } from '@admin-layout/tailwind-ui';
8
+ */
9
+ function RemixErrorBoundary() {
10
+ const error = useRouteError();
11
+ const navigate = useNavigate();
12
+ React.useEffect(() => {
13
+ logger.error('Route Error:', error);
14
+ console.error('Route Error:', error);
15
+ }, [error]);
16
+ const handleGoHome = () => {
17
+ navigate('/');
18
+ // Reload to clear any stale state
19
+ window.location.reload();
20
+ };
21
+ if (isRouteErrorResponse(error)) {
22
+ return React.createElement("div", {
23
+ className: "flex min-h-screen items-center justify-center bg-gray-50 px-4 py-12 sm:px-6 lg:px-8"
24
+ }, React.createElement("div", {
25
+ className: "w-full max-w-md space-y-8 text-center"
26
+ }, React.createElement("div", {
27
+ className: "mb-4 flex justify-center"
28
+ }, React.createElement("div", {
29
+ className: "flex h-16 w-16 items-center justify-center rounded-full bg-red-100"
30
+ }, React.createElement("svg", {
31
+ className: "h-8 w-8 text-red-500",
32
+ fill: "none",
33
+ viewBox: "0 0 24 24",
34
+ stroke: "currentColor"
35
+ }, React.createElement("path", {
36
+ strokeLinecap: "round",
37
+ strokeLinejoin: "round",
38
+ strokeWidth: 2,
39
+ d: "M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"
40
+ })))), React.createElement("div", null, React.createElement("h1", {
41
+ className: "text-6xl font-bold text-gray-900"
42
+ }, error.status), React.createElement("h2", {
43
+ className: "mt-2 text-2xl font-bold tracking-tight text-gray-900"
44
+ }, error.statusText), error.data && React.createElement("p", {
45
+ className: "mt-2 text-sm text-gray-600"
46
+ }, error.data)), React.createElement("div", {
47
+ className: "mt-6"
48
+ }, React.createElement("button", {
49
+ onClick: handleGoHome,
50
+ className: "inline-flex items-center rounded-md bg-blue-600 px-4 py-2 text-sm font-medium text-white hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 transition-colors"
51
+ }, "Go back home"))));
52
+ } else if (error instanceof Error) {
53
+ return React.createElement("div", {
54
+ className: "flex min-h-screen items-center justify-center bg-gray-50 px-4 py-12 sm:px-6 lg:px-8"
55
+ }, React.createElement("div", {
56
+ className: "w-full max-w-2xl space-y-8"
57
+ }, React.createElement("div", {
58
+ className: "mb-4 flex justify-center"
59
+ }, React.createElement("div", {
60
+ className: "flex h-16 w-16 items-center justify-center rounded-full bg-red-100"
61
+ }, React.createElement("svg", {
62
+ className: "h-8 w-8 text-red-500",
63
+ fill: "none",
64
+ viewBox: "0 0 24 24",
65
+ stroke: "currentColor"
66
+ }, React.createElement("path", {
67
+ strokeLinecap: "round",
68
+ strokeLinejoin: "round",
69
+ strokeWidth: 2,
70
+ d: "M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
71
+ })))), React.createElement("div", {
72
+ className: "text-center"
73
+ }, React.createElement("h1", {
74
+ className: "text-3xl font-bold tracking-tight text-gray-900"
75
+ }, "Application Error"), React.createElement("p", {
76
+ className: "mt-2 text-lg text-red-600"
77
+ }, error.message), error.stack && process.env.NODE_ENV !== 'production' && React.createElement("details", {
78
+ className: "mt-4 text-left"
79
+ }, React.createElement("summary", {
80
+ className: "cursor-pointer text-sm font-medium text-gray-700 hover:text-gray-900"
81
+ }, "Stack trace (development only)"), React.createElement("pre", {
82
+ className: "mt-2 overflow-auto rounded-md bg-gray-100 p-4 text-xs text-gray-800 max-h-96"
83
+ }, error.stack))), React.createElement("div", {
84
+ className: "mt-6 text-center"
85
+ }, React.createElement("button", {
86
+ onClick: handleGoHome,
87
+ className: "inline-flex items-center rounded-md bg-blue-600 px-4 py-2 text-sm font-medium text-white hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 transition-colors"
88
+ }, "Go back home"))));
89
+ } else {
90
+ return React.createElement("div", {
91
+ className: "flex min-h-screen items-center justify-center bg-gray-50 px-4 py-12 sm:px-6 lg:px-8"
92
+ }, React.createElement("div", {
93
+ className: "w-full max-w-md space-y-8 text-center"
94
+ }, React.createElement("div", {
95
+ className: "mb-4 flex justify-center"
96
+ }, React.createElement("div", {
97
+ className: "flex h-16 w-16 items-center justify-center rounded-full bg-red-100"
98
+ }, React.createElement("svg", {
99
+ className: "h-8 w-8 text-red-500",
100
+ fill: "none",
101
+ viewBox: "0 0 24 24",
102
+ stroke: "currentColor"
103
+ }, React.createElement("path", {
104
+ strokeLinecap: "round",
105
+ strokeLinejoin: "round",
106
+ strokeWidth: 2,
107
+ d: "M6 18L18 6M6 6l12 12"
108
+ })))), React.createElement("div", null, React.createElement("h1", {
109
+ className: "text-3xl font-bold tracking-tight text-gray-900"
110
+ }, "Unknown Error"), React.createElement("p", {
111
+ className: "mt-2 text-sm text-gray-600"
112
+ }, "An unexpected error occurred. Please try again later.")), React.createElement("div", {
113
+ className: "mt-6"
114
+ }, React.createElement("button", {
115
+ onClick: handleGoHome,
116
+ className: "inline-flex items-center rounded-md bg-blue-600 px-4 py-2 text-sm font-medium text-white hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 transition-colors"
117
+ }, "Go back home"))));
118
+ }
119
+ }export{RemixErrorBoundary};//# sourceMappingURL=RemixErrorBoundary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RemixErrorBoundary.js","sources":["../../../src/components/ErrorHandlers/RemixErrorBoundary.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAWG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,4 +1,5 @@
1
1
  export * from './ApplicationErrorHandler';
2
2
  export * from './ErrorBoundary';
3
3
  export * from './LayoutErrorBoundary';
4
+ export * from './RemixErrorBoundary';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ErrorHandlers/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ErrorHandlers/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC"}
package/lib/index.js CHANGED
@@ -1 +1 @@
1
- export{default as PageLoading}from'./components/PageLoading/index.js';export{ApplicationErrorHandler}from'./components/ErrorHandlers/ApplicationErrorHandler.js';export{ErrorBoundary}from'./components/ErrorHandlers/ErrorBoundary.js';export{LayoutErrorBoundary}from'./components/ErrorHandlers/LayoutErrorBoundary.js';export{ReactTable}from'./components/ReactTable/Table.js';export{DefaultColumnFilter,SelectColumnFilter}from'./components/ReactTable/TableFilters.js';export{Error404}from'./components/ErrorPages/404.js';export{Error500}from'./components/ErrorPages/500.js';export{Error403}from'./components/ErrorPages/403.js';export{PageContainer}from'./components/PageContainer/PageContainer.js';export{Spin}from'./components/Spin/index.js';export{OTPInput}from'./components/OTP/OTPInput.js';export{SingleInput}from'./components/OTP/SingleInput.js';export{useOTPInput}from'./components/OTP/hooks.js';export{OTPVerification}from'./components/OTP/OTPVerification.js';export{SearchInput}from'./components/Search/SearchInput.js';export{Select,SelectContent,SelectItem,SelectSearch,SelectTrigger,SelectValue}from'./components/Select/Select.js';export{DatePicker}from'./components/DatePicker/DatePicker.js';export{TailwindUiButton}from'./components/Button/Button.js';export{TailwindThemeProvider,ThemeContext,themes}from'./components/ThemeProvider/ThemeProvider.js';export{ThemeToggle}from'./components/ThemeProvider/ThemeToggle.js';export{LanguageMenuDropdown}from'./components/LanguageMenuDropdown/LanguageMenuDropdown.js';export{useTheme}from'./hooks/useTheme.js';export{useWindowSize}from'./hooks/useWindowSize.js';export{ToastContainer,useToast,useToastCloseAll}from'./hooks/useToast.js';export{useMediaQuery}from'./hooks/useMediaQuery.js';export{cn}from'./utils/util.js';//# sourceMappingURL=index.js.map
1
+ export{default as PageLoading}from'./components/PageLoading/index.js';export{ApplicationErrorHandler}from'./components/ErrorHandlers/ApplicationErrorHandler.js';export{ErrorBoundary}from'./components/ErrorHandlers/ErrorBoundary.js';export{LayoutErrorBoundary}from'./components/ErrorHandlers/LayoutErrorBoundary.js';export{RemixErrorBoundary}from'./components/ErrorHandlers/RemixErrorBoundary.js';export{ReactTable}from'./components/ReactTable/Table.js';export{DefaultColumnFilter,SelectColumnFilter}from'./components/ReactTable/TableFilters.js';export{Error404}from'./components/ErrorPages/404.js';export{Error500}from'./components/ErrorPages/500.js';export{Error403}from'./components/ErrorPages/403.js';export{PageContainer}from'./components/PageContainer/PageContainer.js';export{Spin}from'./components/Spin/index.js';export{OTPInput}from'./components/OTP/OTPInput.js';export{SingleInput}from'./components/OTP/SingleInput.js';export{useOTPInput}from'./components/OTP/hooks.js';export{OTPVerification}from'./components/OTP/OTPVerification.js';export{SearchInput}from'./components/Search/SearchInput.js';export{Select,SelectContent,SelectItem,SelectSearch,SelectTrigger,SelectValue}from'./components/Select/Select.js';export{DatePicker}from'./components/DatePicker/DatePicker.js';export{TailwindUiButton}from'./components/Button/Button.js';export{TailwindThemeProvider,ThemeContext,themes}from'./components/ThemeProvider/ThemeProvider.js';export{ThemeToggle}from'./components/ThemeProvider/ThemeToggle.js';export{LanguageMenuDropdown}from'./components/LanguageMenuDropdown/LanguageMenuDropdown.js';export{useTheme}from'./hooks/useTheme.js';export{useWindowSize}from'./hooks/useWindowSize.js';export{ToastContainer,useToast,useToastCloseAll}from'./hooks/useToast.js';export{useMediaQuery}from'./hooks/useMediaQuery.js';export{cn}from'./utils/util.js';//# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import * as ResizablePrimitive from 'react-resizable-panels';
3
3
  declare const ResizablePanelGroup: ({ className, ...props }: React.ComponentProps<typeof ResizablePrimitive.PanelGroup>) => React.JSX.Element;
4
- declare const ResizablePanel: React.ForwardRefExoticComponent<Omit<React.HTMLAttributes<HTMLDivElement | HTMLElement | HTMLButtonElement | HTMLHeadingElement | HTMLParagraphElement | HTMLSelectElement | HTMLOptionElement | HTMLOptGroupElement | HTMLInputElement | HTMLTableElement | HTMLTableSectionElement | HTMLTableRowElement | HTMLTableCellElement | HTMLSpanElement | HTMLImageElement | HTMLUListElement | HTMLLIElement | HTMLAnchorElement | HTMLObjectElement | HTMLLinkElement | HTMLAreaElement | HTMLAudioElement | HTMLBaseElement | HTMLQuoteElement | HTMLBodyElement | HTMLBRElement | HTMLCanvasElement | HTMLTableColElement | HTMLDataElement | HTMLDataListElement | HTMLModElement | HTMLDetailsElement | HTMLDialogElement | HTMLDListElement | HTMLEmbedElement | HTMLFieldSetElement | HTMLFormElement | HTMLHeadElement | HTMLHRElement | HTMLHtmlElement | HTMLIFrameElement | HTMLLabelElement | HTMLLegendElement | HTMLMapElement | HTMLMetaElement | HTMLMeterElement | HTMLOListElement | HTMLOutputElement | HTMLPreElement | HTMLProgressElement | HTMLSlotElement | HTMLScriptElement | HTMLSourceElement | HTMLStyleElement | HTMLTemplateElement | HTMLTextAreaElement | HTMLTimeElement | HTMLTitleElement | HTMLTrackElement | HTMLVideoElement | HTMLTableCaptionElement | HTMLMenuElement | HTMLPictureElement>, "id" | "onResize"> & {
4
+ declare const ResizablePanel: React.ForwardRefExoticComponent<Omit<React.HTMLAttributes<HTMLDivElement | HTMLElement | HTMLButtonElement | HTMLHeadingElement | HTMLParagraphElement | HTMLDetailsElement | HTMLPreElement | HTMLSelectElement | HTMLOptionElement | HTMLOptGroupElement | HTMLInputElement | HTMLTableElement | HTMLTableSectionElement | HTMLTableRowElement | HTMLTableCellElement | HTMLSpanElement | HTMLImageElement | HTMLUListElement | HTMLLIElement | HTMLAnchorElement | HTMLObjectElement | HTMLLinkElement | HTMLAreaElement | HTMLAudioElement | HTMLBaseElement | HTMLQuoteElement | HTMLBodyElement | HTMLBRElement | HTMLCanvasElement | HTMLTableColElement | HTMLDataElement | HTMLDataListElement | HTMLModElement | HTMLDialogElement | HTMLDListElement | HTMLEmbedElement | HTMLFieldSetElement | HTMLFormElement | HTMLHeadElement | HTMLHRElement | HTMLHtmlElement | HTMLIFrameElement | HTMLLabelElement | HTMLLegendElement | HTMLMapElement | HTMLMetaElement | HTMLMeterElement | HTMLOListElement | HTMLOutputElement | HTMLProgressElement | HTMLSlotElement | HTMLScriptElement | HTMLSourceElement | HTMLStyleElement | HTMLTemplateElement | HTMLTextAreaElement | HTMLTimeElement | HTMLTitleElement | HTMLTrackElement | HTMLVideoElement | HTMLTableCaptionElement | HTMLMenuElement | HTMLPictureElement>, "id" | "onResize"> & {
5
5
  className?: string | undefined;
6
6
  collapsedSize?: number | undefined;
7
7
  collapsible?: boolean | undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@admin-layout/tailwind-ui",
3
- "version": "12.2.1-alpha.0",
3
+ "version": "12.2.1-alpha.4",
4
4
  "description": "Sample core for higher packages to depend on",
5
5
  "license": "ISC",
6
6
  "author": "CDMBase LLC",
@@ -29,7 +29,7 @@
29
29
  "watch": "npm run build:lib:watch"
30
30
  },
31
31
  "dependencies": {
32
- "@admin-layout/client": "12.2.1-alpha.0",
32
+ "@admin-layout/client": "12.2.1-alpha.3",
33
33
  "@radix-ui/react-accordion": "^1.2.0",
34
34
  "@radix-ui/react-alert-dialog": "^1.1.1",
35
35
  "@radix-ui/react-aspect-ratio": "^1.1.0",
@@ -89,5 +89,5 @@
89
89
  "typescript": {
90
90
  "definition": "lib/index.d.ts"
91
91
  },
92
- "gitHead": "12c777dbbb799cf12206b2c6d89fd8fc0e671efb"
92
+ "gitHead": "186c755a8435d22979fa734b7d92d5d775367e21"
93
93
  }