@finsweet/webflow-apps-utils 1.0.7 → 1.0.9

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 (141) hide show
  1. package/dist/index.d.ts +0 -3
  2. package/dist/index.js +0 -3
  3. package/dist/types/customCode.d.ts +1 -1
  4. package/dist/ui/components/Loader.svelte +0 -2
  5. package/dist/ui/components/button/Button.stories.svelte +0 -8
  6. package/dist/ui/components/button/Button.svelte +68 -76
  7. package/dist/ui/components/button/index.d.ts +1 -1
  8. package/dist/ui/components/button/index.js +1 -0
  9. package/dist/ui/components/controlled-buttons/ControlledButtons.svelte +17 -7
  10. package/dist/ui/components/copy-text/CopyText.svelte +48 -39
  11. package/dist/ui/components/divider/Divider.stories.svelte +0 -4
  12. package/dist/ui/components/input/index.d.ts +1 -1
  13. package/dist/ui/components/input/index.js +1 -0
  14. package/dist/ui/components/layout/Layout.svelte +0 -6
  15. package/dist/ui/components/layout/common/EditModeMessage.svelte +1 -1
  16. package/dist/ui/components/layout/examples/ExampleLayout.svelte +2 -9
  17. package/dist/ui/components/layout/examples/Wrapper.svelte +1 -1
  18. package/dist/ui/components/modal/Example.svelte +0 -7
  19. package/dist/ui/components/modal/Modal.stories.svelte +0 -2
  20. package/dist/ui/components/modal/Modal.svelte +1 -1
  21. package/dist/ui/components/notification/Notification.stories.svelte +0 -8
  22. package/dist/ui/components/section/Section.stories.svelte +0 -1
  23. package/dist/ui/components/text/README.md +0 -2
  24. package/dist/ui/components/text/Text.stories.svelte +0 -6
  25. package/dist/ui/components/text/Text.svelte +0 -19
  26. package/dist/ui/components/tooltip/Tooltip.svelte +9 -4
  27. package/dist/ui/icons/FinsweetLogoOutlineIcon.svelte +17 -0
  28. package/dist/ui/icons/FinsweetLogoOutlineIcon.svelte.d.ts +26 -0
  29. package/dist/ui/icons/TriangleDownIconToggle.svelte +0 -1
  30. package/dist/ui/icons/index.d.ts +2 -1
  31. package/dist/ui/icons/index.js +2 -1
  32. package/dist/ui/index.css +1 -1
  33. package/dist/ui/index.d.ts +4 -0
  34. package/dist/ui/index.js +4 -0
  35. package/dist/{providers → ui/providers}/GlobalProvider.stories.js +7 -7
  36. package/dist/{providers → ui/providers}/GlobalProvider.svelte +1 -1
  37. package/dist/{providers → ui/providers}/GlobalProviderDemo.svelte +0 -2
  38. package/dist/{router → ui/router}/Router.stories.js +7 -7
  39. package/dist/{router → ui/router}/examples/RouterExample.svelte +0 -9
  40. package/dist/{router → ui/router}/examples/pages/AboutPage.svelte +0 -4
  41. package/dist/{router → ui/router}/providers/Link.svelte +0 -2
  42. package/dist/{router → ui/router}/providers/Route.svelte +0 -3
  43. package/dist/{router → ui/router}/providers/RouterProvider.svelte +1 -1
  44. package/dist/{router → ui/router}/router.svelte.d.ts +0 -1
  45. package/dist/{router → ui/router}/router.svelte.js +3 -2
  46. package/dist/ui/stores/form.d.ts +280 -0
  47. package/dist/{stores/forms.js → ui/stores/form.js} +310 -2
  48. package/dist/{stores → ui/stores}/forms/Form.stories.js +5 -5
  49. package/dist/{stores → ui/stores}/forms/FormDemo.svelte +1 -1
  50. package/dist/{stores → ui/stores}/index.d.ts +1 -3
  51. package/dist/{stores → ui/stores}/index.js +1 -3
  52. package/dist/ui/utils/api/checkIfAppModeIsDesign.d.ts +4 -0
  53. package/dist/ui/utils/api/checkIfAppModeIsDesign.js +19 -0
  54. package/dist/ui/utils/api/clipboard/handlePaste.d.ts +15 -0
  55. package/dist/ui/utils/api/clipboard/handlePaste.js +49 -0
  56. package/dist/ui/utils/api/clipboard/index.d.ts +1 -0
  57. package/dist/ui/utils/api/clipboard/index.js +1 -0
  58. package/dist/ui/utils/api/getAllAssets.d.ts +11 -0
  59. package/dist/ui/utils/api/getAllAssets.js +20 -0
  60. package/dist/ui/utils/api/getFinsweetComponentsEnvironment.d.ts +8 -0
  61. package/dist/ui/utils/api/getFinsweetComponentsEnvironment.js +66 -0
  62. package/dist/ui/utils/api/index.d.ts +5 -0
  63. package/dist/ui/utils/api/index.js +5 -0
  64. package/dist/ui/utils/api/insertWithXSCP.d.ts +4 -0
  65. package/dist/ui/utils/api/insertWithXSCP.js +12 -0
  66. package/dist/{utils → ui/utils}/auth/crossWindowLogin.d.ts +1 -1
  67. package/dist/{utils → ui/utils}/auth/crossWindowLogin.js +1 -1
  68. package/dist/{utils → ui/utils}/auth/index.d.ts +1 -1
  69. package/dist/{utils → ui/utils}/auth/index.js +4 -6
  70. package/dist/{utils → ui/utils}/diff-mapper/DiffMapper.stories.js +2 -2
  71. package/dist/{utils → ui/utils}/diff-mapper/DiffMapperDemo.svelte +1 -1
  72. package/dist/{utils → ui/utils}/helpers/goto.js +2 -4
  73. package/dist/ui/utils/helpers/index.d.ts +1 -0
  74. package/dist/ui/utils/helpers/index.js +1 -0
  75. package/dist/ui/utils/index.d.ts +3 -0
  76. package/dist/ui/utils/index.js +3 -0
  77. package/dist/utils/custom-code/api.d.ts +1 -1
  78. package/dist/utils/custom-code/api.js +4 -6
  79. package/dist/utils/custom-code/configs.d.ts +3 -2
  80. package/dist/utils/custom-code/configs.js +5 -8
  81. package/dist/utils/custom-code/index.d.ts +1 -1
  82. package/dist/utils/custom-code/index.js +1 -1
  83. package/dist/utils/helpers/index.d.ts +0 -1
  84. package/dist/utils/helpers/index.js +0 -1
  85. package/dist/utils/index.d.ts +2 -3
  86. package/dist/utils/index.js +1 -3
  87. package/dist/utils/logger/index.d.ts +1 -2
  88. package/dist/utils/stores/index.d.ts +2 -0
  89. package/dist/utils/stores/index.js +2 -0
  90. package/package.json +13 -4
  91. package/dist/stores/forms.d.ts +0 -147
  92. /package/dist/{providers → ui/providers}/GlobalProvider.stories.d.ts +0 -0
  93. /package/dist/{providers → ui/providers}/GlobalProvider.svelte.d.ts +0 -0
  94. /package/dist/{providers → ui/providers}/GlobalProviderDemo.svelte.d.ts +0 -0
  95. /package/dist/{providers → ui/providers}/configuratorUtils.d.ts +0 -0
  96. /package/dist/{providers → ui/providers}/configuratorUtils.js +0 -0
  97. /package/dist/{providers → ui/providers}/globalContext.svelte.d.ts +0 -0
  98. /package/dist/{providers → ui/providers}/globalContext.svelte.js +0 -0
  99. /package/dist/{providers → ui/providers}/index.d.ts +0 -0
  100. /package/dist/{providers → ui/providers}/index.js +0 -0
  101. /package/dist/{providers → ui/providers}/types.d.ts +0 -0
  102. /package/dist/{providers → ui/providers}/types.js +0 -0
  103. /package/dist/{router → ui/router}/Router.stories.d.ts +0 -0
  104. /package/dist/{router → ui/router}/examples/RouterExample.svelte.d.ts +0 -0
  105. /package/dist/{router → ui/router}/examples/index.d.ts +0 -0
  106. /package/dist/{router → ui/router}/examples/index.js +0 -0
  107. /package/dist/{router → ui/router}/examples/pages/AboutPage.svelte.d.ts +0 -0
  108. /package/dist/{router → ui/router}/examples/pages/HomePage.svelte +0 -0
  109. /package/dist/{router → ui/router}/examples/pages/HomePage.svelte.d.ts +0 -0
  110. /package/dist/{router → ui/router}/examples/pages/NotFoundPage.svelte +0 -0
  111. /package/dist/{router → ui/router}/examples/pages/NotFoundPage.svelte.d.ts +0 -0
  112. /package/dist/{router → ui/router}/hooks.svelte.d.ts +0 -0
  113. /package/dist/{router → ui/router}/hooks.svelte.js +0 -0
  114. /package/dist/{router → ui/router}/index.d.ts +0 -0
  115. /package/dist/{router → ui/router}/index.js +0 -0
  116. /package/dist/{router → ui/router}/providers/Link.svelte.d.ts +0 -0
  117. /package/dist/{router → ui/router}/providers/Route.svelte.d.ts +0 -0
  118. /package/dist/{router → ui/router}/providers/RouterProvider.svelte.d.ts +0 -0
  119. /package/dist/{router → ui/router}/providers/index.d.ts +0 -0
  120. /package/dist/{router → ui/router}/providers/index.js +0 -0
  121. /package/dist/{stores → ui/stores}/breakpoints.d.ts +0 -0
  122. /package/dist/{stores → ui/stores}/breakpoints.js +0 -0
  123. /package/dist/{stores → ui/stores}/componentInjectErrors.d.ts +0 -0
  124. /package/dist/{stores → ui/stores}/componentInjectErrors.js +0 -0
  125. /package/dist/{stores → ui/stores}/forms/Form.stories.d.ts +0 -0
  126. /package/dist/{stores → ui/stores}/forms/FormDemo.svelte.d.ts +0 -0
  127. /package/dist/{stores → ui/stores}/showConfirmActionModal.d.ts +0 -0
  128. /package/dist/{stores → ui/stores}/showConfirmActionModal.js +0 -0
  129. /package/dist/{stores → ui/stores}/siteInfo.d.ts +0 -0
  130. /package/dist/{stores → ui/stores}/siteInfo.js +0 -0
  131. /package/dist/{utils → ui/utils}/diff-mapper/DiffMapper.stories.d.ts +0 -0
  132. /package/dist/{utils → ui/utils}/diff-mapper/DiffMapperDemo.svelte.d.ts +0 -0
  133. /package/dist/{utils → ui/utils}/diff-mapper/deepDiffMapper.d.ts +0 -0
  134. /package/dist/{utils → ui/utils}/diff-mapper/deepDiffMapper.js +0 -0
  135. /package/dist/{utils → ui/utils}/diff-mapper/index.d.ts +0 -0
  136. /package/dist/{utils → ui/utils}/diff-mapper/index.js +0 -0
  137. /package/dist/{utils → ui/utils}/helpers/goto.d.ts +0 -0
  138. /package/dist/{stores → utils/stores}/isPreviewMode.d.ts +0 -0
  139. /package/dist/{stores → utils/stores}/isPreviewMode.js +0 -0
  140. /package/dist/{stores → utils/stores}/router.d.ts +0 -0
  141. /package/dist/{stores → utils/stores}/router.js +0 -0
