@jjlmoya/utils-developer 1.11.0 → 1.13.0

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 (100) hide show
  1. package/package.json +7 -4
  2. package/scripts/postinstall.mjs +27 -0
  3. package/src/entries.ts +74 -0
  4. package/src/tool/aspectRatio/aspect-ratio-calculator.css +276 -0
  5. package/src/tool/aspectRatio/component.astro +0 -278
  6. package/src/tool/aspectRatio/entry.ts +30 -0
  7. package/src/tool/aspectRatio/index.ts +2 -32
  8. package/src/tool/calculadoraTiempoDatos/component.astro +0 -524
  9. package/src/tool/calculadoraTiempoDatos/data-time-calculator-web-speed-impact.css +522 -0
  10. package/src/tool/calculadoraTiempoDatos/entry.ts +29 -0
  11. package/src/tool/calculadoraTiempoDatos/index.ts +2 -31
  12. package/src/tool/colorConverter/color-converter-rgb-hex-hsl.css +262 -0
  13. package/src/tool/colorConverter/component.astro +0 -264
  14. package/src/tool/colorConverter/entry.ts +29 -0
  15. package/src/tool/colorConverter/index.ts +2 -31
  16. package/src/tool/conversorExcelCsvHtml/component.astro +0 -360
  17. package/src/tool/conversorExcelCsvHtml/entry.ts +29 -0
  18. package/src/tool/conversorExcelCsvHtml/excel-csv-html-table-converter.css +358 -0
  19. package/src/tool/conversorExcelCsvHtml/index.ts +2 -31
  20. package/src/tool/cronGenerator/component.astro +0 -317
  21. package/src/tool/cronGenerator/cron.css +315 -0
  22. package/src/tool/cronGenerator/entry.ts +30 -0
  23. package/src/tool/cronGenerator/index.ts +2 -32
  24. package/src/tool/cssSpecificityCalculator/component.astro +0 -205
  25. package/src/tool/cssSpecificityCalculator/css-specificity-calculator.css +203 -0
  26. package/src/tool/cssSpecificityCalculator/entry.ts +30 -0
  27. package/src/tool/cssSpecificityCalculator/index.ts +2 -32
  28. package/src/tool/cssToInlineConverter/component.astro +0 -150
  29. package/src/tool/cssToInlineConverter/css-to-inline-converter.css +148 -0
  30. package/src/tool/cssToInlineConverter/entry.ts +30 -0
  31. package/src/tool/cssToInlineConverter/index.ts +2 -32
  32. package/src/tool/duplicateCssRemover/component.astro +0 -197
  33. package/src/tool/duplicateCssRemover/duplicate-css-remover.css +195 -0
  34. package/src/tool/duplicateCssRemover/entry.ts +30 -0
  35. package/src/tool/duplicateCssRemover/index.ts +2 -32
  36. package/src/tool/generadorSecurityTxt/component.astro +0 -231
  37. package/src/tool/generadorSecurityTxt/entry.ts +29 -0
  38. package/src/tool/generadorSecurityTxt/index.ts +2 -31
  39. package/src/tool/generadorSecurityTxt/security-txt-generator-rfc-9116.css +229 -0
  40. package/src/tool/hashGenerator/component.astro +0 -229
  41. package/src/tool/hashGenerator/entry.ts +29 -0
  42. package/src/tool/hashGenerator/hash-generator.css +227 -0
  43. package/src/tool/hashGenerator/index.ts +2 -31
  44. package/src/tool/inspectorCertificadosSsl/component.astro +0 -261
  45. package/src/tool/inspectorCertificadosSsl/entry.ts +45 -0
  46. package/src/tool/inspectorCertificadosSsl/index.ts +2 -47
  47. package/src/tool/inspectorCertificadosSsl/ssl-tls-certificate-inspector.css +259 -0
  48. package/src/tool/jsonFormatter/component.astro +0 -346
  49. package/src/tool/jsonFormatter/entry.ts +30 -0
  50. package/src/tool/jsonFormatter/index.ts +2 -32
  51. package/src/tool/jsonFormatter/json-formatter.css +344 -0
  52. package/src/tool/keycode/component.astro +0 -298
  53. package/src/tool/keycode/entry.ts +30 -0
  54. package/src/tool/keycode/index.ts +2 -32
  55. package/src/tool/keycode/keycode.css +296 -0
  56. package/src/tool/llmCostCalculator/component.astro +0 -253
  57. package/src/tool/llmCostCalculator/entry.ts +46 -0
  58. package/src/tool/llmCostCalculator/index.ts +2 -48
  59. package/src/tool/llmCostCalculator/llm-cost-calculator.css +251 -0
  60. package/src/tool/mobileMockupGenerator/component.astro +0 -906
  61. package/src/tool/mobileMockupGenerator/entry.ts +45 -0
  62. package/src/tool/mobileMockupGenerator/index.ts +2 -47
  63. package/src/tool/mobileMockupGenerator/mobile-mockup-generator.css +904 -0
  64. package/src/tool/musicalTypography/component.astro +0 -291
  65. package/src/tool/musicalTypography/entry.ts +29 -0
  66. package/src/tool/musicalTypography/index.ts +2 -31
  67. package/src/tool/musicalTypography/musical-typography.css +289 -0
  68. package/src/tool/placeholderGenerator/component.astro +0 -255
  69. package/src/tool/placeholderGenerator/entry.ts +46 -0
  70. package/src/tool/placeholderGenerator/index.ts +2 -48
  71. package/src/tool/placeholderGenerator/placeholder-image-generator.css +253 -0
  72. package/src/tool/promptLibrary/component.astro +0 -689
  73. package/src/tool/promptLibrary/entry.ts +45 -0
  74. package/src/tool/promptLibrary/index.ts +2 -47
  75. package/src/tool/promptLibrary/prompt-library.css +687 -0
  76. package/src/tool/readabilityCalculator/component.astro +0 -322
  77. package/src/tool/readabilityCalculator/entry.ts +45 -0
  78. package/src/tool/readabilityCalculator/index.ts +2 -47
  79. package/src/tool/readabilityCalculator/visual-readability-calculator-wcag-apca.css +320 -0
  80. package/src/tool/svgSanitizer/component.astro +0 -289
  81. package/src/tool/svgSanitizer/entry.ts +45 -0
  82. package/src/tool/svgSanitizer/index.ts +2 -47
  83. package/src/tool/svgSanitizer/svg-sanitizer.css +287 -0
  84. package/src/tool/svgToCss/component.astro +0 -196
  85. package/src/tool/svgToCss/entry.ts +30 -0
  86. package/src/tool/svgToCss/index.ts +2 -32
  87. package/src/tool/svgToCss/svg-to-css-converter.css +194 -0
  88. package/src/tool/urlCleaner/component.astro +0 -282
  89. package/src/tool/urlCleaner/entry.ts +45 -0
  90. package/src/tool/urlCleaner/index.ts +2 -47
  91. package/src/tool/urlCleaner/url-tracking-cleaner.css +280 -0
  92. package/src/tool/urlEncoderDecoder/component.astro +0 -168
  93. package/src/tool/urlEncoderDecoder/entry.ts +30 -0
  94. package/src/tool/urlEncoderDecoder/index.ts +2 -32
  95. package/src/tool/urlEncoderDecoder/url-encoder-decoder.css +166 -0
  96. package/src/tool/utmGenerator/component.astro +0 -156
  97. package/src/tool/utmGenerator/entry.ts +29 -0
  98. package/src/tool/utmGenerator/index.ts +2 -31
  99. package/src/tool/utmGenerator/utm-generator.css +154 -0
  100. package/src/tools.ts +1 -1
