@turnipxenon/pineapple 2.2.1 → 2.3.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.
Files changed (752) hide show
  1. package/.env +5 -0
  2. package/.eslintignore +16 -0
  3. package/.eslintrc.cjs +20 -0
  4. package/.gitignore +14 -0
  5. package/.idea/.gitignore +5 -0
  6. package/.idea/codeStyles/Project.xml +65 -0
  7. package/.idea/codeStyles/codeStyleConfig.xml +5 -0
  8. package/.idea/discord.xml +7 -0
  9. package/.idea/inspectionProfiles/Project_Default.xml +22 -0
  10. package/.idea/modules.xml +8 -0
  11. package/.idea/pineapple.iml +14 -0
  12. package/.idea/vcs.xml +6 -0
  13. package/.idea/workspace.xml +663 -0
  14. package/.npmrc +1 -0
  15. package/.prettierignore +17 -0
  16. package/.prettierrc +9 -0
  17. package/.svelte-kit/__package__/app.postcss +153 -0
  18. package/.svelte-kit/__package__/assets/bg_tiled/bg_tiled_ares.png +0 -0
  19. package/.svelte-kit/__package__/assets/bg_tiled/bg_tiled_corn.png +0 -0
  20. package/.svelte-kit/__package__/assets/bg_tiled/bg_tiled_pineapple.png +0 -0
  21. package/.svelte-kit/__package__/assets/bg_tiled/bg_tiled_reinhard.png +0 -0
  22. package/.svelte-kit/__package__/assets/bg_tiled/bg_tiled_tomato.png +0 -0
  23. package/.svelte-kit/__package__/assets/bg_tiled/bg_tiled_turnip.png +0 -0
  24. package/.svelte-kit/__package__/assets/characters/ares/ares_blushing.webp +0 -0
  25. package/.svelte-kit/__package__/assets/characters/ares/ares_disappointed.webp +0 -0
  26. package/.svelte-kit/__package__/assets/characters/ares/ares_happy.webp +0 -0
  27. package/.svelte-kit/__package__/assets/characters/ares/ares_lets_go.webp +0 -0
  28. package/.svelte-kit/__package__/assets/characters/ares/ares_logo.webp +0 -0
  29. package/.svelte-kit/__package__/assets/characters/ares/ares_mad.webp +0 -0
  30. package/.svelte-kit/__package__/assets/characters/ares/ares_neutral.webp +0 -0
  31. package/.svelte-kit/__package__/assets/characters/ares/ares_slightly_mad.webp +0 -0
  32. package/.svelte-kit/__package__/assets/characters/ares/ares_surprised.webp +0 -0
  33. package/.svelte-kit/__package__/assets/characters/ares/ares_yay.webp +0 -0
  34. package/.svelte-kit/__package__/assets/game_dev/footage-chef-wings.gif +0 -0
  35. package/.svelte-kit/__package__/assets/game_dev/footage-depreciation.webm +0 -0
  36. package/.svelte-kit/__package__/assets/game_dev/footage-thinking-of-flowers.webm +0 -0
  37. package/.svelte-kit/__package__/assets/game_dev/screenshot-game-jam-mama.png +0 -0
  38. package/.svelte-kit/__package__/assets/game_dev/screenshot-string-hop.png +0 -0
  39. package/.svelte-kit/__package__/assets/game_dev/screenshot-wet-ass-road.png +0 -0
  40. package/.svelte-kit/__package__/assets/icons/bitbucket-icon.svg +1 -0
  41. package/.svelte-kit/__package__/assets/icons/chat-cursor.svg +47 -0
  42. package/.svelte-kit/__package__/assets/icons/external-link.svg +50 -0
  43. package/.svelte-kit/__package__/assets/icons/github-mark.svg +1 -0
  44. package/.svelte-kit/__package__/assets/icons/link-icon.svg +1 -0
  45. package/.svelte-kit/__package__/assets/icons/linkedin.svg +1 -0
  46. package/.svelte-kit/__package__/assets/icons/mail.svg +1 -0
  47. package/.svelte-kit/__package__/assets/others/seaweed-showcase.mp4 +0 -0
  48. package/.svelte-kit/__package__/assets/others/weaver-footage.gif +0 -0
  49. package/.svelte-kit/__package__/assets/others/window-set.png +0 -0
  50. package/.svelte-kit/__package__/assets/placeholder/placeholder_circle.png +0 -0
  51. package/.svelte-kit/__package__/assets/temp/background-image.jpg +0 -0
  52. package/.svelte-kit/__package__/assets/temp/bitbucket-logo.png +0 -0
  53. package/.svelte-kit/__package__/assets/temp/github-logo.png +0 -0
  54. package/.svelte-kit/__package__/assets/temp/header-hep-cat.mp4 +0 -0
  55. package/.svelte-kit/__package__/assets/temp/header-hep-cat.ogg +0 -0
  56. package/.svelte-kit/__package__/assets/temp/header-hep-cat.webm +0 -0
  57. package/.svelte-kit/__package__/assets/temp/header-pengi.mp4 +0 -0
  58. package/.svelte-kit/__package__/assets/temp/header-pengi.webm +0 -0
  59. package/.svelte-kit/__package__/assets/temp/header-soulwork.mp4 +0 -0
  60. package/.svelte-kit/__package__/assets/temp/header-soulwork.ogg +0 -0
  61. package/.svelte-kit/__package__/assets/temp/header-soulwork.webm +0 -0
  62. package/.svelte-kit/__package__/components/Card.svelte +31 -0
  63. package/.svelte-kit/__package__/components/Card.svelte.d.ts +35 -0
  64. package/.svelte-kit/__package__/components/CarouselElement.svelte +21 -0
  65. package/.svelte-kit/__package__/components/CarouselElement.svelte.d.ts +19 -0
  66. package/.svelte-kit/__package__/components/Chip.svelte +12 -0
  67. package/.svelte-kit/__package__/components/Chip.svelte.d.ts +27 -0
  68. package/.svelte-kit/__package__/components/DialogOverlay.svelte +95 -0
  69. package/.svelte-kit/__package__/components/DialogOverlay.svelte.d.ts +14 -0
  70. package/.svelte-kit/__package__/components/ElementVisbilityDetector.svelte +18 -0
  71. package/.svelte-kit/__package__/components/ElementVisbilityDetector.svelte.d.ts +18 -0
  72. package/.svelte-kit/__package__/components/LazyAsset.svelte +96 -0
  73. package/.svelte-kit/__package__/components/LazyAsset.svelte.d.ts +20 -0
  74. package/.svelte-kit/__package__/components/LazyAssetType.d.ts +10 -0
  75. package/.svelte-kit/__package__/components/LazyAssetType.js +12 -0
  76. package/.svelte-kit/__package__/components/OnElementVisbilityChanged.d.ts +1 -0
  77. package/.svelte-kit/__package__/components/OnElementVisbilityChanged.js +1 -0
  78. package/.svelte-kit/__package__/components/RandomizedBackground.svelte +64 -0
  79. package/.svelte-kit/__package__/components/RandomizedBackground.svelte.d.ts +16 -0
  80. package/.svelte-kit/__package__/components/RandomizedImage.svelte +37 -0
  81. package/.svelte-kit/__package__/components/RandomizedImage.svelte.d.ts +17 -0
  82. package/.svelte-kit/__package__/components/SocialSection.svelte +160 -0
  83. package/.svelte-kit/__package__/components/SocialSection.svelte.d.ts +29 -0
  84. package/.svelte-kit/__package__/components/StickyElement.svelte +36 -0
  85. package/.svelte-kit/__package__/components/StickyElement.svelte.d.ts +18 -0
  86. package/.svelte-kit/__package__/components/ToggleableContent.svelte +66 -0
  87. package/.svelte-kit/__package__/components/ToggleableContent.svelte.d.ts +19 -0
  88. package/.svelte-kit/__package__/components/ToggleableContentType.d.ts +4 -0
  89. package/.svelte-kit/__package__/components/ToggleableContentType.js +5 -0
  90. package/.svelte-kit/__package__/components/dialog_manager/DialogManager.d.ts +77 -0
  91. package/.svelte-kit/__package__/components/dialog_manager/DialogManager.js +239 -0
  92. package/.svelte-kit/__package__/components/dialog_manager/DialogManagerStore.d.ts +41 -0
  93. package/.svelte-kit/__package__/components/dialog_manager/DialogManagerStore.js +45 -0
  94. package/.svelte-kit/__package__/components/dialog_manager/DialogProcessor.d.ts +13 -0
  95. package/.svelte-kit/__package__/components/dialog_manager/DialogProcessor.js +62 -0
  96. package/.svelte-kit/__package__/components/dialog_manager/DialogUtils.d.ts +5 -0
  97. package/.svelte-kit/__package__/components/dialog_manager/DialogUtils.js +8 -0
  98. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/core/BTreeUtils.d.ts +15 -0
  99. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/core/BTreeUtils.js +34 -0
  100. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/core/BaseBehaviorResult.d.ts +4 -0
  101. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/core/BaseBehaviorResult.js +1 -0
  102. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/core/BehaviorNode.d.ts +3 -0
  103. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/core/BehaviorNode.js +1 -0
  104. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/core/BehaviorStatus.d.ts +5 -0
  105. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/core/BehaviorStatus.js +6 -0
  106. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/core/SelectorNode.d.ts +12 -0
  107. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/core/SelectorNode.js +22 -0
  108. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/ExpressionArguments.d.ts +5 -0
  109. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/ExpressionArguments.js +1 -0
  110. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/ExpressionBehaviorNode.d.ts +4 -0
  111. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/ExpressionBehaviorNode.js +1 -0
  112. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/ExpressionEvaluator.d.ts +15 -0
  113. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/ExpressionEvaluator.js +220 -0
  114. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/ExpressionResult.d.ts +5 -0
  115. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/ExpressionResult.js +1 -0
  116. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/ExpressionSelectorNode.d.ts +8 -0
  117. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/ExpressionSelectorNode.js +15 -0
  118. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/ExpressionState.d.ts +3 -0
  119. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/ExpressionState.js +1 -0
  120. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/OperandNode.d.ts +10 -0
  121. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/OperandNode.js +15 -0
  122. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/OperatorNode.d.ts +11 -0
  123. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/OperatorNode.js +30 -0
  124. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/commands/CommandExpressionNode.d.ts +6 -0
  125. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/commands/CommandExpressionNode.js +21 -0
  126. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/commands/CommandLogicNode.d.ts +9 -0
  127. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/commands/CommandLogicNode.js +19 -0
  128. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/commands/CommandMap.d.ts +9 -0
  129. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/commands/CommandMap.js +18 -0
  130. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/commands/RandomRangeCommand.d.ts +15 -0
  131. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/commands/RandomRangeCommand.js +24 -0
  132. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/commands/VisitedCommand.d.ts +20 -0
  133. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/commands/VisitedCommand.js +32 -0
  134. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/commands/VisitedCountCommand.d.ts +13 -0
  135. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/commands/VisitedCountCommand.js +25 -0
  136. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/AndOperator.d.ts +7 -0
  137. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/AndOperator.js +15 -0
  138. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/EqualityOperator.d.ts +7 -0
  139. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/EqualityOperator.js +14 -0
  140. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/GreaterThanEqualOperator.d.ts +7 -0
  141. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/GreaterThanEqualOperator.js +12 -0
  142. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/GreaterThanOperator.d.ts +7 -0
  143. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/GreaterThanOperator.js +12 -0
  144. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/InequalityOperator.d.ts +7 -0
  145. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/InequalityOperator.js +12 -0
  146. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/LessThanEqualOperator.d.ts +7 -0
  147. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/LessThanEqualOperator.js +12 -0
  148. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/LessThanOperator.d.ts +7 -0
  149. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/LessThanOperator.js +12 -0
  150. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/NegationOperator.d.ts +7 -0
  151. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/NegationOperator.js +13 -0
  152. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/OperatorLogicNode.d.ts +17 -0
  153. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/OperatorLogicNode.js +32 -0
  154. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/OperatorMap.d.ts +9 -0
  155. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/OperatorMap.js +47 -0
  156. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/OrOperator.d.ts +7 -0
  157. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/OrOperator.js +13 -0
  158. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/XorOperator.d.ts +7 -0
  159. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/XorOperator.js +17 -0
  160. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/arithmetic/DivisionOperator.d.ts +7 -0
  161. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/arithmetic/DivisionOperator.js +14 -0
  162. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MinusOperator.d.ts +7 -0
  163. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MinusOperator.js +14 -0
  164. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MultiplicationOperator.d.ts +7 -0
  165. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MultiplicationOperator.js +12 -0
  166. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/arithmetic/PlusOperator.d.ts +7 -0
  167. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/arithmetic/PlusOperator.js +14 -0
  168. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/arithmetic/RemainderDivisionOperator.d.ts +7 -0
  169. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/expression/operators/arithmetic/RemainderDivisionOperator.js +14 -0
  170. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_core/LineBehaviorNode.d.ts +4 -0
  171. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_core/LineBehaviorNode.js +1 -0
  172. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_core/LineBehaviorResult.d.ts +6 -0
  173. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_core/LineBehaviorResult.js +1 -0
  174. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_core/LineNodeArguments.d.ts +6 -0
  175. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_core/LineNodeArguments.js +1 -0
  176. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_core/LineSelectorNode.d.ts +8 -0
  177. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_core/LineSelectorNode.js +15 -0
  178. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/BehaviorState.d.ts +5 -0
  179. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/BehaviorState.js +5 -0
  180. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/ElseIfNode.d.ts +11 -0
  181. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/ElseIfNode.js +53 -0
  182. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/ElseNode.d.ts +11 -0
  183. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/ElseNode.js +49 -0
  184. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/EndIfNode.d.ts +11 -0
  185. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/EndIfNode.js +23 -0
  186. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/IfMode.d.ts +6 -0
  187. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/IfMode.js +8 -0
  188. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/IfNode.d.ts +12 -0
  189. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/IfNode.js +43 -0
  190. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/IgnoreGuardNode.d.ts +11 -0
  191. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/IgnoreGuardNode.js +25 -0
  192. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/IgnoreJumpNode.d.ts +6 -0
  193. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/IgnoreJumpNode.js +18 -0
  194. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/LineCommentNode.d.ts +6 -0
  195. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/LineCommentNode.js +17 -0
  196. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/NormalLineProcessorNode.d.ts +10 -0
  197. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/NormalLineProcessorNode.js +38 -0
  198. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/SetVariableNode.d.ts +11 -0
  199. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/SetVariableNode.js +31 -0
  200. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/commands/DeclareCommand.d.ts +8 -0
  201. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/commands/DeclareCommand.js +39 -0
  202. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/commands/JumpCommand.d.ts +8 -0
  203. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/commands/JumpCommand.js +40 -0
  204. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/commands/UnvisitCommand.d.ts +9 -0
  205. package/.svelte-kit/__package__/components/dialog_manager/behavior_tree/line_processors/commands/UnvisitCommand.js +28 -0
  206. package/.svelte-kit/__package__/components/layouts/LayoutConstants.d.ts +1 -0
  207. package/.svelte-kit/__package__/components/layouts/LayoutConstants.js +1 -0
  208. package/.svelte-kit/__package__/components/layouts/PineappleBaseLayout.svelte +189 -0
  209. package/.svelte-kit/__package__/components/layouts/PineappleBaseLayout.svelte.d.ts +18 -0
  210. package/.svelte-kit/__package__/components/layouts/SeaweedBaseLayout.svelte +95 -0
  211. package/.svelte-kit/__package__/components/layouts/SeaweedBaseLayout.svelte.d.ts +23 -0
  212. package/.svelte-kit/__package__/consts.d.ts +2 -0
  213. package/.svelte-kit/__package__/consts.js +2 -0
  214. package/.svelte-kit/__package__/index.d.ts +9 -0
  215. package/.svelte-kit/__package__/index.js +9 -0
  216. package/.svelte-kit/__package__/scripts/SetDefaultEnvironment.d.ts +1 -0
  217. package/.svelte-kit/__package__/scripts/SetDefaultEnvironment.js +41 -0
  218. package/.svelte-kit/__package__/scripts/pineapple_fiber/PineappleWeaver.d.ts +9 -0
  219. package/.svelte-kit/__package__/scripts/pineapple_fiber/PineappleWeaver.js +201 -0
  220. package/.svelte-kit/__package__/scripts/util/FileManagement.d.ts +7 -0
  221. package/.svelte-kit/__package__/scripts/util/FileManagement.js +35 -0
  222. package/.svelte-kit/__package__/scripts/util/ManualCheck.d.ts +1 -0
  223. package/.svelte-kit/__package__/scripts/util/ManualCheck.js +28 -0
  224. package/.svelte-kit/__package__/scripts/util/ManualCheckRun.d.ts +1 -0
  225. package/.svelte-kit/__package__/scripts/util/ManualCheckRun.js +6 -0
  226. package/.svelte-kit/__package__/store.d.ts +17 -0
  227. package/.svelte-kit/__package__/store.js +17 -0
  228. package/.svelte-kit/__package__/styles/DefaultGridContainer.css +61 -0
  229. package/.svelte-kit/__package__/styles/global.css +1 -0
  230. package/.svelte-kit/__package__/template/SeaweedTemplate.svelte +907 -0
  231. package/.svelte-kit/__package__/template/SeaweedTemplate.svelte.d.ts +19 -0
  232. package/.svelte-kit/__package__/theme.postcss +116 -0
  233. package/.svelte-kit/__package__/types/BlogBlurbMeta.d.ts +11 -0
  234. package/.svelte-kit/__package__/types/BlogBlurbMeta.js +16 -0
  235. package/.svelte-kit/__package__/types/BreadcrumbData.d.ts +4 -0
  236. package/.svelte-kit/__package__/types/BreadcrumbData.js +1 -0
  237. package/.svelte-kit/__package__/types/pineapple_fiber/DialogDetail.d.ts +6 -0
  238. package/.svelte-kit/__package__/types/pineapple_fiber/DialogDetail.js +1 -0
  239. package/.svelte-kit/__package__/types/pineapple_fiber/DialogState.d.ts +5 -0
  240. package/.svelte-kit/__package__/types/pineapple_fiber/DialogState.js +6 -0
  241. package/.svelte-kit/__package__/types/pineapple_fiber/DialogVariableStore.d.ts +2 -0
  242. package/.svelte-kit/__package__/types/pineapple_fiber/DialogVariableStore.js +20 -0
  243. package/.svelte-kit/__package__/types/pineapple_fiber/PortraitType.d.ts +11 -0
  244. package/.svelte-kit/__package__/types/pineapple_fiber/PortraitType.js +12 -0
  245. package/.svelte-kit/__package__/util/create_go_to_function.d.ts +1 -0
  246. package/.svelte-kit/__package__/util/create_go_to_function.js +5 -0
  247. package/.svelte-kit/__package__/util/stable_random.d.ts +2 -0
  248. package/.svelte-kit/__package__/util/stable_random.js +15 -0
  249. package/.svelte-kit/ambient.d.ts +398 -0
  250. package/.svelte-kit/generated/client/app.js +28 -0
  251. package/.svelte-kit/generated/client/matchers.js +1 -0
  252. package/.svelte-kit/generated/client/nodes/0.js +1 -0
  253. package/.svelte-kit/generated/client/nodes/1.js +1 -0
  254. package/.svelte-kit/generated/client/nodes/2.js +1 -0
  255. package/.svelte-kit/generated/client/nodes/3.js +1 -0
  256. package/.svelte-kit/generated/client/nodes/4.js +1 -0
  257. package/.svelte-kit/generated/client/nodes/5.js +1 -0
  258. package/.svelte-kit/generated/client/nodes/6.js +1 -0
  259. package/.svelte-kit/generated/client-optimized/app.js +28 -0
  260. package/.svelte-kit/generated/client-optimized/matchers.js +1 -0
  261. package/.svelte-kit/generated/client-optimized/nodes/0.js +1 -0
  262. package/.svelte-kit/generated/client-optimized/nodes/1.js +1 -0
  263. package/.svelte-kit/generated/client-optimized/nodes/2.js +1 -0
  264. package/.svelte-kit/generated/client-optimized/nodes/3.js +1 -0
  265. package/.svelte-kit/generated/client-optimized/nodes/4.js +1 -0
  266. package/.svelte-kit/generated/client-optimized/nodes/5.js +1 -0
  267. package/.svelte-kit/generated/client-optimized/nodes/6.js +1 -0
  268. package/.svelte-kit/generated/root.svelte +64 -0
  269. package/.svelte-kit/generated/server/internal.js +34 -0
  270. package/.svelte-kit/non-ambient.d.ts +25 -0
  271. package/.svelte-kit/output/client/.vite/manifest.json +360 -0
  272. package/.svelte-kit/output/client/_app/immutable/assets/0.B_SY1GJM.css +0 -0
  273. package/.svelte-kit/output/client/_app/immutable/assets/4.B8rxJaIe.css +1 -0
  274. package/.svelte-kit/output/client/_app/immutable/assets/PineappleBaseLayout.zNkuL9Xf.css +1 -0
  275. package/.svelte-kit/output/client/_app/immutable/assets/ProgressBar.CaHExdkQ.css +1 -0
  276. package/.svelte-kit/output/client/_app/immutable/assets/ProgressBar.DmpmGWm6.css +1 -0
  277. package/.svelte-kit/output/client/_app/immutable/assets/SeaweedTemplate.DNE9SdPz.css +1 -0
  278. package/.svelte-kit/output/client/_app/immutable/assets/_layout.B_SY1GJM.css +0 -0
  279. package/.svelte-kit/output/client/_app/immutable/assets/_page.B8rxJaIe.css +1 -0
  280. package/.svelte-kit/output/client/_app/immutable/assets/ares_blushing.B6Q0SsBp.webp +0 -0
  281. package/.svelte-kit/output/client/_app/immutable/assets/ares_disappointed.LOpkh7Q7.webp +0 -0
  282. package/.svelte-kit/output/client/_app/immutable/assets/ares_happy.Cz9WhdwO.webp +0 -0
  283. package/.svelte-kit/output/client/_app/immutable/assets/ares_lets_go.BxjJjKUv.webp +0 -0
  284. package/.svelte-kit/output/client/_app/immutable/assets/ares_logo.C_a3ZQAP.webp +0 -0
  285. package/.svelte-kit/output/client/_app/immutable/assets/ares_mad.DofDLDmM.webp +0 -0
  286. package/.svelte-kit/output/client/_app/immutable/assets/ares_neutral.Hp923t8N.webp +0 -0
  287. package/.svelte-kit/output/client/_app/immutable/assets/ares_slightly_mad.DdwOp6J5.webp +0 -0
  288. package/.svelte-kit/output/client/_app/immutable/assets/ares_surprised.BxbNH_w8.webp +0 -0
  289. package/.svelte-kit/output/client/_app/immutable/assets/ares_yay.EM2SNr0e.webp +0 -0
  290. package/.svelte-kit/output/client/_app/immutable/assets/bg_tiled_ares.DTcFskeK.png +0 -0
  291. package/.svelte-kit/output/client/_app/immutable/assets/bg_tiled_corn.D22ZwTZ0.png +0 -0
  292. package/.svelte-kit/output/client/_app/immutable/assets/bg_tiled_pineapple.D28N65_A.png +0 -0
  293. package/.svelte-kit/output/client/_app/immutable/assets/bg_tiled_reinhard.D22NV0xw.png +0 -0
  294. package/.svelte-kit/output/client/_app/immutable/assets/bg_tiled_tomato.O9Z7_E07.png +0 -0
  295. package/.svelte-kit/output/client/_app/immutable/assets/bg_tiled_turnip.DMU0uHH4.png +0 -0
  296. package/.svelte-kit/output/client/_app/immutable/assets/footage-chef-wings.dVBm8Uit.gif +0 -0
  297. package/.svelte-kit/output/client/_app/immutable/assets/header-hep-cat.DcyPS3Oy.mp4 +0 -0
  298. package/.svelte-kit/output/client/_app/immutable/assets/header-pengi.DWAOeO4q.mp4 +0 -0
  299. package/.svelte-kit/output/client/_app/immutable/assets/header-soulwork.BQRWmhTu.mp4 +0 -0
  300. package/.svelte-kit/output/client/_app/immutable/assets/placeholder_circle.Ij3bN7bI.png +0 -0
  301. package/.svelte-kit/output/client/_app/immutable/assets/seaweed-showcase.TTVTTC5m.mp4 +0 -0
  302. package/.svelte-kit/output/client/_app/immutable/assets/store.y2fRW0z7.css +1 -0
  303. package/.svelte-kit/output/client/_app/immutable/assets/weaver-footage.sjDEbkrX.gif +0 -0
  304. package/.svelte-kit/output/client/_app/immutable/assets/window-set.IpgsYUna.png +0 -0
  305. package/.svelte-kit/output/client/_app/immutable/chunks/DialogManagerStore.CGTbGbVf.js +3 -0
  306. package/.svelte-kit/output/client/_app/immutable/chunks/PineappleBaseLayout.BEmcdUbJ.js +1 -0
  307. package/.svelte-kit/output/client/_app/immutable/chunks/ProgressBar.svelte_svelte_type_style_lang.CmgCUata.js +1 -0
  308. package/.svelte-kit/output/client/_app/immutable/chunks/SeaweedTemplate.Dn5ajBSa.js +98 -0
  309. package/.svelte-kit/output/client/_app/immutable/chunks/entry.DjOrlFF-.js +3 -0
  310. package/.svelte-kit/output/client/_app/immutable/chunks/index.CvmYViMX.js +1 -0
  311. package/.svelte-kit/output/client/_app/immutable/chunks/index.DcUpu3_h.js +4 -0
  312. package/.svelte-kit/output/client/_app/immutable/chunks/index.Duksw40K.js +1 -0
  313. package/.svelte-kit/output/client/_app/immutable/chunks/public.kPGcNb8-.js +1 -0
  314. package/.svelte-kit/output/client/_app/immutable/chunks/scheduler.DXwjFp5a.js +1 -0
  315. package/.svelte-kit/output/client/_app/immutable/chunks/store.lTf0RalW.js +1 -0
  316. package/.svelte-kit/output/client/_app/immutable/chunks/transitions.BzalH0R-.js +3 -0
  317. package/.svelte-kit/output/client/_app/immutable/entry/app.gjWLgY1c.js +7 -0
  318. package/.svelte-kit/output/client/_app/immutable/entry/start.D1fQHQ70.js +1 -0
  319. package/.svelte-kit/output/client/_app/immutable/nodes/0.Dp97myFE.js +1 -0
  320. package/.svelte-kit/output/client/_app/immutable/nodes/1.I7DMxkG1.js +4 -0
  321. package/.svelte-kit/output/client/_app/immutable/nodes/2.BDQ3d4fl.js +1 -0
  322. package/.svelte-kit/output/client/_app/immutable/nodes/3.IkK-Vp1t.js +1 -0
  323. package/.svelte-kit/output/client/_app/immutable/nodes/4.C0MZnSyC.js +1 -0
  324. package/.svelte-kit/output/client/_app/immutable/nodes/5.BjbBqeg5.js +1 -0
  325. package/.svelte-kit/output/client/_app/immutable/nodes/6.ifg4QDG7.js +1 -0
  326. package/.svelte-kit/output/client/_app/version.json +1 -0
  327. package/.svelte-kit/output/client/default-card.png +0 -0
  328. package/.svelte-kit/output/client/favicon.png +0 -0
  329. package/.svelte-kit/output/client/robots.txt +5 -0
  330. package/.svelte-kit/output/prerendered/dependencies/portfolio/__data.json +1 -0
  331. package/.svelte-kit/output/prerendered/pages/portfolio.html +225 -0
  332. package/.svelte-kit/output/server/.vite/manifest.json +324 -0
  333. package/.svelte-kit/output/server/_app/immutable/assets/PineappleBaseLayout.zNkuL9Xf.css +1 -0
  334. package/.svelte-kit/output/server/_app/immutable/assets/ProgressBar.CaHExdkQ.css +1 -0
  335. package/.svelte-kit/output/server/_app/immutable/assets/SeaweedTemplate.DNE9SdPz.css +1 -0
  336. package/.svelte-kit/output/server/_app/immutable/assets/_layout.B_SY1GJM.css +0 -0
  337. package/.svelte-kit/output/server/_app/immutable/assets/_page.B8rxJaIe.css +1 -0
  338. package/.svelte-kit/output/server/_app/immutable/assets/ares_blushing.B6Q0SsBp.webp +0 -0
  339. package/.svelte-kit/output/server/_app/immutable/assets/ares_disappointed.LOpkh7Q7.webp +0 -0
  340. package/.svelte-kit/output/server/_app/immutable/assets/ares_happy.Cz9WhdwO.webp +0 -0
  341. package/.svelte-kit/output/server/_app/immutable/assets/ares_lets_go.BxjJjKUv.webp +0 -0
  342. package/.svelte-kit/output/server/_app/immutable/assets/ares_logo.C_a3ZQAP.webp +0 -0
  343. package/.svelte-kit/output/server/_app/immutable/assets/ares_mad.DofDLDmM.webp +0 -0
  344. package/.svelte-kit/output/server/_app/immutable/assets/ares_neutral.Hp923t8N.webp +0 -0
  345. package/.svelte-kit/output/server/_app/immutable/assets/ares_slightly_mad.DdwOp6J5.webp +0 -0
  346. package/.svelte-kit/output/server/_app/immutable/assets/ares_surprised.BxbNH_w8.webp +0 -0
  347. package/.svelte-kit/output/server/_app/immutable/assets/ares_yay.EM2SNr0e.webp +0 -0
  348. package/.svelte-kit/output/server/_app/immutable/assets/bg_tiled_ares.DTcFskeK.png +0 -0
  349. package/.svelte-kit/output/server/_app/immutable/assets/bg_tiled_corn.D22ZwTZ0.png +0 -0
  350. package/.svelte-kit/output/server/_app/immutable/assets/bg_tiled_pineapple.D28N65_A.png +0 -0
  351. package/.svelte-kit/output/server/_app/immutable/assets/bg_tiled_reinhard.D22NV0xw.png +0 -0
  352. package/.svelte-kit/output/server/_app/immutable/assets/bg_tiled_tomato.O9Z7_E07.png +0 -0
  353. package/.svelte-kit/output/server/_app/immutable/assets/bg_tiled_turnip.DMU0uHH4.png +0 -0
  354. package/.svelte-kit/output/server/_app/immutable/assets/footage-chef-wings.dVBm8Uit.gif +0 -0
  355. package/.svelte-kit/output/server/_app/immutable/assets/header-hep-cat.DcyPS3Oy.mp4 +0 -0
  356. package/.svelte-kit/output/server/_app/immutable/assets/header-pengi.DWAOeO4q.mp4 +0 -0
  357. package/.svelte-kit/output/server/_app/immutable/assets/header-soulwork.BQRWmhTu.mp4 +0 -0
  358. package/.svelte-kit/output/server/_app/immutable/assets/placeholder_circle.Ij3bN7bI.png +0 -0
  359. package/.svelte-kit/output/server/_app/immutable/assets/seaweed-showcase.TTVTTC5m.mp4 +0 -0
  360. package/.svelte-kit/output/server/_app/immutable/assets/store.y2fRW0z7.css +1 -0
  361. package/.svelte-kit/output/server/_app/immutable/assets/weaver-footage.sjDEbkrX.gif +0 -0
  362. package/.svelte-kit/output/server/_app/immutable/assets/window-set.IpgsYUna.png +0 -0
  363. package/.svelte-kit/output/server/chunks/DialogManagerStore.js +1269 -0
  364. package/.svelte-kit/output/server/chunks/PineappleBaseLayout.js +94 -0
  365. package/.svelte-kit/output/server/chunks/ProgressBar.svelte_svelte_type_style_lang.js +60 -0
  366. package/.svelte-kit/output/server/chunks/SeaweedTemplate.js +597 -0
  367. package/.svelte-kit/output/server/chunks/exports.js +200 -0
  368. package/.svelte-kit/output/server/chunks/index.js +52 -0
  369. package/.svelte-kit/output/server/chunks/index2.js +83 -0
  370. package/.svelte-kit/output/server/chunks/index3.js +7 -0
  371. package/.svelte-kit/output/server/chunks/internal.js +247 -0
  372. package/.svelte-kit/output/server/chunks/prod-ssr.js +6 -0
  373. package/.svelte-kit/output/server/chunks/public.js +4 -0
  374. package/.svelte-kit/output/server/chunks/ssr.js +308 -0
  375. package/.svelte-kit/output/server/chunks/store.js +292 -0
  376. package/.svelte-kit/output/server/entries/pages/_error.svelte.js +29 -0
  377. package/.svelte-kit/output/server/entries/pages/_layout.svelte.js +279 -0
  378. package/.svelte-kit/output/server/entries/pages/_page.svelte.js +18 -0
  379. package/.svelte-kit/output/server/entries/pages/personal/_layout.svelte.js +13 -0
  380. package/.svelte-kit/output/server/entries/pages/personal/_page.svelte.js +13 -0
  381. package/.svelte-kit/output/server/entries/pages/portfolio/_page.server.ts.js +8 -0
  382. package/.svelte-kit/output/server/entries/pages/portfolio/_page.svelte.js +12 -0
  383. package/.svelte-kit/output/server/entries/pages/portfolio/actual/_page.svelte.js +18 -0
  384. package/.svelte-kit/output/server/index.js +2955 -0
  385. package/.svelte-kit/output/server/internal.js +13 -0
  386. package/.svelte-kit/output/server/manifest-full.js +60 -0
  387. package/.svelte-kit/output/server/manifest.js +52 -0
  388. package/.svelte-kit/output/server/nodes/0.js +8 -0
  389. package/.svelte-kit/output/server/nodes/1.js +8 -0
  390. package/.svelte-kit/output/server/nodes/2.js +8 -0
  391. package/.svelte-kit/output/server/nodes/3.js +8 -0
  392. package/.svelte-kit/output/server/nodes/4.js +8 -0
  393. package/.svelte-kit/output/server/nodes/5.js +10 -0
  394. package/.svelte-kit/output/server/nodes/6.js +8 -0
  395. package/.svelte-kit/tsconfig.json +50 -0
  396. package/.svelte-kit/types/route_meta_data.json +8 -0
  397. package/.svelte-kit/types/src/routes/$types.d.ts +22 -0
  398. package/.svelte-kit/types/src/routes/personal/$types.d.ts +22 -0
  399. package/.svelte-kit/types/src/routes/portfolio/$types.d.ts +24 -0
  400. package/.svelte-kit/types/src/routes/portfolio/actual/$types.d.ts +17 -0
  401. package/.svelte-kit/types/src/routes/portfolio/proxy+page.server.ts +46 -0
  402. package/.svelte-kit/vercel-tmp/index.js +46 -0
  403. package/.svelte-kit/vercel-tmp/manifest.js +52 -0
  404. package/.vercel/output/config.json +34 -0
  405. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/chunks/DialogManagerStore.js +1269 -0
  406. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/chunks/PineappleBaseLayout.js +94 -0
  407. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/chunks/ProgressBar.svelte_svelte_type_style_lang.js +60 -0
  408. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/chunks/SeaweedTemplate.js +597 -0
  409. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/chunks/exports.js +200 -0
  410. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/chunks/index.js +52 -0
  411. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/chunks/index2.js +83 -0
  412. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/chunks/index3.js +7 -0
  413. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/chunks/internal.js +247 -0
  414. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/chunks/prod-ssr.js +6 -0
  415. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/chunks/public.js +4 -0
  416. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/chunks/ssr.js +308 -0
  417. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/chunks/store.js +292 -0
  418. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/entries/pages/_error.svelte.js +29 -0
  419. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/entries/pages/_layout.svelte.js +279 -0
  420. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/entries/pages/_page.svelte.js +18 -0
  421. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/entries/pages/personal/_layout.svelte.js +13 -0
  422. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/entries/pages/personal/_page.svelte.js +13 -0
  423. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/entries/pages/portfolio/actual/_page.svelte.js +18 -0
  424. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/index.js +2955 -0
  425. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/nodes/0.js +8 -0
  426. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/nodes/1.js +8 -0
  427. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/nodes/2.js +8 -0
  428. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/nodes/3.js +8 -0
  429. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/nodes/4.js +8 -0
  430. package/.vercel/output/functions/fn.func/.svelte-kit/output/server/nodes/6.js +8 -0
  431. package/.vercel/output/functions/fn.func/.svelte-kit/vercel-tmp/index.js +46 -0
  432. package/.vercel/output/functions/fn.func/.svelte-kit/vercel-tmp/manifest.js +52 -0
  433. package/.vercel/output/functions/fn.func/.vc-config.json +6 -0
  434. package/.vercel/output/functions/fn.func/package.json +1 -0
  435. package/.vercel/output/static/_app/immutable/assets/0.B_SY1GJM.css +0 -0
  436. package/.vercel/output/static/_app/immutable/assets/4.B8rxJaIe.css +1 -0
  437. package/.vercel/output/static/_app/immutable/assets/PineappleBaseLayout.zNkuL9Xf.css +1 -0
  438. package/.vercel/output/static/_app/immutable/assets/ProgressBar.CaHExdkQ.css +1 -0
  439. package/.vercel/output/static/_app/immutable/assets/ProgressBar.DmpmGWm6.css +1 -0
  440. package/.vercel/output/static/_app/immutable/assets/SeaweedTemplate.CjiLUExY.css +1 -0
  441. package/.vercel/output/static/_app/immutable/assets/_layout.B_SY1GJM.css +0 -0
  442. package/.vercel/output/static/_app/immutable/assets/_page.B8rxJaIe.css +1 -0
  443. package/.vercel/output/static/_app/immutable/assets/ares_blushing.B6Q0SsBp.webp +0 -0
  444. package/.vercel/output/static/_app/immutable/assets/ares_disappointed.LOpkh7Q7.webp +0 -0
  445. package/.vercel/output/static/_app/immutable/assets/ares_happy.Cz9WhdwO.webp +0 -0
  446. package/.vercel/output/static/_app/immutable/assets/ares_lets_go.BxjJjKUv.webp +0 -0
  447. package/.vercel/output/static/_app/immutable/assets/ares_logo.C_a3ZQAP.webp +0 -0
  448. package/.vercel/output/static/_app/immutable/assets/ares_mad.DofDLDmM.webp +0 -0
  449. package/.vercel/output/static/_app/immutable/assets/ares_neutral.Hp923t8N.webp +0 -0
  450. package/.vercel/output/static/_app/immutable/assets/ares_slightly_mad.DdwOp6J5.webp +0 -0
  451. package/.vercel/output/static/_app/immutable/assets/ares_surprised.BxbNH_w8.webp +0 -0
  452. package/.vercel/output/static/_app/immutable/assets/ares_yay.EM2SNr0e.webp +0 -0
  453. package/.vercel/output/static/_app/immutable/assets/bg_tiled_ares.DTcFskeK.png +0 -0
  454. package/.vercel/output/static/_app/immutable/assets/bg_tiled_corn.D22ZwTZ0.png +0 -0
  455. package/.vercel/output/static/_app/immutable/assets/bg_tiled_pineapple.D28N65_A.png +0 -0
  456. package/.vercel/output/static/_app/immutable/assets/bg_tiled_reinhard.D22NV0xw.png +0 -0
  457. package/.vercel/output/static/_app/immutable/assets/bg_tiled_tomato.O9Z7_E07.png +0 -0
  458. package/.vercel/output/static/_app/immutable/assets/bg_tiled_turnip.DMU0uHH4.png +0 -0
  459. package/.vercel/output/static/_app/immutable/assets/footage-chef-wings.dVBm8Uit.gif +0 -0
  460. package/.vercel/output/static/_app/immutable/assets/header-hep-cat.DcyPS3Oy.mp4 +0 -0
  461. package/.vercel/output/static/_app/immutable/assets/header-pengi.DWAOeO4q.mp4 +0 -0
  462. package/.vercel/output/static/_app/immutable/assets/header-soulwork.BQRWmhTu.mp4 +0 -0
  463. package/.vercel/output/static/_app/immutable/assets/placeholder_circle.Ij3bN7bI.png +0 -0
  464. package/.vercel/output/static/_app/immutable/assets/seaweed-showcase.TTVTTC5m.mp4 +0 -0
  465. package/.vercel/output/static/_app/immutable/assets/store.y2fRW0z7.css +1 -0
  466. package/.vercel/output/static/_app/immutable/assets/weaver-footage.sjDEbkrX.gif +0 -0
  467. package/.vercel/output/static/_app/immutable/assets/window-set.IpgsYUna.png +0 -0
  468. package/.vercel/output/static/_app/immutable/chunks/DialogManagerStore.CGTbGbVf.js +3 -0
  469. package/.vercel/output/static/_app/immutable/chunks/PineappleBaseLayout.Juc0v1b7.js +1 -0
  470. package/.vercel/output/static/_app/immutable/chunks/ProgressBar.svelte_svelte_type_style_lang.CmgCUata.js +1 -0
  471. package/.vercel/output/static/_app/immutable/chunks/SeaweedTemplate.DS-Z3LcL.js +98 -0
  472. package/.vercel/output/static/_app/immutable/chunks/entry.BViziCKK.js +3 -0
  473. package/.vercel/output/static/_app/immutable/chunks/index.CvmYViMX.js +1 -0
  474. package/.vercel/output/static/_app/immutable/chunks/index.DcUpu3_h.js +4 -0
  475. package/.vercel/output/static/_app/immutable/chunks/index.Duksw40K.js +1 -0
  476. package/.vercel/output/static/_app/immutable/chunks/public.kPGcNb8-.js +1 -0
  477. package/.vercel/output/static/_app/immutable/chunks/scheduler.DXwjFp5a.js +1 -0
  478. package/.vercel/output/static/_app/immutable/chunks/store.D47Cl8J0.js +1 -0
  479. package/.vercel/output/static/_app/immutable/chunks/transitions.BzalH0R-.js +3 -0
  480. package/.vercel/output/static/_app/immutable/entry/app.hYBk6umV.js +7 -0
  481. package/.vercel/output/static/_app/immutable/entry/start.bPtW9zOj.js +1 -0
  482. package/.vercel/output/static/_app/immutable/nodes/0.Dp97myFE.js +1 -0
  483. package/.vercel/output/static/_app/immutable/nodes/1.I7DMxkG1.js +4 -0
  484. package/.vercel/output/static/_app/immutable/nodes/2.C7G9m2NJ.js +1 -0
  485. package/.vercel/output/static/_app/immutable/nodes/3.D9NOS4Wy.js +1 -0
  486. package/.vercel/output/static/_app/immutable/nodes/4.C0MZnSyC.js +1 -0
  487. package/.vercel/output/static/_app/immutable/nodes/5.ARW_iEad.js +1 -0
  488. package/.vercel/output/static/_app/immutable/nodes/6.CJVGAs6D.js +1 -0
  489. package/.vercel/output/static/_app/version.json +1 -0
  490. package/.vercel/output/static/default-card.png +0 -0
  491. package/.vercel/output/static/favicon.png +0 -0
  492. package/.vercel/output/static/portfolio/__data.json +1 -0
  493. package/.vercel/output/static/portfolio.html +225 -0
  494. package/.vercel/output/static/robots.txt +5 -0
  495. package/dev/.gitignore +1 -0
  496. package/dev/README.md +9 -0
  497. package/dev/repo_list.txt +1 -0
  498. package/dev/update_all_repos.sh +16 -0
  499. package/dist/app.postcss +153 -0
  500. package/dist/assets/bg_tiled/bg_tiled_ares.png +0 -0
  501. package/dist/assets/bg_tiled/bg_tiled_corn.png +0 -0
  502. package/dist/assets/bg_tiled/bg_tiled_pineapple.png +0 -0
  503. package/dist/assets/bg_tiled/bg_tiled_reinhard.png +0 -0
  504. package/dist/assets/bg_tiled/bg_tiled_tomato.png +0 -0
  505. package/dist/assets/bg_tiled/bg_tiled_turnip.png +0 -0
  506. package/dist/assets/characters/ares/ares_blushing.webp +0 -0
  507. package/dist/assets/characters/ares/ares_disappointed.webp +0 -0
  508. package/dist/assets/characters/ares/ares_happy.webp +0 -0
  509. package/dist/assets/characters/ares/ares_lets_go.webp +0 -0
  510. package/dist/assets/characters/ares/ares_logo.webp +0 -0
  511. package/dist/assets/characters/ares/ares_mad.webp +0 -0
  512. package/dist/assets/characters/ares/ares_neutral.webp +0 -0
  513. package/dist/assets/characters/ares/ares_slightly_mad.webp +0 -0
  514. package/dist/assets/characters/ares/ares_surprised.webp +0 -0
  515. package/dist/assets/characters/ares/ares_yay.webp +0 -0
  516. package/dist/assets/game_dev/footage-chef-wings.gif +0 -0
  517. package/dist/assets/game_dev/footage-depreciation.webm +0 -0
  518. package/dist/assets/game_dev/footage-thinking-of-flowers.webm +0 -0
  519. package/dist/assets/game_dev/screenshot-game-jam-mama.png +0 -0
  520. package/dist/assets/game_dev/screenshot-string-hop.png +0 -0
  521. package/dist/assets/game_dev/screenshot-wet-ass-road.png +0 -0
  522. package/dist/assets/icons/bitbucket-icon.svg +1 -0
  523. package/dist/assets/icons/chat-cursor.svg +47 -0
  524. package/dist/assets/icons/external-link.svg +50 -0
  525. package/dist/assets/icons/github-mark.svg +1 -0
  526. package/dist/assets/icons/link-icon.svg +1 -0
  527. package/dist/assets/icons/linkedin.svg +1 -0
  528. package/dist/assets/icons/mail.svg +1 -0
  529. package/dist/assets/others/seaweed-showcase.mp4 +0 -0
  530. package/dist/assets/others/weaver-footage.gif +0 -0
  531. package/dist/assets/others/window-set.png +0 -0
  532. package/dist/assets/placeholder/placeholder_circle.png +0 -0
  533. package/dist/assets/temp/background-image.jpg +0 -0
  534. package/dist/assets/temp/bitbucket-logo.png +0 -0
  535. package/dist/assets/temp/github-logo.png +0 -0
  536. package/dist/assets/temp/header-hep-cat.mp4 +0 -0
  537. package/dist/assets/temp/header-hep-cat.ogg +0 -0
  538. package/dist/assets/temp/header-hep-cat.webm +0 -0
  539. package/dist/assets/temp/header-pengi.mp4 +0 -0
  540. package/dist/assets/temp/header-pengi.webm +0 -0
  541. package/dist/assets/temp/header-soulwork.mp4 +0 -0
  542. package/dist/assets/temp/header-soulwork.ogg +0 -0
  543. package/dist/assets/temp/header-soulwork.webm +0 -0
  544. package/dist/components/Card.svelte +31 -0
  545. package/dist/components/Card.svelte.d.ts +35 -0
  546. package/dist/components/CarouselElement.svelte +21 -0
  547. package/dist/components/CarouselElement.svelte.d.ts +19 -0
  548. package/dist/components/Chip.svelte +12 -0
  549. package/dist/components/Chip.svelte.d.ts +27 -0
  550. package/dist/components/DialogOverlay.svelte +95 -0
  551. package/dist/components/DialogOverlay.svelte.d.ts +14 -0
  552. package/dist/components/ElementVisbilityDetector.svelte +18 -0
  553. package/dist/components/ElementVisbilityDetector.svelte.d.ts +18 -0
  554. package/dist/components/LazyAsset.svelte +96 -0
  555. package/dist/components/LazyAsset.svelte.d.ts +20 -0
  556. package/dist/components/LazyAssetType.d.ts +10 -0
  557. package/dist/components/LazyAssetType.js +12 -0
  558. package/dist/components/OnElementVisbilityChanged.d.ts +1 -0
  559. package/dist/components/OnElementVisbilityChanged.js +1 -0
  560. package/dist/components/RandomizedBackground.svelte +64 -0
  561. package/dist/components/RandomizedBackground.svelte.d.ts +16 -0
  562. package/dist/components/RandomizedImage.svelte +37 -0
  563. package/dist/components/RandomizedImage.svelte.d.ts +17 -0
  564. package/dist/components/SocialSection.svelte +160 -0
  565. package/dist/components/SocialSection.svelte.d.ts +29 -0
  566. package/dist/components/StickyElement.svelte +36 -0
  567. package/dist/components/StickyElement.svelte.d.ts +18 -0
  568. package/dist/components/ToggleableContent.svelte +66 -0
  569. package/dist/components/ToggleableContent.svelte.d.ts +19 -0
  570. package/dist/components/ToggleableContentType.d.ts +4 -0
  571. package/dist/components/ToggleableContentType.js +5 -0
  572. package/dist/components/dialog_manager/DialogManager.d.ts +77 -0
  573. package/dist/components/dialog_manager/DialogManager.js +239 -0
  574. package/dist/components/dialog_manager/DialogManagerStore.d.ts +41 -0
  575. package/dist/components/dialog_manager/DialogManagerStore.js +45 -0
  576. package/dist/components/dialog_manager/DialogProcessor.d.ts +13 -0
  577. package/dist/components/dialog_manager/DialogProcessor.js +62 -0
  578. package/dist/components/dialog_manager/DialogUtils.d.ts +5 -0
  579. package/dist/components/dialog_manager/DialogUtils.js +8 -0
  580. package/dist/components/dialog_manager/behavior_tree/core/BTreeUtils.d.ts +15 -0
  581. package/dist/components/dialog_manager/behavior_tree/core/BTreeUtils.js +34 -0
  582. package/dist/components/dialog_manager/behavior_tree/core/BaseBehaviorResult.d.ts +4 -0
  583. package/dist/components/dialog_manager/behavior_tree/core/BaseBehaviorResult.js +1 -0
  584. package/dist/components/dialog_manager/behavior_tree/core/BehaviorNode.d.ts +3 -0
  585. package/dist/components/dialog_manager/behavior_tree/core/BehaviorNode.js +1 -0
  586. package/dist/components/dialog_manager/behavior_tree/core/BehaviorStatus.d.ts +5 -0
  587. package/dist/components/dialog_manager/behavior_tree/core/BehaviorStatus.js +6 -0
  588. package/dist/components/dialog_manager/behavior_tree/core/SelectorNode.d.ts +12 -0
  589. package/dist/components/dialog_manager/behavior_tree/core/SelectorNode.js +22 -0
  590. package/dist/components/dialog_manager/behavior_tree/expression/ExpressionArguments.d.ts +5 -0
  591. package/dist/components/dialog_manager/behavior_tree/expression/ExpressionArguments.js +1 -0
  592. package/dist/components/dialog_manager/behavior_tree/expression/ExpressionBehaviorNode.d.ts +4 -0
  593. package/dist/components/dialog_manager/behavior_tree/expression/ExpressionBehaviorNode.js +1 -0
  594. package/dist/components/dialog_manager/behavior_tree/expression/ExpressionEvaluator.d.ts +15 -0
  595. package/dist/components/dialog_manager/behavior_tree/expression/ExpressionEvaluator.js +220 -0
  596. package/dist/components/dialog_manager/behavior_tree/expression/ExpressionResult.d.ts +5 -0
  597. package/dist/components/dialog_manager/behavior_tree/expression/ExpressionResult.js +1 -0
  598. package/dist/components/dialog_manager/behavior_tree/expression/ExpressionSelectorNode.d.ts +8 -0
  599. package/dist/components/dialog_manager/behavior_tree/expression/ExpressionSelectorNode.js +15 -0
  600. package/dist/components/dialog_manager/behavior_tree/expression/ExpressionState.d.ts +3 -0
  601. package/dist/components/dialog_manager/behavior_tree/expression/ExpressionState.js +1 -0
  602. package/dist/components/dialog_manager/behavior_tree/expression/OperandNode.d.ts +10 -0
  603. package/dist/components/dialog_manager/behavior_tree/expression/OperandNode.js +15 -0
  604. package/dist/components/dialog_manager/behavior_tree/expression/OperatorNode.d.ts +11 -0
  605. package/dist/components/dialog_manager/behavior_tree/expression/OperatorNode.js +30 -0
  606. package/dist/components/dialog_manager/behavior_tree/expression/commands/CommandExpressionNode.d.ts +6 -0
  607. package/dist/components/dialog_manager/behavior_tree/expression/commands/CommandExpressionNode.js +21 -0
  608. package/dist/components/dialog_manager/behavior_tree/expression/commands/CommandLogicNode.d.ts +9 -0
  609. package/dist/components/dialog_manager/behavior_tree/expression/commands/CommandLogicNode.js +19 -0
  610. package/dist/components/dialog_manager/behavior_tree/expression/commands/CommandMap.d.ts +9 -0
  611. package/dist/components/dialog_manager/behavior_tree/expression/commands/CommandMap.js +18 -0
  612. package/dist/components/dialog_manager/behavior_tree/expression/commands/RandomRangeCommand.d.ts +15 -0
  613. package/dist/components/dialog_manager/behavior_tree/expression/commands/RandomRangeCommand.js +24 -0
  614. package/dist/components/dialog_manager/behavior_tree/expression/commands/VisitedCommand.d.ts +20 -0
  615. package/dist/components/dialog_manager/behavior_tree/expression/commands/VisitedCommand.js +32 -0
  616. package/dist/components/dialog_manager/behavior_tree/expression/commands/VisitedCountCommand.d.ts +13 -0
  617. package/dist/components/dialog_manager/behavior_tree/expression/commands/VisitedCountCommand.js +25 -0
  618. package/dist/components/dialog_manager/behavior_tree/expression/operators/AndOperator.d.ts +7 -0
  619. package/dist/components/dialog_manager/behavior_tree/expression/operators/AndOperator.js +15 -0
  620. package/dist/components/dialog_manager/behavior_tree/expression/operators/EqualityOperator.d.ts +7 -0
  621. package/dist/components/dialog_manager/behavior_tree/expression/operators/EqualityOperator.js +14 -0
  622. package/dist/components/dialog_manager/behavior_tree/expression/operators/GreaterThanEqualOperator.d.ts +7 -0
  623. package/dist/components/dialog_manager/behavior_tree/expression/operators/GreaterThanEqualOperator.js +12 -0
  624. package/dist/components/dialog_manager/behavior_tree/expression/operators/GreaterThanOperator.d.ts +7 -0
  625. package/dist/components/dialog_manager/behavior_tree/expression/operators/GreaterThanOperator.js +12 -0
  626. package/dist/components/dialog_manager/behavior_tree/expression/operators/InequalityOperator.d.ts +7 -0
  627. package/dist/components/dialog_manager/behavior_tree/expression/operators/InequalityOperator.js +12 -0
  628. package/dist/components/dialog_manager/behavior_tree/expression/operators/LessThanEqualOperator.d.ts +7 -0
  629. package/dist/components/dialog_manager/behavior_tree/expression/operators/LessThanEqualOperator.js +12 -0
  630. package/dist/components/dialog_manager/behavior_tree/expression/operators/LessThanOperator.d.ts +7 -0
  631. package/dist/components/dialog_manager/behavior_tree/expression/operators/LessThanOperator.js +12 -0
  632. package/dist/components/dialog_manager/behavior_tree/expression/operators/NegationOperator.d.ts +7 -0
  633. package/dist/components/dialog_manager/behavior_tree/expression/operators/NegationOperator.js +13 -0
  634. package/dist/components/dialog_manager/behavior_tree/expression/operators/OperatorLogicNode.d.ts +17 -0
  635. package/dist/components/dialog_manager/behavior_tree/expression/operators/OperatorLogicNode.js +32 -0
  636. package/dist/components/dialog_manager/behavior_tree/expression/operators/OperatorMap.d.ts +9 -0
  637. package/dist/components/dialog_manager/behavior_tree/expression/operators/OperatorMap.js +47 -0
  638. package/dist/components/dialog_manager/behavior_tree/expression/operators/OrOperator.d.ts +7 -0
  639. package/dist/components/dialog_manager/behavior_tree/expression/operators/OrOperator.js +13 -0
  640. package/dist/components/dialog_manager/behavior_tree/expression/operators/XorOperator.d.ts +7 -0
  641. package/dist/components/dialog_manager/behavior_tree/expression/operators/XorOperator.js +17 -0
  642. package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/DivisionOperator.d.ts +7 -0
  643. package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/DivisionOperator.js +14 -0
  644. package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MinusOperator.d.ts +7 -0
  645. package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MinusOperator.js +14 -0
  646. package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MultiplicationOperator.d.ts +7 -0
  647. package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MultiplicationOperator.js +12 -0
  648. package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/PlusOperator.d.ts +7 -0
  649. package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/PlusOperator.js +14 -0
  650. package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/RemainderDivisionOperator.d.ts +7 -0
  651. package/dist/components/dialog_manager/behavior_tree/expression/operators/arithmetic/RemainderDivisionOperator.js +14 -0
  652. package/dist/components/dialog_manager/behavior_tree/line_core/LineBehaviorNode.d.ts +4 -0
  653. package/dist/components/dialog_manager/behavior_tree/line_core/LineBehaviorNode.js +1 -0
  654. package/dist/components/dialog_manager/behavior_tree/line_core/LineBehaviorResult.d.ts +6 -0
  655. package/dist/components/dialog_manager/behavior_tree/line_core/LineBehaviorResult.js +1 -0
  656. package/dist/components/dialog_manager/behavior_tree/line_core/LineNodeArguments.d.ts +6 -0
  657. package/dist/components/dialog_manager/behavior_tree/line_core/LineNodeArguments.js +1 -0
  658. package/dist/components/dialog_manager/behavior_tree/line_core/LineSelectorNode.d.ts +8 -0
  659. package/dist/components/dialog_manager/behavior_tree/line_core/LineSelectorNode.js +15 -0
  660. package/dist/components/dialog_manager/behavior_tree/line_processors/BehaviorState.d.ts +5 -0
  661. package/dist/components/dialog_manager/behavior_tree/line_processors/BehaviorState.js +5 -0
  662. package/dist/components/dialog_manager/behavior_tree/line_processors/ElseIfNode.d.ts +11 -0
  663. package/dist/components/dialog_manager/behavior_tree/line_processors/ElseIfNode.js +53 -0
  664. package/dist/components/dialog_manager/behavior_tree/line_processors/ElseNode.d.ts +11 -0
  665. package/dist/components/dialog_manager/behavior_tree/line_processors/ElseNode.js +49 -0
  666. package/dist/components/dialog_manager/behavior_tree/line_processors/EndIfNode.d.ts +11 -0
  667. package/dist/components/dialog_manager/behavior_tree/line_processors/EndIfNode.js +23 -0
  668. package/dist/components/dialog_manager/behavior_tree/line_processors/IfMode.d.ts +6 -0
  669. package/dist/components/dialog_manager/behavior_tree/line_processors/IfMode.js +8 -0
  670. package/dist/components/dialog_manager/behavior_tree/line_processors/IfNode.d.ts +12 -0
  671. package/dist/components/dialog_manager/behavior_tree/line_processors/IfNode.js +43 -0
  672. package/dist/components/dialog_manager/behavior_tree/line_processors/IgnoreGuardNode.d.ts +11 -0
  673. package/dist/components/dialog_manager/behavior_tree/line_processors/IgnoreGuardNode.js +25 -0
  674. package/dist/components/dialog_manager/behavior_tree/line_processors/IgnoreJumpNode.d.ts +6 -0
  675. package/dist/components/dialog_manager/behavior_tree/line_processors/IgnoreJumpNode.js +18 -0
  676. package/dist/components/dialog_manager/behavior_tree/line_processors/LineCommentNode.d.ts +6 -0
  677. package/dist/components/dialog_manager/behavior_tree/line_processors/LineCommentNode.js +17 -0
  678. package/dist/components/dialog_manager/behavior_tree/line_processors/NormalLineProcessorNode.d.ts +10 -0
  679. package/dist/components/dialog_manager/behavior_tree/line_processors/NormalLineProcessorNode.js +38 -0
  680. package/dist/components/dialog_manager/behavior_tree/line_processors/SetVariableNode.d.ts +11 -0
  681. package/dist/components/dialog_manager/behavior_tree/line_processors/SetVariableNode.js +31 -0
  682. package/dist/components/dialog_manager/behavior_tree/line_processors/commands/DeclareCommand.d.ts +8 -0
  683. package/dist/components/dialog_manager/behavior_tree/line_processors/commands/DeclareCommand.js +39 -0
  684. package/dist/components/dialog_manager/behavior_tree/line_processors/commands/JumpCommand.d.ts +8 -0
  685. package/dist/components/dialog_manager/behavior_tree/line_processors/commands/JumpCommand.js +40 -0
  686. package/dist/components/dialog_manager/behavior_tree/line_processors/commands/UnvisitCommand.d.ts +9 -0
  687. package/dist/components/dialog_manager/behavior_tree/line_processors/commands/UnvisitCommand.js +28 -0
  688. package/dist/components/layouts/LayoutConstants.d.ts +1 -0
  689. package/dist/components/layouts/LayoutConstants.js +1 -0
  690. package/dist/components/layouts/PineappleBaseLayout.svelte +189 -0
  691. package/dist/components/layouts/PineappleBaseLayout.svelte.d.ts +18 -0
  692. package/dist/components/layouts/SeaweedBaseLayout.svelte +95 -0
  693. package/dist/components/layouts/SeaweedBaseLayout.svelte.d.ts +23 -0
  694. package/dist/consts.d.ts +2 -0
  695. package/dist/consts.js +2 -0
  696. package/dist/index.d.ts +9 -0
  697. package/dist/index.js +9 -0
  698. package/dist/scripts/SetDefaultEnvironment.d.ts +1 -0
  699. package/dist/scripts/SetDefaultEnvironment.js +41 -0
  700. package/dist/scripts/pineapple_fiber/PineappleWeaver.d.ts +9 -0
  701. package/dist/scripts/pineapple_fiber/PineappleWeaver.js +201 -0
  702. package/dist/scripts/util/FileManagement.d.ts +7 -0
  703. package/dist/scripts/util/FileManagement.js +35 -0
  704. package/dist/scripts/util/ManualCheck.d.ts +1 -0
  705. package/dist/scripts/util/ManualCheck.js +28 -0
  706. package/dist/scripts/util/ManualCheckRun.d.ts +1 -0
  707. package/dist/scripts/util/ManualCheckRun.js +6 -0
  708. package/dist/store.d.ts +17 -0
  709. package/dist/store.js +17 -0
  710. package/dist/styles/DefaultGridContainer.css +61 -0
  711. package/dist/styles/global.css +1 -0
  712. package/dist/template/SeaweedTemplate.svelte +907 -0
  713. package/dist/template/SeaweedTemplate.svelte.d.ts +19 -0
  714. package/dist/theme.postcss +116 -0
  715. package/dist/types/BlogBlurbMeta.d.ts +11 -0
  716. package/dist/types/BlogBlurbMeta.js +16 -0
  717. package/dist/types/BreadcrumbData.d.ts +4 -0
  718. package/dist/types/BreadcrumbData.js +1 -0
  719. package/dist/types/pineapple_fiber/DialogDetail.d.ts +6 -0
  720. package/dist/types/pineapple_fiber/DialogDetail.js +1 -0
  721. package/dist/types/pineapple_fiber/DialogState.d.ts +5 -0
  722. package/dist/types/pineapple_fiber/DialogState.js +6 -0
  723. package/dist/types/pineapple_fiber/DialogVariableStore.d.ts +2 -0
  724. package/dist/types/pineapple_fiber/DialogVariableStore.js +20 -0
  725. package/dist/types/pineapple_fiber/PortraitType.d.ts +11 -0
  726. package/dist/types/pineapple_fiber/PortraitType.js +12 -0
  727. package/dist/util/create_go_to_function.d.ts +1 -0
  728. package/dist/util/create_go_to_function.js +5 -0
  729. package/dist/util/stable_random.d.ts +2 -0
  730. package/dist/util/stable_random.js +15 -0
  731. package/docs/GroupLazyLoad.md +34 -0
  732. package/docs/PineappleFiberSpec.md +356 -0
  733. package/docs/Workflow.md +5 -0
  734. package/docs/images/figure-ares-happy.png +0 -0
  735. package/docs/images/figure-yarn-spinner.png +0 -0
  736. package/package.json +16 -11
  737. package/postcss.config.cjs +6 -0
  738. package/src/lib/index.ts +1 -1
  739. package/src/lib/template/SeaweedTemplate.svelte +2 -1
  740. package/src/routes/portfolio/.gitignore +1 -0
  741. package/static/default-card.png +0 -0
  742. package/static/favicon.png +0 -0
  743. package/static/robots.txt +5 -0
  744. package/svelte.config.js +25 -0
  745. package/tailwind.config.ts +29 -0
  746. package/tsconfig.json +22 -0
  747. package/vite.config.ts +6 -0
  748. package/vite.config.ts.timestamp-1709797261217-7fe7973433269.mjs +10 -0
  749. package/vite.config.ts.timestamp-1709801575567-e7eed430338b.mjs +10 -0
  750. package/vite.config.ts.timestamp-1710003919548-e3e0deafd6ef6.mjs +10 -0
  751. package/yarn.lock +2797 -0
  752. /package/src/{routes/portfolio → lib/components}/SocialSection.svelte +0 -0
