@turnipxenon/pineapple 5.3.9 → 5.3.11

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 (205) hide show
  1. package/dist/components/dialog_manager/DialogManager.d.ts.map +1 -1
  2. package/dist/components/dialog_manager/DialogManager.js +5 -8
  3. package/dist/components/dialog_manager/DialogManagerStore.d.ts +1 -1
  4. package/dist/components/dialog_manager/DialogProcessor.d.ts.map +1 -1
  5. package/dist/components/dialog_manager/DialogProcessor.js +2 -0
  6. package/dist/components/dialog_manager/IDialogManager.d.ts +1 -1
  7. package/dist/components/dialog_manager/IDialogManager.d.ts.map +1 -1
  8. package/dist/components/dialog_manager/behavior_tree/core/SelectorNode.d.ts.map +1 -1
  9. package/dist/components/dialog_manager/behavior_tree/expression/ExpressionEvaluator.d.ts.map +1 -1
  10. package/dist/components/dialog_manager/behavior_tree/expression/ExpressionEvaluator.js +1 -1
  11. package/dist/components/dialog_manager/behavior_tree/line_processors/commands/ForceVisitCommand.d.ts +10 -0
  12. package/dist/components/dialog_manager/behavior_tree/line_processors/commands/ForceVisitCommand.d.ts.map +1 -0
  13. package/dist/components/dialog_manager/behavior_tree/line_processors/commands/ForceVisitCommand.js +29 -0
  14. package/dist/components/dialog_manager/behavior_tree/line_processors/commands/JumpCommand.d.ts.map +1 -1
  15. package/dist/components/reveal-info/RevealInfo.svelte +17 -18
  16. package/dist/components/reveal-info/RevealInfo.svelte.d.ts +2 -2
  17. package/dist/components/reveal-info/RevealInfo.svelte.d.ts.map +1 -1
  18. package/dist/components/reveal-info/RevealInfoRune.svelte.d.ts.map +1 -1
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/modules/overrideable_meta/OverridableMeta.svelte +1 -1
  21. package/dist/modules/parsnip/ParsnipBlockChildren.svelte +66 -55
  22. package/dist/modules/parsnip/ParsnipBlockChildren.svelte.d.ts.map +1 -1
  23. package/dist/modules/parsnip/ParsnipEmbedWikilink.svelte +30 -30
  24. package/dist/modules/parsnip/ParsnipEmbedWikilink.svelte.d.ts +1 -1
  25. package/dist/modules/parsnip/ParsnipEmbedWikilink.svelte.d.ts.map +1 -1
  26. package/dist/modules/parsnip/ParsnipHeading.svelte +6 -6
  27. package/dist/modules/parsnip/ParsnipList.svelte +24 -24
  28. package/dist/modules/parsnip/ParsnipOverall.d.ts.map +1 -1
  29. package/dist/modules/parsnip/ParsnipPhrasingChildren.svelte +15 -17
  30. package/dist/modules/parsnip/ParsnipPhrasingChildren.svelte.d.ts.map +1 -1
  31. package/dist/modules/parsnip/ParsnipWikilink.svelte +22 -20
  32. package/dist/modules/parsnip/ParsnipWikilink.svelte.d.ts.map +1 -1
  33. package/dist/modules/parsnip/external-images/ParsnipImage.svelte +133 -114
  34. package/dist/modules/parsnip/external-images/ParsnipImage.svelte.d.ts.map +1 -1
  35. package/dist/modules/parsnip/external-images/ParsnipImageCollection.svelte +64 -63
  36. package/dist/modules/parsnip/external-images/ParsnipImageCollection.svelte.d.ts.map +1 -1
  37. package/dist/modules/parsnip/external-images/externalImages.remote.d.ts.map +1 -1
  38. package/dist/modules/parsnip/external-images/externalImages.remote.js +17 -13
  39. package/dist/modules/parsnip/route-util/ParsnipBlog.svelte +1 -2
  40. package/dist/modules/parsnip/route-util/ParsnipBlog.svelte.d.ts.map +1 -1
  41. package/dist/modules/parsnip/route-util/getSlugEntries.js +1 -1
  42. package/dist/modules/parsnip/route-util/menuPageServerLoad.js +4 -4
  43. package/dist/modules/parsnip/route-util/slugPageServerLoad.d.ts.map +1 -1
  44. package/dist/modules/parsnip/route-util/slugPageServerLoad.js +15 -15
  45. package/dist/scripts/pineapple_fiber/PineappleFiberParser.d.ts.map +1 -1
  46. package/dist/scripts/pineapple_fiber/PineappleFiberParser.js +5 -3
  47. package/dist/styles/app.css +87 -84
  48. package/dist/styles/color-tokens.css +20 -20
  49. package/dist/styles/surface-colors.scss +28 -29
  50. package/dist/styles/tailwind.css +3196 -3111
  51. package/dist/styles/turnip-theme.css +262 -245
  52. package/dist/svelteIndex.svelte.d.ts.map +1 -1
  53. package/dist/svelteIndex.svelte.js +1 -7
  54. package/dist/test/DialogTestUtility.d.ts.map +1 -1
  55. package/dist/test/DialogTestUtility.js +4 -4
  56. package/dist/theme.css +109 -109
  57. package/dist/types/pineapple_fiber/DialogVariableStore.d.ts.map +1 -1
  58. package/dist/types/pineapple_fiber/DialogVariableStore.js +0 -1
  59. package/dist/ui/components/FourPartCard.svelte +20 -28
  60. package/dist/ui/components/FourPartCard.svelte.d.ts.map +1 -1
  61. package/dist/ui/components/MeltToaster/MeltToaster.svelte +6 -5
  62. package/dist/ui/components/MeltToaster/MeltToaster.svelte.d.ts.map +1 -1
  63. package/dist/ui/components/ModalBase.svelte +39 -43
  64. package/dist/ui/components/ModalBase.svelte.d.ts +2 -2
  65. package/dist/ui/components/ModalBase.svelte.d.ts.map +1 -1
  66. package/dist/ui/components/NestedNavigation.svelte +22 -19
  67. package/dist/ui/components/NestedNavigation.svelte.d.ts +1 -1
  68. package/dist/ui/components/NestedNavigation.svelte.d.ts.map +1 -1
  69. package/dist/ui/components/SocialSection.svelte +30 -25
  70. package/dist/ui/components/SocialSection.svelte.d.ts.map +1 -1
  71. package/dist/ui/components/SortDropdown.svelte +8 -12
  72. package/dist/ui/components/SortDropdown.svelte.d.ts.map +1 -1
  73. package/dist/ui/components/TagFilter.svelte +9 -9
  74. package/dist/ui/components/accordion/PinyaAccordion.svelte +45 -43
  75. package/dist/ui/components/accordion/PinyaAccordion.svelte.d.ts.map +1 -1
  76. package/dist/ui/components/accordion/PinyaAccordionItem.svelte +19 -10
  77. package/dist/ui/components/accordion/PinyaAccordionItem.svelte.d.ts.map +1 -1
  78. package/dist/ui/components/project-date-badge/ProjectDateBadge.svelte +88 -80
  79. package/dist/ui/components/project-date-badge/ProjectDateBadge.svelte.d.ts.map +1 -1
  80. package/dist/ui/components/randomized-background/RandomizedBackground.svelte +37 -33
  81. package/dist/ui/components/randomized-background/RandomizedBackground.svelte.d.ts.map +1 -1
  82. package/dist/ui/components/randomized-background/RandomizedImage.svelte +25 -21
  83. package/dist/ui/components/randomized-background/RandomizedImage.svelte.d.ts.map +1 -1
  84. package/dist/ui/components/randomized-background/getSocialSection.remote.js +1 -1
  85. package/dist/ui/elements/CodeBlock/CodeBlock.svelte +163 -165
  86. package/dist/ui/elements/CodeBlock/CodeBlock.svelte.d.ts.map +1 -1
  87. package/dist/ui/elements/CodeBlock/CodeBlockProps.d.ts +1 -1
  88. package/dist/ui/elements/CodeBlock/CodeBlockProps.d.ts.map +1 -1
  89. package/dist/ui/elements/ColorScheme.d.ts.map +1 -1
  90. package/dist/ui/elements/ElementVisibilityDetector.svelte +1 -4
  91. package/dist/ui/elements/ElementVisibilityDetector.svelte.d.ts.map +1 -1
  92. package/dist/ui/elements/GeneralUIProps.d.ts +2 -2
  93. package/dist/ui/elements/ImageIcon.svelte +27 -30
  94. package/dist/ui/elements/ImageIcon.svelte.d.ts +1 -1
  95. package/dist/ui/elements/ImageIcon.svelte.d.ts.map +1 -1
  96. package/dist/ui/elements/PineappleSwitch.svelte +53 -53
  97. package/dist/ui/elements/PineappleSwitch.svelte.d.ts +1 -1
  98. package/dist/ui/elements/PineappleSwitch.svelte.d.ts.map +1 -1
  99. package/dist/ui/elements/PinyaAnchorButton/PinyaAnchorButton.svelte +4 -5
  100. package/dist/ui/elements/PinyaAnchorButton/PinyaAnchorButton.svelte.d.ts.map +1 -1
  101. package/dist/ui/elements/PinyaAnchorButton/PinyaAnchorButtonProps.d.ts.map +1 -1
  102. package/dist/ui/elements/PinyaButton/PinyaButton.svelte +4 -5
  103. package/dist/ui/elements/PinyaButton/PinyaButton.svelte.d.ts.map +1 -1
  104. package/dist/ui/elements/PinyaButton/PinyaButtonProps.d.ts.map +1 -1
  105. package/dist/ui/elements/PinyaButton/index.d.ts +2 -2
  106. package/dist/ui/elements/PinyaButton/index.js +2 -2
  107. package/dist/ui/elements/PinyaButtonCommon/ButtonVariant.d.ts.map +1 -1
  108. package/dist/ui/elements/PinyaButtonCommon/PinyaButtonCommonProps.d.ts.map +1 -1
  109. package/dist/ui/elements/PinyaButtonCommon/createButtonClass.d.ts.map +1 -1
  110. package/dist/ui/elements/PinyaButtonCommon/createButtonClass.js +1 -1
  111. package/dist/ui/elements/PinyaCard/PinyaCard.svelte +3 -10
  112. package/dist/ui/elements/PinyaCard/PinyaCardProps.d.ts.map +1 -1
  113. package/dist/ui/elements/Placeholder.svelte +3 -3
  114. package/dist/ui/elements/TextChip/TextChip.svelte +8 -6
  115. package/dist/ui/elements/TextLink.svelte +46 -48
  116. package/dist/ui/elements/TextLink.svelte.d.ts.map +1 -1
  117. package/dist/ui/elements/WrapperProps.d.ts +1 -1
  118. package/dist/ui/elements/index.d.ts.map +1 -1
  119. package/dist/ui/elements/pinya-combobox/PinyaCombobox.svelte +80 -55
  120. package/dist/ui/elements/pinya-combobox/PinyaCombobox.svelte.d.ts.map +1 -1
  121. package/dist/ui/elements/pinya-combobox/PinyaComboboxProps.d.ts.map +1 -1
  122. package/dist/ui/modules/NavigationMenu/LdSchema.d.ts.map +1 -1
  123. package/dist/ui/modules/NavigationMenu/LdSchema.js +4 -2
  124. package/dist/ui/modules/NavigationMenu/NavigationControl.svelte +18 -13
  125. package/dist/ui/modules/NavigationMenu/NavigationControl.svelte.d.ts.map +1 -1
  126. package/dist/ui/modules/NavigationMenu/NavigationMenu.svelte +234 -212
  127. package/dist/ui/modules/NavigationMenu/NavigationMenu.svelte.d.ts.map +1 -1
  128. package/dist/ui/modules/NavigationMenu/PageMeta.d.ts +1 -1
  129. package/dist/ui/modules/NavigationMenu/PageMeta.d.ts.map +1 -1
  130. package/dist/ui/modules/NavigationMenu/PageMeta.js +15 -11
  131. package/dist/ui/modules/experience/ExampleJob1.svelte +26 -28
  132. package/dist/ui/modules/experience/ExampleJob1.svelte.d.ts.map +1 -1
  133. package/dist/ui/modules/experience/ExampleJob2.svelte +4 -3
  134. package/dist/ui/modules/experience/ExampleJob2.svelte.d.ts.map +1 -1
  135. package/dist/ui/modules/experience/index.d.ts +2 -2
  136. package/dist/ui/modules/experience/index.js +2 -2
  137. package/dist/ui/modules/modals/general-settings/GeneralSettingsModal.svelte +9 -7
  138. package/dist/ui/modules/modals/general-settings/GeneralSettingsModal.svelte.d.ts.map +1 -1
  139. package/dist/ui/modules/modals/general-settings/LanguagePicker.svelte +1 -1
  140. package/dist/ui/modules/modals/general-settings/NavigationModal.svelte +11 -8
  141. package/dist/ui/modules/modals/general-settings/NavigationModal.svelte.d.ts.map +1 -1
  142. package/dist/ui/modules/projects/Hepcat.svelte +31 -29
  143. package/dist/ui/modules/projects/Hepcat.svelte.d.ts.map +1 -1
  144. package/dist/ui/modules/projects/ObsidianPublisher.svelte +16 -11
  145. package/dist/ui/modules/projects/ObsidianPublisher.svelte.d.ts.map +1 -1
  146. package/dist/ui/modules/projects/Pengi.svelte +21 -17
  147. package/dist/ui/modules/projects/Pengi.svelte.d.ts.map +1 -1
  148. package/dist/ui/modules/projects/Soulwork.svelte +18 -16
  149. package/dist/ui/modules/projects/Soulwork.svelte.d.ts.map +1 -1
  150. package/dist/ui/modules/projects/ThisWebpage.svelte +29 -19
  151. package/dist/ui/modules/projects/ThisWebpage.svelte.d.ts.map +1 -1
  152. package/dist/ui/modules/universal-overlay/DialogPanel.svelte +40 -38
  153. package/dist/ui/modules/universal-overlay/DialogPanel.svelte.d.ts.map +1 -1
  154. package/dist/ui/modules/universal-overlay/SettingsPanel.svelte +1 -2
  155. package/dist/ui/modules/universal-overlay/SettingsPanel.svelte.d.ts.map +1 -1
  156. package/dist/ui/modules/universal-overlay/UniversalOverlay.svelte +12 -6
  157. package/dist/ui/modules/universal-overlay/UniversalOverlay.svelte.d.ts.map +1 -1
  158. package/dist/ui/templates/PinyaPageLayout/PinyaPageLayout.svelte +99 -94
  159. package/dist/ui/templates/PinyaPageLayout/PinyaPageLayout.svelte.d.ts.map +1 -1
  160. package/dist/ui/templates/PinyaPageLayout/pinyaPageLayoutRunes.svelte.d.ts +1 -1
  161. package/dist/ui/templates/PinyaPageLayout/pinyaPageLayoutRunes.svelte.js +2 -2
  162. package/dist/ui/templates/SeaweedLayout/ChumBucket.svelte +51 -43
  163. package/dist/ui/templates/SeaweedLayout/ChumBucket.svelte.d.ts.map +1 -1
  164. package/dist/ui/templates/SeaweedLayout/CreateUrlForm.svelte +45 -32
  165. package/dist/ui/templates/SeaweedLayout/CreateUrlForm.svelte.d.ts.map +1 -1
  166. package/dist/ui/templates/SeaweedLayout/EntryGroup.svelte +106 -102
  167. package/dist/ui/templates/SeaweedLayout/EntryGroup.svelte.d.ts.map +1 -1
  168. package/dist/ui/templates/SeaweedLayout/EntryOrderConfig.svelte +11 -19
  169. package/dist/ui/templates/SeaweedLayout/EntryOrderConfig.svelte.d.ts.map +1 -1
  170. package/dist/ui/templates/SeaweedLayout/ProjectComponentProps.d.ts +1 -1
  171. package/dist/ui/templates/SeaweedLayout/ProjectGroupConfig.svelte +139 -121
  172. package/dist/ui/templates/SeaweedLayout/ProjectGroupConfig.svelte.d.ts.map +1 -1
  173. package/dist/ui/templates/SeaweedLayout/SeaweedLayout.svelte +139 -148
  174. package/dist/ui/templates/SeaweedLayout/index.d.ts.map +1 -1
  175. package/dist/ui/templates/SeaweedLayout/props.js +1 -1
  176. package/dist/ui/templates/blog_template/BlogTemplate.svelte +11 -11
  177. package/dist/ui/templates/blog_template/BlogTemplateInner.svelte +58 -56
  178. package/dist/ui/templates/blog_template/BlogTemplateInner.svelte.d.ts.map +1 -1
  179. package/dist/ui/templates/blog_template/blog-template.css +1 -1
  180. package/dist/ui/templates/confirmation-modal/component.svelte +12 -17
  181. package/dist/ui/templates/confirmation-modal/component.svelte.d.ts +1 -1
  182. package/dist/ui/templates/confirmation-modal/component.svelte.d.ts.map +1 -1
  183. package/dist/ui/templates/confirmation-modal/props.d.ts +2 -2
  184. package/dist/ui/templates/confirmation-modal/props.d.ts.map +1 -1
  185. package/dist/ui/templates/pinya-base/PinyaBase.svelte +57 -47
  186. package/dist/ui/templates/pinya-base/PinyaBase.svelte.d.ts.map +1 -1
  187. package/dist/ui/templates/pinya-base/menuPageServerLoadRemote.remote.svelte +1 -1
  188. package/dist/ui/templates/pinya-base/pinyaBaseRunes.svelte.d.ts.map +1 -1
  189. package/dist/util/context/PineappleBaseContext.svelte +1 -1
  190. package/dist/util/context/pineappleBaseContextDefinitions.svelte.d.ts.map +1 -1
  191. package/dist/util/env-getter.d.ts.map +1 -1
  192. package/dist/util/env-getter.js +3 -3
  193. package/dist/util/getCommitDate.d.ts.map +1 -1
  194. package/dist/util/getCommitDate.js +3 -1
  195. package/dist/util/getCommitDate.remote.d.ts.map +1 -1
  196. package/dist/util/getCommitDate.remote.js +3 -1
  197. package/dist/util/getParsnipData.remote.d.ts +16 -11
  198. package/dist/util/localStore.svelte.d.ts.map +1 -1
  199. package/dist/util/localStore.svelte.js +5 -5
  200. package/dist/util/util.d.ts.map +1 -1
  201. package/dist/util/util.js +5 -5
  202. package/package.json +5 -5
  203. package/src/lib/styles/app.css +87 -84
  204. package/src/lib/theme.css +109 -109
  205. package/dist/scripts/pineapple_fiber/TutorialBroken.yarn +0 -143
