@nordcraft/core 1.0.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 (119) hide show
  1. package/README.md +5 -0
  2. package/dist/api/LegacyToddleApi.d.ts +34 -0
  3. package/dist/api/LegacyToddleApi.js +178 -0
  4. package/dist/api/LegacyToddleApi.js.map +1 -0
  5. package/dist/api/ToddleApiV2.d.ts +77 -0
  6. package/dist/api/ToddleApiV2.js +271 -0
  7. package/dist/api/ToddleApiV2.js.map +1 -0
  8. package/dist/api/api.d.ts +49 -0
  9. package/dist/api/api.js +276 -0
  10. package/dist/api/api.js.map +1 -0
  11. package/dist/api/apiTypes.d.ts +125 -0
  12. package/dist/api/apiTypes.js +11 -0
  13. package/dist/api/apiTypes.js.map +1 -0
  14. package/dist/api/headers.d.ts +10 -0
  15. package/dist/api/headers.js +36 -0
  16. package/dist/api/headers.js.map +1 -0
  17. package/dist/api/template.d.ts +5 -0
  18. package/dist/api/template.js +7 -0
  19. package/dist/api/template.js.map +1 -0
  20. package/dist/component/ToddleComponent.d.ts +45 -0
  21. package/dist/component/ToddleComponent.js +373 -0
  22. package/dist/component/ToddleComponent.js.map +1 -0
  23. package/dist/component/actionUtils.d.ts +2 -0
  24. package/dist/component/actionUtils.js +56 -0
  25. package/dist/component/actionUtils.js.map +1 -0
  26. package/dist/component/component.types.d.ts +313 -0
  27. package/dist/component/component.types.js +9 -0
  28. package/dist/component/component.types.js.map +1 -0
  29. package/dist/component/isPageComponent.d.ts +2 -0
  30. package/dist/component/isPageComponent.js +3 -0
  31. package/dist/component/isPageComponent.js.map +1 -0
  32. package/dist/formula/ToddleFormula.d.ts +15 -0
  33. package/dist/formula/ToddleFormula.js +20 -0
  34. package/dist/formula/ToddleFormula.js.map +1 -0
  35. package/dist/formula/formula.d.ts +103 -0
  36. package/dist/formula/formula.js +186 -0
  37. package/dist/formula/formula.js.map +1 -0
  38. package/dist/formula/formulaTypes.d.ts +30 -0
  39. package/dist/formula/formulaTypes.js +2 -0
  40. package/dist/formula/formulaTypes.js.map +1 -0
  41. package/dist/formula/formulaUtils.d.ts +18 -0
  42. package/dist/formula/formulaUtils.js +240 -0
  43. package/dist/formula/formulaUtils.js.map +1 -0
  44. package/dist/styling/className.d.ts +2 -0
  45. package/dist/styling/className.js +52 -0
  46. package/dist/styling/className.js.map +1 -0
  47. package/dist/styling/style.css.d.ts +5 -0
  48. package/dist/styling/style.css.js +242 -0
  49. package/dist/styling/style.css.js.map +1 -0
  50. package/dist/styling/theme.const.d.ts +3 -0
  51. package/dist/styling/theme.const.js +381 -0
  52. package/dist/styling/theme.const.js.map +1 -0
  53. package/dist/styling/theme.d.ts +72 -0
  54. package/dist/styling/theme.js +200 -0
  55. package/dist/styling/theme.js.map +1 -0
  56. package/dist/styling/variantSelector.d.ts +123 -0
  57. package/dist/styling/variantSelector.js +25 -0
  58. package/dist/styling/variantSelector.js.map +1 -0
  59. package/dist/types.d.ts +97 -0
  60. package/dist/types.js +2 -0
  61. package/dist/types.js.map +1 -0
  62. package/dist/utils/collections.d.ts +21 -0
  63. package/dist/utils/collections.js +75 -0
  64. package/dist/utils/collections.js.map +1 -0
  65. package/dist/utils/customElements.d.ts +6 -0
  66. package/dist/utils/customElements.js +15 -0
  67. package/dist/utils/customElements.js.map +1 -0
  68. package/dist/utils/hash.d.ts +1 -0
  69. package/dist/utils/hash.js +17 -0
  70. package/dist/utils/hash.js.map +1 -0
  71. package/dist/utils/json.d.ts +5 -0
  72. package/dist/utils/json.js +16 -0
  73. package/dist/utils/json.js.map +1 -0
  74. package/dist/utils/sha1.d.ts +2 -0
  75. package/dist/utils/sha1.js +13 -0
  76. package/dist/utils/sha1.js.map +1 -0
  77. package/dist/utils/url.d.ts +5 -0
  78. package/dist/utils/url.js +27 -0
  79. package/dist/utils/url.js.map +1 -0
  80. package/dist/utils/util.d.ts +3 -0
  81. package/dist/utils/util.js +4 -0
  82. package/dist/utils/util.js.map +1 -0
  83. package/package.json +18 -0
  84. package/src/api/LegacyToddleApi.ts +205 -0
  85. package/src/api/ToddleApiV2.ts +331 -0
  86. package/src/api/api.test.ts +319 -0
  87. package/src/api/api.ts +414 -0
  88. package/src/api/apiTypes.ts +145 -0
  89. package/src/api/headers.ts +41 -0
  90. package/src/api/template.ts +10 -0
  91. package/src/component/ToddleComponent.actionReferences.test.ts +75 -0
  92. package/src/component/ToddleComponent.formulasInComponent.test.ts +234 -0
  93. package/src/component/ToddleComponent.ts +470 -0
  94. package/src/component/actionUtils.ts +61 -0
  95. package/src/component/component.types.ts +362 -0
  96. package/src/component/isPageComponent.ts +6 -0
  97. package/src/formula/ToddleFormula.ts +30 -0
  98. package/src/formula/formula.ts +355 -0
  99. package/src/formula/formulaTypes.ts +45 -0
  100. package/src/formula/formulaUtils.ts +287 -0
  101. package/src/styling/className.test.ts +19 -0
  102. package/src/styling/className.ts +73 -0
  103. package/src/styling/style.css.ts +309 -0
  104. package/src/styling/theme.const.ts +390 -0
  105. package/src/styling/theme.ts +339 -0
  106. package/src/styling/variantSelector.ts +168 -0
  107. package/src/types.ts +158 -0
  108. package/src/utils/collections.test.ts +57 -0
  109. package/src/utils/collections.ts +122 -0
  110. package/src/utils/customElements.test.ts +40 -0
  111. package/src/utils/customElements.ts +16 -0
  112. package/src/utils/hash.test.ts +32 -0
  113. package/src/utils/hash.ts +18 -0
  114. package/src/utils/json.ts +18 -0
  115. package/src/utils/sha1.test.ts +50 -0
  116. package/src/utils/sha1.ts +17 -0
  117. package/src/utils/url.test.ts +17 -0
  118. package/src/utils/url.ts +33 -0
  119. package/src/utils/util.ts +8 -0
