@react-text-game/ui 0.1.0
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/README.md +297 -0
- package/dist/components/DevModeDrawer/CopyButton.d.ts +4 -0
- package/dist/components/DevModeDrawer/CopyButton.d.ts.map +1 -0
- package/dist/components/DevModeDrawer/CopyButton.js +17 -0
- package/dist/components/DevModeDrawer/CopyButton.js.map +1 -0
- package/dist/components/DevModeDrawer/CurrentPassageData.d.ts +4 -0
- package/dist/components/DevModeDrawer/CurrentPassageData.d.ts.map +1 -0
- package/dist/components/DevModeDrawer/CurrentPassageData.js +23 -0
- package/dist/components/DevModeDrawer/CurrentPassageData.js.map +1 -0
- package/dist/components/DevModeDrawer/DevModeDrawer.d.ts +7 -0
- package/dist/components/DevModeDrawer/DevModeDrawer.d.ts.map +1 -0
- package/dist/components/DevModeDrawer/DevModeDrawer.js +29 -0
- package/dist/components/DevModeDrawer/DevModeDrawer.js.map +1 -0
- package/dist/components/DevModeDrawer/GameData.d.ts +4 -0
- package/dist/components/DevModeDrawer/GameData.d.ts.map +1 -0
- package/dist/components/DevModeDrawer/GameData.js +22 -0
- package/dist/components/DevModeDrawer/GameData.js.map +1 -0
- package/dist/components/DevModeDrawer/JumpToPassage.d.ts +2 -0
- package/dist/components/DevModeDrawer/JumpToPassage.d.ts.map +1 -0
- package/dist/components/DevModeDrawer/JumpToPassage.js +15 -0
- package/dist/components/DevModeDrawer/JumpToPassage.js.map +1 -0
- package/dist/components/DevModeDrawer/RefreshButton.d.ts +4 -0
- package/dist/components/DevModeDrawer/RefreshButton.d.ts.map +1 -0
- package/dist/components/DevModeDrawer/RefreshButton.js +5 -0
- package/dist/components/DevModeDrawer/RefreshButton.js.map +1 -0
- package/dist/components/DevModeDrawer/index.d.ts +2 -0
- package/dist/components/DevModeDrawer/index.d.ts.map +1 -0
- package/dist/components/DevModeDrawer/index.js +2 -0
- package/dist/components/DevModeDrawer/index.js.map +1 -0
- package/dist/components/ErrorBoundary/ErrorBoundary.d.ts +22 -0
- package/dist/components/ErrorBoundary/ErrorBoundary.d.ts.map +1 -0
- package/dist/components/ErrorBoundary/ErrorBoundary.js +135 -0
- package/dist/components/ErrorBoundary/ErrorBoundary.js.map +1 -0
- package/dist/components/ErrorBoundary/index.d.ts +2 -0
- package/dist/components/ErrorBoundary/index.d.ts.map +1 -0
- package/dist/components/ErrorBoundary/index.js +2 -0
- package/dist/components/ErrorBoundary/index.js.map +1 -0
- package/dist/components/ErrorBoundary/types.d.ts +12 -0
- package/dist/components/ErrorBoundary/types.d.ts.map +1 -0
- package/dist/components/ErrorBoundary/types.js +2 -0
- package/dist/components/ErrorBoundary/types.js.map +1 -0
- package/dist/components/GameProvider/AppIconMenu.d.ts +8 -0
- package/dist/components/GameProvider/AppIconMenu.d.ts.map +1 -0
- package/dist/components/GameProvider/AppIconMenu.js +12 -0
- package/dist/components/GameProvider/AppIconMenu.js.map +1 -0
- package/dist/components/GameProvider/GameProvider.d.ts +12 -0
- package/dist/components/GameProvider/GameProvider.d.ts.map +1 -0
- package/dist/components/GameProvider/GameProvider.js +36 -0
- package/dist/components/GameProvider/GameProvider.js.map +1 -0
- package/dist/components/GameProvider/SaveLoadMenuContext.d.ts +11 -0
- package/dist/components/GameProvider/SaveLoadMenuContext.d.ts.map +1 -0
- package/dist/components/GameProvider/SaveLoadMenuContext.js +3 -0
- package/dist/components/GameProvider/SaveLoadMenuContext.js.map +1 -0
- package/dist/components/GameProvider/SaveLoadMenuProvider.d.ts +4 -0
- package/dist/components/GameProvider/SaveLoadMenuProvider.d.ts.map +1 -0
- package/dist/components/GameProvider/SaveLoadMenuProvider.js +32 -0
- package/dist/components/GameProvider/SaveLoadMenuProvider.js.map +1 -0
- package/dist/components/GameProvider/index.d.ts +2 -0
- package/dist/components/GameProvider/index.d.ts.map +1 -0
- package/dist/components/GameProvider/index.js +2 -0
- package/dist/components/GameProvider/index.js.map +1 -0
- package/dist/components/InteractiveMapComponent/Hotspot.d.ts +9 -0
- package/dist/components/InteractiveMapComponent/Hotspot.d.ts.map +1 -0
- package/dist/components/InteractiveMapComponent/Hotspot.js +30 -0
- package/dist/components/InteractiveMapComponent/Hotspot.js.map +1 -0
- package/dist/components/InteractiveMapComponent/HotspotMap.d.ts +8 -0
- package/dist/components/InteractiveMapComponent/HotspotMap.d.ts.map +1 -0
- package/dist/components/InteractiveMapComponent/HotspotMap.js +37 -0
- package/dist/components/InteractiveMapComponent/HotspotMap.js.map +1 -0
- package/dist/components/InteractiveMapComponent/HotspotMenu.d.ts +9 -0
- package/dist/components/InteractiveMapComponent/HotspotMenu.d.ts.map +1 -0
- package/dist/components/InteractiveMapComponent/HotspotMenu.js +37 -0
- package/dist/components/InteractiveMapComponent/HotspotMenu.js.map +1 -0
- package/dist/components/InteractiveMapComponent/ImageHotspot.d.ts +7 -0
- package/dist/components/InteractiveMapComponent/ImageHotspot.d.ts.map +1 -0
- package/dist/components/InteractiveMapComponent/ImageHotspot.js +23 -0
- package/dist/components/InteractiveMapComponent/ImageHotspot.js.map +1 -0
- package/dist/components/InteractiveMapComponent/InteractiveMapComponent.d.ts +7 -0
- package/dist/components/InteractiveMapComponent/InteractiveMapComponent.d.ts.map +1 -0
- package/dist/components/InteractiveMapComponent/InteractiveMapComponent.js +23 -0
- package/dist/components/InteractiveMapComponent/InteractiveMapComponent.js.map +1 -0
- package/dist/components/InteractiveMapComponent/LabelHotspot.d.ts +7 -0
- package/dist/components/InteractiveMapComponent/LabelHotspot.d.ts.map +1 -0
- package/dist/components/InteractiveMapComponent/LabelHotspot.js +10 -0
- package/dist/components/InteractiveMapComponent/LabelHotspot.js.map +1 -0
- package/dist/components/InteractiveMapComponent/SideHotspot.d.ts +7 -0
- package/dist/components/InteractiveMapComponent/SideHotspot.d.ts.map +1 -0
- package/dist/components/InteractiveMapComponent/SideHotspot.js +11 -0
- package/dist/components/InteractiveMapComponent/SideHotspot.js.map +1 -0
- package/dist/components/InteractiveMapComponent/helpers.d.ts +11 -0
- package/dist/components/InteractiveMapComponent/helpers.d.ts.map +1 -0
- package/dist/components/InteractiveMapComponent/helpers.js +34 -0
- package/dist/components/InteractiveMapComponent/helpers.js.map +1 -0
- package/dist/components/InteractiveMapComponent/index.d.ts +2 -0
- package/dist/components/InteractiveMapComponent/index.d.ts.map +1 -0
- package/dist/components/InteractiveMapComponent/index.js +2 -0
- package/dist/components/InteractiveMapComponent/index.js.map +1 -0
- package/dist/components/InteractiveMapComponent/types.d.ts +19 -0
- package/dist/components/InteractiveMapComponent/types.d.ts.map +1 -0
- package/dist/components/InteractiveMapComponent/types.js +2 -0
- package/dist/components/InteractiveMapComponent/types.js.map +1 -0
- package/dist/components/InteractiveMapComponent/useHotspotMapSize.d.ts +3 -0
- package/dist/components/InteractiveMapComponent/useHotspotMapSize.d.ts.map +1 -0
- package/dist/components/InteractiveMapComponent/useHotspotMapSize.js +74 -0
- package/dist/components/InteractiveMapComponent/useHotspotMapSize.js.map +1 -0
- package/dist/components/InteractiveMapComponent/useSortHotspots.d.ts +16 -0
- package/dist/components/InteractiveMapComponent/useSortHotspots.d.ts.map +1 -0
- package/dist/components/InteractiveMapComponent/useSortHotspots.js +13 -0
- package/dist/components/InteractiveMapComponent/useSortHotspots.js.map +1 -0
- package/dist/components/MainMenu.d.ts +2 -0
- package/dist/components/MainMenu.d.ts.map +1 -0
- package/dist/components/MainMenu.js +15 -0
- package/dist/components/MainMenu.js.map +1 -0
- package/dist/components/PassageController/PassageController.d.ts +2 -0
- package/dist/components/PassageController/PassageController.d.ts.map +1 -0
- package/dist/components/PassageController/PassageController.js +25 -0
- package/dist/components/PassageController/PassageController.js.map +1 -0
- package/dist/components/PassageController/index.d.ts +2 -0
- package/dist/components/PassageController/index.d.ts.map +1 -0
- package/dist/components/PassageController/index.js +2 -0
- package/dist/components/PassageController/index.js.map +1 -0
- package/dist/components/ReloadButton.d.ts +15 -0
- package/dist/components/ReloadButton.d.ts.map +1 -0
- package/dist/components/ReloadButton.js +10 -0
- package/dist/components/ReloadButton.js.map +1 -0
- package/dist/components/SaveButton.d.ts +21 -0
- package/dist/components/SaveButton.d.ts.map +1 -0
- package/dist/components/SaveButton.js +10 -0
- package/dist/components/SaveButton.js.map +1 -0
- package/dist/components/SaveLoadModal/SaveLoadModal.d.ts +9 -0
- package/dist/components/SaveLoadModal/SaveLoadModal.d.ts.map +1 -0
- package/dist/components/SaveLoadModal/SaveLoadModal.js +52 -0
- package/dist/components/SaveLoadModal/SaveLoadModal.js.map +1 -0
- package/dist/components/SaveLoadModal/index.d.ts +2 -0
- package/dist/components/SaveLoadModal/index.d.ts.map +1 -0
- package/dist/components/SaveLoadModal/index.js +2 -0
- package/dist/components/SaveLoadModal/index.js.map +1 -0
- package/dist/components/StoryComponent/StoryComponent.d.ts +7 -0
- package/dist/components/StoryComponent/StoryComponent.d.ts.map +1 -0
- package/dist/components/StoryComponent/StoryComponent.js +30 -0
- package/dist/components/StoryComponent/StoryComponent.js.map +1 -0
- package/dist/components/StoryComponent/components/Actions.d.ts +7 -0
- package/dist/components/StoryComponent/components/Actions.d.ts.map +1 -0
- package/dist/components/StoryComponent/components/Actions.js +6 -0
- package/dist/components/StoryComponent/components/Actions.js.map +1 -0
- package/dist/components/StoryComponent/components/Conversation.d.ts +7 -0
- package/dist/components/StoryComponent/components/Conversation.d.ts.map +1 -0
- package/dist/components/StoryComponent/components/Conversation.js +53 -0
- package/dist/components/StoryComponent/components/Conversation.js.map +1 -0
- package/dist/components/StoryComponent/components/Header.d.ts +7 -0
- package/dist/components/StoryComponent/components/Header.d.ts.map +1 -0
- package/dist/components/StoryComponent/components/Header.js +12 -0
- package/dist/components/StoryComponent/components/Header.js.map +1 -0
- package/dist/components/StoryComponent/components/Image.d.ts +5 -0
- package/dist/components/StoryComponent/components/Image.d.ts.map +1 -0
- package/dist/components/StoryComponent/components/Image.js +31 -0
- package/dist/components/StoryComponent/components/Image.js.map +1 -0
- package/dist/components/StoryComponent/components/Text.d.ts +7 -0
- package/dist/components/StoryComponent/components/Text.d.ts.map +1 -0
- package/dist/components/StoryComponent/components/Text.js +4 -0
- package/dist/components/StoryComponent/components/Text.js.map +1 -0
- package/dist/components/StoryComponent/components/Video.d.ts +7 -0
- package/dist/components/StoryComponent/components/Video.d.ts.map +1 -0
- package/dist/components/StoryComponent/components/Video.js +4 -0
- package/dist/components/StoryComponent/components/Video.js.map +1 -0
- package/dist/components/StoryComponent/components/index.d.ts +7 -0
- package/dist/components/StoryComponent/components/index.d.ts.map +1 -0
- package/dist/components/StoryComponent/components/index.js +7 -0
- package/dist/components/StoryComponent/components/index.js.map +1 -0
- package/dist/components/StoryComponent/index.d.ts +2 -0
- package/dist/components/StoryComponent/index.d.ts.map +1 -0
- package/dist/components/StoryComponent/index.js +2 -0
- package/dist/components/StoryComponent/index.js.map +1 -0
- package/dist/components/common/Button.d.ts +8 -0
- package/dist/components/common/Button.d.ts.map +1 -0
- package/dist/components/common/Button.js +64 -0
- package/dist/components/common/Button.js.map +1 -0
- package/dist/components/common/Spinner.d.ts +2 -0
- package/dist/components/common/Spinner.d.ts.map +1 -0
- package/dist/components/common/Spinner.js +3 -0
- package/dist/components/common/Spinner.js.map +1 -0
- package/dist/components/common/Tooltip.d.ts +12 -0
- package/dist/components/common/Tooltip.d.ts.map +1 -0
- package/dist/components/common/Tooltip.js +28 -0
- package/dist/components/common/Tooltip.js.map +1 -0
- package/dist/components/common/index.d.ts +4 -0
- package/dist/components/common/index.d.ts.map +1 -0
- package/dist/components/common/index.js +4 -0
- package/dist/components/common/index.js.map +1 -0
- package/dist/components/index.d.ts +6 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +6 -0
- package/dist/components/index.js.map +1 -0
- package/dist/hooks/index.d.ts +3 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +3 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/useLocalStorage.d.ts +2 -0
- package/dist/hooks/useLocalStorage.d.ts.map +1 -0
- package/dist/hooks/useLocalStorage.js +44 -0
- package/dist/hooks/useLocalStorage.js.map +1 -0
- package/dist/hooks/useSaveLoadMenu.d.ts +2 -0
- package/dist/hooks/useSaveLoadMenu.d.ts.map +1 -0
- package/dist/hooks/useSaveLoadMenu.js +11 -0
- package/dist/hooks/useSaveLoadMenu.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -0
- package/dist/styles/index.css +1809 -0
- package/dist/tests/ErrorBoundary.test.d.ts +2 -0
- package/dist/tests/ErrorBoundary.test.d.ts.map +1 -0
- package/dist/tests/ErrorBoundary.test.js +317 -0
- package/dist/tests/ErrorBoundary.test.js.map +1 -0
- package/dist/tests/dexie.mock.d.ts +56 -0
- package/dist/tests/dexie.mock.d.ts.map +1 -0
- package/dist/tests/dexie.mock.js +113 -0
- package/dist/tests/dexie.mock.js.map +1 -0
- package/package.json +55 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/SaveLoadModal/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/SaveLoadModal/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Story } from "@react-text-game/core";
|
|
2
|
+
type StoryComponentProps = {
|
|
3
|
+
story: Story;
|
|
4
|
+
};
|
|
5
|
+
export declare const StoryComponent: ({ story }: StoryComponentProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export {};
|
|
7
|
+
//# sourceMappingURL=StoryComponent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StoryComponent.d.ts","sourceRoot":"","sources":["../../../src/components/StoryComponent/StoryComponent.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAQ,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAapD,KAAK,mBAAmB,GAAG;IACvB,KAAK,EAAE,KAAK,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,WAAW,mBAAmB,4CA2E5D,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { Game } from "@react-text-game/core";
|
|
4
|
+
import { useMemo } from "react";
|
|
5
|
+
import { twMerge } from "tailwind-merge";
|
|
6
|
+
import { Actions, Conversation, Header, Image, Text, Video, } from "./components";
|
|
7
|
+
export const StoryComponent = ({ story }) => {
|
|
8
|
+
const displayable = useMemo(() => story.display(), [story]);
|
|
9
|
+
return (_jsx("div", { className: twMerge("w-full h-full flex flex-col content-center items-center", displayable.options?.classNames?.base), children: _jsx("div", { className: "px-4 w-full flex flex-col content-center items-center", children: _jsx("div", { className: twMerge("w-full overflow-x-hidden max-w-[1200px] flex flex-col gap-4 my-4", displayable.options?.classNames?.container), children: displayable.components.map((component, index) => {
|
|
10
|
+
switch (component.type) {
|
|
11
|
+
case "header":
|
|
12
|
+
return (_jsx(Header, { component: component }, index));
|
|
13
|
+
case "text":
|
|
14
|
+
return (_jsx(Text, { component: component }, index));
|
|
15
|
+
case "image":
|
|
16
|
+
return (_jsx(Image, { component: component }, index));
|
|
17
|
+
case "video":
|
|
18
|
+
return (_jsx(Video, { component: component }, index));
|
|
19
|
+
case "actions":
|
|
20
|
+
return (_jsx(Actions, { component: component }, index));
|
|
21
|
+
case "conversation":
|
|
22
|
+
return (_jsx(Conversation, { component: component }, index));
|
|
23
|
+
case "anotherStory":
|
|
24
|
+
return (_jsx(StoryComponent, { story: Game.getPassageById(component.storyId) }, index));
|
|
25
|
+
default:
|
|
26
|
+
return null;
|
|
27
|
+
}
|
|
28
|
+
}) }) }) }));
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=StoryComponent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StoryComponent.js","sourceRoot":"","sources":["../../../src/components/StoryComponent/StoryComponent.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,IAAI,EAAS,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEzC,OAAO,EACH,OAAO,EACP,YAAY,EACZ,MAAM,EACN,KAAK,EACL,IAAI,EACJ,KAAK,GACR,MAAM,cAAc,CAAC;AAMtB,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,EAAE,KAAK,EAAuB,EAAE,EAAE;IAC7D,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAE5D,OAAO,CACH,cACI,SAAS,EAAE,OAAO,CACd,yDAAyD,EACzD,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CACxC,YAED,cAAK,SAAS,EAAC,uDAAuD,YAClE,cACI,SAAS,EAAE,OAAO,CACd,kEAAkE,EAClE,WAAW,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,CAC7C,YAEA,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE;oBAC7C,QAAQ,SAAS,CAAC,IAAI,EAAE,CAAC;wBACrB,KAAK,QAAQ;4BACT,OAAO,CACH,KAAC,MAAM,IAAa,SAAS,EAAE,SAAS,IAA3B,KAAK,CAA0B,CAC/C,CAAC;wBAEN,KAAK,MAAM;4BACP,OAAO,CACH,KAAC,IAAI,IAAa,SAAS,EAAE,SAAS,IAA3B,KAAK,CAA0B,CAC7C,CAAC;wBAEN,KAAK,OAAO;4BACR,OAAO,CACH,KAAC,KAAK,IAAa,SAAS,EAAE,SAAS,IAA3B,KAAK,CAA0B,CAC9C,CAAC;wBAEN,KAAK,OAAO;4BACR,OAAO,CACH,KAAC,KAAK,IAAa,SAAS,EAAE,SAAS,IAA3B,KAAK,CAA0B,CAC9C,CAAC;wBAEN,KAAK,SAAS;4BACV,OAAO,CACH,KAAC,OAAO,IAEJ,SAAS,EAAE,SAAS,IADf,KAAK,CAEZ,CACL,CAAC;wBAEN,KAAK,cAAc;4BACf,OAAO,CACH,KAAC,YAAY,IAET,SAAS,EAAE,SAAS,IADf,KAAK,CAEZ,CACL,CAAC;wBAEN,KAAK,cAAc;4BACf,OAAO,CACH,KAAC,cAAc,IAEX,KAAK,EACD,IAAI,CAAC,cAAc,CACf,SAAS,CAAC,OAAO,CACX,IAJT,KAAK,CAMZ,CACL,CAAC;wBAEN;4BACI,OAAO,IAAI,CAAC;oBACpB,CAAC;gBACL,CAAC,CAAC,GACA,GACJ,GACJ,CACT,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ActionsComponent } from "@react-text-game/core/passages";
|
|
2
|
+
type ActionsProps = Readonly<{
|
|
3
|
+
component: ActionsComponent;
|
|
4
|
+
}>;
|
|
5
|
+
export declare const Actions: ({ component }: ActionsProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export {};
|
|
7
|
+
//# sourceMappingURL=Actions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Actions.d.ts","sourceRoot":"","sources":["../../../../src/components/StoryComponent/components/Actions.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAMlE,KAAK,YAAY,GAAG,QAAQ,CAAC;IACzB,SAAS,EAAE,gBAAgB,CAAC;CAC/B,CAAC,CAAC;AAEH,eAAO,MAAM,OAAO,GAAI,eAAe,YAAY,4CA8BlD,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { twMerge } from "tailwind-merge";
|
|
3
|
+
import { Button } from "../../../components/common/Button";
|
|
4
|
+
import { Tooltip } from "../../../components/common/Tooltip";
|
|
5
|
+
export const Actions = ({ component }) => (_jsx("div", { className: twMerge("flex flex-wrap gap-2 justify-center items-center", component.props?.direction === "vertical" ? "flex-col" : "flex-row", component.props?.className), children: component.content.map((action, index) => (_jsx(Tooltip, { disabled: !action.tooltip?.content, content: action.tooltip?.content, className: action.tooltip?.className, placement: action.tooltip?.position, children: _jsx("div", { children: _jsx(Button, { color: action.color, variant: action.variant, className: action.className, disabled: action.isDisabled, onClick: action.action, children: action.label }) }) }, index))) }));
|
|
6
|
+
//# sourceMappingURL=Actions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Actions.js","sourceRoot":"","sources":["../../../../src/components/StoryComponent/components/Actions.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEzC,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAMrD,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,EAAE,SAAS,EAAgB,EAAE,EAAE,CAAC,CACpD,cACI,SAAS,EAAE,OAAO,CACd,kDAAkD,EAClD,SAAS,CAAC,KAAK,EAAE,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,EACnE,SAAS,CAAC,KAAK,EAAE,SAAS,CAC7B,YAEA,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CACtC,KAAC,OAAO,IAEJ,QAAQ,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAClC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,EAChC,SAAS,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,EACpC,SAAS,EAAE,MAAM,CAAC,OAAO,EAAE,QAAQ,YAEnC,wBACI,KAAC,MAAM,IACH,KAAK,EAAE,MAAM,CAAC,KAAK,EACnB,OAAO,EAAE,MAAM,CAAC,OAAO,EACvB,SAAS,EAAE,MAAM,CAAC,SAAS,EAC3B,QAAQ,EAAE,MAAM,CAAC,UAAU,EAC3B,OAAO,EAAE,MAAM,CAAC,MAAM,YAErB,MAAM,CAAC,KAAK,GACR,GACP,IAhBD,KAAK,CAiBJ,CACb,CAAC,GACA,CACT,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ConversationComponent } from "@react-text-game/core/passages";
|
|
2
|
+
type ConversationProps = Readonly<{
|
|
3
|
+
component: ConversationComponent;
|
|
4
|
+
}>;
|
|
5
|
+
export declare const Conversation: ({ component }: ConversationProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export {};
|
|
7
|
+
//# sourceMappingURL=Conversation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Conversation.d.ts","sourceRoot":"","sources":["../../../../src/components/StoryComponent/components/Conversation.tsx"],"names":[],"mappings":"AAEA,OAAO,EAGH,qBAAqB,EAExB,MAAM,gCAAgC,CAAC;AA0ExC,KAAK,iBAAiB,GAAG,QAAQ,CAAC;IAC9B,SAAS,EAAE,qBAAqB,CAAC;CACpC,CAAC,CAAC;AAEH,eAAO,MAAM,YAAY,GAAI,eAAe,iBAAiB,4CAwC5D,CAAC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useEffect, useState } from "react";
|
|
4
|
+
import { twMerge } from "tailwind-merge";
|
|
5
|
+
const bubbleStyles = {
|
|
6
|
+
chat: (side) => ({
|
|
7
|
+
base: `flex items-start gap-2 mb-3 ${side === "left" ? "justify-start" : "justify-end"}`,
|
|
8
|
+
content: `max-w-[80%] px-4 py-2 rounded-2xl ${side === "left"
|
|
9
|
+
? "bg-muted-100 text-primary rounded-tl-sm"
|
|
10
|
+
: "bg-secondary-600 text-secondary-foreground rounded-tr-sm"}`,
|
|
11
|
+
avatar: `w-10 h-10 rounded-full overflow-hidden flex-shrink-0 ${side === "left" ? "order-first" : "order-last"}`,
|
|
12
|
+
}),
|
|
13
|
+
messenger: (side) => ({
|
|
14
|
+
base: `flex items-end gap-2 my-4 ${side === "left" ? "justify-start" : "justify-end"}`,
|
|
15
|
+
content: `max-w-[70%] px-4 py-3 shadow-sm ${side === "left"
|
|
16
|
+
? "bg-card text-card-foreground rounded-t-2xl rounded-br-2xl rounded-bl-lg border border-border"
|
|
17
|
+
: "bg-primary-500 text-primary-foreground rounded-t-2xl rounded-bl-2xl rounded-br-lg"}`,
|
|
18
|
+
avatar: `w-10 h-10 rounded-full overflow-hidden mb-1 ${side === "left" ? "order-first" : "order-last"}`,
|
|
19
|
+
}),
|
|
20
|
+
};
|
|
21
|
+
const ConversationLine = ({ line, onClick, variant = "chat", }) => {
|
|
22
|
+
const classNames = bubbleStyles[variant](line.side || "left");
|
|
23
|
+
return (_jsxs("div", { className: twMerge(classNames.base, line.props?.classNames?.base), style: { backgroundColor: line.color }, onClick: onClick, children: [_jsx("div", { className: twMerge(classNames.avatar, line.props?.classNames?.avatar), children: line.who?.avatar ? (_jsx("img", { src: line.who.avatar, alt: line.who.name || "Avatar", className: "w-full h-full object-cover" })) : (_jsx("div", { className: "w-full h-full bg-muted-300 text-muted-700 flex items-center justify-center cursor-default", children: line.who?.name?.[0] || "?" })) }), _jsx("div", { className: twMerge(classNames.content, line.props?.classNames?.content), children: line.content })] }));
|
|
24
|
+
};
|
|
25
|
+
export const Conversation = ({ component }) => {
|
|
26
|
+
const [lines, setLines] = useState([]);
|
|
27
|
+
const { appearance, content, props } = component;
|
|
28
|
+
useEffect(() => {
|
|
29
|
+
if (appearance === "byClick") {
|
|
30
|
+
// If the conversation is set to appear by click, we can initialize it with an empty array
|
|
31
|
+
setLines([]);
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
// If it appears at once, we can set all lines immediately
|
|
35
|
+
setLines(content);
|
|
36
|
+
}
|
|
37
|
+
}, [appearance, content]);
|
|
38
|
+
const onClick = () => {
|
|
39
|
+
if (appearance === "byClick") {
|
|
40
|
+
// If the conversation is set to appear by click, append the next line
|
|
41
|
+
setLines((prevLines) => {
|
|
42
|
+
const nextLine = content[prevLines.length];
|
|
43
|
+
if (nextLine) {
|
|
44
|
+
return [...prevLines, nextLine];
|
|
45
|
+
}
|
|
46
|
+
return prevLines; // No more lines to add
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
// If the appearance is "atOnce", we do not need to handle clicks
|
|
50
|
+
};
|
|
51
|
+
return (_jsx("div", { className: props?.className, children: lines.map((line, index) => (_jsx(ConversationLine, { onClick: onClick, line: line, variant: props?.variant }, index))) }));
|
|
52
|
+
};
|
|
53
|
+
//# sourceMappingURL=Conversation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Conversation.js","sourceRoot":"","sources":["../../../../src/components/StoryComponent/components/Conversation.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { HeaderComponent } from "@react-text-game/core/passages";
|
|
2
|
+
type Props = Readonly<{
|
|
3
|
+
component: HeaderComponent;
|
|
4
|
+
}>;
|
|
5
|
+
export declare const Header: ({ component: { props, content } }: Props) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export {};
|
|
7
|
+
//# sourceMappingURL=Header.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Header.d.ts","sourceRoot":"","sources":["../../../../src/components/StoryComponent/components/Header.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAe,MAAM,gCAAgC,CAAC;AAG9E,KAAK,KAAK,GAAG,QAAQ,CAAC;IAClB,SAAS,EAAE,eAAe,CAAC;CAC9B,CAAC,CAAC;AAWH,eAAO,MAAM,MAAM,GAAI,mCAAmC,KAAK,4CAI9D,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { twMerge } from "tailwind-merge";
|
|
3
|
+
const headerMapper = {
|
|
4
|
+
1: "text-4xl",
|
|
5
|
+
2: "text-3xl",
|
|
6
|
+
3: "text-2xl",
|
|
7
|
+
4: "text-xl",
|
|
8
|
+
5: "text-lg",
|
|
9
|
+
6: "text-base text-bold",
|
|
10
|
+
};
|
|
11
|
+
export const Header = ({ component: { props, content } }) => (_jsx("div", { className: twMerge(headerMapper[props?.level ?? 1], props?.className), children: content }));
|
|
12
|
+
//# sourceMappingURL=Header.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Header.js","sourceRoot":"","sources":["../../../../src/components/StoryComponent/components/Header.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAMzC,MAAM,YAAY,GAAG;IACjB,CAAC,EAAE,UAAU;IACb,CAAC,EAAE,UAAU;IACb,CAAC,EAAE,UAAU;IACb,CAAC,EAAE,SAAS;IACZ,CAAC,EAAE,SAAS;IACZ,CAAC,EAAE,qBAAqB;CACoB,CAAC;AAEjD,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAS,EAAE,EAAE,CAAC,CAChE,cAAK,SAAS,EAAE,OAAO,CAAC,YAAY,CAAC,KAAK,EAAE,KAAK,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,YACrE,OAAO,GACN,CACT,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["../../../../src/components/StoryComponent/components/Image.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAIhE,eAAO,MAAM,KAAK,GAAI,eAAe;IAAE,SAAS,EAAE,cAAc,CAAA;CAAE,4CAsGjE,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
+
import { useEffect, useId } from "react";
|
|
4
|
+
import { twMerge } from "tailwind-merge";
|
|
5
|
+
export const Image = ({ component }) => {
|
|
6
|
+
const modalId = useId();
|
|
7
|
+
const shouldBeClickable = Boolean(component.props?.onClick) || !component.props?.disableModal;
|
|
8
|
+
const disableModal = component.props?.disableModal;
|
|
9
|
+
const handleClick = () => {
|
|
10
|
+
if (component.props?.onClick) {
|
|
11
|
+
component.props.onClick();
|
|
12
|
+
}
|
|
13
|
+
};
|
|
14
|
+
useEffect(() => {
|
|
15
|
+
const handleEscape = (e) => {
|
|
16
|
+
if (e.key === "Escape") {
|
|
17
|
+
const checkbox = document.getElementById(modalId);
|
|
18
|
+
if (checkbox?.checked) {
|
|
19
|
+
checkbox.checked = false;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
document.addEventListener("keydown", handleEscape);
|
|
24
|
+
return () => document.removeEventListener("keydown", handleEscape);
|
|
25
|
+
}, [modalId]);
|
|
26
|
+
if (disableModal) {
|
|
27
|
+
return (_jsx("img", { src: component.content, alt: component.props?.alt ?? "image", className: twMerge("max-w-200 max-h-200 object-contain mx-auto", shouldBeClickable && "cursor-pointer", component.props?.className), onClick: handleClick }));
|
|
28
|
+
}
|
|
29
|
+
return (_jsxs(_Fragment, { children: [_jsx("input", { type: "checkbox", id: modalId, className: "peer/modal hidden", "aria-hidden": "true" }), _jsx("label", { htmlFor: modalId, onClick: handleClick, children: _jsx("img", { src: component.content, alt: component.props?.alt ?? "image", className: twMerge("max-w-200 max-h-200 object-contain mx-auto cursor-pointer", component.props?.className) }) }), _jsxs("div", { className: "peer-checked/modal:opacity-100 peer-checked/modal:pointer-events-auto opacity-0 pointer-events-none fixed inset-0 z-[9999] flex items-center justify-center bg-overlay/80 transition-opacity duration-300 overflow-auto", children: [_jsxs("div", { className: "relative w-full max-w-7xl min-h-0 p-4 m-auto flex items-center justify-center", children: [_jsx("img", { src: component.content, alt: component.props?.alt ?? "image", className: "max-w-full max-h-[90vh] w-auto h-auto object-contain" }), _jsx("label", { htmlFor: modalId, className: "absolute top-2 right-2 w-10 h-10 flex items-center justify-center bg-white/10 hover:bg-white/20 rounded-full cursor-pointer transition-colors", "aria-label": "Close modal", children: _jsx("svg", { className: "w-6 h-6 text-white", fill: "none", stroke: "currentColor", viewBox: "0 0 24 24", children: _jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M6 18L18 6M6 6l12 12" }) }) })] }), _jsx("label", { htmlFor: modalId, className: "absolute inset-0 -z-10 cursor-default", "aria-label": "Close modal" })] })] }));
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=Image.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Image.js","sourceRoot":"","sources":["../../../../src/components/StoryComponent/components/Image.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { TextComponent } from "@react-text-game/core/passages";
|
|
2
|
+
type TextProps = Readonly<{
|
|
3
|
+
component: TextComponent;
|
|
4
|
+
}>;
|
|
5
|
+
export declare const Text: ({ component: { props, content } }: TextProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export {};
|
|
7
|
+
//# sourceMappingURL=Text.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["../../../../src/components/StoryComponent/components/Text.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAG/D,KAAK,SAAS,GAAG,QAAQ,CAAC;IACtB,SAAS,EAAE,aAAa,CAAC;CAC5B,CAAC,CAAC;AAEH,eAAO,MAAM,IAAI,GAAI,mCAAmC,SAAS,4CAShE,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { twMerge } from "tailwind-merge";
|
|
3
|
+
export const Text = ({ component: { props, content } }) => (_jsx("div", { className: twMerge("text-base text-justify whitespace-pre-wrap", props?.className), children: content }));
|
|
4
|
+
//# sourceMappingURL=Text.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Text.js","sourceRoot":"","sources":["../../../../src/components/StoryComponent/components/Text.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAMzC,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAa,EAAE,EAAE,CAAC,CAClE,cACI,SAAS,EAAE,OAAO,CACd,4CAA4C,EAC5C,KAAK,EAAE,SAAS,CACnB,YAEA,OAAO,GACN,CACT,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { VideoComponent } from "@react-text-game/core/passages";
|
|
2
|
+
type VideoProps = Readonly<{
|
|
3
|
+
component: VideoComponent;
|
|
4
|
+
}>;
|
|
5
|
+
export declare const Video: ({ component: { props, content } }: VideoProps) => import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export {};
|
|
7
|
+
//# sourceMappingURL=Video.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Video.d.ts","sourceRoot":"","sources":["../../../../src/components/StoryComponent/components/Video.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAGhE,KAAK,UAAU,GAAG,QAAQ,CAAC;IACvB,SAAS,EAAE,cAAc,CAAC;CAC7B,CAAC,CAAC;AAEH,eAAO,MAAM,KAAK,GAAI,mCAAmC,UAAU,4CAWlE,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { twMerge } from "tailwind-merge";
|
|
3
|
+
export const Video = ({ component: { props, content } }) => (_jsxs("video", { className: twMerge("max-w-200 max-h-200 mx-auto", props?.className), controls: props?.controls ?? false, autoPlay: props?.autoPlay ?? true, loop: props?.loop ?? true, muted: props?.muted ?? true, children: [_jsx("source", { src: content }), "Your browser does not support the video tag."] }));
|
|
4
|
+
//# sourceMappingURL=Video.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Video.js","sourceRoot":"","sources":["../../../../src/components/StoryComponent/components/Video.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAMzC,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAc,EAAE,EAAE,CAAC,CACpE,iBACI,SAAS,EAAE,OAAO,CAAC,6BAA6B,EAAE,KAAK,EAAE,SAAS,CAAC,EACnE,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAI,KAAK,EAClC,QAAQ,EAAE,KAAK,EAAE,QAAQ,IAAI,IAAI,EACjC,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,IAAI,EACzB,KAAK,EAAE,KAAK,EAAE,KAAK,IAAI,IAAI,aAE3B,iBAAQ,GAAG,EAAE,OAAO,GAAI,oDAEpB,CACX,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/StoryComponent/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/StoryComponent/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/StoryComponent/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/StoryComponent/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ButtonColor, ButtonVariant } from "@react-text-game/core";
|
|
2
|
+
import { ButtonHTMLAttributes } from "react";
|
|
3
|
+
export type ButtonProps = ButtonHTMLAttributes<HTMLButtonElement> & Readonly<{
|
|
4
|
+
variant?: ButtonVariant | undefined;
|
|
5
|
+
color?: ButtonColor | undefined;
|
|
6
|
+
}>;
|
|
7
|
+
export declare const Button: ({ className, variant, color, ...props }: ButtonProps) => import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
//# sourceMappingURL=Button.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/common/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAG7C,MAAM,MAAM,WAAW,GAAG,oBAAoB,CAAC,iBAAiB,CAAC,GAC7D,QAAQ,CAAC;IACL,OAAO,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IACpC,KAAK,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;CACnC,CAAC,CAAC;AAuEP,eAAO,MAAM,MAAM,GAAI,yCAKpB,WAAW,4CAWb,CAAC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { twMerge } from "tailwind-merge";
|
|
3
|
+
const variantColorStyles = {
|
|
4
|
+
solid: {
|
|
5
|
+
default: "bg-muted-500 text-primary-foreground hover:bg-muted-600",
|
|
6
|
+
primary: "bg-primary-500 text-primary-foreground hover:bg-primary-600",
|
|
7
|
+
secondary: "bg-secondary-500 text-secondary-foreground hover:bg-secondary-600",
|
|
8
|
+
success: "bg-success-500 text-success-foreground hover:bg-success-600",
|
|
9
|
+
warning: "bg-warning-500 text-warning-foreground hover:bg-warning-600",
|
|
10
|
+
danger: "bg-danger-500 text-danger-foreground hover:bg-danger-600",
|
|
11
|
+
},
|
|
12
|
+
faded: {
|
|
13
|
+
default: "bg-muted-100 text-muted-700 hover:bg-muted-200",
|
|
14
|
+
primary: "bg-primary-100 text-primary-700 hover:bg-primary-200",
|
|
15
|
+
secondary: "bg-secondary-100 text-secondary-700 hover:bg-secondary-200",
|
|
16
|
+
success: "bg-success-100 text-success-700 hover:bg-success-200",
|
|
17
|
+
warning: "bg-warning-100 text-warning-700 hover:bg-warning-200",
|
|
18
|
+
danger: "bg-danger-100 text-danger-700 hover:bg-danger-200",
|
|
19
|
+
},
|
|
20
|
+
bordered: {
|
|
21
|
+
default: "border-2 border-muted-500 text-muted-700 hover:bg-muted-50",
|
|
22
|
+
primary: "border-2 border-primary-500 text-primary-600 hover:bg-primary-50",
|
|
23
|
+
secondary: "border-2 border-secondary-500 text-secondary-600 hover:bg-secondary-50",
|
|
24
|
+
success: "border-2 border-success-500 text-success-600 hover:bg-success-50",
|
|
25
|
+
warning: "border-2 border-warning-500 text-warning-600 hover:bg-warning-50",
|
|
26
|
+
danger: "border-2 border-danger-500 text-danger-600 hover:bg-danger-50",
|
|
27
|
+
},
|
|
28
|
+
light: {
|
|
29
|
+
default: "bg-transparent text-muted-700 hover:bg-muted-100",
|
|
30
|
+
primary: "bg-transparent text-primary-600 hover:bg-primary-50",
|
|
31
|
+
secondary: "bg-transparent text-secondary-600 hover:bg-secondary-50",
|
|
32
|
+
success: "bg-transparent text-success-600 hover:bg-success-50",
|
|
33
|
+
warning: "bg-transparent text-warning-600 hover:bg-warning-50",
|
|
34
|
+
danger: "bg-transparent text-danger-600 hover:bg-danger-50",
|
|
35
|
+
},
|
|
36
|
+
flat: {
|
|
37
|
+
default: "bg-muted-200 text-muted-700 hover:bg-muted-300",
|
|
38
|
+
primary: "bg-primary-200 text-primary-800 hover:bg-primary-300",
|
|
39
|
+
secondary: "bg-secondary-200 text-secondary-800 hover:bg-secondary-300",
|
|
40
|
+
success: "bg-success-200 text-success-800 hover:bg-success-300",
|
|
41
|
+
warning: "bg-warning-200 text-warning-800 hover:bg-warning-300",
|
|
42
|
+
danger: "bg-danger-200 text-danger-800 hover:bg-danger-300",
|
|
43
|
+
},
|
|
44
|
+
ghost: {
|
|
45
|
+
default: "text-muted-700 hover:bg-muted-100",
|
|
46
|
+
primary: "text-primary-600 hover:bg-primary-50",
|
|
47
|
+
secondary: "text-secondary-600 hover:bg-secondary-50",
|
|
48
|
+
success: "text-success-600 hover:bg-success-50",
|
|
49
|
+
warning: "text-warning-600 hover:bg-warning-50",
|
|
50
|
+
danger: "text-danger-600 hover:bg-danger-50",
|
|
51
|
+
},
|
|
52
|
+
shadow: {
|
|
53
|
+
default: "bg-muted-500 text-primary-foreground shadow-lg shadow-muted-500/50 hover:bg-muted-600",
|
|
54
|
+
primary: "bg-primary-500 text-primary-foreground shadow-lg shadow-primary-500/50 hover:bg-primary-600",
|
|
55
|
+
secondary: "bg-secondary-500 text-secondary-foreground shadow-lg shadow-secondary-500/50 hover:bg-secondary-600",
|
|
56
|
+
success: "bg-success-500 text-success-foreground shadow-lg shadow-success-500/50 hover:bg-success-600",
|
|
57
|
+
warning: "bg-warning-500 text-warning-foreground shadow-lg shadow-warning-500/50 hover:bg-warning-600",
|
|
58
|
+
danger: "bg-danger-500 text-danger-foreground shadow-lg shadow-danger-500/50 hover:bg-danger-600",
|
|
59
|
+
},
|
|
60
|
+
};
|
|
61
|
+
export const Button = ({ className, variant = "solid", color = "primary", ...props }) => {
|
|
62
|
+
return (_jsx("button", { className: twMerge("px-4 py-2 rounded-md transition-colors cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed", variantColorStyles[variant][color], className), ...props }));
|
|
63
|
+
};
|
|
64
|
+
//# sourceMappingURL=Button.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../src/components/common/Button.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAQzC,MAAM,kBAAkB,GAGpB;IACA,KAAK,EAAE;QACH,OAAO,EAAE,yDAAyD;QAClE,OAAO,EAAE,6DAA6D;QACtE,SAAS,EAAE,mEAAmE;QAC9E,OAAO,EAAE,6DAA6D;QACtE,OAAO,EAAE,6DAA6D;QACtE,MAAM,EAAE,0DAA0D;KACrE;IACD,KAAK,EAAE;QACH,OAAO,EAAE,gDAAgD;QACzD,OAAO,EAAE,sDAAsD;QAC/D,SAAS,EAAE,4DAA4D;QACvE,OAAO,EAAE,sDAAsD;QAC/D,OAAO,EAAE,sDAAsD;QAC/D,MAAM,EAAE,mDAAmD;KAC9D;IACD,QAAQ,EAAE;QACN,OAAO,EAAE,4DAA4D;QACrE,OAAO,EAAE,kEAAkE;QAC3E,SAAS,EACL,wEAAwE;QAC5E,OAAO,EAAE,kEAAkE;QAC3E,OAAO,EAAE,kEAAkE;QAC3E,MAAM,EAAE,+DAA+D;KAC1E;IACD,KAAK,EAAE;QACH,OAAO,EAAE,kDAAkD;QAC3D,OAAO,EAAE,qDAAqD;QAC9D,SAAS,EAAE,yDAAyD;QACpE,OAAO,EAAE,qDAAqD;QAC9D,OAAO,EAAE,qDAAqD;QAC9D,MAAM,EAAE,mDAAmD;KAC9D;IACD,IAAI,EAAE;QACF,OAAO,EAAE,gDAAgD;QACzD,OAAO,EAAE,sDAAsD;QAC/D,SAAS,EAAE,4DAA4D;QACvE,OAAO,EAAE,sDAAsD;QAC/D,OAAO,EAAE,sDAAsD;QAC/D,MAAM,EAAE,mDAAmD;KAC9D;IACD,KAAK,EAAE;QACH,OAAO,EAAE,mCAAmC;QAC5C,OAAO,EAAE,sCAAsC;QAC/C,SAAS,EAAE,0CAA0C;QACrD,OAAO,EAAE,sCAAsC;QAC/C,OAAO,EAAE,sCAAsC;QAC/C,MAAM,EAAE,oCAAoC;KAC/C;IACD,MAAM,EAAE;QACJ,OAAO,EACH,uFAAuF;QAC3F,OAAO,EACH,6FAA6F;QACjG,SAAS,EACL,qGAAqG;QACzG,OAAO,EACH,6FAA6F;QACjG,OAAO,EACH,6FAA6F;QACjG,MAAM,EACF,yFAAyF;KAChG;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,EACnB,SAAS,EACT,OAAO,GAAG,OAAO,EACjB,KAAK,GAAG,SAAS,EACjB,GAAG,KAAK,EACE,EAAE,EAAE;IACd,OAAO,CACH,iBACI,SAAS,EAAE,OAAO,CACd,uGAAuG,EACvG,kBAAkB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,EAClC,SAAS,CACZ,KACG,KAAK,GACX,CACL,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Spinner.d.ts","sourceRoot":"","sources":["../../../src/components/common/Spinner.tsx"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,+CAInB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Spinner.js","sourceRoot":"","sources":["../../../src/components/common/Spinner.tsx"],"names":[],"mappings":";AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,CACzB,cACI,SAAS,EAAC,6FAA6F,GACzG,CACL,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ReactNode } from "react";
|
|
2
|
+
type Placement = "top" | "top-right" | "top-left" | "bottom" | "bottom-right" | "bottom-left" | "right" | "left";
|
|
3
|
+
type TooltipProps = Readonly<{
|
|
4
|
+
children: ReactNode;
|
|
5
|
+
disabled?: boolean | undefined;
|
|
6
|
+
content: ReactNode;
|
|
7
|
+
className?: string | undefined;
|
|
8
|
+
placement?: Placement | undefined;
|
|
9
|
+
}>;
|
|
10
|
+
export declare const Tooltip: ({ children, disabled, content, className, placement, }: TooltipProps) => import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=Tooltip.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../../src/components/common/Tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,KAAK,SAAS,GACR,KAAK,GACL,WAAW,GACX,UAAU,GACV,QAAQ,GACR,cAAc,GACd,aAAa,GACb,OAAO,GACP,MAAM,CAAC;AAEb,KAAK,YAAY,GAAG,QAAQ,CAAC;IACzB,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/B,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,SAAS,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;CACrC,CAAC,CAAC;AAwBH,eAAO,MAAM,OAAO,GAAI,wDAMrB,YAAY,4CAmBd,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
const placementStyles = {
|
|
3
|
+
"top": "bottom-full left-1/2 -translate-x-1/2 mb-2",
|
|
4
|
+
"top-right": "bottom-full right-0 mb-2",
|
|
5
|
+
"top-left": "bottom-full left-0 mb-2",
|
|
6
|
+
"bottom": "top-full left-1/2 -translate-x-1/2 mt-2",
|
|
7
|
+
"bottom-right": "top-full right-0 mt-2",
|
|
8
|
+
"bottom-left": "top-full left-0 mt-2",
|
|
9
|
+
"right": "left-full top-1/2 -translate-y-1/2 ml-2",
|
|
10
|
+
"left": "right-full top-1/2 -translate-y-1/2 mr-2",
|
|
11
|
+
};
|
|
12
|
+
const arrowStyles = {
|
|
13
|
+
"top": "bottom-[-4px] left-1/2 -translate-x-1/2",
|
|
14
|
+
"top-right": "bottom-[-4px] right-3",
|
|
15
|
+
"top-left": "bottom-[-4px] left-3",
|
|
16
|
+
"bottom": "top-[-4px] left-1/2 -translate-x-1/2",
|
|
17
|
+
"bottom-right": "top-[-4px] right-3",
|
|
18
|
+
"bottom-left": "top-[-4px] left-3",
|
|
19
|
+
"right": "left-[-4px] top-1/2 -translate-y-1/2",
|
|
20
|
+
"left": "right-[-4px] top-1/2 -translate-y-1/2",
|
|
21
|
+
};
|
|
22
|
+
export const Tooltip = ({ children, disabled = false, content, className = "", placement = "top", }) => {
|
|
23
|
+
if (disabled) {
|
|
24
|
+
return _jsx(_Fragment, { children: children });
|
|
25
|
+
}
|
|
26
|
+
return (_jsxs("div", { className: "group relative inline-block", children: [children, _jsxs("div", { className: `pointer-events-none absolute z-50 px-3 py-2 text-sm font-medium text-popover-foreground bg-popover border border-border rounded-lg shadow-lg whitespace-nowrap opacity-0 group-hover:opacity-100 transition-opacity duration-200 ${placementStyles[placement]} ${className}`, role: "tooltip", children: [content, _jsx("div", { className: `absolute w-2 h-2 bg-popover border-border rotate-45 ${arrowStyles[placement]}` })] })] }));
|
|
27
|
+
};
|
|
28
|
+
//# sourceMappingURL=Tooltip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Tooltip.js","sourceRoot":"","sources":["../../../src/components/common/Tooltip.tsx"],"names":[],"mappings":";AAoBA,MAAM,eAAe,GAA8B;IAC/C,KAAK,EAAE,4CAA4C;IACnD,WAAW,EAAE,0BAA0B;IACvC,UAAU,EAAE,yBAAyB;IACrC,QAAQ,EAAE,yCAAyC;IACnD,cAAc,EAAE,uBAAuB;IACvC,aAAa,EAAE,sBAAsB;IACrC,OAAO,EAAE,yCAAyC;IAClD,MAAM,EAAE,0CAA0C;CACrD,CAAC;AAEF,MAAM,WAAW,GAA8B;IAC3C,KAAK,EAAE,yCAAyC;IAChD,WAAW,EAAE,uBAAuB;IACpC,UAAU,EAAE,sBAAsB;IAClC,QAAQ,EAAE,sCAAsC;IAChD,cAAc,EAAE,oBAAoB;IACpC,aAAa,EAAE,mBAAmB;IAClC,OAAO,EAAE,sCAAsC;IAC/C,MAAM,EAAE,uCAAuC;CAClD,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,EACpB,QAAQ,EACR,QAAQ,GAAG,KAAK,EAChB,OAAO,EACP,SAAS,GAAG,EAAE,EACd,SAAS,GAAG,KAAK,GACN,EAAE,EAAE;IACf,IAAI,QAAQ,EAAE,CAAC;QACX,OAAO,4BAAG,QAAQ,GAAI,CAAC;IAC3B,CAAC;IAED,OAAO,CACH,eAAK,SAAS,EAAC,6BAA6B,aACvC,QAAQ,EACT,eACI,SAAS,EAAE,oOAAoO,eAAe,CAAC,SAAS,CAAC,IAAI,SAAS,EAAE,EACxR,IAAI,EAAC,SAAS,aAEb,OAAO,EACR,cACI,SAAS,EAAE,uDAAuD,WAAW,CAAC,SAAS,CAAC,EAAE,GAC5F,IACA,IACJ,CACT,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/common/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useLocalStorage.d.ts","sourceRoot":"","sources":["../../src/hooks/useLocalStorage.ts"],"names":[],"mappings":"AAIA,wBAAgB,eAAe,CAAC,CAAC,EAC7B,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,CAAC,GAChB,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,CAAC,CA8C5C"}
|