@@ -59,7 +59,6 @@
59
59
  </div>
60
60
  </div>
61
61
 
62
- <!-- Basic Modal -->
63
62
  <Modal
64
63
  open={basicModalOpen}
65
64
  width="400px"
@@ -89,7 +88,6 @@
89
88
  </div>
90
89
  </Modal>
91
90
 
92
- <!-- Loading Modal -->
93
91
  <Modal
94
92
  open={loadingModalOpen}
95
93
  width="400px"
@@ -112,7 +110,6 @@
112
110
  </p>
113
111
  </Modal>
114
112
 
115
- <!-- No Header Modal -->
116
113
  <Modal
117
114
  open={noHeaderModalOpen}
118
115
  width="400px"
@@ -131,7 +128,6 @@
131
128
  </div>
132
129
  </Modal>
133
130
 
134
- <!-- Prevent Close Modal -->
135
131
  <Modal
136
132
  open={preventCloseModalOpen}
137
133
  width="400px"
@@ -162,7 +158,6 @@
162
158
  </p>
163
159
  </Modal>
164
160
 
165
- <!-- Custom Styled Modal -->
166
161
  <Modal
167
162
  open={customStyledModalOpen}
168
163
  width="400px"
@@ -188,7 +183,6 @@
188
183
  </div>
