@turnipxenon/pineapple 2.4.18 → 2.4.19

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 (92) hide show
  1. package/.idea/workspace.xml +15 -14
  2. package/.svelte-kit/__package__/components/Card.svelte +3 -0
  3. package/.svelte-kit/__package__/components/RandomizedBackground.svelte +2 -2
  4. package/.svelte-kit/__package__/components/pineapple/PineappleBaseLayout.svelte +6 -39
  5. package/.svelte-kit/__package__/index.d.ts +3 -1
  6. package/.svelte-kit/__package__/index.js +3 -1
  7. package/{dist/util/stable_random.d.ts → .svelte-kit/__package__/util/util.d.ts} +1 -0
  8. package/{dist/util/stable_random.js → .svelte-kit/__package__/util/util.js} +5 -0
  9. package/.svelte-kit/generated/server/internal.js +1 -1
  10. package/dist/components/Card.svelte +3 -0
  11. package/dist/components/RandomizedBackground.svelte +2 -2
  12. package/dist/components/pineapple/PineappleBaseLayout.svelte +6 -39
  13. package/dist/index.d.ts +3 -1
  14. package/dist/index.js +3 -1
  15. package/{.svelte-kit/__package__/util/stable_random.d.ts → dist/util/util.d.ts} +1 -0
  16. package/{.svelte-kit/__package__/util/stable_random.js → dist/util/util.js} +5 -0
  17. package/docs/PineappleFiberSpec.md +2 -2
  18. package/package.json +1 -1
  19. package/src/lib/components/Card.svelte +4 -0
  20. package/src/lib/components/DialogOverlay.svelte +2 -2
  21. package/src/lib/components/LazyAsset.svelte +2 -2
  22. package/src/lib/components/RandomizedBackground.svelte +8 -8
  23. package/src/lib/components/dialog_manager/DialogManagerStore.ts +5 -5
  24. package/src/lib/components/dialog_manager/DialogProcessor.ts +15 -15
  25. package/src/lib/components/dialog_manager/DialogUtils.ts +1 -1
  26. package/src/lib/components/dialog_manager/behavior_tree/core/BaseBehaviorResult.ts +1 -1
  27. package/src/lib/components/dialog_manager/behavior_tree/core/SelectorNode.ts +3 -3
  28. package/src/lib/components/dialog_manager/behavior_tree/expression/ExpressionArguments.ts +1 -1
  29. package/src/lib/components/dialog_manager/behavior_tree/expression/ExpressionBehaviorNode.ts +3 -3
  30. package/src/lib/components/dialog_manager/behavior_tree/expression/ExpressionEvaluator.ts +6 -6
  31. package/src/lib/components/dialog_manager/behavior_tree/expression/ExpressionResult.ts +2 -2
  32. package/src/lib/components/dialog_manager/behavior_tree/expression/ExpressionSelectorNode.ts +5 -5
  33. package/src/lib/components/dialog_manager/behavior_tree/expression/OperandNode.ts +5 -5
  34. package/src/lib/components/dialog_manager/behavior_tree/expression/OperatorNode.ts +5 -5
  35. package/src/lib/components/dialog_manager/behavior_tree/expression/commands/CommandExpressionNode.ts +5 -5
  36. package/src/lib/components/dialog_manager/behavior_tree/expression/commands/CommandLogicNode.ts +4 -4
  37. package/src/lib/components/dialog_manager/behavior_tree/expression/commands/CommandMap.ts +4 -4
  38. package/src/lib/components/dialog_manager/behavior_tree/expression/commands/RandomRangeCommand.ts +2 -2
  39. package/src/lib/components/dialog_manager/behavior_tree/expression/commands/VisitedCommand.ts +3 -3
  40. package/src/lib/components/dialog_manager/behavior_tree/expression/commands/VisitedCountCommand.ts +3 -3
  41. package/src/lib/components/dialog_manager/behavior_tree/expression/operators/AndOperator.ts +3 -3
  42. package/src/lib/components/dialog_manager/behavior_tree/expression/operators/EqualityOperator.ts +2 -2
  43. package/src/lib/components/dialog_manager/behavior_tree/expression/operators/GreaterThanEqualOperator.ts +2 -2
  44. package/src/lib/components/dialog_manager/behavior_tree/expression/operators/GreaterThanOperator.ts +2 -2
  45. package/src/lib/components/dialog_manager/behavior_tree/expression/operators/InequalityOperator.ts +2 -2
  46. package/src/lib/components/dialog_manager/behavior_tree/expression/operators/LessThanEqualOperator.ts +2 -2
  47. package/src/lib/components/dialog_manager/behavior_tree/expression/operators/LessThanOperator.ts +2 -2
  48. package/src/lib/components/dialog_manager/behavior_tree/expression/operators/NegationOperator.ts +3 -3
  49. package/src/lib/components/dialog_manager/behavior_tree/expression/operators/OperatorLogicNode.ts +4 -4
  50. package/src/lib/components/dialog_manager/behavior_tree/expression/operators/OperatorMap.ts +16 -16
  51. package/src/lib/components/dialog_manager/behavior_tree/expression/operators/OrOperator.ts +3 -3
  52. package/src/lib/components/dialog_manager/behavior_tree/expression/operators/XorOperator.ts +3 -3
  53. package/src/lib/components/dialog_manager/behavior_tree/expression/operators/arithmetic/DivisionOperator.ts +2 -2
  54. package/src/lib/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MinusOperator.ts +2 -2
  55. package/src/lib/components/dialog_manager/behavior_tree/expression/operators/arithmetic/MultiplicationOperator.ts +2 -2
  56. package/src/lib/components/dialog_manager/behavior_tree/expression/operators/arithmetic/PlusOperator.ts +2 -2
  57. package/src/lib/components/dialog_manager/behavior_tree/expression/operators/arithmetic/RemainderDivisionOperator.ts +2 -2
  58. package/src/lib/components/dialog_manager/behavior_tree/line_core/LineBehaviorNode.ts +3 -3
  59. package/src/lib/components/dialog_manager/behavior_tree/line_core/LineBehaviorResult.ts +2 -2
  60. package/src/lib/components/dialog_manager/behavior_tree/line_core/LineNodeArguments.ts +1 -1
  61. package/src/lib/components/dialog_manager/behavior_tree/line_core/LineSelectorNode.ts +6 -6
  62. package/src/lib/components/dialog_manager/behavior_tree/line_processors/BehaviorState.ts +1 -1
  63. package/src/lib/components/dialog_manager/behavior_tree/line_processors/ElseIfNode.ts +7 -7
  64. package/src/lib/components/dialog_manager/behavior_tree/line_processors/ElseNode.ts +6 -6
  65. package/src/lib/components/dialog_manager/behavior_tree/line_processors/EndIfNode.ts +4 -4
  66. package/src/lib/components/dialog_manager/behavior_tree/line_processors/IfNode.ts +7 -7
  67. package/src/lib/components/dialog_manager/behavior_tree/line_processors/IgnoreGuardNode.ts +6 -6
  68. package/src/lib/components/dialog_manager/behavior_tree/line_processors/IgnoreJumpNode.ts +4 -4
  69. package/src/lib/components/dialog_manager/behavior_tree/line_processors/LineCommentNode.ts +4 -4
  70. package/src/lib/components/dialog_manager/behavior_tree/line_processors/NormalLineProcessorNode.ts +4 -4
  71. package/src/lib/components/dialog_manager/behavior_tree/line_processors/SetVariableNode.ts +7 -7
  72. package/src/lib/components/dialog_manager/behavior_tree/line_processors/commands/DeclareCommand.ts +5 -5
  73. package/src/lib/components/dialog_manager/behavior_tree/line_processors/commands/JumpCommand.ts +7 -7
  74. package/src/lib/components/dialog_manager/behavior_tree/line_processors/commands/UnvisitCommand.ts +5 -5
  75. package/src/lib/components/layouts/SeaweedBaseLayout.svelte +3 -3
  76. package/src/lib/components/pineapple/PineappleBaseLayout.svelte +10 -18
  77. package/src/lib/index.ts +3 -1
  78. package/src/lib/scripts/util/ManualCheck.ts +1 -1
  79. package/src/lib/scripts/util/ManualCheckRun.ts +1 -1
  80. package/src/lib/store.ts +1 -1
  81. package/src/lib/types/pineapple_fiber/DialogDetail.ts +1 -1
  82. package/src/lib/util/{stable_random.ts → util.ts} +22 -16
  83. package/src/routes/(pineapple)/+page.svelte +22 -12
  84. package/src/routes/(pineapple)/pineapple/+page.svelte +13 -16
  85. package/src/routes/+error.svelte +1 -1
  86. package/src/routes/+layout.svelte +3 -3
  87. package/src/routes/ErrorYarn.ts +3 -3
  88. package/.svelte-kit/__package__/util/create_go_to_function.d.ts +0 -1
  89. package/.svelte-kit/__package__/util/create_go_to_function.js +0 -5
  90. package/dist/util/create_go_to_function.d.ts +0 -1
  91. package/dist/util/create_go_to_function.js +0 -5
  92. package/src/lib/util/create_go_to_function.ts +0 -5
