@joyautomation/salt 0.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.
- package/LICENSE +674 -0
- package/README.md +58 -0
- package/dist/actions.d.ts +2 -0
- package/dist/actions.js +15 -0
- package/dist/client.d.ts +3 -0
- package/dist/client.js +12 -0
- package/dist/components/ThemeButton.svelte +17 -0
- package/dist/components/ThemeButton.svelte.d.ts +17 -0
- package/dist/components/Toast.svelte +67 -0
- package/dist/components/Toast.svelte.d.ts +14 -0
- package/dist/components/Toggle.svelte +75 -0
- package/dist/components/Toggle.svelte.d.ts +21 -0
- package/dist/components/icons/ArrowPath.svelte +19 -0
- package/dist/components/icons/ArrowPath.svelte.d.ts +23 -0
- package/dist/components/icons/ChevronDown.svelte +15 -0
- package/dist/components/icons/ChevronDown.svelte.d.ts +23 -0
- package/dist/components/icons/ChevronUpDown.svelte +18 -0
- package/dist/components/icons/ChevronUpDown.svelte.d.ts +16 -0
- package/dist/components/icons/DocumentMinus.svelte +19 -0
- package/dist/components/icons/DocumentMinus.svelte.d.ts +23 -0
- package/dist/components/icons/DocumentPlus.svelte +19 -0
- package/dist/components/icons/DocumentPlus.svelte.d.ts +23 -0
- package/dist/components/icons/Link.svelte +19 -0
- package/dist/components/icons/Link.svelte.d.ts +23 -0
- package/dist/components/icons/Moon.svelte +18 -0
- package/dist/components/icons/Moon.svelte.d.ts +16 -0
- package/dist/components/icons/PauseCircle.svelte +18 -0
- package/dist/components/icons/PauseCircle.svelte.d.ts +16 -0
- package/dist/components/icons/Pencil.svelte +18 -0
- package/dist/components/icons/Pencil.svelte.d.ts +16 -0
- package/dist/components/icons/PlayCircle.svelte +20 -0
- package/dist/components/icons/PlayCircle.svelte.d.ts +23 -0
- package/dist/components/icons/Plus.svelte +14 -0
- package/dist/components/icons/Plus.svelte.d.ts +16 -0
- package/dist/components/icons/Sun.svelte +18 -0
- package/dist/components/icons/Sun.svelte.d.ts +16 -0
- package/dist/components/icons/Trash.svelte +18 -0
- package/dist/components/icons/Trash.svelte.d.ts +16 -0
- package/dist/components/icons/WrenchScrewdriver.svelte +18 -0
- package/dist/components/icons/WrenchScrewdriver.svelte.d.ts +16 -0
- package/dist/components/icons/Xmark.svelte +14 -0
- package/dist/components/icons/Xmark.svelte.d.ts +16 -0
- package/dist/components/icons/index.d.ts +14 -0
- package/dist/components/icons/index.js +14 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +5 -0
- package/dist/stores/notifications.d.ts +12 -0
- package/dist/stores/notifications.js +17 -0
- package/dist/styles/buttons.scss +72 -0
- package/dist/styles/colors.scss +283 -0
- package/dist/styles/form.scss +40 -0
- package/dist/styles/layout.scss +56 -0
- package/dist/styles/main.scss +17 -0
- package/dist/styles/preflight.scss +90 -0
- package/dist/styles/rounded.scss +18 -0
- package/dist/styles/shadow.scss +10 -0
- package/dist/styles/spacing.scss +98 -0
- package/dist/styles/text.scss +111 -0
- package/dist/styles/themeDark.scss +1 -0
- package/dist/styles/themeLight.scss +1 -0
- package/dist/styles/themes.scss +95 -0
- package/package.json +65 -0
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
input[type=text],
|
|
2
|
+
input[type=password],
|
|
3
|
+
input[type=email],
|
|
4
|
+
input[type=number],
|
|
5
|
+
input[type=tel],
|
|
6
|
+
input[type=datetime-local],
|
|
7
|
+
textarea,
|
|
8
|
+
select {
|
|
9
|
+
width: 100%;
|
|
10
|
+
height: 40px;
|
|
11
|
+
border: 1px solid #ccc;
|
|
12
|
+
border-radius: 5px;
|
|
13
|
+
padding: 0 10px;
|
|
14
|
+
font-size: 16px;
|
|
15
|
+
box-sizing: border-box;
|
|
16
|
+
font-family: 'Space Grotesk', sans-serif;
|
|
17
|
+
|
|
18
|
+
&:focus {
|
|
19
|
+
outline: none;
|
|
20
|
+
border: 1px solid var(--sky-500);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
input[type=text]:disabled,
|
|
25
|
+
input[type=password]:disabled,
|
|
26
|
+
input[type=email]:disabled,
|
|
27
|
+
input[type=number]:disabled,
|
|
28
|
+
input[type=tel]:disabled,
|
|
29
|
+
input[type=datetime-local]:disabled,
|
|
30
|
+
textarea:disabled,
|
|
31
|
+
select:disabled {
|
|
32
|
+
background-color: var(--gray-300);
|
|
33
|
+
border: solid 1px var(--gray-500);
|
|
34
|
+
color: var(--gray-500);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.form__row {
|
|
38
|
+
display: flex;
|
|
39
|
+
gap: var(--spacing-unit);
|
|
40
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
.flex {
|
|
2
|
+
display: flex;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.flex-column {
|
|
6
|
+
flex-direction: column;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
.align-center {
|
|
10
|
+
align-items: center;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
.align-end {
|
|
14
|
+
align-items: end;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.justify-center {
|
|
18
|
+
justify-content: center;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.justify-between {
|
|
22
|
+
justify-content: space-between;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.justify-end {
|
|
26
|
+
justify-content: flex-end;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.flex-grow {
|
|
30
|
+
flex-grow: 1;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
.flex-shrink {
|
|
34
|
+
flex-shrink: 1;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.flex-grow-0 {
|
|
38
|
+
flex-grow: 0;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
.flex-shrink-0 {
|
|
42
|
+
flex-shrink: 0;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.basis-0 {
|
|
46
|
+
flex-basis: 0;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.basis-6\/12,
|
|
50
|
+
.basis-half {
|
|
51
|
+
flex-basis: 50%;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.position-relative {
|
|
55
|
+
position: relative;
|
|
56
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
@import './preflight.scss';
|
|
2
|
+
@import './spacing.scss';
|
|
3
|
+
@import './colors.scss';
|
|
4
|
+
@import './layout.scss';
|
|
5
|
+
@import './shadow.scss';
|
|
6
|
+
@import './rounded.scss';
|
|
7
|
+
@import './text.scss';
|
|
8
|
+
@import './buttons.scss';
|
|
9
|
+
@import './themes.scss';
|
|
10
|
+
@import './form.scss';
|
|
11
|
+
|
|
12
|
+
body {
|
|
13
|
+
font-family: var(--theme-font-basic);
|
|
14
|
+
background-color: var(--theme-background);
|
|
15
|
+
color: var(--theme-text);
|
|
16
|
+
transition: background-color 0.5s, color 0.5s;
|
|
17
|
+
}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
* {
|
|
2
|
+
margin: 0px;
|
|
3
|
+
padding: 0px;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
a {
|
|
7
|
+
color: inherit;
|
|
8
|
+
text-decoration: inherit;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
[multiple],
|
|
12
|
+
[type=date],
|
|
13
|
+
[type=datetime-local],
|
|
14
|
+
[type=email],
|
|
15
|
+
[type=month],
|
|
16
|
+
[type=number],
|
|
17
|
+
[type=password],
|
|
18
|
+
[type=search],
|
|
19
|
+
[type=tel],
|
|
20
|
+
[type=text],
|
|
21
|
+
[type=time],
|
|
22
|
+
[type=url],
|
|
23
|
+
[type=week],
|
|
24
|
+
select,
|
|
25
|
+
textarea {
|
|
26
|
+
// -webkit-appearance: none;
|
|
27
|
+
// -moz-appearance: none;
|
|
28
|
+
// appearance: none;
|
|
29
|
+
background-color: #fff;
|
|
30
|
+
border-color: #6b7280;
|
|
31
|
+
border-width: 1px;
|
|
32
|
+
border-radius: 0;
|
|
33
|
+
padding-top: 0.5rem;
|
|
34
|
+
padding-right: 0.75rem;
|
|
35
|
+
padding-bottom: 0.5rem;
|
|
36
|
+
padding-left: 0.75rem;
|
|
37
|
+
font-size: 1rem;
|
|
38
|
+
line-height: 1.5rem;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
[type=checkbox],
|
|
42
|
+
[type=radio] {
|
|
43
|
+
-webkit-appearance: none;
|
|
44
|
+
-moz-appearance: none;
|
|
45
|
+
appearance: none;
|
|
46
|
+
padding: 0;
|
|
47
|
+
print-color-adjust: exact;
|
|
48
|
+
display: inline-block;
|
|
49
|
+
vertical-align: middle;
|
|
50
|
+
background-origin: border-box;
|
|
51
|
+
-webkit-user-select: none;
|
|
52
|
+
-moz-user-select: none;
|
|
53
|
+
user-select: none;
|
|
54
|
+
flex-shrink: 0;
|
|
55
|
+
height: 1rem;
|
|
56
|
+
width: 1rem;
|
|
57
|
+
color: #2563eb;
|
|
58
|
+
background-color: #fff;
|
|
59
|
+
border-color: #6b7280;
|
|
60
|
+
border-width: 1px;
|
|
61
|
+
--tw-shadow: 0 0 #0000;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
[type=checkbox]:checked,
|
|
65
|
+
[type=radio]:checked {
|
|
66
|
+
border-color: transparent;
|
|
67
|
+
background-color: currentColor;
|
|
68
|
+
background-size: 100% 100%;
|
|
69
|
+
background-position: center;
|
|
70
|
+
background-repeat: no-repeat;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
[type=checkbox] {
|
|
74
|
+
border-radius: 0;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
[type=checkbox]:checked {
|
|
78
|
+
background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e");
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
ol,
|
|
82
|
+
ul {
|
|
83
|
+
list-style: none;
|
|
84
|
+
margin: 0;
|
|
85
|
+
padding: 0;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
fieldset {
|
|
89
|
+
border: none;
|
|
90
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
--rounded-none: 0px;
|
|
3
|
+
--rounded-sm: 0.125rem;
|
|
4
|
+
/* 2px */
|
|
5
|
+
--rounded: 0.25rem;
|
|
6
|
+
/* 4px */
|
|
7
|
+
--rounded-md: 0.375rem;
|
|
8
|
+
/* 6px */
|
|
9
|
+
--rounded-lg: 0.5rem;
|
|
10
|
+
/* 8px */
|
|
11
|
+
--rounded-xl: 0.75rem;
|
|
12
|
+
/* 12px */
|
|
13
|
+
--rounded-2xl: 1rem;
|
|
14
|
+
/* 16px */
|
|
15
|
+
--rounded-3xl: 1.5rem;
|
|
16
|
+
/* 24px */
|
|
17
|
+
--rounded-full: 9999px;
|
|
18
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
|
|
3
|
+
--shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
|
|
4
|
+
--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
|
|
5
|
+
--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
|
|
6
|
+
--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
|
|
7
|
+
--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.25);
|
|
8
|
+
--shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);
|
|
9
|
+
--shadow-none: 0 0 #0000;
|
|
10
|
+
}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
--spacing-unit: 0.325rem;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
$spacingMults: (
|
|
6
|
+
0,
|
|
7
|
+
1,
|
|
8
|
+
2,
|
|
9
|
+
3,
|
|
10
|
+
4,
|
|
11
|
+
5,
|
|
12
|
+
6,
|
|
13
|
+
7,
|
|
14
|
+
8,
|
|
15
|
+
9,
|
|
16
|
+
10,
|
|
17
|
+
11,
|
|
18
|
+
12,
|
|
19
|
+
13,
|
|
20
|
+
14,
|
|
21
|
+
15,
|
|
22
|
+
16,
|
|
23
|
+
17,
|
|
24
|
+
18,
|
|
25
|
+
19,
|
|
26
|
+
20
|
|
27
|
+
);
|
|
28
|
+
|
|
29
|
+
@each $mult in $spacingMults {
|
|
30
|
+
|
|
31
|
+
.m-#{$mult},
|
|
32
|
+
.mx-#{$mult},
|
|
33
|
+
.ml-#{$mult} {
|
|
34
|
+
margin-left: calc(#{$mult} * var(--spacing-unit));
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.m-#{$mult},
|
|
38
|
+
.mx-#{$mult},
|
|
39
|
+
.mr-#{$mult} {
|
|
40
|
+
margin-right: calc(#{$mult} * var(--spacing-unit));
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
.m-#{$mult},
|
|
44
|
+
.my-#{$mult},
|
|
45
|
+
.mt-#{$mult} {
|
|
46
|
+
margin-top: calc(#{$mult} * var(--spacing-unit));
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.m-#{$mult},
|
|
50
|
+
.my-#{$mult},
|
|
51
|
+
.mb-#{$mult} {
|
|
52
|
+
margin-bottom: calc(#{$mult} * var(--spacing-unit));
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.p-#{$mult},
|
|
56
|
+
.px-#{$mult},
|
|
57
|
+
.pl-#{$mult} {
|
|
58
|
+
padding-left: calc(#{$mult} * var(--spacing-unit));
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
.p-#{$mult},
|
|
62
|
+
.px-#{$mult},
|
|
63
|
+
.pr-#{$mult} {
|
|
64
|
+
padding-right: calc(#{$mult} * var(--spacing-unit));
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
.p-#{$mult},
|
|
68
|
+
.py-#{$mult},
|
|
69
|
+
.pt-#{$mult} {
|
|
70
|
+
padding-top: calc(#{$mult} * var(--spacing-unit));
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
.p-#{$mult},
|
|
74
|
+
.px-#{$mult},
|
|
75
|
+
.pb-#{$mult} {
|
|
76
|
+
padding-bottom: calc(#{$mult} * var(--spacing-unit));
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.space-x-#{$mult} {
|
|
80
|
+
&>* {
|
|
81
|
+
margin-right: calc(var(--spacing-unit)*#{$mult});
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
&>*:last-child {
|
|
85
|
+
margin-right: 0;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.space-y-#{$mult} {
|
|
90
|
+
&>* {
|
|
91
|
+
margin-bottom: calc(var(--spacing-unit)*#{$mult});
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
&>*:last-child {
|
|
95
|
+
margin-bottom: 0;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
$fontSizes: (
|
|
2
|
+
'xs': ('size': '0.75rem', 'lineHeight': '1rem'),
|
|
3
|
+
'sm': ('size': '0.875rem', 'lineHeight': '1.25rem'),
|
|
4
|
+
'md': ('size': '1rem', 'lineHeight': '1.5rem'),
|
|
5
|
+
'lg': ('size': '1.125rem', 'lineHeight': '1.75rem'),
|
|
6
|
+
'xl': ('size': '1.25rem', 'lineHeight': '1.75rem'),
|
|
7
|
+
'2xl': ('size': '1.5rem', 'lineHeight': '2rem'),
|
|
8
|
+
'3xl': ('size': '1.875rem', 'lineHeight': '2.25rem'),
|
|
9
|
+
'4xl': ('size': '2.25rem', 'lineHeight': '2.5rem'),
|
|
10
|
+
'5xl': ('size': '3rem', 'lineHeight': '1'),
|
|
11
|
+
'6xl': ('size': '3.75rem', 'lineHeight': '1'),
|
|
12
|
+
'7xl': ('size': '4.5rem', 'lineHeight': '1'),
|
|
13
|
+
'8xl': ('size': '6rem', 'lineHeight': '1'),
|
|
14
|
+
'9xl': ('size': '8rem', 'lineHeight': '1'),
|
|
15
|
+
);
|
|
16
|
+
|
|
17
|
+
$fontWeights: (
|
|
18
|
+
'thin': 100,
|
|
19
|
+
'extralight': 200,
|
|
20
|
+
'light': 300,
|
|
21
|
+
'normal': 400,
|
|
22
|
+
'medium': 500,
|
|
23
|
+
'semibold': 600,
|
|
24
|
+
'bold': 700,
|
|
25
|
+
'extrabold': 800,
|
|
26
|
+
'black': 900,
|
|
27
|
+
);
|
|
28
|
+
|
|
29
|
+
:root {
|
|
30
|
+
@each $fontSize, $properties in $fontSizes {
|
|
31
|
+
@each $property, $value in $properties {
|
|
32
|
+
@if $property =='size' {
|
|
33
|
+
--text-#{$fontSize}: #{$value};
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
@else if $property =='lineHeight' {
|
|
37
|
+
--text-#{$fontSize}-lh: #{$value};
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
@each $fontWeight, $value in $fontWeights {
|
|
43
|
+
--font-#{$fontWeight}: #{$value};
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
@each $fontSize, $properties in $fontSizes {
|
|
48
|
+
.text-#{$fontSize} {
|
|
49
|
+
font-size: var(--text-#{$fontSize});
|
|
50
|
+
line-height: var(--text-#{$fontSize}-lh);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
h2,
|
|
55
|
+
h3,
|
|
56
|
+
h4 {
|
|
57
|
+
margin-bottom: var(--spacing-unit);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
h2 {
|
|
61
|
+
@extend .text-3xl;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
h3 {
|
|
65
|
+
@extend .text-2xl;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
h4 {
|
|
69
|
+
@extend .text-xl;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
p {
|
|
73
|
+
@extend .text-md;
|
|
74
|
+
margin-bottom: calc(var(--spacing-unit) * 3);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
a {
|
|
78
|
+
color: var(--theme-link);
|
|
79
|
+
text-decoration: underline;
|
|
80
|
+
transition: color 0.5s;
|
|
81
|
+
|
|
82
|
+
&:hover {
|
|
83
|
+
color: color-mix(in HSL, var(--theme-neutral-900) 15%, var(--theme-link));
|
|
84
|
+
}
|
|
85
|
+
&:visited {
|
|
86
|
+
color: var(--theme-link-visited);
|
|
87
|
+
&:hover {
|
|
88
|
+
color: color-mix(in HSL, var(--theme-neutral-900) 50%, var(--theme-link-visited));
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.text-end {
|
|
94
|
+
text-align: end;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.text-right {
|
|
98
|
+
text-align: right;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
.text-center {
|
|
102
|
+
text-align: center;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
.text-left {
|
|
106
|
+
text-align: left;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
.text-start {
|
|
110
|
+
text-align: start;
|
|
111
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import 'highlight.js/styles/a11y-dark.css';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import 'highlight.js/styles/a11y-light.css';
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
$themes: (
|
|
2
|
+
"themeLight": (
|
|
3
|
+
"theme-font-basic": "'Space Grotesk', sans-serif",
|
|
4
|
+
"theme-primary": "var(--sky-500)",
|
|
5
|
+
"background-image": "url('https://res.cloudinary.com/jarautomation/image/upload/e_contrast:level_-100,o_40/v1704849050/joyautomation.com/texture-waves.webp')",
|
|
6
|
+
"theme-primary-hover": "var(--sky-600)",
|
|
7
|
+
"theme-secondary": "var(--gray-300)",
|
|
8
|
+
"theme-text": "var(--black)",
|
|
9
|
+
"theme-background": "var(--gray-100)",
|
|
10
|
+
"theme-accent": "var(--amber-500)",
|
|
11
|
+
"theme-nav": "var(--sky-700)",
|
|
12
|
+
"theme-link": "var(--amber-500)",
|
|
13
|
+
"theme-link-visited": "var(--sky-700)",
|
|
14
|
+
"theme-neutral": (
|
|
15
|
+
50: 'var(--gray-50)',
|
|
16
|
+
100: 'var(--gray-100)',
|
|
17
|
+
200: 'var(--gray-200)',
|
|
18
|
+
300: 'var(--gray-300)',
|
|
19
|
+
400: 'var(--gray-400)',
|
|
20
|
+
500: 'var(--gray-500)',
|
|
21
|
+
600: 'var(--gray-600)',
|
|
22
|
+
700: 'var(--gray-700)',
|
|
23
|
+
800: 'var(--gray-800)',
|
|
24
|
+
900: 'var(--gray-900)',
|
|
25
|
+
950: 'var(--gray-950)',
|
|
26
|
+
),
|
|
27
|
+
"theme-logo-neutral": (
|
|
28
|
+
"light": 'var(--gray-400)',
|
|
29
|
+
"medium": 'var(--gray-500)',
|
|
30
|
+
"dark": 'var(--gray-600)',
|
|
31
|
+
),
|
|
32
|
+
"theme-logo-accent": (
|
|
33
|
+
"light": 'var(--orange-300)',
|
|
34
|
+
"medium": 'var(--orange-500)',
|
|
35
|
+
"dark": 'var(--orange-700)',
|
|
36
|
+
)
|
|
37
|
+
),
|
|
38
|
+
"themeDark": (
|
|
39
|
+
"theme-font-basic": "'Space Grotesk', sans-serif",
|
|
40
|
+
"theme-primary": "var(--sky-700)",
|
|
41
|
+
"background-image": "url('https://res.cloudinary.com/jarautomation/image/upload/e_contrast:level_-100,o_20/v1704849050/joyautomation.com/texture-waves.webp')",
|
|
42
|
+
"theme-primary-hover": "var(--sky-600)",
|
|
43
|
+
"theme-text": "var(--white)",
|
|
44
|
+
"theme-background": "var(--gray-950)",
|
|
45
|
+
"theme-accent": "var(--amber-700)",
|
|
46
|
+
"theme-secondary": "var(--gray-800)",
|
|
47
|
+
"theme-nav": "var(--sky-950)",
|
|
48
|
+
"theme-link": "var(--amber-500)",
|
|
49
|
+
"theme-link-visited": "var(--sky-300)",
|
|
50
|
+
"theme-neutral": (50: 'var(--gray-950)',
|
|
51
|
+
100: 'var(--gray-900)',
|
|
52
|
+
200: 'var(--gray-800)',
|
|
53
|
+
300: 'var(--gray-700)',
|
|
54
|
+
400: 'var(--gray-600)',
|
|
55
|
+
500: 'var(--gray-500)',
|
|
56
|
+
600: 'var(--gray-400)',
|
|
57
|
+
700: 'var(--gray-300)',
|
|
58
|
+
800: 'var(--gray-200)',
|
|
59
|
+
900: 'var(--gray-100)',
|
|
60
|
+
950: 'var(--gray-50)',
|
|
61
|
+
),
|
|
62
|
+
"theme-logo-neutral": (
|
|
63
|
+
"light": 'var(--gray-400)',
|
|
64
|
+
"medium": 'var(--gray-500)',
|
|
65
|
+
"dark": 'var(--gray-600)',
|
|
66
|
+
),
|
|
67
|
+
"theme-logo-accent": (
|
|
68
|
+
"light": 'var(--orange-300)',
|
|
69
|
+
"medium": 'var(--orange-500)',
|
|
70
|
+
"dark": 'var(--orange-700)',
|
|
71
|
+
))
|
|
72
|
+
);
|
|
73
|
+
|
|
74
|
+
@each $theme-name, $theme-map in $themes {
|
|
75
|
+
|
|
76
|
+
// Create a class for the theme
|
|
77
|
+
.#{$theme-name} {
|
|
78
|
+
|
|
79
|
+
// Iterate over each property in the theme map
|
|
80
|
+
@each $property, $value in $theme-map {
|
|
81
|
+
|
|
82
|
+
// Check if the value is a nested map (like for 'neutral')
|
|
83
|
+
@if (type-of($value)=='map') {
|
|
84
|
+
@each $nested-key, $nested-value in $value {
|
|
85
|
+
--#{$property}-#{$nested-key}: #{$nested-value};
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
@else {
|
|
90
|
+
--#{$property}: #{$value};
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
|
package/package.json
ADDED
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@joyautomation/salt",
|
|
3
|
+
"version": "0.0.1",
|
|
4
|
+
"exports": {
|
|
5
|
+
".": [
|
|
6
|
+
"./dist/index.js",
|
|
7
|
+
{
|
|
8
|
+
"types": "./dist/index.d.ts"
|
|
9
|
+
}
|
|
10
|
+
],
|
|
11
|
+
"./styles.scss": "./dist/styles/main.scss"
|
|
12
|
+
},
|
|
13
|
+
"files": [
|
|
14
|
+
"dist",
|
|
15
|
+
"!dist/**/*.test.*",
|
|
16
|
+
"!dist/**/*.spec.*"
|
|
17
|
+
],
|
|
18
|
+
"peerDependencies": {
|
|
19
|
+
"@sveltejs/kit": "^2.5.5",
|
|
20
|
+
"svelte": "^4.0.0"
|
|
21
|
+
},
|
|
22
|
+
"devDependencies": {
|
|
23
|
+
"@playwright/test": "^1.28.1",
|
|
24
|
+
"@sveltejs/adapter-auto": "^3.0.0",
|
|
25
|
+
"@sveltejs/package": "^2.0.0",
|
|
26
|
+
"@sveltejs/vite-plugin-svelte": "^3.0.0",
|
|
27
|
+
"@types/eslint": "^8.56.10",
|
|
28
|
+
"@typescript-eslint/eslint-plugin": "^7.7.1",
|
|
29
|
+
"@typescript-eslint/parser": "^7.7.1",
|
|
30
|
+
"eslint": "^9.1.1",
|
|
31
|
+
"eslint-config-prettier": "^9.1.0",
|
|
32
|
+
"eslint-plugin-prettier": "^5.1.3",
|
|
33
|
+
"eslint-plugin-svelte": "^2.38.0",
|
|
34
|
+
"globals": "^15.0.0",
|
|
35
|
+
"prettier": "^3.2.5",
|
|
36
|
+
"prettier-plugin-svelte": "^3.2.3",
|
|
37
|
+
"publint": "^0.1.9",
|
|
38
|
+
"svelte": "^4.2.7",
|
|
39
|
+
"svelte-check": "^3.6.0",
|
|
40
|
+
"tslib": "^2.4.1",
|
|
41
|
+
"typescript": "^5.4.5",
|
|
42
|
+
"typescript-eslint": "^7.7.1",
|
|
43
|
+
"vite": "^5.0.11",
|
|
44
|
+
"vitest": "^1.2.0"
|
|
45
|
+
},
|
|
46
|
+
"svelte": "./dist/index.js",
|
|
47
|
+
"types": "./dist/index.d.ts",
|
|
48
|
+
"type": "module",
|
|
49
|
+
"dependencies": {
|
|
50
|
+
"@sveltejs/adapter-node": "^5.0.1",
|
|
51
|
+
"nanoid": "^5.0.7",
|
|
52
|
+
"sass": "^1.75.0"
|
|
53
|
+
},
|
|
54
|
+
"scripts": {
|
|
55
|
+
"dev": "vite dev",
|
|
56
|
+
"build": "vite build && npm run package",
|
|
57
|
+
"preview": "vite preview",
|
|
58
|
+
"package": "svelte-kit sync && svelte-package && publint",
|
|
59
|
+
"test": "npm run test:integration && npm run test:unit",
|
|
60
|
+
"check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
|
|
61
|
+
"check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
|
|
62
|
+
"test:integration": "playwright test",
|
|
63
|
+
"test:unit": "vitest"
|
|
64
|
+
}
|
|
65
|
+
}
|