@turnipxenon/pineapple 5.0.0 → 5.1.0
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/README.md +11 -11
- package/dist/ui/components/FourPartCard.svelte +4 -0
- package/dist/ui/components/SortDropdown.svelte +50 -0
- package/dist/ui/components/SortDropdown.svelte.d.ts +9 -0
- package/dist/ui/components/SortDropdown.svelte.d.ts.map +1 -0
- package/dist/ui/components/TagFilter.svelte +32 -0
- package/dist/ui/components/TagFilter.svelte.d.ts +9 -0
- package/dist/ui/components/TagFilter.svelte.d.ts.map +1 -0
- package/dist/ui/components/accordion/PinyaAccordion.svelte +5 -3
- package/dist/ui/components/accordion/PinyaAccordion.svelte.d.ts.map +1 -1
- package/dist/ui/elements/CodeBlock/CodeBlock.svelte +12 -6
- package/dist/ui/elements/PineappleSwitch.svelte +2 -2
- package/dist/ui/elements/PineappleSwitch.svelte.d.ts +1 -1
- package/dist/ui/elements/PineappleSwitch.svelte.d.ts.map +1 -1
- package/dist/ui/elements/pinya-combobox/PinyaCombobox.svelte +169 -26
- package/dist/ui/elements/pinya-combobox/PinyaCombobox.svelte.d.ts.map +1 -1
- package/dist/ui/elements/pinya-combobox/PinyaComboboxProps.d.ts +6 -7
- package/dist/ui/elements/pinya-combobox/PinyaComboboxProps.d.ts.map +1 -1
- package/dist/ui/modules/experience/ExampleJob1.svelte +79 -0
- package/dist/ui/modules/experience/ExampleJob1.svelte.d.ts +26 -0
- package/dist/ui/modules/experience/ExampleJob1.svelte.d.ts.map +1 -0
- package/dist/ui/modules/experience/ExampleJob2.svelte +74 -0
- package/dist/ui/modules/experience/ExampleJob2.svelte.d.ts +25 -0
- package/dist/ui/modules/experience/ExampleJob2.svelte.d.ts.map +1 -0
- package/dist/ui/modules/experience/index.d.ts +3 -0
- package/dist/ui/modules/experience/index.d.ts.map +1 -0
- package/dist/ui/modules/experience/index.js +2 -0
- package/dist/ui/modules/modals/general-settings/LanguagePicker.svelte +7 -9
- package/dist/ui/modules/modals/general-settings/LanguagePicker.svelte.d.ts.map +1 -1
- package/dist/ui/modules/projects/Hepcat.svelte +5 -1
- package/dist/ui/modules/projects/Hepcat.svelte.d.ts +4 -1
- package/dist/ui/modules/projects/Hepcat.svelte.d.ts.map +1 -1
- package/dist/ui/modules/projects/Pengi.svelte +4 -1
- package/dist/ui/modules/projects/Pengi.svelte.d.ts +4 -1
- package/dist/ui/modules/projects/Pengi.svelte.d.ts.map +1 -1
- package/dist/ui/modules/projects/Soulwork.svelte +4 -1
- package/dist/ui/modules/projects/Soulwork.svelte.d.ts +4 -1
- package/dist/ui/modules/projects/Soulwork.svelte.d.ts.map +1 -1
- package/dist/ui/modules/projects/ThisWebpage.svelte +4 -2
- package/dist/ui/modules/projects/ThisWebpage.svelte.d.ts +3 -1
- package/dist/ui/modules/projects/ThisWebpage.svelte.d.ts.map +1 -1
- package/dist/ui/modules/universal-overlay/UniversalOverlay.svelte +0 -1
- package/dist/ui/modules/universal-overlay/UniversalOverlay.svelte.d.ts.map +1 -1
- package/dist/ui/templates/SeaweedLayout/EntryGroup.svelte +177 -29
- package/dist/ui/templates/SeaweedLayout/EntryGroup.svelte.d.ts.map +1 -1
- package/dist/ui/templates/SeaweedLayout/ProjectGroupConfig.svelte +1 -3
- package/dist/ui/templates/SeaweedLayout/SeaweedLayout.svelte +188 -44
- package/dist/ui/templates/SeaweedLayout/SeaweedLayout.svelte.d.ts.map +1 -1
- package/dist/ui/templates/SeaweedLayout/props.d.ts +18 -2
- package/dist/ui/templates/SeaweedLayout/props.d.ts.map +1 -1
- package/dist/ui/templates/SeaweedLayout/props.js +8 -1
- package/package.json +2 -2
|
@@ -1,32 +1,35 @@
|
|
|
1
1
|
<!-- TODO: Documentation: consider documentation showcase -->
|
|
2
2
|
|
|
3
3
|
<script lang="ts">
|
|
4
|
-
import {
|
|
5
|
-
import
|
|
6
|
-
import ChumBucket from "./ChumBucket.svelte";
|
|
7
|
-
import { default as PinyaPageLayout } from "../PinyaPageLayout/PinyaPageLayout.svelte";
|
|
4
|
+
import { browser } from "$app/environment";
|
|
5
|
+
import { page } from "$app/state";
|
|
8
6
|
import { default as SocialSection } from "../../components/SocialSection.svelte";
|
|
9
|
-
import EntryGroup from "./EntryGroup.svelte";
|
|
10
|
-
import PineappleSwitch from "../../elements/PineappleSwitch.svelte";
|
|
11
7
|
import { CodeBlock } from "../../elements/CodeBlock";
|
|
12
|
-
import
|
|
13
|
-
import {
|
|
8
|
+
import PineappleSwitch from "../../elements/PineappleSwitch.svelte";
|
|
9
|
+
import { default as PinyaPageLayout } from "../PinyaPageLayout/PinyaPageLayout.svelte";
|
|
10
|
+
import ChumBucket from "./ChumBucket.svelte";
|
|
11
|
+
import EntryGroup from "./EntryGroup.svelte";
|
|
14
12
|
import EntryOrderConfig from "./EntryOrderConfig.svelte";
|
|
13
|
+
import { onDestroy, onMount } from "svelte";
|
|
14
|
+
import { SvelteMap } from "svelte/reactivity";
|
|
15
|
+
import { fly } from "svelte/transition";
|
|
16
|
+
import { TextChip } from "../../elements/TextChip";
|
|
15
17
|
import CreateUrlForm from "./CreateUrlForm.svelte";
|
|
16
|
-
import {
|
|
17
|
-
import { page } from "$app/state";
|
|
18
|
+
import type { ProjectGroup, SeaweedLayoutProps } from "./props";
|
|
18
19
|
|
|
19
20
|
let {
|
|
20
|
-
email,
|
|
21
|
-
linkedinSlug,
|
|
22
|
-
children,
|
|
23
|
-
sideSection,
|
|
21
|
+
email = "",
|
|
22
|
+
linkedinSlug = "",
|
|
23
|
+
children = undefined,
|
|
24
|
+
sideSection = undefined,
|
|
24
25
|
entryList, // todo
|
|
25
26
|
layout, // todo
|
|
26
27
|
domain = "http://localhost:5173/seaweed2",
|
|
27
28
|
queryTerms,
|
|
28
29
|
showMiniSocial = false,
|
|
29
|
-
serverParams = ""
|
|
30
|
+
serverParams = "",
|
|
31
|
+
emailRemoteQuery,
|
|
32
|
+
linkedinRemoteQuery
|
|
30
33
|
}: SeaweedLayoutProps = $props();
|
|
31
34
|
|
|
32
35
|
let actualLayout = $state(layout);
|
|
@@ -64,15 +67,29 @@
|
|
|
64
67
|
termList.push(qtTerm);
|
|
65
68
|
chipList.push(`.text-chip${qtTerm}`);
|
|
66
69
|
});
|
|
70
|
+
// language=HTML
|
|
67
71
|
styleStr = `<style>
|
|
68
72
|
${termList.join(", ")} {
|
|
69
73
|
font-weight: bolder;
|
|
70
|
-
|
|
74
|
+
|
|
75
|
+
&:not(.chip) {
|
|
76
|
+
color: var(--color-secondary-500);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
html.dark {
|
|
81
|
+
${termList.join(", ")} {
|
|
82
|
+
font-weight: bolder;
|
|
83
|
+
|
|
84
|
+
&:not(.chip) {
|
|
85
|
+
color: var(--color-secondary-200);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
71
88
|
}
|
|
72
89
|
|
|
73
90
|
${chipList.join(", ")} {
|
|
74
91
|
background-color: var(--color-secondary-500) /* oklch(55.6% 0 0deg) = #737373 */;
|
|
75
|
-
color:
|
|
92
|
+
color: #FFF5EFFF /* var(--color-secondary-contrast-light) */;
|
|
76
93
|
}
|
|
77
94
|
</style>`;
|
|
78
95
|
});
|
|
@@ -150,12 +167,57 @@
|
|
|
150
167
|
// endregion Bold terms
|
|
151
168
|
};
|
|
152
169
|
|
|
170
|
+
let upperSectionWrapper: HTMLDivElement | undefined = $state();
|
|
171
|
+
let resizeObserver: ResizeObserver | undefined = $state();
|
|
172
|
+
let isMobile = $state(false);
|
|
173
|
+
let isVeryNarrow = $state(false);
|
|
174
|
+
|
|
153
175
|
onMount(() => {
|
|
154
176
|
if (serverParams) {
|
|
155
177
|
filterSearchParams(new URLSearchParams(serverParams));
|
|
156
178
|
} else if (page.url.searchParams.size) {
|
|
157
179
|
filterSearchParams(page.url.searchParams);
|
|
158
180
|
}
|
|
181
|
+
|
|
182
|
+
/**
|
|
183
|
+
* Get the computed font size of an element in pixels.
|
|
184
|
+
* @param {HTMLElement} element The DOM element to check.
|
|
185
|
+
* @returns {number} The font size in pixels as a number.
|
|
186
|
+
*/
|
|
187
|
+
function getElementFontSize(element) {
|
|
188
|
+
// Use window.getComputedStyle() to get all resolved CSS properties.
|
|
189
|
+
const computedStyle = window.getComputedStyle(element);
|
|
190
|
+
// Get the 'font-size' property value (which will be in 'px').
|
|
191
|
+
const fontSizeInPx = computedStyle.getPropertyValue("font-size");
|
|
192
|
+
// Parse the pixel value string (e.g., "16px") to a floating-point number.
|
|
193
|
+
return parseFloat(fontSizeInPx);
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
// code has to be below filterSearchParams!
|
|
197
|
+
if (browser && document.body) {
|
|
198
|
+
// Create a new ResizeObserver instance
|
|
199
|
+
resizeObserver = new ResizeObserver(entries => {
|
|
200
|
+
for (const entry of entries) {
|
|
201
|
+
// Log the new dimensions or perform other actions
|
|
202
|
+
const { width } = entry.contentRect; // or entry.borderBoxSize
|
|
203
|
+
const emWidth = width / getElementFontSize(document.body);
|
|
204
|
+
|
|
205
|
+
// 26em (about) + 50em (experience) + 2em (margin)
|
|
206
|
+
isMobile = emWidth < 79;
|
|
207
|
+
// magic number
|
|
208
|
+
isVeryNarrow = emWidth < 44;
|
|
209
|
+
}
|
|
210
|
+
});
|
|
211
|
+
|
|
212
|
+
// Start observing the target element
|
|
213
|
+
resizeObserver.observe(document.body);
|
|
214
|
+
}
|
|
215
|
+
});
|
|
216
|
+
|
|
217
|
+
onDestroy(() => {
|
|
218
|
+
if (browser && resizeObserver) {
|
|
219
|
+
resizeObserver.disconnect();
|
|
220
|
+
}
|
|
159
221
|
});
|
|
160
222
|
</script>
|
|
161
223
|
|
|
@@ -165,10 +227,7 @@
|
|
|
165
227
|
|
|
166
228
|
|
|
167
229
|
{#snippet socialSection()}
|
|
168
|
-
<SocialSection
|
|
169
|
-
email={email}
|
|
170
|
-
linkedinSlug={linkedinSlug}
|
|
171
|
-
/>
|
|
230
|
+
<SocialSection {emailRemoteQuery} {linkedinRemoteQuery} />
|
|
172
231
|
{/snippet}
|
|
173
232
|
<PinyaPageLayout appBardEndStyle="classic">
|
|
174
233
|
{#snippet appBarLead()}
|
|
@@ -179,29 +238,46 @@
|
|
|
179
238
|
>
|
|
180
239
|
<SocialSection
|
|
181
240
|
isSmallVersion={true}
|
|
182
|
-
|
|
183
|
-
|
|
241
|
+
{emailRemoteQuery}
|
|
242
|
+
{linkedinRemoteQuery}
|
|
184
243
|
/>
|
|
185
244
|
</div>
|
|
186
245
|
{/if}
|
|
187
246
|
{/snippet}
|
|
188
247
|
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
{
|
|
248
|
+
{#if sideSection || children}
|
|
249
|
+
<div
|
|
250
|
+
id="upper-section"
|
|
251
|
+
bind:this={upperSectionWrapper}
|
|
252
|
+
class="upper-section-style"
|
|
253
|
+
class:is-mobile={isMobile}
|
|
254
|
+
class:is-very-narrow={isVeryNarrow}
|
|
255
|
+
>
|
|
256
|
+
{#if sideSection}
|
|
257
|
+
<div class="upper-section-start">
|
|
258
|
+
{@render sideSection(socialSection)}
|
|
259
|
+
</div>
|
|
260
|
+
{/if}
|
|
261
|
+
|
|
262
|
+
{#if children}
|
|
263
|
+
<div class="upper-section-end">
|
|
264
|
+
{@render children()}
|
|
265
|
+
</div>
|
|
266
|
+
{/if}
|
|
267
|
+
|
|
268
|
+
{#if actualLayout.length > 0}
|
|
269
|
+
<EntryGroup {...actualLayout[0]} />
|
|
270
|
+
{/if}
|
|
193
271
|
</div>
|
|
194
|
-
|
|
195
|
-
<div class="upper-section-end">
|
|
196
|
-
{@render children()}
|
|
197
|
-
</div>
|
|
198
|
-
</div>
|
|
272
|
+
{/if}
|
|
199
273
|
|
|
200
274
|
<!--todo: render list #migration-->
|
|
201
|
-
{#each actualLayout as group (group.title)}
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
275
|
+
{#each actualLayout as group, idx (group.title)}
|
|
276
|
+
{#if idx !== 0}
|
|
277
|
+
<EntryGroup
|
|
278
|
+
{...group}
|
|
279
|
+
/>
|
|
280
|
+
{/if}
|
|
205
281
|
{/each}
|
|
206
282
|
|
|
207
283
|
{#snippet footer()}
|
|
@@ -274,12 +350,80 @@
|
|
|
274
350
|
border-top: 2px solid var(--color-footer-border);
|
|
275
351
|
}
|
|
276
352
|
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
353
|
+
:global {
|
|
354
|
+
#upper-section {
|
|
355
|
+
display: flex;
|
|
356
|
+
flex-direction: row;
|
|
357
|
+
flex-wrap: wrap;
|
|
358
|
+
gap: 2rem;
|
|
359
|
+
justify-content: center;
|
|
360
|
+
|
|
361
|
+
&.is-mobile {
|
|
362
|
+
justify-content: stretch;
|
|
363
|
+
|
|
364
|
+
.upper-section-start, .entry-group-wrapper {
|
|
365
|
+
width: 100%;
|
|
366
|
+
max-width: 64em;
|
|
367
|
+
margin: auto;
|
|
368
|
+
flex: unset;
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
.normal-project-container {
|
|
372
|
+
justify-content: stretch;
|
|
373
|
+
|
|
374
|
+
> .pinya-card {
|
|
375
|
+
max-width: calc(60em);
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
}
|
|
379
|
+
|
|
380
|
+
.upper-section-start {
|
|
381
|
+
flex-basis: 26em;
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
.entry-group-wrapper {
|
|
385
|
+
width: unset;
|
|
386
|
+
max-width: 64em;
|
|
387
|
+
flex: 1;
|
|
388
|
+
|
|
389
|
+
.group-header {
|
|
390
|
+
max-width: 64em;
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
.normal-project-container {
|
|
394
|
+
justify-content: stretch;
|
|
395
|
+
flex-direction: column;
|
|
396
|
+
|
|
397
|
+
> .pinya-card {
|
|
398
|
+
max-width: 64em;
|
|
399
|
+
}
|
|
400
|
+
|
|
401
|
+
> .pinya-four-part-card > section {
|
|
402
|
+
.card-header-cover {
|
|
403
|
+
flex: 1 1 12em;
|
|
404
|
+
|
|
405
|
+
& > * {
|
|
406
|
+
border-radius: var(--radius-xl);
|
|
407
|
+
border-bottom-left-radius: var(--radius-xl);
|
|
408
|
+
border-top-left-radius: var(--radius-xl);
|
|
409
|
+
}
|
|
410
|
+
}
|
|
411
|
+
|
|
412
|
+
.card-content {
|
|
413
|
+
padding-bottom: 1lh;
|
|
414
|
+
flex: 9999 1 26em;
|
|
415
|
+
}
|
|
416
|
+
|
|
417
|
+
display: flex;
|
|
418
|
+
flex-direction: row;
|
|
419
|
+
flex-wrap: wrap;
|
|
420
|
+
justify-content: stretch;
|
|
421
|
+
align-items: stretch;
|
|
422
|
+
margin: 0;
|
|
423
|
+
}
|
|
424
|
+
}
|
|
425
|
+
}
|
|
426
|
+
}
|
|
283
427
|
}
|
|
284
428
|
|
|
285
429
|
.query-term-grid {
|
|
@@ -290,7 +434,7 @@
|
|
|
290
434
|
}
|
|
291
435
|
|
|
292
436
|
.advanced-setting {
|
|
293
|
-
|
|
294
|
-
|
|
437
|
+
margin-left: 1em;
|
|
438
|
+
margin-right: 1em;
|
|
295
439
|
}
|
|
296
440
|
</style>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SeaweedLayout.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/ui/templates/SeaweedLayout/SeaweedLayout.svelte.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SeaweedLayout.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/ui/templates/SeaweedLayout/SeaweedLayout.svelte.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAgB,kBAAkB,EAAE,MAAM,SAAS,CAAC;AA0ThE,QAAA,MAAM,aAAa,wDAAwC,CAAC;AAC5D,KAAK,aAAa,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;AACtD,eAAe,aAAa,CAAC"}
|
|
@@ -1,28 +1,44 @@
|
|
|
1
|
+
import type { RevealInfoRecord } from "../../../components/reveal-info/RevealInfoCollection";
|
|
1
2
|
import type { Snippet } from "svelte";
|
|
2
3
|
import type { ProjectComponentProps } from "./";
|
|
4
|
+
import type { SvelteSet } from "svelte/reactivity";
|
|
3
5
|
type ComponentSnippet = Snippet<[ProjectComponentProps]>;
|
|
6
|
+
export declare enum SectionType {
|
|
7
|
+
Experience = "experience",
|
|
8
|
+
Projects = "projects"
|
|
9
|
+
}
|
|
4
10
|
export interface SnippetMeta {
|
|
5
11
|
key: string;
|
|
6
12
|
component: ComponentSnippet;
|
|
13
|
+
dateStarted?: Date | string;
|
|
14
|
+
dateFinished?: Date | string;
|
|
15
|
+
tags?: string[];
|
|
7
16
|
}
|
|
8
17
|
export interface ProjectGroup {
|
|
9
18
|
key: string;
|
|
10
19
|
title: string;
|
|
11
20
|
entryList: SnippetMeta[];
|
|
12
21
|
projectComponentProps?: ProjectComponentProps;
|
|
22
|
+
sectionType?: SectionType;
|
|
23
|
+
showFilter?: boolean;
|
|
24
|
+
showSort?: boolean;
|
|
25
|
+
showMoreLimit?: number;
|
|
13
26
|
}
|
|
14
27
|
export interface SeaweedLayoutProps {
|
|
15
28
|
name: string;
|
|
16
29
|
email: string;
|
|
17
30
|
linkedinSlug: string;
|
|
18
31
|
domain: string;
|
|
19
|
-
sideSection
|
|
20
|
-
children
|
|
32
|
+
sideSection?: Snippet<[Snippet]>;
|
|
33
|
+
children?: Snippet;
|
|
21
34
|
entryList: SnippetMeta[];
|
|
22
35
|
layout: ProjectGroup[];
|
|
23
36
|
queryTerms: string[];
|
|
24
37
|
showMiniSocial?: boolean;
|
|
25
38
|
serverParams?: string;
|
|
39
|
+
emailRemoteQuery?: RevealInfoRecord;
|
|
40
|
+
linkedinRemoteQuery?: RevealInfoRecord;
|
|
26
41
|
}
|
|
42
|
+
export declare const getQueryTermContext: () => SvelteSet<string>, setQueryTermContext: (context: SvelteSet<string>) => SvelteSet<string>;
|
|
27
43
|
export {};
|
|
28
44
|
//# sourceMappingURL=props.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"props.d.ts","sourceRoot":"","sources":["../../../../src/lib/ui/templates/SeaweedLayout/props.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAE7E,KAAK,gBAAgB,GAAG,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC;AAEzD,MAAM,WAAW,WAAW;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"props.d.ts","sourceRoot":"","sources":["../../../../src/lib/ui/templates/SeaweedLayout/props.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AACzF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAE7E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD,KAAK,gBAAgB,GAAG,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC;AAEzD,oBAAY,WAAW;IACtB,UAAU,eAAe;IACzB,QAAQ,aAAa;CACrB;AAED,MAAM,WAAW,WAAW;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,gBAAgB,CAAC;IAE5B,WAAW,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IAC5B,YAAY,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,WAAW,EAAE,CAAC;IACzB,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAE9C,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,SAAS,EAAE,WAAW,EAAE,CAAC;IACzB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,mBAAmB,CAAC,EAAE,gBAAgB,CAAC;CACvC;AAGD,eAAO,MAAO,mBAAmB,2BAAE,mBAAmB,mDAAsC,CAAC"}
|
|
@@ -1 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
import { createContext } from 'svelte';
|
|
2
|
+
export var SectionType;
|
|
3
|
+
(function (SectionType) {
|
|
4
|
+
SectionType["Experience"] = "experience";
|
|
5
|
+
SectionType["Projects"] = "projects";
|
|
6
|
+
})(SectionType || (SectionType = {}));
|
|
7
|
+
/* A list of terms to be prepended with qt- later */
|
|
8
|
+
export const [getQueryTermContext, setQueryTermContext] = createContext();
|
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": "5.
|
|
4
|
+
"version": "5.1.0",
|
|
5
5
|
"devDependencies": {
|
|
6
6
|
"@commitlint/cli": "^19.8.1",
|
|
7
7
|
"@commitlint/config-conventional": "^19.8.1",
|
|
@@ -44,11 +44,11 @@
|
|
|
44
44
|
"wrangler": "4.59.1"
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
|
+
"@shikijs/transformers": "^3.22.0",
|
|
47
48
|
"melt": "^0.44.0",
|
|
48
49
|
"mode-watcher": "^0.5.1",
|
|
49
50
|
"shiki": "^3.22.0",
|
|
50
51
|
"shiki-transformer-copy-button": "0.0.3",
|
|
51
|
-
"@shikijs/transformers": "^3.22.0",
|
|
52
52
|
"svelte-modals": "^2.0.1"
|
|
53
53
|
},
|
|
54
54
|
"peerDependencies": {
|