@@ -4,7 +4,16 @@
4
4
  <option name="autoReloadType" value="SELECTIVE" />
5
5
  </component>
6
6
  <component name="ChangeListManager">
7
- <list default="true" id="accb6ba2-c343-4f84-ad30-6e2d71eceee5" name="Changes" comment="Replace all $lib to $pkg" />
7
+ <list default="true" id="accb6ba2-c343-4f84-ad30-6e2d71eceee5" name="Changes" comment="Replace all $lib to $pkg">
8
+ <change afterPath="$PROJECT_DIR$/src/lib/util/util.ts" afterDir="false" />
9
+ <change beforePath="$PROJECT_DIR$/src/lib/components/Card.svelte" beforeDir="false" afterPath="$PROJECT_DIR$/src/lib/components/Card.svelte" afterDir="false" />
10
+ <change beforePath="$PROJECT_DIR$/src/lib/components/RandomizedBackground.svelte" beforeDir="false" afterPath="$PROJECT_DIR$/src/lib/components/RandomizedBackground.svelte" afterDir="false" />
11
+ <change beforePath="$PROJECT_DIR$/src/lib/components/pineapple/PineappleBaseLayout.svelte" beforeDir="false" afterPath="$PROJECT_DIR$/src/lib/components/pineapple/PineappleBaseLayout.svelte" afterDir="false" />
12
+ <change beforePath="$PROJECT_DIR$/src/lib/index.ts" beforeDir="false" afterPath="$PROJECT_DIR$/src/lib/index.ts" afterDir="false" />
13
+ <change beforePath="$PROJECT_DIR$/src/lib/util/create_go_to_function.ts" beforeDir="false" />
14
+ <change beforePath="$PROJECT_DIR$/src/lib/util/stable_random.ts" beforeDir="false" />
15
+ <change beforePath="$PROJECT_DIR$/src/routes/(pineapple)/+page.svelte" beforeDir="false" afterPath="$PROJECT_DIR$/src/routes/(pineapple)/+page.svelte" afterDir="false" />
16
+ </list>
8
17
  <option name="SHOW_DIALOG" value="false" />
9
18
  <option name="HIGHLIGHT_CONFLICTS" value="true" />
10
19
  <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
@@ -115,6 +124,9 @@
115
124
  <recent name="C:\Users\Pumpkin\Projects\Web\pineapple\src\routes\(pineapple)" />
116
125
  <recent name="C:\Users\Pumpkin\Projects\Web\pineapple\src\routes\(seaweed)" />
117
126
  </key>
127
+ <key name="es6.move.members.recent.items">
128
+ <recent name="C:\Users\Pumpkin\Projects\Web\pineapple\src\lib\util\util.ts" />
129
+ </key>
118
130
  </component>
119
131
  <component name="RunManager" selected="npm.dev --open">
120
132
  <configuration name="dev --open" type="js.build_tools.npm" temporary="true" nameIsGenerated="true">
@@ -208,7 +220,7 @@
208
220
  <workItem from="1710914868232" duration="41000" />
209
221
  <workItem from="1711051949931" duration="144000" />
210
222
  <workItem from="1711052377810" duration="128000" />
