astro-tractstack 2.0.0-rc.2 → 2.0.0-rc.20
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.
- package/LICENSE +0 -0
- package/README.md +227 -98
- package/astro.d.ts +0 -0
- package/bin/create-tractstack.js +103 -45
- package/dist/index.js +17 -1
- package/package.json +8 -3
- package/templates/artpacks/kCz/captainBreakfast_1080px.webp +0 -0
- package/templates/artpacks/kCz/captainBreakfast_1920px.webp +0 -0
- package/templates/artpacks/kCz/captainBreakfast_600px.webp +0 -0
- package/templates/artpacks/kCz/cleanDrips_1080px.webp +0 -0
- package/templates/artpacks/kCz/cleanDrips_1920px.webp +0 -0
- package/templates/artpacks/kCz/cleanDrips_600px.webp +0 -0
- package/templates/artpacks/kCz/crispwaves_1080px.webp +0 -0
- package/templates/artpacks/kCz/crispwaves_1920px.webp +0 -0
- package/templates/artpacks/kCz/crispwaves_600px.webp +0 -0
- package/templates/artpacks/kCz/dragonSkin_1080px.webp +0 -0
- package/templates/artpacks/kCz/dragonSkin_1920px.webp +0 -0
- package/templates/artpacks/kCz/dragonSkin_600px.webp +0 -0
- package/templates/artpacks/kCz/dragon_1080px.webp +0 -0
- package/templates/artpacks/kCz/dragon_1920px.webp +0 -0
- package/templates/artpacks/kCz/dragon_600px.webp +0 -0
- package/templates/artpacks/kCz/nightcity_1080px.webp +0 -0
- package/templates/artpacks/kCz/nightcity_1920px.webp +0 -0
- package/templates/artpacks/kCz/nightcity_600px.webp +0 -0
- package/templates/artpacks/kCz/pattern1_1080px.webp +0 -0
- package/templates/artpacks/kCz/pattern1_1920px.webp +0 -0
- package/templates/artpacks/kCz/pattern1_600px.webp +0 -0
- package/templates/artpacks/kCz/pattern2_1080px.webp +0 -0
- package/templates/artpacks/kCz/pattern2_1920px.webp +0 -0
- package/templates/artpacks/kCz/pattern2_600px.webp +0 -0
- package/templates/artpacks/kCz/skindrips_1080px.webp +0 -0
- package/templates/artpacks/kCz/skindrips_1920px.webp +0 -0
- package/templates/artpacks/kCz/skindrips_600px.webp +0 -0
- package/templates/artpacks/kCz/slimetime_1080px.webp +0 -0
- package/templates/artpacks/kCz/slimetime_1920px.webp +0 -0
- package/templates/artpacks/kCz/slimetime_600px.webp +0 -0
- package/templates/artpacks/kCz/snake_1080px.webp +0 -0
- package/templates/artpacks/kCz/snake_1920px.webp +0 -0
- package/templates/artpacks/kCz/snake_600px.webp +0 -0
- package/templates/artpacks/kCz/toxicshock_1080px.webp +0 -0
- package/templates/artpacks/kCz/toxicshock_1920px.webp +0 -0
- package/templates/artpacks/kCz/toxicshock_600px.webp +0 -0
- package/templates/artpacks/kCz/tractstack_1080px.webp +0 -0
- package/templates/artpacks/kCz/tractstack_1920px.webp +0 -0
- package/templates/artpacks/kCz/tractstack_600px.webp +0 -0
- package/templates/artpacks/kCz/tripdrips_1080px.webp +0 -0
- package/templates/artpacks/kCz/tripdrips_1920px.webp +0 -0
- package/templates/artpacks/kCz/tripdrips_600px.webp +0 -0
- package/templates/artpacks/kCz/wavedrips_1080px.webp +0 -0
- package/templates/artpacks/kCz/wavedrips_1920px.webp +0 -0
- package/templates/artpacks/kCz/wavedrips_600px.webp +0 -0
- package/templates/artpacks/t8k/beach_1080px.webp +0 -0
- package/templates/artpacks/t8k/beach_1920px.webp +0 -0
- package/templates/artpacks/t8k/beach_600px.webp +0 -0
- package/templates/artpacks/t8k/blast_1080px.webp +0 -0
- package/templates/artpacks/t8k/blast_1920px.webp +0 -0
- package/templates/artpacks/t8k/blast_600px.webp +0 -0
- package/templates/artpacks/t8k/bokeh_1080px.webp +0 -0
- package/templates/artpacks/t8k/bokeh_1920px.webp +0 -0
- package/templates/artpacks/t8k/bokeh_600px.webp +0 -0
- package/templates/artpacks/t8k/cartoon_1080px.webp +0 -0
- package/templates/artpacks/t8k/cartoon_1920px.webp +0 -0
- package/templates/artpacks/t8k/cartoon_600px.webp +0 -0
- package/templates/artpacks/t8k/darkeggshell_1080px.webp +0 -0
- package/templates/artpacks/t8k/darkeggshell_1920px.webp +0 -0
- package/templates/artpacks/t8k/darkeggshell_600px.webp +0 -0
- package/templates/artpacks/t8k/explosion_1080px.webp +0 -0
- package/templates/artpacks/t8k/explosion_1920px.webp +0 -0
- package/templates/artpacks/t8k/explosion_600px.webp +0 -0
- package/templates/artpacks/t8k/floral_1080px.webp +0 -0
- package/templates/artpacks/t8k/floral_1920px.webp +0 -0
- package/templates/artpacks/t8k/floral_600px.webp +0 -0
- package/templates/artpacks/t8k/flower_1080px.webp +0 -0
- package/templates/artpacks/t8k/flower_1920px.webp +0 -0
- package/templates/artpacks/t8k/flower_600px.webp +0 -0
- package/templates/artpacks/t8k/foliage_1080px.webp +0 -0
- package/templates/artpacks/t8k/foliage_1920px.webp +0 -0
- package/templates/artpacks/t8k/foliage_600px.webp +0 -0
- package/templates/artpacks/t8k/mist_1080px.webp +0 -0
- package/templates/artpacks/t8k/mist_1920px.webp +0 -0
- package/templates/artpacks/t8k/mist_600px.webp +0 -0
- package/templates/artpacks/t8k/portal_1080px.webp +0 -0
- package/templates/artpacks/t8k/portal_1920px.webp +0 -0
- package/templates/artpacks/t8k/portal_600px.webp +0 -0
- package/templates/artpacks/t8k/storytime_1080px.webp +0 -0
- package/templates/artpacks/t8k/storytime_1920px.webp +0 -0
- package/templates/artpacks/t8k/storytime_600px.webp +0 -0
- package/templates/artpacks/t8k/tacky_1080px.webp +0 -0
- package/templates/artpacks/t8k/tacky_1920px.webp +0 -0
- package/templates/artpacks/t8k/tacky_600px.webp +0 -0
- package/templates/artpacks/t8k/wallpaper_1080px.webp +0 -0
- package/templates/artpacks/t8k/wallpaper_1920px.webp +0 -0
- package/templates/artpacks/t8k/wallpaper_600px.webp +0 -0
- package/templates/brand/favicon.ico +0 -0
- package/templates/brand/logo.svg +0 -0
- package/templates/brand/og.png +0 -0
- package/templates/brand/oglogo.png +0 -0
- package/templates/brand/static.jpg +0 -0
- package/templates/brand/wordmark.svg +0 -0
- package/templates/css/custom.css +0 -0
- package/templates/css/frontend.css +1 -3519
- package/templates/css/storykeep.css +0 -0
- package/templates/custom/minimal/CodeHook.astro +3 -4
- package/templates/custom/minimal/CustomRoutes.astro +0 -6
- package/templates/custom/with-examples/CodeHook.astro +3 -4
- package/templates/custom/with-examples/CustomHero.astro +0 -0
- package/templates/custom/with-examples/CustomRoutes.astro +0 -4
- package/templates/custom/with-examples/pages/Collections.astro +0 -0
- package/templates/env.example +0 -0
- package/templates/fonts/Inter-Black.woff2 +0 -0
- package/templates/fonts/Inter-Bold.woff2 +0 -0
- package/templates/fonts/Inter-Regular.woff2 +0 -0
- package/templates/gitignore +42 -0
- package/templates/icons/h2.svg +0 -0
- package/templates/icons/h3.svg +0 -0
- package/templates/icons/h4.svg +0 -0
- package/templates/icons/h5.svg +0 -0
- package/templates/icons/image.svg +0 -0
- package/templates/icons/text.svg +0 -0
- package/templates/prettierignore +5 -0
- package/templates/prettierrc +19 -0
- package/templates/socials/codepen.svg +0 -0
- package/templates/socials/discord.svg +0 -0
- package/templates/socials/facebook.svg +0 -0
- package/templates/socials/github.svg +0 -0
- package/templates/socials/instagram.svg +0 -0
- package/templates/socials/linkedin.svg +0 -0
- package/templates/socials/mail.svg +0 -0
- package/templates/socials/rumble.svg +0 -0
- package/templates/socials/tiktok.svg +0 -0
- package/templates/socials/twitch.svg +0 -0
- package/templates/socials/twitter.svg +0 -0
- package/templates/socials/x.svg +0 -0
- package/templates/socials/youtube.svg +0 -0
- package/templates/src/components/Footer.astro +1 -1
- package/templates/src/components/Fragment.astro +0 -0
- package/templates/src/components/Header.astro +55 -52
- package/templates/src/components/Menu.tsx +0 -0
- package/templates/src/components/codehooks/BunnyVideoSetup.tsx +0 -0
- package/templates/src/components/codehooks/BunnyVideoWrapper.astro +0 -0
- package/templates/src/components/codehooks/EpinetDurationSelector.tsx +6 -3
- package/templates/src/components/codehooks/EpinetTableView.tsx +0 -0
- package/templates/src/components/codehooks/EpinetWrapper.tsx +0 -0
- package/templates/src/components/codehooks/FeaturedContent.astro +0 -0
- package/templates/src/components/codehooks/FeaturedContentSetup.tsx +0 -0
- package/templates/src/components/codehooks/ListContent.astro +0 -0
- package/templates/src/components/codehooks/ListContentSetup.tsx +0 -0
- package/templates/src/components/codehooks/SankeyDiagram.tsx +4 -3
- package/templates/src/components/compositor/Compositor.tsx +0 -0
- package/templates/src/components/compositor/Node.tsx +0 -0
- package/templates/src/components/compositor/NodeWithGuid.tsx +0 -0
- package/templates/src/components/compositor/PanelVisibilityWrapper.tsx +25 -11
- package/templates/src/components/compositor/elements/Belief.tsx +0 -0
- package/templates/src/components/compositor/elements/BgImage.tsx +0 -0
- package/templates/src/components/compositor/elements/BgVisualBreak.tsx +0 -0
- package/templates/src/components/compositor/elements/BunnyVideo.tsx +0 -0
- package/templates/src/components/compositor/elements/IdentifyAs.tsx +0 -0
- package/templates/src/components/compositor/elements/PlayButton.tsx +0 -0
- package/templates/src/components/compositor/elements/SignUp.tsx +0 -0
- package/templates/src/components/compositor/elements/Svg.tsx +0 -0
- package/templates/src/components/compositor/elements/ToggleBelief.tsx +0 -0
- package/templates/src/components/compositor/elements/YouTubeWrapper.tsx +0 -0
- package/templates/src/components/compositor/nodes/BgPaneWrapper.tsx +0 -0
- package/templates/src/components/compositor/nodes/GhostInsertBlock.tsx +0 -0
- package/templates/src/components/compositor/nodes/Markdown.tsx +0 -0
- package/templates/src/components/compositor/nodes/Pane.tsx +1 -1
- package/templates/src/components/compositor/nodes/Pane_eraser.tsx +0 -0
- package/templates/src/components/compositor/nodes/Pane_layout.tsx +0 -0
- package/templates/src/components/compositor/nodes/RenderChildren.tsx +0 -0
- package/templates/src/components/compositor/nodes/StoryFragment.tsx +0 -0
- package/templates/src/components/compositor/nodes/TagElement.tsx +0 -0
- package/templates/src/components/compositor/nodes/Widget.tsx +0 -0
- package/templates/src/components/compositor/nodes/tagElements/NodeA.tsx +0 -0
- package/templates/src/components/compositor/nodes/tagElements/NodeA_eraser.tsx +0 -0
- package/templates/src/components/compositor/nodes/tagElements/NodeAnchorComponent.tsx +0 -0
- package/templates/src/components/compositor/nodes/tagElements/NodeBasicTag.tsx +0 -0
- package/templates/src/components/compositor/nodes/tagElements/NodeBasicTag_eraser.tsx +0 -0
- package/templates/src/components/compositor/nodes/tagElements/NodeBasicTag_insert.tsx +0 -0
- package/templates/src/components/compositor/nodes/tagElements/NodeBasicTag_settings.tsx +0 -0
- package/templates/src/components/compositor/nodes/tagElements/NodeButton.tsx +0 -0
- package/templates/src/components/compositor/nodes/tagElements/NodeButton_eraser.tsx +0 -0
- package/templates/src/components/compositor/nodes/tagElements/NodeImg.tsx +0 -0
- package/templates/src/components/compositor/nodes/tagElements/NodeText.tsx +0 -0
- package/templates/src/components/compositor/nodes/tagElements/TabIndicator.tsx +0 -0
- package/templates/src/components/compositor/preview/FeaturedContentPreview.tsx +0 -0
- package/templates/src/components/compositor/preview/ListContentPreview.tsx +0 -0
- package/templates/src/components/compositor/preview/OgImagePreview.tsx +0 -0
- package/templates/src/components/compositor/preview/PaneSnapshotGenerator.tsx +0 -0
- package/templates/src/components/compositor/preview/PanesPreviewGenerator.tsx +0 -0
- package/templates/src/components/compositor/preview/VisualBreakPreview.tsx +0 -0
- package/templates/src/components/edit/Header.tsx +0 -0
- package/templates/src/components/edit/PanelSwitch.tsx +4 -8
- package/templates/src/components/edit/SettingsPanel.tsx +4 -1
- package/templates/src/components/edit/ToolBar.tsx +0 -0
- package/templates/src/components/edit/ToolMode.tsx +0 -0
- package/templates/src/components/edit/context/ContextPaneConfig.tsx +0 -0
- package/templates/src/components/edit/context/ContextPaneConfig_slug.tsx +0 -0
- package/templates/src/components/edit/context/ContextPaneConfig_title.tsx +0 -0
- package/templates/src/components/edit/pane/AddPanePanel.tsx +0 -0
- package/templates/src/components/edit/pane/AddPanePanel_break.tsx +0 -0
- package/templates/src/components/edit/pane/AddPanePanel_codehook.tsx +2 -1
- package/templates/src/components/edit/pane/AddPanePanel_new.tsx +1 -1
- package/templates/src/components/edit/pane/AddPanePanel_newAICopy.tsx +0 -0
- package/templates/src/components/edit/pane/AddPanePanel_newAICopy_modal.tsx +1 -1
- package/templates/src/components/edit/pane/AddPanePanel_newCopyMode.tsx +0 -0
- package/templates/src/components/edit/pane/AddPanePanel_newCustomCopy.tsx +0 -0
- package/templates/src/components/edit/pane/AddPanePanel_reuse.tsx +0 -0
- package/templates/src/components/edit/pane/ConfigPanePanel.tsx +1 -0
- package/templates/src/components/edit/pane/PageGen.tsx +0 -0
- package/templates/src/components/edit/pane/PageGenSelector.tsx +0 -0
- package/templates/src/components/edit/pane/PageGenSpecial.tsx +0 -0
- package/templates/src/components/edit/pane/PageGen_preview.tsx +0 -0
- package/templates/src/components/edit/pane/PanePanel_impression.tsx +0 -0
- package/templates/src/components/edit/pane/PanePanel_path.tsx +2 -2
- package/templates/src/components/edit/pane/PanePanel_slug.tsx +0 -0
- package/templates/src/components/edit/pane/PanePanel_title.tsx +0 -0
- package/templates/src/components/edit/panels/StyleBreakPanel.tsx +0 -0
- package/templates/src/components/edit/panels/StyleCodeHookPanel.tsx +0 -0
- package/templates/src/components/edit/panels/StyleElementPanel.tsx +0 -0
- package/templates/src/components/edit/panels/StyleElementPanel_add.tsx +1 -1
- package/templates/src/components/edit/panels/StyleElementPanel_remove.tsx +0 -0
- package/templates/src/components/edit/panels/StyleElementPanel_update.tsx +0 -0
- package/templates/src/components/edit/panels/StyleImagePanel.tsx +0 -0
- package/templates/src/components/edit/panels/StyleImagePanel_add.tsx +1 -1
- package/templates/src/components/edit/panels/StyleImagePanel_remove.tsx +0 -0
- package/templates/src/components/edit/panels/StyleImagePanel_update.tsx +0 -0
- package/templates/src/components/edit/panels/StyleLiElementPanel.tsx +0 -0
- package/templates/src/components/edit/panels/StyleLiElementPanel_add.tsx +1 -1
- package/templates/src/components/edit/panels/StyleLiElementPanel_remove.tsx +0 -0
- package/templates/src/components/edit/panels/StyleLiElementPanel_update.tsx +0 -0
- package/templates/src/components/edit/panels/StyleLinkPanel.tsx +0 -0
- package/templates/src/components/edit/panels/StyleLinkPanel_add.tsx +1 -1
- package/templates/src/components/edit/panels/StyleLinkPanel_config.tsx +1 -1
- package/templates/src/components/edit/panels/StyleLinkPanel_remove.tsx +0 -0
- package/templates/src/components/edit/panels/StyleLinkPanel_update.tsx +0 -0
- package/templates/src/components/edit/panels/StyleParentPanel.tsx +0 -0
- package/templates/src/components/edit/panels/StyleParentPanel_add.tsx +1 -1
- package/templates/src/components/edit/panels/StyleParentPanel_deleteLayer.tsx +0 -0
- package/templates/src/components/edit/panels/StyleParentPanel_remove.tsx +0 -0
- package/templates/src/components/edit/panels/StyleParentPanel_update.tsx +0 -0
- package/templates/src/components/edit/panels/StyleWidgetPanel.tsx +2 -0
- package/templates/src/components/edit/panels/StyleWidgetPanel_add.tsx +1 -1
- package/templates/src/components/edit/panels/StyleWidgetPanel_config.tsx +0 -0
- package/templates/src/components/edit/panels/StyleWidgetPanel_remove.tsx +0 -0
- package/templates/src/components/edit/panels/StyleWidgetPanel_update.tsx +0 -0
- package/templates/src/components/edit/state/SaveModal.tsx +43 -49
- package/templates/src/components/edit/state/StylesMemory.tsx +0 -0
- package/templates/src/components/edit/storyfragment/StoryFragmentConfigPanel.tsx +0 -0
- package/templates/src/components/edit/storyfragment/StoryFragmentPanel_menu.tsx +0 -0
- package/templates/src/components/edit/storyfragment/StoryFragmentPanel_og.tsx +0 -0
- package/templates/src/components/edit/storyfragment/StoryFragmentPanel_slug.tsx +0 -0
- package/templates/src/components/edit/storyfragment/StoryFragmentPanel_title.tsx +0 -0
- package/templates/src/components/edit/widgets/BeliefWidget.tsx +0 -0
- package/templates/src/components/edit/widgets/BunnyWidget.tsx +0 -0
- package/templates/src/components/edit/widgets/IdentifyAsWidget.tsx +0 -0
- package/templates/src/components/edit/widgets/SignupWidget.tsx +0 -0
- package/templates/src/components/edit/widgets/ToggleWidget.tsx +0 -0
- package/templates/src/components/edit/widgets/YouTubeWidget.tsx +0 -0
- package/templates/src/components/fields/ActionBuilderTimeSelector.tsx +0 -0
- package/templates/src/components/fields/ArtpackImage.tsx +0 -0
- package/templates/src/components/fields/BackgroundImage.tsx +0 -0
- package/templates/src/components/fields/BackgroundImageWrapper.tsx +1 -1
- package/templates/src/components/fields/BooleanParam.tsx +0 -0
- package/templates/src/components/fields/BunnyMomentSelector.tsx +0 -0
- package/templates/src/components/fields/ColorPickerCombo.tsx +0 -0
- package/templates/src/components/fields/ImageUpload.tsx +0 -0
- package/templates/src/components/fields/MultiParam.tsx +0 -0
- package/templates/src/components/fields/PaneBreakCollectionSelector.tsx +0 -0
- package/templates/src/components/fields/PaneBreakShapeSelector.tsx +0 -0
- package/templates/src/components/fields/SelectedTailwindClass.tsx +0 -0
- package/templates/src/components/fields/SingleParam.tsx +0 -0
- package/templates/src/components/fields/ViewportComboBox.tsx +10 -3
- package/templates/src/components/form/ActionBuilderField.tsx +0 -0
- package/templates/src/components/form/ActionBuilderSlugSelector.tsx +0 -0
- package/templates/src/components/form/BooleanToggle.tsx +0 -0
- package/templates/src/components/form/ColorPicker.tsx +0 -0
- package/templates/src/components/form/DateTimeInput.tsx +0 -0
- package/templates/src/components/form/EnumSelect.tsx +0 -0
- package/templates/src/components/form/FileUpload.tsx +0 -0
- package/templates/src/components/form/MagicPathBuilder.tsx +0 -0
- package/templates/src/components/form/NumberInput.tsx +0 -0
- package/templates/src/components/form/ParagraphArrayInput.tsx +0 -0
- package/templates/src/components/form/StringArrayInput.tsx +0 -0
- package/templates/src/components/form/StringInput.tsx +0 -0
- package/templates/src/components/form/UnsavedChangesBar.tsx +0 -0
- package/templates/src/components/form/advanced/APIConfigSection.tsx +0 -0
- package/templates/src/components/form/advanced/AuthConfigSection.tsx +0 -0
- package/templates/src/components/form/brand/BrandAssetsSection.tsx +0 -0
- package/templates/src/components/form/brand/BrandColorsSection.tsx +0 -0
- package/templates/src/components/form/brand/SEOSection.tsx +0 -0
- package/templates/src/components/form/brand/SiteConfigSection.tsx +0 -0
- package/templates/src/components/form/brand/SocialLinksSection.tsx +0 -0
- package/templates/src/components/profile/ProfileConsent.tsx +0 -0
- package/templates/src/components/profile/ProfileCreate.tsx +0 -0
- package/templates/src/components/profile/ProfileEdit.tsx +0 -0
- package/templates/src/components/profile/ProfileSwitch.tsx +0 -0
- package/templates/src/components/profile/ProfileUnlock.tsx +0 -0
- package/templates/src/components/storykeep/Dashboard.tsx +0 -0
- package/templates/src/components/storykeep/Dashboard_Activity.tsx +0 -0
- package/templates/src/components/storykeep/Dashboard_Advanced.tsx +1 -1
- package/templates/src/components/storykeep/Dashboard_Analytics.tsx +30 -7
- package/templates/src/components/storykeep/Dashboard_Branding.tsx +0 -0
- package/templates/src/components/storykeep/Dashboard_Content.tsx +6 -0
- package/templates/src/components/storykeep/controls/UsageCell.tsx +0 -0
- package/templates/src/components/storykeep/controls/content/BeliefForm.tsx +0 -0
- package/templates/src/components/storykeep/controls/content/BeliefTable.tsx +0 -0
- package/templates/src/components/storykeep/controls/content/ContentBrowser.tsx +0 -0
- package/templates/src/components/storykeep/controls/content/ContentSummary.tsx +0 -0
- package/templates/src/components/storykeep/controls/content/KnownResourceForm.tsx +0 -0
- package/templates/src/components/storykeep/controls/content/KnownResourceTable.tsx +0 -0
- package/templates/src/components/storykeep/controls/content/ManageContent.tsx +0 -0
- package/templates/src/components/storykeep/controls/content/MenuForm.tsx +0 -0
- package/templates/src/components/storykeep/controls/content/MenuTable.tsx +0 -0
- package/templates/src/components/storykeep/controls/content/ResourceBulkIngest.tsx +0 -0
- package/templates/src/components/storykeep/controls/content/ResourceForm.tsx +0 -0
- package/templates/src/components/storykeep/controls/content/ResourceTable.tsx +0 -0
- package/templates/src/components/storykeep/controls/content/StoryFragmentTable.tsx +0 -0
- package/templates/src/components/storykeep/state/BrandingWrapper.tsx +0 -0
- package/templates/src/components/storykeep/state/FetchAnalytics.tsx +0 -0
- package/templates/src/components/storykeep/widgets/ResponsiveLine.tsx +0 -0
- package/templates/src/components/storykeep/widgets/Wizard.tsx +13 -6
- package/templates/src/components/tenant/RegistrationForm.tsx +5 -3
- package/templates/src/components/widgets/BunnyVideoHero.astro +0 -0
- package/templates/src/components/widgets/Impression.tsx +0 -0
- package/templates/src/components/widgets/ImpressionWrapper.tsx +0 -0
- package/templates/src/constants/beliefs.ts +0 -0
- package/templates/src/constants/brandThemes.ts +0 -0
- package/templates/src/constants/prompts.json +0 -0
- package/templates/src/constants/shapes.ts +0 -0
- package/templates/src/constants/stopWords.ts +0 -0
- package/templates/src/constants/tailwindColors.json +0 -0
- package/templates/src/constants.ts +0 -0
- package/templates/src/hooks/useFormState.ts +0 -0
- package/templates/src/layouts/Layout.astro +120 -11
- package/templates/src/lib/session.ts +0 -0
- package/templates/src/lib/storyData.ts +2 -1
- package/templates/src/middleware.ts +0 -0
- package/templates/src/pages/404.astro +0 -0
- package/templates/src/pages/[...slug]/edit.astro +9 -3
- package/templates/src/pages/[...slug].astro +3 -1
- package/templates/src/pages/api/auth/decode.ts +0 -0
- package/templates/src/pages/api/auth/login.ts +0 -0
- package/templates/src/pages/api/auth/logout.ts +0 -0
- package/templates/src/pages/api/auth/profile.ts +0 -0
- package/templates/src/pages/api/orphan-analysis.ts +0 -0
- package/templates/src/pages/api/tailwind.ts +10 -1
- package/templates/src/pages/collections/[param1].astro +0 -0
- package/templates/src/pages/context/[...contextSlug]/edit.astro +8 -2
- package/templates/src/pages/context/[...contextSlug].astro +7 -2
- package/templates/src/pages/llms.txt.ts +0 -0
- package/templates/src/pages/maint.astro +0 -0
- package/templates/src/pages/media/[...slug].astro +0 -0
- package/templates/src/pages/robots.txt.ts +0 -0
- package/templates/src/pages/sandbox/activate.astro +0 -0
- package/templates/src/pages/sandbox/register.astro +0 -0
- package/templates/src/pages/sandbox/success.astro +0 -0
- package/templates/src/pages/sitemap.xml.ts +0 -0
- package/templates/src/pages/storykeep/advanced.astro +1 -1
- package/templates/src/pages/storykeep/branding.astro +1 -1
- package/templates/src/pages/storykeep/content.astro +1 -1
- package/templates/src/pages/storykeep/init.astro +40 -1
- package/templates/src/pages/storykeep/login.astro +0 -0
- package/templates/src/pages/storykeep/logout.astro +0 -0
- package/templates/src/pages/storykeep/profile.astro +0 -0
- package/templates/src/pages/storykeep.astro +1 -1
- package/templates/src/stores/analytics.ts +0 -0
- package/templates/src/stores/backend.ts +0 -0
- package/templates/src/stores/navigation.ts +0 -0
- package/templates/src/stores/nodes.ts +32 -1
- package/templates/src/stores/nodesHistory.ts +0 -0
- package/templates/src/stores/notificationSystem.ts +0 -0
- package/templates/src/stores/orphanAnalysis.ts +0 -0
- package/templates/src/stores/storykeep.ts +5 -0
- package/templates/src/types/astro.ts +0 -0
- package/templates/src/types/compositorTypes.ts +0 -0
- package/templates/src/types/formTypes.ts +0 -0
- package/templates/src/types/multiTenant.ts +0 -0
- package/templates/src/types/nodeProps.ts +0 -0
- package/templates/src/types/tractstack.ts +0 -0
- package/templates/src/utils/aai/getTitleSlug.ts +0 -0
- package/templates/src/utils/actions/actionButton.ts +0 -0
- package/templates/src/utils/actions/lispLexer.ts +0 -0
- package/templates/src/utils/actions/preParse_Action.ts +0 -0
- package/templates/src/utils/actions/preParse_Bunny.ts +0 -0
- package/templates/src/utils/actions/preParse_Clicked.ts +0 -0
- package/templates/src/utils/actions/preParse_Impression.ts +0 -0
- package/templates/src/utils/api/advancedConfig.ts +0 -0
- package/templates/src/utils/api/advancedHelpers.ts +0 -0
- package/templates/src/utils/api/beliefConfig.ts +0 -0
- package/templates/src/utils/api/beliefHelpers.ts +0 -0
- package/templates/src/utils/api/brandConfig.ts +0 -0
- package/templates/src/utils/api/brandHelpers.ts +0 -0
- package/templates/src/utils/api/fileHelpers.ts +0 -0
- package/templates/src/utils/api/menuConfig.ts +0 -0
- package/templates/src/utils/api/menuHelpers.ts +0 -0
- package/templates/src/utils/api/resourceConfig.ts +0 -0
- package/templates/src/utils/api/resourceHelpers.ts +0 -0
- package/templates/src/utils/api/tenantConfig.ts +0 -0
- package/templates/src/utils/api/tenantHelpers.ts +0 -0
- package/templates/src/utils/api.ts +0 -0
- package/templates/src/utils/auth.ts +0 -0
- package/templates/src/utils/backend.ts +0 -0
- package/templates/src/utils/compositor/TemplateMarkdowns.ts +0 -0
- package/templates/src/utils/compositor/TemplateNodes.ts +0 -0
- package/templates/src/utils/compositor/TemplatePanes.ts +0 -0
- package/templates/src/utils/compositor/allowInsert.ts +0 -0
- package/templates/src/utils/compositor/domHelpers.ts +0 -0
- package/templates/src/utils/compositor/handleClickEvent.ts +0 -0
- package/templates/src/utils/compositor/nodesHelper.ts +0 -0
- package/templates/src/utils/compositor/nodesMarkdownGenerator.ts +0 -0
- package/templates/src/utils/compositor/processMarkdown.ts +0 -0
- package/templates/src/utils/compositor/reduceNodesClassNames.ts +0 -0
- package/templates/src/utils/compositor/tailwindClasses.ts +0 -0
- package/templates/src/utils/compositor/tailwindColors.ts +0 -0
- package/templates/src/utils/compositor/templateMarkdownStyles.ts +8 -0
- package/templates/src/utils/compositor/typeGuards.ts +0 -0
- package/templates/src/utils/etl/extractor.ts +0 -0
- package/templates/src/utils/etl/index.ts +0 -0
- package/templates/src/utils/etl/loader.ts +0 -0
- package/templates/src/utils/etl/transformer.ts +0 -0
- package/templates/src/utils/helpers.ts +1 -0
- package/templates/src/utils/layout.ts +6 -6
- package/templates/src/utils/profileStorage.ts +0 -0
- package/templates/src/utils/useInterval.ts +0 -0
- package/templates/tailwind.config.cjs +0 -0
- package/utils/create-resolver.ts +0 -0
- package/utils/inject-files.ts +17 -1
- package/utils/validate-config.ts +0 -0
|
File without changes
|
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
---
|
|
2
|
-
// CodeHook Dispatcher - Minimal Version
|
|
3
|
-
// Framework components are always available, custom components are commented for guidance
|
|
4
|
-
|
|
5
2
|
import FeaturedContent from '@/components/codehooks/FeaturedContent.astro';
|
|
6
3
|
import ListContent from '@/components/codehooks/ListContent.astro';
|
|
7
4
|
import BunnyVideoWrapper from '@/components/codehooks/BunnyVideoWrapper.astro';
|
|
8
5
|
import EpinetWrapper from '@/components/codehooks/EpinetWrapper';
|
|
9
6
|
import type { FullContentMapItem } from '@/types/tractstack';
|
|
7
|
+
import type { ResourceNode } from '@/types/compositorTypes';
|
|
10
8
|
// import CustomHero from './CustomHero.astro'; // Uncomment to add custom components
|
|
11
9
|
|
|
12
10
|
export interface Props {
|
|
13
11
|
target: string;
|
|
14
12
|
fullContentMap: FullContentMapItem[];
|
|
13
|
+
resourcesPayload?: Record<string, ResourceNode[]>;
|
|
15
14
|
options?: {
|
|
16
15
|
params?: {
|
|
17
16
|
options?: string;
|
|
@@ -19,7 +18,7 @@ export interface Props {
|
|
|
19
18
|
};
|
|
20
19
|
}
|
|
21
20
|
|
|
22
|
-
const { target, options, fullContentMap } = Astro.props;
|
|
21
|
+
const { target, options, fullContentMap /*, resourcesPayload */ } = Astro.props;
|
|
23
22
|
|
|
24
23
|
export const components = {
|
|
25
24
|
'featured-content': true,
|
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
---
|
|
2
|
-
// V2 Custom Routes - Minimal Version
|
|
3
|
-
// This is a stub - implement your custom routes here
|
|
4
|
-
|
|
5
2
|
export interface Props {
|
|
6
3
|
route: string;
|
|
7
4
|
slug: string;
|
|
@@ -15,9 +12,6 @@ const { route, slug, resources } = Astro.props;
|
|
|
15
12
|
export const routes = {
|
|
16
13
|
// collections: true, // Uncomment to enable collections route
|
|
17
14
|
};
|
|
18
|
-
|
|
19
|
-
// Example implementation for collections:
|
|
20
|
-
// const payload = resources; // V2 resources are already filtered by backend
|
|
21
15
|
---
|
|
22
16
|
|
|
23
17
|
{
|
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
---
|
|
2
|
-
// V2 CodeHook Dispatcher - With Examples
|
|
3
|
-
// Framework components and custom examples are available
|
|
4
|
-
|
|
5
2
|
import CustomHero from './CustomHero.astro';
|
|
6
3
|
import FeaturedContent from '@/components/codehooks/FeaturedContent.astro';
|
|
7
4
|
import ListContent from '@/components/codehooks/ListContent.astro';
|
|
8
5
|
import BunnyVideoWrapper from '@/components/codehooks/BunnyVideoWrapper.astro';
|
|
9
6
|
import EpinetWrapper from '@/components/codehooks/EpinetWrapper';
|
|
10
7
|
import type { FullContentMapItem } from '@/types/tractstack';
|
|
8
|
+
import type { ResourceNode } from '@/types/compositorTypes';
|
|
11
9
|
|
|
12
10
|
export interface Props {
|
|
13
11
|
target: string;
|
|
14
12
|
fullContentMap: FullContentMapItem[];
|
|
13
|
+
resourcesPayload?: Record<string, ResourceNode[]>;
|
|
15
14
|
options?: {
|
|
16
15
|
params?: {
|
|
17
16
|
options?: string;
|
|
@@ -19,7 +18,7 @@ export interface Props {
|
|
|
19
18
|
};
|
|
20
19
|
}
|
|
21
20
|
|
|
22
|
-
const { target, options, fullContentMap } = Astro.props;
|
|
21
|
+
const { target, options, fullContentMap /*, resourcesPayload */ } = Astro.props;
|
|
23
22
|
|
|
24
23
|
export const components = {
|
|
25
24
|
'custom-hero': true,
|
|
File without changes
|
|
@@ -1,7 +1,4 @@
|
|
|
1
1
|
---
|
|
2
|
-
// V2 Custom Routes - With Examples
|
|
3
|
-
// Full Collections implementation included
|
|
4
|
-
|
|
5
2
|
import Collections from './pages/Collections.astro';
|
|
6
3
|
|
|
7
4
|
export interface Props {
|
|
@@ -17,7 +14,6 @@ export const routes = {
|
|
|
17
14
|
collections: true,
|
|
18
15
|
};
|
|
19
16
|
|
|
20
|
-
// V2: Resources are already filtered by backend, no client-side extraction needed
|
|
21
17
|
const payload = resources;
|
|
22
18
|
---
|
|
23
19
|
|
|
File without changes
|
package/templates/env.example
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Build output
|
|
2
|
+
dist/
|
|
3
|
+
*.tgz
|
|
4
|
+
#*.d.ts
|
|
5
|
+
|
|
6
|
+
# Dependencies
|
|
7
|
+
node_modules/
|
|
8
|
+
|
|
9
|
+
# Environment
|
|
10
|
+
.env
|
|
11
|
+
.env.local
|
|
12
|
+
.env.*.local
|
|
13
|
+
|
|
14
|
+
# IDE
|
|
15
|
+
.vscode/
|
|
16
|
+
.idea/
|
|
17
|
+
*.swp
|
|
18
|
+
*.swo
|
|
19
|
+
|
|
20
|
+
# OS
|
|
21
|
+
.DS_Store
|
|
22
|
+
Thumbs.db
|
|
23
|
+
|
|
24
|
+
# Logs
|
|
25
|
+
*.log
|
|
26
|
+
npm-debug.log*
|
|
27
|
+
yarn-debug.log*
|
|
28
|
+
yarn-error.log*
|
|
29
|
+
pnpm-debug.log*
|
|
30
|
+
|
|
31
|
+
# Runtime data
|
|
32
|
+
pids
|
|
33
|
+
*.pid
|
|
34
|
+
*.seed
|
|
35
|
+
*.pid.lock
|
|
36
|
+
|
|
37
|
+
# Coverage directory used by tools like istanbul
|
|
38
|
+
coverage/
|
|
39
|
+
|
|
40
|
+
# Temporary folders
|
|
41
|
+
tmp/
|
|
42
|
+
temp/
|
package/templates/icons/h2.svg
CHANGED
|
File without changes
|
package/templates/icons/h3.svg
CHANGED
|
File without changes
|
package/templates/icons/h4.svg
CHANGED
|
File without changes
|
package/templates/icons/h5.svg
CHANGED
|
File without changes
|
|
File without changes
|
package/templates/icons/text.svg
CHANGED
|
File without changes
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"semi": true,
|
|
3
|
+
"singleQuote": true,
|
|
4
|
+
"tabWidth": 2,
|
|
5
|
+
"trailingComma": "es5",
|
|
6
|
+
"printWidth": 80,
|
|
7
|
+
"plugins": [
|
|
8
|
+
"prettier-plugin-astro",
|
|
9
|
+
"prettier-plugin-tailwindcss"
|
|
10
|
+
],
|
|
11
|
+
"overrides": [
|
|
12
|
+
{
|
|
13
|
+
"files": "*.astro",
|
|
14
|
+
"options": {
|
|
15
|
+
"parser": "astro"
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
]
|
|
19
|
+
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/templates/socials/x.svg
CHANGED
|
File without changes
|
|
File without changes
|
|
@@ -176,7 +176,7 @@ const createdDate = created ? new Date(created) : new Date();
|
|
|
176
176
|
>
|
|
177
177
|
Tract Stack</a
|
|
178
178
|
>
|
|
179
|
-
–
|
|
179
|
+
– the “free web press” by{` `}
|
|
180
180
|
<a
|
|
181
181
|
href="https://atriskmedia.com/?utm_source=tractstack&utm_medium=www&utm_campaign=community"
|
|
182
182
|
class="font-bold underline hover:text-black"
|
|
File without changes
|
|
@@ -160,12 +160,13 @@ const authStatus = {
|
|
|
160
160
|
|
|
161
161
|
{/* Edit Icon */}
|
|
162
162
|
{
|
|
163
|
-
isEditable
|
|
163
|
+
isEditable &&
|
|
164
|
+
(authStatus.isAdmin || authStatus.userRole === 'editor') ? (
|
|
164
165
|
<a
|
|
165
166
|
data-astro-reload
|
|
166
167
|
href={!isContext ? `/${slug}/edit` : `/context/${slug}/edit`}
|
|
167
168
|
class="text-myblue/80 hover:text-myblue hover:rotate-6"
|
|
168
|
-
title={!isContext ? 'Edit this story' : 'Edit this
|
|
169
|
+
title={!isContext ? 'Edit this story' : 'Edit this page'}
|
|
169
170
|
>
|
|
170
171
|
<svg
|
|
171
172
|
class="h-6 w-6"
|
|
@@ -335,7 +336,13 @@ const authStatus = {
|
|
|
335
336
|
}
|
|
336
337
|
|
|
337
338
|
<script>
|
|
338
|
-
document.
|
|
339
|
+
if (document.readyState === 'loading') {
|
|
340
|
+
document.addEventListener('DOMContentLoaded', setupAdminModal);
|
|
341
|
+
} else {
|
|
342
|
+
setupAdminModal();
|
|
343
|
+
}
|
|
344
|
+
|
|
345
|
+
function setupAdminModal() {
|
|
339
346
|
const logoutBtn = document.getElementById(
|
|
340
347
|
'logout-btn'
|
|
341
348
|
) as HTMLButtonElement | null;
|
|
@@ -394,65 +401,61 @@ const authStatus = {
|
|
|
394
401
|
});
|
|
395
402
|
}
|
|
396
403
|
|
|
397
|
-
// Admin Modal JavaScript -
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
const closeBtn = document.getElementById('admin-modal-close');
|
|
401
|
-
const iframe = document.getElementById('admin-sysop-iframe');
|
|
402
|
-
|
|
403
|
-
if (heartBtn && modal && closeBtn && iframe) {
|
|
404
|
-
// Open modal when heart icon is clicked
|
|
405
|
-
heartBtn.addEventListener('click', function (e) {
|
|
404
|
+
// Admin Modal JavaScript - Use event delegation
|
|
405
|
+
document.addEventListener('click', function (e) {
|
|
406
|
+
if (e.target && (e.target as Element).closest('#admin-heart-btn')) {
|
|
406
407
|
e.preventDefault();
|
|
407
|
-
modal.
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
408
|
+
const modal = document.getElementById('admin-modal');
|
|
409
|
+
const closeBtn = document.getElementById('admin-modal-close');
|
|
410
|
+
|
|
411
|
+
if (modal && closeBtn) {
|
|
412
|
+
modal.classList.remove('hidden');
|
|
413
|
+
modal.setAttribute('aria-hidden', 'false');
|
|
414
|
+
closeBtn.focus();
|
|
415
|
+
document.body.style.overflow = 'hidden';
|
|
416
|
+
}
|
|
417
|
+
return;
|
|
418
|
+
}
|
|
416
419
|
|
|
417
|
-
|
|
418
|
-
closeBtn.addEventListener('click', function (e) {
|
|
420
|
+
if (e.target && (e.target as Element).closest('#admin-modal-close')) {
|
|
419
421
|
e.preventDefault();
|
|
420
422
|
closeModal();
|
|
421
|
-
|
|
423
|
+
return;
|
|
424
|
+
}
|
|
422
425
|
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
});
|
|
426
|
+
if (e.target && (e.target as Element).id === 'admin-modal') {
|
|
427
|
+
closeModal();
|
|
428
|
+
return;
|
|
429
|
+
}
|
|
430
|
+
});
|
|
429
431
|
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
432
|
+
document.addEventListener('keydown', function (e) {
|
|
433
|
+
if (e.key === 'Escape') {
|
|
434
|
+
const modal = document.getElementById('admin-modal');
|
|
435
|
+
if (modal && !modal.classList.contains('hidden')) {
|
|
433
436
|
closeModal();
|
|
434
437
|
}
|
|
435
|
-
});
|
|
436
|
-
|
|
437
|
-
function closeModal() {
|
|
438
|
-
modal?.classList.add('hidden');
|
|
439
|
-
modal?.setAttribute('aria-hidden', 'true');
|
|
440
|
-
|
|
441
|
-
// Restore body scroll
|
|
442
|
-
document.body.style.overflow = '';
|
|
443
|
-
|
|
444
|
-
// Return focus to heart button for accessibility
|
|
445
|
-
heartBtn?.focus();
|
|
446
438
|
}
|
|
439
|
+
});
|
|
447
440
|
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
//});
|
|
441
|
+
function closeModal() {
|
|
442
|
+
const modal = document.getElementById('admin-modal');
|
|
443
|
+
const heartBtn = document.getElementById('admin-heart-btn');
|
|
452
444
|
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
445
|
+
modal?.classList.add('hidden');
|
|
446
|
+
modal?.setAttribute('aria-hidden', 'true');
|
|
447
|
+
document.body.style.overflow = '';
|
|
448
|
+
heartBtn?.focus();
|
|
456
449
|
}
|
|
457
|
-
|
|
450
|
+
|
|
451
|
+
// iframe error handling
|
|
452
|
+
document.addEventListener('DOMContentLoaded', function () {
|
|
453
|
+
const iframe = document.getElementById('admin-sysop-iframe');
|
|
454
|
+
if (iframe) {
|
|
455
|
+
iframe.addEventListener('error', function () {
|
|
456
|
+
console.error('Failed to load admin panel');
|
|
457
|
+
});
|
|
458
|
+
}
|
|
459
|
+
});
|
|
460
|
+
}
|
|
458
461
|
</script>
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -185,7 +185,7 @@ const EpinetDurationSelector = ({
|
|
|
185
185
|
const startUTCTime = createUTCDateTime(startDate, localFilters.startHour);
|
|
186
186
|
const endUTCTime = createUTCDateTime(endDate, localFilters.endHour);
|
|
187
187
|
|
|
188
|
-
if (endUTCTime
|
|
188
|
+
if (endUTCTime < startUTCTime) {
|
|
189
189
|
setErrorMessage('End time must be after start time.');
|
|
190
190
|
return;
|
|
191
191
|
}
|
|
@@ -549,7 +549,7 @@ const EpinetDurationSelector = ({
|
|
|
549
549
|
|
|
550
550
|
return (
|
|
551
551
|
<>
|
|
552
|
-
<div className="space-y-4">
|
|
552
|
+
<div className="space-y-4 overflow-visible">
|
|
553
553
|
{$epinetCustomFilters.enabled && (
|
|
554
554
|
<div
|
|
555
555
|
className={`space-y-4 rounded-lg border-2 border-dashed border-gray-200 bg-gray-50 p-4`}
|
|
@@ -865,7 +865,10 @@ const EpinetDurationSelector = ({
|
|
|
865
865
|
</Select.Control>
|
|
866
866
|
<Portal>
|
|
867
867
|
<Select.Positioner>
|
|
868
|
-
<Select.Content
|
|
868
|
+
<Select.Content
|
|
869
|
+
className="z-10 mt-2 max-h-96 overflow-auto rounded-md bg-white text-base shadow-lg ring-1 ring-black ring-opacity-5 focus:outline-none"
|
|
870
|
+
style={{ width: 'var(--trigger-width)' }}
|
|
871
|
+
>
|
|
869
872
|
{paginatedUserCounts.length > 0 ? (
|
|
870
873
|
[
|
|
871
874
|
<Select.Item
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -234,9 +234,10 @@ const SankeyDiagram = ({ data, isLoading = false }: SankeyDiagramProps) => {
|
|
|
234
234
|
}
|
|
235
235
|
}, [data, dimensions]);
|
|
236
236
|
|
|
237
|
-
const
|
|
238
|
-
const
|
|
239
|
-
|
|
237
|
+
const needsCompression = !isExpanded && dimensions.height > COMPRESSED_HEIGHT;
|
|
238
|
+
const displayHeight = needsCompression
|
|
239
|
+
? COMPRESSED_HEIGHT
|
|
240
|
+
: dimensions.height;
|
|
240
241
|
|
|
241
242
|
const handleExpand = () => {
|
|
242
243
|
setIsExpanded(!isExpanded);
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -51,26 +51,40 @@ const PanelVisibilityWrapper = ({
|
|
|
51
51
|
const currentWrapper = wrapperRef.current;
|
|
52
52
|
if (!currentWrapper) return;
|
|
53
53
|
|
|
54
|
-
//
|
|
54
|
+
// Skip intersection observer for 'add' panels - they behave differently
|
|
55
|
+
if (panelType === 'add') {
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
|
|
55
59
|
const observer = new IntersectionObserver(
|
|
56
60
|
(entries) => {
|
|
57
|
-
//
|
|
58
|
-
if (
|
|
59
|
-
|
|
61
|
+
// Add delay to prevent immediate closing during panel activation
|
|
62
|
+
if (isActive) {
|
|
63
|
+
setTimeout(() => {
|
|
64
|
+
// Double-check the panel is still active before closing
|
|
65
|
+
const currentActiveMode = nodesCtx.activePaneMode.get();
|
|
66
|
+
const stillActive =
|
|
67
|
+
currentActiveMode.panel === panelType &&
|
|
68
|
+
currentActiveMode.paneId === nodeId;
|
|
69
|
+
if (!entries[0].isIntersecting && stillActive) {
|
|
70
|
+
console.log('❌ CLOSING PANEL DUE TO INTERSECTION OBSERVER!', {
|
|
71
|
+
panelType,
|
|
72
|
+
nodeId,
|
|
73
|
+
});
|
|
74
|
+
nodesCtx.closeAllPanels();
|
|
75
|
+
}
|
|
76
|
+
}, 100); // Small delay to allow panel to render
|
|
60
77
|
}
|
|
61
78
|
},
|
|
62
79
|
{
|
|
63
|
-
threshold: 0.1,
|
|
64
|
-
rootMargin: '-10px',
|
|
80
|
+
threshold: 0.1,
|
|
81
|
+
rootMargin: '-10px',
|
|
65
82
|
}
|
|
66
83
|
);
|
|
67
84
|
|
|
68
85
|
observer.observe(currentWrapper);
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
observer.disconnect();
|
|
72
|
-
};
|
|
73
|
-
}, [nodeId, panelType, nodesCtx, isActive]); // Include isActive in dependencies
|
|
86
|
+
return () => observer.disconnect();
|
|
87
|
+
}, [nodeId, panelType, nodesCtx, isActive]);
|
|
74
88
|
|
|
75
89
|
return (
|
|
76
90
|
<div
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -29,7 +29,7 @@ const CodeHookContainer = ({
|
|
|
29
29
|
value && (
|
|
30
30
|
<div key={key} className="flex items-start">
|
|
31
31
|
<span className="min-w-24 font-bold text-gray-600">{key}:</span>
|
|
32
|
-
<span className="ml-2 text-gray-800">
|
|
32
|
+
<span className="ml-2 truncate text-gray-800">
|
|
33
33
|
{JSON.stringify(value)}
|
|
34
34
|
</span>
|
|
35
35
|
</div>
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|