@@ -0,0 +1,287 @@
1
+ .ss-root {
2
+ width: 100%;
3
+ }
4
+
5
+ .ss-layout {
6
+ display: grid;
7
+ grid-template-columns: 1fr;
8
+ gap: 1.5rem;
9
+ max-width: 1100px;
10
+ margin: 0 auto;
11
+ align-items: start;
12
+ }
13
+
14
+ @media (min-width: 768px) {
15
+ .ss-layout.ss-has-output {
16
+ grid-template-columns: 1fr 1fr;
17
+ }
18
+ }
19
+
20
+ .ss-panel {
21
+ background: rgba(255, 255, 255, 0.75);
22
+ backdrop-filter: blur(14px);
23
+ -webkit-backdrop-filter: blur(14px);
24
+ border: 1px solid rgba(255, 255, 255, 0.35);
25
+ border-radius: 1.5rem;
26
+ padding: 1.5rem;
27
+ box-shadow: 0 8px 32px rgba(31, 38, 135, 0.06);
28
+ display: flex;
29
+ flex-direction: column;
30
+ gap: 1rem;
31
+ }
32
+
33
+ :global(.theme-dark) .ss-panel {
34
+ background: rgba(15, 23, 42, 0.75);
35
+ border-color: rgba(255, 255, 255, 0.06);
36
+ }
37
+
38
+ .ss-panel-label {
39
+ font-size: 0.8rem;
40
+ font-weight: 700;
41
+ color: rgb(100, 116, 139);
42
+ text-transform: uppercase;
43
+ letter-spacing: 0.06em;
44
+ }
45
+
46
+ :global(.theme-dark) .ss-panel-label {
47
+ color: rgb(148, 163, 184);
48
+ }
49
+
50
+ .ss-textarea {
51
+ width: 100%;
52
+ min-height: 260px;
53
+ resize: vertical;
54
+ background: rgba(0, 0, 0, 0.03);
55
+ border: 1.5px solid rgb(226, 232, 240);
56
+ border-radius: 0.875rem;
57
+ padding: 1rem;
58
+ font-size: 0.8rem;
59
+ line-height: 1.6;
60
+ color: rgb(51, 65, 85);
61
+ outline: none;
62
+ transition: border-color 0.2s ease;
63
+ box-sizing: border-box;
64
+ }
65
+
66
+ :global(.theme-dark) .ss-textarea {
67
+ background: rgba(255, 255, 255, 0.04);
68
+ border-color: rgb(51, 65, 85);
69
+ color: rgb(203, 213, 225);
70
+ }
71
+
72
+ .ss-textarea:focus {
73
+ border-color: rgb(139, 92, 246);
74
+ box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.1);
75
+ }
76
+
77
+ .ss-output-textarea {
78
+ min-height: 220px;
79
+ cursor: text;
80
+ }
81
+
82
+ .ss-options-row {
83
+ display: flex;
84
+ flex-wrap: wrap;
85
+ gap: 1rem;
86
+ }
87
+
88
+ .ss-toggle-label {
89
+ display: flex;
90
+ align-items: center;
91
+ gap: 0.5rem;
92
+ font-size: 0.875rem;
93
+ color: rgb(71, 85, 105);
94
+ cursor: pointer;
95
+ user-select: none;
96
+ }
97
+
98
+ :global(.theme-dark) .ss-toggle-label {
99
+ color: rgb(148, 163, 184);
100
+ }
101
+
102
+ .ss-toggle-input {
103
+ display: none;
104
+ }
105
+
106
+ .ss-toggle-track {
107
+ width: 36px;
108
+ height: 20px;
109
+ background: rgb(226, 232, 240);
110
+ border-radius: 999px;
111
+ position: relative;
112
+ transition: background 0.2s ease;
113
+ flex-shrink: 0;
114
+ }
115
+
116
+ .ss-toggle-track::after {
117
+ content: "";
118
+ position: absolute;
119
+ top: 2px;
120
+ left: 2px;
121
+ width: 16px;
122
+ height: 16px;
123
+ background: white;
124
+ border-radius: 50%;
125
+ transition: transform 0.2s ease;
126
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
127
+ }
128
+
129
+ .ss-toggle-input:checked + .ss-toggle-track {
130
+ background: rgb(139, 92, 246);
131
+ }
132
+
133
+ .ss-toggle-input:checked + .ss-toggle-track::after {
134
+ transform: translateX(16px);
135
+ }
136
+
137
+ .ss-btn-sanitize {
138
+ background: linear-gradient(135deg, rgb(139, 92, 246), rgb(124, 58, 237));
139
+ color: white;
140
+ border: none;
141
+ border-radius: 0.875rem;
142
+ padding: 0.875rem 1.5rem;
143
+ font-weight: 700;
144
+ font-size: 1rem;
145
+ cursor: pointer;
146
+ display: flex;
147
+ align-items: center;
148
+ justify-content: center;
149
+ gap: 0.5rem;
150
+ transition: all 0.2s ease;
151
+ box-shadow: 0 4px 14px rgba(139, 92, 246, 0.35);
152
+ }
153
+
154
+ .ss-btn-sanitize:hover {
155
+ transform: translateY(-2px);
156
+ box-shadow: 0 6px 20px rgba(139, 92, 246, 0.5);
157
+ }
158
+
159
+ .ss-error {
160
+ font-size: 0.875rem;
161
+ color: rgb(239, 68, 68);
162
+ font-weight: 500;
163
+ margin: 0;
164
+ }
165
+
166
+ .ss-output-header {
167
+ display: flex;
168
+ justify-content: space-between;
169
+ align-items: center;
170
+ flex-wrap: wrap;
171
+ gap: 0.5rem;
172
+ }
173
+
174
+ .ss-output-label {
175
+ font-size: 0.8rem;
176
+ font-weight: 700;
177
+ color: rgb(139, 92, 246);
178
+ text-transform: uppercase;
179
+ letter-spacing: 0.06em;
180
+ }
181
+
182
+ .ss-output-actions {
183
+ display: flex;
184
+ gap: 0.5rem;
185
+ }
186
+
187
+ .ss-btn-action {
188
+ display: flex;
189
+ align-items: center;
190
+ gap: 0.35rem;
191
+ font-size: 0.8rem;
192
+ font-weight: 600;
193
+ padding: 0.4rem 0.875rem;
194
+ border-radius: 2rem;
195
+ border: 1.5px solid rgb(226, 232, 240);
196
+ background: white;
197
+ color: rgb(71, 85, 105);
198
+ cursor: pointer;
199
+ transition: all 0.2s ease;
200
+ }
201
+
202
+ :global(.theme-dark) .ss-btn-action {
203
+ background: rgb(30, 41, 59);
204
+ border-color: rgb(51, 65, 85);
205
+ color: rgb(148, 163, 184);
206
+ }
207
+
208
+ .ss-btn-action:hover {
209
+ border-color: rgb(139, 92, 246);
210
+ color: rgb(139, 92, 246);
211
+ }
212
+
213
+ .ss-btn-action.ss-copied {
214
+ background: rgb(16, 185, 129);
215
+ border-color: rgb(16, 185, 129);
216
+ color: white;
217
+ }
218
+
219
+ .ss-btn-download:hover {
220
+ border-color: rgb(99, 102, 241);
221
+ color: rgb(99, 102, 241);
222
+ }
223
+
224
+ .ss-stats-row {
225
+ display: grid;
226
+ grid-template-columns: repeat(5, 1fr);
227
+ gap: 0.5rem;
228
+ }
229
+
230
+ @media (max-width: 600px) {
231
+ .ss-stats-row {
232
+ grid-template-columns: repeat(3, 1fr);
233
+ }
234
+ }
235
+
236
+ .ss-stat-chip {
237
+ display: flex;
238
+ flex-direction: column;
239
+ align-items: center;
240
+ gap: 0.2rem;
241
+ padding: 0.625rem 0.375rem;
242
+ background: rgba(0, 0, 0, 0.025);
243
+ border-radius: 0.75rem;
244
+ text-align: center;
245
+ border-top: 2px solid rgb(226, 232, 240);
246
+ }
247
+
248
+ :global(.theme-dark) .ss-stat-chip {
249
+ background: rgba(255, 255, 255, 0.04);
250
+ border-color: rgb(51, 65, 85);
251
+ }
252
+
253
+ .ss-chip-green {
254
+ border-color: rgb(16, 185, 129);
255
+ }
256
+
257
+ .ss-chip-purple {
258
+ border-color: rgb(139, 92, 246);
259
+ }
260
+
261
+ .ss-chip-amber {
262
+ border-color: rgb(245, 158, 11);
263
+ }
264
+
265
+ .ss-chip-rose {
266
+ border-color: rgb(244, 63, 94);
267
+ }
268
+
269
+ .ss-chip-value {
270
+ font-size: 0.9rem;
271
+ font-weight: 800;
272
+ color: rgb(15, 23, 42);
273
+ line-height: 1.2;
274
+ }
275
+
276
+ :global(.theme-dark) .ss-chip-value {
277
+ color: white;
278
+ }
279
+
280
+ .ss-chip-label {
281
+ font-size: 0.6rem;
282
+ color: rgb(148, 163, 184);
283
+ font-weight: 600;
284
+ text-transform: uppercase;
285
+ letter-spacing: 0.04em;
286
+ line-height: 1.3;
287
+ }
@@ -80,202 +80,6 @@ const defaultSvg = `<svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.or
80
80
  </div>
81
81
  </div>
82
82
 
83
- <style>
84
- .stc-container {
85
- --stc-primary: #ec4899;
86
- --stc-secondary: #8b5cf6;
87
- --stc-card-bg: #fff;
88
- --stc-text: #0f172a;
89
- --stc-text-muted: #64748b;
90
- --stc-border: #e2e8f0;
91
- --stc-input-bg: #f1f5f9;
92
- --stc-shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
93
-
94
- max-width: 1000px;
95
- margin: 4rem auto;
96
- color: var(--stc-text);
97
- }
98
-
99
- :global(.theme-dark) .stc-container {
100
- --stc-card-bg: #1e293b;
101
- --stc-text: #f8fafc;
102
- --stc-text-muted: #94a3b8;
103
- --stc-border: #334155;
104
- --stc-input-bg: #0f172a;
105
- }
106
-
107
- .stc-grid {
108
- display: grid;
109
- grid-template-columns: 1fr;
110
- gap: 2rem;
111
- }
112
-
113
- @media (min-width: 850px) {
114
- .stc-grid {
115
- grid-template-columns: 1fr 1fr;
116
- }
117
- }
118
-
119
- .stc-card {
120
- background: var(--stc-card-bg);
121
- border: 1px solid var(--stc-border);
122
- border-radius: 1.5rem;
123
- padding: 2.5rem;
124
- box-shadow: var(--stc-shadow-lg);
125
- display: flex;
126
- flex-direction: column;
127
- gap: 1.5rem;
128
- }
129
-
130
- .stc-title-group {
131
- display: flex;
132
- align-items: center;
133
- gap: 0.75rem;
134
- margin-bottom: 0.5rem;
135
- }
136
-
137
- .stc-icon-box {
138
- width: 40px;
139
- height: 40px;
140
- background: linear-gradient(135deg, var(--stc-primary), var(--stc-secondary));
141
- border-radius: 0.75rem;
142
- display: flex;
143
- align-items: center;
144
- justify-content: center;
145
- color: white;
146
- }
147
-
148
- .stc-card-title {
149
- font-size: 1.5rem;
150
- font-weight: 800;
151
- margin: 0;
152
- }
153
-
154
- .stc-area-label {
155
- font-size: 0.875rem;
156
- font-weight: 700;
157
- color: var(--stc-primary);
158
- text-transform: uppercase;
159
- letter-spacing: 0.05em;
160
- }
161
-
162
- .stc-textarea {
163
- width: 100%;
164
- min-height: 250px;
165
- background: var(--stc-input-bg);
166
- border: 2px solid var(--stc-border);
167
- border-radius: 1rem;
168
- padding: 1.25rem;
169
- font-size: 0.9rem;
170
- color: var(--stc-text);
171
- outline: none;
172
- resize: vertical;
173
- transition: all 0.2s;
174
- }
175
-
176
- .stc-textarea:focus {
177
- border-color: var(--stc-primary);
178
- box-shadow: 0 0 0 4px rgba(236, 72, 153, 0.1);
179
- }
180
-
181
- .stc-result-box {
182
- position: relative;
183
- display: flex;
184
- flex-direction: column;
185
- gap: 1rem;
186
- }
187
-
188
- .stc-copy-btn {
189
- position: absolute;
190
- top: 0.5rem;
191
- right: 0.5rem;
192
- background: var(--stc-primary);
193
- color: white;
194
- border: none;
195
- padding: 0.5rem 1rem;
196
- border-radius: 0.75rem;
197
- font-size: 0.75rem;
198
- font-weight: 700;
199
- cursor: pointer;
200
- transition: all 0.2s;
201
- z-index: 1;
202
- }
203
-
204
- .stc-copy-btn:hover {
205
- transform: translateY(-2px);
206
- box-shadow: 0 4px 12px rgba(236, 72, 153, 0.3);
207
- }
208
-
209
- .stc-preview-container {
210
- background: var(--stc-input-bg);
211
- border: 2px dashed var(--stc-border);
212
- border-radius: 1rem;
213
- height: 120px;
214
- display: flex;
215
- align-items: center;
216
- justify-content: center;
217
- margin-top: 1rem;
218
- position: relative;
219
- overflow: hidden;
220
- }
221
-
222
- .stc-preview-bg {
223
- position: absolute;
224
- inset: 0;
225
- background-image:
226
- linear-gradient(45deg, var(--stc-border) 25%, transparent 25%),
227
- linear-gradient(-45deg, var(--stc-border) 25%, transparent 25%),
228
- linear-gradient(45deg, transparent 75%, var(--stc-border) 75%),
229
- linear-gradient(-45deg, transparent 75%, var(--stc-border) 75%);
230
- background-size: 20px 20px;
231
- background-position:
232
- 0 0,
233
- 0 10px,
234
- 10px -10px,
235
- -10px 0;
236
- opacity: 0.1;
237
- }
238
-
239
- .stc-preview-img {
240
- max-width: 80px;
241
- max-height: 80px;
242
- z-index: 1;
243
- }
244
-
245
- .stc-preview-applied {
246
- width: 60px;
247
- height: 60px;
248
- z-index: 1;
249
- }
250
-
251
- .stc-output-tabs {
252
- display: flex;
253
- gap: 0.5rem;
254
- background: var(--stc-input-bg);
255
- padding: 0.3rem;
256
- border-radius: 0.75rem;
257
- margin-bottom: 0.5rem;
258
- }
259
-
260
- .stc-tab-btn {
261
- flex: 1;
262
- border: none;
263
- background: transparent;
264
- padding: 0.6rem;
265
- border-radius: 0.5rem;
266
- font-size: 0.8rem;
267
- font-weight: 700;
268
- color: var(--stc-text-muted);
269
- cursor: pointer;
270
- transition: all 0.2s;
271
- }
272
-
273
- :global(.stc-tab-btn.active) {
274
- background: var(--stc-card-bg);
275
- color: var(--stc-primary);
276
- box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
277
- }
278
- </style>
279
83
 
280
84
  <script>
281
85
  const container = document.querySelector('.stc-container') as HTMLElement | null;
@@ -0,0 +1,30 @@
1
+ import type { DeveloperToolEntry, ToolLocaleContent } from '../../types';
2
+
3
+ import type { SvgToCssUI } from './ui';
4
+
5
+ export type SvgToCssLocaleContent = ToolLocaleContent<SvgToCssUI>;
6
+
7
+ export const svgToCss: DeveloperToolEntry<SvgToCssUI> = {
8
+ id: 'svg-to-css',
9
+ icons: {
10
+ bg: 'mdi:svg',
11
+ fg: 'mdi:code-braces',
12
+ },
13
+ i18n: {
14
+ de: async () => (await import('./i18n/de')).content,
15
+ en: async () => (await import('./i18n/en')).content,
16
+ es: async () => (await import('./i18n/es')).content,
17
+ fr: async () => (await import('./i18n/fr')).content,
18
+ id: async () => (await import('./i18n/id')).content,
19
+ it: async () => (await import('./i18n/it')).content,
20
+ ja: async () => (await import('./i18n/ja')).content,
21
+ ko: async () => (await import('./i18n/ko')).content,
22
+ nl: async () => (await import('./i18n/nl')).content,
23
+ pl: async () => (await import('./i18n/pl')).content,
24
+ pt: async () => (await import('./i18n/pt')).content,
25
+ ru: async () => (await import('./i18n/ru')).content,
26
+ sv: async () => (await import('./i18n/sv')).content,
27
+ tr: async () => (await import('./i18n/tr')).content,
28
+ zh: async () => (await import('./i18n/zh')).content,
29
+ },
30
+ };
@@ -1,35 +1,5 @@
1
- import type { DeveloperToolEntry, ToolLocaleContent, ToolDefinition } from '../../types';
2
-
3
- import type { SvgToCssUI } from './ui';
4
-
5
- export type SvgToCssLocaleContent = ToolLocaleContent<SvgToCssUI>;
6
-
7
- export const svgToCss: DeveloperToolEntry<SvgToCssUI> = {
8
- id: 'svg-to-css',
9
- icons: {
10
- bg: 'mdi:svg',
11
- fg: 'mdi:code-braces',
12
- },
13
- i18n: {
14
- de: async () => (await import('./i18n/de')).content,
15
- en: async () => (await import('./i18n/en')).content,
16
- es: async () => (await import('./i18n/es')).content,
17
- fr: async () => (await import('./i18n/fr')).content,
18
- id: async () => (await import('./i18n/id')).content,
19
- it: async () => (await import('./i18n/it')).content,
20
- ja: async () => (await import('./i18n/ja')).content,
21
- ko: async () => (await import('./i18n/ko')).content,
22
- nl: async () => (await import('./i18n/nl')).content,
23
- pl: async () => (await import('./i18n/pl')).content,
24
- pt: async () => (await import('./i18n/pt')).content,
25
- ru: async () => (await import('./i18n/ru')).content,
26
- sv: async () => (await import('./i18n/sv')).content,
27
- tr: async () => (await import('./i18n/tr')).content,
28
- zh: async () => (await import('./i18n/zh')).content,
29
- },
30
- };
31
-
32
-
1
+ import { svgToCss } from './entry';
2
+ export * from './entry';
33
3
  export const SVG_TO_CSS_TOOL: ToolDefinition = {
34
4
  entry: svgToCss,
35
5
  Component: () => import('./component.astro'),