narraleaf-react 0.5.0 → 0.7.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.
Files changed (151) hide show
  1. package/dist/game/nlcore/action/action.d.ts +29 -24
  2. package/dist/game/nlcore/action/actionHistory.d.ts +48 -39
  3. package/dist/game/nlcore/action/actionTypes.d.ts +142 -142
  4. package/dist/game/nlcore/action/actionable.d.ts +5 -5
  5. package/dist/game/nlcore/action/actions/characterAction.d.ts +19 -17
  6. package/dist/game/nlcore/action/actions/conditionAction.d.ts +26 -17
  7. package/dist/game/nlcore/action/actions/controlAction.d.ts +26 -38
  8. package/dist/game/nlcore/action/actions/displayableAction.d.ts +26 -22
  9. package/dist/game/nlcore/action/actions/imageAction.d.ts +25 -23
  10. package/dist/game/nlcore/action/actions/layerAction.d.ts +16 -13
  11. package/dist/game/nlcore/action/actions/menuAction.d.ts +21 -16
  12. package/dist/game/nlcore/action/actions/persistentAction.d.ts +17 -13
  13. package/dist/game/nlcore/action/actions/sceneAction.d.ts +47 -44
  14. package/dist/game/nlcore/action/actions/scriptAction.d.ts +14 -10
  15. package/dist/game/nlcore/action/actions/soundAction.d.ts +20 -18
  16. package/dist/game/nlcore/action/actions/storyAction.d.ts +8 -8
  17. package/dist/game/nlcore/action/actions/textAction.d.ts +16 -14
  18. package/dist/game/nlcore/action/actions/videoAction.d.ts +26 -22
  19. package/dist/game/nlcore/action/actions.d.ts +20 -13
  20. package/dist/game/nlcore/action/baseElement.d.ts +2 -2
  21. package/dist/game/nlcore/action/chain.d.ts +17 -17
  22. package/dist/game/nlcore/action/constructable.d.ts +5 -5
  23. package/dist/game/nlcore/action/gameHistory.d.ts +32 -32
  24. package/dist/game/nlcore/action/logicAction.d.ts +52 -52
  25. package/dist/game/nlcore/action/serviceAction.d.ts +24 -11
  26. package/dist/game/nlcore/action/srcManager.d.ts +47 -47
  27. package/dist/game/nlcore/action/stackModel.d.ts +106 -0
  28. package/dist/game/nlcore/action/tree/actionTree.d.ts +56 -56
  29. package/dist/game/nlcore/common/Utils.d.ts +25 -25
  30. package/dist/game/nlcore/common/core.d.ts +8 -8
  31. package/dist/game/nlcore/common/elements.d.ts +19 -19
  32. package/dist/game/nlcore/common/game.d.ts +9 -7
  33. package/dist/game/nlcore/common/player.d.ts +9 -7
  34. package/dist/game/nlcore/common/position.d.ts +2 -2
  35. package/dist/game/nlcore/common/transition.d.ts +6 -6
  36. package/dist/game/nlcore/common/types.d.ts +13 -9
  37. package/dist/game/nlcore/elements/character/pause.d.ts +8 -8
  38. package/dist/game/nlcore/elements/character/sentence.d.ts +25 -25
  39. package/dist/game/nlcore/elements/character/word.d.ts +18 -18
  40. package/dist/game/nlcore/elements/character.d.ts +56 -52
  41. package/dist/game/nlcore/elements/condition.d.ts +20 -20
  42. package/dist/game/nlcore/elements/control.d.ts +76 -76
  43. package/dist/game/nlcore/elements/displayable/displayable.d.ts +76 -76
  44. package/dist/game/nlcore/elements/displayable/image.d.ts +102 -102
  45. package/dist/game/nlcore/elements/displayable/text.d.ts +74 -74
  46. package/dist/game/nlcore/elements/layer.d.ts +33 -33
  47. package/dist/game/nlcore/elements/menu.d.ts +45 -45
  48. package/dist/game/nlcore/elements/persistent/storable.d.ts +24 -24
  49. package/dist/game/nlcore/elements/persistent/type.d.ts +3 -3
  50. package/dist/game/nlcore/elements/persistent.d.ts +86 -86
  51. package/dist/game/nlcore/elements/scene.d.ts +76 -76
  52. package/dist/game/nlcore/elements/script.d.ts +16 -16
  53. package/dist/game/nlcore/elements/service.d.ts +59 -59
  54. package/dist/game/nlcore/elements/sound.d.ts +89 -89
  55. package/dist/game/nlcore/elements/story.d.ts +92 -78
  56. package/dist/game/nlcore/elements/transform/position.d.ts +99 -103
  57. package/dist/game/nlcore/elements/transform/transform.d.ts +119 -119
  58. package/dist/game/nlcore/elements/transform/type.d.ts +32 -32
  59. package/dist/game/nlcore/elements/transition/transition.d.ts +29 -29
  60. package/dist/game/nlcore/elements/transition/transitions/image/darkness.d.ts +20 -20
  61. package/dist/game/nlcore/elements/transition/transitions/image/dissolve.d.ts +17 -17
  62. package/dist/game/nlcore/elements/transition/transitions/image/fadeIn.d.ts +20 -20
  63. package/dist/game/nlcore/elements/transition/transitions/image/imageTransition.d.ts +28 -28
  64. package/dist/game/nlcore/elements/transition/transitions/text/fontSize.d.ts +13 -13
  65. package/dist/game/nlcore/elements/transition/transitions/text/textTransition.d.ts +10 -10
  66. package/dist/game/nlcore/elements/transition/type.d.ts +51 -51
  67. package/dist/game/nlcore/elements/type.d.ts +16 -16
  68. package/dist/game/nlcore/elements/video.d.ts +23 -23
  69. package/dist/game/nlcore/game/keyMap.d.ts +82 -0
  70. package/dist/game/nlcore/game/liveGame.d.ts +148 -138
  71. package/dist/game/nlcore/game/plugin/plugin.d.ts +16 -16
  72. package/dist/game/nlcore/game/preference.d.ts +32 -32
  73. package/dist/game/nlcore/game/types.d.ts +22 -0
  74. package/dist/game/nlcore/game.d.ts +86 -116
  75. package/dist/game/nlcore/gameTypes.d.ts +432 -337
  76. package/dist/game/nlcore/types.d.ts +67 -67
  77. package/dist/game/player/Tasks.d.ts +125 -106
  78. package/dist/game/player/elements/Player.d.ts +4 -4
  79. package/dist/game/player/elements/displayable/Displayable.d.ts +1 -1
  80. package/dist/game/player/elements/displayable/Displayables.d.ts +1 -1
  81. package/dist/game/player/elements/displayable/Text.d.ts +1 -1
  82. package/dist/game/player/elements/displayable/type.d.ts +1 -1
  83. package/dist/game/player/elements/elements.d.ts +8 -8
  84. package/dist/game/player/elements/image/AspectScaleImage.d.ts +1 -1
  85. package/dist/game/player/elements/image/Image.d.ts +3 -3
  86. package/dist/game/player/elements/menu/PlayerMenu.d.ts +3 -3
  87. package/dist/game/player/elements/menu/UIMenu/Item.d.ts +12 -12
  88. package/dist/game/player/elements/menu/UIMenu/Menu.d.ts +6 -6
  89. package/dist/game/player/elements/menu/UIMenu/context.d.ts +23 -23
  90. package/dist/game/player/elements/menu/type.d.ts +16 -16
  91. package/dist/game/player/elements/notification/Notifications.d.ts +3 -3
  92. package/dist/game/player/elements/notification/PlayerNotification.d.ts +4 -4
  93. package/dist/game/player/elements/notification/context.d.ts +11 -11
  94. package/dist/game/player/elements/notification/type.d.ts +18 -19
  95. package/dist/game/player/elements/player/KeyEventAnnouncer.d.ts +1 -1
  96. package/dist/game/player/elements/player/Layer.d.ts +8 -8
  97. package/dist/game/player/elements/player/PreferenceUpdateAnnouncer.d.ts +4 -4
  98. package/dist/game/player/elements/player/RenderEventAnnoucer.d.ts +4 -4
  99. package/dist/game/player/elements/player/SizeUpdateAnnouncer.d.ts +1 -1
  100. package/dist/game/player/elements/preload/Preload.d.ts +1 -1
  101. package/dist/game/player/elements/say/Dialog.d.ts +13 -13
  102. package/dist/game/player/elements/say/Nametag.d.ts +2 -2
  103. package/dist/game/player/elements/say/Sentence.d.ts +37 -37
  104. package/dist/game/player/elements/say/UIDialog.d.ts +72 -71
  105. package/dist/game/player/elements/say/context.d.ts +4 -4
  106. package/dist/game/player/elements/say/type.d.ts +53 -53
  107. package/dist/game/player/elements/say/useDialog.d.ts +18 -18
  108. package/dist/game/player/elements/scene/Scene.d.ts +1 -1
  109. package/dist/game/player/elements/type.d.ts +59 -53
  110. package/dist/game/player/elements/video/video.d.ts +1 -1
  111. package/dist/game/player/gameState.d.ts +192 -191
  112. package/dist/game/player/gameState.type.d.ts +1 -1
  113. package/dist/game/player/guard.d.ts +24 -24
  114. package/dist/game/player/lib/AspectRatio.d.ts +7 -7
  115. package/dist/game/player/lib/AudioManager.d.ts +50 -50
  116. package/dist/game/player/lib/Cursor.d.ts +6 -6
  117. package/dist/game/player/lib/ErrorBoundary.d.ts +25 -24
  118. package/dist/game/player/lib/ErrorFallback.d.ts +5 -5
  119. package/dist/game/player/lib/ImageCacheManager.d.ts +26 -26
  120. package/dist/game/player/lib/Inspect.d.ts +36 -36
  121. package/dist/game/player/lib/PageRouter/AnimatePresence.d.ts +5 -4
  122. package/dist/game/player/lib/PageRouter/Layout.d.ts +48 -0
  123. package/dist/game/player/lib/PageRouter/Page.d.ts +46 -9
  124. package/dist/game/player/lib/PageRouter/Stage.d.ts +6 -6
  125. package/dist/game/player/lib/PageRouter/router.d.ts +638 -23
  126. package/dist/game/player/lib/PageRouter/routerHooks.d.ts +6 -0
  127. package/dist/game/player/lib/PlayerFrames.d.ts +10 -10
  128. package/dist/game/player/lib/Preloaded.d.ts +48 -48
  129. package/dist/game/player/lib/flush.d.ts +5 -5
  130. package/dist/game/player/lib/isolated.d.ts +7 -7
  131. package/dist/game/player/lib/keyMap.d.ts +3 -0
  132. package/dist/game/player/lib/notification.d.ts +47 -47
  133. package/dist/game/player/lib/preferences.d.ts +8 -8
  134. package/dist/game/player/lib/useConstant.d.ts +1 -0
  135. package/dist/game/player/lib/useElementVisibility.d.ts +5 -5
  136. package/dist/game/player/lib/useExposeState.d.ts +10 -10
  137. package/dist/game/player/lib/useLiveGame.d.ts +1 -1
  138. package/dist/game/player/libElements.d.ts +15 -12
  139. package/dist/game/player/provider/game-state.d.ts +24 -24
  140. package/dist/game/player/provider/preloaded.d.ts +1 -1
  141. package/dist/game/player/provider/providers.d.ts +7 -7
  142. package/dist/game/player/provider/ratio.d.ts +1 -1
  143. package/dist/game/player/type.d.ts +68 -68
  144. package/dist/index.d.ts +3 -3
  145. package/dist/main.js +44 -78
  146. package/dist/util/config.d.ts +37 -37
  147. package/dist/util/data.d.ts +346 -309
  148. package/dist/util/logger.d.ts +21 -21
  149. package/dist/util/singleton.d.ts +5 -5
  150. package/package.json +8 -5
  151. package/dist/game/player/lib/PageRouter/PageRouter.d.ts +0 -27