189
184
  </Modal>
190
185
 
191
- <!-- Long Content Modal -->
192
186
  <Modal
193
187
  open={longContentModalOpen}
194
188
  width="400px"
@@ -222,7 +216,6 @@
222
216
  </div>
223
217
  </Modal>
224
218
 
225
- <!-- Custom Footer Modal -->
226
219
  <Modal
227
220
  open={customFooterModalOpen}
228
221
  width="400px"
@@ -1,4 +1,3 @@
1
- <!-- eslint-disable svelte/no-useless-children-snippet -->
2
1
  <script module>
3
2
  import { defineMeta } from '@storybook/addon-svelte-csf';
4
3
 
@@ -12,7 +11,6 @@
12
11
  });
13
12
  </script>
14
13
 
15
- <!-- Interactive Examples -->
16
14
  <Story name="Examples">
17
15
  <Example />
18
16
  </Story>
@@ -340,7 +340,7 @@
340
340
  style={modalStyles}
341
341
  onclick={(e) => e.stopPropagation()}
342
342
  onkeydown={trapFocus}
343
- role="document"
343
+ role="banner"
344
344
  >
345
345
  {#if loading}
346
346
  <LoadingScreen
@@ -69,7 +69,6 @@
69
69
  });
70
70
  </script>
71
71
 
72
- <!-- Basic Variants -->
73
72
  <Story
74
73
  name="Warning"
75
74
  args={{
@@ -109,7 +108,6 @@
109
108
  }}
110
109
  />
111
110
 
112
- <!-- Content Variations -->
113
111
  <Story
114
112
  name="Message Only"
115
113
  args={{
@@ -126,7 +124,6 @@
126
124
  }}
127
125
  />
128
126
 
129
- <!-- Interactive Features -->
130
127
  <Story
131
128
  name="With Link"
132
129
  args={{
@@ -148,7 +145,6 @@
148
145
  }}
149
146
  />
150
147
 
151
- <!-- Customization -->
152
148
  <Story
153
149
  name="Custom Color"
154
150
  args={{
@@ -179,7 +175,6 @@
179
175
  }}
180
176
  />
181
177
 
182
- <!-- Rich Text Support -->
183
178
  <Story
184
179
  name="Rich Text Content"
185
180
  args={{
@@ -191,7 +186,6 @@
191
186
  }}
192
187
  />
193
188
 
194
- <!-- Complex Content -->
195
189
  <Story
196
190
  name="Long Content"
197
191
  args={{
@@ -204,7 +198,6 @@
204
198
  }}
205
199
  />
206
200
 
207
- <!-- Accessibility Test -->
208
201
  <Story
209
202
  name="Accessibility Test"
210
203
  args={{
@@ -227,7 +220,6 @@
227
220
  }}
228
221
  />
229
222
 
230
- <!-- Custom Actions Info -->
231
223
  <Story
232
224
  name="Custom Actions Support"