@@ -8,12 +8,15 @@
8
8
  let hasTriedGettingChumBucket = $state(false);
9
9
  let pageMetaList: PageMeta[] = $state([]);
10
10
  const loadPageMeta = async () => {
11
- fetch("/api/get-latest-blogs").then(resp => resp.json()).then(json => {
12
- pageMetaList = json as PageMeta[];
13
- hasTriedGettingChumBucket = true;
14
- }).catch(_ => {
15
- hasTriedGettingChumBucket = true;
16
- });
11
+ fetch("/api/get-latest-blogs")
12
+ .then((resp) => resp.json())
13
+ .then((json) => {
14
+ pageMetaList = json as PageMeta[];
15
+ hasTriedGettingChumBucket = true;
16
+ })
17
+ .catch((_) => {
18
+ hasTriedGettingChumBucket = true;
19
+ });
17
20
  };
18
21
 
19
22
  onMount(() => {
@@ -23,9 +26,12 @@
23
26
 
24
27
  <div class="chum-bucket">
25
28
  <h2 class="text-start">More about me...</h2>
26
- <p>Check out the latest things I've been rambling about at
29
+ <p>
30
+ Check out the latest things I've been rambling about at
27
31
  <a href="https://turnipxenon.com" target="_blank" rel="external">turnipxenon.com</a> or at
28
- <a href="https://turnipxenon.com/blogs/coding-chagrin" target="_blank" rel="external">turnipxenon.com/blogs/coding-chagrin.</a>
32
+ <a href="https://turnipxenon.com/blogs/coding-chagrin" target="_blank" rel="external"
33
+ >turnipxenon.com/blogs/coding-chagrin.</a
34
+ >
29
35
  </p>
30
36
 
31
37
  <div class="chum-bucket-grid">
@@ -33,24 +39,26 @@
33
39
  {#each pageMetaList as pageMeta (pageMeta.title)}
34
40
  <div class="chum-bucket-item">
35
41
  {#if pageMeta.imageUrl}
36
- <img src={
37
- pageMeta.imageUrl.includes('https://')
38
- ? pageMeta.imageUrl
39
- : `https://turnipxenon.com${pageMeta.imageUrl}`}
40
- class="chum-bucket-image"
41
- alt={pageMeta.imageAlt}>
42
+ <img
43
+ src={pageMeta.imageUrl.includes("https://")
44
+ ? pageMeta.imageUrl
45
+ : `https://turnipxenon.com${pageMeta.imageUrl}`}
46
+ class="chum-bucket-image"
47
+ alt={pageMeta.imageAlt}
48
+ />
42
49
  {/if}
43
50
  <div>
44
51
  <h3 class="text-start">
45
52
  <a
46
53
  rel="external"
47
54
  target="_blank"
48
- href={
49
- pageMeta.relativeLink.includes('https://')
50
- ? pageMeta.relativeLink
51
- : `https://turnipxenon.com/${pageMeta.relativeLink}`}>{pageMeta.title}</a>
55
+ href={pageMeta.relativeLink.includes("https://")
56
+ ? pageMeta.relativeLink
57
+ : `https://turnipxenon.com/${pageMeta.relativeLink}`}>{pageMeta.title}</a
58
+ >
52
59
  </h3>
53
- <p>Published: {pageMeta.datePublished}
60
+ <p>
61
+ Published: {pageMeta.datePublished}
54
62
  {#if pageMeta.lastUpdated}
55
63
  | Last updated: {pageMeta.lastUpdated}
56
64
  {/if}
@@ -68,31 +76,31 @@
68
76
  </div>
69
77
 
70
78
  <style>
71
- .chum-bucket-item {
72
- width: 100%;
73
- display: flex;
74
- flex-direction: row;
75
- align-items: flex-start;
76
- }
79
+ .chum-bucket-item {
80
+ width: 100%;
81
+ display: flex;
82
+ flex-direction: row;
83
+ align-items: flex-start;
84
+ }
77
85
 
78
- .chum-bucket-image {
79
- max-width: 10em;
80
- height: auto;
81
- margin-top: 0.5em;
82
- margin-inline-end: 1em;
83
- }
86
+ .chum-bucket-image {
87
+ max-width: 10em;
88
+ height: auto;
89
+ margin-top: 0.5em;
90
+ margin-inline-end: 1em;
91
+ }
84
92
 
85
- .chum-bucket {
86
- margin-top: 2lh;
87
- padding: 1.5lh 1em;
88
- width: 100%;
89
- max-width: var(--container-3xl);
90
- }
93
+ .chum-bucket {
94
+ margin-top: 2lh;
95
+ padding: 1.5lh 1em;
96
+ width: 100%;
97
+ max-width: var(--container-3xl);
98
+ }
91
99
 
92
- .chum-bucket-grid {
93
- display: flex;
94
- flex-direction: column;
95
- margin-top: 0.5lh;
96
- gap: 0.5lh;
97
- }
100
+ .chum-bucket-grid {
101
+ display: flex;
102
+ flex-direction: column;
103
+ margin-top: 0.5lh;
104
+ gap: 0.5lh;
105
+ }
98
106
  </style>
@@ -1 +1 @@
1
- {"version":3,"file":"ChumBucket.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/ui/templates/SeaweedLayout/ChumBucket.svelte.ts"],"names":[],"mappings":"AAwEA,QAAA,MAAM,UAAU,2DAAwC,CAAC;AACzD,KAAK,UAAU,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAChD,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"ChumBucket.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/ui/templates/SeaweedLayout/ChumBucket.svelte.ts"],"names":[],"mappings":"AA6EA,QAAA,MAAM,UAAU,2DAAwC,CAAC;AACzD,KAAK,UAAU,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAChD,eAAe,UAAU,CAAC"}
@@ -1,7 +1,11 @@
1
1
  <!-- TODO: Documentation: consider documentation showcase -->
2
2
 
3
3
  <script lang="ts">
4
- import { type CreateUrlRequest, CreateUrlResult, jsonToCreateUrlResponse } from "../../../types/api/CreateUrl";
4
+ import {
5
+ type CreateUrlRequest,
6
+ CreateUrlResult,
7
+ jsonToCreateUrlResponse
8
+ } from "../../../types/api/CreateUrl";
5
9
  import { addToast } from "../../components/MeltToaster/MeltToaster.svelte";
6
10
  import PinyaButton from "../../elements/PinyaButton/PinyaButton.svelte";
7
11
  import type { ToastSettings } from "../../components/MeltToaster/ToastSettings";
@@ -22,20 +26,25 @@
22
26
  request.queryParams = queryParams;
23
27
  });
24
28
 
25
-
26
29
  const failToast: ToastSettings = {
27
30
  type: "error",
28
31
  description: "Adding new url failed"
29
32
  };
30
33
  const toastMap = new Map<CreateUrlResult, ToastSettings>([
31
- [CreateUrlResult.Success, {
32
- type: "success",
33
- description: "Successfully added new url"
34
- }],
35
- [CreateUrlResult.Duplicate, {
36
- type: "error",
37
- description: "Short url already used; try again with another url"
38
- }],
34
+ [
35
+ CreateUrlResult.Success,
36
+ {
37
+ type: "success",
38
+ description: "Successfully added new url"
39
+ }
40
+ ],
41
+ [
42
+ CreateUrlResult.Duplicate,
43
+ {
44
+ type: "error",
45
+ description: "Short url already used; try again with another url"
46
+ }
47
+ ],
39
48
  [CreateUrlResult.Fail, failToast]
40
49
  ]);
41
50
  const post = () => {
@@ -45,36 +54,40 @@
45
54
  "Content-Type": "application/json"
46
55
  },
47
56
  body: JSON.stringify(request)
48
- }).then(resp =>
49
- resp.json()
50
- ).then(json => {
51
- const properResp = jsonToCreateUrlResponse(json);
52
- addToast({ data: toastMap.get(properResp.result) ?? failToast });
53
- });
57
+ })
58
+ .then((resp) => resp.json())
59
+ .then((json) => {
60
+ const properResp = jsonToCreateUrlResponse(json);
61
+ addToast({ data: toastMap.get(properResp.result) ?? failToast });
62
+ });
54
63
  };
