@turnipxenon/pineapple 2.4.75 → 2.4.77

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 (55) hide show
  1. package/.idea/workspace.xml +71 -72
  2. package/.svelte-kit/__package__/components/PineappleSlideToggle.svelte +3 -1
  3. package/.svelte-kit/__package__/components/PineappleSlideToggle.svelte.d.ts +1 -0
  4. package/.svelte-kit/__package__/template/seaweed/SeaweedTemplate.svelte +9 -1
  5. package/.svelte-kit/__package__/template/seaweed/SeaweedTemplate.svelte.d.ts +1 -0
  6. package/.svelte-kit/__package__/template/seaweed/SeaweedTemplateData.js +0 -6
  7. package/.svelte-kit/__package__/template/seaweed/entries/EntryProps.d.ts +0 -1
  8. package/.svelte-kit/__package__/template/seaweed/entries/WorkExperience.svelte +106 -136
  9. package/.svelte-kit/__package__/template/seaweed/entry_order_config/EntryOrderConfig.svelte +4 -4
  10. package/.svelte-kit/__package__/template/seaweed/entry_order_config/EntryOrderConfig.svelte.d.ts +3 -1
  11. package/.svelte-kit/generated/server/internal.js +1 -1
  12. package/dist/components/PineappleSlideToggle.svelte +3 -1
  13. package/dist/components/PineappleSlideToggle.svelte.d.ts +1 -0
  14. package/dist/template/seaweed/SeaweedTemplate.svelte +9 -1
  15. package/dist/template/seaweed/SeaweedTemplate.svelte.d.ts +1 -0
  16. package/dist/template/seaweed/SeaweedTemplateData.js +0 -6
  17. package/dist/template/seaweed/entries/EntryProps.d.ts +0 -1
  18. package/dist/template/seaweed/entries/WorkExperience.svelte +106 -136
  19. package/dist/template/seaweed/entry_order_config/EntryOrderConfig.svelte +4 -4
  20. package/dist/template/seaweed/entry_order_config/EntryOrderConfig.svelte.d.ts +3 -1
  21. package/package.json +1 -1
  22. package/src/lib/components/PineappleSlideToggle.svelte +3 -1
  23. package/src/lib/components/index.ts +8 -8
  24. package/src/lib/template/seaweed/SeaweedTemplate.svelte +9 -1
  25. package/src/lib/template/seaweed/SeaweedTemplateData.ts +1 -7
  26. package/src/lib/template/seaweed/entries/EntryProps.ts +0 -1
  27. package/src/lib/template/seaweed/entries/WorkExperience.svelte +115 -145
  28. package/src/lib/template/seaweed/entry_order_config/EntryOrderConfig.svelte +5 -5
  29. package/src/lib/template/seaweed/index.ts +4 -4
  30. package/src/routes/(seaweed)/portfolio/+page.svelte +2 -0
  31. package/.svelte-kit/__package__/template/seaweed/entries/DecentralizedSocialMedia.svelte +0 -52
  32. package/.svelte-kit/__package__/template/seaweed/entries/DecentralizedSocialMedia.svelte.d.ts +0 -17
  33. package/.svelte-kit/__package__/template/seaweed/entries/FullStackC.svelte +0 -33
  34. package/.svelte-kit/__package__/template/seaweed/entries/FullStackC.svelte.d.ts +0 -17
  35. package/.svelte-kit/__package__/template/seaweed/entries/ItchPromo.svelte +0 -21
  36. package/.svelte-kit/__package__/template/seaweed/entries/ItchPromo.svelte.d.ts +0 -17
  37. package/.svelte-kit/__package__/template/seaweed/entries/MigranteAlberta.svelte +0 -54
  38. package/.svelte-kit/__package__/template/seaweed/entries/MigranteAlberta.svelte.d.ts +0 -17
  39. package/.svelte-kit/__package__/template/seaweed/entries/MockUberApp.svelte +0 -35
  40. package/.svelte-kit/__package__/template/seaweed/entries/MockUberApp.svelte.d.ts +0 -17
  41. package/dist/template/seaweed/entries/DecentralizedSocialMedia.svelte +0 -52
  42. package/dist/template/seaweed/entries/DecentralizedSocialMedia.svelte.d.ts +0 -17
  43. package/dist/template/seaweed/entries/FullStackC.svelte +0 -33
  44. package/dist/template/seaweed/entries/FullStackC.svelte.d.ts +0 -17
  45. package/dist/template/seaweed/entries/ItchPromo.svelte +0 -21
  46. package/dist/template/seaweed/entries/ItchPromo.svelte.d.ts +0 -17
  47. package/dist/template/seaweed/entries/MigranteAlberta.svelte +0 -54
  48. package/dist/template/seaweed/entries/MigranteAlberta.svelte.d.ts +0 -17
  49. package/dist/template/seaweed/entries/MockUberApp.svelte +0 -35
  50. package/dist/template/seaweed/entries/MockUberApp.svelte.d.ts +0 -17
  51. package/src/lib/template/seaweed/entries/DecentralizedSocialMedia.svelte +0 -54
  52. package/src/lib/template/seaweed/entries/FullStackC.svelte +0 -36
  53. package/src/lib/template/seaweed/entries/ItchPromo.svelte +0 -23
  54. package/src/lib/template/seaweed/entries/MigranteAlberta.svelte +0 -62
  55. package/src/lib/template/seaweed/entries/MockUberApp.svelte +0 -38
