@snokam/page-content 0.0.0-stage → 6.9.4
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/CHANGELOG.md +1462 -0
- package/dist/admin-form-labels.d.ts +11 -0
- package/dist/admin-form-labels.d.ts.map +1 -0
- package/dist/admin-form-labels.js +21 -0
- package/dist/admin-form-labels.js.map +1 -0
- package/dist/app-router/MetaTags.d.ts +2 -0
- package/dist/app-router/MetaTags.d.ts.map +1 -0
- package/dist/app-router/MetaTags.js +10 -0
- package/dist/app-router/MetaTags.js.map +1 -0
- package/dist/app-router/actions.d.ts +62 -0
- package/dist/app-router/actions.d.ts.map +1 -0
- package/dist/app-router/actions.js +18 -0
- package/dist/app-router/actions.js.map +1 -0
- package/dist/app-router/draft.d.ts +3 -0
- package/dist/app-router/draft.d.ts.map +1 -0
- package/dist/app-router/draft.js +14 -0
- package/dist/app-router/draft.js.map +1 -0
- package/dist/app-router/error-page/TenantErrorPage.d.ts +5 -0
- package/dist/app-router/error-page/TenantErrorPage.d.ts.map +1 -0
- package/dist/app-router/error-page/TenantErrorPage.js +20 -0
- package/dist/app-router/error-page/TenantErrorPage.js.map +1 -0
- package/dist/app-router/error-page/icons.d.ts +8 -0
- package/dist/app-router/error-page/icons.d.ts.map +1 -0
- package/dist/app-router/error-page/icons.js +11 -0
- package/dist/app-router/error-page/icons.js.map +1 -0
- package/dist/app-router/error-page/index.d.ts +3 -0
- package/dist/app-router/error-page/index.d.ts.map +1 -0
- package/dist/app-router/error-page/index.js +3 -0
- package/dist/app-router/error-page/index.js.map +1 -0
- package/dist/app-router/hoc/index.d.ts +5 -0
- package/dist/app-router/hoc/index.d.ts.map +1 -0
- package/dist/app-router/hoc/index.js +5 -0
- package/dist/app-router/hoc/index.js.map +1 -0
- package/dist/app-router/hoc/withSanityAppContent.d.ts +11 -0
- package/dist/app-router/hoc/withSanityAppContent.d.ts.map +1 -0
- package/dist/app-router/hoc/withSanityAppContent.js +31 -0
- package/dist/app-router/hoc/withSanityAppContent.js.map +1 -0
- package/dist/app-router/hoc/withSanityPageContent.d.ts +13 -0
- package/dist/app-router/hoc/withSanityPageContent.d.ts.map +1 -0
- package/dist/app-router/hoc/withSanityPageContent.js +23 -0
- package/dist/app-router/hoc/withSanityPageContent.js.map +1 -0
- package/dist/app-router/index.d.ts +6 -0
- package/dist/app-router/index.d.ts.map +1 -0
- package/dist/app-router/index.js +7 -0
- package/dist/app-router/index.js.map +1 -0
- package/dist/app-router/providers/AppContentProvider.d.ts +13 -0
- package/dist/app-router/providers/AppContentProvider.d.ts.map +1 -0
- package/dist/app-router/providers/AppContentProvider.js +12 -0
- package/dist/app-router/providers/AppContentProvider.js.map +1 -0
- package/dist/app-router/providers/PageContentProvider.d.ts +15 -0
- package/dist/app-router/providers/PageContentProvider.d.ts.map +1 -0
- package/dist/app-router/providers/PageContentProvider.js +12 -0
- package/dist/app-router/providers/PageContentProvider.js.map +1 -0
- package/dist/app-router/providers/index.d.ts +3 -0
- package/dist/app-router/providers/index.d.ts.map +1 -0
- package/dist/app-router/providers/index.js +4 -0
- package/dist/app-router/providers/index.js.map +1 -0
- package/dist/app-router/server.d.ts +12 -0
- package/dist/app-router/server.d.ts.map +1 -0
- package/dist/app-router/server.js +10 -0
- package/dist/app-router/server.js.map +1 -0
- package/dist/app-router/tenant/app-content.d.ts +57 -0
- package/dist/app-router/tenant/app-content.d.ts.map +1 -0
- package/dist/app-router/tenant/app-content.js +5 -0
- package/dist/app-router/tenant/app-content.js.map +1 -0
- package/dist/app-router/tenant/branding.d.ts +12 -0
- package/dist/app-router/tenant/branding.d.ts.map +1 -0
- package/dist/app-router/tenant/branding.js +62 -0
- package/dist/app-router/tenant/branding.js.map +1 -0
- package/dist/app-router/tenant/content.d.ts +16 -0
- package/dist/app-router/tenant/content.d.ts.map +1 -0
- package/dist/app-router/tenant/content.js +44 -0
- package/dist/app-router/tenant/content.js.map +1 -0
- package/dist/app-router/tenant/layout.d.ts +11 -0
- package/dist/app-router/tenant/layout.d.ts.map +1 -0
- package/dist/app-router/tenant/layout.js +17 -0
- package/dist/app-router/tenant/layout.js.map +1 -0
- package/dist/app-router/tenant/metadata.d.ts +9 -0
- package/dist/app-router/tenant/metadata.d.ts.map +1 -0
- package/dist/app-router/tenant/metadata.js +19 -0
- package/dist/app-router/tenant/metadata.js.map +1 -0
- package/dist/app-router/tenant/server-texts.d.ts +7 -0
- package/dist/app-router/tenant/server-texts.d.ts.map +1 -0
- package/dist/app-router/tenant/server-texts.js +25 -0
- package/dist/app-router/tenant/server-texts.js.map +1 -0
- package/dist/app-router/utils.d.ts +3 -0
- package/dist/app-router/utils.d.ts.map +1 -0
- package/dist/app-router/utils.js +11 -0
- package/dist/app-router/utils.js.map +1 -0
- package/dist/app-text.d.ts +3 -0
- package/dist/app-text.d.ts.map +1 -0
- package/dist/app-text.js +14 -0
- package/dist/app-text.js.map +1 -0
- package/dist/component-texts.d.ts +2 -0
- package/dist/component-texts.d.ts.map +1 -0
- package/dist/component-texts.js +14 -0
- package/dist/component-texts.js.map +1 -0
- package/dist/components/ContentEmptyState/index.d.ts +7 -0
- package/dist/components/ContentEmptyState/index.d.ts.map +1 -0
- package/dist/components/ContentEmptyState/index.js +17 -0
- package/dist/components/ContentEmptyState/index.js.map +1 -0
- package/dist/components/ContentEmptyState/styles.d.ts +4 -0
- package/dist/components/ContentEmptyState/styles.d.ts.map +1 -0
- package/dist/components/ContentEmptyState/styles.js +21 -0
- package/dist/components/ContentEmptyState/styles.js.map +1 -0
- package/dist/components/OrganizationSchema.d.ts +7 -0
- package/dist/components/OrganizationSchema.d.ts.map +1 -0
- package/dist/components/OrganizationSchema.js +32 -0
- package/dist/components/OrganizationSchema.js.map +1 -0
- package/dist/data/fetch.d.ts +11 -0
- package/dist/data/fetch.d.ts.map +1 -0
- package/dist/data/fetch.js +29 -0
- package/dist/data/fetch.js.map +1 -0
- package/dist/edit-mode/Drawer.d.ts +12 -0
- package/dist/edit-mode/Drawer.d.ts.map +1 -0
- package/dist/edit-mode/Drawer.js +134 -0
- package/dist/edit-mode/Drawer.js.map +1 -0
- package/dist/edit-mode/EditMode.d.ts +3 -0
- package/dist/edit-mode/EditMode.d.ts.map +1 -0
- package/dist/edit-mode/EditMode.js +41 -0
- package/dist/edit-mode/EditMode.js.map +1 -0
- package/dist/edit-mode/client.d.ts +8 -0
- package/dist/edit-mode/client.d.ts.map +1 -0
- package/dist/edit-mode/client.js +18 -0
- package/dist/edit-mode/client.js.map +1 -0
- package/dist/edit-mode/drawer/MissingSection.d.ts +5 -0
- package/dist/edit-mode/drawer/MissingSection.d.ts.map +1 -0
- package/dist/edit-mode/drawer/MissingSection.js +13 -0
- package/dist/edit-mode/drawer/MissingSection.js.map +1 -0
- package/dist/edit-mode/drawer-helpers.d.ts +5 -0
- package/dist/edit-mode/drawer-helpers.d.ts.map +1 -0
- package/dist/edit-mode/drawer-helpers.js +33 -0
- package/dist/edit-mode/drawer-helpers.js.map +1 -0
- package/dist/edit-mode/editModeState.d.ts +10 -0
- package/dist/edit-mode/editModeState.d.ts.map +1 -0
- package/dist/edit-mode/editModeState.js +65 -0
- package/dist/edit-mode/editModeState.js.map +1 -0
- package/dist/edit-mode/field-styles.d.ts +20 -0
- package/dist/edit-mode/field-styles.d.ts.map +1 -0
- package/dist/edit-mode/field-styles.js +200 -0
- package/dist/edit-mode/field-styles.js.map +1 -0
- package/dist/edit-mode/fields/BlockField.d.ts +5 -0
- package/dist/edit-mode/fields/BlockField.d.ts.map +1 -0
- package/dist/edit-mode/fields/BlockField.js +32 -0
- package/dist/edit-mode/fields/BlockField.js.map +1 -0
- package/dist/edit-mode/fields/FieldEditor.d.ts +5 -0
- package/dist/edit-mode/fields/FieldEditor.d.ts.map +1 -0
- package/dist/edit-mode/fields/FieldEditor.js +39 -0
- package/dist/edit-mode/fields/FieldEditor.js.map +1 -0
- package/dist/edit-mode/fields/GalleryField.d.ts +5 -0
- package/dist/edit-mode/fields/GalleryField.d.ts.map +1 -0
- package/dist/edit-mode/fields/GalleryField.js +41 -0
- package/dist/edit-mode/fields/GalleryField.js.map +1 -0
- package/dist/edit-mode/fields/ImageField.d.ts +5 -0
- package/dist/edit-mode/fields/ImageField.d.ts.map +1 -0
- package/dist/edit-mode/fields/ImageField.js +41 -0
- package/dist/edit-mode/fields/ImageField.js.map +1 -0
- package/dist/edit-mode/fields/LinkField.d.ts +5 -0
- package/dist/edit-mode/fields/LinkField.d.ts.map +1 -0
- package/dist/edit-mode/fields/LinkField.js +25 -0
- package/dist/edit-mode/fields/LinkField.js.map +1 -0
- package/dist/edit-mode/fields/MediaField.d.ts +5 -0
- package/dist/edit-mode/fields/MediaField.d.ts.map +1 -0
- package/dist/edit-mode/fields/MediaField.js +33 -0
- package/dist/edit-mode/fields/MediaField.js.map +1 -0
- package/dist/edit-mode/fields/SurfaceAddItem.d.ts +5 -0
- package/dist/edit-mode/fields/SurfaceAddItem.d.ts.map +1 -0
- package/dist/edit-mode/fields/SurfaceAddItem.js +27 -0
- package/dist/edit-mode/fields/SurfaceAddItem.js.map +1 -0
- package/dist/edit-mode/fields/SurfaceItemControls.d.ts +8 -0
- package/dist/edit-mode/fields/SurfaceItemControls.d.ts.map +1 -0
- package/dist/edit-mode/fields/SurfaceItemControls.js +40 -0
- package/dist/edit-mode/fields/SurfaceItemControls.js.map +1 -0
- package/dist/edit-mode/fields/SurfaceLinkField.d.ts +5 -0
- package/dist/edit-mode/fields/SurfaceLinkField.d.ts.map +1 -0
- package/dist/edit-mode/fields/SurfaceLinkField.js +28 -0
- package/dist/edit-mode/fields/SurfaceLinkField.js.map +1 -0
- package/dist/edit-mode/fields/TextField.d.ts +5 -0
- package/dist/edit-mode/fields/TextField.d.ts.map +1 -0
- package/dist/edit-mode/fields/TextField.js +42 -0
- package/dist/edit-mode/fields/TextField.js.map +1 -0
- package/dist/edit-mode/fields/VideoField.d.ts +5 -0
- package/dist/edit-mode/fields/VideoField.d.ts.map +1 -0
- package/dist/edit-mode/fields/VideoField.js +21 -0
- package/dist/edit-mode/fields/VideoField.js.map +1 -0
- package/dist/edit-mode/fields/VisibilityField.d.ts +5 -0
- package/dist/edit-mode/fields/VisibilityField.d.ts.map +1 -0
- package/dist/edit-mode/fields/VisibilityField.js +26 -0
- package/dist/edit-mode/fields/VisibilityField.js.map +1 -0
- package/dist/edit-mode/fields/YoutubeField.d.ts +5 -0
- package/dist/edit-mode/fields/YoutubeField.d.ts.map +1 -0
- package/dist/edit-mode/fields/YoutubeField.js +21 -0
- package/dist/edit-mode/fields/YoutubeField.js.map +1 -0
- package/dist/edit-mode/fields/shared.d.ts +27 -0
- package/dist/edit-mode/fields/shared.d.ts.map +1 -0
- package/dist/edit-mode/fields/shared.js +55 -0
- package/dist/edit-mode/fields/shared.js.map +1 -0
- package/dist/edit-mode/fields-from-content.d.ts +12 -0
- package/dist/edit-mode/fields-from-content.d.ts.map +1 -0
- package/dist/edit-mode/fields-from-content.js +42 -0
- package/dist/edit-mode/fields-from-content.js.map +1 -0
- package/dist/edit-mode/image-url.d.ts +4 -0
- package/dist/edit-mode/image-url.d.ts.map +1 -0
- package/dist/edit-mode/image-url.js +7 -0
- package/dist/edit-mode/image-url.js.map +1 -0
- package/dist/edit-mode/index.d.ts +4 -0
- package/dist/edit-mode/index.d.ts.map +1 -0
- package/dist/edit-mode/index.js +3 -0
- package/dist/edit-mode/index.js.map +1 -0
- package/dist/edit-mode/missing-keys.d.ts +8 -0
- package/dist/edit-mode/missing-keys.d.ts.map +1 -0
- package/dist/edit-mode/missing-keys.js +33 -0
- package/dist/edit-mode/missing-keys.js.map +1 -0
- package/dist/edit-mode/overlay/InlineBlockEditor.d.ts +9 -0
- package/dist/edit-mode/overlay/InlineBlockEditor.d.ts.map +1 -0
- package/dist/edit-mode/overlay/InlineBlockEditor.js +98 -0
- package/dist/edit-mode/overlay/InlineBlockEditor.js.map +1 -0
- package/dist/edit-mode/overlay/InlineText.d.ts +10 -0
- package/dist/edit-mode/overlay/InlineText.d.ts.map +1 -0
- package/dist/edit-mode/overlay/InlineText.js +190 -0
- package/dist/edit-mode/overlay/InlineText.js.map +1 -0
- package/dist/edit-mode/overlay/Overlay.d.ts +13 -0
- package/dist/edit-mode/overlay/Overlay.d.ts.map +1 -0
- package/dist/edit-mode/overlay/Overlay.js +186 -0
- package/dist/edit-mode/overlay/Overlay.js.map +1 -0
- package/dist/edit-mode/overlay/Popover.d.ts +10 -0
- package/dist/edit-mode/overlay/Popover.d.ts.map +1 -0
- package/dist/edit-mode/overlay/Popover.js +58 -0
- package/dist/edit-mode/overlay/Popover.js.map +1 -0
- package/dist/edit-mode/overlay/block-match.d.ts +15 -0
- package/dist/edit-mode/overlay/block-match.d.ts.map +1 -0
- package/dist/edit-mode/overlay/block-match.js +124 -0
- package/dist/edit-mode/overlay/block-match.js.map +1 -0
- package/dist/edit-mode/overlay/dom.d.ts +4 -0
- package/dist/edit-mode/overlay/dom.d.ts.map +1 -0
- package/dist/edit-mode/overlay/dom.js +13 -0
- package/dist/edit-mode/overlay/dom.js.map +1 -0
- package/dist/edit-mode/overlay/geometry.d.ts +16 -0
- package/dist/edit-mode/overlay/geometry.d.ts.map +1 -0
- package/dist/edit-mode/overlay/geometry.js +58 -0
- package/dist/edit-mode/overlay/geometry.js.map +1 -0
- package/dist/edit-mode/overlay/match.d.ts +29 -0
- package/dist/edit-mode/overlay/match.d.ts.map +1 -0
- package/dist/edit-mode/overlay/match.js +140 -0
- package/dist/edit-mode/overlay/match.js.map +1 -0
- package/dist/edit-mode/overlay/stega-scan.d.ts +8 -0
- package/dist/edit-mode/overlay/stega-scan.d.ts.map +1 -0
- package/dist/edit-mode/overlay/stega-scan.js +51 -0
- package/dist/edit-mode/overlay/stega-scan.js.map +1 -0
- package/dist/edit-mode/overlay/styles.d.ts +18 -0
- package/dist/edit-mode/overlay/styles.d.ts.map +1 -0
- package/dist/edit-mode/overlay/styles.js +187 -0
- package/dist/edit-mode/overlay/styles.js.map +1 -0
- package/dist/edit-mode/overlay/useOverlayScan.d.ts +3 -0
- package/dist/edit-mode/overlay/useOverlayScan.d.ts.map +1 -0
- package/dist/edit-mode/overlay/useOverlayScan.js +70 -0
- package/dist/edit-mode/overlay/useOverlayScan.js.map +1 -0
- package/dist/edit-mode/overlay/wildcard.d.ts +8 -0
- package/dist/edit-mode/overlay/wildcard.d.ts.map +1 -0
- package/dist/edit-mode/overlay/wildcard.js +55 -0
- package/dist/edit-mode/overlay/wildcard.js.map +1 -0
- package/dist/edit-mode/refresh.d.ts +4 -0
- package/dist/edit-mode/refresh.d.ts.map +1 -0
- package/dist/edit-mode/refresh.js +11 -0
- package/dist/edit-mode/refresh.js.map +1 -0
- package/dist/edit-mode/save-media.d.ts +10 -0
- package/dist/edit-mode/save-media.d.ts.map +1 -0
- package/dist/edit-mode/save-media.js +49 -0
- package/dist/edit-mode/save-media.js.map +1 -0
- package/dist/edit-mode/save.d.ts +22 -0
- package/dist/edit-mode/save.d.ts.map +1 -0
- package/dist/edit-mode/save.js +47 -0
- package/dist/edit-mode/save.js.map +1 -0
- package/dist/edit-mode/section-fields.d.ts +4 -0
- package/dist/edit-mode/section-fields.d.ts.map +1 -0
- package/dist/edit-mode/section-fields.js +80 -0
- package/dist/edit-mode/section-fields.js.map +1 -0
- package/dist/edit-mode/stega.d.ts +9 -0
- package/dist/edit-mode/stega.d.ts.map +1 -0
- package/dist/edit-mode/stega.js +97 -0
- package/dist/edit-mode/stega.js.map +1 -0
- package/dist/edit-mode/store/content.d.ts +3 -0
- package/dist/edit-mode/store/content.d.ts.map +1 -0
- package/dist/edit-mode/store/content.js +44 -0
- package/dist/edit-mode/store/content.js.map +1 -0
- package/dist/edit-mode/store/types.d.ts +23 -0
- package/dist/edit-mode/store/types.d.ts.map +1 -0
- package/dist/edit-mode/store/types.js +2 -0
- package/dist/edit-mode/store/types.js.map +1 -0
- package/dist/edit-mode/styles.d.ts +17 -0
- package/dist/edit-mode/styles.d.ts.map +1 -0
- package/dist/edit-mode/styles.js +125 -0
- package/dist/edit-mode/styles.js.map +1 -0
- package/dist/edit-mode/surface-ops.d.ts +22 -0
- package/dist/edit-mode/surface-ops.d.ts.map +1 -0
- package/dist/edit-mode/surface-ops.js +43 -0
- package/dist/edit-mode/surface-ops.js.map +1 -0
- package/dist/edit-mode/surfaces.d.ts +32 -0
- package/dist/edit-mode/surfaces.d.ts.map +1 -0
- package/dist/edit-mode/surfaces.js +106 -0
- package/dist/edit-mode/surfaces.js.map +1 -0
- package/dist/edit-mode/types.d.ts +55 -0
- package/dist/edit-mode/types.d.ts.map +1 -0
- package/dist/edit-mode/types.js +2 -0
- package/dist/edit-mode/types.js.map +1 -0
- package/dist/edit-mode/useArmed.d.ts +4 -0
- package/dist/edit-mode/useArmed.d.ts.map +1 -0
- package/dist/edit-mode/useArmed.js +28 -0
- package/dist/edit-mode/useArmed.js.map +1 -0
- package/dist/editor/BlockChrome.d.ts +5 -0
- package/dist/editor/BlockChrome.d.ts.map +1 -0
- package/dist/editor/BlockChrome.js +60 -0
- package/dist/editor/BlockChrome.js.map +1 -0
- package/dist/editor/BlockChrome.styled.d.ts +15 -0
- package/dist/editor/BlockChrome.styled.d.ts.map +1 -0
- package/dist/editor/BlockChrome.styled.js +188 -0
- package/dist/editor/BlockChrome.styled.js.map +1 -0
- package/dist/editor/BlockObject.styled.d.ts +10 -0
- package/dist/editor/BlockObject.styled.d.ts.map +1 -0
- package/dist/editor/BlockObject.styled.js +106 -0
- package/dist/editor/BlockObject.styled.js.map +1 -0
- package/dist/editor/BlockObjectEditor.d.ts +10 -0
- package/dist/editor/BlockObjectEditor.d.ts.map +1 -0
- package/dist/editor/BlockObjectEditor.js +55 -0
- package/dist/editor/BlockObjectEditor.js.map +1 -0
- package/dist/editor/DockPortal.d.ts +5 -0
- package/dist/editor/DockPortal.d.ts.map +1 -0
- package/dist/editor/DockPortal.js +16 -0
- package/dist/editor/DockPortal.js.map +1 -0
- package/dist/editor/EditableSurface.d.ts +4 -0
- package/dist/editor/EditableSurface.d.ts.map +1 -0
- package/dist/editor/EditableSurface.js +85 -0
- package/dist/editor/EditableSurface.js.map +1 -0
- package/dist/editor/EditableSurface.styled.d.ts +2 -0
- package/dist/editor/EditableSurface.styled.d.ts.map +1 -0
- package/dist/editor/EditableSurface.styled.js +30 -0
- package/dist/editor/EditableSurface.styled.js.map +1 -0
- package/dist/editor/EmptyStatePicker.d.ts +2 -0
- package/dist/editor/EmptyStatePicker.d.ts.map +1 -0
- package/dist/editor/EmptyStatePicker.js +22 -0
- package/dist/editor/EmptyStatePicker.js.map +1 -0
- package/dist/editor/EmptyStatePicker.styled.d.ts +6 -0
- package/dist/editor/EmptyStatePicker.styled.d.ts.map +1 -0
- package/dist/editor/EmptyStatePicker.styled.js +59 -0
- package/dist/editor/EmptyStatePicker.styled.js.map +1 -0
- package/dist/editor/LinkGalleryEditors.d.ts +14 -0
- package/dist/editor/LinkGalleryEditors.d.ts.map +1 -0
- package/dist/editor/LinkGalleryEditors.js +25 -0
- package/dist/editor/LinkGalleryEditors.js.map +1 -0
- package/dist/editor/MediaBlockEditors.d.ts +19 -0
- package/dist/editor/MediaBlockEditors.d.ts.map +1 -0
- package/dist/editor/MediaBlockEditors.js +91 -0
- package/dist/editor/MediaBlockEditors.js.map +1 -0
- package/dist/editor/MediaBlockEditors.styled.d.ts +3 -0
- package/dist/editor/MediaBlockEditors.styled.d.ts.map +1 -0
- package/dist/editor/MediaBlockEditors.styled.js +23 -0
- package/dist/editor/MediaBlockEditors.styled.js.map +1 -0
- package/dist/editor/TableBlockEditor.d.ts +8 -0
- package/dist/editor/TableBlockEditor.d.ts.map +1 -0
- package/dist/editor/TableBlockEditor.js +71 -0
- package/dist/editor/TableBlockEditor.js.map +1 -0
- package/dist/editor/TableBlockEditor.styled.d.ts +8 -0
- package/dist/editor/TableBlockEditor.styled.d.ts.map +1 -0
- package/dist/editor/TableBlockEditor.styled.js +98 -0
- package/dist/editor/TableBlockEditor.styled.js.map +1 -0
- package/dist/editor/Toolbar.d.ts +6 -0
- package/dist/editor/Toolbar.d.ts.map +1 -0
- package/dist/editor/Toolbar.js +56 -0
- package/dist/editor/Toolbar.js.map +1 -0
- package/dist/editor/Toolbar.styled.d.ts +7 -0
- package/dist/editor/Toolbar.styled.d.ts.map +1 -0
- package/dist/editor/Toolbar.styled.js +114 -0
- package/dist/editor/Toolbar.styled.js.map +1 -0
- package/dist/editor/blocks.d.ts +34 -0
- package/dist/editor/blocks.d.ts.map +1 -0
- package/dist/editor/blocks.js +163 -0
- package/dist/editor/blocks.js.map +1 -0
- package/dist/editor/deps.d.ts +18 -0
- package/dist/editor/deps.d.ts.map +1 -0
- package/dist/editor/deps.js +54 -0
- package/dist/editor/deps.js.map +1 -0
- package/dist/editor/index.d.ts +19 -0
- package/dist/editor/index.d.ts.map +1 -0
- package/dist/editor/index.js +35 -0
- package/dist/editor/index.js.map +1 -0
- package/dist/editor/insertOptions.d.ts +15 -0
- package/dist/editor/insertOptions.d.ts.map +1 -0
- package/dist/editor/insertOptions.js +194 -0
- package/dist/editor/insertOptions.js.map +1 -0
- package/dist/editor/rename.d.ts +7 -0
- package/dist/editor/rename.d.ts.map +1 -0
- package/dist/editor/rename.js +45 -0
- package/dist/editor/rename.js.map +1 -0
- package/dist/editor/styles.d.ts +5 -0
- package/dist/editor/styles.d.ts.map +1 -0
- package/dist/editor/styles.js +154 -0
- package/dist/editor/styles.js.map +1 -0
- package/dist/editor/textSchema.d.ts +2 -0
- package/dist/editor/textSchema.d.ts.map +1 -0
- package/dist/editor/textSchema.js +120 -0
- package/dist/editor/textSchema.js.map +1 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -0
- package/dist/placeholders.d.ts +22 -0
- package/dist/placeholders.d.ts.map +1 -0
- package/dist/placeholders.js +26 -0
- package/dist/placeholders.js.map +1 -0
- package/dist/providers/AppContentProvider.d.ts +16 -0
- package/dist/providers/AppContentProvider.d.ts.map +1 -0
- package/dist/providers/AppContentProvider.js +18 -0
- package/dist/providers/AppContentProvider.js.map +1 -0
- package/dist/providers/PageContentProvider.d.ts +41 -0
- package/dist/providers/PageContentProvider.d.ts.map +1 -0
- package/dist/providers/PageContentProvider.js +139 -0
- package/dist/providers/PageContentProvider.js.map +1 -0
- package/dist/providers/index.d.ts +3 -0
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +3 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/providers/merge-content.d.ts +17 -0
- package/dist/providers/merge-content.d.ts.map +1 -0
- package/dist/providers/merge-content.js +65 -0
- package/dist/providers/merge-content.js.map +1 -0
- package/dist/providers/separate-components.d.ts +27 -0
- package/dist/providers/separate-components.d.ts.map +1 -0
- package/dist/providers/separate-components.js +42 -0
- package/dist/providers/separate-components.js.map +1 -0
- package/dist/providers/tenant-tokens.d.ts +5 -0
- package/dist/providers/tenant-tokens.d.ts.map +1 -0
- package/dist/providers/tenant-tokens.js +19 -0
- package/dist/providers/tenant-tokens.js.map +1 -0
- package/dist/server/client.d.ts +4 -0
- package/dist/server/client.d.ts.map +1 -0
- package/dist/server/client.js +13 -0
- package/dist/server/client.js.map +1 -0
- package/dist/server/clients.d.ts +5 -0
- package/dist/server/clients.d.ts.map +1 -0
- package/dist/server/clients.js +9 -0
- package/dist/server/clients.js.map +1 -0
- package/dist/server/content-api.d.ts +8 -0
- package/dist/server/content-api.d.ts.map +1 -0
- package/dist/server/content-api.js +32 -0
- package/dist/server/content-api.js.map +1 -0
- package/dist/server/errors.d.ts +17 -0
- package/dist/server/errors.d.ts.map +1 -0
- package/dist/server/errors.js +24 -0
- package/dist/server/errors.js.map +1 -0
- package/dist/server/layers.d.ts +11 -0
- package/dist/server/layers.d.ts.map +1 -0
- package/dist/server/layers.js +11 -0
- package/dist/server/layers.js.map +1 -0
- package/dist/server/merge-layers.d.ts +8 -0
- package/dist/server/merge-layers.d.ts.map +1 -0
- package/dist/server/merge-layers.js +27 -0
- package/dist/server/merge-layers.js.map +1 -0
- package/dist/server/organization.d.ts +4 -0
- package/dist/server/organization.d.ts.map +1 -0
- package/dist/server/organization.js +17 -0
- package/dist/server/organization.js.map +1 -0
- package/dist/types/index.d.ts +97 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +2 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/collect-app-texts.d.ts +14 -0
- package/dist/utils/collect-app-texts.d.ts.map +1 -0
- package/dist/utils/collect-app-texts.js +13 -0
- package/dist/utils/collect-app-texts.js.map +1 -0
- package/dist/utils/has-any-content.d.ts +8 -0
- package/dist/utils/has-any-content.d.ts.map +1 -0
- package/dist/utils/has-any-content.js +4 -0
- package/dist/utils/has-any-content.js.map +1 -0
- package/dist/utils/rename-sanity-fields.d.ts +9 -0
- package/dist/utils/rename-sanity-fields.d.ts.map +1 -0
- package/dist/utils/rename-sanity-fields.js +34 -0
- package/dist/utils/rename-sanity-fields.js.map +1 -0
- package/dist/utils.d.ts +6 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +49 -0
- package/dist/utils.js.map +1 -0
- package/package.json +80 -3
- package/README.md +0 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SurfaceItemControls.js","sourceRoot":"","sources":["../../../src/edit-mode/fields/SurfaceItemControls.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,wBAAwB,MAAM,0CAA0C,CAAC;AAChF,OAAO,0BAA0B,MAAM,4CAA4C,CAAC;AACpF,OAAO,4BAA4B,MAAM,8CAA8C,CAAC;AACxF,OAAO,cAAc,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EACL,cAAc,EACd,eAAe,EACf,iBAAiB,GAElB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpD,MAAM,UAAU,mBAAmB,CAAC,EAClC,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,UAAU,GAMX;IACC,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;IACrD,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;IAE1C,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAC9B,CAAC,IAAI,EAAE,EAAE,CAAE,IAA+B,EAAE,SAAS,KAAK,QAAQ,CAAC,OAAO,CAC3E,CAAC;IAEF,MAAM,QAAQ,GAAG,GAAG,EAAE,CACpB,GAAG,CAAC,KAAK,IAAI,EAAE;QACb,MAAM,iBAAiB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;QAClD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;IAEL,MAAM,MAAM,GAAG,CAAC,SAAwB,EAAE,EAAE,CAC1C,GAAG,CAAC,KAAK,IAAI,EAAE;QACb,MAAM,eAAe,CACnB,MAAM,EACN,QAAQ,CAAC,KAAK,EACd,QAAQ,CAAC,QAAQ,EACjB,MAAM,EACN,QAAoC,EACpC,QAAQ,CAAC,OAAO,EAChB,SAAS,EACT,QAAQ,CAAC,MAAM,CAChB,CAAC;QACF,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;IAEL,MAAM,UAAU,GAAG,GAAG,EAAE,CACtB,GAAG,CAAC,KAAK,IAAI,EAAE;QACb,IAAI,CAAC,aAAa;YAAE,OAAO;QAC3B,MAAM,cAAc,CAClB,MAAM,EACN,QAAQ,CAAC,KAAK,EACd,aAAa,EACb,MAAM,EACN,UAAU,IAAI,EAAE,EAChB;YACE,SAAS,EAAE,SAAS,EAAE;YACtB,UAAU,EAAE,qBAAqB;YACjC,KAAK,EAAE,cAAc,CACnB,OAAO,EACP,yBAAyB,EACzB,YAAY,CACb;YACD,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,EAAE;SACZ,EACD,KAAK,EACL,QAAQ,CAAC,MAAM,CAChB,CAAC;QACF,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;IAEL,OAAO,CACL,8BACE,MAAC,cAAc,eACb,KAAC,iBAAiB,IAChB,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC,EAC9B,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,EAC3B,KAAK,EAAE,cAAc,CAAC,OAAO,EAAE,gBAAgB,EAAE,WAAW,CAAC,YAE7D,KAAC,0BAA0B,IAAC,QAAQ,EAAC,OAAO,GAAG,GAC7B,EACpB,KAAC,iBAAiB,IAChB,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,MAAM,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAC7D,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAC7B,KAAK,EAAE,cAAc,CAAC,OAAO,EAAE,kBAAkB,EAAE,WAAW,CAAC,YAE/D,KAAC,4BAA4B,IAAC,QAAQ,EAAC,OAAO,GAAG,GAC/B,EACnB,aAAa,IAAI,CAChB,KAAC,iBAAiB,IAChB,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,UAAU,EACnB,KAAK,EAAE,cAAc,CACnB,OAAO,EACP,uBAAuB,EACvB,gBAAgB,CACjB,YAED,KAAC,cAAc,IAAC,QAAQ,EAAC,OAAO,GAAG,GACjB,CACrB,EACD,KAAC,iBAAiB,IAChB,IAAI,EAAC,QAAQ,mBAEb,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,QAAQ,EACjB,KAAK,EAAE,cAAc,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,CAAC,YAEzD,KAAC,wBAAwB,IAAC,QAAQ,EAAC,OAAO,GAAG,GAC3B,IACL,EAChB,KAAK,IAAI,KAAC,WAAW,IAAC,IAAI,EAAC,OAAO,YAAE,KAAK,GAAe,IACxD,CACJ,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SurfaceLinkField.d.ts","sourceRoot":"","sources":["../../../src/edit-mode/fields/SurfaceLinkField.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAKzC,wBAAgB,gBAAgB,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,aAAa,CAAA;CAAE,OA0CnE"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useState } from "react";
|
|
4
|
+
import { usePageContent } from "../../providers/PageContentProvider";
|
|
5
|
+
import { textOrFallback } from "../../admin-form-labels";
|
|
6
|
+
import { saveSurfaceFields } from "../surface-ops";
|
|
7
|
+
import { Input, InputLabel } from "../styles";
|
|
8
|
+
import { SaveControls, useEditActions, useSaver } from "./shared";
|
|
9
|
+
export function SurfaceLinkField({ field }) {
|
|
10
|
+
const { getText } = usePageContent();
|
|
11
|
+
const { client, target, refresh } = useEditActions();
|
|
12
|
+
const [text, setText] = useState(() => field.linkText ?? "");
|
|
13
|
+
const [url, setUrl] = useState(() => field.linkUrl ?? "");
|
|
14
|
+
const { saving, saved, error, run } = useSaver();
|
|
15
|
+
const location = field.surface;
|
|
16
|
+
const urlField = field.linkExternal ? "url" : "path";
|
|
17
|
+
const onSave = () => run(async () => {
|
|
18
|
+
if (!location)
|
|
19
|
+
return;
|
|
20
|
+
await saveSurfaceFields(client, location, target, {
|
|
21
|
+
text,
|
|
22
|
+
[urlField]: url,
|
|
23
|
+
});
|
|
24
|
+
refresh();
|
|
25
|
+
});
|
|
26
|
+
return (_jsxs(_Fragment, { children: [_jsx(InputLabel, { children: textOrFallback(getText, "editModeLinkText", "Tekst") }), _jsx(Input, { value: text, onChange: (e) => setText(e.target.value) }), _jsx(InputLabel, { children: textOrFallback(getText, "editModeMenuTarget", "Side") }), _jsx(Input, { value: url, onChange: (e) => setUrl(e.target.value), placeholder: field.linkExternal ? "https://…" : "/side" }), _jsx(SaveControls, { saving: saving, saved: saved, error: error, onSave: onSave })] }));
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=SurfaceLinkField.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SurfaceLinkField.js","sourceRoot":"","sources":["../../../src/edit-mode/fields/SurfaceLinkField.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,iBAAiB,EAAmB,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAElE,MAAM,UAAU,gBAAgB,CAAC,EAAE,KAAK,EAA4B;IAClE,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;IACrD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IAC7D,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IAC1D,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;IAEjD,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAsC,CAAC;IAC9D,MAAM,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;IAErD,MAAM,MAAM,GAAG,GAAG,EAAE,CAClB,GAAG,CAAC,KAAK,IAAI,EAAE;QACb,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,MAAM,iBAAiB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE;YAChD,IAAI;YACJ,CAAC,QAAQ,CAAC,EAAE,GAAG;SAChB,CAAC,CAAC;QACH,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;IAEL,OAAO,CACL,8BACE,KAAC,UAAU,cACR,cAAc,CAAC,OAAO,EAAE,kBAAkB,EAAE,OAAO,CAAC,GAC1C,EACb,KAAC,KAAK,IAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAI,EAChE,KAAC,UAAU,cACR,cAAc,CAAC,OAAO,EAAE,oBAAoB,EAAE,MAAM,CAAC,GAC3C,EACb,KAAC,KAAK,IACJ,KAAK,EAAE,GAAG,EACV,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACvC,WAAW,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,GACvD,EACF,KAAC,YAAY,IACX,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,GACd,IACD,CACJ,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TextField.d.ts","sourceRoot":"","sources":["../../../src/edit-mode/fields/TextField.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAUzC,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,aAAa,CAAA;CAAE,OAyD5D"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useState } from "react";
|
|
4
|
+
import { usePageContent } from "../../providers/PageContentProvider";
|
|
5
|
+
import { textOrFallback } from "../../admin-form-labels";
|
|
6
|
+
import { saveText } from "../save";
|
|
7
|
+
import { saveSurfaceValue } from "../surface-ops";
|
|
8
|
+
import { stripStega } from "../stega";
|
|
9
|
+
import { FieldHint, TextArea } from "../styles";
|
|
10
|
+
import { SaveControls, useAutoGrow, useEditActions, useSaver } from "./shared";
|
|
11
|
+
const HAS_MARKER = /\{\{?[^{}]+\}?\}/;
|
|
12
|
+
const PLACEHOLDER_PREFIX = "Placeholder for ";
|
|
13
|
+
export function TextField({ field }) {
|
|
14
|
+
const { getText } = usePageContent();
|
|
15
|
+
const { client, target, setOverride, refresh } = useEditActions();
|
|
16
|
+
const surface = field.surface;
|
|
17
|
+
const [value, setValue] = useState(() => {
|
|
18
|
+
if (surface)
|
|
19
|
+
return field.surfaceText ?? "";
|
|
20
|
+
const current = stripStega(getText(field.key));
|
|
21
|
+
if (field.missing && current.startsWith(PLACEHOLDER_PREFIX))
|
|
22
|
+
return "";
|
|
23
|
+
return current;
|
|
24
|
+
});
|
|
25
|
+
const { saving, saved, error, run } = useSaver();
|
|
26
|
+
const ref = useAutoGrow(value);
|
|
27
|
+
const onSave = () => run(async () => {
|
|
28
|
+
if (field.missing && !stripStega(value).trim())
|
|
29
|
+
return;
|
|
30
|
+
if (surface && field.surface?.field) {
|
|
31
|
+
await saveSurfaceValue(client, surface, target, field.surface.field, stripStega(value));
|
|
32
|
+
refresh();
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
const override = await saveText(client, field, target, value);
|
|
36
|
+
setOverride(field.key, override);
|
|
37
|
+
refresh();
|
|
38
|
+
return override;
|
|
39
|
+
});
|
|
40
|
+
return (_jsxs(_Fragment, { children: [_jsx(TextArea, { ref: ref, value: value, onChange: (e) => setValue(e.target.value) }), HAS_MARKER.test(value) && (_jsx(FieldHint, { children: textOrFallback(getText, "editModeInterpolationHint", "Markører som {navn} fylles inn automatisk.") })), _jsx(SaveControls, { saving: saving, saved: saved, error: error, onSave: onSave })] }));
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=TextField.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TextField.js","sourceRoot":"","sources":["../../../src/edit-mode/fields/TextField.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VideoField.d.ts","sourceRoot":"","sources":["../../../src/edit-mode/fields/VideoField.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAKzC,wBAAgB,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,aAAa,CAAA;CAAE,OAoC7D"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useState } from "react";
|
|
4
|
+
import { usePageContent } from "../../providers/PageContentProvider";
|
|
5
|
+
import { textOrFallback } from "../../admin-form-labels";
|
|
6
|
+
import { filenameFromUrl, saveVideo } from "../save-media";
|
|
7
|
+
import { Input, InputLabel, VideoNote } from "../styles";
|
|
8
|
+
import { SaveControls, useEditActions, useSaver } from "./shared";
|
|
9
|
+
export function VideoField({ field }) {
|
|
10
|
+
const { getComponent, getText } = usePageContent();
|
|
11
|
+
const { client, target, refresh } = useEditActions();
|
|
12
|
+
const current = getComponent(field.key);
|
|
13
|
+
const [url, setUrl] = useState("");
|
|
14
|
+
const { saving, saved, error, run } = useSaver();
|
|
15
|
+
const onSave = () => run(async () => {
|
|
16
|
+
await saveVideo(client, field, target, url, filenameFromUrl(url));
|
|
17
|
+
refresh();
|
|
18
|
+
});
|
|
19
|
+
return (_jsxs(_Fragment, { children: [current?.asset?.filename && (_jsx(VideoNote, { children: current.asset.filename })), _jsx(InputLabel, { children: textOrFallback(getText, "editModeVideoUrl", "Video-URL") }), _jsx(Input, { value: url, onChange: (e) => setUrl(e.target.value), placeholder: "https://\u2026" }), _jsx(SaveControls, { saving: saving, saved: saved, error: error, disabled: !url, onSave: onSave })] }));
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=VideoField.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VideoField.js","sourceRoot":"","sources":["../../../src/edit-mode/fields/VideoField.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAElE,MAAM,UAAU,UAAU,CAAC,EAAE,KAAK,EAA4B;IAC5D,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;IACnD,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;IACrD,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CACS,CAAC;IAChD,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACnC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;IAEjD,MAAM,MAAM,GAAG,GAAG,EAAE,CAClB,GAAG,CAAC,KAAK,IAAI,EAAE;QACb,MAAM,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;QAClE,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;IAEL,OAAO,CACL,8BACG,OAAO,EAAE,KAAK,EAAE,QAAQ,IAAI,CAC3B,KAAC,SAAS,cAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAa,CAChD,EACD,KAAC,UAAU,cACR,cAAc,CAAC,OAAO,EAAE,kBAAkB,EAAE,WAAW,CAAC,GAC9C,EACb,KAAC,KAAK,IACJ,KAAK,EAAE,GAAG,EACV,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACvC,WAAW,EAAC,gBAAW,GACvB,EACF,KAAC,YAAY,IACX,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,CAAC,GAAG,EACd,MAAM,EAAE,MAAM,GACd,IACD,CACJ,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VisibilityField.d.ts","sourceRoot":"","sources":["../../../src/edit-mode/fields/VisibilityField.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAKzC,wBAAgB,eAAe,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,aAAa,CAAA;CAAE,OAsDlE"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
+
import { useState } from "react";
|
|
4
|
+
import { usePageContent } from "../../providers/PageContentProvider";
|
|
5
|
+
import { textOrFallback } from "../../admin-form-labels";
|
|
6
|
+
import { saveSurfaceValue } from "../surface-ops";
|
|
7
|
+
import { InlineError, TypeToggleButton, TypeToggleRow } from "../styles";
|
|
8
|
+
import { useEditActions, useSaver } from "./shared";
|
|
9
|
+
export function VisibilityField({ field }) {
|
|
10
|
+
const { getText } = usePageContent();
|
|
11
|
+
const { client, target, refresh } = useEditActions();
|
|
12
|
+
const [internal, setInternal] = useState(() => !!field.surfaceBool);
|
|
13
|
+
const { saving, error, run } = useSaver();
|
|
14
|
+
const location = field.surface;
|
|
15
|
+
const set = (next) => {
|
|
16
|
+
if (next === internal || !location || !field.surface?.field)
|
|
17
|
+
return;
|
|
18
|
+
setInternal(next);
|
|
19
|
+
run(async () => {
|
|
20
|
+
await saveSurfaceValue(client, location, target, field.surface.field, next);
|
|
21
|
+
refresh();
|
|
22
|
+
});
|
|
23
|
+
};
|
|
24
|
+
return (_jsxs(_Fragment, { children: [_jsxs(TypeToggleRow, { children: [_jsx(TypeToggleButton, { type: "button", "$active": !internal, disabled: saving, onClick: () => set(false), children: textOrFallback(getText, "editModeVisibilityPublic", "Synlig for alle") }), _jsx(TypeToggleButton, { type: "button", "$active": internal, disabled: saving, onClick: () => set(true), children: textOrFallback(getText, "editModeVisibilityInternal", "Kun innlogget") })] }), error && _jsx(InlineError, { role: "alert", children: error })] }));
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=VisibilityField.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VisibilityField.js","sourceRoot":"","sources":["../../../src/edit-mode/fields/VisibilityField.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,gBAAgB,EAAmB,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpD,MAAM,UAAU,eAAe,CAAC,EAAE,KAAK,EAA4B;IACjE,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;IACrD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACpE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;IAE1C,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAsC,CAAC;IAE9D,MAAM,GAAG,GAAG,CAAC,IAAa,EAAE,EAAE;QAC5B,IAAI,IAAI,KAAK,QAAQ,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK;YAAE,OAAO;QACpE,WAAW,CAAC,IAAI,CAAC,CAAC;QAClB,GAAG,CAAC,KAAK,IAAI,EAAE;YACb,MAAM,gBAAgB,CACpB,MAAM,EACN,QAAQ,EACR,MAAM,EACN,KAAK,CAAC,OAAQ,CAAC,KAAe,EAC9B,IAAI,CACL,CAAC;YACF,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,CACL,8BACE,MAAC,aAAa,eACZ,KAAC,gBAAgB,IACf,IAAI,EAAC,QAAQ,aACJ,CAAC,QAAQ,EAClB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,YAExB,cAAc,CACb,OAAO,EACP,0BAA0B,EAC1B,iBAAiB,CAClB,GACgB,EACnB,KAAC,gBAAgB,IACf,IAAI,EAAC,QAAQ,aACJ,QAAQ,EACjB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,YAEvB,cAAc,CACb,OAAO,EACP,4BAA4B,EAC5B,eAAe,CAChB,GACgB,IACL,EACf,KAAK,IAAI,KAAC,WAAW,IAAC,IAAI,EAAC,OAAO,YAAE,KAAK,GAAe,IACxD,CACJ,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"YoutubeField.d.ts","sourceRoot":"","sources":["../../../src/edit-mode/fields/YoutubeField.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAKzC,wBAAgB,YAAY,CAAC,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,aAAa,CAAA;CAAE,OA+B/D"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useState } from "react";
|
|
4
|
+
import { usePageContent } from "../../providers/PageContentProvider";
|
|
5
|
+
import { textOrFallback } from "../../admin-form-labels";
|
|
6
|
+
import { saveYoutube } from "../save-media";
|
|
7
|
+
import { Input, InputLabel } from "../styles";
|
|
8
|
+
import { SaveControls, useEditActions, useSaver } from "./shared";
|
|
9
|
+
export function YoutubeField({ field }) {
|
|
10
|
+
const { getComponent, getText } = usePageContent();
|
|
11
|
+
const { client, target, refresh } = useEditActions();
|
|
12
|
+
const current = getComponent(field.key);
|
|
13
|
+
const [url, setUrl] = useState(() => current?.url ?? "");
|
|
14
|
+
const { saving, saved, error, run } = useSaver();
|
|
15
|
+
const onSave = () => run(async () => {
|
|
16
|
+
await saveYoutube(client, field, target, url);
|
|
17
|
+
refresh();
|
|
18
|
+
});
|
|
19
|
+
return (_jsxs(_Fragment, { children: [_jsx(InputLabel, { children: textOrFallback(getText, "editModeYoutubeUrl", "YouTube-URL") }), _jsx(Input, { value: url, onChange: (e) => setUrl(e.target.value), placeholder: "https://www.youtube.com/watch?v=\u2026" }), _jsx(SaveControls, { saving: saving, saved: saved, error: error, onSave: onSave })] }));
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=YoutubeField.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"YoutubeField.js","sourceRoot":"","sources":["../../../src/edit-mode/fields/YoutubeField.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAElE,MAAM,UAAU,YAAY,CAAC,EAAE,KAAK,EAA4B;IAC9D,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;IACnD,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,CAAC;IACrD,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAiC,CAAC;IACxE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;IACzD,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;IAEjD,MAAM,MAAM,GAAG,GAAG,EAAE,CAClB,GAAG,CAAC,KAAK,IAAI,EAAE;QACb,MAAM,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAC9C,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;IAEL,OAAO,CACL,8BACE,KAAC,UAAU,cACR,cAAc,CAAC,OAAO,EAAE,oBAAoB,EAAE,aAAa,CAAC,GAClD,EACb,KAAC,KAAK,IACJ,KAAK,EAAE,GAAG,EACV,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACvC,WAAW,EAAC,wCAAmC,GAC/C,EACF,KAAC,YAAY,IACX,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,GACd,IACD,CACJ,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { SetOverride } from "../types";
|
|
2
|
+
import { SaveTarget } from "../save";
|
|
3
|
+
import { EditClient } from "../store/types";
|
|
4
|
+
export interface EditActions {
|
|
5
|
+
client: EditClient;
|
|
6
|
+
target: SaveTarget;
|
|
7
|
+
docKeys: Record<string, string | undefined>;
|
|
8
|
+
setOverride: SetOverride;
|
|
9
|
+
refresh: () => void;
|
|
10
|
+
}
|
|
11
|
+
export declare const EditActionsProvider: any;
|
|
12
|
+
export declare function useEditActions(): EditActions;
|
|
13
|
+
export declare function useSaver(): {
|
|
14
|
+
saving: any;
|
|
15
|
+
error: any;
|
|
16
|
+
saved: any;
|
|
17
|
+
run: (fn: () => Promise<unknown>) => Promise<void>;
|
|
18
|
+
};
|
|
19
|
+
export declare function useAutoGrow<T extends HTMLTextAreaElement>(value: string): any;
|
|
20
|
+
export declare function SaveControls({ saving, saved, error, disabled, onSave, }: {
|
|
21
|
+
saving: boolean;
|
|
22
|
+
saved: boolean;
|
|
23
|
+
error: string | null;
|
|
24
|
+
disabled?: boolean;
|
|
25
|
+
onSave: () => void;
|
|
26
|
+
}): any;
|
|
27
|
+
//# sourceMappingURL=shared.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/edit-mode/fields/shared.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAS5C,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,UAAU,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IAC5C,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAID,eAAO,MAAM,mBAAmB,KAA8B,CAAC;AAE/D,wBAAgB,cAAc,IAAI,WAAW,CAM5C;AAED,wBAAgB,QAAQ;;;;cAMC,MAAM,OAAO,CAAC,OAAO,CAAC;EAmB9C;AAED,wBAAgB,WAAW,CAAC,CAAC,SAAS,mBAAmB,EAAE,KAAK,EAAE,MAAM,OASvE;AAED,wBAAgB,YAAY,CAAC,EAC3B,MAAM,EACN,KAAK,EACL,KAAK,EACL,QAAQ,EACR,MAAM,GACP,EAAE;IACD,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB,OAgBA"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { createContext, useContext, useEffect, useRef, useState } from "react";
|
|
4
|
+
import { usePageContent } from "../../providers/PageContentProvider";
|
|
5
|
+
import { textOrFallback } from "../../admin-form-labels";
|
|
6
|
+
import { InlineError, SavedHint, SaveButton, SaveRow, Spinner, } from "../styles";
|
|
7
|
+
const EditActionsContext = createContext(null);
|
|
8
|
+
export const EditActionsProvider = EditActionsContext.Provider;
|
|
9
|
+
export function useEditActions() {
|
|
10
|
+
const actions = useContext(EditActionsContext);
|
|
11
|
+
if (!actions) {
|
|
12
|
+
throw new Error("useEditActions må brukes innenfor redigeringspanelet");
|
|
13
|
+
}
|
|
14
|
+
return actions;
|
|
15
|
+
}
|
|
16
|
+
export function useSaver() {
|
|
17
|
+
const { getText } = usePageContent();
|
|
18
|
+
const [saving, setSaving] = useState(false);
|
|
19
|
+
const [error, setError] = useState(null);
|
|
20
|
+
const [saved, setSaved] = useState(false);
|
|
21
|
+
const run = async (fn) => {
|
|
22
|
+
setSaving(true);
|
|
23
|
+
setError(null);
|
|
24
|
+
setSaved(false);
|
|
25
|
+
try {
|
|
26
|
+
await fn();
|
|
27
|
+
setSaved(true);
|
|
28
|
+
}
|
|
29
|
+
catch (e) {
|
|
30
|
+
setError(e instanceof Error
|
|
31
|
+
? e.message
|
|
32
|
+
: textOrFallback(getText, "editModeSaveFailed", "Lagring feilet"));
|
|
33
|
+
}
|
|
34
|
+
finally {
|
|
35
|
+
setSaving(false);
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
return { saving, error, saved, run };
|
|
39
|
+
}
|
|
40
|
+
export function useAutoGrow(value) {
|
|
41
|
+
const ref = useRef(null);
|
|
42
|
+
useEffect(() => {
|
|
43
|
+
const el = ref.current;
|
|
44
|
+
if (!el)
|
|
45
|
+
return;
|
|
46
|
+
el.style.height = "auto";
|
|
47
|
+
el.style.height = `${el.scrollHeight}px`;
|
|
48
|
+
}, [value]);
|
|
49
|
+
return ref;
|
|
50
|
+
}
|
|
51
|
+
export function SaveControls({ saving, saved, error, disabled, onSave, }) {
|
|
52
|
+
const { getText } = usePageContent();
|
|
53
|
+
return (_jsxs(SaveRow, { children: [_jsxs(SaveButton, { type: "button", onClick: onSave, disabled: saving || disabled, children: [saving && _jsx(Spinner, {}), textOrFallback(getText, "editModeSave", "Lagre")] }), saved && !saving && !error && (_jsx(SavedHint, { children: textOrFallback(getText, "editModeSaved", "Lagret") })), error && _jsx(InlineError, { role: "alert", children: error })] }));
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=shared.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/edit-mode/fields/shared.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { EditableField } from "./types";
|
|
2
|
+
type ComponentLike = {
|
|
3
|
+
key: string;
|
|
4
|
+
sanityType: string;
|
|
5
|
+
system?: boolean;
|
|
6
|
+
} | null;
|
|
7
|
+
export declare function buildEditableFields(components: (ComponentLike | undefined)[] | null | undefined, owners: Map<string, {
|
|
8
|
+
sanityId: string;
|
|
9
|
+
sanityType: string;
|
|
10
|
+
}>, mainPageSanityId: string | undefined): EditableField[];
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=fields-from-content.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fields-from-content.d.ts","sourceRoot":"","sources":["../../src/edit-mode/fields-from-content.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAA6B,MAAM,SAAS,CAAC;AAanE,KAAK,aAAa,GAAG;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,GAAG,IAAI,CAAC;AAaT,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,CAAC,aAAa,GAAG,SAAS,CAAC,EAAE,GAAG,IAAI,GAAG,SAAS,EAC5D,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,EAC7D,gBAAgB,EAAE,MAAM,GAAG,SAAS,GACnC,aAAa,EAAE,CAqBjB"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
const EDITABLE_KINDS = new Set([
|
|
2
|
+
"component.text",
|
|
3
|
+
"component.link",
|
|
4
|
+
"component.block",
|
|
5
|
+
"component.image",
|
|
6
|
+
"component.media",
|
|
7
|
+
"component.youtube",
|
|
8
|
+
"component.video",
|
|
9
|
+
"component.gallery",
|
|
10
|
+
]);
|
|
11
|
+
function resolveOwner(document, mainPageSanityId) {
|
|
12
|
+
if (document?.sanityType === "app")
|
|
13
|
+
return "app";
|
|
14
|
+
if (document?.sanityId && document.sanityId === mainPageSanityId) {
|
|
15
|
+
return "main-page";
|
|
16
|
+
}
|
|
17
|
+
return "other";
|
|
18
|
+
}
|
|
19
|
+
export function buildEditableFields(components, owners, mainPageSanityId) {
|
|
20
|
+
const fields = [];
|
|
21
|
+
const seen = new Set();
|
|
22
|
+
for (const component of components ?? []) {
|
|
23
|
+
if (!component)
|
|
24
|
+
continue;
|
|
25
|
+
const kind = component.sanityType;
|
|
26
|
+
if (!EDITABLE_KINDS.has(kind))
|
|
27
|
+
continue;
|
|
28
|
+
if (seen.has(component.key))
|
|
29
|
+
continue;
|
|
30
|
+
seen.add(component.key);
|
|
31
|
+
const document = owners.get(component.key);
|
|
32
|
+
fields.push({
|
|
33
|
+
key: component.key,
|
|
34
|
+
kind,
|
|
35
|
+
owner: resolveOwner(document, mainPageSanityId),
|
|
36
|
+
ownerId: document?.sanityId,
|
|
37
|
+
system: component.system === true ? true : undefined,
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
return fields;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=fields-from-content.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fields-from-content.js","sourceRoot":"","sources":["../../src/edit-mode/fields-from-content.ts"],"names":[],"mappings":"AAEA,MAAM,cAAc,GAAG,IAAI,GAAG,CAAgB;IAC5C,gBAAgB;IAChB,gBAAgB;IAChB,iBAAiB;IACjB,iBAAiB;IACjB,iBAAiB;IACjB,mBAAmB;IACnB,iBAAiB;IACjB,mBAAmB;CACpB,CAAC,CAAC;AAQH,SAAS,YAAY,CACnB,QAA8D,EAC9D,gBAAoC;IAEpC,IAAI,QAAQ,EAAE,UAAU,KAAK,KAAK;QAAE,OAAO,KAAK,CAAC;IACjD,IAAI,QAAQ,EAAE,QAAQ,IAAI,QAAQ,CAAC,QAAQ,KAAK,gBAAgB,EAAE,CAAC;QACjE,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,UAA4D,EAC5D,MAA6D,EAC7D,gBAAoC;IAEpC,MAAM,MAAM,GAAoB,EAAE,CAAC;IACnC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAE/B,KAAK,MAAM,SAAS,IAAI,UAAU,IAAI,EAAE,EAAE,CAAC;QACzC,IAAI,CAAC,SAAS;YAAE,SAAS;QACzB,MAAM,IAAI,GAAG,SAAS,CAAC,UAA2B,CAAC;QACnD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,SAAS;QACxC,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC;YAAE,SAAS;QACtC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACxB,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC3C,MAAM,CAAC,IAAI,CAAC;YACV,GAAG,EAAE,SAAS,CAAC,GAAG;YAClB,IAAI;YACJ,KAAK,EAAE,YAAY,CAAC,QAAQ,EAAE,gBAAgB,CAAC;YAC/C,OAAO,EAAE,QAAQ,EAAE,QAAQ;YAC3B,MAAM,EAAE,SAAS,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;SACrD,CAAC,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image-url.d.ts","sourceRoot":"","sources":["../../src/edit-mode/image-url.ts"],"names":[],"mappings":"AAAA,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,MAAM,EACX,EAAE,KAAK,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAC3B,MAAM,CAIR"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image-url.js","sourceRoot":"","sources":["../../src/edit-mode/image-url.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,iBAAiB,CAC/B,GAAW,EACX,EAAE,KAAK,EAAqB;IAE5B,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC;QAAE,OAAO,GAAG,CAAC;IACvD,MAAM,SAAS,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAChD,OAAO,GAAG,GAAG,GAAG,SAAS,KAAK,KAAK,cAAc,CAAC;AACpD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/edit-mode/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,YAAY,EACV,aAAa,EACb,YAAY,EACZ,aAAa,EACb,WAAW,GACZ,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/edit-mode/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { EditableField } from "./types";
|
|
2
|
+
export interface MissingTextKeys {
|
|
3
|
+
record: (_key: string) => void;
|
|
4
|
+
fields: EditableField[];
|
|
5
|
+
sync: (_isResolved: (_key: string) => boolean) => void;
|
|
6
|
+
}
|
|
7
|
+
export declare function useMissingTextKeys(armed: boolean): MissingTextKeys;
|
|
8
|
+
//# sourceMappingURL=missing-keys.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"missing-keys.d.ts","sourceRoot":"","sources":["../../src/edit-mode/missing-keys.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAMxC,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,KAAK,IAAI,CAAC;CACxD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,eAAe,CAoClE"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useCallback, useMemo, useRef, useState } from "react";
|
|
3
|
+
function sameKeys(a, b) {
|
|
4
|
+
return a.length === b.length && a.every((key, index) => key === b[index]);
|
|
5
|
+
}
|
|
6
|
+
export function useMissingTextKeys(armed) {
|
|
7
|
+
const padRef = useRef(new Set());
|
|
8
|
+
const [keys, setKeys] = useState([]);
|
|
9
|
+
const record = useCallback((key) => {
|
|
10
|
+
padRef.current.add(key);
|
|
11
|
+
}, []);
|
|
12
|
+
const sync = useCallback((isResolved) => {
|
|
13
|
+
if (!armed) {
|
|
14
|
+
padRef.current.clear();
|
|
15
|
+
setKeys((prev) => (prev.length ? [] : prev));
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
padRef.current.forEach((key) => {
|
|
19
|
+
if (isResolved(key))
|
|
20
|
+
padRef.current.delete(key);
|
|
21
|
+
});
|
|
22
|
+
const next = Array.from(padRef.current).sort();
|
|
23
|
+
setKeys((prev) => (sameKeys(prev, next) ? prev : next));
|
|
24
|
+
}, [armed]);
|
|
25
|
+
const fields = useMemo(() => keys.map((key) => ({
|
|
26
|
+
key,
|
|
27
|
+
kind: "component.text",
|
|
28
|
+
owner: "main-page",
|
|
29
|
+
missing: true,
|
|
30
|
+
})), [keys]);
|
|
31
|
+
return { record, fields, sync };
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=missing-keys.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"missing-keys.js","sourceRoot":"","sources":["../../src/edit-mode/missing-keys.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAG/D,SAAS,QAAQ,CAAC,CAAW,EAAE,CAAW;IACxC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AAC5E,CAAC;AAQD,MAAM,UAAU,kBAAkB,CAAC,KAAc;IAC/C,MAAM,MAAM,GAAG,MAAM,CAAc,IAAI,GAAG,EAAE,CAAC,CAAC;IAC9C,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAW,EAAE,CAAC,CAAC;IAE/C,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,GAAW,EAAE,EAAE;QACzC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,IAAI,GAAG,WAAW,CACtB,CAAC,UAAqC,EAAE,EAAE;QACxC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACvB,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7C,OAAO;QACT,CAAC;QACD,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YAC7B,IAAI,UAAU,CAAC,GAAG,CAAC;gBAAE,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;QAC/C,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1D,CAAC,EACD,CAAC,KAAK,CAAC,CACR,CAAC;IAEF,MAAM,MAAM,GAAG,OAAO,CACpB,GAAG,EAAE,CACH,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAiB,EAAE,CAAC,CAAC;QAChC,GAAG;QACH,IAAI,EAAE,gBAAgB;QACtB,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,IAAI;KACd,CAAC,CAAC,EACL,CAAC,IAAI,CAAC,CACP,CAAC;IAEF,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AAClC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { EditableField } from "../types";
|
|
2
|
+
import { EditActions } from "../fields/shared";
|
|
3
|
+
export declare function InlineBlockEditor({ elements, field, actions, onClose, }: {
|
|
4
|
+
elements: HTMLElement[];
|
|
5
|
+
field: EditableField;
|
|
6
|
+
actions: EditActions;
|
|
7
|
+
onClose: () => void;
|
|
8
|
+
}): any;
|
|
9
|
+
//# sourceMappingURL=InlineBlockEditor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InlineBlockEditor.d.ts","sourceRoot":"","sources":["../../../src/edit-mode/overlay/InlineBlockEditor.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAIzC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAI/C,wBAAgB,iBAAiB,CAAC,EAChC,QAAQ,EACR,KAAK,EACL,OAAO,EACP,OAAO,GACR,EAAE;IACD,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,KAAK,EAAE,aAAa,CAAC;IACrB,OAAO,EAAE,WAAW,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB,OAkIA"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
+
import { useLayoutEffect, useRef, useState } from "react";
|
|
4
|
+
import { createPortal } from "react-dom";
|
|
5
|
+
import { usePageContent } from "../../providers/PageContentProvider";
|
|
6
|
+
import { textOrFallback } from "../../admin-form-labels";
|
|
7
|
+
import { PortableBlockEditor } from "../../editor";
|
|
8
|
+
import { renameSanityToUnderscore, renameUnderscoreToSanity, } from "../../editor/rename";
|
|
9
|
+
import { saveBlock } from "../save";
|
|
10
|
+
import { saveSurfaceValue } from "../surface-ops";
|
|
11
|
+
import { stripStegaBlocks } from "../stega";
|
|
12
|
+
import { InlineError, SaveButton, Spinner } from "../styles";
|
|
13
|
+
import { CancelButton, InlineEditorFrame } from "./styles";
|
|
14
|
+
export function InlineBlockEditor({ elements, field, actions, onClose, }) {
|
|
15
|
+
const { getBlock, getText } = usePageContent();
|
|
16
|
+
const [blocks, setBlocks] = useState(() => renameUnderscoreToSanity(stripStegaBlocks(field.surface ? (field.surfaceBlock ?? []) : getBlock(field.key))));
|
|
17
|
+
const [saving, setSaving] = useState(false);
|
|
18
|
+
const [error, setError] = useState(null);
|
|
19
|
+
const [host] = useState(() => typeof document === "undefined" ? null : document.createElement("div"));
|
|
20
|
+
const blocksRef = useRef(blocks);
|
|
21
|
+
blocksRef.current = blocks;
|
|
22
|
+
const restore = useRef(() => { });
|
|
23
|
+
const cancelRef = useRef(() => { });
|
|
24
|
+
useLayoutEffect(() => {
|
|
25
|
+
if (!host)
|
|
26
|
+
return;
|
|
27
|
+
const first = elements[0];
|
|
28
|
+
const parent = first?.parentNode;
|
|
29
|
+
if (!parent) {
|
|
30
|
+
onClose();
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
host.setAttribute("data-editmode-ui", "");
|
|
34
|
+
parent.insertBefore(host, first);
|
|
35
|
+
const previous = elements.map((element) => element.style.display);
|
|
36
|
+
elements.forEach((element) => {
|
|
37
|
+
element.style.display = "none";
|
|
38
|
+
});
|
|
39
|
+
let done = false;
|
|
40
|
+
restore.current = () => {
|
|
41
|
+
if (done)
|
|
42
|
+
return;
|
|
43
|
+
done = true;
|
|
44
|
+
elements.forEach((element, index) => {
|
|
45
|
+
element.style.display = previous[index];
|
|
46
|
+
});
|
|
47
|
+
host.remove();
|
|
48
|
+
};
|
|
49
|
+
const onKeyDown = (event) => {
|
|
50
|
+
if (event.key === "Escape") {
|
|
51
|
+
event.preventDefault();
|
|
52
|
+
cancelRef.current();
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
document.addEventListener("keydown", onKeyDown, true);
|
|
56
|
+
return () => {
|
|
57
|
+
document.removeEventListener("keydown", onKeyDown, true);
|
|
58
|
+
restore.current();
|
|
59
|
+
};
|
|
60
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
61
|
+
}, [host]);
|
|
62
|
+
const cancel = () => {
|
|
63
|
+
restore.current();
|
|
64
|
+
onClose();
|
|
65
|
+
};
|
|
66
|
+
cancelRef.current = cancel;
|
|
67
|
+
const onSave = async () => {
|
|
68
|
+
setSaving(true);
|
|
69
|
+
setError(null);
|
|
70
|
+
try {
|
|
71
|
+
const native = renameSanityToUnderscore(blocksRef.current);
|
|
72
|
+
const surface = field.surface;
|
|
73
|
+
if (surface && field.surface?.field) {
|
|
74
|
+
await saveSurfaceValue(actions.client, surface, actions.target, field.surface.field, native);
|
|
75
|
+
restore.current();
|
|
76
|
+
actions.refresh();
|
|
77
|
+
onClose();
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
const override = await saveBlock(actions.client, field, actions.target, native);
|
|
81
|
+
restore.current();
|
|
82
|
+
actions.setOverride(field.key, override);
|
|
83
|
+
actions.refresh();
|
|
84
|
+
onClose();
|
|
85
|
+
}
|
|
86
|
+
catch (e) {
|
|
87
|
+
setError(e instanceof Error
|
|
88
|
+
? e.message
|
|
89
|
+
: textOrFallback(getText, "editModeSaveFailed", "Lagring feilet"));
|
|
90
|
+
setSaving(false);
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
if (!host)
|
|
94
|
+
return null;
|
|
95
|
+
const actionButtons = (_jsxs(_Fragment, { children: [_jsxs(SaveButton, { type: "button", onClick: onSave, disabled: saving, children: [saving && _jsx(Spinner, {}), textOrFallback(getText, "editModeSave", "Lagre")] }), _jsx(CancelButton, { type: "button", onClick: cancel, children: textOrFallback(getText, "editModeCancel", "Avbryt") }), error && _jsx(InlineError, { role: "alert", children: error })] }));
|
|
96
|
+
return createPortal(_jsx(InlineEditorFrame, { "data-editmode-ui": true, children: _jsx(PortableBlockEditor, { blocks: blocks, onChange: setBlocks, assetClient: actions.client.assets, actionButtons: actionButtons }) }), host);
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=InlineBlockEditor.js.map
|