@turnipxenon/pineapple 2.10.0 → 3.0.0-alpha-3

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 (223) hide show
  1. package/dist/assets/icons/icon-check-dark-contrast.svg +1 -0
  2. package/dist/assets/icons/icon-check-light-contrast.svg +1 -0
  3. package/dist/assets/icons/icon-contrast.svg +1 -0
  4. package/dist/assets/icons/icon-copy-dark-contrast.svg +1 -0
  5. package/dist/assets/icons/icon-copy-light-contrast.svg +1 -0
  6. package/dist/assets/icons/icon-dark-mode.svg +1 -0
  7. package/dist/assets/icons/icon-light-mode.svg +1 -0
  8. package/dist/assets/icons/icon-settings.svg +1 -0
  9. package/dist/components/Card.svelte +43 -41
  10. package/dist/components/Card.svelte.d.ts +11 -24
  11. package/dist/components/CarouselElement.svelte +15 -8
  12. package/dist/components/CarouselElement.svelte.d.ts +7 -18
  13. package/dist/components/ElementVisbilityDetector.svelte +23 -14
  14. package/dist/components/ElementVisbilityDetector.svelte.d.ts +6 -17
  15. package/dist/components/LazyAsset.svelte +93 -65
  16. package/dist/components/LazyAsset.svelte.d.ts +9 -19
  17. package/dist/components/PineappleSlideToggle.svelte +28 -10
  18. package/dist/components/PineappleSlideToggle.svelte.d.ts +9 -19
  19. package/dist/components/RandomizedBackground.svelte +46 -27
  20. package/dist/components/RandomizedBackground.svelte.d.ts +5 -15
  21. package/dist/components/RandomizedImage.svelte +15 -8
  22. package/dist/components/RandomizedImage.svelte.d.ts +6 -16
  23. package/dist/components/StickyElement.svelte +25 -16
  24. package/dist/components/StickyElement.svelte.d.ts +6 -17
  25. package/dist/components/ToggleableContent.svelte +88 -59
  26. package/dist/components/ToggleableContent.svelte.d.ts +6 -17
  27. package/dist/components/blog_template/BlogTemplate.svelte +45 -25
  28. package/dist/components/blog_template/BlogTemplate.svelte.d.ts +9 -20
  29. package/dist/components/blog_template/BlogTemplateInner.svelte +11 -3
  30. package/dist/components/blog_template/BlogTemplateInner.svelte.d.ts +6 -17
  31. package/dist/components/chip/Chip.svelte +33 -57
  32. package/dist/components/chip/Chip.svelte.d.ts +7 -18
  33. package/dist/components/combo_box/ComboBox.svelte +10 -4
  34. package/dist/components/combo_box/ComboBox.svelte.d.ts +6 -16
  35. package/dist/components/combo_box/ComboBoxWithButton.svelte +16 -9
  36. package/dist/components/combo_box/ComboBoxWithButton.svelte.d.ts +7 -17
  37. package/dist/components/combo_box/combo-box.postcss +2 -2
  38. package/dist/components/dialog_manager/DialogManager.d.ts +0 -1
  39. package/dist/components/dialog_manager/DialogManagerStore.d.ts +0 -1
  40. package/dist/components/dialog_manager/DialogManagerStore.js +1 -1
  41. package/dist/components/dialog_overlay/DialogOverlay.svelte +42 -34
  42. package/dist/components/dialog_overlay/DialogOverlay.svelte.d.ts +3 -14
  43. package/dist/components/index.d.ts +1 -1
  44. package/dist/components/index.js +1 -1
  45. package/dist/components/layouts/SeaweedBaseLayout.svelte +80 -43
  46. package/dist/components/layouts/SeaweedBaseLayout.svelte.d.ts +8 -21
  47. package/dist/components/navigation_component/NavigationComponent.svelte +52 -141
  48. package/dist/components/navigation_component/NavigationComponent.svelte.d.ts +17 -26
  49. package/dist/components/navigation_component/NavigationControl.svelte +52 -103
  50. package/dist/components/navigation_component/NavigationControl.svelte.d.ts +7 -17
  51. package/dist/components/overrideable_meta/OverridableMeta.svelte +37 -22
  52. package/dist/components/overrideable_meta/OverridableMeta.svelte.d.ts +9 -19
  53. package/dist/components/pineapple/PineappleBaseLayout.svelte +132 -188
  54. package/dist/components/pineapple/PineappleBaseLayout.svelte.d.ts +6 -17
  55. package/dist/components/pineapple/toast/DefaultToastBody.svelte +14 -16
  56. package/dist/components/pineapple/toast/DefaultToastBody.svelte.d.ts +7 -17
  57. package/dist/components/pineapple/toast/Toast.d.ts +0 -1
  58. package/dist/components/pineapple/toast/Toast.svelte +92 -64
  59. package/dist/components/pineapple/toast/Toast.svelte.d.ts +3 -14
  60. package/dist/components/pineapple/toast/custom-toast/TestCustomToast.svelte.d.ts +22 -19
  61. package/dist/paraglide/messages/_index.d.ts +2 -0
  62. package/dist/paraglide/messages/_index.js +3 -0
  63. package/dist/paraglide/messages/example_message.d.ts +5 -0
  64. package/dist/paraglide/messages/example_message.js +39 -0
  65. package/dist/paraglide/messages/settings.d.ts +3 -0
  66. package/dist/paraglide/messages/settings.js +38 -0
  67. package/dist/paraglide/messages.d.ts +2 -0
  68. package/dist/paraglide/messages.js +4 -0
  69. package/dist/paraglide/registry.d.ts +21 -0
  70. package/dist/paraglide/registry.js +31 -0
  71. package/dist/paraglide/runtime.d.ts +400 -0
  72. package/dist/paraglide/runtime.js +1060 -0
  73. package/dist/paraglide/server.d.ts +64 -0
  74. package/dist/paraglide/server.js +161 -0
  75. package/dist/scripts/util/FileManagement.d.ts +1 -1
  76. package/dist/store.d.ts +0 -1
  77. package/dist/styles/app.css +144 -0
  78. package/dist/styles/turnip-theme.css +327 -0
  79. package/dist/template/seaweed/CreateUrlForm.svelte +59 -41
  80. package/dist/template/seaweed/CreateUrlForm.svelte.d.ts +8 -15
  81. package/dist/template/seaweed/SeaweedTemplate.svelte +244 -195
  82. package/dist/template/seaweed/SeaweedTemplate.svelte.d.ts +28 -25
  83. package/dist/template/seaweed/ToastSettings.d.ts +15 -0
  84. package/dist/template/seaweed/ToastSettings.js +1 -0
  85. package/dist/template/seaweed/entries/ChefWings.svelte +37 -39
  86. package/dist/template/seaweed/entries/ChefWings.svelte.d.ts +5 -15
  87. package/dist/template/seaweed/entries/CustomizedYarnspinner.svelte +32 -24
  88. package/dist/template/seaweed/entries/CustomizedYarnspinner.svelte.d.ts +5 -15
  89. package/dist/template/seaweed/entries/Hepcat.svelte +58 -49
  90. package/dist/template/seaweed/entries/Hepcat.svelte.d.ts +5 -15
  91. package/dist/template/seaweed/entries/Pengi.svelte +51 -43
  92. package/dist/template/seaweed/entries/Pengi.svelte.d.ts +5 -15
  93. package/dist/template/seaweed/entries/Soulwork.svelte +44 -36
  94. package/dist/template/seaweed/entries/Soulwork.svelte.d.ts +5 -15
  95. package/dist/template/seaweed/entries/ThisWebpage.svelte +47 -38
  96. package/dist/template/seaweed/entries/ThisWebpage.svelte.d.ts +5 -15
  97. package/dist/template/seaweed/entries/WorkExperience.svelte +109 -92
  98. package/dist/template/seaweed/entries/WorkExperience.svelte.d.ts +6 -16
  99. package/dist/template/seaweed/entries/Workset.svelte +51 -42
  100. package/dist/template/seaweed/entries/Workset.svelte.d.ts +5 -15
  101. package/dist/template/seaweed/entry_order_config/EntryOrderConfig.svelte +169 -259
  102. package/dist/template/seaweed/entry_order_config/EntryOrderConfig.svelte.d.ts +10 -21
  103. package/dist/template/seaweed/seaweed.postcss +1 -9
  104. package/dist/{theme.postcss → theme.css} +1 -4
  105. package/dist/ui/components/FourPartCard.svelte +47 -0
  106. package/dist/ui/components/FourPartCard.svelte.d.ts +10 -0
  107. package/dist/ui/components/ModalBase.svelte +75 -0
  108. package/dist/ui/components/ModalBase.svelte.d.ts +8 -0
  109. package/dist/ui/components/SocialSection.svelte +87 -0
  110. package/dist/ui/components/SocialSection.svelte.d.ts +9 -0
  111. package/dist/ui/components/index.d.ts +3 -0
  112. package/dist/ui/components/index.js +3 -0
  113. package/dist/ui/components/randomized-background/RandomizedBackground.svelte +87 -0
  114. package/dist/ui/components/randomized-background/RandomizedBackground.svelte.d.ts +6 -0
  115. package/dist/ui/components/randomized-background/RandomizedImage.svelte +42 -0
  116. package/dist/ui/components/randomized-background/RandomizedImage.svelte.d.ts +7 -0
  117. package/dist/ui/elements/CodeBlock/CodeBlock.svelte +65 -0
  118. package/dist/ui/elements/CodeBlock/CodeBlock.svelte.d.ts +5 -0
  119. package/dist/ui/elements/CodeBlock/CodeBlockProps.d.ts +11 -0
  120. package/dist/ui/elements/CodeBlock/CodeBlockProps.js +1 -0
  121. package/dist/ui/elements/CodeBlock/index.d.ts +2 -0
  122. package/dist/ui/elements/CodeBlock/index.js +2 -0
  123. package/dist/ui/elements/ColorScheme.d.ts +10 -0
  124. package/dist/ui/elements/ColorScheme.js +11 -0
  125. package/dist/ui/elements/GeneralUIProps.d.ts +12 -0
  126. package/dist/ui/elements/GeneralUIProps.js +1 -0
  127. package/dist/ui/elements/ImageIcon.svelte +54 -0
  128. package/dist/ui/elements/ImageIcon.svelte.d.ts +6 -0
  129. package/dist/ui/elements/OnBackground.d.ts +3 -0
  130. package/dist/ui/elements/OnBackground.js +4 -0
  131. package/dist/ui/elements/PineappleSwitch.svelte +29 -0
  132. package/dist/ui/elements/PineappleSwitch.svelte.d.ts +10 -0
  133. package/dist/ui/elements/TextLink.svelte +17 -0
  134. package/dist/ui/elements/TextLink.svelte.d.ts +8 -0
  135. package/dist/ui/elements/WrapperProps.d.ts +4 -0
  136. package/dist/ui/elements/WrapperProps.js +1 -0
  137. package/dist/ui/elements/index.d.ts +10 -0
  138. package/dist/ui/elements/index.js +10 -0
  139. package/dist/ui/elements/pinya-button/component.svelte +47 -0
  140. package/dist/ui/elements/pinya-button/component.svelte.d.ts +4 -0
  141. package/dist/ui/elements/pinya-button/index.d.ts +2 -0
  142. package/dist/ui/elements/pinya-button/index.js +2 -0
  143. package/dist/ui/elements/pinya-button/props.d.ts +13 -0
  144. package/dist/ui/elements/pinya-button/props.js +6 -0
  145. package/dist/ui/elements/pinya-card/component.svelte +21 -0
  146. package/dist/ui/elements/pinya-card/component.svelte.d.ts +7 -0
  147. package/dist/ui/elements/pinya-card/index.d.ts +2 -0
  148. package/dist/ui/elements/pinya-card/index.js +2 -0
  149. package/dist/ui/elements/pinya-card/props.d.ts +10 -0
  150. package/dist/ui/elements/pinya-card/props.js +1 -0
  151. package/dist/ui/elements/pinya-combobox/PinyaCombobox.svelte +35 -0
  152. package/dist/ui/elements/pinya-combobox/PinyaCombobox.svelte.d.ts +18 -0
  153. package/dist/ui/elements/pinya-combobox/PinyaComboboxProps.d.ts +18 -0
  154. package/dist/ui/elements/pinya-combobox/PinyaComboboxProps.js +1 -0
  155. package/dist/ui/elements/text-chip/TextChip.svelte +15 -0
  156. package/dist/ui/elements/text-chip/TextChip.svelte.d.ts +4 -0
  157. package/dist/ui/elements/text-chip/TextChipProps.d.ts +4 -0
  158. package/dist/ui/elements/text-chip/TextChipProps.js +1 -0
  159. package/dist/ui/elements/text-chip/index.d.ts +2 -0
  160. package/dist/ui/elements/text-chip/index.js +2 -0
  161. package/dist/ui/modules/index.d.ts +2 -0
  162. package/dist/ui/modules/index.js +2 -0
  163. package/dist/ui/modules/modals/general-settings/GeneralSettingsModal.svelte +110 -0
  164. package/dist/ui/modules/modals/general-settings/GeneralSettingsModal.svelte.d.ts +4 -0
  165. package/dist/ui/modules/modals/general-settings/LanguagePicker.svelte +38 -0
  166. package/dist/ui/modules/modals/general-settings/LanguagePicker.svelte.d.ts +3 -0
  167. package/dist/ui/modules/projects/Hepcat.svelte +71 -0
  168. package/dist/ui/modules/projects/Hepcat.svelte.d.ts +22 -0
  169. package/dist/ui/modules/projects/Pengi.svelte +60 -0
  170. package/dist/ui/modules/projects/Pengi.svelte.d.ts +22 -0
  171. package/dist/ui/modules/projects/Soulwork.svelte +55 -0
  172. package/dist/ui/modules/projects/Soulwork.svelte.d.ts +22 -0
  173. package/dist/ui/modules/projects/ThisWebpage.svelte +62 -0
  174. package/dist/ui/modules/projects/ThisWebpage.svelte.d.ts +22 -0
  175. package/dist/ui/modules/projects/index.d.ts +4 -0
  176. package/dist/ui/modules/projects/index.js +4 -0
  177. package/dist/ui/modules/seaweed/ChumBucket.svelte +86 -0
  178. package/dist/ui/modules/seaweed/ChumBucket.svelte.d.ts +3 -0
  179. package/dist/ui/modules/seaweed/index.d.ts +3 -0
  180. package/dist/ui/modules/seaweed/index.js +4 -0
  181. package/dist/ui/templates/PinyaBase.svelte +48 -0
  182. package/dist/ui/templates/PinyaBase.svelte.d.ts +7 -0
  183. package/dist/ui/templates/confirmation-modal/component.svelte +47 -0
  184. package/dist/ui/templates/confirmation-modal/component.svelte.d.ts +4 -0
  185. package/dist/ui/templates/confirmation-modal/index.d.ts +2 -0
  186. package/dist/ui/templates/confirmation-modal/index.js +2 -0
  187. package/dist/ui/templates/confirmation-modal/props.d.ts +10 -0
  188. package/dist/ui/templates/confirmation-modal/props.js +1 -0
  189. package/dist/ui/templates/index.d.ts +4 -0
  190. package/dist/ui/templates/index.js +4 -0
  191. package/dist/ui/templates/pinya-page-layout/component.svelte +120 -0
  192. package/dist/ui/templates/pinya-page-layout/component.svelte.d.ts +9 -0
  193. package/dist/ui/templates/pinya-page-layout/index.d.ts +2 -0
  194. package/dist/ui/templates/pinya-page-layout/index.js +2 -0
  195. package/dist/ui/templates/pinya-page-layout/runes.svelte.d.ts +7 -0
  196. package/dist/ui/templates/pinya-page-layout/runes.svelte.js +3 -0
  197. package/dist/ui/templates/seaweed-layout/EntryGroup.svelte +89 -0
  198. package/dist/ui/templates/seaweed-layout/EntryGroup.svelte.d.ts +4 -0
  199. package/dist/ui/templates/seaweed-layout/EntryOrderConfig2.svelte +45 -0
  200. package/dist/ui/templates/seaweed-layout/EntryOrderConfig2.svelte.d.ts +9 -0
  201. package/dist/ui/templates/seaweed-layout/ProjectComponentProps.d.ts +4 -0
  202. package/dist/ui/templates/seaweed-layout/ProjectComponentProps.js +1 -0
  203. package/dist/ui/templates/seaweed-layout/ProjectGroupConfig.svelte +316 -0
  204. package/dist/ui/templates/seaweed-layout/ProjectGroupConfig.svelte.d.ts +14 -0
  205. package/dist/ui/templates/seaweed-layout/SeaweedLayout.md +4 -0
  206. package/dist/ui/templates/seaweed-layout/SeaweedLayout.svelte +196 -0
  207. package/dist/ui/templates/seaweed-layout/SeaweedLayout.svelte.d.ts +4 -0
  208. package/dist/ui/templates/seaweed-layout/index.d.ts +4 -0
  209. package/dist/ui/templates/seaweed-layout/index.js +4 -0
  210. package/dist/ui/templates/seaweed-layout/props.d.ts +25 -0
  211. package/dist/ui/templates/seaweed-layout/props.js +1 -0
  212. package/dist/util/util.d.ts +1 -0
  213. package/dist/util/util.js +9 -0
  214. package/package.json +37 -20
  215. package/src/lib/styles/app.css +144 -0
  216. package/src/lib/theme.css +114 -0
  217. package/dist/app.postcss +0 -212
  218. package/dist/components/SocialSection.svelte +0 -166
  219. package/dist/components/SocialSection.svelte.d.ts +0 -31
  220. package/dist/postcss.d.ts +0 -3
  221. package/dist/styles/DefaultGridContainer.css +0 -61
  222. package/dist/template/seaweed/ChumBucket.svelte +0 -87
  223. package/dist/template/seaweed/ChumBucket.svelte.d.ts +0 -14
