@dodlhuat/basix 1.2.0 → 1.2.2

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 (93) hide show
  1. package/README.md +266 -6
  2. package/css/accordion.scss +86 -87
  3. package/css/alert.scss +137 -137
  4. package/css/button.scss +48 -0
  5. package/css/calendar.scss +957 -0
  6. package/css/card.scss +65 -65
  7. package/css/chart.scss +270 -157
  8. package/css/chat-bubbles.scss +134 -68
  9. package/css/chips.scss +109 -19
  10. package/css/colors.scss +32 -32
  11. package/css/datepicker.scss +336 -336
  12. package/css/defaults.scss +90 -90
  13. package/css/docs.scss +529 -0
  14. package/css/editor.scss +36 -0
  15. package/css/file-uploader.scss +1 -1
  16. package/css/flyout-menu.scss +361 -361
  17. package/css/form.scss +0 -15
  18. package/css/gallery.scss +65 -6
  19. package/css/grid.scss +41 -40
  20. package/css/group-picker.scss +345 -0
  21. package/css/guitar-chords.css +250 -250
  22. package/css/icons.scss +330 -330
  23. package/css/parameters.scss +3 -3
  24. package/css/placeholder.scss +33 -33
  25. package/css/popover.scss +206 -0
  26. package/css/progress.scss +76 -32
  27. package/css/properties.scss +51 -36
  28. package/css/push-menu.scss +302 -174
  29. package/css/reset.scss +39 -39
  30. package/css/scrollbar.scss +62 -5
  31. package/css/sidebar-nav.scss +92 -0
  32. package/css/spinner.scss +65 -65
  33. package/css/stepper.scss +48 -12
  34. package/css/style.css +3155 -254
  35. package/css/style.css.map +1 -1
  36. package/css/style.min.css +1 -1
  37. package/css/style.scss +51 -45
  38. package/css/table.scss +199 -199
  39. package/css/tabs.scss +154 -123
  40. package/css/timeline.scss +83 -38
  41. package/css/timepicker.scss +100 -5
  42. package/css/toast.scss +81 -81
  43. package/css/virtual-dropdown.scss +35 -29
  44. package/js/calendar.js +532 -0
  45. package/js/calendar.ts +706 -0
  46. package/js/chart.js +573 -257
  47. package/js/chart.ts +692 -0
  48. package/js/code-viewer.js +10 -10
  49. package/js/code-viewer.ts +188 -188
  50. package/js/datepicker.ts +627 -627
  51. package/js/docs-nav.js +204 -0
  52. package/js/dropdown.ts +179 -179
  53. package/js/editor.js +50 -6
  54. package/js/editor.ts +483 -444
  55. package/js/file-uploader.js +1 -0
  56. package/js/file-uploader.ts +1 -0
  57. package/js/flyout-menu.js +14 -14
  58. package/js/flyout-menu.ts +249 -249
  59. package/js/form-builder.js +106 -106
  60. package/js/gallery.js +14 -8
  61. package/js/gallery.ts +245 -236
  62. package/js/group-picker.js +342 -0
  63. package/js/group-picker.ts +447 -0
  64. package/js/guitar-chords.js +268 -268
  65. package/js/lazy-loader.js +121 -121
  66. package/js/modal.ts +166 -166
  67. package/js/popover.js +163 -0
  68. package/js/popover.ts +219 -0
  69. package/js/position.js +108 -0
  70. package/js/position.ts +111 -0
  71. package/js/push-menu.js +113 -0
  72. package/js/push-menu.ts +284 -145
  73. package/js/request.js +50 -50
  74. package/js/scroll.ts +47 -47
  75. package/js/scrollbar.js +13 -0
  76. package/js/scrollbar.ts +324 -307
  77. package/js/select.ts +216 -216
  78. package/js/sidebar-nav.js +41 -0
  79. package/js/sidebar-nav.ts +66 -0
  80. package/js/table.ts +452 -452
  81. package/js/tabs.ts +279 -279
  82. package/js/theme.js +17 -6
  83. package/js/theme.ts +234 -224
  84. package/js/toast.ts +137 -137
  85. package/js/tooltip.js +6 -60
  86. package/js/tooltip.ts +184 -251
  87. package/js/tsconfig.json +18 -18
  88. package/js/utils.ts +83 -83
  89. package/js/virtual-dropdown.js +25 -25
  90. package/js/virtual-dropdown.ts +365 -365
  91. package/package.json +37 -39
  92. package/js/index.js +0 -816
  93. package/js/index.ts +0 -987
