@turnipxenon/pineapple 1.1.2 → 2.2.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 +20 -13
- package/src/lib/app.postcss +106 -47
- package/src/lib/assets/icons/bitbucket-icon.svg +1 -0
- package/src/lib/assets/icons/github-mark.svg +1 -0
- package/src/lib/assets/icons/link-icon.svg +1 -0
- package/src/lib/assets/icons/linkedin.svg +1 -0
- package/src/lib/assets/icons/mail.svg +1 -0
- package/src/lib/assets/others/seaweed-showcase.mp4 +0 -0
- package/src/lib/assets/others/weaver-footage.gif +0 -0
- package/src/lib/assets/others/window-set.png +0 -0
- package/src/lib/assets/placeholder/placeholder_circle.png +0 -0
- package/src/lib/components/Card.svelte +24 -0
- package/src/lib/components/CarouselElement.svelte +23 -0
- package/src/lib/components/Chip.svelte +12 -0
- package/src/lib/components/ElementVisbilityDetector.svelte +22 -0
- package/src/lib/components/OnElementVisbilityChanged.ts +1 -0
- package/src/lib/components/RandomizedBackground.svelte +6 -4
- package/src/lib/components/RandomizedImage.svelte +23 -14
- package/src/lib/components/StickyElement.svelte +40 -0
- package/src/lib/components/ToggleableContent.svelte +86 -0
- package/src/lib/components/ToggleableContentType.ts +4 -0
- package/src/lib/components/layouts/LayoutConstants.ts +1 -0
- package/src/lib/components/{PineappleBaseLayout.svelte → layouts/PineappleBaseLayout.svelte} +73 -71
- package/src/lib/components/layouts/SeaweedBaseLayout.svelte +109 -0
- package/src/lib/consts.ts +2 -0
- package/src/lib/index.ts +2 -1
- package/src/lib/styles/global.css +1 -0
- package/src/lib/template/SeaweedTemplate.svelte +873 -0
- package/src/lib/theme.postcss +114 -105
- package/src/lib/util/create_go_to_function.ts +5 -0
- package/src/routes/+layout.svelte +15 -19
- package/src/routes/+page.svelte +9 -12
- package/src/routes/personal/+layout.svelte +23 -0
- package/src/routes/personal/+page.svelte +37 -0
- package/src/routes/portfolio/+page.server.ts +44 -0
- package/src/routes/portfolio/+page.svelte +19 -0
- package/src/routes/portfolio/SocialSection.svelte +93 -0
- package/src/routes/portfolio/actual/+page.svelte +10 -0
- package/dist/app.postcss +0 -94
- package/dist/assets/bg_tiled/bg_tiled_ares.png +0 -0
- package/dist/assets/bg_tiled/bg_tiled_corn.png +0 -0
- package/dist/assets/bg_tiled/bg_tiled_pineapple.png +0 -0
- package/dist/assets/bg_tiled/bg_tiled_reinhard.png +0 -0
- package/dist/assets/bg_tiled/bg_tiled_tomato.png +0 -0
- package/dist/assets/bg_tiled/bg_tiled_turnip.png +0 -0
- package/dist/assets/characters/ares/ares_blushing.webp +0 -0
- package/dist/assets/characters/ares/ares_disappointed.webp +0 -0
- package/dist/assets/characters/ares/ares_happy.webp +0 -0
- package/dist/assets/characters/ares/ares_lets_go.webp +0 -0
- package/dist/assets/characters/ares/ares_logo.webp +0 -0
- package/dist/assets/characters/ares/ares_mad.webp +0 -0
- package/dist/assets/characters/ares/ares_neutral.webp +0 -0
- package/dist/assets/characters/ares/ares_slightly_mad.webp +0 -0
- package/dist/assets/characters/ares/ares_surprised.webp +0 -0
- package/dist/assets/characters/ares/ares_yay.webp +0 -0
- package/dist/assets/game_dev/footage-chef-wings.gif +0 -0
- package/dist/assets/game_dev/footage-depreciation.webm +0 -0
- package/dist/assets/game_dev/footage-thinking-of-flowers.webm +0 -0
- package/dist/assets/game_dev/screenshot-game-jam-mama.png +0 -0
- package/dist/assets/game_dev/screenshot-string-hop.png +0 -0
- package/dist/assets/game_dev/screenshot-wet-ass-road.png +0 -0
- package/dist/assets/temp/background-image.jpg +0 -0
- package/dist/assets/temp/bitbucket-logo.png +0 -0
- package/dist/assets/temp/github-logo.png +0 -0
- package/dist/assets/temp/header-hep-cat.mp4 +0 -0
- package/dist/assets/temp/header-hep-cat.ogg +0 -0
- package/dist/assets/temp/header-hep-cat.webm +0 -0
- package/dist/assets/temp/header-pengi.mp4 +0 -0
- package/dist/assets/temp/header-pengi.webm +0 -0
- package/dist/assets/temp/header-soulwork.mp4 +0 -0
- package/dist/assets/temp/header-soulwork.ogg +0 -0
- package/dist/assets/temp/header-soulwork.webm +0 -0
- package/dist/components/DialogOverlay.svelte +0 -93
- package/dist/components/DialogOverlay.svelte.d.ts +0 -14
- package/dist/components/LazyAsset.svelte +0 -96
- package/dist/components/LazyAsset.svelte.d.ts +0 -20
- package/dist/components/LazyAssetType.d.ts +0 -10
- package/dist/components/LazyAssetType.js +0 -12
- package/dist/components/PineappleBaseLayout.svelte +0 -186
- package/dist/components/PineappleBaseLayout.svelte.d.ts +0 -19
- package/dist/components/RandomizedBackground.svelte +0 -62
- package/dist/components/RandomizedBackground.svelte.d.ts +0 -16
- package/dist/components/RandomizedImage.svelte +0 -29
- package/dist/components/RandomizedImage.svelte.d.ts +0 -17
- package/dist/components/dialog_manager/DialogManager.d.ts +0 -77
- package/dist/components/dialog_manager/DialogManager.js +0 -239
- package/dist/components/dialog_manager/DialogManagerStore.d.ts +0 -41
- package/dist/components/dialog_manager/DialogManagerStore.js +0 -45
- package/dist/components/dialog_manager/DialogProcessor.d.ts +0 -13
- package/dist/components/dialog_manager/DialogProcessor.js +0 -62
- package/dist/components/dialog_manager/DialogUtils.d.ts +0 -5
- package/dist/components/dialog_manager/DialogUtils.js +0 -8
- package/dist/components/dialog_manager/behavior_tree/core/BTreeUtils.d.ts +0 -15
- package/dist/components/dialog_manager/behavior_tree/core/BTreeUtils.js +0 -34
- package/dist/components/dialog_manager/behavior_tree/core/BaseBehaviorResult.d.ts +0 -4
- package/dist/components/dialog_manager/behavior_tree/core/BaseBehaviorResult.js +0 -1
- package/dist/components/dialog_manager/behavior_tree/core/BehaviorNode.d.ts +0 -3
- package/dist/components/dialog_manager/behavior_tree/core/BehaviorNode.js +0 -1
- package/dist/components/dialog_manager/behavior_tree/core/BehaviorStatus.d.ts +0 -5
- package/dist/components/dialog_manager/behavior_tree/core/BehaviorStatus.js +0 -6
- package/dist/components/dialog_manager/behavior_tree/core/SelectorNode.d.ts +0 -12
- package/dist/components/dialog_manager/behavior_tree/core/SelectorNode.js +0 -22
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionArguments.d.ts +0 -5
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionArguments.js +0 -1
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionBehaviorNode.d.ts +0 -4
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionBehaviorNode.js +0 -1
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionEvaluator.d.ts +0 -15
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionEvaluator.js +0 -220
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionResult.d.ts +0 -5
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionResult.js +0 -1
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionSelectorNode.d.ts +0 -8
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionSelectorNode.js +0 -15
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionState.d.ts +0 -3
- package/dist/components/dialog_manager/behavior_tree/expression/ExpressionState.js +0 -1
- package/dist/components/dialog_manager/behavior_tree/expression/OperandNode.d.ts +0 -10
- package/dist/components/dialog_manager/behavior_tree/expression/OperandNode.js +0 -15
- package/dist/components/dialog_manager/behavior_tree/expression/OperatorNode.d.ts +0 -11
- package/dist/components/dialog_manager/behavior_tree/expression/OperatorNode.js +0 -30
- package/dist/components/dialog_manager/behavior_tree/expression/commands/CommandExpressionNode.d.ts +0 -6
- package/dist/components/dialog_manager/behavior_tree/expression/commands/CommandExpressionNode.js +0 -21
- package/dist/components/dialog_manager/behavior_tree/expression/commands/CommandLogicNode.d.ts +0 -9
- package/dist/components/dialog_manager/behavior_tree/expression/commands/CommandLogicNode.js +0 -19
- package/dist/components/dialog_manager/behavior_tree/expression/commands/CommandMap.d.ts +0 -9
- package/dist/components/dialog_manager/behavior_tree/expression/commands/CommandMap.js +0 -18
- package/dist/components/dialog_manager/behavior_tree/expression/commands/RandomRangeCommand.d.ts +0 -15
- package/dist/components/dialog_manager/behavior_tree/expression/commands/RandomRangeCommand.js +0 -24
- package/dist/components/dialog_manager/behavior_tree/expression/commands/VisitedCommand.d.ts +0 -20
- package/dist/components/dialog_manager/behavior_tree/expression/commands/VisitedCommand.js +0 -32
- package/dist/components/dialog_manager/behavior_tree/expression/commands/VisitedCountCommand.d.ts +0 -13
- package/dist/components/dialog_manager/behavior_tree/expression/commands/VisitedCountCommand.js +0 -25
- package/dist/components/dialog_manager/behavior_tree/expression/operators/AndOperator.d.ts +0 -7
- package/dist/components/dialog_manager/behavior_tree/expression/operators/AndOperator.js +0 -15
- package/dist/components/dialog_manager/behavior_tree/expression/operators/EqualityOperator.d.ts +0 -7
- package/dist/components/dialog_manager/behavior_tree/expression/operators/EqualityOperator.js +0 -14
- package/dist/components/dialog_manager/behavior_tree/expression/operators/GreaterThanEqualOperator.d.ts +0 -7
- package/dist/components/dialog_manager/behavior_tree/expression/operators/GreaterThanEqualOperator.js +0 -12
- package/dist/components/dialog_manager/behavior_tree/expression/operators/GreaterThanOperator.d.ts +0 -7
- package/dist/components/dialog_manager/behavior_tree/expression/operators/GreaterThanOperator.js +0 -12
- package/dist/components/dialog_manager/behavior_tree/expression/operators/InequalityOperator.d.ts +0 -7
- package/dist/components/dialog_manager/behavior_tree/expression/operators/InequalityOperator.js +0 -12
- package/dist/components/dialog_manager/behavior_tree/expression/operators/LessThanEqualOperator.d.ts +0 -7
- package/dist/components/dialog_manager/behavior_tree/expression/operators/LessThanEqualOperator.js +0 -12
- package/dist/components/dialog_manager/behavior_tree/expression/operators/LessThanOperator.d.ts +0 -7
- package/dist/components/dialog_manager/behavior_tree/expression/operators/LessThanOperator.js +0 -12
- package/dist/components/dialog_manager/behavior_tree/expression/operators/NegationOperator.d.ts +0 -7
- package/dist/components/dialog_manager/behavior_tree/expression/operators/NegationOperator.js +0 -13
- package/dist/components/dialog_manager/behavior_tree/expression/operators/OperatorLogicNode.d.ts +0 -17
- package/dist/components/dialog_manager/behavior_tree/expression/operators/OperatorLogicNode.js +0 -32
- package/dist/components/dialog_manager/behavior_tree/expression/operators/OperatorMap.d.ts +0 -9
- package/dist/components/dialog_manager/behavior_tree/expression/operators/OperatorMap.js +0 -47
- package/dist/components/dialog_manager/behavior_tree/expression/operators/OrOperator.d.ts +0 -7
- package/dist/components/dialog_manager/behavior_tree/expression/operators/OrOperator.js +0 -13
- package/dist/components/dialog_manager/behavior_tree/expression/operators/XorOperator.d.ts +0 -7
- package/dist/components/dialog_manager/behavior_tree/expression/operators/XorOperator.js +0 -17
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/DivisionOperator.d.ts +0 -7
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/DivisionOperator.js +0 -14
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MinusOperator.d.ts +0 -7
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MinusOperator.js +0 -14
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MultiplicationOperator.d.ts +0 -7
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MultiplicationOperator.js +0 -12
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/PlusOperator.d.ts +0 -7
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/PlusOperator.js +0 -14
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/RemainderDivisionOperator.d.ts +0 -7
- package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/RemainderDivisionOperator.js +0 -14
- package/dist/components/dialog_manager/behavior_tree/line_core/LineBehaviorNode.d.ts +0 -4
- package/dist/components/dialog_manager/behavior_tree/line_core/LineBehaviorNode.js +0 -1
- package/dist/components/dialog_manager/behavior_tree/line_core/LineBehaviorResult.d.ts +0 -6
- package/dist/components/dialog_manager/behavior_tree/line_core/LineBehaviorResult.js +0 -1
- package/dist/components/dialog_manager/behavior_tree/line_core/LineNodeArguments.d.ts +0 -6
- package/dist/components/dialog_manager/behavior_tree/line_core/LineNodeArguments.js +0 -1
- package/dist/components/dialog_manager/behavior_tree/line_core/LineSelectorNode.d.ts +0 -8
- package/dist/components/dialog_manager/behavior_tree/line_core/LineSelectorNode.js +0 -15
- package/dist/components/dialog_manager/behavior_tree/line_processors/BehaviorState.d.ts +0 -5
- package/dist/components/dialog_manager/behavior_tree/line_processors/BehaviorState.js +0 -5
- package/dist/components/dialog_manager/behavior_tree/line_processors/ElseIfNode.d.ts +0 -11
- package/dist/components/dialog_manager/behavior_tree/line_processors/ElseIfNode.js +0 -53
- package/dist/components/dialog_manager/behavior_tree/line_processors/ElseNode.d.ts +0 -11
- package/dist/components/dialog_manager/behavior_tree/line_processors/ElseNode.js +0 -49
- package/dist/components/dialog_manager/behavior_tree/line_processors/EndIfNode.d.ts +0 -11
- package/dist/components/dialog_manager/behavior_tree/line_processors/EndIfNode.js +0 -23
- package/dist/components/dialog_manager/behavior_tree/line_processors/IfMode.d.ts +0 -6
- package/dist/components/dialog_manager/behavior_tree/line_processors/IfMode.js +0 -8
- package/dist/components/dialog_manager/behavior_tree/line_processors/IfNode.d.ts +0 -12
- package/dist/components/dialog_manager/behavior_tree/line_processors/IfNode.js +0 -43
- package/dist/components/dialog_manager/behavior_tree/line_processors/IgnoreGuardNode.d.ts +0 -11
- package/dist/components/dialog_manager/behavior_tree/line_processors/IgnoreGuardNode.js +0 -25
- package/dist/components/dialog_manager/behavior_tree/line_processors/IgnoreJumpNode.d.ts +0 -6
- package/dist/components/dialog_manager/behavior_tree/line_processors/IgnoreJumpNode.js +0 -18
- package/dist/components/dialog_manager/behavior_tree/line_processors/LineCommentNode.d.ts +0 -6
- package/dist/components/dialog_manager/behavior_tree/line_processors/LineCommentNode.js +0 -17
- package/dist/components/dialog_manager/behavior_tree/line_processors/NormalLineProcessorNode.d.ts +0 -10
- package/dist/components/dialog_manager/behavior_tree/line_processors/NormalLineProcessorNode.js +0 -38
- package/dist/components/dialog_manager/behavior_tree/line_processors/SetVariableNode.d.ts +0 -11
- package/dist/components/dialog_manager/behavior_tree/line_processors/SetVariableNode.js +0 -31
- package/dist/components/dialog_manager/behavior_tree/line_processors/commands/DeclareCommand.d.ts +0 -8
- package/dist/components/dialog_manager/behavior_tree/line_processors/commands/DeclareCommand.js +0 -39
- package/dist/components/dialog_manager/behavior_tree/line_processors/commands/JumpCommand.d.ts +0 -8
- package/dist/components/dialog_manager/behavior_tree/line_processors/commands/JumpCommand.js +0 -40
- package/dist/components/dialog_manager/behavior_tree/line_processors/commands/UnvisitCommand.d.ts +0 -9
- package/dist/components/dialog_manager/behavior_tree/line_processors/commands/UnvisitCommand.js +0 -28
- package/dist/index.d.ts +0 -8
- package/dist/index.js +0 -8
- package/dist/scripts/SetDefaultEnvironment.d.ts +0 -1
- package/dist/scripts/SetDefaultEnvironment.js +0 -41
- package/dist/scripts/pineapple_fiber/PineappleWeaver.d.ts +0 -9
- package/dist/scripts/pineapple_fiber/PineappleWeaver.js +0 -201
- package/dist/scripts/util/FileManagement.d.ts +0 -7
- package/dist/scripts/util/FileManagement.js +0 -35
- package/dist/scripts/util/ManualCheck.d.ts +0 -1
- package/dist/scripts/util/ManualCheck.js +0 -28
- package/dist/scripts/util/ManualCheckRun.d.ts +0 -1
- package/dist/scripts/util/ManualCheckRun.js +0 -6
- package/dist/store.d.ts +0 -17
- package/dist/store.js +0 -17
- package/dist/styles/DefaultGridContainer.css +0 -61
- package/dist/theme.postcss +0 -107
- package/dist/types/BlogBlurbMeta.d.ts +0 -11
- package/dist/types/BlogBlurbMeta.js +0 -16
- package/dist/types/BreadcrumbData.d.ts +0 -4
- package/dist/types/BreadcrumbData.js +0 -1
- package/dist/types/pineapple_fiber/DialogDetail.d.ts +0 -6
- package/dist/types/pineapple_fiber/DialogDetail.js +0 -1
- package/dist/types/pineapple_fiber/DialogState.d.ts +0 -5
- package/dist/types/pineapple_fiber/DialogState.js +0 -6
- package/dist/types/pineapple_fiber/DialogVariableStore.d.ts +0 -2
- package/dist/types/pineapple_fiber/DialogVariableStore.js +0 -20
- package/dist/types/pineapple_fiber/PortraitType.d.ts +0 -11
- package/dist/types/pineapple_fiber/PortraitType.js +0 -12
- package/dist/util/stable_random.d.ts +0 -2
- package/dist/util/stable_random.js +0 -15
- package/src/lib/assets/icons/chat_cursor.svg +0 -47
- package/src/lib/assets/icons/external_link.svg +0 -50
- package/static/default-card.png +0 -0
- package/static/favicon.png +0 -0
- /package/{dist/assets/icons/chat_cursor.svg → src/lib/assets/icons/chat-cursor.svg} +0 -0
- /package/{dist/assets/icons/external_link.svg → src/lib/assets/icons/external-link.svg} +0 -0
package/dist/components/dialog_manager/behavior_tree/expression/operators/GreaterThanOperator.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "./OperatorLogicNode";
|
|
2
|
-
export class GreaterThanOperator extends OperatorLogicNode {
|
|
3
|
-
doOperation = (currentOperands, nodeArgs) => {
|
|
4
|
-
nodeArgs.initState.operandStack.push(String(Number(currentOperands[0]) > Number(currentOperands[1])));
|
|
5
|
-
};
|
|
6
|
-
getOperatorType = () => {
|
|
7
|
-
return OperatorType.Binary;
|
|
8
|
-
};
|
|
9
|
-
getToken = () => {
|
|
10
|
-
return ">";
|
|
11
|
-
};
|
|
12
|
-
}
|
package/dist/components/dialog_manager/behavior_tree/expression/operators/InequalityOperator.d.ts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "./OperatorLogicNode";
|
|
2
|
-
import type { ExpressionArguments } from "../ExpressionArguments";
|
|
3
|
-
export declare class InequalityOperator extends OperatorLogicNode {
|
|
4
|
-
doOperation: (currentOperands: string[], nodeArgs: ExpressionArguments) => void;
|
|
5
|
-
getOperatorType: () => OperatorType;
|
|
6
|
-
getToken: () => string;
|
|
7
|
-
}
|
package/dist/components/dialog_manager/behavior_tree/expression/operators/InequalityOperator.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "./OperatorLogicNode";
|
|
2
|
-
export class InequalityOperator extends OperatorLogicNode {
|
|
3
|
-
doOperation = (currentOperands, nodeArgs) => {
|
|
4
|
-
nodeArgs.initState.operandStack.push(String(currentOperands[0] !== currentOperands[1]));
|
|
5
|
-
};
|
|
6
|
-
getOperatorType = () => {
|
|
7
|
-
return OperatorType.Binary;
|
|
8
|
-
};
|
|
9
|
-
getToken = () => {
|
|
10
|
-
return "!=";
|
|
11
|
-
};
|
|
12
|
-
}
|
package/dist/components/dialog_manager/behavior_tree/expression/operators/LessThanEqualOperator.d.ts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "./OperatorLogicNode";
|
|
2
|
-
import type { ExpressionArguments } from "../ExpressionArguments";
|
|
3
|
-
export declare class LessThanEqualOperator extends OperatorLogicNode {
|
|
4
|
-
doOperation: (currentOperands: string[], nodeArgs: ExpressionArguments) => void;
|
|
5
|
-
getOperatorType: () => OperatorType;
|
|
6
|
-
getToken: () => string;
|
|
7
|
-
}
|
package/dist/components/dialog_manager/behavior_tree/expression/operators/LessThanEqualOperator.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "./OperatorLogicNode";
|
|
2
|
-
export class LessThanEqualOperator extends OperatorLogicNode {
|
|
3
|
-
doOperation = (currentOperands, nodeArgs) => {
|
|
4
|
-
nodeArgs.initState.operandStack.push(String(Number(currentOperands[0]) <= Number(currentOperands[1])));
|
|
5
|
-
};
|
|
6
|
-
getOperatorType = () => {
|
|
7
|
-
return OperatorType.Binary;
|
|
8
|
-
};
|
|
9
|
-
getToken = () => {
|
|
10
|
-
return "<=";
|
|
11
|
-
};
|
|
12
|
-
}
|
package/dist/components/dialog_manager/behavior_tree/expression/operators/LessThanOperator.d.ts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "./OperatorLogicNode";
|
|
2
|
-
import type { ExpressionArguments } from "../ExpressionArguments";
|
|
3
|
-
export declare class LessThanOperator extends OperatorLogicNode {
|
|
4
|
-
doOperation: (currentOperands: string[], nodeArgs: ExpressionArguments) => void;
|
|
5
|
-
getOperatorType: () => OperatorType;
|
|
6
|
-
getToken: () => string;
|
|
7
|
-
}
|
package/dist/components/dialog_manager/behavior_tree/expression/operators/LessThanOperator.js
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "./OperatorLogicNode";
|
|
2
|
-
export class LessThanOperator extends OperatorLogicNode {
|
|
3
|
-
doOperation = (currentOperands, nodeArgs) => {
|
|
4
|
-
nodeArgs.initState.operandStack.push(String(Number(currentOperands[0]) < Number(currentOperands[1])));
|
|
5
|
-
};
|
|
6
|
-
getOperatorType = () => {
|
|
7
|
-
return OperatorType.Binary;
|
|
8
|
-
};
|
|
9
|
-
getToken = () => {
|
|
10
|
-
return "<";
|
|
11
|
-
};
|
|
12
|
-
}
|
package/dist/components/dialog_manager/behavior_tree/expression/operators/NegationOperator.d.ts
DELETED
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "./OperatorLogicNode";
|
|
2
|
-
import type { ExpressionArguments } from "../ExpressionArguments";
|
|
3
|
-
export declare class NegationOperator extends OperatorLogicNode {
|
|
4
|
-
doOperation: (currentOperands: string[], nodeArgs: ExpressionArguments) => void;
|
|
5
|
-
getOperatorType: () => OperatorType;
|
|
6
|
-
getToken: () => string;
|
|
7
|
-
}
|
package/dist/components/dialog_manager/behavior_tree/expression/operators/NegationOperator.js
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "./OperatorLogicNode";
|
|
2
|
-
import { btreeUtils } from "../../core/BTreeUtils";
|
|
3
|
-
export class NegationOperator extends OperatorLogicNode {
|
|
4
|
-
doOperation = (currentOperands, nodeArgs) => {
|
|
5
|
-
nodeArgs.initState.operandStack.push(String(!btreeUtils.isTrue(currentOperands[0])));
|
|
6
|
-
};
|
|
7
|
-
getOperatorType = () => {
|
|
8
|
-
return OperatorType.Unary;
|
|
9
|
-
};
|
|
10
|
-
getToken = () => {
|
|
11
|
-
return "!";
|
|
12
|
-
};
|
|
13
|
-
}
|
package/dist/components/dialog_manager/behavior_tree/expression/operators/OperatorLogicNode.d.ts
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import type { ExpressionBehaviorNode } from "../ExpressionBehaviorNode";
|
|
2
|
-
import type { ExpressionArguments } from "../ExpressionArguments";
|
|
3
|
-
import type { ExpressionResult } from "../ExpressionResult";
|
|
4
|
-
export declare enum OperatorType {
|
|
5
|
-
Unary = 0,
|
|
6
|
-
Binary = 1
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* a leaf node that will always run success
|
|
10
|
-
* do the processing outside comparing with getToken
|
|
11
|
-
*/
|
|
12
|
-
export declare abstract class OperatorLogicNode implements ExpressionBehaviorNode {
|
|
13
|
-
abstract getToken: () => string;
|
|
14
|
-
abstract getOperatorType: () => OperatorType;
|
|
15
|
-
abstract doOperation: (currentOperands: string[], nodeArgs: ExpressionArguments) => void;
|
|
16
|
-
process(nodeArgs: ExpressionArguments): ExpressionResult;
|
|
17
|
-
}
|
package/dist/components/dialog_manager/behavior_tree/expression/operators/OperatorLogicNode.js
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { BehaviorStatus } from "../../core/BehaviorStatus";
|
|
2
|
-
export var OperatorType;
|
|
3
|
-
(function (OperatorType) {
|
|
4
|
-
OperatorType[OperatorType["Unary"] = 0] = "Unary";
|
|
5
|
-
OperatorType[OperatorType["Binary"] = 1] = "Binary";
|
|
6
|
-
})(OperatorType || (OperatorType = {}));
|
|
7
|
-
/**
|
|
8
|
-
* a leaf node that will always run success
|
|
9
|
-
* do the processing outside comparing with getToken
|
|
10
|
-
*/
|
|
11
|
-
export class OperatorLogicNode {
|
|
12
|
-
process(nodeArgs) {
|
|
13
|
-
const currentOperands = [];
|
|
14
|
-
switch (this.getOperatorType()) {
|
|
15
|
-
case OperatorType.Unary:
|
|
16
|
-
currentOperands.unshift(nodeArgs.initState.operandStack.pop());
|
|
17
|
-
break;
|
|
18
|
-
case OperatorType.Binary:
|
|
19
|
-
currentOperands.unshift(nodeArgs.initState.operandStack.pop());
|
|
20
|
-
currentOperands.unshift(nodeArgs.initState.operandStack.pop());
|
|
21
|
-
break;
|
|
22
|
-
default:
|
|
23
|
-
console.error(`Unimplemented operator type: ${this.getOperatorType()}`);
|
|
24
|
-
break;
|
|
25
|
-
}
|
|
26
|
-
this.doOperation(currentOperands, nodeArgs);
|
|
27
|
-
return {
|
|
28
|
-
nextState: nodeArgs.initState,
|
|
29
|
-
status: BehaviorStatus.Success
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type { OperatorLogicNode } from "./OperatorLogicNode";
|
|
2
|
-
declare class OperatorMap {
|
|
3
|
-
_operatorLogicMap: Map<string, OperatorLogicNode>;
|
|
4
|
-
constructor();
|
|
5
|
-
get: (operator: string) => OperatorLogicNode | undefined;
|
|
6
|
-
exists: (operator: string) => boolean;
|
|
7
|
-
}
|
|
8
|
-
export declare const operatorMap: OperatorMap;
|
|
9
|
-
export {};
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { EqualityOperator } from "./EqualityOperator";
|
|
2
|
-
import { InequalityOperator } from "./InequalityOperator";
|
|
3
|
-
import { GreaterThanOperator } from "./GreaterThanOperator";
|
|
4
|
-
import { GreaterThanEqualOperator } from "./GreaterThanEqualOperator";
|
|
5
|
-
import { LessThanOperator } from "./LessThanOperator";
|
|
6
|
-
import { LessThanEqualOperator } from "./LessThanEqualOperator";
|
|
7
|
-
import { NegationOperator } from "./NegationOperator";
|
|
8
|
-
import { AndOperator } from "./AndOperator";
|
|
9
|
-
import { OrOperator } from "./OrOperator";
|
|
10
|
-
import { XorOperator } from "./XorOperator";
|
|
11
|
-
import { AddOperator } from "./arithmetic/PlusOperator";
|
|
12
|
-
import { MinusOperator } from "./arithmetic/MinusOperator";
|
|
13
|
-
import { MultiplicationOperator } from "./arithmetic/MultiplicationOperator";
|
|
14
|
-
import { DivisionOperator } from "./arithmetic/DivisionOperator";
|
|
15
|
-
import { RemainderDivisionOperator } from "./arithmetic/RemainderDivisionOperator";
|
|
16
|
-
class OperatorMap {
|
|
17
|
-
_operatorLogicMap = new Map();
|
|
18
|
-
constructor() {
|
|
19
|
-
// set up operator logic
|
|
20
|
-
[
|
|
21
|
-
new EqualityOperator(),
|
|
22
|
-
new InequalityOperator(),
|
|
23
|
-
new GreaterThanOperator(),
|
|
24
|
-
new GreaterThanEqualOperator(),
|
|
25
|
-
new LessThanOperator(),
|
|
26
|
-
new LessThanEqualOperator(),
|
|
27
|
-
new NegationOperator(),
|
|
28
|
-
new AndOperator(),
|
|
29
|
-
new OrOperator(),
|
|
30
|
-
new XorOperator(),
|
|
31
|
-
new AddOperator(),
|
|
32
|
-
new MinusOperator(),
|
|
33
|
-
new MultiplicationOperator(),
|
|
34
|
-
new DivisionOperator(),
|
|
35
|
-
new RemainderDivisionOperator()
|
|
36
|
-
].forEach((operatorLogic) => {
|
|
37
|
-
this._operatorLogicMap.set(operatorLogic.getToken(), operatorLogic);
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
get = (operator) => {
|
|
41
|
-
return this._operatorLogicMap.get(operator);
|
|
42
|
-
};
|
|
43
|
-
exists = (operator) => {
|
|
44
|
-
return this.get(operator) !== undefined;
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
export const operatorMap = new OperatorMap();
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "./OperatorLogicNode";
|
|
2
|
-
import type { ExpressionArguments } from "../ExpressionArguments";
|
|
3
|
-
export declare class OrOperator extends OperatorLogicNode {
|
|
4
|
-
doOperation: (currentOperands: string[], nodeArgs: ExpressionArguments) => void;
|
|
5
|
-
getOperatorType: () => OperatorType;
|
|
6
|
-
getToken: () => string;
|
|
7
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "./OperatorLogicNode";
|
|
2
|
-
import { btreeUtils } from "../../core/BTreeUtils";
|
|
3
|
-
export class OrOperator extends OperatorLogicNode {
|
|
4
|
-
doOperation = (currentOperands, nodeArgs) => {
|
|
5
|
-
nodeArgs.initState.operandStack.push(String(btreeUtils.isTrue(currentOperands[0]) || btreeUtils.isTrue(currentOperands[1])));
|
|
6
|
-
};
|
|
7
|
-
getOperatorType = () => {
|
|
8
|
-
return OperatorType.Binary;
|
|
9
|
-
};
|
|
10
|
-
getToken = () => {
|
|
11
|
-
return "||";
|
|
12
|
-
};
|
|
13
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "./OperatorLogicNode";
|
|
2
|
-
import type { ExpressionArguments } from "../ExpressionArguments";
|
|
3
|
-
export declare class XorOperator extends OperatorLogicNode {
|
|
4
|
-
doOperation: (currentOperands: string[], nodeArgs: ExpressionArguments) => void;
|
|
5
|
-
getOperatorType: () => OperatorType;
|
|
6
|
-
getToken: () => string;
|
|
7
|
-
}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "./OperatorLogicNode";
|
|
2
|
-
import { btreeUtils } from "../../core/BTreeUtils";
|
|
3
|
-
export class XorOperator extends OperatorLogicNode {
|
|
4
|
-
doOperation = (currentOperands, nodeArgs) => {
|
|
5
|
-
// todo: evaluate possible weird cases when doing number comparisons
|
|
6
|
-
// ISSUE #88 https://github.com/TurnipXenon/pineapple/issues/88
|
|
7
|
-
const A = btreeUtils.isTrue(currentOperands[0]);
|
|
8
|
-
const B = btreeUtils.isTrue(currentOperands[1]);
|
|
9
|
-
nodeArgs.initState.operandStack.push(String(!((A && B) || A || B)));
|
|
10
|
-
};
|
|
11
|
-
getOperatorType = () => {
|
|
12
|
-
return OperatorType.Binary;
|
|
13
|
-
};
|
|
14
|
-
getToken = () => {
|
|
15
|
-
return "^";
|
|
16
|
-
};
|
|
17
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "../OperatorLogicNode";
|
|
2
|
-
import type { ExpressionArguments } from "../../ExpressionArguments";
|
|
3
|
-
export declare class DivisionOperator extends OperatorLogicNode {
|
|
4
|
-
doOperation: (currentOperands: string[], nodeArgs: ExpressionArguments) => void;
|
|
5
|
-
getOperatorType: () => OperatorType;
|
|
6
|
-
getToken: () => string;
|
|
7
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "../OperatorLogicNode";
|
|
2
|
-
export class DivisionOperator extends OperatorLogicNode {
|
|
3
|
-
doOperation = (currentOperands, nodeArgs) => {
|
|
4
|
-
// todo: Add division protection
|
|
5
|
-
// ISSUE #96 https://github.com/TurnipXenon/pineapple/issues/96
|
|
6
|
-
nodeArgs.initState.operandStack.push(String(Number(currentOperands[0]) / Number(currentOperands[1])));
|
|
7
|
-
};
|
|
8
|
-
getOperatorType = () => {
|
|
9
|
-
return OperatorType.Binary;
|
|
10
|
-
};
|
|
11
|
-
getToken = () => {
|
|
12
|
-
return "/";
|
|
13
|
-
};
|
|
14
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "../OperatorLogicNode";
|
|
2
|
-
import type { ExpressionArguments } from "../../ExpressionArguments";
|
|
3
|
-
export declare class MinusOperator extends OperatorLogicNode {
|
|
4
|
-
doOperation: (currentOperands: string[], nodeArgs: ExpressionArguments) => void;
|
|
5
|
-
getOperatorType: () => OperatorType;
|
|
6
|
-
getToken: () => string;
|
|
7
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "../OperatorLogicNode";
|
|
2
|
-
export class MinusOperator extends OperatorLogicNode {
|
|
3
|
-
doOperation = (currentOperands, nodeArgs) => {
|
|
4
|
-
// todo: evaluate possible weird cases when doing number comparisons
|
|
5
|
-
// ISSUE #88 https://github.com/TurnipXenon/pineapple/issues/88
|
|
6
|
-
nodeArgs.initState.operandStack.push(String(Number(currentOperands[0]) - Number(currentOperands[1])));
|
|
7
|
-
};
|
|
8
|
-
getOperatorType = () => {
|
|
9
|
-
return OperatorType.Binary;
|
|
10
|
-
};
|
|
11
|
-
getToken = () => {
|
|
12
|
-
return "-";
|
|
13
|
-
};
|
|
14
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "../OperatorLogicNode";
|
|
2
|
-
import type { ExpressionArguments } from "../../ExpressionArguments";
|
|
3
|
-
export declare class MultiplicationOperator extends OperatorLogicNode {
|
|
4
|
-
doOperation: (currentOperands: string[], nodeArgs: ExpressionArguments) => void;
|
|
5
|
-
getOperatorType: () => OperatorType;
|
|
6
|
-
getToken: () => string;
|
|
7
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "../OperatorLogicNode";
|
|
2
|
-
export class MultiplicationOperator extends OperatorLogicNode {
|
|
3
|
-
doOperation = (currentOperands, nodeArgs) => {
|
|
4
|
-
nodeArgs.initState.operandStack.push(String(Number(currentOperands[0]) * Number(currentOperands[1])));
|
|
5
|
-
};
|
|
6
|
-
getOperatorType = () => {
|
|
7
|
-
return OperatorType.Binary;
|
|
8
|
-
};
|
|
9
|
-
getToken = () => {
|
|
10
|
-
return "*";
|
|
11
|
-
};
|
|
12
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "../OperatorLogicNode";
|
|
2
|
-
import type { ExpressionArguments } from "../../ExpressionArguments";
|
|
3
|
-
export declare class AddOperator extends OperatorLogicNode {
|
|
4
|
-
doOperation: (currentOperands: string[], nodeArgs: ExpressionArguments) => void;
|
|
5
|
-
getOperatorType: () => OperatorType;
|
|
6
|
-
getToken: () => string;
|
|
7
|
-
}
|
package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/PlusOperator.js
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "../OperatorLogicNode";
|
|
2
|
-
export class AddOperator extends OperatorLogicNode {
|
|
3
|
-
doOperation = (currentOperands, nodeArgs) => {
|
|
4
|
-
// todo: evaluate possible weird cases when doing number comparisons
|
|
5
|
-
// ISSUE #88 https://github.com/TurnipXenon/pineapple/issues/88
|
|
6
|
-
nodeArgs.initState.operandStack.push(String(Number(currentOperands[0]) + Number(currentOperands[1])));
|
|
7
|
-
};
|
|
8
|
-
getOperatorType = () => {
|
|
9
|
-
return OperatorType.Binary;
|
|
10
|
-
};
|
|
11
|
-
getToken = () => {
|
|
12
|
-
return "+";
|
|
13
|
-
};
|
|
14
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "../OperatorLogicNode";
|
|
2
|
-
import type { ExpressionArguments } from "../../ExpressionArguments";
|
|
3
|
-
export declare class RemainderDivisionOperator extends OperatorLogicNode {
|
|
4
|
-
doOperation: (currentOperands: string[], nodeArgs: ExpressionArguments) => void;
|
|
5
|
-
getOperatorType: () => OperatorType;
|
|
6
|
-
getToken: () => string;
|
|
7
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { OperatorLogicNode, OperatorType } from "../OperatorLogicNode";
|
|
2
|
-
export class RemainderDivisionOperator extends OperatorLogicNode {
|
|
3
|
-
doOperation = (currentOperands, nodeArgs) => {
|
|
4
|
-
// todo: Add division protection
|
|
5
|
-
// ISSUE #96 https://github.com/TurnipXenon/pineapple/issues/96
|
|
6
|
-
nodeArgs.initState.operandStack.push(String(Number(currentOperands[0]) % Number(currentOperands[1])));
|
|
7
|
-
};
|
|
8
|
-
getOperatorType = () => {
|
|
9
|
-
return OperatorType.Binary;
|
|
10
|
-
};
|
|
11
|
-
getToken = () => {
|
|
12
|
-
return "%";
|
|
13
|
-
};
|
|
14
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { SelectorNode } from "../core/SelectorNode";
|
|
2
|
-
import type { LineNodeArguments } from "./LineNodeArguments";
|
|
3
|
-
import type { LineBehaviorResult } from "./LineBehaviorResult";
|
|
4
|
-
import type { LineBehaviorNode } from "./LineBehaviorNode";
|
|
5
|
-
export declare class LineSelectorNode extends SelectorNode<LineNodeArguments, LineBehaviorResult> {
|
|
6
|
-
constructor(nodeList: LineBehaviorNode[]);
|
|
7
|
-
defaultResult: () => LineBehaviorResult;
|
|
8
|
-
}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { SelectorNode } from "../core/SelectorNode";
|
|
2
|
-
import { BehaviorState } from "../line_processors/BehaviorState";
|
|
3
|
-
import { BehaviorStatus } from "../core/BehaviorStatus";
|
|
4
|
-
export class LineSelectorNode extends SelectorNode {
|
|
5
|
-
constructor(nodeList) {
|
|
6
|
-
super(nodeList);
|
|
7
|
-
}
|
|
8
|
-
defaultResult = () => {
|
|
9
|
-
return {
|
|
10
|
-
nextState: new BehaviorState(),
|
|
11
|
-
renderedLine: "",
|
|
12
|
-
status: BehaviorStatus.Failure
|
|
13
|
-
};
|
|
14
|
-
};
|
|
15
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { LineNodeArguments } from "../line_core/LineNodeArguments";
|
|
2
|
-
import type { LineBehaviorResult } from "../line_core/LineBehaviorResult";
|
|
3
|
-
import type { LineBehaviorNode } from "../line_core/LineBehaviorNode";
|
|
4
|
-
/**
|
|
5
|
-
* ElseIfNode is a leaf node that returns:
|
|
6
|
-
* - Success if it is an elseif node, and updates the behaviorState
|
|
7
|
-
* - Failure if it is not an elseif node
|
|
8
|
-
*/
|
|
9
|
-
export declare class ElseIfNode implements LineBehaviorNode {
|
|
10
|
-
process(nodeArgs: LineNodeArguments): LineBehaviorResult;
|
|
11
|
-
}
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { BehaviorStatus } from "../core/BehaviorStatus";
|
|
2
|
-
import { btreeUtils } from "../core/BTreeUtils";
|
|
3
|
-
import { IfMode } from "./IfMode";
|
|
4
|
-
import { expressionEvaluator } from "../expression/ExpressionEvaluator";
|
|
5
|
-
/**
|
|
6
|
-
* ElseIfNode is a leaf node that returns:
|
|
7
|
-
* - Success if it is an elseif node, and updates the behaviorState
|
|
8
|
-
* - Failure if it is not an elseif node
|
|
9
|
-
*/
|
|
10
|
-
export class ElseIfNode {
|
|
11
|
-
process(nodeArgs) {
|
|
12
|
-
if (!nodeArgs.line.startsWith("<<elseif")) {
|
|
13
|
-
return {
|
|
14
|
-
nextState: nodeArgs.initState,
|
|
15
|
-
renderedLine: "",
|
|
16
|
-
status: BehaviorStatus.Failure
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
const currentIfMode = btreeUtils.peek(nodeArgs.initState.ifModeStack);
|
|
20
|
-
switch (currentIfMode) {
|
|
21
|
-
case IfMode.Search:
|
|
22
|
-
// probably a syntax error
|
|
23
|
-
console.error("Syntax error found in yarn dialog!");
|
|
24
|
-
console.error(`Check out line ${nodeArgs.lineIndex + 1}: ${nodeArgs.line}`);
|
|
25
|
-
break;
|
|
26
|
-
case IfMode.Ignore:
|
|
27
|
-
// just move on
|
|
28
|
-
break;
|
|
29
|
-
case IfMode.Evaluated:
|
|
30
|
-
// previous case was true therefore ignore
|
|
31
|
-
nodeArgs.initState.ifModeStack.pop();
|
|
32
|
-
nodeArgs.initState.ifModeStack.push(IfMode.Ignore);
|
|
33
|
-
break;
|
|
34
|
-
case IfMode.EvaluateNext:
|
|
35
|
-
// since all the previous evaluations were false,
|
|
36
|
-
// let's try evaluating this like the if statement
|
|
37
|
-
if (expressionEvaluator.evaluate(nodeArgs.line, "<<elseif")) {
|
|
38
|
-
nodeArgs.initState.ifModeStack.pop();
|
|
39
|
-
nodeArgs.initState.ifModeStack.push(IfMode.Evaluated);
|
|
40
|
-
} // else: retain the EvaluateNext status
|
|
41
|
-
break;
|
|
42
|
-
default:
|
|
43
|
-
console.error("Unimplemented if state!");
|
|
44
|
-
console.error(`Check out line ${nodeArgs.lineIndex + 1}: ${nodeArgs.line}`);
|
|
45
|
-
break;
|
|
46
|
-
}
|
|
47
|
-
return {
|
|
48
|
-
nextState: nodeArgs.initState,
|
|
49
|
-
renderedLine: "",
|
|
50
|
-
status: BehaviorStatus.Success
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { LineNodeArguments } from "../line_core/LineNodeArguments";
|
|
2
|
-
import type { LineBehaviorResult } from "../line_core/LineBehaviorResult";
|
|
3
|
-
import type { LineBehaviorNode } from "../line_core/LineBehaviorNode";
|
|
4
|
-
/**
|
|
5
|
-
* ElseNode is a leaf node that returns:
|
|
6
|
-
* - Success if it is an else node, and updates the behaviorState
|
|
7
|
-
* - Failure if it is not an else node
|
|
8
|
-
*/
|
|
9
|
-
export declare class ElseNode implements LineBehaviorNode {
|
|
10
|
-
process(nodeArgs: LineNodeArguments): LineBehaviorResult;
|
|
11
|
-
}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { BehaviorStatus } from "../core/BehaviorStatus";
|
|
2
|
-
import { btreeUtils } from "../core/BTreeUtils";
|
|
3
|
-
import { IfMode } from "./IfMode";
|
|
4
|
-
/**
|
|
5
|
-
* ElseNode is a leaf node that returns:
|
|
6
|
-
* - Success if it is an else node, and updates the behaviorState
|
|
7
|
-
* - Failure if it is not an else node
|
|
8
|
-
*/
|
|
9
|
-
export class ElseNode {
|
|
10
|
-
process(nodeArgs) {
|
|
11
|
-
if (!nodeArgs.line.startsWith("<<else>>")) {
|
|
12
|
-
return {
|
|
13
|
-
nextState: nodeArgs.initState,
|
|
14
|
-
renderedLine: "",
|
|
15
|
-
status: BehaviorStatus.Failure
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
const currentIfMode = btreeUtils.peek(nodeArgs.initState.ifModeStack);
|
|
19
|
-
switch (currentIfMode) {
|
|
20
|
-
case IfMode.Search:
|
|
21
|
-
// probably a syntax error
|
|
22
|
-
console.error("Syntax error found in yarn dialog!");
|
|
23
|
-
console.error(`Check out line ${nodeArgs.lineIndex + 1}: ${nodeArgs.line}`);
|
|
24
|
-
break;
|
|
25
|
-
case IfMode.Ignore:
|
|
26
|
-
// just move on
|
|
27
|
-
break;
|
|
28
|
-
case IfMode.Evaluated:
|
|
29
|
-
// previous case was true therefore ignore
|
|
30
|
-
nodeArgs.initState.ifModeStack.pop();
|
|
31
|
-
nodeArgs.initState.ifModeStack.push(IfMode.Ignore);
|
|
32
|
-
break;
|
|
33
|
-
case IfMode.EvaluateNext:
|
|
34
|
-
// since all the previous evaluations were false, now let's do everything inside!
|
|
35
|
-
nodeArgs.initState.ifModeStack.pop();
|
|
36
|
-
nodeArgs.initState.ifModeStack.push(IfMode.Evaluated);
|
|
37
|
-
break;
|
|
38
|
-
default:
|
|
39
|
-
console.error("Unimplemented if state!");
|
|
40
|
-
console.error(`Check out line ${nodeArgs.lineIndex + 1}: ${nodeArgs.line}`);
|
|
41
|
-
break;
|
|
42
|
-
}
|
|
43
|
-
return {
|
|
44
|
-
nextState: nodeArgs.initState,
|
|
45
|
-
renderedLine: "",
|
|
46
|
-
status: BehaviorStatus.Success
|
|
47
|
-
};
|
|
48
|
-
}
|
|
49
|
-
}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { LineNodeArguments } from "../line_core/LineNodeArguments";
|
|
2
|
-
import type { LineBehaviorResult } from "../line_core/LineBehaviorResult";
|
|
3
|
-
import type { LineBehaviorNode } from "../line_core/LineBehaviorNode";
|
|
4
|
-
/**
|
|
5
|
-
* EndIfNode is a leaf node returns the following results:
|
|
6
|
-
* - Success: if it is an endif node, and updates the behaviorState
|
|
7
|
-
* - Failure: if it is not an endif node
|
|
8
|
-
*/
|
|
9
|
-
export declare class EndIfNode implements LineBehaviorNode {
|
|
10
|
-
process(nodeArgs: LineNodeArguments): LineBehaviorResult;
|
|
11
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { BehaviorStatus } from "../core/BehaviorStatus";
|
|
2
|
-
/**
|
|
3
|
-
* EndIfNode is a leaf node returns the following results:
|
|
4
|
-
* - Success: if it is an endif node, and updates the behaviorState
|
|
5
|
-
* - Failure: if it is not an endif node
|
|
6
|
-
*/
|
|
7
|
-
export class EndIfNode {
|
|
8
|
-
process(nodeArgs) {
|
|
9
|
-
if (!nodeArgs.line.startsWith("<<endif>>")) {
|
|
10
|
-
return {
|
|
11
|
-
nextState: nodeArgs.initState,
|
|
12
|
-
renderedLine: "",
|
|
13
|
-
status: BehaviorStatus.Failure
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
nodeArgs.initState.ifModeStack.pop();
|
|
17
|
-
return {
|
|
18
|
-
nextState: nodeArgs.initState,
|
|
19
|
-
renderedLine: "",
|
|
20
|
-
status: BehaviorStatus.Success
|
|
21
|
-
};
|
|
22
|
-
}
|
|
23
|
-
}
|