Skip to content

Commit 8729d43

Browse files
fix: set side effects to true to avoid removal of bare imports
1 parent 671de53 commit 8729d43

3 files changed

Lines changed: 13 additions & 3 deletions

File tree

src/components/editor/ui/slash-menu/slash-menu-empty.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
import 'prosekit/lit/autocomplete'
1+
import { AutocompleteEmpty } from 'prosekit/lit/autocomplete'
2+
if (!customElements.get('prosekit-autocomplete-empty')) customElements.define('prosekit-autocomplete-empty', AutocompleteEmpty)
23

34
import { html, LitElement } from 'lit'
45

src/components/editor/ui/slash-menu/slash-menu-item.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
import 'prosekit/lit/autocomplete'
1+
import { AutocompleteItem } from 'prosekit/lit/autocomplete'
2+
if (!customElements.get('prosekit-autocomplete-item')) customElements.define('prosekit-autocomplete-item', AutocompleteItem)
23

34
import { html, LitElement } from 'lit'
45

src/components/editor/ui/slash-menu/slash-menu.js

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,12 @@
1-
import 'prosekit/lit/autocomplete'
1+
import { AutocompleteEmpty, AutocompleteItem, AutocompleteList, AutocompletePopover } from 'prosekit/lit/autocomplete'
2+
3+
// prosekit sets sideEffects:false, causing bare imports to be removed by esbuild in
4+
// production builds. Referencing the constructors forces inclusion of the element
5+
// registration code from @prosekit/web/autocomplete (which sets sideEffects:true).
6+
if (!customElements.get('prosekit-autocomplete-popover')) customElements.define('prosekit-autocomplete-popover', AutocompletePopover)
7+
if (!customElements.get('prosekit-autocomplete-list')) customElements.define('prosekit-autocomplete-list', AutocompleteList)
8+
if (!customElements.get('prosekit-autocomplete-item')) customElements.define('prosekit-autocomplete-item', AutocompleteItem)
9+
if (!customElements.get('prosekit-autocomplete-empty')) customElements.define('prosekit-autocomplete-empty', AutocompleteEmpty)
210

311
import { html, LitElement } from 'lit';
412
import { canUseRegexLookbehind } from 'prosekit/core'

0 commit comments

Comments
 (0)