package/css/alert.scss CHANGED
@@ -1,138 +1,138 @@
1
- @use "properties";
2
- @use "parameters" as *;
3
-
4
- $alert-border-width: 4px;
5
-
6
- @mixin alert-variant($accent, $bg-tint) {
7
- background: $bg-tint;
8
- border-left-color: $accent;
9
- color: var(--primary-text);
10
-
11
- strong {
12
- color: $accent;
13
- }
14
-
15
- .alert-icon {
16
- fill: $accent;
17
- }
18
-
19
- .alert-close:hover {
20
- background: color-mix(in srgb, $accent 12%, transparent);
21
- }
22
- }
23
-
24
- .alert {
25
- position: relative;
26
- border-radius: $border-radius;
27
- padding: calc($spacing * 0.75) $spacing calc($spacing * 0.75) calc($spacing + $alert-border-width);
28
- border-left: $alert-border-width solid transparent;
29
- color: var(--primary-text);
30
- line-height: 1.6;
31
- font-size: 0.9rem;
32
-
33
- & + & {
34
- margin-top: calc($spacing / 2);
35
- }
36
-
37
- strong {
38
- font-weight: 600;
39
- letter-spacing: -0.01em;
40
- }
41
-
42
- &-default {
43
- background: var(--secondary-background);
44
- border-left-color: var(--divider);
45
- color: var(--primary-text);
46
- }
47
-
48
- &-info {
49
- @include alert-variant(
50
- var(--accent-color),
51
- color-mix(in srgb, var(--accent-color) 8%, var(--background))
52
- );
53
- }
54
-
55
- &-success {
56
- @include alert-variant(
57
- var(--success),
58
- color-mix(in srgb, var(--success) 8%, var(--background))
59
- );
60
- }
61
-
62
- &-warning {
63
- @include alert-variant(
64
- var(--warning),
65
- color-mix(in srgb, var(--warning) 8%, var(--background))
66
- );
67
- }
68
-
69
- &-error {
70
- @include alert-variant(
71
- var(--error),
72
- color-mix(in srgb, var(--error) 8%, var(--background))
73
- );
74
- }
75
-
76
- &-dismissible {
77
- padding-right: calc($spacing * 3);
78
-
79
- .alert-close {
80
- position: absolute;
81
- top: 50%;
82
- right: calc($spacing * 0.75);
83
- transform: translateY(-50%);
84
- background: transparent;
85
- border: none;
86
- border-radius: $border-radius;
87
- cursor: pointer;
88
- padding: calc($spacing / 4) calc($spacing / 2);
89
- color: inherit;
90
- opacity: 0.5;
91
- transition: opacity 0.2s ease, background 0.2s ease;
92
-
93
- &:hover {
94
- opacity: 1;
95
- }
96
- }
97
- }
98
-
99
- .alert-icon {
100
- width: 1.1em;
101
- height: 1.1em;
102
- margin-right: calc($spacing / 2);
103
- vertical-align: -0.15em;
104
- fill: currentColor;
105
- }
106
- }
107
-
108
- [data-theme="dark"] {
109
- .alert {
110
- &-info {
111
- @include alert-variant(
112
- var(--accent-color),
113
- color-mix(in srgb, var(--accent-color) 10%, var(--background))
114
- );
115
- }
116
-
117
- &-success {
118
- @include alert-variant(
119
- var(--success),
120
- color-mix(in srgb, var(--success) 10%, var(--background))
121
- );
122
- }
123
-
124
- &-warning {
125
- @include alert-variant(
126
- var(--warning),
127
- color-mix(in srgb, var(--warning) 10%, var(--background))
128
- );
129
- }
130
-
131
- &-error {
132
- @include alert-variant(
133
- var(--error),
134
- color-mix(in srgb, var(--error) 10%, var(--background))
135
- );
136
- }
137
- }
1
+ @use "properties";
2
+ @use "parameters" as *;
3
+
4
+ $alert-border-width: 4px;
5
+
6
+ @mixin alert-variant($accent, $bg-tint) {
7
+ background: $bg-tint;
8
+ border-left-color: $accent;
9
+ color: var(--primary-text);
10
+
11
+ strong {
12
+ color: $accent;
13
+ }
14
+
15
+ .alert-icon {
16
+ fill: $accent;
17
+ }
18
+
19
+ .alert-close:hover {
20
+ background: color-mix(in srgb, $accent 12%, transparent);
21
+ }
22
+ }
23
+
24
+ .alert {
25
+ position: relative;
26
+ border-radius: $border-radius;
27
+ padding: calc($spacing * 0.75) $spacing calc($spacing * 0.75) calc($spacing + $alert-border-width);
28
+ border-left: $alert-border-width solid transparent;
29
+ color: var(--primary-text);
30
+ line-height: 1.6;
31
+ font-size: 0.9rem;
32
+
33
+ & + & {
34
+ margin-top: calc($spacing / 2);
35
+ }
36
+
37
+ strong {
38
+ font-weight: 600;
39
+ letter-spacing: -0.01em;
40
+ }
41
+
42
+ &-default {
43
+ background: var(--secondary-background);
44
+ border-left-color: var(--divider);
45
+ color: var(--primary-text);
46
+ }
47
+
48
+ &-info {
49
+ @include alert-variant(
50
+ var(--accent-color),
51
+ color-mix(in srgb, var(--accent-color) 8%, var(--background))
52
+ );
53
+ }
54
+
55
+ &-success {
56
+ @include alert-variant(
57
+ var(--success),
58
+ color-mix(in srgb, var(--success) 8%, var(--background))
59
+ );
60
+ }
61
+
62
+ &-warning {
63
+ @include alert-variant(
64
+ var(--warning),
65
+ color-mix(in srgb, var(--warning) 8%, var(--background))
66
+ );
67
+ }
68
+
69
+ &-error {
70
+ @include alert-variant(
71
+ var(--error),
72
+ color-mix(in srgb, var(--error) 8%, var(--background))
73
+ );
74
+ }
75
+
76
+ &-dismissible {
77
+ padding-right: calc($spacing * 3);
78
+
79
+ .alert-close {
80
+ position: absolute;
81
+ top: 50%;
82
+ right: calc($spacing * 0.75);
83
+ transform: translateY(-50%);
84
+ background: transparent;
85
+ border: none;
86
+ border-radius: $border-radius;
87
+ cursor: pointer;
88
+ padding: calc($spacing / 4) calc($spacing / 2);
89
+ color: inherit;
90
+ opacity: 0.5;
91
+ transition: opacity 0.2s ease, background 0.2s ease;
92
+
93
+ &:hover {
94
+ opacity: 1;
95
+ }
96
+ }
97
+ }
98
+
99
+ .alert-icon {
100
+ width: 1.1em;
101
+ height: 1.1em;
102
+ margin-right: calc($spacing / 2);
103
+ vertical-align: -0.15em;
104
+ fill: currentColor;
105
+ }
106
+ }
107
+
108
+ [data-theme="dark"] {
109
+ .alert {
110
+ &-info {
111
+ @include alert-variant(
112
+ var(--accent-color),
113
+ color-mix(in srgb, var(--accent-color) 10%, var(--background))
114
+ );
115
+ }
116
+
117
+ &-success {
118
+ @include alert-variant(
119
+ var(--success),
120
+ color-mix(in srgb, var(--success) 10%, var(--background))
121
+ );
122
+ }
123
+
124
+ &-warning {
125
+ @include alert-variant(
126
+ var(--warning),
127
+ color-mix(in srgb, var(--warning) 10%, var(--background))
128
+ );
129
+ }
130
+
131
+ &-error {
132
+ @include alert-variant(
133
+ var(--error),
134
+ color-mix(in srgb, var(--error) 10%, var(--background))
135
+ );
136
+ }
137
+ }
138
138
  }
package/css/button.scss CHANGED
@@ -67,6 +67,41 @@ button,
67
67
  opacity: 0.45;
68
68
  cursor: not-allowed;
69
69
  }