@@ -0,0 +1,327 @@
1
+ [data-theme='turnip'] {
2
+ --text-scaling: 1.067;
3
+ --base-font-color: var(--color-surface-950);
4
+ --base-font-color-dark: var(--color-surface-50);
5
+ --base-font-family: Avenir, Montserrat, Corbel, 'URW Gothic', source-sans-pro, sans-serif;
6
+ --base-font-size: inherit;
7
+ --base-line-height: inherit;
8
+ --base-font-weight: normal;
9
+ --base-font-style: normal;
10
+ --base-letter-spacing: 0em;
11
+ --heading-font-color: inherit;
12
+ --heading-font-color-dark: inherit;
13
+ --heading-font-family: inherit;
14
+ --heading-font-weight: bold;
15
+ --heading-font-style: normal;
16
+ --heading-letter-spacing: inherit;
17
+ --anchor-font-color: var(--color-primary-500);
18
+ --anchor-font-color-dark: var(--color-primary-400);
19
+ --anchor-font-family: inherit;
20
+ --anchor-font-size: inherit;
21
+ --anchor-line-height: inherit;
22
+ --anchor-font-weight: inherit;
23
+ --anchor-font-style: inherit;
24
+ --anchor-letter-spacing: inherit;
25
+ --anchor-text-decoration: none;
26
+ --anchor-text-decoration-hover: underline;
27
+ --anchor-text-decoration-active: none;
28
+ --anchor-text-decoration-focus: none;
29
+ --spacing: 0.25rem;
30
+ --radius-base: 0.25rem;
31
+ --radius-container: 0.25rem;
32
+ --default-border-width: 1px;
33
+ --default-divide-width: 1px;
34
+ --default-ring-width: 1px;
35
+ --body-background-color: var(--color-surface-100);
36
+ --body-background-color-dark: var(--color-surface-800);
37
+ --color-primary-50: oklch(94.42% 0.01 84.55deg);
38
+ --color-primary-100: oklch(89.99% 0.03 84.57deg);
39
+ --color-primary-200: oklch(85.51% 0.04 84.56deg);
40
+ --color-primary-300: oklch(81.11% 0.05 88.06deg);
41
+ --color-primary-400: oklch(76.57% 0.06 87.33deg);
42
+ --color-primary-500: oklch(72.02% 0.07 86.67deg);
43
+ --color-primary-600: oklch(66.44% 0.07 86.05deg);
44
+ --color-primary-700: oklch(60.95% 0.06 86.85deg);
45
+ --color-primary-800: oklch(55.2% 0.06 85.36deg);
46
+ --color-primary-900: oklch(49.44% 0.05 86.3deg);
47
+ --color-primary-950: oklch(43.27% 0.04 85.08deg);
48
+ --color-primary-contrast-dark: var(--color-primary-950);
49
+ --color-primary-contrast-light: var(--color-primary-50);
50
+ --color-primary-contrast-50: var(--color-primary-contrast-dark);
51
+ --color-primary-contrast-100: var(--color-primary-contrast-dark);
52
+ --color-primary-contrast-200: var(--color-primary-contrast-dark);
53
+ --color-primary-contrast-300: var(--color-primary-contrast-dark);
54
+ --color-primary-contrast-400: var(--color-primary-contrast-dark);
55
+ --color-primary-contrast-500: var(--color-primary-contrast-dark);
56
+ --color-primary-contrast-600: var(--color-primary-contrast-dark);
57
+ --color-primary-contrast-700: var(--color-primary-contrast-light);
58
+ --color-primary-contrast-800: var(--color-primary-contrast-light);
59
+ --color-primary-contrast-900: var(--color-primary-contrast-light);
60
+ --color-primary-contrast-950: var(--color-primary-contrast-light);
61
+ --color-secondary-50: oklch(91.12% 0.02 38.38deg);
62
+ --color-secondary-100: oklch(84.03% 0.04 38.74deg);
63
+ --color-secondary-200: oklch(76.95% 0.06 37.71deg);
64
+ --color-secondary-300: oklch(70.01% 0.09 37.84deg);
65
+ --color-secondary-400: oklch(63.13% 0.11 37.5deg);
66
+ --color-secondary-500: oklch(56.53% 0.13 37.64deg);
67
+ --color-secondary-600: oklch(52.36% 0.12 37.52deg);
68
+ --color-secondary-700: oklch(47.95% 0.11 37.55deg);
69
+ --color-secondary-800: oklch(43.78% 0.1 37.59deg);
70
+ --color-secondary-900: oklch(39.16% 0.08 37.63deg);
71
+ --color-secondary-950: oklch(34.57% 0.07 37.38deg);
72
+ --color-secondary-contrast-dark: var(--color-secondary-950);
73
+ --color-secondary-contrast-light: var(--color-secondary-50);
74
+ --color-secondary-contrast-50: var(--color-secondary-contrast-dark);
75
+ --color-secondary-contrast-100: var(--color-secondary-contrast-dark);
76
+ --color-secondary-contrast-200: var(--color-secondary-contrast-dark);
77
+ --color-secondary-contrast-300: var(--color-secondary-contrast-dark);
78
+ --color-secondary-contrast-400: var(--color-secondary-contrast-dark);
79
+ --color-secondary-contrast-500: var(--color-secondary-contrast-light);
80
+ --color-secondary-contrast-600: var(--color-secondary-contrast-light);
81
+ --color-secondary-contrast-700: var(--color-secondary-contrast-light);
82
+ --color-secondary-contrast-800: var(--color-secondary-contrast-light);
83
+ --color-secondary-contrast-900: var(--color-secondary-contrast-light);
84
+ --color-secondary-contrast-950: var(--color-secondary-contrast-light);
85
+ --color-tertiary-50: oklch(93% 0.02 49.95deg);
86
+ --color-tertiary-100: oklch(87.52% 0.04 51.43deg);
87
+ --color-tertiary-200: oklch(81.87% 0.06 50.12deg);
88
+ --color-tertiary-300: oklch(76.44% 0.08 51.19deg);
89
+ --color-tertiary-400: oklch(70.95% 0.1 49.89deg);
90
+ --color-tertiary-500: oklch(65.81% 0.12 49.2deg);
91
+ --color-tertiary-600: oklch(60.89% 0.11 49.35deg);
92
+ --color-tertiary-700: oklch(55.69% 0.1 49.13deg);
93
+ --color-tertiary-800: oklch(50.55% 0.09 49.31deg);
94
+ --color-tertiary-900: oklch(45.08% 0.08 49deg);
95
+ --color-tertiary-950: oklch(39.66% 0.07 49.2deg);
96
+ --color-tertiary-contrast-dark: var(--color-tertiary-950);
97
+ --color-tertiary-contrast-light: var(--color-tertiary-50);
98
+ --color-tertiary-contrast-50: var(--color-tertiary-contrast-dark);
99
+ --color-tertiary-contrast-100: var(--color-tertiary-contrast-dark);
100
+ --color-tertiary-contrast-200: var(--color-tertiary-contrast-dark);
101
+ --color-tertiary-contrast-300: var(--color-tertiary-contrast-dark);
102
+ --color-tertiary-contrast-400: var(--color-tertiary-contrast-dark);
103
+ --color-tertiary-contrast-500: var(--color-tertiary-contrast-dark);
104
+ --color-tertiary-contrast-600: var(--color-tertiary-contrast-light);
105
+ --color-tertiary-contrast-700: var(--color-tertiary-contrast-light);
106
+ --color-tertiary-contrast-800: var(--color-tertiary-contrast-light);
107
+ --color-tertiary-contrast-900: var(--color-tertiary-contrast-light);
108
+ --color-tertiary-contrast-950: var(--color-tertiary-contrast-light);
109
+ --color-success-50: oklch(97.96% 0.1 109.92deg);
110
+ --color-success-100: oklch(92.06% 0.11 115.01deg);
111
+ --color-success-200: oklch(86.18% 0.12 118.84deg);
112
+ --color-success-300: oklch(80.4% 0.13 122.85deg);
113
+ --color-success-400: oklch(74.46% 0.14 125.73deg);
114
+ --color-success-500: oklch(68.42% 0.15 128.76deg);
115
+ --color-success-600: oklch(61.2% 0.14 130.26deg);
116
+ --color-success-700: oklch(53.77% 0.13 132.05deg);
117
+ --color-success-800: oklch(46.4% 0.12 134.52deg);
118
+ --color-success-900: oklch(38.5% 0.11 137.08deg);
119
+ --color-success-950: oklch(30.28% 0.1 139.27deg);
120
+ --color-success-contrast-dark: var(--color-success-950);
121
+ --color-success-contrast-light: var(--color-success-50);
122
+ --color-success-contrast-50: var(--color-success-contrast-dark);
123
+ --color-success-contrast-100: var(--color-success-contrast-dark);
124
+ --color-success-contrast-200: var(--color-success-contrast-dark);
125
+ --color-success-contrast-300: var(--color-success-contrast-dark);
126
+ --color-success-contrast-400: var(--color-success-contrast-dark);
127
+ --color-success-contrast-500: var(--color-success-contrast-dark);
128
+ --color-success-contrast-600: var(--color-success-contrast-dark);
129
+ --color-success-contrast-700: var(--color-success-contrast-light);
130
+ --color-success-contrast-800: var(--color-success-contrast-light);
131
+ --color-success-contrast-900: var(--color-success-contrast-light);
132
+ --color-success-contrast-950: var(--color-success-contrast-light);
133
+ --color-warning-50: oklch(95.79% 0.05 88.07deg);
134
+ --color-warning-100: oklch(92.94% 0.07 85.27deg);
135
+ --color-warning-200: oklch(90.05% 0.09 81.8deg);
136
+ --color-warning-300: oklch(87.31% 0.11 80.89deg);
137
+ --color-warning-400: oklch(84.57% 0.13 78.29deg);
138
+ --color-warning-500: oklch(82.02% 0.14 76.71deg);
139
+ --color-warning-600: oklch(76.11% 0.14 72.37deg);
140
+ --color-warning-700: oklch(70.14% 0.13 67.8deg);
141
+ --color-warning-800: oklch(64% 0.13 62.98deg);
142
+ --color-warning-900: oklch(57.93% 0.13 57.46deg);
143
+ --color-warning-950: oklch(51.87% 0.13 51.28deg);
144
+ --color-warning-contrast-dark: var(--color-warning-950);
145
+ --color-warning-contrast-light: var(--color-warning-50);
146
+ --color-warning-contrast-50: var(--color-warning-contrast-dark);
147
+ --color-warning-contrast-100: var(--color-warning-contrast-dark);
148
+ --color-warning-contrast-200: var(--color-warning-contrast-dark);
149
+ --color-warning-contrast-300: var(--color-warning-contrast-dark);
150
+ --color-warning-contrast-400: var(--color-warning-contrast-dark);
151
+ --color-warning-contrast-500: var(--color-warning-contrast-dark);
152
+ --color-warning-contrast-600: var(--color-warning-contrast-dark);
153
+ --color-warning-contrast-700: var(--color-warning-contrast-light);
154
+ --color-warning-contrast-800: var(--color-warning-contrast-light);
155
+ --color-warning-contrast-900: var(--color-warning-contrast-light);
156
+ --color-warning-contrast-950: var(--color-warning-contrast-light);
157
+ --color-error-50: oklch(89.99% 0.04 14.04deg);
158
+ --color-error-100: oklch(83.6% 0.08 19.82deg);
159
+ --color-error-200: oklch(77.52% 0.11 21.99deg);
160
+ --color-error-300: oklch(72.26% 0.15 24.9deg);
161
+ --color-error-400: oklch(67.55% 0.19 26.72deg);
162
+ --color-error-500: oklch(64.06% 0.22 28.71deg);
163
+ --color-error-600: oklch(59.71% 0.21 28.7deg);
164
+ --color-error-700: oklch(55.17% 0.2 28.73deg);
165
+ --color-error-800: oklch(50.88% 0.19 28.77deg);
166
+ --color-error-900: oklch(46.35% 0.18 28.89deg);
167
+ --color-error-950: oklch(42.03% 0.17 29.27deg);
168
+ --color-error-contrast-dark: var(--color-error-950);
169
+ --color-error-contrast-light: var(--color-error-50);
170
+ --color-error-contrast-50: var(--color-error-contrast-dark);
171
+ --color-error-contrast-100: var(--color-error-contrast-dark);
172
+ --color-error-contrast-200: var(--color-error-contrast-dark);
173
+ --color-error-contrast-300: var(--color-error-contrast-dark);
174
+ --color-error-contrast-400: var(--color-error-contrast-dark);
175
+ --color-error-contrast-500: var(--color-error-contrast-light);
176
+ --color-error-contrast-600: var(--color-error-contrast-light);
177
+ --color-error-contrast-700: var(--color-error-contrast-light);
178
+ --color-error-contrast-800: var(--color-error-contrast-light);
179
+ --color-error-contrast-900: var(--color-error-contrast-light);
180
+ --color-error-contrast-950: var(--color-error-contrast-light);
181
+ --color-surface-50: oklch(99.7% 0 91.27deg);
182
+ --color-surface-100: oklch(99.37% 0.01 93.48deg);
183
+ --color-surface-200: oklch(98.84% 0.01 88.63deg);
184
+ --color-surface-300: oklch(98.54% 0.02 89.32deg);
185
+ --color-surface-400: oklch(98.03% 0.02 87.12deg);
186
+ --color-surface-500: oklch(97.71% 0.03 88.72deg);
187
+ --color-surface-600: oklch(87.07% 0.03 89.2deg);
188
+ --color-surface-700: oklch(76.09% 0.02 89.81deg);
189
+ --color-surface-800: oklch(64.48% 0.02 86.15deg);
190
+ --color-surface-900: oklch(52.55% 0.02 86.44deg);
191
+ --color-surface-950: oklch(39.89% 0.02 86.87deg);
192
+ --color-surface-contrast-dark: var(--color-surface-950);
193
+ --color-surface-contrast-light: var(--color-surface-50);
194
+ --color-surface-contrast-50: var(--color-surface-contrast-dark);
195
+ --color-surface-contrast-100: var(--color-surface-contrast-dark);
196
+ --color-surface-contrast-200: var(--color-surface-contrast-dark);
197
+ --color-surface-contrast-300: var(--color-surface-contrast-dark);
198
+ --color-surface-contrast-400: var(--color-surface-contrast-dark);
199
+ --color-surface-contrast-500: var(--color-surface-contrast-dark);
200
+ --color-surface-contrast-600: var(--color-surface-contrast-dark);
201
+ --color-surface-contrast-700: var(--color-surface-contrast-dark);
202
+ --color-surface-contrast-800: var(--color-surface-contrast-light);
203
+ --color-surface-contrast-900: var(--color-surface-contrast-light);
204
+ --color-surface-contrast-950: var(--color-surface-contrast-light);
205
+
206
+ --shadow-color: oklch(0.6 0 89.876 / 0.4);
207
+
208
+ --border-card: 2px;
209
+ --filter-randomized-image: none;
210
+ --filter-ares-logo: none;
211
+ --filter-button-image: brightness(0) saturate(100%) invert(21%) sepia(75%) saturate(397%) hue-rotate(338deg) brightness(99%) contrast(93%);
212
+ }
213
+
214
+ html.dark {
215
+ @variant turnip {
216
+ --border-card: 0;
217
+ --filter-randomized-image: brightness(50%);
218
+ --filter-ares-logo: brightness(0) saturate(100%) invert(72%) sepia(8%) saturate(1524%) hue-rotate(3deg) brightness(90%) contrast(88%);
219
+ --filter-button-image: brightness(0) saturate(100%) invert(72%) sepia(8%) saturate(1524%) hue-rotate(3deg) brightness(90%) contrast(88%);
220
+ }
221
+ }
222
+
223
+ .icon {
224
+ @variant turnip {
225
+ filter: var(--filter-button-image);
226
+ margin: 0.3rem 0.2rem 0.2rem;
227
+ }
228
+ }
229
+
230
+
231
+ @layer base {
232
+ @variant turnip {
233
+
234
+ /* region components */
235
+ color: var(--color-secondary-0);
236
+
237
+ @variant dark {
238
+ color: var(--color-surface-950);
239
+ }
240
+
241
+ blockquote {
242
+ @apply mb-4;
243
+ font-style: italic;
244
+ border: 0;
245
+ text-align: center;
246
+ filter: brightness(140%);
247
+ }
248
+
249
+ h1, h2, h3, h4, h5, h6, .fake-h2, .fake-h3, .fake-h4 {
250
+ text-align: center;
251
+ margin-top: 0;
252
+ font-weight: bolder;
253
+ color: var(--color-primary-900);
254
+
255
+ @variant dark {
256
+ color: var(--color-primary-100);
257
+ }
258
+ }
259
+
260
+ h1 + p, h2 + p, h3 + p, h4 + p, h5 + p, h6 + p, .fake-h2 + p, .fake-h3 + p, .fake-h4 + p {
261
+ margin-top: 0.5lh;
262
+ }
263
+
264
+ h1 {
265
+ @apply text-4xl;
266
+ }
267
+
268
+ h2, .fake-h2 {
269
+ @apply text-3xl;
270
+ }
271
+
272
+ h3, .fake-h3 {
273
+ @apply text-2xl;
274
+ }
275
+
276
+ h4, .fake-h4 {
277
+ @apply text-xl;
278
+ }
279
+
280
+ h5 {
281
+ @apply text-lg;
282
+ }
283
+
284
+ h6 {
285
+ text-decoration: underline;
286
+ }
287
+
288
+ a {
289
+ text-decoration: underline;
290
+ color: var(--color-secondary-500);
291
+
292
+ @variant dark {
293
+ color: var(--color-secondary-300);
294
+ }
295
+ }
296
+
297
+ a:hover, a:focus {
298
+ filter: brightness(150%);
299
+ }
300
+
301
+ a:visited {
302
+ color: var(--color-secondary-950);
303
+
304
+ @variant dark {
305
+ color: var(--color-secondary-200);
306
+ }
307
+ }
308
+
309
+ ul {
310
+ list-style: inside;
311
+ }
312
+
313
+ ol {
314
+ list-style: decimal inside;
315
+ }
316
+
317
+ p{
318
+ @apply mb-3;
319
+ }
320
+
321
+ /* endregion components */
322
+ }
323
+ }
324
+
325
+ @theme {
326
+ --color-secondary-0: oklch(99% 0.02 38.38deg);
327
+ }
@@ -1,63 +1,81 @@
1
- <script>import { CreateUrlResult, jsonToCreateUrlResponse } from "../../types/api/CreateUrl";
2
- import { getToastStore } from "@skeletonlabs/skeleton";
3
- export let queryParams = "";
4
- const toastStore = getToastStore();
5
- let request = {
6
- queryParams: "",
7
- shortUrl: "",
8
- password: ""
9
- };
10
- $:
11
- request.queryParams = queryParams;
12
- const failToast = {
13
- message: "Adding new url failed"
14
- };
15
- const toastMap = /* @__PURE__ */ new Map([
16
- [CreateUrlResult.Success, {
17
- message: "Successfully added new url"
18
- }],
19
- [CreateUrlResult.Duplicate, {
20
- message: "Short url already used; try again with another url"
21
- }],
22
- [CreateUrlResult.Fail, failToast]
23
- ]);
24
- const post = () => {
25
- fetch("/api/create-url", {
26
- method: "POST",
27
- headers: {
28
- "Content-Type": "application/json"
29
- },
30
- body: JSON.stringify(request)
31
- }).then(
32
- (resp) => resp.json()
33
- ).then((json) => {
34
- const properResp = jsonToCreateUrlResponse(json);
35
- toastStore.trigger(toastMap.get(properResp.result) ?? failToast);
36
- });
37
- };
1
+ <script lang="ts">
2
+ import { type CreateUrlRequest, CreateUrlResult, jsonToCreateUrlResponse } from "../../types/api/CreateUrl";
3
+ import type { ToastContext } from "@skeletonlabs/skeleton-svelte";
4
+ import { getContext } from "svelte";
5
+ import type { ToastSettings } from "./ToastSettings";
6
+ import { PinyaButton } from "../../ui/elements/index";
7
+
8
+ export const toast: ToastContext = getContext("toast");
9
+
10
+
11
+ interface Props {
12
+ queryParams?: string;
13
+ }
14
+
15
+ let { queryParams = "" }: Props = $props();
16
+
17
+ let request: CreateUrlRequest = $state({
18
+ queryParams: "",
19
+ shortUrl: "",
20
+ password: ""
21
+ });
22
+
23
+ $effect(() => {
24
+ request.queryParams = queryParams;
25
+ });
26
+
27
+
28
+ const failToast: ToastSettings = {
29
+ title: "Adding new url failed",
30
+ type: "error"
31
+ };
32
+ const toastMap = new Map<CreateUrlResult, ToastSettings>([
33
+ [CreateUrlResult.Success, {
34
+ title: "Successfully added new url"
35
+ }],
36
+ [CreateUrlResult.Duplicate, {
37
+ title: "Short url already used; try again with another url"
38
+ }],
39
+ [CreateUrlResult.Fail, failToast]
40
+ ]);
41
+ const post = () => {
42
+ fetch("/api/create-url", {
43
+ method: "POST",
44
+ headers: {
45
+ "Content-Type": "application/json"
46
+ },
47
+ body: JSON.stringify(request)
48
+ }).then(resp =>
49
+ resp.json()
50
+ ).then(json => {
51
+ const properResp = jsonToCreateUrlResponse(json);
52
+ toast.create(toastMap.get(properResp.result) ?? failToast);
53
+ });
54
+ };
38
55
  </script>