211
- <workItem from="1711090540281" duration="2384000" />
223
+ <workItem from="1711090540281" duration="4426000" />
212
224
  </task>
213
225
  <task id="LOCAL-00030" summary="Migrate to skeleton 2.0">
214
226
  <option name="closed" value="true" />
@@ -640,7 +652,7 @@
640
652
  <entry key="branch">
641
653
  <value>
642
654
  <list>
643
- <option value="turnip/fix" />
655
+ <option value="turnip/dev" />
644
656
  </list>
645
657
  </value>
646
658
  </entry>
@@ -687,15 +699,4 @@
687
699
  <MESSAGE value="Replace all $lib to $pkg" />
688
700
  <option name="LAST_COMMIT_MESSAGE" value="Replace all $lib to $pkg" />
689
701
  </component>
690
- <component name="XDebuggerManager">
691
- <breakpoint-manager>
692
- <breakpoints>
693
- <line-breakpoint enabled="true" type="javascript">
694
- <url>file://$PROJECT_DIR$/src/routes/(pineapple)/pineapple/+page.svelte</url>
695
- <line>31</line>
696
- <option name="timeStamp" value="1" />
697
- </line-breakpoint>
698
- </breakpoints>
699
- </breakpoint-manager>
700
- </component>
701
702
  </project>
@@ -7,6 +7,9 @@ const style = `
7
7
  --turnip-card-margin-bottom: ${marginBottom};
8
8
  ${overrideStyle};
9
9
  `;
10
+ if (!$$slots.content) {
11
+ console.error("Missing content slot in card. No content will be displayed.");
12
+ }
10
13
  </script>
11
14
 