@@ -1,146 +1,116 @@
1
- <script lang="ts">
2
- import SocialSection from "$pkg/components/SocialSection.svelte";
3
- import Card from "$pkg/components/Card.svelte";
4
- import { Accordion, AccordionItem } from "@skeletonlabs/skeleton";
5
- import ElementVisibilityDetector from "$pkg/components/ElementVisbilityDetector.svelte";
6
- import type { EntryProps } from "$pkg/template/seaweed/entries/EntryProps";
7
-
8
- export let entryProps: EntryProps;
9
- export let isVisible: boolean;
10
- let { email, letChaos, linkedinSlug, name, seaweedTemplateData } = entryProps;
11
- </script>
12
-
13
- <div class="experience-and-about-div">
14
-
15
- <div class="greater-about-div">
16
-
17
- <Card includeDataNoSnippet={false}>
18
- <section class="section-card" slot="content">
19
-
20
- <h1>About</h1>
21
-
22
- <p>
23
- Hi! My name is {name}! I work as a software developer. Outside of that, I like making games, and
24
- trying to do everything in between required to make one. I have some showcased below, our visit
25
- my itch.io page for more of them.
26
- </p>
27
- <!-- todo: link the degree details idk -->
28
- <p>
29
- I also graduated with BS Computing Science, Specializing in Software Practice, and a
30
- certificate in Computer Game Development at University of Alberta.
31
- </p>
32
- {#if seaweedTemplateData?.shouldAddFunNote}
33
- <p>
34
- I'm inspired by games like Harvest Moon: Friends of Mineral Town, Rune Factory 4, Theatrhythm,
35
- Bravely Default: Flying Fairy, Boku no Natsuyasumi 2, and A Short Hike.
36
- </p>
37
- {/if}
38
-
39
- <!-- todo: maybe put cute stuff here -->
40
- <!-- </ToggleableContent>-->
41
- </section>
42
- </Card>
43
-
44
- <Card>
45
- <section class="section-card" slot="content">
46
- <SocialSection email={email} linkedinSlug={linkedinSlug}></SocialSection>
47
- <ElementVisibilityDetector bind:isVisible={isVisible}>
48
- </ElementVisibilityDetector>
49
- </section>
50
- </Card>
51
-
52
- </div>
53
-
54
- <Card>
55
- <section class="section-card" slot="content">
56
- <h1>Experience</h1>
57
-
58
- <h2>Highlight</h2>
59
- <p>Worked on Go backend microservices and Typescript React frontend app, serving <b>over 30 million daily
60
- active users</b> at Twitch (an Amazon Web Services subsidiary)</p>
61
-
62
- <h2>Software Engineer</h2>
63
- <div class="two-column-separated">
64
- <div>July 2023 January 2024</div>
65
- <div style="text-align: end">Twitch (Amazon Web Services), Remote</div>
66
- </div>
67
- <ul>
68
- <li>
69
- Contributed to
70
- <span class="qt-go">Golang</span>
71
- microservices and
72
- <span class="qt-ts">Typescript</span>
73
- <span class="qt-react">React</span> codebases, across several teams, to accommodate public-facing user safety features to better comply with EU’s Digital Services Act, which applies to no more than
74
- <a href="https://safety.twitch.tv/s/article/Digital-Services-Act-Information?language=en_US">30.5 million users</a>
75
- . Work includes feature flags, alarms, unit tests, end-to-end testing, and documentation.
76
- </li>
77
- <li>
78
- Improved observability for upcoming features by setting up new AWS resources to integrate internal data platform tools with existing alarms in our team’s microservice, utilizing
79
- <span class="qt-aws qt-observability">Cloudwatch</span>,
80
- <span class="qt-aws qt-observability">Grafana</span>,
81
- <span class="qt-aws">Kinesis Data Stream</span>,
82
- <span class="qt-aws qt-infra">AWS CDK (infrastructure as code)</span>, and
83
- <span class="qt-aws qt-cicd">CodePipeline (CI/CD)</span>
84
- </li>
85
- </ul>
86
- <br>
87
-
88
- <h2>Software Engineer Intern</h2>
89
- <div class="two-column-separated">
90
- <div>May 2022 Aug 2022</div>
91
- <div style="text-align: end">Twitch (Amazon Web Services), San Francisco</div>
92
- </div>
93
- <ul>
94
- <li>
95
- Built a <span class="qt-infra">load testing service</span> that can be configured to generate different
96
- message types at different volumes that can be easily extended to target different chat services
97
- </li>
98
- <li>
99
- Used Twitch’s set of custom tools, including Twitch’s custom RPC protocol, to create a backend
100
- service with business logic written in <span class="qt-go">Go</span> and cloud infrastructure utilizing
101
- <span
102
- class="qt-infra qt-aws">ECS on Fargate, Cloudwatch, and DynamoDB</span>
103
- , defined in <span class="qt-ts">Typescript</span>-flavored CDK
104
- </li>
105
- <li>
106
- Wrote a technical specification document for the service’s MVP and possible future features, and
107
- additional documentation on how to use the service and how to extend the load testing service to include
108
- new services to test
109
- </li>
110
- </ul>
111
- <br>
112
- <!-- todo: turn off flashing when accordion is expanded -->
113
- <Accordion>
114
- <AccordionItem>
115
- <div slot="summary">
116
- <h2 class="accordion-header">More experience</h2>
117
- </div>
118
- <svelte:fragment slot="content">
119
- <section class="more-section">
120
- {#if (!letChaos)}
121
- <h2>Software Engineer Intern</h2>
122
- <div class="two-column-separated">
123
- <div>May 2021 – Dec 2021</div>
124
- <div style="text-align: end">Twitch (Amazon Web Services), Remote</div>
125
- </div>
126
- <ul>
127
- <li>
128
- Implemented and wrote tests for a feature in Twitch’s
129
- <span class="qt-go">Golang</span> backend authentication microservices and
130
- <span class="qt-ts">Typescript</span>
131
- <span class="qt-react">React</span> frontend web app that will help suggest security improvements to
132
- <b>over 100k+ users daily</b>
133
- </li>
134
- </ul>
135
- {:else}
136
- niko baikal seal from toba aquarium
137
- {/if}
138
- <br>
139
- </section>
140
- </svelte:fragment>
141
- </AccordionItem>
142
- </Accordion>
143
- </section>
144
- </Card>
145
-
1
+ <script lang="ts">
2
+ import SocialSection from "$pkg/components/SocialSection.svelte";
3
+ import Card from "$pkg/components/Card.svelte";
4
+ import { Accordion, AccordionItem } from "@skeletonlabs/skeleton";
5
+ import ElementVisibilityDetector from "$pkg/components/ElementVisbilityDetector.svelte";
6
+ import type { EntryProps } from "$pkg/template/seaweed/entries/EntryProps";
7
+
8
+ export let entryProps: EntryProps;
9
+ export let isVisible: boolean;
10
+ let { email, letChaos, linkedinSlug, name } = entryProps;
11
+ </script>
12
+
13
+ <div class="experience-and-about-div">
14
+
15
+ <div class="greater-about-div">
16
+
17
+ <Card includeDataNoSnippet={false}>
18
+ <section class="section-card" slot="content">
19
+
20
+ <h1>About</h1>
21
+
22
+ <p>
23
+ Hi! My name is {name}! I work as a software developer. Outside of that, I like making games, and
24
+ trying to do everything in between required to make one. I have some showcased below, our visit
25
+ my itch.io page for more of them.
26
+ </p>
27
+ <!-- todo: link the degree details idk -->
28
+ <p>
29
+ I also graduated with BS Computing Science, Specializing in Software Practice, and a
30
+ certificate in Computer Game Development at University of Alberta.
31
+ </p>
32
+ {#if entryProps.seaweedTemplateData.shouldAddFunNote}
33
+ <p>
34
+ I'm inspired by games like Harvest Moon: Friends of Mineral Town, Rune Factory 4, Theatrhythm,
35
+ Bravely Default: Flying Fairy, Boku no Natsuyasumi 2, and A Short Hike.
36
+ </p>
37
+ {/if}
38
+
39
+ <!-- todo: maybe put cute stuff here -->
40
+ <!-- </ToggleableContent>-->
41
+ </section>
42
+ </Card>
43
+
44
+ <Card>
45
+ <section class="section-card" slot="content">
46
+ <SocialSection email={email} linkedinSlug={linkedinSlug}></SocialSection>
47
+ <ElementVisibilityDetector bind:isVisible={isVisible}>
48
+ </ElementVisibilityDetector>
49
+ </section>
50
+ </Card>
51
+
52
+ </div>
53
+
54
+ <Card>
55
+ <section class="section-card" slot="content">
56
+ <h1>Experience</h1>
57
+
58
+ <h2>Highlight</h2>
59
+ <p>I like French Fries</p>
60
+
61
+ <h2>Software Engineer</h2>
62
+ <div class="two-column-separated">
63
+ <div>July 2023 – January 2024</div>
64
+ <div style="text-align: end">Control, Remote</div>
65
+ </div>
66
+ <ul>
67
+ <li>
68
+ Developed things
69
+ </li>
70
+ <li>
71
+ Woah
72
+ </li>
73
+ </ul>
74
+ <br>
75
+
76
+ <h2>Software Engineer Intern</h2>
77
+ <div class="two-column-separated">
78
+ <div>May 2022 Aug 2022</div>
79
+ <div style="text-align: end">Pou Company</div>
80
+ </div>
81
+ <ul>
82
+ <li>
83
+ Stuff
84
+ </li>
85
+ <li>
86
+ Golang
87
+ </li>
88
+ </ul>
89
+ <br>
90
+ <!-- todo: turn off flashing when accordion is expanded -->
91
+ <Accordion>
92
+ <AccordionItem>
93
+ <div slot="summary">
94
+ <h2 class="accordion-header">More experience</h2>
95
+ </div>
96
+ <svelte:fragment slot="content">
97
+ <section class="more-section">
98
+ <h2>Software Engineer Intern</h2>
99
+ <div class="two-column-separated">
100
+ <div>May 2021 Dec 2021</div>
101
+ <div style="text-align: end">Testing</div>
102
+ </div>
103
+ <ul>
104
+ <li>
105
+ Amazing
106
+ </li>
107
+ </ul>
108
+ <br>
109
+ </section>
110
+ </svelte:fragment>
111
+ </AccordionItem>
112
+ </Accordion>
113
+ </section>
114
+ </Card>
115
+
146
116
  </div>
@@ -2,9 +2,7 @@
2
2
  import {
3
3
  type ComponentMeta,
4
4
  type EntryGroup,
5
- GetAllEntryFromGlobal,
6
- GetEntryFromGlobal,
7
- type SeaweedTemplateData,
5
+ type SeaweedTemplateData
8
6
  } from "$pkg/template/seaweed/SeaweedTemplateData";
9
7
  import { removeProxyWrapperOnString } from "./EntryOrderConfig";
10
8
  import ComboBoxWithButton from "$pkg/components/combo_box/ComboBoxWithButton.svelte";
@@ -16,6 +14,8 @@
16
14
  export let seaweedEntries: EntryGroup[];
17
15
  export let orderUrl: string;
18
16
  export let updateUrl: (data: SeaweedTemplateData) => void;
17
+ export let getAllEntryFromGlobal: () => Map<string, ComponentMeta>;
18
+ export let getEntryFromGlobal: (s: string) => ComponentMeta | undefined;
19
19
 
20
20
  const updateOrderQuery = () => {
21
21
  orderUrl = "order=" + seaweedEntries.map(g => {
@@ -29,7 +29,7 @@
29
29
 
30
30
  const addEntry = (group: EntryGroup): ((selected: string) => void) => {
31
31
  return (selected: string) => {
32
- const c = GetEntryFromGlobal(selected);
32
+ const c = getEntryFromGlobal(selected);
33
33
  if (c) {
34
34
  group.items.push(c);
35
35
  seaweedEntries = seaweedEntries;
@@ -111,7 +111,7 @@
111
111
  };
112
112
  };
113
113
 
114
- const allDefaultEntries = Array.from(GetAllEntryFromGlobal().keys());
114
+ const allDefaultEntries = Array.from(getAllEntryFromGlobal().keys());
115
115
  </script>
116
116
 
117
117
  <br>
@@ -1,4 +1,4 @@
1
- export { default as SeaweedTemplate } from "./SeaweedTemplate.svelte";
2
- export * from "./SeaweedTemplateData";
3
- export * from "./SeaweedTemplateData";
4
- export * from "./entries/EntryProps";
1
+ export { default as SeaweedTemplate } from "./SeaweedTemplate.svelte";
2
+ export * from "./SeaweedTemplateData";
3
+ export * from "./SeaweedTemplateData";
4
+ export * from "./entries/EntryProps";
@@ -2,6 +2,7 @@
2
2
  import SeaweedTemplate from "$pkg/template/seaweed/SeaweedTemplate.svelte";
3
3
  import {
4
4
  AllGroupedEntriesProjectFirst,
5
+ GetAllEntryFromGlobal,
5
6
  GetEntryFromGlobal,
6
7
  seaweedTemplateData
7
8
  } from "$pkg/template/seaweed/SeaweedTemplateData";
@@ -10,6 +11,7 @@
10
11
 
11
12
  <!--todo: maybe add check that this is always false? -->
12
13
  <SeaweedTemplate
14
+ getAllEntryFromGlobal={GetAllEntryFromGlobal}
13
15
  seaweedTemplateData={seaweedTemplateData}
14
16
  projectFirstGroupedEntries={AllGroupedEntriesProjectFirst}
15
17
  getEntryFromGlobal={GetEntryFromGlobal}
@@ -1,52 +0,0 @@
1
- <script>import {} from "./EntryProps";
2
- import Card from "../../../components/Card.svelte";
3
- import GithubIcon from "../../../assets/icons/github-mark.svg";
4
- export let props;
5
- </script>
6
-
7
- <Card>
8
- <section class="project-card" slot="content">
9
- <div class="project-card-body">
10
-
11
- <h2>Decentralized social media</h2>
12
-
13
- <p>We made a full stack decentralized social media app made with <span class="qt-react">React</span> +
14
- <span class="qt-js">Javascript</span> for the client code, <span class="qt-django">Django</span> + <span
15
- class="qt-python">Python</span> for the backend code, and <span class="qt-heroku">Heroku</span> for
16
- deployment. This project was made
17
- for
18
- our Web Applications and Architecture class.</p>
19
- <p>The application can connect with three other decentralized social media app in the same class:
20
- </p>
21
- <ul>
22
- <li>
23
- <a href="https://github.com/hgshah/cmput404-project/blob/main/docs/testing_other_teams.md#team-14"
24
- target="_blank">Also
25
- a social media with the same Django + Python backend server where they act on behalf of
26
- our users interacting with theirs</a></li>
27
- <li>
28
- <a href="https://github.com/hgshah/cmput404-project/blob/main/docs/testing_other_teams.md#team-7"
29
- target="_blank">A
30
- social media that uses Fast API + Python for their backend server</a></li>
31
- <li>
32
- <a href="https://github.com/hgshah/cmput404-project/blob/main/docs/testing_other_teams.md#team-12"
33
- target="_blank">Another
34
- social media that has Django + Python for their backend but we have to act on behalf of
35
- our
36
- users interacting with their users</a>
37
- </li>
38
- </ul>
39
-
40
- <!-- todo: add tags with Javascript, React, Python, Django, Heroku -->
41
-
42
- <section class="game-link-section">
43
- <button type="button" class="game-button turnip-button"
44
- role="link"
45
- title="https://github.com/hgshah/cmput404-project"
46
- on:click={() => window.open("https://github.com/hgshah/cmput404-project")}>
47
- <img src={GithubIcon} alt="github icon">
48
- </button>
49
- </section>
50
- </div>
51
- </section>
52
- </Card>
@@ -1,17 +0,0 @@
1
- import { SvelteComponent } from "svelte";
2
- import { type EntryProps } from "./EntryProps";
3
- declare const __propDef: {
4
- props: {
5
- props: EntryProps;
6
- };
7
- events: {
8
- [evt: string]: CustomEvent<any>;
9
- };
10
- slots: {};
11
- };
12
- export type DecentralizedSocialMediaProps = typeof __propDef.props;
13
- export type DecentralizedSocialMediaEvents = typeof __propDef.events;
14
- export type DecentralizedSocialMediaSlots = typeof __propDef.slots;
15
- export default class DecentralizedSocialMedia extends SvelteComponent<DecentralizedSocialMediaProps, DecentralizedSocialMediaEvents, DecentralizedSocialMediaSlots> {
16
- }
17
- export {};
@@ -1,33 +0,0 @@
1
- <script>import {} from "./EntryProps";
2
- import Card from "../../../components/Card.svelte";
3
- import GithubIcon from "../../../assets/icons/github-mark.svg";
4
- export let props;
5
- </script>
6
-
7
- <Card>
8
- <section class="project-card" slot="content">
9
- <div class="project-card-body">
10
- <h2>Full-stack <span class="qt-c">C</span> app</h2>
11
-
12
- <p>
13
- A terminal-based app consisting of a server observing several terminal apps all concurrently
14
- sending updates to the server, which then broadcasts these information concurrently to all the
15
- other terminal apps connected.
16
- </p>
17
- <p>
18
- The project involves <span class="qt-foundation">multiprocessing</span> programming featuring pthreads and
19
- mutexes, and <span class="qt-foundation">networking</span> via sockets.
20
- </p>
21
-
22
- <section class="game-link-section">
23
- <button type="button" class="game-button turnip-button"
24
- role="link"
25
- title="https://github.com/TurnipXenon/C380-1Code/blob/main/Assignment02/DESIGN.md"
26
- on:click={() => window.open("https://github.com/TurnipXenon/C380-1Code/blob/main/Assignment02/DESIGN.md")}>
27
- <img src={GithubIcon} class="long-btn-image" alt="github icon">
28
- </button>
29
- </section>
30
- </div>
31
- </section>
32
- </Card>
33
-
@@ -1,17 +0,0 @@
1
- import { SvelteComponent } from "svelte";
2
- import { type EntryProps } from "./EntryProps";
3
- declare const __propDef: {
4
- props: {
5
- props: EntryProps;
6
- };
7
- events: {
8
- [evt: string]: CustomEvent<any>;
9
- };
10
- slots: {};
11
- };
12
- export type FullStackCProps = typeof __propDef.props;
13
- export type FullStackCEvents = typeof __propDef.events;
14
- export type FullStackCSlots = typeof __propDef.slots;
15
- export default class FullStackC extends SvelteComponent<FullStackCProps, FullStackCEvents, FullStackCSlots> {
16
- }
17
- export {};
@@ -1,21 +0,0 @@
1
- <script>import {} from "./EntryProps";
2
- import { ItchLogoHotLink } from "../../../consts";
3
- import Card from "../../../components/Card.svelte";
4
- export let props;
5
- </script>
6
- <Card overrideStyle="align-self: flex-start;">
7
- <section class="game-card itch-promo" slot="content">
8
- <h1 class="mb-12 text-center">Check out my itch.io page for more games</h1>
9
-
10
- <section class="game-link-section">
11
- <button type="button" class="btn variant-filled-primary turnip-button"
12
- role="link"
13
- title="https://turnipxenon.itch.io/"
14
- on:click={() => window.open("https://turnipxenon.itch.io/")}>
15
- <img src={ItchLogoHotLink} class="long-btn-image" alt="itch icon">
16
- <span>TurnipXenon</span>
17
- </button>
18
- </section>
19
-
20
- </section>
21
- </Card>
@@ -1,17 +0,0 @@
1
- import { SvelteComponent } from "svelte";
2
- import { type EntryProps } from "./EntryProps";
3
- declare const __propDef: {
4
- props: {
5
- props: EntryProps;
6
- };
7
- events: {
8
- [evt: string]: CustomEvent<any>;
9
- };
10
- slots: {};
11
- };
12
- export type ItchPromoProps = typeof __propDef.props;
13
- export type ItchPromoEvents = typeof __propDef.events;
14
- export type ItchPromoSlots = typeof __propDef.slots;
15
- export default class ItchPromo extends SvelteComponent<ItchPromoProps, ItchPromoEvents, ItchPromoSlots> {
16
- }
17
- export {};
@@ -1,54 +0,0 @@
1
- <script>import { Chip } from "../../..";
2
- import {} from "./EntryProps";
3
- import LinkIcon from "../../../assets/icons/link-icon.svg";
4
- import Card from "../../../components/Card.svelte";
5
- import { getModalStore } from "@skeletonlabs/skeleton";
6
- export let props;
7
- const modalStore = getModalStore();
8
- const cmput401Info = {
9
- type: "confirm",
10
- title: "Information",
11
- body: `As a full disclosure, this link will lead you to <a href='https://cmput401.ca/projects/e5b13586-09c7-4ddd-baf6-fdb078d23398' target='_blank'>https://cmput401.ca/projects/e5b13586-09c7-4ddd-baf6-fdb078d23398</a>. We currently don't have any tests yet ensuring that the link is correct. Click confirm to go to the site. Please report any bugs at <a href='mailto:${props.email}' target='_blank'>${props.email}</a>.`,
12
- response: (r) => {
13
- if (r) {
14
- window.open("https://cmput401.ca/projects/e5b13586-09c7-4ddd-baf6-fdb078d23398");
15
- }
16
- }
17
- };
18
- </script>
19
- <Card>
20
- <section class="project-card" slot="content">
21
- <iframe id="migrante-alberta"
22
- width="560" height="315" src="https://www.youtube.com/embed/ZemWwf8jh8E?si=RZwSfYHI-0Ael-RE"
23
- title="YouTube video player" style="border: none"
24
- allowfullscreen></iframe>
25
- <div class="project-card-body">
26
- <!-- todo: add regression to see if page is gone: https://cmput401.ca/api/projects/e5b13586-09c7-4ddd-baf6-fdb078d23398 -->
27
-
28
- <h2>Migrante Alberta</h2>
29
- <p>We developed a mobile-first cross-platform application to be used by the Canadian-based
30
- Filipino non-profit advocacy group, Migrante Alberta, to help new immigrants navigate
31
- through local services and events
32
- </p>
33
- <p>
34
- <Chip>Flutter</Chip>
35
- <Chip>Dart</Chip>
36
- <Chip>Python</Chip>
37
- <Chip>Django</Chip>
38
- <Chip>Heroku</Chip>
39
- <Chip>Android</Chip>
40
- <Chip>Postgresql</Chip>
41
- </p>
42
-
43
- <section class="game-link-section">
44
- <button type="button" class="btn variant-filled-primary turnip-button"
45
- title="https://selk.io/birb-project/trunk/"
46
- on:click={() => modalStore.trigger(cmput401Info)}>
47
- <img src={LinkIcon} class="long-btn-image" alt="itch icon">
48
- <span>cmput401.ca</span>
49
- </button>
50
- </section>
51
-
52
- </div>
53
- </section>
54
- </Card>
@@ -1,17 +0,0 @@
1
- import { SvelteComponent } from "svelte";
2
- import { type EntryProps } from "./EntryProps";
3
- declare const __propDef: {
4
- props: {
5
- props: EntryProps;
6
- };
7
- events: {
8
- [evt: string]: CustomEvent<any>;
9
- };
10
- slots: {};
11
- };
12
- export type MigranteAlbertaProps = typeof __propDef.props;
13
- export type MigranteAlbertaEvents = typeof __propDef.events;
14
- export type MigranteAlbertaSlots = typeof __propDef.slots;
15
- export default class MigranteAlberta extends SvelteComponent<MigranteAlbertaProps, MigranteAlbertaEvents, MigranteAlbertaSlots> {
16
- }
17
- export {};
@@ -1,35 +0,0 @@
1
- <script>import {} from "./EntryProps";
2
- import Card from "../../../components/Card.svelte";
3
- import GithubIcon from "../../../assets/icons/github-mark.svg";
4
- export let props;
5
- </script>
6
-
7
- <Card>
8
- <section class="project-card" slot="content">
9
- <div class="project-card-body">
10
- <h2>Mock Uber App</h2>
11
-
12
- <p>A course project app meant to emulate how Uber works by playing with <span
13
- class="qt-google">Google Maps API</span>.
14
- </p>
15
- <p>
16
- I implemented all interfaces related to the NoSQL cloud database <span
17
- class="qt-firebase qt-google qt-infra">Firebase</span>, making writing code easier for other programmers
18
- (<span
19
- class="qt-android">Android</span> / <span class="qt-java">Java</span>). I also wrote documentation to said
20
- code and added instrumented tests that are tested by the continuous integration tool <span
21
- class="qt-infra">Travis CI</span>, ensuring that our code is tested
22
- </p>
23
-
24
- <section class="game-link-section">
25
- <!-- todo: mock uber app find link -->
26
- <button type="button" class="game-button turnip-button"
27
- role="link"
28
- title="https://github.com/CMPUT301W20T10/UberApp"
29
- on:click={() => window.open("https://github.com/CMPUT301W20T10/UberApp")}>
30
- <img src={GithubIcon} class="long-btn-image" alt="github icon">
31
- </button>
32
- </section>
33
- </div>
34
- </section>
35
- </Card>
@@ -1,17 +0,0 @@
1
- import { SvelteComponent } from "svelte";
2
- import { type EntryProps } from "./EntryProps";
3
- declare const __propDef: {
4
- props: {
5
- props: EntryProps;
6
- };
7
- events: {
8
- [evt: string]: CustomEvent<any>;
9
- };
10
- slots: {};
11
- };
12
- export type MockUberAppProps = typeof __propDef.props;
13
- export type MockUberAppEvents = typeof __propDef.events;
14
- export type MockUberAppSlots = typeof __propDef.slots;
15
- export default class MockUberApp extends SvelteComponent<MockUberAppProps, MockUberAppEvents, MockUberAppSlots> {
16
- }
17
- export {};