39
56
 
40
57
  <div class="local-list">
41
58
  <label for="short-url">Short URL for url shortener</label>
42
59
  <input bind:value={request.shortUrl}
43
60
  name="short-url"
44
- class="input"
61
+ class="input border-[2px] border-primary-500"
45
62
  type="text"
46
63
  placeholder="short-url" />
47
64
  <label for="password">Password</label>
48
65
  <input bind:value={request.password}
49
66
  name="password"
50
- class="input"
67
+ class="input border-[2px] border-primary-500"
51
68
  type="password"
52
69
  placeholder="ILoveTurnips" />
53
- <button class="send-link btn variant-filled" on:click={post}>Send link</button>
70
+ <PinyaButton onclick={post}>Send link</PinyaButton>
54
71
  </div>
55
72
 
56
73
  <style>
57
74
  .local-list {
58
75
  display: flex;
59
76
  flex-direction: column;
60
- gap: 0.25lh;
77
+ gap: 0.5lh;
78
+ margin-top: 1lh;
61
79
  }
62
80
 
63
81
  .send-link {
@@ -1,16 +1,9 @@
1
- import { SvelteComponent } from "svelte";
2
- declare const __propDef: {
3
- props: {
4
- queryParams?: string | undefined;
5
- };
6
- events: {
7
- [evt: string]: CustomEvent<any>;
8
- };
9
- slots: {};
10
- };
11
- export type CreateUrlFormProps = typeof __propDef.props;
12
- export type CreateUrlFormEvents = typeof __propDef.events;
13
- export type CreateUrlFormSlots = typeof __propDef.slots;
14
- export default class CreateUrlForm extends SvelteComponent<CreateUrlFormProps, CreateUrlFormEvents, CreateUrlFormSlots> {
1
+ import type { ToastContext } from "@skeletonlabs/skeleton-svelte";
2
+ interface Props {
3
+ queryParams?: string;
15
4
  }
16
- export {};
5
+ declare const CreateUrlForm: import("svelte").Component<Props, {
6
+ toast: ToastContext;
7
+ }, "">;
8
+ type CreateUrlForm = ReturnType<typeof CreateUrlForm>;
9
+ export default CreateUrlForm;