@turnipxenon/pineapple 2.4.21 → 2.4.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.idea/shelf/Changes/shelved.patch +118 -0
- package/.idea/shelf/Changes.xml +4 -0
- package/.idea/workspace.xml +64 -66
- package/.svelte-kit/__package__/app.postcss +9 -1
- package/.svelte-kit/__package__/components/pineapple/PineappleBaseLayout.svelte +82 -6
- package/.svelte-kit/__package__/util/util.d.ts +4 -0
- package/.svelte-kit/__package__/util/util.js +7 -0
- package/.svelte-kit/generated/server/internal.js +1 -1
- package/dist/app.postcss +9 -1
- package/dist/components/pineapple/PineappleBaseLayout.svelte +82 -6
- package/dist/util/util.d.ts +4 -0
- package/dist/util/util.js +7 -0
- package/package.json +1 -1
- package/src/lib/app.postcss +9 -1
- package/src/lib/components/pineapple/PineappleBaseLayout.svelte +12 -6
- package/src/lib/util/util.ts +13 -1
- package/src/routes/(pineapple)/+page.svelte +7 -8
- package/src/routes/(pineapple)/pineapple/+page.svelte +14 -12
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
Index: src/lib/app.postcss
|
|
2
|
+
IDEA additional info:
|
|
3
|
+
Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP
|
|
4
|
+
<+>@tailwind base;\n@tailwind components;\n@tailwind utilities;\n@tailwind variants;\n\n/* (all other styles below) */\n\n/*place global styles here */\n:root {\n --default-card-max-width: calc(4rem + 4rem + 40rem);\n}\n\nhtml, body {\n @apply h-full overflow-hidden;\n @apply bg-surface-400 dark:bg-surface-800;\n background-color: transparent;\n}\n\n/* font color */\nhtml, body {\n color: rgb(var(--theme-font-color-base));\n}\n\n.accordion-panel {\n color: rgb(var(--color-primary-1000));\n}\n\n.dark body,\n.dark .variant-filled-primary,\n.dark .turnip-button,\n.dark .turnip-button > span,\n.dark .accordion-panel,\n.dark button.accordion-control,\n.chip, .dark .chip {\n color: rgb(var(--theme-font-color-dark));\n}\n\n.turnip-button, .turnip-button > span, button.accordion-control {\n font-weight: bold;\n color: rgb(var(--theme-font-color-base));\n}\n\n/* todo: add some hues to the icon that should be in sync with primary and make them not pure darkness */\n.turnip-button > img, .img-icon {\n filter: grayscale(100%) brightness(0%) invert(25%);\n}\n\n.dark .turnip-button > img, .dark .img-icon {\n filter: grayscale(100%) brightness(0%) invert(100%);\n}\n\n/*\n\n//for reference left here\n\n.bg-surface-custom-token {\n @apply bg-surface-200 dark:bg-surface-700;\n}\n\n.app-bar {\n @apply bg-surface-custom-token;\n}\n*/\n\n.default-card {\n padding: 2em;\n text-align: start;\n max-width: var(--default-card-max-width);\n}\n\nh1,\nh2,\np {\n margin-bottom: 0.5em;\n}\n\nul {\n list-style-type: circle;\n padding-left: 1em;\n}\n\n.default-page-container {\n @apply flex justify-center items-center;\n margin-top: 4em;\n margin-left: 1em;\n margin-right: 1em;\n flex-direction: column;\n z-index: 0;\n}\n\n.footer-space {\n width: 100%;\n height: calc(var(--dialog-box-height) + 4em);\n}\n\na.dialog-choice {\n cursor: url(\"$pkg/assets/icons/chat-cursor.svg\"), auto;\n}\n\na.external-link {\n cursor: url(\"$pkg/assets/icons/external-link.svg\"), auto;\n}\n\nblockquote {\n font-style: italic;\n opacity: 60%;\n font-weight: bold;\n}\n\n/* todo: add --tw-text-opacity division to add ambience based on bg better */\na {\n text-decoration: underline;\n color: rgb(var(--color-secondary-500));\n}\n\na:hover, a:hover:visited {\n color: rgb(var(--color-secondary-400));\n}\n\na:visited {\n color: rgb(var(--color-secondary-800));\n}\n\na:active {\n color: rgb(var(--color-secondary-350));\n}\n\n.dark a {\n text-decoration: underline;\n color: rgb(var(--color-secondary-300));\n}\n\n.dark a:hover, .dark a:hover:visited {\n color: rgb(var(--color-secondary-200));\n}\n\n.dark a:visited {\n color: rgb(var(--color-secondary-350));\n}\n\n.dark a:active {\n color: rgb(var(--color-secondary-100));\n}\n\n/* region Accordion css for handling missing styles in package */\n.accordion {\n @apply variant-filled-primary rounded-md;\n}\n\n.accordion-control {\n @apply hover:bg-surface-hover-token;\n}\n\n.accordion-item {\n @apply variant-filled-primary rounded-md;\n}\n\n/* endregion Accordion css for handling missing styles in package */\n\n:root {\n --shadow-color: rgba(91, 79, 54, 0.5);\n}\n\n/* todo: adjust shadow for each component + change depending on dark mode or not */\n.fab, #shell-header {\n box-shadow: 3px 3px 3px var(--shadow-color);\n}\n\n#toast-progress {\n position: relative;\n top: 5px;\n left: 6px;\n width: calc(100% - 12px);\n border-radius: 8px;\n background: transparent;\n height: 10px;\n}\n\n#toast-progress::-moz-progress-bar {\n /*background-color: red;*/\n background: rgba(var(--color-secondary-500));\n}\n\n.dialog-box {\n background-color: rgb(var(--color-surface-500) / 0.9);\n position: fixed;\n bottom: 0;\n width: var(--dialog-box-width); /*75em + 4em padding*/\n height: var(--dialog-box-height);\n max-width: calc(100vw - ((var(--fab-margin) * 2) + 4em));\n}\n\n.dark .dialog-box {\n background-color: rgb(var(--color-surface-900) / 0.95);\n --tw-ring-color: rgb(var(--color-text-400));\n /*background-color: red;*/\n}\n\n.dark .ares-logo {\n filter: invert(100%);\n}\n
|
|
5
|
+
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
|
|
6
|
+
<+>UTF-8
|
|
7
|
+
===================================================================
|
|
8
|
+
diff --git a/src/lib/app.postcss b/src/lib/app.postcss
|
|
9
|
+
--- a/src/lib/app.postcss (revision 6a23be06c0482005bd0be5fdcf6f94083ed08c64)
|
|
10
|
+
+++ b/src/lib/app.postcss (date 1711101285355)
|
|
11
|
+
@@ -49,6 +49,10 @@
|
|
12
|
+
filter: grayscale(100%) brightness(0%) invert(100%);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
+button {
|
|
16
|
+
+ color: var(--color-text-50);
|
|
17
|
+
+}
|
|
18
|
+
+
|
|
19
|
+
/*
|
|
20
|
+
|
|
21
|
+
//for reference left here
|
|
22
|
+
Index: src/routes/(pineapple)/+page.svelte
|
|
23
|
+
IDEA additional info:
|
|
24
|
+
Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP
|
|
25
|
+
<+><script>\n\timport { PUBLIC_CRINGE_USERNAME } from \"$env/static/public\";\n\n\n\timport { createGoToFunction } from \"$pkg/util/util\";\n\timport { Card } from \"$pkg\";\n</script>\n\n<svelte:head>\n\t<title>Welcome to {PUBLIC_CRINGE_USERNAME}'s Home</title>\n\t<meta content=\"Welcome to {PUBLIC_CRINGE_USERNAME}'s Home\" name=\"og:title\" />\n\t<meta\n\t\tcontent=\"Welcome to {PUBLIC_CRINGE_USERNAME}'s home! It's a neat place to be at if you're feeling lost. Come hang around!\"\n\t\tname=\"og:description\"\n\t/>\n</svelte:head>\n\n<Card>\n\t<div slot=\"content\" class=\"content\">\n\t\t<h1 class=\"mb-8\" style=\"font-weight: bolder\">Directory</h1>\n\n\t\t<div class=\"btn-group\">\n\t\t\t<button on:click={createGoToFunction(\"pineapple\")}><h2>Pineapple playground</h2></button>\n\t\t\t<button on:click={createGoToFunction(\"portfolio\")}><h2>Seaweed playrground</h2></button>\n\t\t</div>\n\t</div>\n</Card>\n\n<style lang=\"postcss\">\n .btn-group {\n padding: 2em;\n\t\t display: flex;\n\t\t gap: 2em;\n\t\t flex-direction: column;\n\n }\n\n button {\n\t\t @apply btn variant-filled-secondary;\n }\n\n .content {\n padding: 2em;\n text-align: center;\n }\n</style>\n
|
|
26
|
+
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
|
|
27
|
+
<+>UTF-8
|
|
28
|
+
===================================================================
|
|
29
|
+
diff --git a/src/routes/(pineapple)/+page.svelte b/src/routes/(pineapple)/+page.svelte
|
|
30
|
+
--- a/src/routes/(pineapple)/+page.svelte (revision 6a23be06c0482005bd0be5fdcf6f94083ed08c64)
|
|
31
|
+
+++ b/src/routes/(pineapple)/+page.svelte (date 1711101419454)
|
|
32
|
+
@@ -19,24 +19,23 @@
|
|
33
|
+
<div slot="content" class="content">
|
|
34
|
+
<h1 class="mb-8" style="font-weight: bolder">Directory</h1>
|
|
35
|
+
|
|
36
|
+
- <div class="btn-group">
|
|
37
|
+
+ <div class="turnip-menu">
|
|
38
|
+
<button on:click={createGoToFunction("pineapple")}><h2>Pineapple playground</h2></button>
|
|
39
|
+
- <button on:click={createGoToFunction("portfolio")}><h2>Seaweed playrground</h2></button>
|
|
40
|
+
+ <button on:click={createGoToFunction("portfolio")}><h2>Seaweed playground</h2></button>
|
|
41
|
+
</div>
|
|
42
|
+
</div>
|
|
43
|
+
</Card>
|
|
44
|
+
|
|
45
|
+
<style lang="postcss">
|
|
46
|
+
- .btn-group {
|
|
47
|
+
+ .turnip-menu {
|
|
48
|
+
padding: 2em;
|
|
49
|
+
- display: flex;
|
|
50
|
+
- gap: 2em;
|
|
51
|
+
- flex-direction: column;
|
|
52
|
+
-
|
|
53
|
+
+ display: flex;
|
|
54
|
+
+ gap: 2em;
|
|
55
|
+
+ flex-direction: column;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
button {
|
|
59
|
+
- @apply btn variant-filled-secondary;
|
|
60
|
+
+ @apply btn variant-filled-secondary;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
.content {
|
|
64
|
+
Index: src/routes/(pineapple)/pineapple/+page.svelte
|
|
65
|
+
IDEA additional info:
|
|
66
|
+
Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP
|
|
67
|
+
<+><script lang=\"ts\">\n\timport { PUBLIC_CRINGE_USERNAME } from \"$env/static/public\";\n\timport { showComponentInToast, showTextInToast } from \"$pkg/components/pineapple/toast/Toast\";\n\timport TestCard from \"$pkg/components/pineapple/toast/custom-toast/TestCustomToast.svelte\";\n\timport TestDialogYarn from \"./TestDialog.yarn?raw\";\n\timport { dialogManager } from \"$pkg\";\n\n\n\tlet testingQueueNumber = 1;\n\tconst testingRandomPhrases = [\n\t\t\"Niko\",\n\t\t\"Niko the Baikal seal\",\n\t\t\"Niko the Baikal seal\\nfrom Toba Aquarium\"\n\t];\n\tconst testDialogYarn = TestDialogYarn;\n\n\tlet parsed = false;\n\tconst onTestDialogClick = () => {\n\t\tif (!parsed) {\n\t\t\tdialogManager.parseAndSetDialogTree(testDialogYarn).then(() => {\n\t\t\t\tdialogManager.toggleDialogOverlay();\n\t\t\t});\n\t\t\tparsed = true;\n\t\t} else {\n\t\t\tdialogManager.toggleDialogOverlay();\n\t\t}\n\t};\n</script>\n\n<svelte:head>\n\t<title>Welcome to {PUBLIC_CRINGE_USERNAME}'s Home</title>\n\t<meta content=\"Welcome to {PUBLIC_CRINGE_USERNAME}'s Home\" name=\"og:title\" />\n\t<meta\n\t\tcontent=\"Welcome to {PUBLIC_CRINGE_USERNAME}'s home! It's a neat place to be at if you're feeling lost. Come hang around!\"\n\t\tname=\"og:description\"\n\t/>\n</svelte:head>\n\n<div class=\"card default-card\">\n\t<button\n\t\tclass=\"btn variant-filled-secondary\"\n\t\ton:click={() => {\n\t\t\tshowComponentInToast({componentAndProps: {component: TestCard, props: undefined}});\n\t\t}}><h3>Test custom toast</h3></button>\n\t<button\n\t\tclass=\"btn variant-filled-secondary\"\n\t\ton:click={() => {\n\t\t\tshowTextInToast(`${testingQueueNumber} ${testingRandomPhrases[testingQueueNumber]}`);\n\t\t\ttestingQueueNumber = (testingQueueNumber + 1) % testingRandomPhrases.length;\n\t\t}}><h3>Handy toast</h3></button>\n\t<button\n\t\tclass=\"btn variant-filled-secondary\"\n\t\ton:click={onTestDialogClick}><h3>Test dialog</h3></button>\n</div>\n\n<style lang=\"postcss\">\n .default-card {\n display: flex;\n flex-wrap: wrap;\n gap: 2em;\n }\n</style>\n
|
|
68
|
+
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
|
|
69
|
+
<+>UTF-8
|
|
70
|
+
===================================================================
|
|
71
|
+
diff --git a/src/routes/(pineapple)/pineapple/+page.svelte b/src/routes/(pineapple)/pineapple/+page.svelte
|
|
72
|
+
--- a/src/routes/(pineapple)/pineapple/+page.svelte (revision 6a23be06c0482005bd0be5fdcf6f94083ed08c64)
|
|
73
|
+
+++ b/src/routes/(pineapple)/pineapple/+page.svelte (date 1711101466055)
|
|
74
|
+
@@ -3,7 +3,7 @@
|
|
75
|
+
import { showComponentInToast, showTextInToast } from "$pkg/components/pineapple/toast/Toast";
|
|
76
|
+
import TestCard from "$pkg/components/pineapple/toast/custom-toast/TestCustomToast.svelte";
|
|
77
|
+
import TestDialogYarn from "./TestDialog.yarn?raw";
|
|
78
|
+
- import { dialogManager } from "$pkg";
|
|
79
|
+
+ import { Card, dialogManager } from "$pkg";
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
let testingQueueNumber = 1;
|
|
83
|
+
@@ -36,22 +36,24 @@
|
|
84
|
+
/>
|
|
85
|
+
</svelte:head>
|
|
86
|
+
|
|
87
|
+
-<div class="card default-card">
|
|
88
|
+
- <button
|
|
89
|
+
- class="btn variant-filled-secondary"
|
|
90
|
+
- on:click={() => {
|
|
91
|
+
+<Card>
|
|
92
|
+
+ <div slot="content" class="default-card">
|
|
93
|
+
+ <button
|
|
94
|
+
+ class="btn variant-filled-secondary"
|
|
95
|
+
+ on:click={() => {
|
|
96
|
+
showComponentInToast({componentAndProps: {component: TestCard, props: undefined}});
|
|
97
|
+
}}><h3>Test custom toast</h3></button>
|
|
98
|
+
- <button
|
|
99
|
+
- class="btn variant-filled-secondary"
|
|
100
|
+
- on:click={() => {
|
|
101
|
+
+ <button
|
|
102
|
+
+ class="btn variant-filled-secondary"
|
|
103
|
+
+ on:click={() => {
|
|
104
|
+
showTextInToast(`${testingQueueNumber} ${testingRandomPhrases[testingQueueNumber]}`);
|
|
105
|
+
testingQueueNumber = (testingQueueNumber + 1) % testingRandomPhrases.length;
|
|
106
|
+
}}><h3>Handy toast</h3></button>
|
|
107
|
+
- <button
|
|
108
|
+
- class="btn variant-filled-secondary"
|
|
109
|
+
- on:click={onTestDialogClick}><h3>Test dialog</h3></button>
|
|
110
|
+
-</div>
|
|
111
|
+
+ <button
|
|
112
|
+
+ class="btn variant-filled-secondary"
|
|
113
|
+
+ on:click={onTestDialogClick}><h3>Test dialog</h3></button>
|
|
114
|
+
+ </div>
|
|
115
|
+
+</Card>
|
|
116
|
+
|
|
117
|
+
<style lang="postcss">
|
|
118
|
+
.default-card {
|
package/.idea/workspace.xml
CHANGED
|
@@ -4,13 +4,8 @@
|
|
|
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="
|
|
8
|
-
<change afterPath="$PROJECT_DIR$/src/
|
|
9
|
-
<change afterPath="$PROJECT_DIR$/src/routes/(pineapple)/about/+page.svelte" afterDir="false" />
|
|
10
|
-
<change afterPath="$PROJECT_DIR$/src/routes/(pineapple)/about/About.yarn" afterDir="false" />
|
|
11
|
-
<change afterPath="$PROJECT_DIR$/src/routes/(pineapple)/about/AboutYarn.ts" afterDir="false" />
|
|
12
|
-
<change beforePath="$PROJECT_DIR$/src/lib/app.postcss" beforeDir="false" afterPath="$PROJECT_DIR$/src/lib/app.postcss" afterDir="false" />
|
|
13
|
-
<change beforePath="$PROJECT_DIR$/src/lib/components/pineapple/PineappleBaseLayout.svelte" beforeDir="false" afterPath="$PROJECT_DIR$/src/lib/components/pineapple/PineappleBaseLayout.svelte" afterDir="false" />
|
|
7
|
+
<list default="true" id="accb6ba2-c343-4f84-ad30-6e2d71eceee5" name="Changes" comment="Add external link warning stub">
|
|
8
|
+
<change beforePath="$PROJECT_DIR$/src/lib/util/util.ts" beforeDir="false" afterPath="$PROJECT_DIR$/src/lib/util/util.ts" afterDir="false" />
|
|
14
9
|
</list>
|
|
15
10
|
<option name="SHOW_DIALOG" value="false" />
|
|
16
11
|
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
|
@@ -47,7 +42,7 @@
|
|
|
47
42
|
<component name="Git.Settings">
|
|
48
43
|
<option name="RECENT_BRANCH_BY_REPOSITORY">
|
|
49
44
|
<map>
|
|
50
|
-
<entry key="$PROJECT_DIR$" value="
|
|
45
|
+
<entry key="$PROJECT_DIR$" value="6a23be06c0482005bd0be5fdcf6f94083ed08c64" />
|
|
51
46
|
</map>
|
|
52
47
|
</option>
|
|
53
48
|
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
|
@@ -81,39 +76,39 @@
|
|
|
81
76
|
<option name="hideEmptyMiddlePackages" value="true" />
|
|
82
77
|
<option name="showLibraryContents" value="true" />
|
|
83
78
|
</component>
|
|
84
|
-
<component name="PropertiesComponent"
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
79
|
+
<component name="PropertiesComponent">{
|
|
80
|
+
"keyToString": {
|
|
81
|
+
"DefaultHtmlFileTemplate": "HTML File",
|
|
82
|
+
"RunOnceActivity.OpenProjectViewOnStart": "true",
|
|
83
|
+
"RunOnceActivity.ShowReadmeOnStart": "true",
|
|
84
|
+
"WebServerToolWindowFactoryState": "false",
|
|
85
|
+
"git-widget-placeholder": "turnip/dev",
|
|
86
|
+
"ignore.virus.scanning.warn.message": "true",
|
|
87
|
+
"last_opened_file_path": "C:/Users/Pumpkin/Projects/Web/pineapple/src/lib/assets/placeholder",
|
|
88
|
+
"node.js.detected.package.eslint": "true",
|
|
89
|
+
"node.js.detected.package.tslint": "true",
|
|
90
|
+
"node.js.selected.package.eslint": "(autodetect)",
|
|
91
|
+
"node.js.selected.package.tslint": "(autodetect)",
|
|
92
|
+
"nodejs_interpreter_path": "node",
|
|
93
|
+
"nodejs_package_manager_path": "yarn",
|
|
94
|
+
"npm.build.executor": "Run",
|
|
95
|
+
"npm.dev (1).executor": "Run",
|
|
96
|
+
"npm.dev --open.executor": "Run",
|
|
97
|
+
"npm.dev offline.executor": "Run",
|
|
98
|
+
"npm.dev-offline.executor": "Run",
|
|
99
|
+
"npm.dev.executor": "Run",
|
|
100
|
+
"settings.editor.selected.configurable": "preferences.pluginManager",
|
|
101
|
+
"ts.external.directory.path": "C:\\Users\\Pumpkin\\Projects\\Web\\pineapple\\node_modules\\typescript\\lib",
|
|
102
|
+
"vue.rearranger.settings.migration": "true"
|
|
108
103
|
}
|
|
109
|
-
}
|
|
104
|
+
}</component>
|
|
110
105
|
<component name="RecentsManager">
|
|
111
106
|
<key name="CopyFile.RECENT_KEYS">
|
|
107
|
+
<recent name="C:\Users\Pumpkin\Projects\Web\pineapple\src\lib\assets\placeholder" />
|
|
112
108
|
<recent name="C:\Users\Pumpkin\Projects\Web\pineapple\src\routes\(pineapple)\about" />
|
|
113
109
|
<recent name="C:\Users\Pumpkin\Projects\Web\pineapple\src\lib\scripts\pineapple_fiber" />
|
|
114
110
|
<recent name="C:\Users\Pumpkin\Projects\Web\pineapple\src\routes\(pineapple)\pineapple" />
|
|
115
111
|
<recent name="C:\Users\Pumpkin\Projects\Web\pineapple\src\lib\components\pineapple\toast\custom-toast" />
|
|
116
|
-
<recent name="C:\Users\Pumpkin\Projects\Web\pineapple\src\lib\components\pineapple\toast" />
|
|
117
112
|
</key>
|
|
118
113
|
<key name="MoveFile.RECENT_KEYS">
|
|
119
114
|
<recent name="C:\Users\Pumpkin\Projects\Web\pineapple\src\routes\(pineapple)\about" />
|
|
@@ -154,10 +149,11 @@
|
|
|
154
149
|
</list>
|
|
155
150
|
<recent_temporary>
|
|
156
151
|
<list>
|
|
157
|
-
<item itemvalue="npm.dev --open" />
|
|
158
152
|
<item itemvalue="npm.dev-offline" />
|
|
159
153
|
<item itemvalue="npm.dev --open" />
|
|
154
|
+
<item itemvalue="npm.dev --open" />
|
|
160
155
|
<item itemvalue="npm.dev-offline" />
|
|
156
|
+
<item itemvalue="npm.dev --open" />
|
|
161
157
|
</list>
|
|
162
158
|
</recent_temporary>
|
|
163
159
|
</component>
|
|
@@ -218,31 +214,9 @@
|
|
|
218
214
|
<workItem from="1710914868232" duration="41000" />
|
|
219
215
|
<workItem from="1711051949931" duration="144000" />
|
|
220
216
|
<workItem from="1711052377810" duration="128000" />
|
|
221
|
-
<workItem from="1711090540281" duration="
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
<option name="closed" value="true" />
|
|
225
|
-
<created>1710007096175</created>
|
|
226
|
-
<option name="number" value="00033" />
|
|
227
|
-
<option name="presentableId" value="LOCAL-00033" />
|
|
228
|
-
<option name="project" value="LOCAL" />
|
|
229
|
-
<updated>1710007096175</updated>
|
|
230
|
-
</task>
|
|
231
|
-
<task id="LOCAL-00034" summary="Quick fix ares logo missing class">
|
|
232
|
-
<option name="closed" value="true" />
|
|
233
|
-
<created>1710007320331</created>
|
|
234
|
-
<option name="number" value="00034" />
|
|
235
|
-
<option name="presentableId" value="LOCAL-00034" />
|
|
236
|
-
<option name="project" value="LOCAL" />
|
|
237
|
-
<updated>1710007320331</updated>
|
|
238
|
-
</task>
|
|
239
|
-
<task id="LOCAL-00035" summary="Fix light-dark theming">
|
|
240
|
-
<option name="closed" value="true" />
|
|
241
|
-
<created>1710093358574</created>
|
|
242
|
-
<option name="number" value="00035" />
|
|
243
|
-
<option name="presentableId" value="LOCAL-00035" />
|
|
244
|
-
<option name="project" value="LOCAL" />
|
|
245
|
-
<updated>1710093358574</updated>
|
|
217
|
+
<workItem from="1711090540281" duration="11162000" />
|
|
218
|
+
<workItem from="1711104214619" duration="25000" />
|
|
219
|
+
<workItem from="1711108187279" duration="358000" />
|
|
246
220
|
</task>
|
|
247
221
|
<task id="LOCAL-00036" summary="Fix broken string width resolution">
|
|
248
222
|
<option name="closed" value="true" />
|
|
@@ -612,7 +586,31 @@
|
|
|
612
586
|
<option name="project" value="LOCAL" />
|
|
613
587
|
<updated>1711096829327</updated>
|
|
614
588
|
</task>
|
|
615
|
-
<
|
|
589
|
+
<task id="LOCAL-00082" summary="Fix default card postcss style">
|
|
590
|
+
<option name="closed" value="true" />
|
|
591
|
+
<created>1711098795806</created>
|
|
592
|
+
<option name="number" value="00082" />
|
|
593
|
+
<option name="presentableId" value="LOCAL-00082" />
|
|
594
|
+
<option name="project" value="LOCAL" />
|
|
595
|
+
<updated>1711098795806</updated>
|
|
596
|
+
</task>
|
|
597
|
+
<task id="LOCAL-00083" summary="Adjust turnip fab button color">
|
|
598
|
+
<option name="closed" value="true" />
|
|
599
|
+
<created>1711101211481</created>
|
|
600
|
+
<option name="number" value="00083" />
|
|
601
|
+
<option name="presentableId" value="LOCAL-00083" />
|
|
602
|
+
<option name="project" value="LOCAL" />
|
|
603
|
+
<updated>1711101211481</updated>
|
|
604
|
+
</task>
|
|
605
|
+
<task id="LOCAL-00084" summary="Replace btn-group postcss class with turnip-menu There is postcss defined class called btn-group which has styles that have !important, which I accidentally used not knowing it exists, and it overrides whatever styles I apply on my class">
|
|
606
|
+
<option name="closed" value="true" />
|
|
607
|
+
<created>1711101645201</created>
|
|
608
|
+
<option name="number" value="00084" />
|
|
609
|
+
<option name="presentableId" value="LOCAL-00084" />
|
|
610
|
+
<option name="project" value="LOCAL" />
|
|
611
|
+
<updated>1711101645201</updated>
|
|
612
|
+
</task>
|
|
613
|
+
<option name="localTasksCounter" value="85" />
|
|
616
614
|
<servers />
|
|
617
615
|
</component>
|
|
618
616
|
<component name="TypeScriptGeneratedFilesManager">
|
|
@@ -670,10 +668,6 @@
|
|
|
670
668
|
</option>
|
|
671
669
|
</component>
|
|
672
670
|
<component name="VcsManagerConfiguration">
|
|
673
|
-
<MESSAGE value="Change lib to pkg to prevent the references from breaking from downstream apps" />
|
|
674
|
-
<MESSAGE value="Add data-nosnippet" />
|
|
675
|
-
<MESSAGE value="Fix wrong link in migrante" />
|
|
676
|
-
<MESSAGE value="Reorganize directories to make Pineapple as default layout but still overrideable by Seaweed" />
|
|
677
671
|
<MESSAGE value="Improve text contrast" />
|
|
678
672
|
<MESSAGE value="Improve text contrast in dark mode" />
|
|
679
673
|
<MESSAGE value="Add animation to dynamically added button in social section" />
|
|
@@ -695,6 +689,10 @@
|
|
|
695
689
|
<MESSAGE value="Refactor all util functions into util/util" />
|
|
696
690
|
<MESSAGE value="v2.4.19" />
|
|
697
691
|
<MESSAGE value="Fix breadcrumb layout" />
|
|
698
|
-
<
|
|
692
|
+
<MESSAGE value="Fix default card postcss style" />
|
|
693
|
+
<MESSAGE value="Adjust turnip fab button color" />
|
|
694
|
+
<MESSAGE value="Replace btn-group postcss class with turnip-menu There is postcss defined class called btn-group which has styles that have !important, which I accidentally used not knowing it exists, and it overrides whatever styles I apply on my class" />
|
|
695
|
+
<MESSAGE value="Add external link warning stub" />
|
|
696
|
+
<option name="LAST_COMMIT_MESSAGE" value="Add external link warning stub" />
|
|
699
697
|
</component>
|
|
700
698
|
</project>
|
|
@@ -45,8 +45,16 @@ html, body {
|
|
|
45
45
|
filter: grayscale(100%) brightness(0%) invert(25%);
|
|
46
46
|
}
|
|
47
47
|
|
|
48
|
+
.turnip-icon {
|
|
49
|
+
filter: brightness(0%) invert(90%);
|
|
50
|
+
}
|
|
51
|
+
|
|
48
52
|
.dark .turnip-button > img, .dark .img-icon {
|
|
49
|
-
filter:
|
|
53
|
+
filter: brightness(0%) invert(100%);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
button {
|
|
57
|
+
color: var(--color-text-50);
|
|
50
58
|
}
|
|
51
59
|
|
|
52
60
|
/*
|
|
@@ -4,7 +4,7 @@ import RandomizedBackground from "../RandomizedBackground.svelte";
|
|
|
4
4
|
import { page } from "$app/stores";
|
|
5
5
|
import { enableBackground } from "../../store";
|
|
6
6
|
import AresLogo from "../../assets/characters/ares/ares_logo.webp";
|
|
7
|
-
import FABIcon from "../../assets/
|
|
7
|
+
import FABIcon from "../../assets/bg_tiled/bg_tiled_turnip.png";
|
|
8
8
|
import CloseIcon from "../../assets/icons/close.svg";
|
|
9
9
|
import { dialogManager, enableDialogueOverlay } from "../dialog_manager/DialogManagerStore";
|
|
10
10
|
import Toast from "./toast/Toast.svelte";
|
|
@@ -53,13 +53,13 @@ enableDialogueOverlay.set(showDialogByDefault);
|
|
|
53
53
|
</svelte:head>
|
|
54
54
|
|
|
55
55
|
<!--todo: turn off hidden when it's time-->
|
|
56
|
-
<button
|
|
56
|
+
<button class="fab" on:click={()=>{
|
|
57
57
|
dialogManager.toggleDialogOverlay()
|
|
58
58
|
}}>
|
|
59
59
|
{#if (enableDialogueOverlayValue)}
|
|
60
|
-
<img class="
|
|
60
|
+
<img class="turnip-icon" src={CloseIcon} alt="interactive floating action button represented as a turnip">
|
|
61
61
|
{:else }
|
|
62
|
-
<img src={FABIcon} alt="interactive floating action button represented as a turnip">
|
|
62
|
+
<img class="turnip-icon" src={FABIcon} alt="interactive floating action button represented as a turnip">
|
|
63
63
|
{/if}
|
|
64
64
|
</button>
|
|
65
65
|
|
|
@@ -83,7 +83,7 @@ enableDialogueOverlay.set(showDialogByDefault);
|
|
|
83
83
|
{#if i < pages.length - 1}
|
|
84
84
|
<li class="crumb" in:fade>
|
|
85
85
|
<a href={crumb.path}>{crumb.name.charAt(0).toUpperCase() + crumb.name.slice(1)}</a>
|
|
86
|
-
|
|
86
|
+
›
|
|
87
87
|
</li>
|
|
88
88
|
{:else}
|
|
89
89
|
<li class="crumb" in:fade>{crumb.name.charAt(0).toUpperCase() + crumb.name.slice(1)}</li>
|
|
@@ -165,7 +165,7 @@ enableDialogueOverlay.set(showDialogByDefault);
|
|
|
165
165
|
display: flex;
|
|
166
166
|
align-items: center;
|
|
167
167
|
justify-content: center;
|
|
168
|
-
|
|
168
|
+
margin: 0.1em;
|
|
169
169
|
}
|
|
170
170
|
|
|
171
171
|
.crumb-separator {
|
|
@@ -192,7 +192,79 @@ enableDialogueOverlay.set(showDialogByDefault);
|
|
|
192
192
|
display: block;
|
|
193
193
|
}
|
|
194
194
|
|
|
195
|
+
:is(.dark .fab) {
|
|
196
|
+
--tw-bg-opacity: 1;
|
|
197
|
+
background-color: rgb(var(--color-tertiary-500) / var(--tw-bg-opacity));
|
|
198
|
+
color: rgb(var(--on-tertiary));
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
.fab:disabled {
|
|
202
|
+
cursor: not-allowed;
|
|
203
|
+
opacity: 0.5;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
.fab:disabled:hover {
|
|
207
|
+
--tw-brightness: brightness(1);
|
|
208
|
+
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
.fab:disabled:active {
|
|
212
|
+
--tw-scale-x: 1;
|
|
213
|
+
--tw-scale-y: 1;
|
|
214
|
+
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
.fab {
|
|
218
|
+
font-size: 1rem;
|
|
219
|
+
line-height: 1.5rem;
|
|
220
|
+
padding-left: 1.25rem;
|
|
221
|
+
padding-right: 1.25rem;
|
|
222
|
+
padding-top: 9px;
|
|
223
|
+
padding-bottom: 9px;
|
|
224
|
+
white-space: nowrap;
|
|
225
|
+
text-align: center;
|
|
226
|
+
display: inline-flex;
|
|
227
|
+
align-items: center;
|
|
228
|
+
justify-content: center;
|
|
229
|
+
transition-property: all;
|
|
230
|
+
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
|
231
|
+
transition-duration: 150ms;
|
|
232
|
+
border-radius: var(--theme-rounded-base);
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
.fab > :not([hidden]) ~ :not([hidden]) {
|
|
236
|
+
--tw-space-x-reverse: 0;
|
|
237
|
+
margin-right: calc(0.5rem * var(--tw-space-x-reverse));
|
|
238
|
+
margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
.fab:hover {
|
|
242
|
+
--tw-brightness: brightness(1.15);
|
|
243
|
+
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
.fab:active {
|
|
247
|
+
--tw-scale-x: 95%;
|
|
248
|
+
--tw-scale-y: 95%;
|
|
249
|
+
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
|
250
|
+
--tw-brightness: brightness(.9);
|
|
251
|
+
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
|
|
252
|
+
}
|
|
253
|
+
|
|
195
254
|
.fab {
|
|
255
|
+
--tw-bg-opacity: 1;
|
|
256
|
+
background-color: rgb(var(--color-tertiary-500) / var(--tw-bg-opacity));
|
|
257
|
+
color: rgb(var(--on-tertiary));
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
:is(.dark .fab) {
|
|
261
|
+
--tw-bg-opacity: 1;
|
|
262
|
+
background-color: rgb(var(--color-tertiary-500) / var(--tw-bg-opacity));
|
|
263
|
+
color: rgb(var(--on-tertiary));
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
.fab {
|
|
267
|
+
padding: 0;
|
|
196
268
|
position: fixed;
|
|
197
269
|
bottom: var(--fab-margin);
|
|
198
270
|
width: 4em;
|
|
@@ -210,4 +282,8 @@ enableDialogueOverlay.set(showDialogByDefault);
|
|
|
210
282
|
.fab:dir(rtl) {
|
|
211
283
|
left: var(--fab-margin);
|
|
212
284
|
}
|
|
285
|
+
|
|
286
|
+
.turnip-icon {
|
|
287
|
+
margin: 4px;
|
|
288
|
+
}
|
|
213
289
|
</style>
|
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
export declare const generatedDailySeed: () => number;
|
|
2
2
|
export declare const mulberry32Generator: (a: number) => (() => number);
|
|
3
3
|
export declare const createGoToFunction: (path: string) => (() => void);
|
|
4
|
+
export interface ExternalLinkWarningArgs {
|
|
5
|
+
href: string;
|
|
6
|
+
}
|
|
7
|
+
export declare const createExternalLinkWarningFunction: (args: ExternalLinkWarningArgs) => (() => void);
|
|
@@ -18,3 +18,10 @@ export const createGoToFunction = (path) => {
|
|
|
18
18
|
location.href = path;
|
|
19
19
|
});
|
|
20
20
|
};
|
|
21
|
+
export const createExternalLinkWarningFunction = (args) => {
|
|
22
|
+
return (() => {
|
|
23
|
+
// todo: https://github.com/TurnipXenon/pineapple/issues/99
|
|
24
|
+
// add the warning here for future functions
|
|
25
|
+
location.href = args.href;
|
|
26
|
+
});
|
|
27
|
+
};
|
|
@@ -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: "
|
|
24
|
+
version_hash: "1h70f76"
|
|
25
25
|
};
|
|
26
26
|
|
|
27
27
|
export async function get_hooks() {
|
package/dist/app.postcss
CHANGED
|
@@ -45,8 +45,16 @@ html, body {
|
|
|
45
45
|
filter: grayscale(100%) brightness(0%) invert(25%);
|
|
46
46
|
}
|
|
47
47
|
|
|
48
|
+
.turnip-icon {
|
|
49
|
+
filter: brightness(0%) invert(90%);
|
|
50
|
+
}
|
|
51
|
+
|
|
48
52
|
.dark .turnip-button > img, .dark .img-icon {
|
|
49
|
-
filter:
|
|
53
|
+
filter: brightness(0%) invert(100%);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
button {
|
|
57
|
+
color: var(--color-text-50);
|
|
50
58
|
}
|
|
51
59
|
|
|
52
60
|
/*
|
|
@@ -4,7 +4,7 @@ import RandomizedBackground from "../RandomizedBackground.svelte";
|
|
|
4
4
|
import { page } from "$app/stores";
|
|
5
5
|
import { enableBackground } from "../../store";
|
|
6
6
|
import AresLogo from "../../assets/characters/ares/ares_logo.webp";
|
|
7
|
-
import FABIcon from "../../assets/
|
|
7
|
+
import FABIcon from "../../assets/bg_tiled/bg_tiled_turnip.png";
|
|
8
8
|
import CloseIcon from "../../assets/icons/close.svg";
|
|
9
9
|
import { dialogManager, enableDialogueOverlay } from "../dialog_manager/DialogManagerStore";
|
|
10
10
|
import Toast from "./toast/Toast.svelte";
|
|
@@ -53,13 +53,13 @@ enableDialogueOverlay.set(showDialogByDefault);
|
|
|
53
53
|
</svelte:head>
|
|
54
54
|
|
|
55
55
|
<!--todo: turn off hidden when it's time-->
|
|
56
|
-
<button
|
|
56
|
+
<button class="fab" on:click={()=>{
|
|
57
57
|
dialogManager.toggleDialogOverlay()
|
|
58
58
|
}}>
|
|
59
59
|
{#if (enableDialogueOverlayValue)}
|
|
60
|
-
<img class="
|
|
60
|
+
<img class="turnip-icon" src={CloseIcon} alt="interactive floating action button represented as a turnip">
|
|
61
61
|
{:else }
|
|
62
|
-
<img src={FABIcon} alt="interactive floating action button represented as a turnip">
|
|
62
|
+
<img class="turnip-icon" src={FABIcon} alt="interactive floating action button represented as a turnip">
|
|
63
63
|
{/if}
|
|
64
64
|
</button>
|
|
65
65
|
|
|
@@ -83,7 +83,7 @@ enableDialogueOverlay.set(showDialogByDefault);
|
|
|
83
83
|
{#if i < pages.length - 1}
|
|
84
84
|
<li class="crumb" in:fade>
|
|
85
85
|
<a href={crumb.path}>{crumb.name.charAt(0).toUpperCase() + crumb.name.slice(1)}</a>
|
|
86
|
-
|
|
86
|
+
›
|
|
87
87
|
</li>
|
|
88
88
|
{:else}
|
|
89
89
|
<li class="crumb" in:fade>{crumb.name.charAt(0).toUpperCase() + crumb.name.slice(1)}</li>
|
|
@@ -165,7 +165,7 @@ enableDialogueOverlay.set(showDialogByDefault);
|
|
|
165
165
|
display: flex;
|
|
166
166
|
align-items: center;
|
|
167
167
|
justify-content: center;
|
|
168
|
-
|
|
168
|
+
margin: 0.1em;
|
|
169
169
|
}
|
|
170
170
|
|
|
171
171
|
.crumb-separator {
|
|
@@ -192,7 +192,79 @@ enableDialogueOverlay.set(showDialogByDefault);
|
|
|
192
192
|
display: block;
|
|
193
193
|
}
|
|
194
194
|
|
|
195
|
+
:is(.dark .fab) {
|
|
196
|
+
--tw-bg-opacity: 1;
|
|
197
|
+
background-color: rgb(var(--color-tertiary-500) / var(--tw-bg-opacity));
|
|
198
|
+
color: rgb(var(--on-tertiary));
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
.fab:disabled {
|
|
202
|
+
cursor: not-allowed;
|
|
203
|
+
opacity: 0.5;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
.fab:disabled:hover {
|
|
207
|
+
--tw-brightness: brightness(1);
|
|
208
|
+
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
.fab:disabled:active {
|
|
212
|
+
--tw-scale-x: 1;
|
|
213
|
+
--tw-scale-y: 1;
|
|
214
|
+
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
.fab {
|
|
218
|
+
font-size: 1rem;
|
|
219
|
+
line-height: 1.5rem;
|
|
220
|
+
padding-left: 1.25rem;
|
|
221
|
+
padding-right: 1.25rem;
|
|
222
|
+
padding-top: 9px;
|
|
223
|
+
padding-bottom: 9px;
|
|
224
|
+
white-space: nowrap;
|
|
225
|
+
text-align: center;
|
|
226
|
+
display: inline-flex;
|
|
227
|
+
align-items: center;
|
|
228
|
+
justify-content: center;
|
|
229
|
+
transition-property: all;
|
|
230
|
+
transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
|
|
231
|
+
transition-duration: 150ms;
|
|
232
|
+
border-radius: var(--theme-rounded-base);
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
.fab > :not([hidden]) ~ :not([hidden]) {
|
|
236
|
+
--tw-space-x-reverse: 0;
|
|
237
|
+
margin-right: calc(0.5rem * var(--tw-space-x-reverse));
|
|
238
|
+
margin-left: calc(0.5rem * calc(1 - var(--tw-space-x-reverse)));
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
.fab:hover {
|
|
242
|
+
--tw-brightness: brightness(1.15);
|
|
243
|
+
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
.fab:active {
|
|
247
|
+
--tw-scale-x: 95%;
|
|
248
|
+
--tw-scale-y: 95%;
|
|
249
|
+
transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
|
|
250
|
+
--tw-brightness: brightness(.9);
|
|
251
|
+
filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
|
|
252
|
+
}
|
|
253
|
+
|
|
195
254
|
.fab {
|
|
255
|
+
--tw-bg-opacity: 1;
|
|
256
|
+
background-color: rgb(var(--color-tertiary-500) / var(--tw-bg-opacity));
|
|
257
|
+
color: rgb(var(--on-tertiary));
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
:is(.dark .fab) {
|
|
261
|
+
--tw-bg-opacity: 1;
|
|
262
|
+
background-color: rgb(var(--color-tertiary-500) / var(--tw-bg-opacity));
|
|
263
|
+
color: rgb(var(--on-tertiary));
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
.fab {
|
|
267
|
+
padding: 0;
|
|
196
268
|
position: fixed;
|
|
197
269
|
bottom: var(--fab-margin);
|
|
198
270
|
width: 4em;
|
|
@@ -210,4 +282,8 @@ enableDialogueOverlay.set(showDialogByDefault);
|
|
|
210
282
|
.fab:dir(rtl) {
|
|
211
283
|
left: var(--fab-margin);
|
|
212
284
|
}
|
|
285
|
+
|
|
286
|
+
.turnip-icon {
|
|
287
|
+
margin: 4px;
|
|
288
|
+
}
|
|
213
289
|
</style>
|
package/dist/util/util.d.ts
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
export declare const generatedDailySeed: () => number;
|
|
2
2
|
export declare const mulberry32Generator: (a: number) => (() => number);
|
|
3
3
|
export declare const createGoToFunction: (path: string) => (() => void);
|
|
4
|
+
export interface ExternalLinkWarningArgs {
|
|
5
|
+
href: string;
|
|
6
|
+
}
|
|
7
|
+
export declare const createExternalLinkWarningFunction: (args: ExternalLinkWarningArgs) => (() => void);
|
package/dist/util/util.js
CHANGED
|
@@ -18,3 +18,10 @@ export const createGoToFunction = (path) => {
|
|
|
18
18
|
location.href = path;
|
|
19
19
|
});
|
|
20
20
|
};
|
|
21
|
+
export const createExternalLinkWarningFunction = (args) => {
|
|
22
|
+
return (() => {
|
|
23
|
+
// todo: https://github.com/TurnipXenon/pineapple/issues/99
|
|
24
|
+
// add the warning here for future functions
|
|
25
|
+
location.href = args.href;
|
|
26
|
+
});
|
|
27
|
+
};
|
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.
|
|
4
|
+
"version": "2.4.23",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"dev": "vite dev",
|
|
7
7
|
"build": "npm run check-requirements && vite build && yarn package",
|
package/src/lib/app.postcss
CHANGED
|
@@ -45,8 +45,16 @@ html, body {
|
|
|
45
45
|
filter: grayscale(100%) brightness(0%) invert(25%);
|
|
46
46
|
}
|
|
47
47
|
|
|
48
|
+
.turnip-icon {
|
|
49
|
+
filter: brightness(0%) invert(90%);
|
|
50
|
+
}
|
|
51
|
+
|
|
48
52
|
.dark .turnip-button > img, .dark .img-icon {
|
|
49
|
-
filter:
|
|
53
|
+
filter: brightness(0%) invert(100%);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
button {
|
|
57
|
+
color: var(--color-text-50);
|
|
50
58
|
}
|
|
51
59
|
|
|
52
60
|
/*
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
// assets
|
|
14
14
|
// import DialogOverlay from "$lib/components/DialogOverlay.svelte";
|
|
15
15
|
import AresLogo from "$pkg/assets/characters/ares/ares_logo.webp";
|
|
16
|
-
import FABIcon from "$pkg/assets/
|
|
16
|
+
import FABIcon from "$pkg/assets/bg_tiled/bg_tiled_turnip.png";
|
|
17
17
|
import CloseIcon from "$pkg/assets/icons/close.svg";
|
|
18
18
|
import { dialogManager, enableDialogueOverlay } from "$pkg/components/dialog_manager/DialogManagerStore";
|
|
19
19
|
import Toast from "$pkg/components/pineapple/toast/Toast.svelte";
|
|
@@ -70,13 +70,13 @@
|
|
|
70
70
|
</svelte:head>
|
|
71
71
|
|
|
72
72
|
<!--todo: turn off hidden when it's time-->
|
|
73
|
-
<button
|
|
73
|
+
<button class="fab" on:click={()=>{
|
|
74
74
|
dialogManager.toggleDialogOverlay()
|
|
75
75
|
}}>
|
|
76
76
|
{#if (enableDialogueOverlayValue)}
|
|
77
|
-
<img class="
|
|
77
|
+
<img class="turnip-icon" src={CloseIcon} alt="interactive floating action button represented as a turnip">
|
|
78
78
|
{:else }
|
|
79
|
-
<img src={FABIcon} alt="interactive floating action button represented as a turnip">
|
|
79
|
+
<img class="turnip-icon" src={FABIcon} alt="interactive floating action button represented as a turnip">
|
|
80
80
|
{/if}
|
|
81
81
|
</button>
|
|
82
82
|
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
{#if i < pages.length - 1}
|
|
101
101
|
<li class="crumb" in:fade>
|
|
102
102
|
<a href={crumb.path}>{crumb.name.charAt(0).toUpperCase() + crumb.name.slice(1)}</a>
|
|
103
|
-
|
|
103
|
+
›
|
|
104
104
|
</li>
|
|
105
105
|
{:else}
|
|
106
106
|
<li class="crumb" in:fade>{crumb.name.charAt(0).toUpperCase() + crumb.name.slice(1)}</li>
|
|
@@ -174,7 +174,7 @@
|
|
|
174
174
|
|
|
175
175
|
.crumb {
|
|
176
176
|
@apply flex justify-center items-center;
|
|
177
|
-
|
|
177
|
+
margin: 0.1em;
|
|
178
178
|
}
|
|
179
179
|
|
|
180
180
|
.crumb-separator {
|
|
@@ -195,6 +195,8 @@
|
|
|
195
195
|
}
|
|
196
196
|
|
|
197
197
|
.fab {
|
|
198
|
+
@apply btn variant-filled-tertiary;
|
|
199
|
+
padding: 0;
|
|
198
200
|
position: fixed;
|
|
199
201
|
bottom: var(--fab-margin);
|
|
200
202
|
width: 4em;
|
|
@@ -212,4 +214,8 @@
|
|
|
212
214
|
.fab:dir(rtl) {
|
|
213
215
|
left: var(--fab-margin);
|
|
214
216
|
}
|
|
217
|
+
|
|
218
|
+
.turnip-icon {
|
|
219
|
+
margin: 4px;
|
|
220
|
+
}
|
|
215
221
|
</style>
|
package/src/lib/util/util.ts
CHANGED
|
@@ -19,4 +19,16 @@ export const createGoToFunction = (path: string): (() => void) => {
|
|
|
19
19
|
return (() => {
|
|
20
20
|
location.href = path;
|
|
21
21
|
});
|
|
22
|
-
};
|
|
22
|
+
};
|
|
23
|
+
|
|
24
|
+
export interface ExternalLinkWarningArgs {
|
|
25
|
+
href: string;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export const createExternalLinkWarningFunction = (args: ExternalLinkWarningArgs): (() => void) => {
|
|
29
|
+
return (() => {
|
|
30
|
+
// todo: https://github.com/TurnipXenon/pineapple/issues/99
|
|
31
|
+
// add the warning here for future functions
|
|
32
|
+
location.href = args.href;
|
|
33
|
+
});
|
|
34
|
+
};
|
|
@@ -19,24 +19,23 @@
|
|
|
19
19
|
<div slot="content" class="content">
|
|
20
20
|
<h1 class="mb-8" style="font-weight: bolder">Directory</h1>
|
|
21
21
|
|
|
22
|
-
<div class="
|
|
22
|
+
<div class="turnip-menu">
|
|
23
23
|
<button on:click={createGoToFunction("pineapple")}><h2>Pineapple playground</h2></button>
|
|
24
|
-
<button on:click={createGoToFunction("portfolio")}><h2>Seaweed
|
|
24
|
+
<button on:click={createGoToFunction("portfolio")}><h2>Seaweed playground</h2></button>
|
|
25
25
|
</div>
|
|
26
26
|
</div>
|
|
27
27
|
</Card>
|
|
28
28
|
|
|
29
29
|
<style lang="postcss">
|
|
30
|
-
.
|
|
30
|
+
.turnip-menu {
|
|
31
31
|
padding: 2em;
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
32
|
+
display: flex;
|
|
33
|
+
gap: 2em;
|
|
34
|
+
flex-direction: column;
|
|
36
35
|
}
|
|
37
36
|
|
|
38
37
|
button {
|
|
39
|
-
|
|
38
|
+
@apply btn variant-filled-secondary;
|
|
40
39
|
}
|
|
41
40
|
|
|
42
41
|
.content {
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import { showComponentInToast, showTextInToast } from "$pkg/components/pineapple/toast/Toast";
|
|
4
4
|
import TestCard from "$pkg/components/pineapple/toast/custom-toast/TestCustomToast.svelte";
|
|
5
5
|
import TestDialogYarn from "./TestDialog.yarn?raw";
|
|
6
|
-
import { dialogManager } from "$pkg";
|
|
6
|
+
import { Card, dialogManager } from "$pkg";
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
let testingQueueNumber = 1;
|
|
@@ -36,22 +36,24 @@
|
|
|
36
36
|
/>
|
|
37
37
|
</svelte:head>
|
|
38
38
|
|
|
39
|
-
<
|
|
40
|
-
<
|
|
41
|
-
|
|
42
|
-
|
|
39
|
+
<Card>
|
|
40
|
+
<div slot="content" class="default-card">
|
|
41
|
+
<button
|
|
42
|
+
class="btn variant-filled-secondary"
|
|
43
|
+
on:click={() => {
|
|
43
44
|
showComponentInToast({componentAndProps: {component: TestCard, props: undefined}});
|
|
44
45
|
}}><h3>Test custom toast</h3></button>
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
46
|
+
<button
|
|
47
|
+
class="btn variant-filled-secondary"
|
|
48
|
+
on:click={() => {
|
|
48
49
|
showTextInToast(`${testingQueueNumber} ${testingRandomPhrases[testingQueueNumber]}`);
|
|
49
50
|
testingQueueNumber = (testingQueueNumber + 1) % testingRandomPhrases.length;
|
|
50
51
|
}}><h3>Handy toast</h3></button>
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
</div>
|
|
52
|
+
<button
|
|
53
|
+
class="btn variant-filled-secondary"
|
|
54
|
+
on:click={onTestDialogClick}><h3>Test dialog</h3></button>
|
|
55
|
+
</div>
|
|
56
|
+
</Card>
|
|
55
57
|
|
|
56
58
|
<style lang="postcss">
|
|
57
59
|
.default-card {
|