@@ -0,0 +1,390 @@
1
+ import type { OldTheme } from './theme'
2
+
3
+ export const RESET_STYLES = `
4
+ @layer reset {
5
+ html {
6
+ height:100%;
7
+ }
8
+
9
+ #App {
10
+ height:100%;
11
+ display:flex;
12
+ flex-direction:column;
13
+ }
14
+
15
+ body {
16
+ height:100%;
17
+ -webkit-font-smoothing: antialiased;
18
+ -moz-osx-font-smoothing: grayscale;
19
+ margin:0;
20
+ }
21
+
22
+ [data-node-id]:not([data-unset-toddle-styles],[data-node-type="text"],noscript,br,script,style,math,math *,link,template,meta,title,base), [data-node-id]:not([data-unset-toddle-styles],noscript)::before, [data-node-id]:not([data-unset-toddle-styles],noscript)::after {
23
+ display: flex;
24
+ flex-direction: column;
25
+ flex-grow: 0;
26
+ flex-shrink: 0;
27
+
28
+ position: relative;
29
+ box-sizing: border-box;
30
+ padding: 0;
31
+ margin: 0;
32
+
33
+ font-size: var(--text-base);
34
+ font-family: var(--font-sans);
35
+ font-weight: var(--font-weight-normal);
36
+
37
+ background: transparent;
38
+ color: inherit;
39
+ border: none;
40
+ box-shadow: none;
41
+ }
42
+
43
+ [data-node-id]:not([data-unset-toddle-styles]):is(p, h1, h2, h3, h4, h5, h6, label, span, strong, b, i, address, caption, code, cite, dt, dd, em, figcaption, legend, blockquote, abbr, pre, bdo, bdi) {
44
+ display: inline-block;
45
+ overflow-wrap: break-word;
46
+ color: inherit;
47
+ }
48
+
49
+ [data-node-id]:not([data-unset-toddle-styles]):is(input, button, textarea, select) {
50
+ outline: none;
51
+ }
52
+
53
+ [data-node-id]:not([data-unset-toddle-styles]):is(a) {
54
+ color: inherit;
55
+ text-decoration: none;
56
+ }
57
+
58
+ [data-node-id]:not([data-unset-toddle-styles]):is(ul, ol, li) {
59
+ list-style: none;
60
+ }
61
+
62
+ [data-node-id]:not([data-unset-toddle-styles]):is(span[data-node-type="text"]) {
63
+ font: inherit;
64
+ display: inline;
65
+ flex-direction: column;
66
+ flex-grow: 0;
67
+ flex-shrink: 0;
68
+ box-sizing: border-box;
69
+ }
70
+
71
+ [popover]:not(:popover-open):not(dialog[open]) {
72
+ display: revert;
73
+ }
74
+ }`
75
+ export const theme: OldTheme = {
76
+ colors: {
77
+ grey: {
78
+ order: 0,
79
+ variants: {
80
+ '50': { order: 0, value: '#FAFAFA' },
81
+ '100': { order: 1, value: '#F5F5F5' },
82
+ '200': { order: 2, value: '#E5E5E5' },
83
+ '300': { order: 3, value: '#D4D4D4' },
84
+ '400': { order: 4, value: '#A3A3A3' },
85
+ '500': { order: 5, value: '#737373' },
86
+ '600': { order: 6, value: '#525252' },
87
+ '700': { order: 7, value: '#404040' },
88
+ '800': { order: 8, value: '#262626' },
89
+ '900': { order: 9, value: '#171717' },
90
+ },
91
+ },
92
+ red: {
93
+ order: 1,
94
+ variants: {
95
+ '50': { order: 0, value: '#FEF2F2' },
96
+ '100': { order: 1, value: '#FEE2E2' },
97
+ '200': { order: 2, value: '#FECACA' },
98
+ '300': { order: 3, value: '#FCA5A5' },
99
+ '400': { order: 4, value: '#F87171' },
100
+ '500': { order: 5, value: '#EF4444' },
101
+ '600': { order: 6, value: '#DC2626' },
102
+ '700': { order: 7, value: '#B91C1C' },
103
+ '800': { order: 8, value: '#991B1B' },
104
+ '900': { order: 9, value: '#7F1D1D' },
105
+ },
106
+ },
107
+ rose: {
108
+ order: 3,
109
+ variants: {
110
+ '50': { order: 0, value: '#FFF1F2' },
111
+ '100': { order: 1, value: '#FFE4E6' },
112
+ '200': { order: 2, value: '#FECDD3' },
113
+ '300': { order: 3, value: '#FDA4AF' },
114
+ '400': { order: 4, value: '#FB7185' },
115
+ '500': { order: 5, value: '#F43F5E' },
116
+ '600': { order: 6, value: '#E11D48' },
117
+ '700': { order: 7, value: '#BE123C' },
118
+ '800': { order: 8, value: '#9F1239' },
119
+ '900': { order: 9, value: '#881337' },
120
+ },
121
+ },
122
+ pink: {
123
+ order: 4,
124
+ variants: {
125
+ '50': { order: 0, value: '#FDF2F8' },
126
+ '100': { order: 1, value: '#FCE7F3' },
127
+ '200': { order: 2, value: '#FBCFE8' },
128
+ '300': { order: 3, value: '#F9A8D4' },
129
+ '400': { order: 4, value: '#F472B6' },
130
+ '500': { order: 5, value: '#EC4899' },
131
+ '600': { order: 6, value: '#DB2777' },
132
+ '700': { order: 7, value: '#BE185D' },
133
+ '800': { order: 8, value: '#9D174D' },
134
+ '900': { order: 9, value: '#831843' },
135
+ },
136
+ },
137
+ amber: {
138
+ order: 5,
139
+ variants: {
140
+ '50': { order: 0, value: '#FFFBEB' },
141
+ '100': { order: 1, value: '#FEF3C7' },
142
+ '200': { order: 2, value: '#FDE68A' },
143
+ '300': { order: 3, value: '#FCD34D' },
144
+ '400': { order: 4, value: '#FBBF24' },
145
+ '500': { order: 5, value: '#F59E0B' },
146
+ '600': { order: 6, value: '#D97706' },
147
+ '700': { order: 7, value: '#B45309' },
148
+ '800': { order: 8, value: '#92400E' },
149
+ '900': { order: 9, value: '#78350F' },
150
+ },
151
+ },
152
+ orange: {
153
+ order: 6,
154
+ variants: {
155
+ '50': { order: 0, value: '#FFF7ED' },
156
+ '100': { order: 1, value: '#FFEDD5' },
157
+ '200': { order: 2, value: '#FED7AA' },
158
+ '300': { order: 3, value: '#FDBA74' },
159
+ '400': { order: 4, value: '#FB923C' },
160
+ '500': { order: 5, value: '#F97316' },
161
+ '600': { order: 6, value: '#EA580C' },
162
+ '700': { order: 7, value: '#C2410C' },
163
+ '800': { order: 8, value: '#9A3412' },
164
+ '900': { order: 9, value: '#7C2D12' },
165
+ },
166
+ },
167
+ yellow: {
168
+ order: 7,
169
+ variants: {
170
+ '50': { order: 0, value: '#FFFBEB' },
171
+ '100': { order: 1, value: '#FEF3C7' },
172
+ '200': { order: 2, value: '#FDE68A' },
173
+ '300': { order: 3, value: '#FCD34D' },
174
+ '400': { order: 4, value: '#FBBF24' },
175
+ '500': { order: 5, value: '#F59E0B' },
176
+ '600': { order: 6, value: '#D97706' },
177
+ '700': { order: 7, value: '#B45309' },
178
+ '800': { order: 8, value: '#92400E' },
179
+ '900': { order: 9, value: '#78350F' },
180
+ },
181
+ },
182
+ lime: {
183
+ order: 8,
184
+ variants: {
185
+ '50': { order: 0, value: '#F7FEE7' },
186
+ '100': { order: 1, value: '#ECFCCB' },
187
+ '200': { order: 2, value: '#D9F99D' },
188
+ '300': { order: 3, value: '#BEF264' },
189
+ '400': { order: 4, value: '#A3E635' },
190
+ '500': { order: 5, value: '#84CC16' },
191
+ '600': { order: 6, value: '#65A30D' },
192
+ '700': { order: 7, value: '#4D7C0F' },
193
+ '800': { order: 8, value: '#3F6212' },
194
+ '900': { order: 9, value: '#365314' },
195
+ },
196
+ },
197
+ green: {
198
+ order: 9,
199
+ variants: {
200
+ '50': { order: 0, value: '#ECFDF5' },
201
+ '100': { order: 1, value: '#D1FAE5' },
202
+ '200': { order: 2, value: '#A7F3D0' },
203
+ '300': { order: 3, value: '#6EE7B7' },
204
+ '400': { order: 4, value: '#34D399' },
205
+ '500': { order: 5, value: '#10B981' },
206
+ '600': { order: 6, value: '#059669' },
207
+ '700': { order: 7, value: '#047857' },
208
+ '800': { order: 8, value: '#065F46' },
209
+ '900': { order: 9, value: '#064E3B' },
210
+ },
211
+ },
212
+ emerald: {
213
+ order: 10,
214
+ variants: {
215
+ '50': { order: 0, value: '#ECFDF5' },
216
+ '100': { order: 1, value: '#D1FAE5' },
217
+ '200': { order: 2, value: '#A7F3D0' },
218
+ '300': { order: 3, value: '#6EE7B7' },
219
+ '400': { order: 4, value: '#34D399' },
220
+ '500': { order: 5, value: '#10B981' },
221
+ '600': { order: 6, value: '#059669' },
222
+ '700': { order: 7, value: '#047857' },
223
+ '800': { order: 8, value: '#065F46' },
224
+ '900': { order: 9, value: '#064E3B' },
225
+ },
226
+ },
227
+ teal: {
228
+ order: 11,
229
+ variants: {
230
+ '50': { order: 0, value: '#F0FDFA' },
231
+ '100': { order: 1, value: '#CCFBF1' },
232
+ '200': { order: 2, value: '#99F6E4' },
233
+ '300': { order: 3, value: '#5EEAD4' },
234
+ '400': { order: 4, value: '#2DD4BF' },
235
+ '500': { order: 5, value: '#14B8A6' },
236
+ '600': { order: 6, value: '#0D9488' },
237
+ '700': { order: 7, value: '#0F766E' },
238
+ '800': { order: 8, value: '#115E59' },
239
+ '900': { order: 9, value: '#134E4A' },
240
+ },
241
+ },
242
+ cyan: {
243
+ order: 12,
244
+ variants: {
245
+ '50': { order: 0, value: '#ECFEFF' },
246
+ '100': { order: 1, value: '#CFFAFE' },
247
+ '200': { order: 2, value: '#A5F3FC' },
248
+ '300': { order: 3, value: '#67E8F9' },
249
+ '400': { order: 4, value: '#22D3EE' },
250
+ '500': { order: 5, value: '#06B6D4' },
251
+ '600': { order: 6, value: '#0891B2' },
252
+ '700': { order: 7, value: '#0E7490' },
253
+ '800': { order: 8, value: '#155E75' },
254
+ '900': { order: 9, value: '#164E63' },
255
+ },
256
+ },
257
+ sky: {
258
+ order: 13,
259
+ variants: {
260
+ '50': { order: 0, value: '#F0F9FF' },
261
+ '100': { order: 1, value: '#E0F2FE' },
262
+ '200': { order: 2, value: '#BAE6FD' },
263
+ '300': { order: 3, value: '#7DD3FC' },
264
+ '400': { order: 4, value: '#38BDF8' },
265
+ '500': { order: 5, value: '#0EA5E9' },
266
+ '600': { order: 6, value: '#0284C7' },
267
+ '700': { order: 7, value: '#0369A1' },
268
+ '800': { order: 8, value: '#075985' },
269
+ '900': { order: 9, value: '#0C4A6E' },
270
+ },
271
+ },
272
+ blue: {
273
+ order: 14,
274
+ variants: {
275
+ '50': { order: 0, value: '#EFF6FF' },
276
+ '100': { order: 1, value: '#DBEAFE' },
277
+ '200': { order: 2, value: '#BFDBFE' },
278
+ '300': { order: 3, value: '#93C5FD' },
279
+ '400': { order: 4, value: '#60A5FA' },
280
+ '500': { order: 5, value: '#3B82F6' },
281
+ '600': { order: 6, value: '#2563EB' },
282
+ '700': { order: 7, value: '#1D4ED8' },
283
+ '800': { order: 8, value: '#1E40AF' },
284
+ '900': { order: 9, value: '#1E3A8A' },
285
+ },
286
+ },
287
+
288
+ indigo: {
289
+ order: 15,
290
+ variants: {
291
+ '50': { order: 0, value: '#EEF2FF' },
292
+ '100': { order: 1, value: '#E0E7FF' },
293
+ '200': { order: 2, value: '#C7D2FE' },
294
+ '300': { order: 3, value: '#A5B4FC' },
295
+ '400': { order: 4, value: '#818CF8' },
296
+ '500': { order: 5, value: '#6366F1' },
297
+ '600': { order: 6, value: '#4F46E5' },
298
+ '700': { order: 7, value: '#4338CA' },
299
+ '800': { order: 8, value: '#3730A3' },
300
+ '900': { order: 9, value: '#312E81' },
301
+ },
302
+ },
303
+
304
+ purple: {
305
+ order: 16,
306
+ variants: {
307
+ '50': { order: 0, value: '#F5F3FF' },
308
+ '100': { order: 1, value: '#EDE9FE' },
309
+ '200': { order: 2, value: '#DDD6FE' },
310
+ '300': { order: 3, value: '#C4B5FD' },
311
+ '400': { order: 4, value: '#A78BFA' },
312
+ '500': { order: 5, value: '#8B5CF6' },
313
+ '600': { order: 6, value: '#7C3AED' },
314
+ '700': { order: 7, value: '#6D28D9' },
315
+ '800': { order: 8, value: '#5B21B6' },
316
+ '900': { order: 9, value: '#4C1D95' },
317
+ },
318
+ },
319
+
320
+ fuchsia: {
321
+ order: 17,
322
+ variants: {
323
+ '50': { order: 0, value: '#FDF4FF' },
324
+ '100': { order: 1, value: '#FAE8FF' },
325
+ '200': { order: 2, value: '#F5D0FE' },
326
+ '300': { order: 3, value: '#F0ABFC' },
327
+ '400': { order: 4, value: '#E879F9' },
328
+ '500': { order: 5, value: '#D946EF' },
329
+ '600': { order: 6, value: '#C026D3' },
330
+ '700': { order: 7, value: '#A21CAF' },
331
+ '800': { order: 8, value: '#86198F' },
332
+ '900': { order: 9, value: '#701A75' },
333
+ },
334
+ },
335
+ },
336
+
337
+ shadow: {
338
+ sm: { order: 0, value: '0 1px 2px 0 rgba(0, 0, 0, 0.25)' },
339
+ base: {
340
+ order: 1,
341
+ value: '0 1px 3px 0 rgba(0, 0, 0, 0.25), 0 1px 2px 0 rgba(0, 0, 0, 0.25)',
342
+ },
343
+ md: {
344
+ order: 2,
345
+ value:
346
+ '0 4px 6px -1px rgba(0, 0, 0, 0.25), 0 2px 4px -1px rgba(0, 0, 0, 0.25)',
347
+ },
348
+ lg: {
349
+ order: 3,
350
+ value:
351
+ '0 10px 15px -3px rgba(0, 0, 0, 0.25), 0 4px 6px -2px rgba(0, 0, 0, 0.25)',
352
+ },
353
+ xl: {
354
+ order: 4,
355
+ value:
356
+ '0 20px 25px -5px rgba(0, 0, 0, 0.25), 0 10px 10px -5px rgba(0, 0, 0, 0.25)',
357
+ },
358
+ '2xl': { order: 5, value: '0 25px 50px -12px rgba(0, 0, 0, 0.25)' },
359
+ },
360
+
361
+ spacing: 0.25,
362
+ fontSize: {
363
+ lg: { order: 0, value: '1.125rem' },
364
+ sm: { order: 1, value: '0.875rem' },
365
+ xl: { order: 2, value: '1.25rem' },
366
+ xs: { order: 3, value: '0.75rem' },
367
+ '2xl': { order: 4, value: '1.5rem' },
368
+ '3xl': { order: 5, value: '1.875rem' },
369
+ '4xl': { order: 6, value: '2.25rem' },
370
+ '5xl': { order: 7, value: '3rem' },
371
+ xxs: { order: 8, value: '0.625rem' },
372
+ base: { order: 9, value: '1rem', default: true },
373
+ },
374
+ fontFamily: {
375
+ mono: { order: 0, value: ['Fira Code', 'monospace'] },
376
+ sans: { order: 1, value: ['Inter', 'sans-serif'], default: true },
377
+ },
378
+ fontWeight: {
379
+ bold: { order: 0, value: '700' },
380
+ bolder: { order: 1, value: '800' },
381
+ normal: { order: 2, value: '500', default: true },
382
+ regular: { order: 3, value: '400' },
383
+ 'semi-bold': { order: 4, value: '600' },
384
+ },
385
+ breakpoints: {
386
+ large: { order: 2, value: 1440 },
387
+ small: { order: 0, value: 576 },
388
+ medium: { order: 1, value: 960 },
389
+ },
390
+ }