@sierra-95/svelte-scaffold 1.0.1

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 (146) hide show
  1. package/README.md +8 -0
  2. package/dist/Hooks/layout_menu.d.ts +1 -0
  3. package/dist/Hooks/layout_menu.js +24 -0
  4. package/dist/Hooks/preview.d.ts +3 -0
  5. package/dist/Hooks/preview.js +24 -0
  6. package/dist/components/Core/Alerts/Backdrop/backdrop.svelte +27 -0
  7. package/dist/components/Core/Alerts/Backdrop/backdrop.svelte.d.ts +15 -0
  8. package/dist/components/Core/Alerts/Modal/modal.svelte +40 -0
  9. package/dist/components/Core/Alerts/Modal/modal.svelte.d.ts +26 -0
  10. package/dist/components/Core/Alerts/Toast/toast.css +39 -0
  11. package/dist/components/Core/Alerts/Toast/toast.svelte +32 -0
  12. package/dist/components/Core/Alerts/Toast/toast.svelte.d.ts +26 -0
  13. package/dist/components/Core/Alerts/Wrapper/wrapper.svelte +19 -0
  14. package/dist/components/Core/Alerts/Wrapper/wrapper.svelte.d.ts +17 -0
  15. package/dist/components/Core/Alerts/site-under-maintenance/site-under-maintenance.svelte +34 -0
  16. package/dist/components/Core/Alerts/site-under-maintenance/site-under-maintenance.svelte.d.ts +11 -0
  17. package/dist/components/Core/Form/Hr/hr.svelte +11 -0
  18. package/dist/components/Core/Form/Hr/hr.svelte.d.ts +21 -0
  19. package/dist/components/Core/Form/Input/FileInput/fileInput.svelte +130 -0
  20. package/dist/components/Core/Form/Input/FileInput/fileInput.svelte.d.ts +6 -0
  21. package/dist/components/Core/Form/Input/FileInput/preview.svelte +38 -0
  22. package/dist/components/Core/Form/Input/FileInput/preview.svelte.d.ts +18 -0
  23. package/dist/components/Core/Form/Input/input/input.svelte +17 -0
  24. package/dist/components/Core/Form/Input/input/input.svelte.d.ts +24 -0
  25. package/dist/components/Core/Form/Input/password/password.svelte +27 -0
  26. package/dist/components/Core/Form/Input/password/password.svelte.d.ts +23 -0
  27. package/dist/components/Core/Menus/DropdownContainer/dropdown.svelte +94 -0
  28. package/dist/components/Core/Menus/DropdownContainer/dropdown.svelte.d.ts +9 -0
  29. package/dist/components/Core/Menus/MenuItem/menuItem.svelte +44 -0
  30. package/dist/components/Core/Menus/MenuItem/menuItem.svelte.d.ts +10 -0
  31. package/dist/components/Core/Menus/UserMenu/profile.svelte +35 -0
  32. package/dist/components/Core/Menus/UserMenu/profile.svelte.d.ts +11 -0
  33. package/dist/components/Core/others/Button/Flip/button.css +51 -0
  34. package/dist/components/Core/others/Button/Flip/button.svelte +69 -0
  35. package/dist/components/Core/others/Button/Flip/button.svelte.d.ts +21 -0
  36. package/dist/components/Core/others/Button/Marquee/button.css +37 -0
  37. package/dist/components/Core/others/Button/Marquee/button.svelte +45 -0
  38. package/dist/components/Core/others/Button/Marquee/button.svelte.d.ts +9 -0
  39. package/dist/components/Core/others/Button/Swipe/button.css +31 -0
  40. package/dist/components/Core/others/Button/Swipe/button.svelte +45 -0
  41. package/dist/components/Core/others/Button/Swipe/button.svelte.d.ts +17 -0
  42. package/dist/components/Core/others/Button/default/button.css +52 -0
  43. package/dist/components/Core/others/Button/default/button.svelte +112 -0
  44. package/dist/components/Core/others/Button/default/button.svelte.d.ts +16 -0
  45. package/dist/components/Core/others/Button/select/select.svelte +29 -0
  46. package/dist/components/Core/others/Button/select/select.svelte.d.ts +3 -0
  47. package/dist/components/Core/others/Button/theme/theme.css +122 -0
  48. package/dist/components/Core/others/Button/theme/theme.svelte +68 -0
  49. package/dist/components/Core/others/Button/theme/theme.svelte.d.ts +19 -0
  50. package/dist/components/Core/others/Button/times/times.svelte +25 -0
  51. package/dist/components/Core/others/Button/times/times.svelte.d.ts +6 -0
  52. package/dist/components/Core/others/Clock/Date/date.svelte +25 -0
  53. package/dist/components/Core/others/Clock/Date/date.svelte.d.ts +20 -0
  54. package/dist/components/Core/others/Clock/Time/time.svelte +35 -0
  55. package/dist/components/Core/others/Clock/Time/time.svelte.d.ts +20 -0
  56. package/dist/components/Core/others/Previews/Audio/audio.svelte +62 -0
  57. package/dist/components/Core/others/Previews/Audio/audio.svelte.d.ts +22 -0
  58. package/dist/components/Core/others/Previews/Document/documents.svelte +25 -0
  59. package/dist/components/Core/others/Previews/Document/documents.svelte.d.ts +22 -0
  60. package/dist/components/Core/others/Previews/Image/image.svelte +27 -0
  61. package/dist/components/Core/others/Previews/Image/image.svelte.d.ts +22 -0
  62. package/dist/components/Core/others/Previews/Video/video.svelte +29 -0
  63. package/dist/components/Core/others/Previews/Video/video.svelte.d.ts +24 -0
  64. package/dist/components/Core/others/Progress/CircularProgress/CircularProgress.svelte +55 -0
  65. package/dist/components/Core/others/Progress/CircularProgress/CircularProgress.svelte.d.ts +15 -0
  66. package/dist/components/Core/others/Progress/LinearProgress/LinearProgress.css +61 -0
  67. package/dist/components/Core/others/Progress/LinearProgress/LinearProgress.svelte +79 -0
  68. package/dist/components/Core/others/Progress/LinearProgress/LinearProgress.svelte.d.ts +26 -0
  69. package/dist/components/Modules/Editor/Hooks/extractContent.d.ts +7 -0
  70. package/dist/components/Modules/Editor/Hooks/extractContent.js +15 -0
  71. package/dist/components/Modules/Editor/Hooks/extractImage.d.ts +7 -0
  72. package/dist/components/Modules/Editor/Hooks/extractImage.js +30 -0
  73. package/dist/components/Modules/Editor/Hooks/insertImage.d.ts +5 -0
  74. package/dist/components/Modules/Editor/Hooks/insertImage.js +27 -0
  75. package/dist/components/Modules/Editor/Hooks/insertYoutube.d.ts +6 -0
  76. package/dist/components/Modules/Editor/Hooks/insertYoutube.js +35 -0
  77. package/dist/components/Modules/Editor/Marks/Links/links.svelte +79 -0
  78. package/dist/components/Modules/Editor/Marks/Links/links.svelte.d.ts +21 -0
  79. package/dist/components/Modules/Editor/Marks/TextFormatting/textFormatting.svelte +32 -0
  80. package/dist/components/Modules/Editor/Marks/TextFormatting/textFormatting.svelte.d.ts +21 -0
  81. package/dist/components/Modules/Editor/Nodes/Headings/heading.svelte +58 -0
  82. package/dist/components/Modules/Editor/Nodes/Headings/heading.svelte.d.ts +21 -0
  83. package/dist/components/Modules/Editor/Nodes/History/history.svelte +21 -0
  84. package/dist/components/Modules/Editor/Nodes/History/history.svelte.d.ts +21 -0
  85. package/dist/components/Modules/Editor/Nodes/Images/images.svelte +85 -0
  86. package/dist/components/Modules/Editor/Nodes/Images/images.svelte.d.ts +21 -0
  87. package/dist/components/Modules/Editor/Nodes/Lists/lists.svelte +30 -0
  88. package/dist/components/Modules/Editor/Nodes/Lists/lists.svelte.d.ts +21 -0
  89. package/dist/components/Modules/Editor/Nodes/TextAlign/textAlign.svelte +55 -0
  90. package/dist/components/Modules/Editor/Nodes/TextAlign/textAlign.svelte.d.ts +21 -0
  91. package/dist/components/Modules/Editor/Nodes/TextColor/styles.css +18 -0
  92. package/dist/components/Modules/Editor/Nodes/TextColor/textColor.svelte +88 -0
  93. package/dist/components/Modules/Editor/Nodes/TextColor/textColor.svelte.d.ts +22 -0
  94. package/dist/components/Modules/Editor/Nodes/Youtube/youtube.svelte +32 -0
  95. package/dist/components/Modules/Editor/Nodes/Youtube/youtube.svelte.d.ts +21 -0
  96. package/dist/components/Modules/Editor/colors.d.ts +2 -0
  97. package/dist/components/Modules/Editor/colors.js +21 -0
  98. package/dist/components/Modules/Editor/controls.svelte +72 -0
  99. package/dist/components/Modules/Editor/controls.svelte.d.ts +24 -0
  100. package/dist/components/Modules/Editor/extensions.d.ts +1 -0
  101. package/dist/components/Modules/Editor/extensions.js +59 -0
  102. package/dist/components/Modules/Editor/main.svelte +42 -0
  103. package/dist/components/Modules/Editor/main.svelte.d.ts +25 -0
  104. package/dist/components/Modules/Editor/save.svelte +28 -0
  105. package/dist/components/Modules/Editor/save.svelte.d.ts +23 -0
  106. package/dist/components/Modules/Editor/styles/controls.css +70 -0
  107. package/dist/components/Modules/Editor/styles/main.css +43 -0
  108. package/dist/components/Modules/Editor/tools.d.ts +14 -0
  109. package/dist/components/Modules/Editor/tools.js +23 -0
  110. package/dist/components/Modules/FilePicker/cloudStore.svelte +96 -0
  111. package/dist/components/Modules/FilePicker/cloudStore.svelte.d.ts +20 -0
  112. package/dist/components/Modules/FilePicker/controls.svelte +122 -0
  113. package/dist/components/Modules/FilePicker/controls.svelte.d.ts +20 -0
  114. package/dist/components/Modules/FilePicker/filePicker.svelte +61 -0
  115. package/dist/components/Modules/FilePicker/filePicker.svelte.d.ts +18 -0
  116. package/dist/components/Modules/FilePicker/previews.svelte +19 -0
  117. package/dist/components/Modules/FilePicker/previews.svelte.d.ts +20 -0
  118. package/dist/components/Modules/Layout/Header/header.css +38 -0
  119. package/dist/components/Modules/Layout/Header/header.svelte +29 -0
  120. package/dist/components/Modules/Layout/Header/header.svelte.d.ts +21 -0
  121. package/dist/components/Modules/Layout/Menu/menu.css +45 -0
  122. package/dist/components/Modules/Layout/Menu/menu.svelte +129 -0
  123. package/dist/components/Modules/Layout/Menu/menu.svelte.d.ts +24 -0
  124. package/dist/components/Modules/Layout/background.svelte +28 -0
  125. package/dist/components/Modules/Layout/background.svelte.d.ts +26 -0
  126. package/dist/components/Modules/Layout/main.css +21 -0
  127. package/dist/components/Modules/Layout/main.svelte +119 -0
  128. package/dist/components/Modules/Layout/main.svelte.d.ts +27 -0
  129. package/dist/global.css +226 -0
  130. package/dist/index.d.ts +40 -0
  131. package/dist/index.js +53 -0
  132. package/dist/stores/core/general.d.ts +3 -0
  133. package/dist/stores/core/general.js +5 -0
  134. package/dist/stores/core/ismobile.d.ts +1 -0
  135. package/dist/stores/core/ismobile.js +14 -0
  136. package/dist/stores/core/modal.d.ts +14 -0
  137. package/dist/stores/core/modal.js +35 -0
  138. package/dist/stores/core/user.d.ts +9 -0
  139. package/dist/stores/core/user.js +14 -0
  140. package/dist/stores/modules/editor.d.ts +9 -0
  141. package/dist/stores/modules/editor.js +14 -0
  142. package/dist/stores/modules/fileInput.d.ts +22 -0
  143. package/dist/stores/modules/fileInput.js +25 -0
  144. package/dist/stores/modules/toast.d.ts +8 -0
  145. package/dist/stores/modules/toast.js +21 -0
  146. package/package.json +75 -0