55
64
  </script>
56
65
 
57
66
  <div class="local-list">
58
67
  <label for="short-url">Short URL for url shortener</label>
59
- <input bind:value={request.shortUrl}
60
- name="short-url"
61
- class="input border-[2px] border-primary-500"
62
- type="text"
63
- placeholder="short-url" />
68
+ <input
69
+ bind:value={request.shortUrl}
70
+ name="short-url"
71
+ class="input border-[2px] border-primary-500"
72
+ type="text"
73
+ placeholder="short-url"
74
+ />
64
75
  <label for="password">Password</label>
65
- <input bind:value={request.password}
66
- name="password"
67
- class="input border-[2px] border-primary-500"
68
- type="password"
69
- placeholder="ILoveTurnips" />
76
+ <input
77
+ bind:value={request.password}
78
+ name="password"
79
+ class="input border-[2px] border-primary-500"
80
+ type="password"
81
+ placeholder="ILoveTurnips"
82
+ />
70
83
  <PinyaButton onclick={post}>Send link</PinyaButton>
71
84
  </div>
72
85
 
73
86
  <style>
74
- .local-list {
75
- display: flex;
76
- flex-direction: column;
77
- gap: 0.5lh;
78
- margin-top: 1lh;
79
- }
87
+ .local-list {
88
+ display: flex;
89
+ flex-direction: column;
90
+ gap: 0.5lh;
91
+ margin-top: 1lh;
92
+ }
80
93
  </style>