@@ -0,0 +1,77 @@
1
+ /**
2
+ * DialogManager is the object we want to interact with in Svelte
3
+ */
4
+ /// <reference types="svelte" />
5
+ import type { DialogDetail } from "../../types/pineapple_fiber/DialogDetail";
6
+ import { DialogState } from "../../types/pineapple_fiber/DialogState";
7
+ import { DialogProcessor } from "./DialogProcessor";
8
+ export type OnSetDialogChoiceCallback = (newMessage: DialogDetail) => void;
9
+ export declare class DialogManager {
10
+ dialogMessageMap: Map<string, DialogDetail>;
11
+ dialogMessageList: DialogDetail[];
12
+ fullCurrentMessage: string;
13
+ currentMessageMeta: DialogDetail;
14
+ currentMessage: import("svelte/store").Writable<string>;
15
+ currentIndex: number;
16
+ previousTimestamp: number;
17
+ isDoneTransition: boolean;
18
+ currentPortrait: import("svelte/store").Writable<unknown>;
19
+ portraitMap: Map<string, any>;
20
+ currentState: DialogState;
21
+ hidePercent: import("svelte/motion").Tweened<number>;
22
+ skipNextActiveTime: number;
23
+ dialogProcessor: DialogProcessor;
24
+ _setDialogChoiceQueue: DialogDetail[];
25
+ _setDialogChoiceMutex: boolean;
26
+ onSetDialogListeners: OnSetDialogChoiceCallback[];
27
+ constructor();
28
+ /**
29
+ * when users interact with the dialog, they can skip the transition like in a game
30
+ * note that there is a cool down to this, check out skipNextActiveTime
31
+ */
32
+ skipAnimation: () => void;
33
+ /**
34
+ * hides or shows the dialog UI
35
+ * @param shouldEnable
36
+ */
37
+ enableDialog: (shouldEnable: boolean) => void;
38
+ /**
39
+ * sets the possible dialog that might appear on the Dialog UI
40
+ * note that it overwrites the previous tree and does not append on it due to the possibility
41
+ * of node name conflicts
42
+ * @param newMessageList
43
+ */
44
+ setDialogTree: (newMessageList: DialogDetail[]) => void;
45
+ /**
46
+ * Remember to call this before SetDialogTree
47
+ * and unsubscribe during onDestroy
48
+ * @param callback
49
+ */
50
+ subscribeToSetDialogChoice: (callback: OnSetDialogChoiceCallback) => void;
51
+ /**
52
+ * Remember to call this during onDestroy
53
+ * @param callback
54
+ * todo: double check if this works???
55
+ */
56
+ unsubscribeToSetDialogChoice: (callback: OnSetDialogChoiceCallback) => void;
57
+ /**
58
+ * Sets the next dialog to show depending on which special choice a href link the user
59
+ * has interacted with
60
+ * @param newMessage
61
+ *
62
+ * you can listen to this!
63
+ */
64
+ setDialogChoice: (newMessage: DialogDetail | undefined) => void;
65
+ _setDialogChoice: () => void;
66
+ setDialogToDefault: () => void;
67
+ /**
68
+ * updates the information and detail frame by frame
69
+ * you can think of this like the main game loop
70
+ *
71
+ * @param timestamp
72
+ *
73
+ * todo: this might be too big we might want to refactor this method for better readability
74
+ * ISSUE #81 https://github.com/TurnipXenon/pineapple/issues/81
75
+ */
76
+ update: (timestamp: number) => void;
77
+ }
@@ -0,0 +1,239 @@
1
+ /**
2
+ * DialogManager is the object we want to interact with in Svelte
3
+ */
4
+ import { writable } from "svelte/store";
5
+ import { DialogState } from "../../types/pineapple_fiber/DialogState";
6
+ import { tweened } from "svelte/motion";
7
+ import { cubicOut } from "svelte/easing";
8
+ import { PortraitType } from "../../types/pineapple_fiber/PortraitType";
9
+ import AresHappy from "../../assets/characters/ares/ares_happy.webp";
10
+ import AresBlushing from "../../assets/characters/ares/ares_blushing.webp";
11
+ import AresDisappointed from "../../assets/characters/ares/ares_disappointed.webp";
12
+ import AresLetsGo from "../../assets/characters/ares/ares_lets_go.webp";
13
+ import AresMad from "../../assets/characters/ares/ares_mad.webp";
14
+ import AresNeutral from "../../assets/characters/ares/ares_neutral.webp";
15
+ import AresSlightlyMad from "../../assets/characters/ares/ares_slightly_mad.webp";
16
+ import AresSurprised from "../../assets/characters/ares/ares_surprised.webp";
17
+ import AresYay from "../../assets/characters/ares/ares_yay.webp";
18
+ import { defaultDialogMessage, dialogVariableStore, enableDialogueOverlay, updateRate } from "./DialogManagerStore";
19
+ import { DialogProcessor } from "./DialogProcessor";
20
+ const shouldDebugYarn = false;
21
+ export class DialogManager {
22
+ dialogMessageMap = new Map();
23
+ dialogMessageList = [];
24
+ fullCurrentMessage = defaultDialogMessage[0].textContent;
25
+ currentMessageMeta = defaultDialogMessage[0];
26
+ currentMessage = writable("");
27
+ currentIndex = 0;
28
+ previousTimestamp = 0;
29
+ isDoneTransition = false;
30
+ currentPortrait = writable();
31
+ portraitMap = new Map();
32
+ currentState = DialogState.Visible;
33
+ hidePercent = tweened(100, {
34
+ duration: 400,
35
+ easing: cubicOut
36
+ }); // 100 = 100%
37
+ skipNextActiveTime = 0;
38
+ dialogProcessor = new DialogProcessor();
39
+ // for queueing actions
40
+ _setDialogChoiceQueue = [];
41
+ _setDialogChoiceMutex = false;
42
+ onSetDialogListeners = [];
43
+ constructor() {
44
+ enableDialogueOverlay.subscribe((value) => {
45
+ // todo: investigate why we cant put setDialogDefault inside the then clause
46
+ // ISSUE #82 https://github.com/TurnipXenon/pineapple/issues/82
47
+ if (value) {
48
+ this.hidePercent.set(0);
49
+ this.setDialogToDefault();
50
+ }
51
+ else {
52
+ this.hidePercent.set(100);
53
+ this.setDialogTree([{ textContent: "" }]);
54
+ }
55
+ });
56
+ }
57
+ /**
58
+ * when users interact with the dialog, they can skip the transition like in a game
59
+ * note that there is a cool down to this, check out skipNextActiveTime
60
+ */
61
+ skipAnimation = () => {
62
+ if (this.previousTimestamp > this.skipNextActiveTime &&
63
+ this.currentState == DialogState.Visible &&
64
+ !this.isDoneTransition // crucial for dynamic links!
65
+ ) {
66
+ this.currentIndex = this.fullCurrentMessage.length - 1;
67
+ this.currentMessage.update(() => this.fullCurrentMessage.slice(0, this.currentIndex));
68
+ }
69
+ };
70
+ /**
71
+ * hides or shows the dialog UI
72
+ * @param shouldEnable
73
+ */
74
+ enableDialog = (shouldEnable) => {
75
+ enableDialogueOverlay.update(() => shouldEnable);
76
+ };
77
+ /**
78
+ * sets the possible dialog that might appear on the Dialog UI
79
+ * note that it overwrites the previous tree and does not append on it due to the possibility
80
+ * of node name conflicts
81
+ * @param newMessageList
82
+ */
83
+ setDialogTree = (newMessageList) => {
84
+ this.dialogMessageList = newMessageList;
85
+ this.dialogMessageMap.clear();
86
+ newMessageList.map((value) => {
87
+ if (value.dialogId) {
88
+ this.dialogMessageMap.set(value.dialogId, value);
89
+ }
90
+ });
91
+ // lazy load map
92
+ if (this.portraitMap.size == 0) {
93
+ this.portraitMap.set(PortraitType.AresHappy.toString(), AresHappy);
94
+ this.portraitMap.set(PortraitType.AresBlushing.toString(), AresBlushing);
95
+ this.portraitMap.set(PortraitType.AresDisappointed.toString(), AresDisappointed);
96
+ this.portraitMap.set(PortraitType.AresLetsGo.toString(), AresLetsGo);
97
+ this.portraitMap.set(PortraitType.AresMad.toString(), AresMad);
98
+ this.portraitMap.set(PortraitType.AresNeutral.toString(), AresNeutral);
99
+ this.portraitMap.set(PortraitType.AresSlightlyMad.toString(), AresSlightlyMad);
100
+ this.portraitMap.set(PortraitType.AresSurprised.toString(), AresSurprised);
101
+ this.portraitMap.set(PortraitType.AresYay.toString(), AresYay);
102
+ }
103
+ this.setDialogChoice(newMessageList[0]);
104
+ };
105
+ /**
106
+ * Remember to call this before SetDialogTree
107
+ * and unsubscribe during onDestroy
108
+ * @param callback
109
+ */
110
+ subscribeToSetDialogChoice = (callback) => {
111
+ this.onSetDialogListeners.push(callback);
112
+ };
113
+ /**
114
+ * Remember to call this during onDestroy
115
+ * @param callback
116
+ * todo: double check if this works???
117
+ */
118
+ unsubscribeToSetDialogChoice = (callback) => {
119
+ // from: https://stackoverflow.com/a/5767357/17836168
120
+ const index = this.onSetDialogListeners.indexOf(callback);
121
+ if (index > -1) {
122
+ // only splice array when item is found
123
+ this.onSetDialogListeners.splice(index, 1); // 2nd parameter means remove one item only
124
+ }
125
+ };
126
+ /**
127
+ * Sets the next dialog to show depending on which special choice a href link the user
128
+ * has interacted with
129
+ * @param newMessage
130
+ *
131
+ * you can listen to this!
132
+ */
133
+ setDialogChoice = (newMessage) => {
134
+ if (!newMessage || !newMessage.textContent) {
135
+ return;
136
+ }
137
+ this._setDialogChoiceQueue.push(newMessage);
138
+ if (!this._setDialogChoiceMutex) {
139
+ this._setDialogChoiceMutex = true; // not a true mutex but this will do
140
+ this._setDialogChoice();
141
+ }
142
+ };
143
+ _setDialogChoice = () => {
144
+ const newMessage = this._setDialogChoiceQueue.shift();
145
+ if (newMessage === undefined) {
146
+ this._setDialogChoiceMutex = false; // set it free!
147
+ this.onSetDialogListeners.forEach((listener) => {
148
+ listener(this.currentMessageMeta);
149
+ });
150
+ return;
151
+ }
152
+ this.currentMessageMeta = newMessage;
153
+ // set the portrait
154
+ let portraitValue = AresHappy;
155
+ if (this.currentMessageMeta.portraitType) {
156
+ portraitValue = this.portraitMap.get(this.currentMessageMeta.portraitType);
157
+ }
158
+ if (portraitValue) {
159
+ this.currentPortrait.update(() => portraitValue);
160
+ }
161
+ // process the dialogue here line-by-line
162
+ this.fullCurrentMessage = this.dialogProcessor.processDialog(this.currentMessageMeta);
163
+ this.currentMessage.update(() => "");
164
+ this.currentIndex = 0;
165
+ this.skipNextActiveTime = this.previousTimestamp + 1000; // guard
166
+ this.isDoneTransition = false; // must be after the guard
167
+ if (shouldDebugYarn) {
168
+ console.info(`Currently processing node: ${this.currentMessageMeta.dialogId}`);
169
+ }
170
+ // save that we visited AND processed the node
171
+ if (this.currentMessageMeta.dialogId) {
172
+ const key = `+${this.currentMessageMeta.dialogId}`;
173
+ const value = Number(dialogVariableStore.getItem(key));
174
+ if (isNaN(value)) {
175
+ dialogVariableStore.setItem(key, "1");
176
+ }
177
+ else {
178
+ dialogVariableStore.setItem(key, `${value + 1}`);
179
+ }
180
+ }
181
+ // reloop this to process all messages
182
+ this._setDialogChoice();
183
+ };
184
+ setDialogToDefault = () => {
185
+ this.setDialogTree(defaultDialogMessage);
186
+ };
187
+ /**
188
+ * updates the information and detail frame by frame
189
+ * you can think of this like the main game loop
190
+ *
191
+ * @param timestamp
192
+ *
193
+ * todo: this might be too big we might want to refactor this method for better readability
194
+ * ISSUE #81 https://github.com/TurnipXenon/pineapple/issues/81
195
+ */
196
+ update = (timestamp) => {
197
+ if (this.currentState == DialogState.Invisible || this.currentState == DialogState.Busy) {
198
+ window.requestAnimationFrame(this.update);
199
+ return;
200
+ }
201
+ // if visible
202
+ // text transition loop
203
+ if (!this.isDoneTransition && this.currentIndex > this.fullCurrentMessage.length) {
204
+ const elementList = document.getElementsByClassName("dialog-choice");
205
+ for (const el of elementList) {
206
+ el.addEventListener("click", (event) => {
207
+ // todo: make more robust; for now we're assuming first class is our choice
208
+ const choice = el.classList[0].split("-")[1];
209
+ this.setDialogChoice(this.dialogMessageMap.get(choice));
210
+ });
211
+ }
212
+ this.isDoneTransition = true;
213
+ }
214
+ // guard: skip if done or if not yet time to update
215
+ if (this.currentIndex > this.fullCurrentMessage.length ||
216
+ this.previousTimestamp + updateRate > timestamp) {
217
+ window.requestAnimationFrame(this.update);
218
+ return;
219
+ }
220
+ this.previousTimestamp = timestamp;
221
+ // check if valid text
222
+ // there is an assumption that previous character is valid
223
+ // let validCharacterIndex = this.currentLength - 1;
224
+ // validCharacterIndex++;
225
+ // the code above is just to show you how it looks like but let's assume
226
+ // that currentLength = validCharacter + 1
227
+ while (this.fullCurrentMessage[this.currentIndex] == "<" &&
228
+ this.currentIndex + 1 < this.fullCurrentMessage.length) {
229
+ // find valid character, trap with closing
230
+ this.currentIndex = this.fullCurrentMessage.indexOf(">", this.currentIndex) + 1;
231
+ // normalize
232
+ this.currentIndex = Math.min(this.currentIndex, this.fullCurrentMessage.length - 1);
233
+ }
234
+ this.currentMessage.update(() => this.fullCurrentMessage.slice(0, this.currentIndex));
235
+ // increment
236
+ ++this.currentIndex;
237
+ window.requestAnimationFrame(this.update);
238
+ };
239
+ }
@@ -0,0 +1,41 @@
1
+ /**
2
+ * DialogManagerStore is for variables that will be used as a Svelte store
3
+ * or is saved in local storage
4
+ */
5
+ /// <reference types="svelte" />
6
+ import type { DialogMapStore } from "../../types/pineapple_fiber/DialogVariableStore";
7
+ import type { DialogDetail } from "../../types/pineapple_fiber/DialogDetail";
8
+ import { DialogManager } from "./DialogManager";
9
+ /**
10
+ * Enables the dialogue overlay
11
+ *
12
+ * @example
13
+ * When updating to false, remember to restore the value to true, our default value, onDestroy.
14
+ * Avoid async to prevent weird flashes of updates!
15
+ * ```
16
+ * import {enableDialogueOverlay} from "../../store.ts";
17
+ * enableDialogueOverlay.update(() => false);
18
+ *
19
+ * onDestroy(() => {
20
+ * enableDialogueOverlay.update(() => true);
21
+ * });
22
+ * ```
23
+ */
24
+ export declare const enableDialogueOverlay: import("svelte/store").Writable<boolean>;
25
+ export declare const dialogVariableStore: DialogMapStore;
26
+ export declare const updateRate: number;
27
+ export declare const defaultDialogMessage: DialogDetail[];
28
+ /**
29
+ * strictly must be declared last! or you might receive a weird error that looks like:
30
+ *
31
+ * 2:04:21 AM [vite] Error when evaluating SSR module /src/lib/components/dialog_manager/DialogManagerStore.ts:
32
+ * |- TypeError: Cannot read properties of undefined (reading '0')
33
+ * at <instance_members_initializer> (/src/lib/components/dialog_manager/DialogManager.ts:38:67)
34
+ * at new DialogManager (/src/lib/components/dialog_manager/DialogManager.ts:53:14)
35
+ * at eval (/src/lib/components/dialog_manager/DialogManagerStore.ts:15:23)
36
+ * at async instantiateModule (file:///C:/Users/Pumpkin/Projects/Web/pineapple/node_modules/vite/dist/node/chunks/dep-934dbc7c.js:54360:9)
37
+ *
38
+ * what this means is that one member of dialogManager cannot be initialized. in our case, it was the
39
+ * defaultDialogMessage not yet being initialized
40
+ */
41
+ export declare const dialogManager: DialogManager;
@@ -0,0 +1,45 @@
1
+ /**
2
+ * DialogManagerStore is for variables that will be used as a Svelte store
3
+ * or is saved in local storage
4
+ */
5
+ import { createNewMapStore } from "../../types/pineapple_fiber/DialogVariableStore";
6
+ import { writable } from "svelte/store";
7
+ import { DialogManager } from "./DialogManager";
8
+ /**
9
+ * Enables the dialogue overlay
10
+ *
11
+ * @example
12
+ * When updating to false, remember to restore the value to true, our default value, onDestroy.
13
+ * Avoid async to prevent weird flashes of updates!
14
+ * ```
15
+ * import {enableDialogueOverlay} from "../../store.ts";
16
+ * enableDialogueOverlay.update(() => false);
17
+ *
18
+ * onDestroy(() => {
19
+ * enableDialogueOverlay.update(() => true);
20
+ * });
21
+ * ```
22
+ */
23
+ export const enableDialogueOverlay = writable(true);
24
+ export const dialogVariableStore = createNewMapStore();
25
+ export const updateRate = 40 / 1000; // *at least* 40ms per letter
26
+ // todo: if we go through doing yarn to typescript, move this!
27
+ export const defaultDialogMessage = [
28
+ {
29
+ textContent: `<p>Have you drank water? Or perhaps, you've checked out <a target="_blank" class="external-link" href="http://crouton.net">one of the best webpages</a> out there?`
30
+ }
31
+ ];
32
+ /**
33
+ * strictly must be declared last! or you might receive a weird error that looks like:
34
+ *
35
+ * 2:04:21 AM [vite] Error when evaluating SSR module /src/lib/components/dialog_manager/DialogManagerStore.ts:
36
+ * |- TypeError: Cannot read properties of undefined (reading '0')
37
+ * at <instance_members_initializer> (/src/lib/components/dialog_manager/DialogManager.ts:38:67)
38
+ * at new DialogManager (/src/lib/components/dialog_manager/DialogManager.ts:53:14)
39
+ * at eval (/src/lib/components/dialog_manager/DialogManagerStore.ts:15:23)
40
+ * at async instantiateModule (file:///C:/Users/Pumpkin/Projects/Web/pineapple/node_modules/vite/dist/node/chunks/dep-934dbc7c.js:54360:9)
41
+ *
42
+ * what this means is that one member of dialogManager cannot be initialized. in our case, it was the
43
+ * defaultDialogMessage not yet being initialized
44
+ */
45
+ export const dialogManager = new DialogManager();
@@ -0,0 +1,13 @@
1
+ import type { DialogDetail } from "../../types/pineapple_fiber/DialogDetail";
2
+ import { LineSelectorNode } from "./behavior_tree/line_core/LineSelectorNode";
3
+ /**
4
+ * DialogProcessor processes dialogs
5
+ */
6
+ export declare class DialogProcessor {
7
+ processingTree: LineSelectorNode;
8
+ /**
9
+ * process the dialog line by line and return a presentable string
10
+ * @param dialogDetail
11
+ */
12
+ processDialog: (dialogDetail: DialogDetail) => string;
13
+ }
@@ -0,0 +1,62 @@
1
+ import { BehaviorState } from "./behavior_tree/line_processors/BehaviorState";
2
+ import { IfNode } from "./behavior_tree/line_processors/IfNode";
3
+ import { EndIfNode } from "./behavior_tree/line_processors/EndIfNode";
4
+ import { ElseNode } from "./behavior_tree/line_processors/ElseNode";
5
+ import { ElseIfNode } from "./behavior_tree/line_processors/ElseIfNode";
6
+ import { SetVariableNode } from "./behavior_tree/line_processors/SetVariableNode";
7
+ import { IgnoreGuardNode } from "./behavior_tree/line_processors/IgnoreGuardNode";
8
+ import { NormalLineProcessorNode } from "./behavior_tree/line_processors/NormalLineProcessorNode";
9
+ import { LineSelectorNode } from "./behavior_tree/line_core/LineSelectorNode";
10
+ import { browser } from "$app/environment";
11
+ import { LineCommentNode } from "./behavior_tree/line_processors/LineCommentNode";
12
+ import { DeclareCommand } from "./behavior_tree/line_processors/commands/DeclareCommand";
13
+ import { JumpCommand } from "./behavior_tree/line_processors/commands/JumpCommand";
14
+ import { IgnoreJumpNode } from "./behavior_tree/line_processors/IgnoreJumpNode";
15
+ import { UnvisitCommand } from "./behavior_tree/line_processors/commands/UnvisitCommand";
16
+ /**
17
+ * DialogProcessor processes dialogs
18
+ */
19
+ export class DialogProcessor {
20
+ processingTree = new LineSelectorNode([
21
+ /*region comment based formats*/
22
+ new IgnoreJumpNode(), // must be prioritized above line comment node
23
+ new LineCommentNode(),
24
+ /*endregion commend based formats*/
25
+ new EndIfNode(),
26
+ new ElseIfNode(),
27
+ new ElseNode(),
28
+ new IfNode(),
29
+ new IgnoreGuardNode(),
30
+ /*region commands*/
31
+ new SetVariableNode(),
32
+ new DeclareCommand(),
33
+ new JumpCommand(),
34
+ new UnvisitCommand(),
35
+ /*endregion commands*/
36
+ new NormalLineProcessorNode()
37
+ ]);
38
+ /**
39
+ * process the dialog line by line and return a presentable string
40
+ * @param dialogDetail
41
+ */
42
+ processDialog = (dialogDetail) => {
43
+ if (!browser) {
44
+ return ""; // don't process any line in the server
45
+ }
46
+ let currentState = new BehaviorState();
47
+ // split each yarn line
48
+ return dialogDetail.textContent
49
+ .trim()
50
+ .split("\n")
51
+ .map((line_, index) => {
52
+ const result = this.processingTree.process({
53
+ initState: currentState,
54
+ line: line_.trim(),
55
+ lineIndex: index
56
+ });
57
+ currentState = result.nextState;
58
+ return result.renderedLine;
59
+ })
60
+ .join("\n"); // combine all processed lines
61
+ };
62
+ }
@@ -0,0 +1,5 @@
1
+ declare class _DialogUtils {
2
+ isNodeVisited: (dialogId: string) => boolean;
3
+ }
4
+ export declare const DialogUtils: _DialogUtils;
5
+ export {};
@@ -0,0 +1,8 @@
1
+ import { dialogVariableStore } from "./DialogManagerStore";
2
+ class _DialogUtils {
3
+ isNodeVisited = (dialogId) => {
4
+ const value = Number(dialogVariableStore.getItem(`+${dialogId}`));
5
+ return !isNaN(value) && value > 0;
6
+ };
7
+ }
8
+ export const DialogUtils = new _DialogUtils();
@@ -0,0 +1,15 @@
1
+ declare class BTreeUtils {
2
+ /**
3
+ * peek the top of a stack object with the assumption it's not an empty stack
4
+ * todo: add possible protection like an assertion
5
+ * @param stack
6
+ * @return top of the stack
7
+ */
8
+ peek: <T>(stack: T[]) => T;
9
+ removeQuotes: (value: string) => string;
10
+ simplifyToken: (oldToken: string) => string;
11
+ isTrue: (value: string) => boolean;
12
+ isFalse: (value: string) => boolean;
13
+ }
14
+ export declare const btreeUtils: BTreeUtils;
15
+ export {};
@@ -0,0 +1,34 @@
1
+ class BTreeUtils {
2
+ /**
3
+ * peek the top of a stack object with the assumption it's not an empty stack
4
+ * todo: add possible protection like an assertion
5
+ * @param stack
6
+ * @return top of the stack
7
+ */
8
+ peek = (stack) => {
9
+ return stack[stack.length - 1];
10
+ };
11
+ removeQuotes = (value) => {
12
+ return value
13
+ .replace(/^"/, "") // remove possible " at the start: https://stackoverflow.com/a/2182602
14
+ .replace(/"$/, ""); // remove possible " at the end: https://stackoverflow.com/a/12249011
15
+ };
16
+ simplifyToken = (oldToken) => {
17
+ if (oldToken[0] == "$") {
18
+ const value = localStorage.getItem(oldToken);
19
+ if (value) {
20
+ return value;
21
+ }
22
+ console.error(`Value obtained in local storage false: ${oldToken}`);
23
+ return "";
24
+ }
25
+ return btreeUtils.removeQuotes(oldToken);
26
+ };
27
+ isTrue = (value) => {
28
+ return value.trim().toLowerCase() === "true";
29
+ };
30
+ isFalse = (value) => {
31
+ return value.trim().toLowerCase() === "false";
32
+ };
33
+ }
34
+ export const btreeUtils = new BTreeUtils();
@@ -0,0 +1,4 @@
1
+ import type { BehaviorStatus } from "./BehaviorStatus";
2
+ export interface BaseBehaviorResult {
3
+ status: BehaviorStatus;
4
+ }
@@ -0,0 +1,3 @@
1
+ export interface BehaviorNode<Argument, Result> {
2
+ process: (nodeArgs: Argument) => Result;
3
+ }
@@ -0,0 +1,5 @@
1
+ export declare enum BehaviorStatus {
2
+ Running = 0,
3
+ Success = 1,
4
+ Failure = 2
5
+ }
@@ -0,0 +1,6 @@
1
+ export var BehaviorStatus;
2
+ (function (BehaviorStatus) {
3
+ BehaviorStatus[BehaviorStatus["Running"] = 0] = "Running";
4
+ BehaviorStatus[BehaviorStatus["Success"] = 1] = "Success";
5
+ BehaviorStatus[BehaviorStatus["Failure"] = 2] = "Failure";
6
+ })(BehaviorStatus || (BehaviorStatus = {}));
@@ -0,0 +1,12 @@
1
+ import type { BehaviorNode } from "./BehaviorNode";
2
+ import type { BaseBehaviorResult } from "./BaseBehaviorResult";
3
+ /**
4
+ * Selector is a composite behavior node where it tries to process everything until it
5
+ * finds a non-failing node
6
+ */
7
+ export declare abstract class SelectorNode<Argument, Result extends BaseBehaviorResult> implements BehaviorNode<Argument, Result> {
8
+ nodeList: BehaviorNode<Argument, Result>[];
9
+ abstract defaultResult: () => Result;
10
+ protected constructor(nodeList: BehaviorNode<Argument, Result>[]);
11
+ process(nodeArgs: Argument): Result;
12
+ }
@@ -0,0 +1,22 @@
1
+ import { BehaviorStatus } from "./BehaviorStatus";
2
+ /**
3
+ * Selector is a composite behavior node where it tries to process everything until it
4
+ * finds a non-failing node
5
+ */
6
+ export class SelectorNode {
7
+ nodeList;
8
+ constructor(nodeList) {
9
+ this.nodeList = nodeList;
10
+ }
11
+ process(nodeArgs) {
12
+ let finalResult = this.defaultResult();
13
+ for (const node of this.nodeList) {
14
+ const currentResult = node.process(nodeArgs);
15
+ if (currentResult.status !== BehaviorStatus.Failure) {
16
+ finalResult = currentResult;
17
+ break;
18
+ }
19
+ }
20
+ return finalResult;
21
+ }
22
+ }
@@ -0,0 +1,5 @@
1
+ import type { ExpressionState } from "./ExpressionState";
2
+ export interface ExpressionArguments {
3
+ token: string;
4
+ initState: ExpressionState;
5
+ }
@@ -0,0 +1,4 @@
1
+ import type { BehaviorNode } from "../core/BehaviorNode";
2
+ import type { ExpressionArguments } from "./ExpressionArguments";
3
+ import type { ExpressionResult } from "./ExpressionResult";
4
+ export type ExpressionBehaviorNode = BehaviorNode<ExpressionArguments, ExpressionResult>;
@@ -0,0 +1,15 @@
1
+ import { ExpressionSelectorNode } from "./ExpressionSelectorNode";
2
+ declare class ExpressionEvaluator {
3
+ evaluatorTree: ExpressionSelectorNode;
4
+ isNumeric: (str: string) => boolean;
5
+ getPrecedence: (token: string) => number;
6
+ evaluateFreeform: (line: string, prefix: string) => string[];
7
+ /**
8
+ * evaluates a yarn if or elseif statement
9
+ * @param line is the current line being evaluated
10
+ * @param prefix is either "<<if" or "<<elseif"
11
+ */
12
+ evaluate: (line: string, prefix: string) => boolean;
13
+ }
14
+ export declare const expressionEvaluator: ExpressionEvaluator;
15
+ export {};