233
225
  args={{
@@ -68,7 +68,6 @@
68
68
  };
69
69
  </script>
70
70
 
71
- <!-- Basic stories -->
72
71
  <Story
73
72
  name="Default"
74
73
  args={{
@@ -19,10 +19,8 @@ A versatile and modern text component built with Svelte 5 that provides comprehe
19
19
  The popup system uses the exact same design and layout as the original popup component:
20
20
 
21
21
  ```svelte
22
- <!-- Default popup (matches original exactly) -->
23
22
  <Text label="Remove item" popup={{}} on:popupAction={handleRemove} />
24
23
 
25
- <!-- Custom popup -->
26
24
  <Text
27
25
  label="Delete item"
28
26
  popup={{
@@ -80,7 +80,6 @@
80
80
  });
81
81
  </script>
82
82
 
83
- <!-- Basic Examples -->
84
83
  <Story
85
84
  name="Default"
86
85
  args={{
@@ -112,7 +111,6 @@
112
111
  }}
113
112
  />
114
113
 
115
- <!-- Alignment and Ellipsis -->
116
114
  <Story name="Text Alignment & Ellipsis">
117
115
  <div
118
116
  style="width: 300px; border: 1px solid #ddd; padding: 16px; display: flex; flex-direction: column; gap: 12px;"
@@ -149,7 +147,6 @@
149
147
  </div>
150
148
  </Story>
151
149
 
152
- <!-- Tooltip Examples -->
153
150
  <Story
154
151
  name="With Tooltip"
155
152
  args={{
@@ -222,7 +219,6 @@
222
219
  </div>
223
220
  </Story>
224
221
 
225
- <!-- Popup Example -->
226
222
  <Story
227
223
  name="With Popup Action"
228
224
  args={{
@@ -236,7 +232,6 @@
236
232
  }}
237
233
  />
238
234
 
239
- <!-- Styling Examples -->
240
235
  <Story name="Styling Options">
241
236
  <div style="display: flex; flex-direction: column; gap: 8px;">
242
237
  <Text label="Large bold text" fontSize="large" fontWeight="bold" />
@@ -246,7 +241,6 @@
246
241
  </div>
247
242
  </Story>
248
243
 
249
- <!-- Complex Example -->
250
244
  <Story
251
245
  name="Complex Example"
252
246
  args={{
@@ -305,7 +305,6 @@
305
305
 
306
306
  {#if label || tooltip || icon || children}
307
307
  {#if !hasPopup && shouldShowTooltipOnText}
308
- <!-- Simple text with tooltip on text -->
309
308
  <Tooltip {...tooltip}>
310
309
  {#snippet target()}
311
310
  <div
@@ -320,7 +319,6 @@
320
319
  >
321
320
  {#if label?.trim() || icon || children}
322
321
  {#if ellipsisOnWidth && (icon || loading)}
323
- <!-- handling ellipsis with icons -->
324
322
  <div
325
323
  class="text-with-icon"
326
324
  style="display: flex; align-items: center; gap: 4px; width: {ellipsisOnWidth}; justify-content: {textAlign ===
@@ -356,7 +354,6 @@
356
354
  </div>
357
355
  </div>
358
356
  {:else}
359
- <!-- Normal text handling -->
360
357
  <div class={textClasses()} style={textStyles()}>
361
358
  {#if icon || loading}
362
359
  {#if loading}
@@ -392,7 +389,6 @@
392
389
  {/snippet}
393
390
  </Tooltip>
394
391
  {:else if !hasPopup && shouldShowTooltipOnIcon}
395
- <!-- Simple text with tooltip on icon -->
396
392
  <div
397
393
  class={labelClasses()}
398
394
  data-component="Text"
@@ -405,7 +401,6 @@
405
401
  >
406
402
  {#if label?.trim() || icon || children}
407
403
  {#if ellipsisOnWidth && (icon || loading)}
408
- <!-- handling ellipsis with icons -->
409
404
  <div
410
405
  class="text-with-icon"
411
406
  style="display: flex; align-items: center; gap: 4px; width: {ellipsisOnWidth}; justify-content: {textAlign ===
@@ -439,7 +434,6 @@
439
434
  </div>
440
435
  </div>
441
436
  {:else}
442
- <!-- Normal text handling -->
443
437
  <div class={textClasses()} style={textStyles()}>
444
438
  {#if icon || loading}
445
439
  {#if loading}
@@ -471,7 +465,6 @@
471
465
  {/if}
472
466
  </div>
473
467
  {:else if !hasPopup}
474
- <!-- Simple text without tooltip -->
475
468
  <div
476
469
  class={labelClasses()}
477
470
  data-component="Text"
@@ -484,7 +477,6 @@
484
477
  >
485
478
  {#if label?.trim() || icon || children}
486
479
  {#if ellipsisOnWidth && (icon || loading)}
487
- <!-- handling ellipsis with icons -->
488
480
  <div
489
481
  class="text-with-icon"
490
482
  style="display: flex; align-items: center; gap: 4px; width: {ellipsisOnWidth}; justify-content: {textAlign ===
@@ -514,7 +506,6 @@
514
506
  </div>
515
507
  </div>
516
508
  {:else}
517
- <!-- Normal text handling -->
518
509
  <div class={textClasses()} style={textStyles()}>
519
510
  {#if icon || loading}
520
511
  {#if loading}
@@ -542,7 +533,6 @@
542
533
  {/if}
543
534
  </div>
544
535
  {:else}
545
- <!-- Text with popup functionality -->
546
536
  <div
547
537
  class="label-popup {disabled ? 'disabled' : ''}"
548
538
  onclick={handlePopupToggle}
@@ -564,7 +554,6 @@
564
554
  {#snippet target()}
565
555
  <span class="dropdown-label item {popupConfig.active ? 'active' : ''}">
566
556
  {#if shouldShowTooltipOnText}
567
- <!-- Text with popup and tooltip on text -->
568
557
  <Tooltip {...tooltip}>
569
558
  {#snippet target()}
570
559
  <div
@@ -579,7 +568,6 @@
579
568
  >
580
569
  {#if label?.trim() || icon || children}
581
570
  {#if ellipsisOnWidth && (icon || loading)}
582
- <!-- handling ellipsis with icons -->
583
571
  <div
584
572
  class="text-with-icon"
585
573
  style="display: flex; align-items: center; gap: 4px; width: {ellipsisOnWidth}; justify-content: {textAlign ===
@@ -615,7 +603,6 @@
615
603
  </div>
616
604
  </div>
617
605
  {:else}
618
- <!-- Normal text handling -->
619
606
  <div class={textClasses()} style={textStyles()}>
620
607
  {#if icon || loading}
621
608
  {#if loading}
@@ -651,7 +638,6 @@
651
638
  {/snippet}
652
639
  </Tooltip>
653
640
  {:else if shouldShowTooltipOnIcon}
654
- <!-- Text with popup and tooltip on icon -->
655
641
  <div
656
642
  class={labelClasses()}
657
643
  data-component="Text"
@@ -664,7 +650,6 @@
664
650
  >
665
651
  {#if label?.trim() || icon || children}
666
652
  {#if ellipsisOnWidth && (icon || loading)}
667
- <!-- handling ellipsis with icons -->
668
653
  <div
669
654
  class="text-with-icon"
670
655
  style="display: flex; align-items: center; gap: 4px; width: {ellipsisOnWidth}; justify-content: {textAlign ===
@@ -698,7 +683,6 @@
698
683
  </div>
699
684
  </div>
700
685
  {:else}
701
- <!-- Normal text handling -->
702
686
  <div class={textClasses()} style={textStyles()}>
703
687
  {#if icon || loading}
704
688
  {#if loading}
@@ -730,7 +714,6 @@
730
714
  {/if}
731
715
  </div>
732
716
  {:else}
733
- <!-- Text with popup without tooltip -->
734
717
  <div
735
718
  class={labelClasses()}
736
719
  data-component="Text"
@@ -743,7 +726,6 @@
743
726
  >
744
727
  {#if label?.trim() || icon || children}
745
728
  {#if ellipsisOnWidth && (icon || loading)}
746
- <!-- handling ellipsis with icons -->
747
729
  <div
748
730
  class="text-with-icon"
749
731
  style="display: flex; align-items: center; gap: 4px; width: {ellipsisOnWidth}; justify-content: {textAlign ===
@@ -773,7 +755,6 @@
773
755
  </div>
774
756
  </div>
775
757
  {:else}
776
- <!-- Normal text handling -->
777
758
  <div class={textClasses()} style={textStyles()}>
778
759
  {#if icon || loading}
779
760
  {#if loading}
@@ -356,7 +356,6 @@
356
356
  {#if target}
357
357
  {@render target()}
358
358
  {:else}
359
- <!-- Default target for Storybook compatibility -->
360
359
  <button
361
360
  style="
362
361
  padding: 4px 8px;
@@ -411,12 +410,17 @@
411
410
  display: none;
412
411
  top: 0;
413
412
  left: 0;
414
- z-index: 99999999999;
415
413
  border-radius: 4px;
414
+ z-index: 99999999999;
415
+ border-radius: var(--border-radius, 4px);
416
416
  background: var(--background3);
417
417
  box-shadow:
418
- 0px 0.5px 1px 0px #000,
419
- 0px 0.5px 0.5px 0px rgba(255, 255, 255, 0.12) inset;
418
+ 0 12px 24px 8px #0000004d,
419
+ 0 8px 16px 4px #0000004d,
420
+ 0 4px 8px 2px #0000,
421
+ 0 2px 6px #00000014,
422
+ 0 -0.5px 0.5px #0000 inset,
423
+ 0 0.5px 0.5px #ffffff57 inset;
420
424
  color: var(--text2);
421
425
  font-family: Inter;
422
426
  line-height: 120%;
@@ -431,6 +435,7 @@
431
435
  .content-wrapper {
432
436
  flex: 1;
433
437
  min-width: 0;
438
+ border-radius: var(--border-radius, 4px);
434
439
  z-index: 3;
435
440
  background: inherit;
436
441
  }
@@ -0,0 +1,17 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" width="16" height="17" viewBox="0 0 16 17" fill="none">
2
+ <g clip-path="url(#clip0_5665_3736)">
3
+ <path
4
+ d="M12.7839 6.16037V4.88037H8.15991V12.0924H9.79591V9.30037H12.1599V8.06837H9.79591V6.16037H12.7839Z"
5
+ fill="currentColor"
6
+ />
7
+ <path
8
+ d="M3.89982 5.37971V7.52371C3.90035 7.58096 3.88959 7.63776 3.86817 7.69086C3.84674 7.74396 3.81507 7.79232 3.77495 7.83318C3.73484 7.87404 3.68707 7.9066 3.63437 7.92899C3.58167 7.95139 3.52508 7.96318 3.46782 7.96371H3.21582V9.01171H3.46382C3.52108 9.01171 3.57777 9.02298 3.63067 9.0449C3.68357 9.06681 3.73163 9.09892 3.77212 9.13941C3.8126 9.17989 3.84472 9.22796 3.86663 9.28086C3.88854 9.33376 3.89982 9.39045 3.89982 9.44771V11.5677C3.89982 12.6677 4.47982 13.2677 5.53582 13.2677H6.51981V12.0677H5.92382C5.86826 12.0679 5.81299 12.0598 5.75982 12.0437C5.51182 11.9917 5.35982 11.7917 5.35982 11.4437V9.65171C5.35982 9.17171 5.35982 8.69571 4.73582 8.47571C5.35982 8.25171 5.35982 7.69971 5.35982 7.24771V5.49971C5.34084 5.36798 5.37117 5.23389 5.44499 5.12316C5.51881 5.01242 5.63092 4.93285 5.75982 4.89971C5.81592 4.88498 5.87383 4.87824 5.93182 4.87971H6.53181V3.69971H5.53582C4.46782 3.69971 3.89982 4.29971 3.89982 5.37971Z"
9
+ fill="currentColor"
10
+ />
11
+ </g>
12
+ <defs>
13
+ <clipPath id="clip0_5665_3736">
14
+ <rect y="0.5" width="16" height="16" rx="1.33333" fill="currentColor" />
15
+ </clipPath>
16
+ </defs>
17
+ </svg>
@@ -0,0 +1,26 @@
1
+ export default FinsweetLogoOutlineIcon;
2
+ type FinsweetLogoOutlineIcon = SvelteComponent<{
3
+ [x: string]: never;
4
+ }, {
5
+ [evt: string]: CustomEvent<any>;
6
+ }, {}> & {
7
+ $$bindings?: string | undefined;
8
+ };
9
+ declare const FinsweetLogoOutlineIcon: $$__sveltets_2_IsomorphicComponent<{
10
+ [x: string]: never;
11
+ }, {
12
+ [evt: string]: CustomEvent<any>;
13
+ }, {}, {}, string>;
14
+ interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
15
+ new (options: import("svelte").ComponentConstructorOptions<Props>): import("svelte").SvelteComponent<Props, Events, Slots> & {
16
+ $$bindings?: Bindings;
17
+ } & Exports;
18
+ (internal: unknown, props: {
19
+ $$events?: Events;
20
+ $$slots?: Slots;
21
+ }): Exports & {
22
+ $set?: any;
23
+ $on?: any;
24
+ };
25
+ z_$$bindings?: Bindings;
26
+ }
@@ -1,4 +1,3 @@
1
- <!-- TriangleDownIconToggle.svelte -->
2
1
  <script lang="ts">
3
2
  export let rotate = false;
4
3
  </script>
@@ -46,6 +46,7 @@ import FileUploadIcon from './FileUploadIcon.svelte';
46
46
  import FilterIcon from './FilterIcon.svelte';
47
47
  import FinsweetLibraryIcon from './FinsweetLibraryIcon.svelte';
48
48
  import FinsweetLogoIcon from './FinsweetLogoIcon.svelte';
49
+ import FinsweetLogoOutlineIcon from './FinsweetLogoOutlineIcon.svelte';
49
50
  import FolderIcon from './FolderIcon.svelte';
50
51
  import FolderOutlinedIcon from './FolderOutlinedIcon.svelte';
51
52
  import FolderPlusIcon from './FolderPlusIcon.svelte';
@@ -118,4 +119,4 @@ import WizedLogoIcon from './WizedLogoIcon.svelte';
118
119
  import XL from './XL.svelte';
119
120
  import XXL from './XXL.svelte';
120
121
  import XXXL from './XXXL.svelte';
121
- export { AccordionDownArrow, AccordionUpArrow, AccountIcon, ArrowIcon, BackIcon, BodyIcon, BookmarkIcon, BoxAddIcon, BrushIcon, BuilderEditIcon, BuilderIcon, CheckboxCheckedIcon, CheckCircleIcon, CheckCircleOutlinedIcon, CheckIcon, ChevronIcon, ChevronRightIcon, CircleIcon, CloseCircleIcon, CloseIcon, CMSIcon, CodeIcon, ComponentsIcon, CookieIcon, CopyIcon, CrossIcon, DeleteIcon, DeleteOutlinedIcon, Desktop, DesktopWithStar, DivBlock, DOMElement, EditIcon, ExpertIcon, EyeCancelIcon, EyeIcon, FavouriteIcon, FileUploadIcon, FilterIcon, FinsweetLibraryIcon, FinsweetLogoIcon, FolderIcon, FolderOutlinedIcon, FolderPlusIcon, FreeComponentIcon, GlobeIcon, HandPointUpIcon, HeartIcon, HeartIconOutlined, HelpAltIcon, HelpIcon, HomeIcon, InfoIcon, LineChartIcon, ListIcon, LockIcon, MessageIcon, MobileLandscape, MobilePortrait, NavigatorIcon, OpenBookIcon, PageDraftIcon, PageIcon, PageLockedIcon, PageOutlinedIcon, PageSectionIcon, Pencil, PencilOutlinedIcon, PinIcon, PlayIcon, PlusIcon, PreviewEyeIcon, ProfileIcon, PublishCancelIcon, PublishIcon, RefreshIcon, RepairIcon, SaveIcon, SearchIcon, SelectIcon, SettingsIcon, SidebarToggleIcon, SliderAppIcon, SquareCheckIcon, StarIcon, StarOutlinedIcon, StaticContentIcon, SubtractIcon, TableAppIcon, Tablet, TabletPreview, TabNewIcon, TabsIcon, ThreeDotsIcon, TimesIcon, TooltipInfoCircleFilled, ToolTipInfoCircleIcon, TooltipInfoSquaredIcon, TriangleDownIcon, TriangleDownIconToggle, UndoIcon, UploadFileIcon, WarningCircleIcon, WarningCircleOutlineIcon, WarningTriangleIcon, WarningTriangleOutlineIcon, WebflowComponentIcon, WebflowComponentOutlinedIcon, WebflowInsightsIcon, WizedLogoIcon, XL, XXL, XXXL };
122
+ export { AccordionDownArrow, AccordionUpArrow, AccountIcon, ArrowIcon, BackIcon, BodyIcon, BookmarkIcon, BoxAddIcon, BrushIcon, BuilderEditIcon, BuilderIcon, CheckboxCheckedIcon, CheckCircleIcon, CheckCircleOutlinedIcon, CheckIcon, ChevronIcon, ChevronRightIcon, CircleIcon, CloseCircleIcon, CloseIcon, CMSIcon, CodeIcon, ComponentsIcon, CookieIcon, CopyIcon, CrossIcon, DeleteIcon, DeleteOutlinedIcon, Desktop, DesktopWithStar, DivBlock, DOMElement, EditIcon, ExpertIcon, EyeCancelIcon, EyeIcon, FavouriteIcon, FileUploadIcon, FilterIcon, FinsweetLibraryIcon, FinsweetLogoIcon, FinsweetLogoOutlineIcon, FolderIcon, FolderOutlinedIcon, FolderPlusIcon, FreeComponentIcon, GlobeIcon, HandPointUpIcon, HeartIcon, HeartIconOutlined, HelpAltIcon, HelpIcon, HomeIcon, InfoIcon, LineChartIcon, ListIcon, LockIcon, MessageIcon, MobileLandscape, MobilePortrait, NavigatorIcon, OpenBookIcon, PageDraftIcon, PageIcon, PageLockedIcon, PageOutlinedIcon, PageSectionIcon, Pencil, PencilOutlinedIcon, PinIcon, PlayIcon, PlusIcon, PreviewEyeIcon, ProfileIcon, PublishCancelIcon, PublishIcon, RefreshIcon, RepairIcon, SaveIcon, SearchIcon, SelectIcon, SettingsIcon, SidebarToggleIcon, SliderAppIcon, SquareCheckIcon, StarIcon, StarOutlinedIcon, StaticContentIcon, SubtractIcon, TableAppIcon, Tablet, TabletPreview, TabNewIcon, TabsIcon, ThreeDotsIcon, TimesIcon, TooltipInfoCircleFilled, ToolTipInfoCircleIcon, TooltipInfoSquaredIcon, TriangleDownIcon, TriangleDownIconToggle, UndoIcon, UploadFileIcon, WarningCircleIcon, WarningCircleOutlineIcon, WarningTriangleIcon, WarningTriangleOutlineIcon, WebflowComponentIcon, WebflowComponentOutlinedIcon, WebflowInsightsIcon, WizedLogoIcon, XL, XXL, XXXL };
@@ -46,6 +46,7 @@ import FileUploadIcon from './FileUploadIcon.svelte';
46
46
  import FilterIcon from './FilterIcon.svelte';
47
47
  import FinsweetLibraryIcon from './FinsweetLibraryIcon.svelte';
48
48
  import FinsweetLogoIcon from './FinsweetLogoIcon.svelte';
49
+ import FinsweetLogoOutlineIcon from './FinsweetLogoOutlineIcon.svelte';
49
50
  import FolderIcon from './FolderIcon.svelte';
50
51
  import FolderOutlinedIcon from './FolderOutlinedIcon.svelte';
51
52
  import FolderPlusIcon from './FolderPlusIcon.svelte';
@@ -118,4 +119,4 @@ import WizedLogoIcon from './WizedLogoIcon.svelte';
118
119
  import XL from './XL.svelte';
119
120
  import XXL from './XXL.svelte';
120
121
  import XXXL from './XXXL.svelte';
121
- export { AccordionDownArrow, AccordionUpArrow, AccountIcon, ArrowIcon, BackIcon, BodyIcon, BookmarkIcon, BoxAddIcon, BrushIcon, BuilderEditIcon, BuilderIcon, CheckboxCheckedIcon, CheckCircleIcon, CheckCircleOutlinedIcon, CheckIcon, ChevronIcon, ChevronRightIcon, CircleIcon, CloseCircleIcon, CloseIcon, CMSIcon, CodeIcon, ComponentsIcon, CookieIcon, CopyIcon, CrossIcon, DeleteIcon, DeleteOutlinedIcon, Desktop, DesktopWithStar, DivBlock, DOMElement, EditIcon, ExpertIcon, EyeCancelIcon, EyeIcon, FavouriteIcon, FileUploadIcon, FilterIcon, FinsweetLibraryIcon, FinsweetLogoIcon, FolderIcon, FolderOutlinedIcon, FolderPlusIcon, FreeComponentIcon, GlobeIcon, HandPointUpIcon, HeartIcon, HeartIconOutlined, HelpAltIcon, HelpIcon, HomeIcon, InfoIcon, LineChartIcon, ListIcon, LockIcon, MessageIcon, MobileLandscape, MobilePortrait, NavigatorIcon, OpenBookIcon, PageDraftIcon, PageIcon, PageLockedIcon, PageOutlinedIcon, PageSectionIcon, Pencil, PencilOutlinedIcon, PinIcon, PlayIcon, PlusIcon, PreviewEyeIcon, ProfileIcon, PublishCancelIcon, PublishIcon, RefreshIcon, RepairIcon, SaveIcon, SearchIcon, SelectIcon, SettingsIcon, SidebarToggleIcon, SliderAppIcon, SquareCheckIcon, StarIcon, StarOutlinedIcon, StaticContentIcon, SubtractIcon, TableAppIcon, Tablet, TabletPreview, TabNewIcon, TabsIcon, ThreeDotsIcon, TimesIcon, TooltipInfoCircleFilled, ToolTipInfoCircleIcon, TooltipInfoSquaredIcon, TriangleDownIcon, TriangleDownIconToggle, UndoIcon, UploadFileIcon, WarningCircleIcon, WarningCircleOutlineIcon, WarningTriangleIcon, WarningTriangleOutlineIcon, WebflowComponentIcon, WebflowComponentOutlinedIcon, WebflowInsightsIcon, WizedLogoIcon, XL, XXL, XXXL };
122
+ export { AccordionDownArrow, AccordionUpArrow, AccountIcon, ArrowIcon, BackIcon, BodyIcon, BookmarkIcon, BoxAddIcon, BrushIcon, BuilderEditIcon, BuilderIcon, CheckboxCheckedIcon, CheckCircleIcon, CheckCircleOutlinedIcon, CheckIcon, ChevronIcon, ChevronRightIcon, CircleIcon, CloseCircleIcon, CloseIcon, CMSIcon, CodeIcon, ComponentsIcon, CookieIcon, CopyIcon, CrossIcon, DeleteIcon, DeleteOutlinedIcon, Desktop, DesktopWithStar, DivBlock, DOMElement, EditIcon, ExpertIcon, EyeCancelIcon, EyeIcon, FavouriteIcon, FileUploadIcon, FilterIcon, FinsweetLibraryIcon, FinsweetLogoIcon, FinsweetLogoOutlineIcon, FolderIcon, FolderOutlinedIcon, FolderPlusIcon, FreeComponentIcon, GlobeIcon, HandPointUpIcon, HeartIcon, HeartIconOutlined, HelpAltIcon, HelpIcon, HomeIcon, InfoIcon, LineChartIcon, ListIcon, LockIcon, MessageIcon, MobileLandscape, MobilePortrait, NavigatorIcon, OpenBookIcon, PageDraftIcon, PageIcon, PageLockedIcon, PageOutlinedIcon, PageSectionIcon, Pencil, PencilOutlinedIcon, PinIcon, PlayIcon, PlusIcon, PreviewEyeIcon, ProfileIcon, PublishCancelIcon, PublishIcon, RefreshIcon, RepairIcon, SaveIcon, SearchIcon, SelectIcon, SettingsIcon, SidebarToggleIcon, SliderAppIcon, SquareCheckIcon, StarIcon, StarOutlinedIcon, StaticContentIcon, SubtractIcon, TableAppIcon, Tablet, TabletPreview, TabNewIcon, TabsIcon, ThreeDotsIcon, TimesIcon, TooltipInfoCircleFilled, ToolTipInfoCircleIcon, TooltipInfoSquaredIcon, TriangleDownIcon, TriangleDownIconToggle, UndoIcon, UploadFileIcon, WarningCircleIcon, WarningCircleOutlineIcon, WarningTriangleIcon, WarningTriangleOutlineIcon, WebflowComponentIcon, WebflowComponentOutlinedIcon, WebflowInsightsIcon, WizedLogoIcon, XL, XXL, XXXL };
package/dist/ui/index.css CHANGED
@@ -10,7 +10,7 @@
10
10
  --background1: #292929;
11
11
  --black: #000000;
12
12
  --background2: #353535;
13
- --background3: #404040;
13
+ --background3: #383838;
14
14
  --background-background-3: #363636;
15
15
  --background4: #373737;
16
16
  --background5: #404040;
@@ -1,2 +1,6 @@
1
1
  export * from './components';
2
2
  export * from './icons';
3
+ export * from './utils';
4
+ export * from './stores';
5
+ export * from './providers';
6
+ export * from './router';
package/dist/ui/index.js CHANGED
@@ -1,2 +1,6 @@
1
1
  export * from './components';
2
2
  export * from './icons';
3
+ export * from './utils';
4
+ export * from './stores';
5
+ export * from './providers';
6
+ export * from './router';
@@ -34,7 +34,7 @@ The \`GlobalProvider\` is a comprehensive context management system built on Sve
34
34
 
35
35
  \`\`\`svelte
36
36
  <script lang="ts">
37
- import { GlobalProvider } from './';
37
+ import { GlobalProvider } from '../../providers';
38
38
 
39
39
  const initialContexts = {
40
40
  app: {
@@ -66,7 +66,7 @@ The \`GlobalProvider\` automatically creates these default contexts:
66
66
 
67
67
  \`\`\`svelte
68
68
  <script lang="ts">
69
- import { useAppContext, useFormContext, useDataContext } from './';
69
+ import { useAppContext, useFormContext, useDataContext } from '../../providers';
70
70
 
71
71
  const appContext = useAppContext();
72
72
  const formContext = useFormContext();
@@ -141,7 +141,7 @@ The \`GlobalProvider\` includes sophisticated configurator state management with
141
141
 
142
142
  \`\`\`svelte
143
143
  <script lang="ts">
144
- import { useConfiguratorContext, useAppContext } from './';
144
+ import { useConfiguratorContext, useAppContext } from '../../providers';
145
145
 
146
146
  // Define your configurator type
147
147
  type MyConfiguratorType = {
@@ -230,7 +230,7 @@ const config6 = { user: { name: 'John', age: 31 }, settings: { theme: 'dark' } }
230
230
  ### Generic Context Usage
231
231
 
232
232
  \`\`\`typescript
233
- import type { ContextOperations, AppContextData, DataContextData } from './';
233
+ import type { ContextOperations, AppContextData, DataContextData } from '../../providers';
234
234
 
235
235
  // For custom contexts
236
236
  const userContext: ContextOperations<UserType> = useContext<UserType>('user');
@@ -266,7 +266,7 @@ The GlobalProvider system includes several powerful utility functions for advanc
266
266
  For detailed object comparison and change analysis:
267
267
 
268
268
  \`\`\`typescript
269
- import { hasChangesViaDiff, getDetailedDiff, compareKeys } from './';
269
+ import { hasChangesViaDiff, getDetailedDiff, compareKeys } from '../../providers';
270
270
 
271
271
  // Quick change detection
272
272
  const hasChanges = hasChangesViaDiff(oldConfig, newConfig);
@@ -291,7 +291,7 @@ import {
291
291
  validateWatchOptions,
292
292
  extractKeys,
293
293
  createDebouncedUpdate
294
- } from './';
294
+ } from '../../providers';
295
295
 
296
296
  // Create default configurator state
297
297
  const defaultState = createDefaultConfiguratorState<MyConfigType>();
@@ -313,7 +313,7 @@ const debouncedSave = createDebouncedUpdate(saveConfig, 300);
313
313
  ### Performance Optimization Helpers
314
314
 
315
315
  \`\`\`typescript
316
- import { createDebouncedUpdate } from './';
316
+ import { createDebouncedUpdate } from '../../providers';
317
317
 
318
318
  // Create debounced functions for expensive operations
319
319
  const debouncedValidation = createDebouncedUpdate((config) => {
@@ -1,5 +1,5 @@
1
1
  <script lang="ts">
2
- import { getFinsweetComponentsEnvironment } from '../utils/index.js';
2
+ import { getFinsweetComponentsEnvironment } from '../../utils/index.js';
3
3
 
4
4
  import { createGlobalContext, setGlobalContext } from './globalContext.svelte';
5
5
  import type { GlobalProviderProps } from './types';
@@ -57,12 +57,10 @@
57
57
  </div>
58
58
 
59
59
  {#snippet DemoContent()}
60
- <!-- Get contexts and data reactively -->
61
60
  {@const appContext = useAppContext<DemoConfigType>()}
62
61
  {@const formContext = useFormContext()}
63
62
  {@const configuratorContext = useConfiguratorContext<DemoConfigType>()}
64
63
 
65
- <!-- Force reactive updates with trigger -->
66
64
  {#key refreshTrigger}
67
65
  {@const appData = appContext.get()}
68
66
  {@const formData = formContext.get()}
@@ -345,7 +345,7 @@ interface HistoryEntry {
345
345
  ### Complete Application Setup
346
346
 
347
347
  \`\`\`typescript
348
- <!-- App.svelte -->
348
+
349
349
  <script lang="ts">
350
350
  import { onMount } from 'svelte';
351
351
  import { createRouter, RouterProvider, Route, Link } from '@finsweet/webflow-apps-utils';
@@ -379,7 +379,7 @@ interface HistoryEntry {
379
379
  <RouterProvider {router}>
380
380
  {#snippet children({ router, currentRoute, isNavigating })}
381
381
  <div class="app">
382
- <!-- Navigation -->
382
+
383
383
  <nav class="navbar">
384
384
  <div class="nav-brand">
385
385
  <Link to="/">My App</Link>
@@ -391,17 +391,17 @@ interface HistoryEntry {
391
391
  </ul>
392
392
  </nav>
393
393
 
394
- <!-- Loading indicator -->
394
+
395
395
  {#if isNavigating}
396
396
  <div class="loading-bar"></div>
397
397
  {/if}
398
398
 
399
- <!-- Page title -->
399
+
400
400
  <title>{currentRoute?.meta?.title || 'My App'}</title>
401
401
 
402
- <!-- Main content -->
402
+
403
403
  <main class="main-content">
404
- <!-- Routes -->
404
+
405
405
  <Route path="/" component={HomePage} />
406
406
  <Route path="/about" component={AboutPage} />
407
407
  <Route path="/users/:id">
@@ -421,7 +421,7 @@ interface HistoryEntry {
421
421
  ### Using Hooks in Components
422
422
 
423
423
  \`\`\`typescript
424
- <!-- UserProfile.svelte -->
424
+
425
425
  <script lang="ts">
426
426
  import { useParams, useNavigate, useSearchParams } from '@finsweet/webflow-apps-utils';
427
427