@@ -1 +1 @@
1
- {"version":3,"file":"CreateUrlForm.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/ui/templates/SeaweedLayout/CreateUrlForm.svelte.ts"],"names":[],"mappings":"AASC,UAAU,KAAK;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAkEF,QAAA,MAAM,aAAa,2CAAwC,CAAC;AAC5D,KAAK,aAAa,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;AACtD,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"CreateUrlForm.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/ui/templates/SeaweedLayout/CreateUrlForm.svelte.ts"],"names":[],"mappings":"AAaC,UAAU,KAAK;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAuEF,QAAA,MAAM,aAAa,2CAAwC,CAAC;AAC5D,KAAK,aAAa,GAAG,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;AACtD,eAAe,aAAa,CAAC"}
@@ -28,8 +28,8 @@
28
28
 
29
29
  onMount(async () => {
30
30
  const refs = entryList
31
- .filter(e => e.startCommit || e.endCommit || e.gitRepoLink)
32
- .map(e => ({
31
+ .filter((e) => e.startCommit || e.endCommit || e.gitRepoLink)
32
+ .map((e) => ({
33
33
  key: e.key,
34
34
  startCommit: e.startCommit,
35
35
  endCommit: e.endCommit,
@@ -40,7 +40,7 @@
40
40
 
41
41
  try {
42
42
  const dates = await getCommitDate(refs);
43
- resolvedEntryList = entryList.map(e => {
43
+ resolvedEntryList = entryList.map((e) => {
44
44
  const d = dates[e.key];
45
45
  if (!d) return e;
46
46
  return {
@@ -56,12 +56,12 @@
56
56
  });
57
57
 
58
58
  // Derived values
59
- const allTags = $derived([...new Set(resolvedEntryList.flatMap(e => e.tags ?? []))]);
59
+ const allTags = $derived([...new Set(resolvedEntryList.flatMap((e) => e.tags ?? []))]);
60
60
 
61
61
  const filteredList = $derived(
62
62
  selectedTags.length === 0
63
63
  ? resolvedEntryList
64
- : resolvedEntryList.filter(e => e.tags?.some(t => selectedTags.includes(t)))
64
+ : resolvedEntryList.filter((e) => e.tags?.some((t) => selectedTags.includes(t)))
65
65
  );
66
66
 
67
67
  function sortEntries(list: SnippetMeta[], sort: string): SnippetMeta[] {
@@ -108,7 +108,7 @@
108
108
  }
109
109
 
110
110
  // follow original index
111
- return list.findIndex(l => l.key === a.key) - list.findIndex(l => l.key === b.key);
111
+ return list.findIndex((l) => l.key === a.key) - list.findIndex((l) => l.key === b.key);
112
112
  });
113
113
  }
114
114
  }
@@ -126,9 +126,7 @@
126
126
  const sortedList = $derived(sortEntries(filteredList, sortBy.length > 0 ? sortBy[0] : "default"));
127
127
 
128
128
  const visibleList = $derived(
129
- showMoreLimit > 0 && !isExpanded
130
- ? sortedList.slice(0, showMoreLimit)
131
- : sortedList
129
+ showMoreLimit > 0 && !isExpanded ? sortedList.slice(0, showMoreLimit) : sortedList
132
130
  );
133
131
 
134
132
  const hasMore = $derived(showMoreLimit > 0 && sortedList.length > showMoreLimit);
@@ -143,7 +141,7 @@
143
141
  <TagFilter bind:selectedTags {allTags} />
144
142
  {/if}
145
143
  {#if showSort}
146
- <SortDropdown bind:sortBy={sortBy} {sectionType} />
144
+ <SortDropdown bind:sortBy {sectionType} />
147
145
  {/if}
148
146
  </div>
149
147
  </div>
@@ -156,106 +154,112 @@
156
154
  {:else}
157
155
  <div class="normal-project-container">
158
156
  {#each visibleList as ui (ui.key)}
159
- {@render ui.component(projectComponentProps ? {
160
- ...projectComponentProps,
161
- snippetMeta: ui
162
- } : { snippetMeta: ui })}
157
+ {@render ui.component(
158
+ projectComponentProps
159
+ ? {
160
+ ...projectComponentProps,
161
+ snippetMeta: ui
162
+ }
163
+ : { snippetMeta: ui }
164
+ )}
163
165
  {/each}
164
166
  </div>
165
167
 
166
168
  {#if hasMore}
167
- <button class="show-more-btn" onclick={() => isExpanded = !isExpanded}>
168
- {isExpanded ? "Show less" : `Click to see ${sortedList.length - visibleList.length} more...`}
169
+ <button class="show-more-btn" onclick={() => (isExpanded = !isExpanded)}>
170
+ {isExpanded
171
+ ? "Show less"
172
+ : `Click to see ${sortedList.length - visibleList.length} more...`}
169
173
  </button>
170
174
  {/if}
171
175
  {/if}
172
176
  </div>
173
177
 
174
178
  <style>
175
- .header-content {
176
- display: flex;
177
- flex-direction: column;
178
- gap: 1rem;
179
- width: 100%;
180
- }
181
-
182
- @media (min-width: 768px) {
183
- .header-content {
184
- flex-direction: row;
185
- justify-content: space-between;
186
- align-items: center;
187
- }
188
- }
189
-
190
- .header-controls {
191
- display: flex;
192
- flex-direction: column;
193
- gap: 0.5rem;
194
- }
195
-
196
- @media (min-width: 768px) {
197
- .header-controls {
198
- flex-direction: row;
199
- gap: 1rem;
200
- }
201
- }
202
-
203
- .normal-project-container {
204
- display: flex;
205
- flex-wrap: wrap;
206
- gap: 2rem;
207
- margin: auto;
208
- /* 3 containers + 2 gaps + extra rem */
209
- max-width: calc((28rem * 3) + 5rem);
210
- justify-content: center;
211
- margin-bottom: 2rem;
212
- align-items: start;
213
- }
214
-
215
- :global {
216
- .upper-section-style .normal-project-container > .pinya-four-part-card {
217
- max-width: revert;
218
- flex-grow: revert;
219
- flex-basis: revert;
220
- }
221
-
222
- .normal-project-container > .pinya-four-part-card {
223
- max-width: 30em;
224
- flex-grow: 1;
225
- flex-basis: 25em;
226
- }
227
- }
228
-
229
- .show-more-btn {
230
- margin-bottom: 1.5lh;
231
- padding: 0.5rem 1rem;
232
- border-radius: var(--radius-lg);
233
- border: 2px solid var(--color-primary-500);
234
- background: transparent;
235
- cursor: pointer;
236
- transition: background-color 0.2s;
237
- }
238
-
239
- .show-more-btn:hover {
240
- background: var(--color-primary-100);
241
- }
242
-
243
- .no-results {
244
- padding: 2rem;
245
- text-align: center;
246
- color: var(--color-text-secondary);
247
- }
248
-
249
- :global {
250
- .group-header.pinya-card {
251
- margin-bottom: calc(var(--spacing) * 8);
252
- max-width: unset;
253
- width: 100%;
254
- }
255
- }
256
-
257
- .entry-group-wrapper {
258
- max-width: calc((28rem * 3) + 5rem);
259
- width: 100%;
260
- }
179
+ .header-content {
180
+ display: flex;
181
+ flex-direction: column;
182
+ gap: 1rem;
183
+ width: 100%;
184
+ }
185
+
186
+ @media (min-width: 768px) {
187
+ .header-content {
188
+ flex-direction: row;
189
+ justify-content: space-between;
190
+ align-items: center;
191
+ }
192
+ }
193
+
194
+ .header-controls {
195
+ display: flex;
196
+ flex-direction: column;
197
+ gap: 0.5rem;
198
+ }
199
+
200
+ @media (min-width: 768px) {
201
+ .header-controls {
202
+ flex-direction: row;
203
+ gap: 1rem;
204
+ }
205
+ }
206
+
207
+ .normal-project-container {
208
+ display: flex;
209
+ flex-wrap: wrap;
210
+ gap: 2rem;
211
+ margin: auto;
212
+ /* 3 containers + 2 gaps + extra rem */
213
+ max-width: calc((28rem * 3) + 5rem);
214
+ justify-content: center;
215
+ margin-bottom: 2rem;
216
+ align-items: start;
217
+ }
218
+
219
+ :global {
220
+ .upper-section-style .normal-project-container > .pinya-four-part-card {
221
+ max-width: revert;
222
+ flex-grow: revert;
223
+ flex-basis: revert;
224
+ }
225
+
226
+ .normal-project-container > .pinya-four-part-card {
227
+ max-width: 30em;
228
+ flex-grow: 1;
229
+ flex-basis: 25em;
230
+ }
231
+ }
232
+
233
+ .show-more-btn {
234
+ margin-bottom: 1.5lh;
235
+ padding: 0.5rem 1rem;
236
+ border-radius: var(--radius-lg);
237
+ border: 2px solid var(--color-primary-500);
238
+ background: transparent;
239
+ cursor: pointer;
240
+ transition: background-color 0.2s;
241
+ }
242
+
243
+ .show-more-btn:hover {
244
+ background: var(--color-primary-100);
245
+ }
246
+
247
+ .no-results {
248
+ padding: 2rem;
249
+ text-align: center;
250
+ color: var(--color-text-secondary);
251
+ }
252
+
253
+ :global {
254
+ .group-header.pinya-card {
255
+ margin-bottom: calc(var(--spacing) * 8);
256
+ max-width: unset;
257
+ width: 100%;
258
+ }
259
+ }
260
+
261
+ .entry-group-wrapper {
262
+ max-width: calc((28rem * 3) + 5rem);
263
+ width: 100%;
264
+ }
261
265
  </style>
@@ -1 +1 @@
1
- {"version":3,"file":"EntryGroup.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/ui/templates/SeaweedLayout/EntryGroup.svelte.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAe,MAAM,iCAAiC,CAAC;AAsLjF,QAAA,MAAM,UAAU,kDAAwC,CAAC;AACzD,KAAK,UAAU,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAChD,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"EntryGroup.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/ui/templates/SeaweedLayout/EntryGroup.svelte.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAe,MAAM,iCAAiC,CAAC;AA0LjF,QAAA,MAAM,UAAU,kDAAwC,CAAC;AACzD,KAAK,UAAU,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;AAChD,eAAe,UAAU,CAAC"}
@@ -10,16 +10,14 @@
10
10
  allEntries: SnippetMeta[];
11
11
  }
12
12
 
13
- let {
14
- layout = $bindable(),
15
- orderUrl = $bindable(),
16
- allEntries
17
- }: Props = $props();
13
+ let { layout = $bindable(), orderUrl = $bindable(), allEntries }: Props = $props();
18
14
  </script>
19
15
 
20
- <br>
16
+ <br />
21
17
  <h3>Site ordering</h3>
22
- <blockquote>Sorry! This part of the website is still WIP, but here it is anyway. As long as it functions</blockquote>
18
+ <blockquote>
19
+ Sorry! This part of the website is still WIP, but here it is anyway. As long as it functions
20
+ </blockquote>
23
21
 
24
22
  <!-- formatting: group1:entry1|entry2,group2:entry3
25
23
  : <= separates the group header, the entries, and the class
@@ -28,20 +26,14 @@
28
26
  -->
29
27
  <div class="advanced-setting-list">
30
28
  {#each layout as group, groupIndex (group.key)}
31
- <ProjectGroupConfig
32
- bind:layout={layout}
33
- bind:orderUrl={orderUrl}
34
- {allEntries}
35
- {group}
36
- {groupIndex}
37
- />
29
+ <ProjectGroupConfig bind:layout bind:orderUrl {allEntries} {group} {groupIndex} />
38
30
  {/each}
39
31
  </div>
40
32
 
41
33
  <style>
42
- .advanced-setting-list {
43
- display: flex;
44
- flex-direction: column;
45
- justify-content: center;
46
- }
34
+ .advanced-setting-list {
35
+ display: flex;
36
+ flex-direction: column;
37
+ justify-content: center;
38
+ }
47
39
  </style>
@@ -1 +1 @@
1
- {"version":3,"file":"EntryOrderConfig.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/ui/templates/SeaweedLayout/EntryOrderConfig.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAIhF,UAAU,KAAK;IACd,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,WAAW,EAAE,CAAC;CAC1B;AA8BF,QAAA,MAAM,gBAAgB,8DAAwC,CAAC;AAC/D,KAAK,gBAAgB,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC5D,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"EntryOrderConfig.svelte.d.ts","sourceRoot":"","sources":["../../../../src/lib/ui/templates/SeaweedLayout/EntryOrderConfig.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAIhF,UAAU,KAAK;IACd,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,WAAW,EAAE,CAAC;CAC1B;AA4BF,QAAA,MAAM,gBAAgB,8DAAwC,CAAC;AAC/D,KAAK,gBAAgB,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC5D,eAAe,gBAAgB,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import type { SnippetMeta } from "../index";
2
- import type { Snippet } from 'svelte';
2
+ import type { Snippet } from "svelte";
3
3
  export interface ProjectComponentProps {
4
4
  isPineapple?: boolean;
5
5
  snippetMeta?: SnippetMeta;