@@ -1,26 +1,26 @@
1
- import { Game } from "../../../game/nlcore/game";
2
- import { GameState } from "../gameState";
3
- export type PreloadedToken = {
4
- abort: () => void;
5
- onFinished: (callback: () => void) => PreloadedToken;
6
- onErrored: (callback: (reason: any) => void) => PreloadedToken;
7
- };
8
- export declare class ImageCacheManager {
9
- private readonly game;
10
- static getImage(src: string, abortSignal?: AbortSignal, options?: RequestInit): Promise<string>;
11
- private src;
12
- private preloadTasks;
13
- constructor(game: Game);
14
- has(name: string): boolean;
15
- add(name: string, src: string): this;
16
- remove(name: string): this;
17
- get(name: string): string | undefined;
18
- clear(): this;
19
- size(): number;
20
- isPreloading(src: string): boolean;
21
- preload(gameState: GameState, url: string): PreloadedToken;
22
- abortAll(): void;
23
- abort(src: string): void;
24
- preloadedSrc(): string[];
25
- filter(names: string[]): this;
26
- }
1
+ import { Game } from "../../../game/nlcore/game";
2
+ import { GameState } from "../gameState";
3
+ export type PreloadedToken = {
4
+ abort: () => void;
5
+ onFinished: (callback: () => void) => PreloadedToken;
6
+ onErrored: (callback: (reason: any) => void) => PreloadedToken;
7
+ };
8
+ export declare class ImageCacheManager {
9
+ private readonly game;
10
+ static getImage(src: string, abortSignal?: AbortSignal, options?: RequestInit): Promise<string>;
11
+ private src;
12
+ private preloadTasks;
13
+ constructor(game: Game);
14
+ has(name: string): boolean;
15
+ add(name: string, src: string): this;
16
+ remove(name: string): this;
17
+ get(name: string): string | undefined;
18
+ clear(): this;
19
+ size(): number;
20
+ isPreloading(src: string): boolean;
21
+ preload(gameState: GameState, url: string): PreloadedToken;
22
+ abortAll(): void;
23
+ abort(src: string): void;
24
+ preloadedSrc(): string[];
25
+ filter(names: string[]): this;
26
+ }
@@ -1,36 +1,36 @@
1
- import React from "react";
2
- import { DivElementProp } from "../../nlcore/elements/transition/type";
3
- type InspectStyle = {
4
- border?: "solid" | "dashed" | "dotted";
5
- borderWidth?: number;
6
- color?: React.CSSProperties["color"];
7
- };
8
- declare function InspectDiv(props: Readonly<DivElementProp & {
9
- children?: React.ReactNode;
10
- tag?: string;
11
- } & InspectStyle>): React.JSX.Element;
12
- declare function InspectSpan(props: Readonly<DivElementProp & {
13
- children?: React.ReactNode;
14
- tag?: string;
15
- } & InspectStyle>): React.JSX.Element;
16
- declare function InspectImg(props: Readonly<DivElementProp & {
17
- tag?: string;
18
- } & InspectStyle>): React.JSX.Element;
19
- declare function InspectButton(props: Readonly<DivElementProp & {
20
- children?: React.ReactNode;
21
- tag?: string;
22
- } & InspectStyle>): React.JSX.Element;
23
- declare function InspectFramerMotionDiv(props: Readonly<DivElementProp & {
24
- children?: React.ReactNode;
25
- tag?: string;
26
- ref?: React.RefObject<HTMLDivElement | null>;
27
- layout?: boolean;
28
- } & InspectStyle>): React.JSX.Element;
29
- declare const Inspect: {
30
- Div: typeof InspectDiv;
31
- Span: typeof InspectSpan;
32
- Button: typeof InspectButton;
33
- Img: typeof InspectImg;
34
- mDiv: typeof InspectFramerMotionDiv;
35
- };
36
- export default Inspect;
1
+ import React from "react";
2
+ import { DivElementProp } from "../../nlcore/elements/transition/type";
3
+ type InspectStyle = {
4
+ border?: "solid" | "dashed" | "dotted";
5
+ borderWidth?: number;
6
+ color?: React.CSSProperties["color"];
7
+ };
8
+ declare function InspectDiv(props: Readonly<DivElementProp & {
9
+ children?: React.ReactNode;
10
+ tag?: string;
11
+ } & InspectStyle>): React.JSX.Element;
12
+ declare function InspectSpan(props: Readonly<DivElementProp & {
13
+ children?: React.ReactNode;
14
+ tag?: string;
15
+ } & InspectStyle>): React.JSX.Element;
16
+ declare function InspectImg(props: Readonly<DivElementProp & {
17
+ tag?: string;
18
+ } & InspectStyle>): React.JSX.Element;
19
+ declare function InspectButton(props: Readonly<DivElementProp & {
20
+ children?: React.ReactNode;
21
+ tag?: string;
22
+ } & InspectStyle>): React.JSX.Element;
23
+ declare function InspectFramerMotionDiv(props: Readonly<DivElementProp & {
24
+ children?: React.ReactNode;
25
+ tag?: string;
26
+ ref?: React.RefObject<HTMLDivElement | null>;
27
+ layout?: boolean;
28
+ } & InspectStyle>): React.JSX.Element;
29
+ declare const Inspect: {
30
+ Div: typeof InspectDiv;
31
+ Span: typeof InspectSpan;
32
+ Button: typeof InspectButton;
33
+ Img: typeof InspectImg;
34
+ mDiv: typeof InspectFramerMotionDiv;
35
+ };
36
+ export default Inspect;
@@ -1,4 +1,5 @@
1
- import { FirstParam } from "../../../../util/data";
2
- import { AnimatePresence } from "framer-motion";
3
- import { JSX } from "react";
4
- export type AnimatePresenceComponent = (arg0: FirstParam<typeof AnimatePresence>) => JSX.Element;
1
+ import { FirstParam } from "../../../../util/data";
2
+ import { JSX } from "react";
3
+ import { AnimatePresence as OriginalAnimatePresence } from "motion/react";
4
+ export type AnimatePresenceComponent = (arg0: FirstParam<typeof OriginalAnimatePresence>) => JSX.Element;
5
+ export declare const AnimatePresence: AnimatePresenceComponent;
@@ -0,0 +1,48 @@
1
+ import React from "react";
2
+ import { LayoutRouter } from "./router";
3
+ type LayoutContextType = {
4
+ router: LayoutRouter;
5
+ path: string | null;
6
+ consumedBy?: string;
7
+ };
8
+ type LayoutContextProviderProps = {
9
+ children: React.ReactNode;
10
+ path: string | null;
11
+ consumedBy?: string;
12
+ };
13
+ export declare function LayoutRouterProvider({ children, path, consumedBy }: LayoutContextProviderProps): React.JSX.Element;
14
+ export declare function useLayout(): Omit<LayoutContextType, "path"> & {
15
+ path: string;
16
+ };
17
+ export type LayoutProps = {
18
+ children: React.ReactNode;
19
+ /**
20
+ * The relative path of the layout. It can be a path or a path pattern.
21
+ *
22
+ * @example
23
+ * ```typescript
24
+ * // Can be navigated to by "/home"
25
+ * <Layout name="home">
26
+ * <div>Home</div>
27
+ * </Layout>
28
+ *
29
+ * <Layout name="user">
30
+ * // equivalent to "/user/:id"
31
+ * // Can be navigated to by "/user/123"
32
+ * <Layout name=":id">
33
+ * <div>User</div>
34
+ * </Layout>
35
+ * </Layout>
36
+ * ```
37
+ */
38
+ name: string;
39
+ /**
40
+ * When true, exit animations will be propagated to nested AnimatePresence components.
41
+ */
42
+ propagate?: boolean;
43
+ };
44
+ export declare function Layout({ children, name, propagate }: LayoutProps): React.JSX.Element;
45
+ export declare function RootLayout({ children }: {
46
+ children: React.ReactNode;
47
+ }): React.JSX.Element;
48
+ export {};
@@ -1,9 +1,46 @@
1
- import React from "react";
2
- import { HTMLMotionProps } from "motion/react";
3
- export type PageProps = Readonly<{
4
- id: string;
5
- children?: React.ReactNode;
6
- className?: string;
7
- style?: React.CSSProperties;
8
- } & HTMLMotionProps<"div">>;
9
- export declare function Page({ id, children, className, style, ...motionProps }: PageProps): React.JSX.Element;
1
+ import React from "react";
2
+ export type PageProps = Readonly<{
3
+ children?: React.ReactNode;
4
+ /**
5
+ * The name of the page. It can be a dynamic string, null, or undefined.
6
+ *
7
+ * If name is null or undefined, this page becomes the default handler for its parent layout.
8
+ * It will be rendered whenever the parent layout matches and no specific page name matches.
9
+ *
10
+ * @example
11
+ * <Page name="home">
12
+ * // Can be navigated to by "/home"
13
+ * <div>Home</div>
14
+ * </Page>
15
+ *
16
+ * <Layout path="user">
17
+ * <Page name="profile">
18
+ * // Can be navigated to by "/user/profile"
19
+ * <div>User Profile</div>
20
+ * </Page>
21
+ *
22
+ * <Page name={null}>
23
+ * // Default handler for "/user" - renders when no specific page matches
24
+ * <div>User Default Page</div>
25
+ * </Page>
26
+ * </Layout>
27
+ *
28
+ * <Layout path="user">
29
+ * <Layout path=":id">
30
+ * <Page name="profile">
31
+ * // Can be navigated to by "/user/123/profile"
32
+ * <div>User Profile</div>
33
+ * </Page>
34
+ * </Layout>
35
+ * </Layout>
36
+ * ```
37
+ */
38
+ name?: string | null;
39
+ }>;
40
+ type PageInjectContextType = {
41
+ name: string | null | undefined;
42
+ };
43
+ export declare const PageInjectContext: React.Context<PageInjectContextType | null>;
44
+ export declare function usePageInject(): PageInjectContextType | null;
45
+ export declare function Page({ children, name: nameProp }: PageProps): string | number | bigint | boolean | Iterable<React.ReactNode> | Promise<string | number | bigint | boolean | React.ReactPortal | React.ReactElement<unknown, string | React.JSXElementConstructor<any>> | Iterable<React.ReactNode> | null | undefined> | React.JSX.Element | null | undefined;
46
+ export {};
@@ -1,6 +1,6 @@
1
- import React from "react";
2
- export declare function Stage({ children, className, style, }: Readonly<{
3
- children?: React.ReactNode;
4
- className?: string;
5
- style?: React.CSSProperties;
6
- }>): React.JSX.Element;
1
+ import React from "react";
2
+ export declare function Stage({ children, className, style, }: Readonly<{
3
+ children?: React.ReactNode;
4
+ className?: string;
5
+ style?: React.CSSProperties;
6
+ }>): React.JSX.Element;