70
+
71
+ &.is-loading {
72
+ pointer-events: none;
73
+ position: relative;
74
+ color: transparent !important;
75
+
76
+ &::after {
77
+ content: '';
78
+ position: absolute;
79
+ width: 1.1em;
80
+ height: 1.1em;
81
+ border: 2px solid currentColor;
82
+ border-top-color: transparent;
83
+ border-radius: 50%;
84
+ animation: spinner-rotate 0.8s ease-in-out infinite;
85
+ color: var(--primary-text);
86
+ }
87
+
88
+ > * {
89
+ visibility: hidden;
90
+ }
91
+ }
92
+ }
93
+
94
+ .button-primary,
95
+ button.button-primary,
96
+ .button-success,
97
+ button.button-success,
98
+ .button-warning,
99
+ button.button-warning,
100
+ .button-error,
101
+ button.button-error {
102
+ &.is-loading::after {
103
+ color: var(--background);
104
+ }
70
105
  }
71
106
 
72
107
  .button-primary,
@@ -148,4 +183,17 @@ button.button-error {
148
183
  button.button-error {
149
184
  @include button-variant-dark(var(--error));
150
185
  }
186
+
187
+ .button-primary,
188
+ button.button-primary,
189
+ .button-success,
190
+ button.button-success,
191
+ .button-warning,
192
+ button.button-warning,
193
+ .button-error,
194
+ button.button-error {
195
+ &.is-loading::after {
196
+ color: var(--primary-text);
197
+ }
198
+ }
151
199
  }