@turnipxenon/pineapple 2.4.25 → 2.4.26
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/workspace.xml +35 -29
- package/.svelte-kit/__package__/components/overrideable_meta/OverridableMeta.svelte +51 -0
- package/.svelte-kit/__package__/components/overrideable_meta/OverridableMeta.svelte.d.ts +20 -0
- package/.svelte-kit/__package__/components/overrideable_meta/OverridableMetaProps.d.ts +7 -0
- package/.svelte-kit/__package__/components/overrideable_meta/OverridableMetaProps.js +1 -0
- package/.svelte-kit/__package__/components/overrideable_meta/index.d.ts +2 -0
- package/.svelte-kit/__package__/components/overrideable_meta/index.js +3 -0
- package/.svelte-kit/__package__/index.d.ts +1 -0
- package/.svelte-kit/__package__/index.js +2 -0
- package/.svelte-kit/__package__/template/Seaweed/GameSection.svelte +184 -184
- package/.svelte-kit/__package__/template/Seaweed/ProjectSection.svelte +268 -268
- package/.svelte-kit/__package__/template/Seaweed/SeaweedTemplate.svelte +33 -32
- package/.svelte-kit/__package__/template/Seaweed/seaweed.postcss +133 -133
- package/.svelte-kit/ambient.d.ts +0 -2
- package/.svelte-kit/generated/client/nodes/5.js +2 -0
- package/.svelte-kit/generated/client/nodes/6.js +2 -0
- package/.svelte-kit/generated/client/nodes/7.js +2 -0
- package/.svelte-kit/generated/client/nodes/8.js +1 -1
- package/.svelte-kit/generated/server/internal.js +1 -1
- package/.svelte-kit/types/route_meta_data.json +7 -2
- package/.svelte-kit/types/src/routes/(pineapple)/pineapple/$types.d.ts +3 -1
- package/.svelte-kit/types/src/routes/(seaweed)/portfolio/$types.d.ts +4 -2
- package/.svelte-kit/types/src/routes/(seaweed)/portfolio/actual/$types.d.ts +3 -1
- package/dist/components/overrideable_meta/OverridableMeta.svelte +51 -0
- package/dist/components/overrideable_meta/OverridableMeta.svelte.d.ts +20 -0
- package/dist/components/overrideable_meta/OverridableMetaProps.d.ts +7 -0
- package/dist/components/overrideable_meta/OverridableMetaProps.js +1 -0
- package/dist/components/overrideable_meta/index.d.ts +2 -0
- package/dist/components/overrideable_meta/index.js +3 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +2 -0
- package/dist/template/Seaweed/GameSection.svelte +184 -184
- package/dist/template/Seaweed/ProjectSection.svelte +268 -268
- package/dist/template/Seaweed/SeaweedTemplate.svelte +33 -32
- package/dist/template/Seaweed/seaweed.postcss +133 -133
- package/package.json +1 -1
- package/src/lib/components/overrideable_meta/OverridableMeta.svelte +56 -0
- package/src/lib/components/overrideable_meta/OverridableMetaProps.ts +7 -0
- package/src/lib/components/overrideable_meta/index.ts +4 -0
- package/src/lib/index.ts +3 -0
- package/src/lib/template/Seaweed/GameSection.svelte +213 -213
- package/src/lib/template/Seaweed/ProjectSection.svelte +298 -298
- package/src/lib/template/Seaweed/SeaweedTemplate.svelte +36 -35
- package/src/lib/template/Seaweed/seaweed.postcss +133 -133
- package/src/lib/util/util.ts +38 -38
- package/src/routes/(pineapple)/+layout.svelte +0 -15
- package/src/routes/(pineapple)/+page.svelte +0 -12
- package/src/routes/(pineapple)/pineapple/+page.svelte +0 -10
- package/src/routes/(pineapple)/pineapple/+page.ts +8 -0
- package/src/routes/(seaweed)/portfolio/+page.svelte +0 -11
- package/src/routes/(seaweed)/portfolio/+page.ts +8 -0
- package/src/routes/(seaweed)/portfolio/actual/+page.ts +8 -0
- package/src/routes/+layout.svelte +5 -2
|
@@ -1,133 +1,133 @@
|
|
|
1
|
-
main {
|
|
2
|
-
width: 100%;
|
|
3
|
-
overflow: visible;
|
|
4
|
-
display: flex;
|
|
5
|
-
flex-direction: column;
|
|
6
|
-
justify-content: center;
|
|
7
|
-
align-items: center;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
h1 {
|
|
11
|
-
font-size: 2em;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
h2 {
|
|
15
|
-
font-size: 1.5em;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
.section-card {
|
|
19
|
-
padding: 3em;
|
|
20
|
-
max-width: 800px;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
.game-card, .project-card {
|
|
24
|
-
width: 100vw;
|
|
25
|
-
max-width: 36em;
|
|
26
|
-
margin-bottom: 3em;
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
.game-card > video {
|
|
30
|
-
border-top-left-radius: 1em;
|
|
31
|
-
border-top-right-radius: 1em;
|
|
32
|
-
max-height: 24em;
|
|
33
|
-
width: 100%;
|
|
34
|
-
object-fit: cover;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
#migrante-alberta, .game-card > img, .project-card > img {
|
|
38
|
-
border-top-left-radius: 1em;
|
|
39
|
-
border-top-right-radius: 1em;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
#migrante-alberta {
|
|
43
|
-
width: 100%;
|
|
44
|
-
object-fit: cover;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
.game-button {
|
|
48
|
-
@apply btn variant-filled-primary;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
.game-button > img {
|
|
52
|
-
max-height: 1lh;
|
|
53
|
-
/* todo: consider night mode day mode */
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
.two-column-separated {
|
|
57
|
-
display: flex;
|
|
58
|
-
justify-content: space-between;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
.more-section {
|
|
62
|
-
padding: 1em;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
.greater-about-div {
|
|
66
|
-
display: flex;
|
|
67
|
-
flex-direction: column;
|
|
68
|
-
max-width: 36em;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
.experience-and-about-div {
|
|
72
|
-
display: flex;
|
|
73
|
-
gap: 2em;
|
|
74
|
-
flex-wrap: wrap;
|
|
75
|
-
justify-content: center;
|
|
76
|
-
align-items: flex-start;
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
.game-card-body, .project-card-body {
|
|
80
|
-
padding: 1em;
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
.game-card-body > blockquote {
|
|
84
|
-
margin-bottom: 0.7lh;
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
.game-card-body > h1, .project-card-body > h2 {
|
|
88
|
-
text-align: center;
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
.game-link-section {
|
|
92
|
-
display: flex;
|
|
93
|
-
flex-direction: row;
|
|
94
|
-
justify-content: center;
|
|
95
|
-
gap: 1em;
|
|
96
|
-
margin-top: 1em;
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
.games-section, .projects-section {
|
|
100
|
-
display: flex;
|
|
101
|
-
flex-wrap: wrap;
|
|
102
|
-
gap: 2em;
|
|
103
|
-
justify-content: center;
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
.projects-section {
|
|
107
|
-
align-items: flex-start;
|
|
108
|
-
/*justify-content: flex-start;*/
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
.long-btn-image {
|
|
112
|
-
max-height: 1lh;
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
.itch-promo {
|
|
116
|
-
padding: 4em;
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
#hepcat-video {
|
|
120
|
-
object-position: 0 0;
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
.title-card {
|
|
124
|
-
width: clamp(360px, 80vw, 800px);
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
[class*='qt-'] {
|
|
128
|
-
font-weight: var(--qt-font-weight);
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
.accordion-header {
|
|
132
|
-
margin-top: 0.25em;
|
|
133
|
-
}
|
|
1
|
+
main {
|
|
2
|
+
width: 100%;
|
|
3
|
+
overflow: visible;
|
|
4
|
+
display: flex;
|
|
5
|
+
flex-direction: column;
|
|
6
|
+
justify-content: center;
|
|
7
|
+
align-items: center;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
h1 {
|
|
11
|
+
font-size: 2em;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
h2 {
|
|
15
|
+
font-size: 1.5em;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.section-card {
|
|
19
|
+
padding: 3em;
|
|
20
|
+
max-width: 800px;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.game-card, .project-card {
|
|
24
|
+
width: 100vw;
|
|
25
|
+
max-width: 36em;
|
|
26
|
+
margin-bottom: 3em;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.game-card > video {
|
|
30
|
+
border-top-left-radius: 1em;
|
|
31
|
+
border-top-right-radius: 1em;
|
|
32
|
+
max-height: 24em;
|
|
33
|
+
width: 100%;
|
|
34
|
+
object-fit: cover;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
#migrante-alberta, .game-card > img, .project-card > img {
|
|
38
|
+
border-top-left-radius: 1em;
|
|
39
|
+
border-top-right-radius: 1em;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
#migrante-alberta {
|
|
43
|
+
width: 100%;
|
|
44
|
+
object-fit: cover;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
.game-button {
|
|
48
|
+
@apply btn variant-filled-primary;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
.game-button > img {
|
|
52
|
+
max-height: 1lh;
|
|
53
|
+
/* todo: consider night mode day mode */
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.two-column-separated {
|
|
57
|
+
display: flex;
|
|
58
|
+
justify-content: space-between;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.more-section {
|
|
62
|
+
padding: 1em;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.greater-about-div {
|
|
66
|
+
display: flex;
|
|
67
|
+
flex-direction: column;
|
|
68
|
+
max-width: 36em;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
.experience-and-about-div {
|
|
72
|
+
display: flex;
|
|
73
|
+
gap: 2em;
|
|
74
|
+
flex-wrap: wrap;
|
|
75
|
+
justify-content: center;
|
|
76
|
+
align-items: flex-start;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.game-card-body, .project-card-body {
|
|
80
|
+
padding: 1em;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
.game-card-body > blockquote {
|
|
84
|
+
margin-bottom: 0.7lh;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
.game-card-body > h1, .project-card-body > h2 {
|
|
88
|
+
text-align: center;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
.game-link-section {
|
|
92
|
+
display: flex;
|
|
93
|
+
flex-direction: row;
|
|
94
|
+
justify-content: center;
|
|
95
|
+
gap: 1em;
|
|
96
|
+
margin-top: 1em;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.games-section, .projects-section {
|
|
100
|
+
display: flex;
|
|
101
|
+
flex-wrap: wrap;
|
|
102
|
+
gap: 2em;
|
|
103
|
+
justify-content: center;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
.projects-section {
|
|
107
|
+
align-items: flex-start;
|
|
108
|
+
/*justify-content: flex-start;*/
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
.long-btn-image {
|
|
112
|
+
max-height: 1lh;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
.itch-promo {
|
|
116
|
+
padding: 4em;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
#hepcat-video {
|
|
120
|
+
object-position: 0 0;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
.title-card {
|
|
124
|
+
width: clamp(360px, 80vw, 800px);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
[class*='qt-'] {
|
|
128
|
+
font-weight: var(--qt-font-weight);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
.accordion-header {
|
|
132
|
+
margin-top: 0.25em;
|
|
133
|
+
}
|
package/.svelte-kit/ambient.d.ts
CHANGED
|
@@ -46,7 +46,6 @@ declare module '$env/static/private' {
|
|
|
46
46
|
export const HOMEDRIVE: string;
|
|
47
47
|
export const HOMEPATH: string;
|
|
48
48
|
export const IDEA_INITIAL_DIRECTORY: string;
|
|
49
|
-
export const IJ_RESTARTER_LOG: string;
|
|
50
49
|
export const INIT_CWD: string;
|
|
51
50
|
export const JAVA_HOME: string;
|
|
52
51
|
export const LOCALAPPDATA: string;
|
|
@@ -240,7 +239,6 @@ declare module '$env/dynamic/private' {
|
|
|
240
239
|
HOMEDRIVE: string;
|
|
241
240
|
HOMEPATH: string;
|
|
242
241
|
IDEA_INITIAL_DIRECTORY: string;
|
|
243
|
-
IJ_RESTARTER_LOG: string;
|
|
244
242
|
INIT_CWD: string;
|
|
245
243
|
JAVA_HOME: string;
|
|
246
244
|
LOCALAPPDATA: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { default as component } from "../../../../src/routes/(seaweed)/portfolio/+page.svelte";
|
|
1
|
+
export { default as component } from "../../../../src/routes/(seaweed)/portfolio/actual/+page.svelte";
|
|
@@ -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: "6ez2bd"
|
|
25
25
|
};
|
|
26
26
|
|
|
27
27
|
export async function get_hooks() {
|
|
@@ -2,9 +2,14 @@
|
|
|
2
2
|
"/(seaweed)": [],
|
|
3
3
|
"/(pineapple)": [],
|
|
4
4
|
"/": [],
|
|
5
|
-
"/(pineapple)/pineapple": [
|
|
5
|
+
"/(pineapple)/pineapple": [
|
|
6
|
+
"src/routes/(pineapple)/pineapple/+page.ts"
|
|
7
|
+
],
|
|
6
8
|
"/(seaweed)/portfolio": [
|
|
9
|
+
"src/routes/(seaweed)/portfolio/+page.ts",
|
|
7
10
|
"src/routes/(seaweed)/portfolio/+page.server.ts"
|
|
8
11
|
],
|
|
9
|
-
"/(seaweed)/portfolio/actual": [
|
|
12
|
+
"/(seaweed)/portfolio/actual": [
|
|
13
|
+
"src/routes/(seaweed)/portfolio/actual/+page.ts"
|
|
14
|
+
]
|
|
10
15
|
}
|
|
@@ -14,4 +14,6 @@ export type Snapshot<T = any> = Kit.Snapshot<T>;
|
|
|
14
14
|
type PageParentData = Omit<EnsureDefined<import('../../$types.js').LayoutData>, keyof import('../$types.js').LayoutData> & EnsureDefined<import('../$types.js').LayoutData>;
|
|
15
15
|
|
|
16
16
|
export type PageServerData = null;
|
|
17
|
-
export type
|
|
17
|
+
export type PageLoad<OutputData extends OutputDataShape<PageParentData> = OutputDataShape<PageParentData>> = Kit.Load<RouteParams, PageServerData, PageParentData, OutputData, RouteId>;
|
|
18
|
+
export type PageLoadEvent = Parameters<PageLoad>[0];
|
|
19
|
+
export type PageData = Expand<Omit<PageParentData, keyof Kit.LoadProperties<Awaited<ReturnType<typeof import('../../../../../../src/routes/(pineapple)/pineapple/+page.js').load>>>> & OptionalUnion<EnsureDefined<Kit.LoadProperties<Awaited<ReturnType<typeof import('../../../../../../src/routes/(pineapple)/pineapple/+page.js').load>>>>>>;
|
|
@@ -14,11 +14,13 @@ export type Snapshot<T = any> = Kit.Snapshot<T>;
|
|
|
14
14
|
type PageServerParentData = Omit<EnsureDefined<import('../../$types.js').LayoutServerData>, keyof import('../$types.js').LayoutServerData> & EnsureDefined<import('../$types.js').LayoutServerData>;
|
|
15
15
|
type PageParentData = Omit<EnsureDefined<import('../../$types.js').LayoutData>, keyof import('../$types.js').LayoutData> & EnsureDefined<import('../$types.js').LayoutData>;
|
|
16
16
|
|
|
17
|
-
export type PageServerLoad<OutputData extends
|
|
17
|
+
export type PageServerLoad<OutputData extends Partial<App.PageData> & Record<string, any> | void = Partial<App.PageData> & Record<string, any> | void> = Kit.ServerLoad<RouteParams, PageServerParentData, OutputData, RouteId>;
|
|
18
18
|
export type PageServerLoadEvent = Parameters<PageServerLoad>[0];
|
|
19
19
|
export type ActionData = unknown;
|
|
20
20
|
export type PageServerData = Expand<OptionalUnion<EnsureDefined<Kit.LoadProperties<Awaited<ReturnType<typeof import('./proxy+page.server.js').load>>>>>>;
|
|
21
|
-
export type
|
|
21
|
+
export type PageLoad<OutputData extends OutputDataShape<PageParentData> = OutputDataShape<PageParentData>> = Kit.Load<RouteParams, PageServerData, PageParentData, OutputData, RouteId>;
|
|
22
|
+
export type PageLoadEvent = Parameters<PageLoad>[0];
|
|
23
|
+
export type PageData = Expand<Omit<PageParentData, keyof Kit.LoadProperties<Awaited<ReturnType<typeof import('../../../../../../src/routes/(seaweed)/portfolio/+page.js').load>>>> & OptionalUnion<EnsureDefined<Kit.LoadProperties<Awaited<ReturnType<typeof import('../../../../../../src/routes/(seaweed)/portfolio/+page.js').load>>>>>>;
|
|
22
24
|
export type Action<OutputData extends Record<string, any> | void = Record<string, any> | void> = Kit.Action<RouteParams, OutputData, RouteId>
|
|
23
25
|
export type Actions<OutputData extends Record<string, any> | void = Record<string, any> | void> = Kit.Actions<RouteParams, OutputData, RouteId>
|
|
24
26
|
export type RequestEvent = Kit.RequestEvent<RouteParams, RouteId>;
|
|
@@ -14,4 +14,6 @@ export type Snapshot<T = any> = Kit.Snapshot<T>;
|
|
|
14
14
|
type PageParentData = Omit<EnsureDefined<import('../../../$types.js').LayoutData>, keyof import('../../$types.js').LayoutData> & EnsureDefined<import('../../$types.js').LayoutData>;
|
|
15
15
|
|
|
16
16
|
export type PageServerData = null;
|
|
17
|
-
export type
|
|
17
|
+
export type PageLoad<OutputData extends OutputDataShape<PageParentData> = OutputDataShape<PageParentData>> = Kit.Load<RouteParams, PageServerData, PageParentData, OutputData, RouteId>;
|
|
18
|
+
export type PageLoadEvent = Parameters<PageLoad>[0];
|
|
19
|
+
export type PageData = Expand<Omit<PageParentData, keyof Kit.LoadProperties<Awaited<ReturnType<typeof import('../../../../../../../src/routes/(seaweed)/portfolio/actual/+page.js').load>>>> & OptionalUnion<EnsureDefined<Kit.LoadProperties<Awaited<ReturnType<typeof import('../../../../../../../src/routes/(seaweed)/portfolio/actual/+page.js').load>>>>>>;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
OverridableMeta is convenient Svelte component allowing each page to override the head meta values
|
|
3
|
+
based on their +page.ts.
|
|
4
|
+
|
|
5
|
+
For example:
|
|
6
|
+
<code>
|
|
7
|
+
// +page.ts
|
|
8
|
+
|
|
9
|
+
import type { OverridableMetaProps } from "../..";
|
|
10
|
+
|
|
11
|
+
export const load = async (): Promise<OverridableMetaProps> => {
|
|
12
|
+
return {
|
|
13
|
+
title: "CustomTitle",
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
</code>
|
|
17
|
+
-->
|
|
18
|
+
|
|
19
|
+
<script>import WebThumbnailImage from "../../assets/placeholder/placeholder_circle.png";
|
|
20
|
+
export let rootUrl = "http://localhost:5173";
|
|
21
|
+
export let title = "Welcome to my portfolio";
|
|
22
|
+
export let ogTitle = "Turnip time!";
|
|
23
|
+
export let ogDescription = "Welcome to Turnip's test portfolio";
|
|
24
|
+
export let ogImage = WebThumbnailImage;
|
|
25
|
+
import { page } from "$app/stores";
|
|
26
|
+
const data = {
|
|
27
|
+
title: "Welcome to my portfolio",
|
|
28
|
+
ogUrl: "https://www.crouton.net/",
|
|
29
|
+
ogTitle: "Turnip time!",
|
|
30
|
+
ogDescription: "Welcome to Turnip's test portfolio",
|
|
31
|
+
ogImage: WebThumbnailImage
|
|
32
|
+
};
|
|
33
|
+
page.subscribe((p) => {
|
|
34
|
+
const pageData = p.data;
|
|
35
|
+
data.title = pageData.title ?? title;
|
|
36
|
+
data.ogUrl = `${rootUrl}${p.url.pathname}`;
|
|
37
|
+
data.ogTitle = pageData.ogTitle ?? ogTitle;
|
|
38
|
+
data.ogDescription = pageData.ogDescription ?? ogDescription;
|
|
39
|
+
data.ogImage = pageData.ogImage ?? ogImage;
|
|
40
|
+
});
|
|
41
|
+
</script>
|
|
42
|
+
|
|
43
|
+
<svelte:head>
|
|
44
|
+
<meta charset="utf-8" />
|
|
45
|
+
<title>{data.title}</title>
|
|
46
|
+
<meta name="twitter:card" content="summary" />
|
|
47
|
+
<meta property="og:url" content={data.ogUrl} />
|
|
48
|
+
<meta property="og:title" content={data.ogTitle} />
|
|
49
|
+
<meta property="og:description" content={data.ogDescription} />
|
|
50
|
+
<meta property="og:image" content={data.ogImage} />
|
|
51
|
+
</svelte:head>
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { SvelteComponent } from "svelte";
|
|
2
|
+
declare const __propDef: {
|
|
3
|
+
props: {
|
|
4
|
+
rootUrl?: string | undefined;
|
|
5
|
+
title?: string | undefined;
|
|
6
|
+
ogTitle?: string | undefined;
|
|
7
|
+
ogDescription?: string | undefined;
|
|
8
|
+
ogImage?: any;
|
|
9
|
+
};
|
|
10
|
+
events: {
|
|
11
|
+
[evt: string]: CustomEvent<any>;
|
|
12
|
+
};
|
|
13
|
+
slots: {};
|
|
14
|
+
};
|
|
15
|
+
type OverridableMetaProps_ = typeof __propDef.props;
|
|
16
|
+
export { OverridableMetaProps_ as OverridableMetaProps };
|
|
17
|
+
export type OverridableMetaEvents = typeof __propDef.events;
|
|
18
|
+
export type OverridableMetaSlots = typeof __propDef.slots;
|
|
19
|
+
export default class OverridableMeta extends SvelteComponent<OverridableMetaProps_, OverridableMetaEvents, OverridableMetaSlots> {
|
|
20
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/index.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ export { default as PineappleLayoutBase } from "./components/pineapple/Pineapple
|
|
|
2
2
|
export { default as SeaweedTemplate } from "./template/Seaweed/SeaweedTemplate.svelte";
|
|
3
3
|
export { default as LazyAsset } from "./components/LazyAsset.svelte";
|
|
4
4
|
export { default as Card } from "./components/Card.svelte";
|
|
5
|
+
export * from "./components/overrideable_meta/index.ts";
|
|
5
6
|
export * from "./components/dialog_manager/DialogManagerStore";
|
|
6
7
|
export * from "./components/dialog_manager/DialogManager";
|
|
7
8
|
export * from "./components/dialog_manager/DialogUtils";
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
// noinspection JSUnusedGlobalSymbols
|
|
1
2
|
export { default as PineappleLayoutBase } from "./components/pineapple/PineappleBaseLayout.svelte";
|
|
2
3
|
export { default as SeaweedTemplate } from "./template/Seaweed/SeaweedTemplate.svelte";
|
|
3
4
|
export { default as LazyAsset } from "./components/LazyAsset.svelte";
|
|
4
5
|
export { default as Card } from "./components/Card.svelte";
|
|
6
|
+
export * from "./components/overrideable_meta/index.ts";
|
|
5
7
|
export * from "./components/dialog_manager/DialogManagerStore";
|
|
6
8
|
export * from "./components/dialog_manager/DialogManager";
|
|
7
9
|
export * from "./components/dialog_manager/DialogUtils";
|