12
15
  {#if (includeDataNoSnippet)}
@@ -1,11 +1,11 @@
1
- <script>import { generatedDailySeed, mulberry32Generator } from "../util/stable_random";
2
- import BgTiledAres from "../assets/bg_tiled/bg_tiled_ares.png";
1
+ <script>import BgTiledAres from "../assets/bg_tiled/bg_tiled_ares.png";
3
2
  import BgTiledCorn from "../assets/bg_tiled/bg_tiled_corn.png";
4
3
  import BgTiledPineapple from "../assets/bg_tiled/bg_tiled_pineapple.png";
5
4
  import BgTiledReinhard from "../assets/bg_tiled/bg_tiled_reinhard.png";
6
5
  import BgTiledTomato from "../assets/bg_tiled/bg_tiled_tomato.png";
7
6
  import BgTiledTurnip from "../assets/bg_tiled/bg_tiled_turnip.png";
8
7
  import RandomizedImage from "./RandomizedImage.svelte";
8
+ import { generatedDailySeed, mulberry32Generator } from "../util/util";
9
9
  export let enable;
10
10
  const imageList = [BgTiledAres, BgTiledCorn, BgTiledPineapple, BgTiledReinhard, BgTiledTomato, BgTiledTurnip];
11
11
  const seed = generatedDailySeed();
@@ -9,6 +9,7 @@ import CloseIcon from "../../assets/icons/close.svg";
9
9
  import { dialogManager, enableDialogueOverlay } from "../dialog_manager/DialogManagerStore";
10
10
  import Toast from "./toast/Toast.svelte";
11
11
  import DialogOverlay from "../DialogOverlay.svelte";
12
+ import { crossfade } from "svelte/transition";
12
13
  let pages = [];
13
14
  const updateBreadcrumb = (pathname) => {
14
15
  pages = [];
@@ -80,12 +81,12 @@ enableDialogueOverlay.set(showDialogByDefault);
80
81
  <ol class="breadcrumb">
81
82
  {#each pages as crumb, i}
82
83
  {#if i < pages.length - 1}
83
- <li class="crumb">
84
+ <li class="crumb" transition:crossfade>
84
85
  <a href={crumb.path}>{crumb.name.charAt(0).toUpperCase() + crumb.name.slice(1)}</a>
86
+ &nbsp;&rsaquo;
85
87
  </li>
86
- <li class="crumb-separator" aria-hidden="true">&rsaquo;</li>
87
88
  {:else}
88
- <li class="crumb">{crumb.name.charAt(0).toUpperCase() + crumb.name.slice(1)}</li>
89
+ <li class="crumb" transition:crossfade>{crumb.name.charAt(0).toUpperCase() + crumb.name.slice(1)}</li>
89
90
  {/if}
90
91
  {/each}
91
92
  </ol>
@@ -106,17 +107,7 @@ enableDialogueOverlay.set(showDialogByDefault);
106
107
  <slot />
107
108
  <div class="footer-space" />
108
109
  </div>
109
- <!--{#if enableDialogueOverlayValue}-->
110
- <!-- &lt;!&ndash; Page Route Content &ndash;&gt;-->
111
- <!-- <div class="default-page-container">-->
112
- <!-- <slot />-->
113
- <!-- <div class="footer-space" />-->
114
- <!-- </div>-->
115
- <!-- <DialogOverlay />-->
116
- <!--{:else}-->
117
- <!-- <DialogOverlay />-->
118
- <!-- <slot />-->
119
- <!--{/if}-->
110
+
120
111
  </AppShell>
121
112
 
122
113
  <style>
@@ -166,15 +157,6 @@ enableDialogueOverlay.set(showDialogByDefault);
166
157
  display: flex;
167
158
  width: 100%;
168
159
  align-items: center;
169
- }
170
- .breadcrumb > :not([hidden]) ~ :not([hidden]),
171
- .breadcrumb-nonresponsive > :not([hidden]) ~ :not([hidden]) {
172
- --tw-space-x-reverse: 0;
173
- margin-right: calc(1rem * var(--tw-space-x-reverse));
174
- margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
175
- }
176
- .breadcrumb,
177
- .breadcrumb-nonresponsive {
178
160
  overflow-x: auto;
179
161
  /*@apply flex items-center space-x-4 w-full hide-scrollbar overflow-x-auto;*/
180
162
  }
@@ -185,24 +167,9 @@ enableDialogueOverlay.set(showDialogByDefault);
185
167
  justify-content: center;
186
168
  }
187
169
 
188
- .crumb > :not([hidden]) ~ :not([hidden]) {
189
- --tw-space-x-reverse: 0;
190
- margin-right: calc(0.5rem * var(--tw-space-x-reverse));
191
- margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
192
- }
193
-
194
- .dark .crumb-separator {
195
- color: rgb(var(--color-surface-200));
196
- }
197
-
198
170
  .crumb-separator {
199
171
  display: flex;
200
- opacity: 0.5;
201
- color: rgb(var(--color-surface-700));
202
- }
203
-
204
- .dark .crumb-separator {
205
- color: rgb(var(--color-surface-200));
172
+ color: var(--color-text-50);
206
173
  }
207
174
 
208
175
  /* === Auto-Responsive === */
@@ -7,4 +7,6 @@ export * from "./components/dialog_manager/DialogManager";
7
7
  export * from "./components/dialog_manager/DialogUtils";
8
8
  export * from "./types/pineapple_fiber/PortraitType";
9
9
  export * from "./types/pineapple_fiber/DialogDetail";
10
- export * from "./util/stable_random";
10
+ export * from "./util/util";
11
+ export { mulberry32Generator } from "./util/util";
12
+ export { generatedDailySeed } from "./util/util";
@@ -7,4 +7,6 @@ export * from "./components/dialog_manager/DialogManager";
7
7
  export * from "./components/dialog_manager/DialogUtils";
8
8
  export * from "./types/pineapple_fiber/PortraitType";
9
9
  export * from "./types/pineapple_fiber/DialogDetail";
10
- export * from "./util/stable_random";
10
+ export * from "./util/util";
11
+ export { mulberry32Generator } from "./util/util";
12
+ export { generatedDailySeed } from "./util/util";
@@ -1,2 +1,3 @@
1
1
  export declare const generatedDailySeed: () => number;
2
2
  export declare const mulberry32Generator: (a: number) => (() => number);
3
+ export declare const createGoToFunction: (path: string) => (() => void);
@@ -13,3 +13,8 @@ export const mulberry32Generator = (a) => {
13
13
  return ((t ^ (t >>> 14)) >>> 0) / 4294967296;
14
14
  };
15
15
  };
16
+ export const createGoToFunction = (path) => {
17
+ return (() => {
18
+ location.href = path;
19
+ });
20
+ };
@@ -21,7 +21,7 @@ export const options = {
21
21
  app: ({ head, body, assets, nonce, env }) => "<!DOCTYPE html>\n<html lang=\"en\">\n\t<head>\n\t\t<meta charset=\"utf-8\" />\n\t\t<link rel=\"icon\" href=\"" + assets + "/favicon.png\" />\n\t\t<meta name=\"viewport\" content=\"width=device-width\" />\n\t\t" + head + "\n\t</head>\n\n\t<body data-sveltekit-preload-data=\"hover\" data-theme=\"crimson\">\n\t\t<div style=\"display: contents\" class=\"h-full overflow-hidden\">" + body + "</div>\n\t</body>\n</html>\n",
22
22
  error: ({ status, message }) => "<!doctype html>\n<html lang=\"en\">\n\t<head>\n\t\t<meta charset=\"utf-8\" />\n\t\t<title>" + message + "</title>\n\n\t\t<style>\n\t\t\tbody {\n\t\t\t\t--bg: white;\n\t\t\t\t--fg: #222;\n\t\t\t\t--divider: #ccc;\n\t\t\t\tbackground: var(--bg);\n\t\t\t\tcolor: var(--fg);\n\t\t\t\tfont-family:\n\t\t\t\t\tsystem-ui,\n\t\t\t\t\t-apple-system,\n\t\t\t\t\tBlinkMacSystemFont,\n\t\t\t\t\t'Segoe UI',\n\t\t\t\t\tRoboto,\n\t\t\t\t\tOxygen,\n\t\t\t\t\tUbuntu,\n\t\t\t\t\tCantarell,\n\t\t\t\t\t'Open Sans',\n\t\t\t\t\t'Helvetica Neue',\n\t\t\t\t\tsans-serif;\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\tjustify-content: center;\n\t\t\t\theight: 100vh;\n\t\t\t\tmargin: 0;\n\t\t\t}\n\n\t\t\t.error {\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\tmax-width: 32rem;\n\t\t\t\tmargin: 0 1rem;\n\t\t\t}\n\n\t\t\t.status {\n\t\t\t\tfont-weight: 200;\n\t\t\t\tfont-size: 3rem;\n\t\t\t\tline-height: 1;\n\t\t\t\tposition: relative;\n\t\t\t\ttop: -0.05rem;\n\t\t\t}\n\n\t\t\t.message {\n\t\t\t\tborder-left: 1px solid var(--divider);\n\t\t\t\tpadding: 0 0 0 1rem;\n\t\t\t\tmargin: 0 0 0 1rem;\n\t\t\t\tmin-height: 2.5rem;\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t}\n\n\t\t\t.message h1 {\n\t\t\t\tfont-weight: 400;\n\t\t\t\tfont-size: 1em;\n\t\t\t\tmargin: 0;\n\t\t\t}\n\n\t\t\t@media (prefers-color-scheme: dark) {\n\t\t\t\tbody {\n\t\t\t\t\t--bg: #222;\n\t\t\t\t\t--fg: #ddd;\n\t\t\t\t\t--divider: #666;\n\t\t\t\t}\n\t\t\t}\n\t\t</style>\n\t</head>\n\t<body>\n\t\t<div class=\"error\">\n\t\t\t<span class=\"status\">" + status + "</span>\n\t\t\t<div class=\"message\">\n\t\t\t\t<h1>" + message + "</h1>\n\t\t\t</div>\n\t\t</div>\n\t</body>\n</html>\n"
23
23
  },
24
- version_hash: "1lwpjw0"
24
+ version_hash: "1nuybzt"
25
25
  };
26
26
 
27
27
  export async function get_hooks() {
@@ -7,6 +7,9 @@ const style = `
7
7
  --turnip-card-margin-bottom: ${marginBottom};
8
8
  ${overrideStyle};
9
9
  `;
10
+ if (!$$slots.content) {
11
+ console.error("Missing content slot in card. No content will be displayed.");
12
+ }
10
13
  </script>
11
14
 
12
15
  {#if (includeDataNoSnippet)}
@@ -1,11 +1,11 @@
1
- <script>import { generatedDailySeed, mulberry32Generator } from "../util/stable_random";
2
- import BgTiledAres from "../assets/bg_tiled/bg_tiled_ares.png";
1
+ <script>import BgTiledAres from "../assets/bg_tiled/bg_tiled_ares.png";
3
2
  import BgTiledCorn from "../assets/bg_tiled/bg_tiled_corn.png";
4
3
  import BgTiledPineapple from "../assets/bg_tiled/bg_tiled_pineapple.png";
5
4
  import BgTiledReinhard from "../assets/bg_tiled/bg_tiled_reinhard.png";
6
5
  import BgTiledTomato from "../assets/bg_tiled/bg_tiled_tomato.png";
7
6
  import BgTiledTurnip from "../assets/bg_tiled/bg_tiled_turnip.png";
8
7
  import RandomizedImage from "./RandomizedImage.svelte";
8
+ import { generatedDailySeed, mulberry32Generator } from "../util/util";
9
9
  export let enable;
10
10
  const imageList = [BgTiledAres, BgTiledCorn, BgTiledPineapple, BgTiledReinhard, BgTiledTomato, BgTiledTurnip];
11
11
  const seed = generatedDailySeed();
@@ -9,6 +9,7 @@ import CloseIcon from "../../assets/icons/close.svg";
9
9
  import { dialogManager, enableDialogueOverlay } from "../dialog_manager/DialogManagerStore";
10
10
  import Toast from "./toast/Toast.svelte";
11
11
  import DialogOverlay from "../DialogOverlay.svelte";
12
+ import { crossfade } from "svelte/transition";
12
13
  let pages = [];
13
14
  const updateBreadcrumb = (pathname) => {
14
15
  pages = [];
@@ -80,12 +81,12 @@ enableDialogueOverlay.set(showDialogByDefault);
80
81
  <ol class="breadcrumb">
81
82
  {#each pages as crumb, i}
82
83
  {#if i < pages.length - 1}
83
- <li class="crumb">
84
+ <li class="crumb" transition:crossfade>
84
85
  <a href={crumb.path}>{crumb.name.charAt(0).toUpperCase() + crumb.name.slice(1)}</a>
86
+ &nbsp;&rsaquo;
85
87
  </li>
86
- <li class="crumb-separator" aria-hidden="true">&rsaquo;</li>
87
88
  {:else}
88
- <li class="crumb">{crumb.name.charAt(0).toUpperCase() + crumb.name.slice(1)}</li>
89
+ <li class="crumb" transition:crossfade>{crumb.name.charAt(0).toUpperCase() + crumb.name.slice(1)}</li>
89
90
  {/if}
90
91
  {/each}
91
92
  </ol>
@@ -106,17 +107,7 @@ enableDialogueOverlay.set(showDialogByDefault);
106
107
  <slot />
107
108
  <div class="footer-space" />
108
109
  </div>
109
- <!--{#if enableDialogueOverlayValue}-->
110
- <!-- &lt;!&ndash; Page Route Content &ndash;&gt;-->
111
- <!-- <div class="default-page-container">-->
112
- <!-- <slot />-->
113
- <!-- <div class="footer-space" />-->
114
- <!-- </div>-->
115
- <!-- <DialogOverlay />-->
116
- <!--{:else}-->
117
- <!-- <DialogOverlay />-->
118
- <!-- <slot />-->
119
- <!--{/if}-->
110
+
120
111
  </AppShell>
121
112
 
122
113
  <style>
@@ -166,15 +157,6 @@ enableDialogueOverlay.set(showDialogByDefault);
166
157
  display: flex;
167
158
  width: 100%;
168
159
  align-items: center;
169
- }
170
- .breadcrumb > :not([hidden]) ~ :not([hidden]),
171
- .breadcrumb-nonresponsive > :not([hidden]) ~ :not([hidden]) {
172
- --tw-space-x-reverse: 0;
173
- margin-right: calc(1rem * var(--tw-space-x-reverse));
174
- margin-left: calc(1rem * calc(1 - var(--tw-space-x-reverse)));
175
- }
176
- .breadcrumb,
177
- .breadcrumb-nonresponsive {
178
160
  overflow-x: auto;
179
161
  /*@apply flex items-center space-x-4 w-full hide-scrollbar overflow-x-auto;*/
180
162
  }
@@ -185,24 +167,9 @@ enableDialogueOverlay.set(showDialogByDefault);
185
167
  justify-content: center;
186
168
  }
187
169
 
188
- .crumb > :not([hidden]) ~ :not([hidden]) {
189
- --tw-space-x-reverse: 0;
190
- margin-right: calc(0.5rem * var(--tw-space-x-reverse));
191
- margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
192
- }
193
-
194
- .dark .crumb-separator {
195
- color: rgb(var(--color-surface-200));
196
- }
197
-
198
170
  .crumb-separator {
199
171
  display: flex;
200
- opacity: 0.5;
201
- color: rgb(var(--color-surface-700));
202
- }
203
-
204
- .dark .crumb-separator {
205
- color: rgb(var(--color-surface-200));
172
+ color: var(--color-text-50);
206
173
  }
207
174
 
208
175
  /* === Auto-Responsive === */
package/dist/index.d.ts CHANGED
@@ -7,4 +7,6 @@ export * from "./components/dialog_manager/DialogManager";
7
7
  export * from "./components/dialog_manager/DialogUtils";
8
8
  export * from "./types/pineapple_fiber/PortraitType";
9
9
  export * from "./types/pineapple_fiber/DialogDetail";
10
- export * from "./util/stable_random";
10
+ export * from "./util/util";
11
+ export { mulberry32Generator } from "./util/util";
12
+ export { generatedDailySeed } from "./util/util";
package/dist/index.js CHANGED
@@ -7,4 +7,6 @@ export * from "./components/dialog_manager/DialogManager";
7
7
  export * from "./components/dialog_manager/DialogUtils";
8
8
  export * from "./types/pineapple_fiber/PortraitType";
9
9
  export * from "./types/pineapple_fiber/DialogDetail";
10
- export * from "./util/stable_random";
10
+ export * from "./util/util";
11
+ export { mulberry32Generator } from "./util/util";
12
+ export { generatedDailySeed } from "./util/util";
@@ -1,2 +1,3 @@
1
1
  export declare const generatedDailySeed: () => number;
2
2
  export declare const mulberry32Generator: (a: number) => (() => number);
3
+ export declare const createGoToFunction: (path: string) => (() => void);
@@ -13,3 +13,8 @@ export const mulberry32Generator = (a) => {
13
13
  return ((t ^ (t >>> 14)) >>> 0) / 4294967296;
14
14
  };
15
15
  };
16
+ export const createGoToFunction = (path) => {
17
+ return (() => {
18
+ location.href = path;
19
+ });
20
+ };
@@ -312,8 +312,8 @@ In Typescript, this would look like:
312
312
 
313
313
  // auto-generated from About.yarn
314
314
 
315
- import { dialogManager } from "$pkg/store";
316
- import { PortraitType } from "$pkg/types/pineapple_fiber/PortraitType";
315
+ import { dialogManager } from "$lib/store";
316
+ import { PortraitType } from "$lib/types/pineapple_fiber/PortraitType";
317
317
 
318
318
  class _AboutYarn {
319
319
  setDialogTree = () => {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@turnipxenon/pineapple",
3
3
  "description": "personal package for base styling for other personal projects",
4
- "version": "2.4.18",
4
+ "version": "2.4.19",
5
5
  "scripts": {
6
6
  "dev": "vite dev",
7
7
  "build": "npm run check-requirements && vite build && yarn package",
@@ -10,6 +10,10 @@
10
10
  --turnip-card-margin-bottom: ${marginBottom};
11
11
  ${overrideStyle};
12
12
  `;
13
+
14
+ if (!$$slots.content) {
15
+ console.error("Missing content slot in card. No content will be displayed.");
16
+ }
13
17
  </script>
14
18
 
15
19
  {#if (includeDataNoSnippet)}
@@ -1,8 +1,8 @@
1
1
  <script lang="ts">
2
- import AresHappy from "$pkg/assets/characters/ares/ares_happy.webp";
2
+ import AresHappy from "$lib/assets/characters/ares/ares_happy.webp";
3
3
  import { onMount } from "svelte";
4
4
 
5
- import { dialogManager } from "$pkg/components/dialog_manager/DialogManagerStore";
5
+ import { dialogManager } from "$lib/components/dialog_manager/DialogManagerStore";
6
6
  import { DialogState } from "$pkg/types/pineapple_fiber/DialogState";
7
7
 
8
8
  let currentMessage = "";
@@ -1,6 +1,6 @@
1
1
  <script lang="ts">
2
- import {LazyAssetStatus, LazyAssetType} from "$pkg/components/LazyAssetType";
3
- import BgTiledAres from "$pkg/assets/bg_tiled/bg_tiled_ares.png";
2
+ import {LazyAssetStatus, LazyAssetType} from "$lib/components/LazyAssetType";
3
+ import BgTiledAres from "$lib/assets/bg_tiled/bg_tiled_ares.png";
4
4
  import {onMount} from "svelte";
5
5
 
6
6
  export let src: string;
@@ -1,12 +1,12 @@
1
1
  <script lang="ts">
2
- import { generatedDailySeed, mulberry32Generator } from "$pkg/util/stable_random";
3
- import BgTiledAres from "$pkg/assets/bg_tiled/bg_tiled_ares.png";
4
- import BgTiledCorn from "$pkg/assets/bg_tiled/bg_tiled_corn.png";
5
- import BgTiledPineapple from "$pkg/assets/bg_tiled/bg_tiled_pineapple.png";
6
- import BgTiledReinhard from "$pkg/assets/bg_tiled/bg_tiled_reinhard.png";
7
- import BgTiledTomato from "$pkg/assets/bg_tiled/bg_tiled_tomato.png";
8
- import BgTiledTurnip from "$pkg/assets/bg_tiled/bg_tiled_turnip.png";
9
- import RandomizedImage from "$pkg/components/RandomizedImage.svelte";
2
+ import BgTiledAres from "$lib/assets/bg_tiled/bg_tiled_ares.png";
3
+ import BgTiledCorn from "$lib/assets/bg_tiled/bg_tiled_corn.png";
4
+ import BgTiledPineapple from "$lib/assets/bg_tiled/bg_tiled_pineapple.png";
5
+ import BgTiledReinhard from "$lib/assets/bg_tiled/bg_tiled_reinhard.png";
6
+ import BgTiledTomato from "$lib/assets/bg_tiled/bg_tiled_tomato.png";
7
+ import BgTiledTurnip from "$lib/assets/bg_tiled/bg_tiled_turnip.png";
8
+ import RandomizedImage from "$lib/components/RandomizedImage.svelte";
9
+ import { generatedDailySeed, mulberry32Generator } from "$pkg/util/util";
10
10
 
11
11
  export let enable;
12
12
 
@@ -3,11 +3,11 @@
3
3
  * or is saved in local storage
4
4
  */
5
5
 
6
- import type { DialogMapStore } from "$pkg/types/pineapple_fiber/DialogVariableStore";
7
- import { createNewMapStore } from "$pkg/types/pineapple_fiber/DialogVariableStore";
6
+ import type { DialogMapStore } from "$lib/types/pineapple_fiber/DialogVariableStore";
7
+ import { createNewMapStore } from "$lib/types/pineapple_fiber/DialogVariableStore";
8
8
  import { writable } from "svelte/store";
9
- import type { DialogDetail } from "$pkg/types/pineapple_fiber/DialogDetail";
10
- import { DialogManager } from "$pkg/components/dialog_manager/DialogManager";
9
+ import type { DialogDetail } from "$lib/types/pineapple_fiber/DialogDetail";
10
+ import { DialogManager } from "$lib/components/dialog_manager/DialogManager";
11
11
 
12
12
  /**
13
13
  * Enables the dialogue overlay
@@ -16,7 +16,7 @@ import { DialogManager } from "$pkg/components/dialog_manager/DialogManager";
16
16
  * When updating to false, remember to restore the value to true, our default value, onDestroy.
17
17
  * Avoid async to prevent weird flashes of updates!
18
18
  * ```
19
- * import {enableDialogueOverlay} from "$pkg/store.ts";
19
+ * import {enableDialogueOverlay} from "$lib/store.ts";
20
20
  * enableDialogueOverlay.update(() => false);
21
21
  *
22
22
  * onDestroy(() => {
@@ -1,19 +1,19 @@
1
- import type { DialogDetail } from "$pkg/types/pineapple_fiber/DialogDetail";
2
- import { BehaviorState } from "$pkg/components/dialog_manager/behavior_tree/line_processors/BehaviorState";
3
- import { IfNode } from "$pkg/components/dialog_manager/behavior_tree/line_processors/IfNode";
4
- import { EndIfNode } from "$pkg/components/dialog_manager/behavior_tree/line_processors/EndIfNode";
5
- import { ElseNode } from "$pkg/components/dialog_manager/behavior_tree/line_processors/ElseNode";
6
- import { ElseIfNode } from "$pkg/components/dialog_manager/behavior_tree/line_processors/ElseIfNode";
7
- import { SetVariableNode } from "$pkg/components/dialog_manager/behavior_tree/line_processors/SetVariableNode";
8
- import { IgnoreGuardNode } from "$pkg/components/dialog_manager/behavior_tree/line_processors/IgnoreGuardNode";
9
- import { NormalLineProcessorNode } from "$pkg/components/dialog_manager/behavior_tree/line_processors/NormalLineProcessorNode";
10
- import { LineSelectorNode } from "$pkg/components/dialog_manager/behavior_tree/line_core/LineSelectorNode";
1
+ import type { DialogDetail } from "$lib/types/pineapple_fiber/DialogDetail";
2
+ import { BehaviorState } from "$lib/components/dialog_manager/behavior_tree/line_processors/BehaviorState";
3
+ import { IfNode } from "$lib/components/dialog_manager/behavior_tree/line_processors/IfNode";
4
+ import { EndIfNode } from "$lib/components/dialog_manager/behavior_tree/line_processors/EndIfNode";
5
+ import { ElseNode } from "$lib/components/dialog_manager/behavior_tree/line_processors/ElseNode";
6
+ import { ElseIfNode } from "$lib/components/dialog_manager/behavior_tree/line_processors/ElseIfNode";
7
+ import { SetVariableNode } from "$lib/components/dialog_manager/behavior_tree/line_processors/SetVariableNode";
8
+ import { IgnoreGuardNode } from "$lib/components/dialog_manager/behavior_tree/line_processors/IgnoreGuardNode";
9
+ import { NormalLineProcessorNode } from "$lib/components/dialog_manager/behavior_tree/line_processors/NormalLineProcessorNode";
10
+ import { LineSelectorNode } from "$lib/components/dialog_manager/behavior_tree/line_core/LineSelectorNode";
11
11
  import { browser } from "$app/environment";
12
- import { LineCommentNode } from "$pkg/components/dialog_manager/behavior_tree/line_processors/LineCommentNode";
13
- import { DeclareCommand } from "$pkg/components/dialog_manager/behavior_tree/line_processors/commands/DeclareCommand";
14
- import { JumpCommand } from "$pkg/components/dialog_manager/behavior_tree/line_processors/commands/JumpCommand";
15
- import { IgnoreJumpNode } from "$pkg/components/dialog_manager/behavior_tree/line_processors/IgnoreJumpNode";
16
- import { UnvisitCommand } from "$pkg/components/dialog_manager/behavior_tree/line_processors/commands/UnvisitCommand";
12
+ import { LineCommentNode } from "$lib/components/dialog_manager/behavior_tree/line_processors/LineCommentNode";
13
+ import { DeclareCommand } from "$lib/components/dialog_manager/behavior_tree/line_processors/commands/DeclareCommand";
14
+ import { JumpCommand } from "$lib/components/dialog_manager/behavior_tree/line_processors/commands/JumpCommand";
15
+ import { IgnoreJumpNode } from "$lib/components/dialog_manager/behavior_tree/line_processors/IgnoreJumpNode";
16
+ import { UnvisitCommand } from "$lib/components/dialog_manager/behavior_tree/line_processors/commands/UnvisitCommand";
17
17
 
18
18
  /**
19
19
  * DialogProcessor processes dialogs
@@ -1,4 +1,4 @@
1
- import { dialogVariableStore } from "$pkg/components/dialog_manager/DialogManagerStore";
1
+ import { dialogVariableStore } from "$lib/components/dialog_manager/DialogManagerStore";
2
2
 
3
3
  class _DialogUtils {
4
4
  isNodeVisited = (dialogId: string): boolean => {
@@ -1,4 +1,4 @@
1
- import type { BehaviorStatus } from "$pkg/components/dialog_manager/behavior_tree/core/BehaviorStatus";
1
+ import type { BehaviorStatus } from "$lib/components/dialog_manager/behavior_tree/core/BehaviorStatus";
2
2
 
3
3
  export interface BaseBehaviorResult {
4
4
  status: BehaviorStatus;
@@ -1,6 +1,6 @@
1
- import type { BehaviorNode } from "$pkg/components/dialog_manager/behavior_tree/core/BehaviorNode";
2
- import { BehaviorStatus } from "$pkg/components/dialog_manager/behavior_tree/core/BehaviorStatus";
3
- import type { BaseBehaviorResult } from "$pkg/components/dialog_manager/behavior_tree/core/BaseBehaviorResult";
1
+ import type { BehaviorNode } from "$lib/components/dialog_manager/behavior_tree/core/BehaviorNode";
2
+ import { BehaviorStatus } from "$lib/components/dialog_manager/behavior_tree/core/BehaviorStatus";
3
+ import type { BaseBehaviorResult } from "$lib/components/dialog_manager/behavior_tree/core/BaseBehaviorResult";
4
4
 
5
5
  /**
6
6
  * Selector is a composite behavior node where it tries to process everything until it
@@ -1,4 +1,4 @@
1
- import type { ExpressionState } from "$pkg/components/dialog_manager/behavior_tree/expression/ExpressionState";
1
+ import type { ExpressionState } from "$lib/components/dialog_manager/behavior_tree/expression/ExpressionState";
2
2
 
3
3
  export interface ExpressionArguments {
4
4
  token: string;
@@ -1,5 +1,5 @@
1
- import type { BehaviorNode } from "$pkg/components/dialog_manager/behavior_tree/core/BehaviorNode";
2
- import type { ExpressionArguments } from "$pkg/components/dialog_manager/behavior_tree/expression/ExpressionArguments";
3
- import type { ExpressionResult } from "$pkg/components/dialog_manager/behavior_tree/expression/ExpressionResult";
1
+ import type { BehaviorNode } from "$lib/components/dialog_manager/behavior_tree/core/BehaviorNode";
2
+ import type { ExpressionArguments } from "$lib/components/dialog_manager/behavior_tree/expression/ExpressionArguments";
3
+ import type { ExpressionResult } from "$lib/components/dialog_manager/behavior_tree/expression/ExpressionResult";
4
4
 
5
5
  export type ExpressionBehaviorNode = BehaviorNode<ExpressionArguments, ExpressionResult>;
@@ -1,10 +1,10 @@
1
1
  import { browser } from "$app/environment";
2
- import { OperatorNode } from "$pkg/components/dialog_manager/behavior_tree/expression/OperatorNode";
3
- import { OperandNode } from "$pkg/components/dialog_manager/behavior_tree/expression/OperandNode";
4
- import { ExpressionSelectorNode } from "$pkg/components/dialog_manager/behavior_tree/expression/ExpressionSelectorNode";
5
- import type { ExpressionState } from "$pkg/components/dialog_manager/behavior_tree/expression/ExpressionState";
6
- import { btreeUtils } from "$pkg/components/dialog_manager/behavior_tree/core/BTreeUtils";
7
- import { CommandExpressionNode } from "$pkg/components/dialog_manager/behavior_tree/expression/commands/CommandExpressionNode";
2
+ import { OperatorNode } from "$lib/components/dialog_manager/behavior_tree/expression/OperatorNode";
3
+ import { OperandNode } from "$lib/components/dialog_manager/behavior_tree/expression/OperandNode";
4
+ import { ExpressionSelectorNode } from "$lib/components/dialog_manager/behavior_tree/expression/ExpressionSelectorNode";
5
+ import type { ExpressionState } from "$lib/components/dialog_manager/behavior_tree/expression/ExpressionState";
6
+ import { btreeUtils } from "$lib/components/dialog_manager/behavior_tree/core/BTreeUtils";
7
+ import { CommandExpressionNode } from "$lib/components/dialog_manager/behavior_tree/expression/commands/CommandExpressionNode";
8
8
 
9
9
  class ExpressionEvaluator {
10
10
  evaluatorTree = new ExpressionSelectorNode([
@@ -1,5 +1,5 @@
1
- import type { BaseBehaviorResult } from "$pkg/components/dialog_manager/behavior_tree/core/BaseBehaviorResult";
2
- import type { ExpressionState } from "$pkg/components/dialog_manager/behavior_tree/expression/ExpressionState";
1
+ import type { BaseBehaviorResult } from "$lib/components/dialog_manager/behavior_tree/core/BaseBehaviorResult";
2
+ import type { ExpressionState } from "$lib/components/dialog_manager/behavior_tree/expression/ExpressionState";
3
3
 
4
4
  export interface ExpressionResult extends BaseBehaviorResult {
5
5
  nextState: ExpressionState;
@@ -1,8 +1,8 @@
1
- import { SelectorNode } from "$pkg/components/dialog_manager/behavior_tree/core/SelectorNode";
2
- import type { ExpressionArguments } from "$pkg/components/dialog_manager/behavior_tree/expression/ExpressionArguments";
3
- import type { ExpressionResult } from "$pkg/components/dialog_manager/behavior_tree/expression/ExpressionResult";
4
- import { BehaviorStatus } from "$pkg/components/dialog_manager/behavior_tree/core/BehaviorStatus";
5
- import type { ExpressionBehaviorNode } from "$pkg/components/dialog_manager/behavior_tree/expression/ExpressionBehaviorNode";
1
+ import { SelectorNode } from "$lib/components/dialog_manager/behavior_tree/core/SelectorNode";
2
+ import type { ExpressionArguments } from "$lib/components/dialog_manager/behavior_tree/expression/ExpressionArguments";
3
+ import type { ExpressionResult } from "$lib/components/dialog_manager/behavior_tree/expression/ExpressionResult";
4
+ import { BehaviorStatus } from "$lib/components/dialog_manager/behavior_tree/core/BehaviorStatus";
5
+ import type { ExpressionBehaviorNode } from "$lib/components/dialog_manager/behavior_tree/expression/ExpressionBehaviorNode";
6
6
 
7
7
  export class ExpressionSelectorNode extends SelectorNode<ExpressionArguments, ExpressionResult> {
8
8
  constructor(nodeList: ExpressionBehaviorNode[]) {
@@ -1,8 +1,8 @@
1
- import type { ExpressionBehaviorNode } from "$pkg/components/dialog_manager/behavior_tree/expression/ExpressionBehaviorNode";
2
- import type { ExpressionArguments } from "$pkg/components/dialog_manager/behavior_tree/expression/ExpressionArguments";
3
- import type { ExpressionResult } from "$pkg/components/dialog_manager/behavior_tree/expression/ExpressionResult";
4
- import { BehaviorStatus } from "$pkg/components/dialog_manager/behavior_tree/core/BehaviorStatus";
5
- import { btreeUtils } from "$pkg/components/dialog_manager/behavior_tree/core/BTreeUtils";
1
+ import type { ExpressionBehaviorNode } from "$lib/components/dialog_manager/behavior_tree/expression/ExpressionBehaviorNode";
2
+ import type { ExpressionArguments } from "$lib/components/dialog_manager/behavior_tree/expression/ExpressionArguments";
3
+ import type { ExpressionResult } from "$lib/components/dialog_manager/behavior_tree/expression/ExpressionResult";
4
+ import { BehaviorStatus } from "$lib/components/dialog_manager/behavior_tree/core/BehaviorStatus";
5
+ import { btreeUtils } from "$lib/components/dialog_manager/behavior_tree/core/BTreeUtils";
6
6
 
7
7
  /**
8
8
  * Puts the token as an operand