@@ -0,0 +1,226 @@
1
+ :root{
2
+ /**Colors*/
3
+ --primary-light-bg: #1976D2;
4
+ --primary-dark-bg: #90CAF9;
5
+ --warning-light-bg: #E67E22;
6
+ --warning-dark-bg: #FFA94D;
7
+ --error-light-bg: #D32F2F;
8
+ --error-dark-bg: #F44336;
9
+ --hsl-220-14:hsl(220, 14%, 16%);
10
+
11
+ --light-Theme: #ffffff;
12
+ --light-secondary: #f3f4f6;
13
+ --light-tertiary: #e5e7eb;
14
+
15
+ --dark-Theme: #1f2224;
16
+ --dark-secondary: #2a2d2f;
17
+ --dark-tertiary: #3a3d40;
18
+
19
+ /*Text*/
20
+ --text-on-light: #1f2937;
21
+ --text-secondary-on-light: #4b5563;
22
+ --text-tertiary-on-light: #6b7280;
23
+
24
+ --text-on-dark: #d1d5db;
25
+ --text-secondary-on-dark: #9ca3af;
26
+ --text-tertiary-on-dark: #d1d5db80;
27
+
28
+ /*Icons*/
29
+ --icon-light: var(--text-on-light);
30
+ --icon-dark: var(--text-on-dark);
31
+
32
+ /*Header*/
33
+ --hamburger-light: var(--text-on-light);
34
+ --hamburger-dark: var(--text-on-dark);
35
+ --header-light: var(--light-Theme);
36
+ --header-dark: var(--hsl-220-14);
37
+
38
+ /*Side Menu*/
39
+ --sierra-menu-light: var(--light-Theme);
40
+ --sierra-menu-dark: hsl(220, 8%, 10%);
41
+ --menu-icon-active-bg-light: rgb(236, 244, 255);
42
+ --menu-icon-active-border-light: rgb(185, 214, 255);
43
+ --menu-icon-active-bg-dark: var(--hsl-220-14);
44
+ --menu-icon-active-border-dark: #374151 ;
45
+
46
+ /*Borders*/
47
+ --border-light: #d1d5db;
48
+ --border-dark: #282c33;
49
+
50
+ /*Menus*/
51
+ --menu-item-hover-light: rgba(0, 0, 0, 0.06);
52
+ --menu-item-hover-dark: rgba(255, 255, 255, 0.08);
53
+ --menu-item-active-light: rgba(0, 0, 0, 0.12);
54
+ --menu-item-active-dark: rgba(255, 255, 255, 0.16);
55
+
56
+ /*Inputs*/
57
+ --input-border-light: #E0E0E0;
58
+ --input-border-dark: #4a4d50;
59
+
60
+ /*Buttons*/
61
+ --button-light-text: var(--light-Theme);
62
+ --button-dark-text: var(--dark-Theme);
63
+
64
+ /*Scrollbars*/
65
+ --scroll-bar-thumb-light: #c1c1c1;
66
+ --scroll-bar-thumb-dark: #4a4d50;
67
+ --scroll-bar-thumb-light-hover: #a8a8a8;
68
+ --scroll-bar-thumb-dark-hover: #6b6e70;
69
+
70
+ /*Backgrounds*/
71
+ --box-shadow-light: 0 4px 10px rgba(0, 0, 0, 0.15);
72
+ --box-shadow-dark: 0 4px 14px rgba(0, 0, 0, 0.4), 0 0 2px rgba(255, 255, 255, 0.08);
73
+ /* Secondary Box Shadows */
74
+ --box-shadow-secondary-light: 0 2px 6px rgba(0, 0, 0, 0.08), 0 1px 2px rgba(0, 0, 0, 0.04);
75
+ --box-shadow-secondary-dark: 0 2px 8px rgba(0, 0, 0, 0.25), 0 0 1px rgba(255, 255, 255, 0.05);
76
+
77
+ --background-v1-gradient-line-light-start: #4ade90;
78
+ --background-v1-gradient-line-light-end: #3b82f6;
79
+ --background-v1-gradient-line-dark-start: #10b981;
80
+ --background-v1-gradient-line-dark-end: #6366f1;
81
+
82
+ }
83
+ body[data-theme='light'] {
84
+ background-color: var(--light-Theme);
85
+ color: var(--text-on-light);
86
+ --background : var(--light-Theme);
87
+ --background-secondary : var(--light-secondary);
88
+ --background-tertiary : var(--light-tertiary);
89
+ --text : var(--text-on-light);
90
+ --text-secondary : var(--text-secondary-on-light);
91
+ --text-tertiary : var(--text-tertiary-on-light);
92
+
93
+ --icon-theme: var(--icon-light);
94
+ --hamburger: var(--hamburger-light);
95
+ --header: var(--header-light);
96
+ --sierra-menu: var(--sierra-menu-light);
97
+ --border: var(--border-light);
98
+ --input-border: var(--input-border-light);
99
+ --menu-icon-active-bg: var(--menu-icon-active-bg-light);
100
+ --menu-icon-active-border: var(--menu-icon-active-border-light);
101
+
102
+ --menu-item-hover: var(--menu-item-hover-light);
103
+ --menu-item-active: var(--menu-item-active-light);
104
+ --button-text: var(--button-light-text);
105
+ --primary-bg: var(--primary-light-bg);
106
+ --warning-bg: var(--warning-light-bg);
107
+ --error-bg: var(--error-light-bg);
108
+ --box-shadow: var(--box-shadow-light);
109
+ --box-shadow-secondary: var(--box-shadow-secondary-light);
110
+ --scroll-bar-thumb: var(--scroll-bar-thumb-light);
111
+ --scroll-bar-thumb-hover: var(--scroll-bar-thumb-light-hover);
112
+ --background-v1-gradient-line-start: var(--background-v1-gradient-line-light-start);
113
+ --background-v1-gradient-line-end: var(--background-v1-gradient-line-light-end);
114
+ }
115
+
116
+ body, body[data-theme='dark']{
117
+ background-color: var(--dark-Theme);
118
+ color: var(--text-on-dark);
119
+ --background : var(--dark-Theme);
120
+ --background-secondary : var(--dark-secondary);
121
+ --background-tertiary : var(--dark-tertiary);
122
+ --text : var(--text-on-dark);
123
+ --text-secondary : var(--text-secondary-on-dark);
124
+ --text-tertiary : var(--text-tertiary-on-dark);
125
+
126
+ --icon-theme: var(--icon-dark);
127
+ --hamburger: var(--hamburger-dark);
128
+ --header: var(--header-dark);
129
+ --sierra-menu: var(--sierra-menu-dark);
130
+ --border: var(--border-dark);
131
+ --input-border: var(--input-border-dark);
132
+ --menu-icon-active-bg: var(--menu-icon-active-bg-dark);
133
+ --menu-icon-active-border: var(--menu-icon-active-border-dark);
134
+
135
+ --menu-item-hover: var(--menu-item-hover-dark);
136
+ --menu-item-active: var(--menu-item-active-dark);
137
+ --button-text: var(--button-dark-text);
138
+ --primary-bg: var(--primary-dark-bg);
139
+ --warning-bg: var(--warning-dark-bg);
140
+ --error-bg: var(--error-dark-bg);
141
+ --box-shadow: var(--box-shadow-dark);
142
+ --box-shadow-secondary: var(--box-shadow-secondary-dark);
143
+ --scroll-bar-thumb: var(--scroll-bar-thumb-dark);
144
+ --scroll-bar-thumb-hover: var(--scroll-bar-thumb-dark-hover);
145
+ --background-v1-gradient-line-start: var(--background-v1-gradient-line-dark-start);
146
+ --background-v1-gradient-line-end: var(--background-v1-gradient-line-dark-end);
147
+ }
148
+
149
+ /**Sierra Input*/
150
+ #sierra-input{
151
+ display: flex;
152
+ flex-direction: column;
153
+ gap: 0.2rem;
154
+ }
155
+ #sierra-input input {
156
+ padding: 0.75rem;
157
+ border: 1px solid var(--input-border);
158
+ border-radius: 4px;
159
+ background-color: transparent;
160
+ }
161
+
162
+ #sierra-input button {
163
+ position: absolute;
164
+ right: 0.75rem;
165
+ top: 50%;
166
+ transform: translateY(-50%);
167
+ }
168
+
169
+ #sierra-input button i{
170
+ color: var(--icon-theme);
171
+ }
172
+
173
+ button{
174
+ cursor: pointer;
175
+ }
176
+
177
+ .sierra-text-ellipsis{
178
+ white-space: nowrap;
179
+ overflow: hidden;
180
+ text-overflow: ellipsis;
181
+ }
182
+
183
+ .sierra-translate {
184
+ display: inline-block;
185
+ transition: transform 0.3s ease;
186
+ }
187
+
188
+ .sierra-translate:hover {
189
+ transform: translateY(-5px);
190
+ }
191
+
192
+ /**Select, Input**/
193
+ select:focus,
194
+ input:focus {
195
+ outline: none;
196
+ box-shadow: none;
197
+ }
198
+ select {
199
+ border-radius: 5px;
200
+ border: 1px solid var(--input-border);
201
+ background-color: unset;
202
+ }
203
+
204
+ select option {
205
+ background-color: var(--background-tertiary);
206
+ }
207
+
208
+
209
+
210
+ /* Scrollbar */
211
+ ::-webkit-scrollbar {
212
+ width: 8px;
213
+ }
214
+
215
+ ::-webkit-scrollbar-track {
216
+ background: transparent;
217
+ }
218
+
219
+ ::-webkit-scrollbar-thumb {
220
+ background: var(--scroll-bar-thumb);
221
+ border-radius: 4px;
222
+ }
223
+
224
+ ::-webkit-scrollbar-thumb:hover {
225
+ background: var(--scroll-bar-thumb-hover);
226
+ }
@@ -0,0 +1,40 @@
1
+ import './global.css';
2
+ export { default as CircularProgress } from './components/Core/others/Progress/CircularProgress/CircularProgress.svelte';
3
+ export { default as LinearProgress } from './components/Core/others/Progress/LinearProgress/LinearProgress.svelte';
4
+ export { default as Button } from './components/Core/others/Button/default/button.svelte';
5
+ export { default as ButtonFlip } from './components/Core/others/Button/Flip/button.svelte';
6
+ export { default as ButtonMarquee } from './components/Core/others/Button/Marquee/button.svelte';
7
+ export { default as ButtonSwipe } from './components/Core/others/Button/Swipe/button.svelte';
8
+ export { default as ButtonTheme } from './components/Core/others/Button/theme/theme.svelte';
9
+ export { default as ButtonTimes } from './components/Core/others/Button/times/times.svelte';
10
+ export { default as ButtonSelect } from './components/Core/others/Button/select/select.svelte';
11
+ export { default as Input } from './components/Core/Form/Input/input/input.svelte';
12
+ export { default as PasswordInput } from './components/Core/Form/Input/password/password.svelte';
13
+ export { default as FileInput } from './components/Core/Form/Input/FileInput/fileInput.svelte';
14
+ export { default as PreviewAudio } from './components/Core/others/Previews/Audio/audio.svelte';
15
+ export { default as PreviewImage } from './components/Core/others/Previews/Image/image.svelte';
16
+ export { default as PreviewVideo } from './components/Core/others/Previews/Video/video.svelte';
17
+ export { default as PreviewDocument } from './components/Core/others/Previews/Document/documents.svelte';
18
+ export { default as Modal } from './components/Core/Alerts/Modal/modal.svelte';
19
+ export { default as Backdrop } from './components/Core/Alerts/Backdrop/backdrop.svelte';
20
+ export { default as Wrapper } from './components/Core/Alerts/Wrapper/wrapper.svelte';
21
+ export { default as Toast } from './components/Core/Alerts/Toast/toast.svelte';
22
+ export { default as SiteUnderMaintenance } from './components/Core/Alerts/site-under-maintenance/site-under-maintenance.svelte';
23
+ export { default as MenuItem } from './components/Core/Menus/MenuItem/menuItem.svelte';
24
+ export { default as DropdownContainer } from './components/Core/Menus/DropdownContainer/dropdown.svelte';
25
+ export { default as UserMenu } from './components/Core/Menus/UserMenu/profile.svelte';
26
+ export { default as Time } from './components/Core/others/Clock/Time/time.svelte';
27
+ export { default as Date } from './components/Core/others/Clock/Date/date.svelte';
28
+ export { default as Hr } from './components/Core/Form/Hr/hr.svelte';
29
+ export { default as Editor } from './components/Modules/Editor/main.svelte';
30
+ export { default as Layout } from './components/Modules/Layout/main.svelte';
31
+ export { default as FilePicker } from './components/Modules/FilePicker/filePicker.svelte';
32
+ export { isLoading, isLoggedIn, theme, } from './stores/core/general.js';
33
+ export { isMobile } from './stores/core/ismobile.js';
34
+ export { User, resetUserStore } from './stores/core/user.js';
35
+ export { modalStore, resetModalStore } from './stores/core/modal.js';
36
+ export { editorStore, resetEditorStore } from './stores/modules/editor.js';
37
+ export { fileInputStore, resetFileInputStore } from './stores/modules/fileInput.js';
38
+ export { toastCarrier, setToastMessage, clearToastMessage } from './stores/modules/toast.js';
39
+ export { getPreviewUrlForMedia, toggleSelectForMedia, removeFileForMedia } from './Hooks/preview.js';
40
+ export { validateLayoutMenuSections } from './Hooks/layout_menu.js';
package/dist/index.js ADDED
@@ -0,0 +1,53 @@
1
+ import './global.css';
2
+ //####################CORE COMPONENTS########################
3
+ //Progress
4
+ export { default as CircularProgress } from './components/Core/others/Progress/CircularProgress/CircularProgress.svelte';
5
+ export { default as LinearProgress } from './components/Core/others/Progress/LinearProgress/LinearProgress.svelte';
6
+ //Buttons
7
+ export { default as Button } from './components/Core/others/Button/default/button.svelte';
8
+ export { default as ButtonFlip } from './components/Core/others/Button/Flip/button.svelte';
9
+ export { default as ButtonMarquee } from './components/Core/others/Button/Marquee/button.svelte';
10
+ export { default as ButtonSwipe } from './components/Core/others/Button/Swipe/button.svelte';
11
+ export { default as ButtonTheme } from './components/Core/others/Button/theme/theme.svelte';
12
+ export { default as ButtonTimes } from './components/Core/others/Button/times/times.svelte';
13
+ export { default as ButtonSelect } from './components/Core/others/Button/select/select.svelte';
14
+ //Inputs
15
+ export { default as Input } from './components/Core/Form/Input/input/input.svelte';
16
+ export { default as PasswordInput } from './components/Core/Form/Input/password/password.svelte';
17
+ export { default as FileInput } from './components/Core/Form/Input/FileInput/fileInput.svelte';
18
+ //Previews
19
+ export { default as PreviewAudio } from './components/Core/others/Previews/Audio/audio.svelte';
20
+ export { default as PreviewImage } from './components/Core/others/Previews/Image/image.svelte';
21
+ export { default as PreviewVideo } from './components/Core/others/Previews/Video/video.svelte';
22
+ export { default as PreviewDocument } from './components/Core/others/Previews/Document/documents.svelte';
23
+ //Alerts
24
+ export { default as Modal } from './components/Core/Alerts/Modal/modal.svelte';
25
+ export { default as Backdrop } from './components/Core/Alerts/Backdrop/backdrop.svelte';
26
+ export { default as Wrapper } from './components/Core/Alerts/Wrapper/wrapper.svelte';
27
+ export { default as Toast } from './components/Core/Alerts/Toast/toast.svelte';
28
+ export { default as SiteUnderMaintenance } from './components/Core/Alerts/site-under-maintenance/site-under-maintenance.svelte';
29
+ //Menus
30
+ export { default as MenuItem } from './components/Core/Menus/MenuItem/menuItem.svelte';
31
+ export { default as DropdownContainer } from './components/Core/Menus/DropdownContainer/dropdown.svelte';
32
+ export { default as UserMenu } from './components/Core/Menus/UserMenu/profile.svelte';
33
+ //others
34
+ export { default as Time } from './components/Core/others/Clock/Time/time.svelte';
35
+ export { default as Date } from './components/Core/others/Clock/Date/date.svelte';
36
+ export { default as Hr } from './components/Core/Form/Hr/hr.svelte';
37
+ //####################MODULES COMPONENTS########################
38
+ export { default as Editor } from './components/Modules/Editor/main.svelte';
39
+ export { default as Layout } from './components/Modules/Layout/main.svelte';
40
+ export { default as FilePicker } from './components/Modules/FilePicker/filePicker.svelte';
41
+ //#######################STORES########################
42
+ //Core
43
+ export { isLoading, isLoggedIn, theme, } from './stores/core/general.js';
44
+ export { isMobile } from './stores/core/ismobile.js';
45
+ export { User, resetUserStore } from './stores/core/user.js';
46
+ export { modalStore, resetModalStore } from './stores/core/modal.js';
47
+ //Modules
48
+ export { editorStore, resetEditorStore } from './stores/modules/editor.js';
49
+ export { fileInputStore, resetFileInputStore } from './stores/modules/fileInput.js';
50
+ export { toastCarrier, setToastMessage, clearToastMessage } from './stores/modules/toast.js';
51
+ //#######################HOOKS/UTILS########################
52
+ export { getPreviewUrlForMedia, toggleSelectForMedia, removeFileForMedia } from './Hooks/preview.js';
53
+ export { validateLayoutMenuSections } from './Hooks/layout_menu.js';
@@ -0,0 +1,3 @@
1
+ export const isLoading: import("svelte/store").Writable<boolean>;
2
+ export const isLoggedIn: import("svelte/store").Writable<boolean>;
3
+ export const theme: import("svelte/store").Writable<string>;
@@ -0,0 +1,5 @@
1
+ import { writable } from 'svelte/store';
2
+
3
+ export const isLoading = writable(false);
4
+ export const isLoggedIn = writable(false);
5
+ export const theme = writable('');
@@ -0,0 +1 @@
1
+ export const isMobile: import("svelte/store").Writable<boolean>;
@@ -0,0 +1,14 @@
1
+ import { writable } from 'svelte/store';
2
+ import { browser } from '$app/environment';
3
+
4
+ export const isMobile = writable(true);
5
+
6
+ if (browser) {
7
+ const updateIsMobile = () => {
8
+ isMobile.set(window.innerWidth < 768);
9
+ };
10
+ updateIsMobile();
11
+ window.addEventListener('resize', updateIsMobile);
12
+
13
+ // return () => window.removeEventListener('resize', updateIsMobile);
14
+ }
@@ -0,0 +1,14 @@
1
+ /** @type {import('svelte/store').Writable<ModalData>} */
2
+ export const modalStore: import("svelte/store").Writable<ModalData>;
3
+ export function resetModalStore(): void;
4
+ export type ModalData = {
5
+ open: boolean;
6
+ title: string;
7
+ content?: string;
8
+ confirmText?: string;
9
+ cancelText?: string;
10
+ onConfirm?: (() => void) | null;
11
+ onCancel?: (() => void) | null;
12
+ closeOnOverlay?: boolean;
13
+ render?: (() => any) | null;
14
+ };
@@ -0,0 +1,35 @@
1
+ import { writable } from 'svelte/store';
2
+
3
+ /**
4
+ * @typedef {{
5
+ * open: boolean,
6
+ * title: string,
7
+ * content?: string,
8
+ * confirmText?: string,
9
+ * cancelText?: string,
10
+ * onConfirm?: (() => void) | null,
11
+ * onCancel?: (() => void) | null,
12
+ * closeOnOverlay?: boolean,
13
+ * render?: (() => any) | null
14
+ * }} ModalData
15
+ */
16
+
17
+ /** @type {ModalData} */
18
+ const defaultModalState = {
19
+ open: false,
20
+ title: '',
21
+ content: '',
22
+ confirmText: 'Confirm',
23
+ cancelText: 'Cancel',
24
+ onConfirm: null,
25
+ onCancel: null,
26
+ closeOnOverlay: true,
27
+ render: null
28
+ };
29
+
30
+ /** @type {import('svelte/store').Writable<ModalData>} */
31
+ export const modalStore = writable({ ...defaultModalState });
32
+
33
+ export const resetModalStore = () => {
34
+ modalStore.set({ ...defaultModalState });
35
+ };
@@ -0,0 +1,9 @@
1
+ export type UserState = {
2
+ userId: string;
3
+ firstName: string;
4
+ lastName: string;
5
+ email: string;
6
+ phone: string;
7
+ };
8
+ export declare const User: import("svelte/store").Writable<UserState>;
9
+ export declare function resetUserStore(): void;
@@ -0,0 +1,14 @@
1
+ import { writable } from 'svelte/store';
2
+ const defaultUserState = {
3
+ userId: '',
4
+ firstName: '',
5
+ lastName: '',
6
+ email: '',
7
+ phone: ''
8
+ };
9
+ export const User = writable({
10
+ ...defaultUserState
11
+ });
12
+ export function resetUserStore() {
13
+ User.set({ ...defaultUserState });
14
+ }
@@ -0,0 +1,9 @@
1
+ export type EditorState = {
2
+ r2_key: string;
3
+ serverGetUrl: string;
4
+ serverUploadUrl: string;
5
+ serverDeleteUrl: string;
6
+ useFilePicker: boolean;
7
+ };
8
+ export declare const editorStore: import("svelte/store").Writable<EditorState>;
9
+ export declare function resetEditorStore(): void;
@@ -0,0 +1,14 @@
1
+ import { writable } from 'svelte/store';
2
+ const defaultEditorState = {
3
+ r2_key: '',
4
+ serverGetUrl: '',
5
+ serverUploadUrl: '',
6
+ serverDeleteUrl: '',
7
+ useFilePicker: true,
8
+ };
9
+ export const editorStore = writable({
10
+ ...defaultEditorState
11
+ });
12
+ export function resetEditorStore() {
13
+ editorStore.set({ ...defaultEditorState });
14
+ }
@@ -0,0 +1,22 @@
1
+ export type FileInputState = {
2
+ uploadModalOpen: boolean;
3
+ selectedFiles: File[];
4
+ sizeConstraint: number;
5
+ uploadType: Array<'image' | 'audio' | 'video' | 'pdf'>;
6
+ activeTab: 'cloud' | 'upload';
7
+ activeMenu: 'Documents' | 'Music' | 'Pictures' | 'Videos';
8
+ disabledMenuItem: Array<'Music' | 'Documents' | 'Pictures' | 'Videos'> | null;
9
+ manage: boolean;
10
+ submissions: {
11
+ id: string;
12
+ url: string;
13
+ }[];
14
+ submissionComplete: boolean;
15
+ r2_key: string;
16
+ serverGetUrl: string;
17
+ serverUploadUrl: string;
18
+ serverDeleteUrl: string;
19
+ requestReload: boolean;
20
+ };
21
+ export declare const fileInputStore: import("svelte/store").Writable<FileInputState>;
22
+ export declare function resetFileInputStore(): void;
@@ -0,0 +1,25 @@
1
+ import { writable } from 'svelte/store';
2
+ const defaultFileInputState = {
3
+ uploadModalOpen: false,
4
+ selectedFiles: [],
5
+ sizeConstraint: 10 * 1024 * 1024,
6
+ uploadType: ['image', 'audio', 'video', 'pdf'],
7
+ // FilePicker
8
+ activeTab: 'cloud',
9
+ activeMenu: 'Pictures',
10
+ disabledMenuItem: null,
11
+ manage: false,
12
+ submissions: [],
13
+ submissionComplete: false,
14
+ r2_key: '',
15
+ serverGetUrl: '',
16
+ serverUploadUrl: '',
17
+ serverDeleteUrl: '',
18
+ requestReload: false
19
+ };
20
+ export const fileInputStore = writable({
21
+ ...defaultFileInputState
22
+ });
23
+ export function resetFileInputStore() {
24
+ fileInputStore.set({ ...defaultFileInputState });
25
+ }
@@ -0,0 +1,8 @@
1
+ export interface ToastCarrier {
2
+ status: 'info' | 'success' | 'warning' | 'error';
3
+ message: string | null;
4
+ disableTimeout: boolean;
5
+ }
6
+ export declare const toastCarrier: import("svelte/store").Writable<ToastCarrier>;
7
+ export declare const setToastMessage: (status: ToastCarrier["status"], message: string, duration?: number, disableTimeout?: boolean) => void;
8
+ export declare const clearToastMessage: () => void;
@@ -0,0 +1,21 @@
1
+ import { writable } from 'svelte/store';
2
+ const defaultState = {
3
+ status: 'success',
4
+ message: null,
5
+ disableTimeout: false,
6
+ };
7
+ export const toastCarrier = writable({ ...defaultState });
8
+ let timeoutId;
9
+ export const setToastMessage = (status, message, duration = 6000, disableTimeout = false) => {
10
+ toastCarrier.set({ status, message, disableTimeout });
11
+ if (disableTimeout)
12
+ return;
13
+ if (timeoutId)
14
+ clearTimeout(timeoutId);
15
+ timeoutId = setTimeout(() => {
16
+ clearToastMessage();
17
+ }, duration);
18
+ };
19
+ export const clearToastMessage = () => {
20
+ toastCarrier.set({ ...defaultState });
21
+ };
package/package.json ADDED
@@ -0,0 +1,75 @@
1
+ {
2
+ "name": "@sierra-95/svelte-scaffold",
3
+ "version": "1.0.1",
4
+ "scripts": {
5
+ "dev": "vite dev",
6
+ "build": "vite build && npm run prepack",
7
+ "preview": "vite preview",
8
+ "prepare": "svelte-kit sync || echo ''",
9
+ "prepack": "svelte-kit sync && svelte-package && publint",
10
+ "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
11
+ "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch"
12
+ },
13
+ "files": [
14
+ "dist",
15
+ "!dist/**/*.test.*",
16
+ "!dist/**/*.spec.*"
17
+ ],
18
+ "sideEffects": [
19
+ "**/*.css"
20
+ ],
21
+ "svelte": "./dist/index.js",
22
+ "types": "./dist/index.d.ts",
23
+ "type": "module",
24
+ "exports": {
25
+ ".": {
26
+ "types": "./dist/index.d.ts",
27
+ "svelte": "./dist/index.js"
28
+ },
29
+ "./global.css": {
30
+ "default": "./dist/global.css"
31
+ }
32
+ },
33
+ "peerDependencies": {
34
+ "svelte": "^5.0.0"
35
+ },
36
+ "devDependencies": {
37
+ "@sveltejs/adapter-auto": "^6.0.1",
38
+ "@sveltejs/kit": "^2.21.2",
39
+ "@sveltejs/package": "^2.3.11",
40
+ "@sveltejs/vite-plugin-svelte": "^5.1.0",
41
+ "@tailwindcss/forms": "^0.5.10",
42
+ "@tailwindcss/typography": "^0.5.16",
43
+ "@tailwindcss/vite": "^4.1.8",
44
+ "publint": "^0.3.12",
45
+ "svelte": "^5.33.14",
46
+ "svelte-check": "^4.2.1",
47
+ "tailwindcss": "^4.1.8",
48
+ "typescript": "^5.8.3",
49
+ "vite": "^6.3.5"
50
+ },
51
+ "keywords": [
52
+ "svelte"
53
+ ],
54
+ "homepage": "https://michaelmachohi.com",
55
+ "author": {
56
+ "name": "Michael Machohi",
57
+ "email": "me@michaelmachohi.com"
58
+ },
59
+ "repository": {
60
+ "type": "git",
61
+ "url": "git+https://github.com/sierra-95/svelte-scaffold-docs.git"
62
+ },
63
+ "dependencies": {
64
+ "@tiptap/core": "^3.13.0",
65
+ "@tiptap/extension-bubble-menu": "^3.13.0",
66
+ "@tiptap/extension-color": "^3.13.0",
67
+ "@tiptap/extension-highlight": "^3.13.0",
68
+ "@tiptap/extension-image": "^3.13.0",
69
+ "@tiptap/extension-text-align": "^3.13.0",
70
+ "@tiptap/extension-text-style": "^3.13.0",
71
+ "@tiptap/extension-youtube": "^3.13.0",
72
+ "@tiptap/pm": "^3.13.0",
73
+ "@tiptap/starter-kit": "^3.13.0"
74
+ }
75
+ }