@elytracms/studio 0.0.86 → 0.0.88
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/convex/asset-revalidate.test.ts +186 -0
- package/convex/assets.ts +53 -19
- package/convex/cms.ts +22 -0
- package/convex/delivery.ts +33 -116
- package/convex/functions.ts +3 -3
- package/convex/rail-write-parity.test.ts +180 -0
- package/convex/redirects.ts +33 -11
- package/convex/revalidate.ts +7 -5
- package/convex/triggers.ts +53 -3
- package/dist/components/ai/ai-chat-panel.js +8 -1
- package/dist/components/ai/ai-chat-panel.js.map +1 -1
- package/dist/components/app-views/default-modules.d.ts +20 -20
- package/dist/components/app-views/default-modules.js +27 -48
- package/dist/components/app-views/default-modules.js.map +1 -1
- package/dist/components/app-views/studio-config.d.ts +5 -6
- package/dist/components/app-views/studio-config.js.map +1 -1
- package/dist/components/assets/asset-metadata.d.ts +28 -19
- package/dist/components/assets/asset-metadata.js +24 -31
- package/dist/components/assets/asset-metadata.js.map +1 -1
- package/dist/components/assets/asset-selection.d.ts +24 -5
- package/dist/components/assets/asset-selection.js +39 -9
- package/dist/components/assets/asset-selection.js.map +1 -1
- package/dist/components/assets/assets-collection-view-source.d.ts +17 -14
- package/dist/components/assets/assets-collection-view-source.js +25 -31
- package/dist/components/assets/assets-collection-view-source.js.map +1 -1
- package/dist/components/assets/assets-store.d.ts +11 -1
- package/dist/components/assets/assets-store.js +10 -0
- package/dist/components/assets/assets-store.js.map +1 -1
- package/dist/components/assets/focal-point.d.ts +0 -7
- package/dist/components/assets/focal-point.js +0 -10
- package/dist/components/assets/focal-point.js.map +1 -1
- package/dist/components/builder/blocks-panel.js +3 -3
- package/dist/components/builder/blocks-panel.js.map +1 -1
- package/dist/components/builder/builder-store.d.ts +25 -1
- package/dist/components/builder/builder-store.js +3 -2
- package/dist/components/builder/builder-store.js.map +1 -1
- package/dist/components/builder/canvas-chrome-css.js +0 -17
- package/dist/components/builder/canvas-chrome-css.js.map +1 -1
- package/dist/components/builder/canvas-chrome.d.ts +10 -12
- package/dist/components/builder/canvas-chrome.js +12 -13
- package/dist/components/builder/canvas-chrome.js.map +1 -1
- package/dist/components/builder/canvas-dnd.d.ts +8 -0
- package/dist/components/builder/canvas-dnd.js +5 -3
- package/dist/components/builder/canvas-dnd.js.map +1 -1
- package/dist/components/builder/canvas-render-context.d.ts +23 -24
- package/dist/components/builder/canvas-render-context.js +35 -60
- package/dist/components/builder/canvas-render-context.js.map +1 -1
- package/dist/components/builder/canvas.js +5 -11
- package/dist/components/builder/canvas.js.map +1 -1
- package/dist/components/builder/clipboard-actions.d.ts +14 -6
- package/dist/components/builder/clipboard-actions.js +29 -20
- package/dist/components/builder/clipboard-actions.js.map +1 -1
- package/dist/components/builder/composition-field-editor.d.ts +19 -26
- package/dist/components/builder/composition-field-editor.js +30 -52
- package/dist/components/builder/composition-field-editor.js.map +1 -1
- package/dist/components/builder/insert-context.d.ts +3 -1
- package/dist/components/builder/insert-context.js +15 -10
- package/dist/components/builder/insert-context.js.map +1 -1
- package/dist/components/builder/page-tree.d.ts +29 -0
- package/dist/components/builder/page-tree.js +56 -58
- package/dist/components/builder/page-tree.js.map +1 -1
- package/dist/components/builder/reuse.js +5 -2
- package/dist/components/builder/reuse.js.map +1 -1
- package/dist/components/cms/asset-field.d.ts +2 -1
- package/dist/components/cms/asset-field.js +39 -83
- package/dist/components/cms/asset-field.js.map +1 -1
- package/dist/components/cms/asset-picker-core.d.ts +77 -40
- package/dist/components/cms/asset-picker-core.js +73 -46
- package/dist/components/cms/asset-picker-core.js.map +1 -1
- package/dist/components/cms/asset-picker.d.ts +48 -19
- package/dist/components/cms/asset-picker.js +69 -30
- package/dist/components/cms/asset-picker.js.map +1 -1
- package/dist/components/cms/cell-edit.d.ts +3 -1
- package/dist/components/cms/cell-edit.js +2 -2
- package/dist/components/cms/cell-edit.js.map +1 -1
- package/dist/components/cms/cms-composition-validators.js +11 -2
- package/dist/components/cms/cms-composition-validators.js.map +1 -1
- package/dist/components/cms/cms-store.js +15 -23
- package/dist/components/cms/cms-store.js.map +1 -1
- package/dist/components/cms/editable-cell.js +3 -3
- package/dist/components/cms/editable-cell.js.map +1 -1
- package/dist/components/cms/gate-validation.d.ts +27 -2
- package/dist/components/cms/gate-validation.js +19 -1
- package/dist/components/cms/gate-validation.js.map +1 -1
- package/dist/components/cms/rich-text/editor.js +2 -2
- package/dist/components/cms/rich-text/editor.js.map +1 -1
- package/dist/components/cms/rich-text/insert.d.ts +7 -0
- package/dist/components/cms/rich-text/insert.js +7 -0
- package/dist/components/cms/rich-text/insert.js.map +1 -1
- package/dist/components/cms/use-document-versions.js +1 -0
- package/dist/components/cms/use-document-versions.js.map +1 -1
- package/dist/components/cms/versions-model.d.ts +0 -12
- package/dist/components/cms/versions-model.js +3 -15
- package/dist/components/cms/versions-model.js.map +1 -1
- package/dist/components/components/component-detail.js +1 -1
- package/dist/components/components/component-detail.js.map +1 -1
- package/dist/components/components/transfer-dialog.js +2 -4
- package/dist/components/components/transfer-dialog.js.map +1 -1
- package/dist/components/components/transfer.d.ts +13 -10
- package/dist/components/components/transfer.js +21 -19
- package/dist/components/components/transfer.js.map +1 -1
- package/dist/components/nav-issues.d.ts +23 -3
- package/dist/components/nav-issues.js +38 -2
- package/dist/components/nav-issues.js.map +1 -1
- package/dist/components/project-session.d.ts +9 -0
- package/dist/components/project-session.js +1 -1
- package/dist/components/project-session.js.map +1 -1
- package/dist/components/redirects/redirects-collection-view-source.d.ts +17 -2
- package/dist/components/redirects/redirects-collection-view-source.js +20 -6
- package/dist/components/redirects/redirects-collection-view-source.js.map +1 -1
- package/dist/components/section-nav.js +26 -2
- package/dist/components/section-nav.js.map +1 -1
- package/dist/components/section-surface.js +3 -2
- package/dist/components/section-surface.js.map +1 -1
- package/dist/components/settings-form.js +1 -2
- package/dist/components/settings-form.js.map +1 -1
- package/dist/components/studio-context.js +1 -18
- package/dist/components/studio-context.js.map +1 -1
- package/dist/components/studio-project-screen.js +3 -5
- package/dist/components/studio-project-screen.js.map +1 -1
- package/dist/lib/ai/apply-content.js +73 -29
- package/dist/lib/ai/apply-content.js.map +1 -1
- package/dist/lib/ai/constraints.d.ts +35 -0
- package/dist/lib/ai/constraints.js +104 -4
- package/dist/lib/ai/constraints.js.map +1 -1
- package/dist/lib/ai/route.js +4 -1
- package/dist/lib/ai/route.js.map +1 -1
- package/dist/lib/ai/shape.d.ts +3 -2
- package/dist/lib/ai/shape.js +16 -24
- package/dist/lib/ai/shape.js.map +1 -1
- package/dist/lib/ai/tools.d.ts +10 -4
- package/dist/lib/ai/tools.js +12 -4
- package/dist/lib/ai/tools.js.map +1 -1
- package/dist/lib/ai/types.d.ts +8 -0
- package/dist/lib/ai/types.js.map +1 -1
- package/dist/lib/ai/update-fields.js +33 -12
- package/dist/lib/ai/update-fields.js.map +1 -1
- package/dist/lib/assets/asset-placements.d.ts +35 -0
- package/dist/lib/assets/asset-placements.js +74 -0
- package/dist/lib/assets/asset-placements.js.map +1 -0
- package/dist/lib/assets/backfill-thumbs.d.ts +9 -8
- package/dist/lib/assets/backfill-thumbs.js +13 -25
- package/dist/lib/assets/backfill-thumbs.js.map +1 -1
- package/dist/lib/clipboard/paste-issues.d.ts +17 -15
- package/dist/lib/clipboard/paste-issues.js +8 -45
- package/dist/lib/clipboard/paste-issues.js.map +1 -1
- package/dist/lib/clipboard/paste-target.d.ts +25 -1
- package/dist/lib/clipboard/paste-target.js +13 -6
- package/dist/lib/clipboard/paste-target.js.map +1 -1
- package/dist/lib/cms/published-documents.js +1 -0
- package/dist/lib/cms/published-documents.js.map +1 -1
- package/dist/lib/cms-views/view-model.d.ts +3 -3
- package/dist/lib/data/collection-content.d.ts +22 -1
- package/dist/lib/data/collection-content.js +15 -0
- package/dist/lib/data/collection-content.js.map +1 -1
- package/dist/lib/data/index.d.ts +0 -3
- package/dist/lib/data/index.js +4 -6
- package/dist/lib/data/index.js.map +1 -1
- package/dist/lib/dnd/drop-rules.d.ts +45 -2
- package/dist/lib/dnd/drop-rules.js +64 -9
- package/dist/lib/dnd/drop-rules.js.map +1 -1
- package/dist/lib/engine-version.d.ts +3 -3
- package/dist/lib/engine-version.js +3 -3
- package/dist/lib/engine-version.js.map +1 -1
- package/dist/lib/i18n/messages.de.js +9 -56
- package/dist/lib/i18n/messages.de.js.map +1 -1
- package/dist/lib/i18n/messages.en.d.ts +8 -53
- package/dist/lib/i18n/messages.en.js +14 -57
- package/dist/lib/i18n/messages.en.js.map +1 -1
- package/dist/lib/locale/fallback.js +8 -2
- package/dist/lib/locale/fallback.js.map +1 -1
- package/dist/lib/locale/index.d.ts +0 -1
- package/dist/lib/locale/index.js +0 -1
- package/dist/lib/locale/index.js.map +1 -1
- package/dist/lib/locale/locale-store.d.ts +10 -3
- package/dist/lib/locale/locale-store.js +12 -5
- package/dist/lib/locale/locale-store.js.map +1 -1
- package/dist/lib/operations/session-hydration.d.ts +24 -22
- package/dist/lib/operations/session-hydration.js +15 -53
- package/dist/lib/operations/session-hydration.js.map +1 -1
- package/dist/lib/persistence/convex-adapter.js +63 -75
- package/dist/lib/persistence/convex-adapter.js.map +1 -1
- package/dist/lib/persona/labels.d.ts +0 -2
- package/dist/lib/persona/labels.js +1 -7
- package/dist/lib/persona/labels.js.map +1 -1
- package/dist/lib/registry/index.d.ts +4 -2
- package/dist/lib/registry/index.js +26 -21
- package/dist/lib/registry/index.js.map +1 -1
- package/dist/lib/registry/project-components.js +0 -3
- package/dist/lib/registry/project-components.js.map +1 -1
- package/dist/lib/routes/route-issues.js +4 -5
- package/dist/lib/routes/route-issues.js.map +1 -1
- package/dist/lib/theme.js +3 -2
- package/dist/lib/theme.js.map +1 -1
- package/dist/lib/webhooks/tags.js +11 -14
- package/dist/lib/webhooks/tags.js.map +1 -1
- package/dist/lib/workspace/config-issues.d.ts +6 -0
- package/dist/lib/workspace/config-issues.js +8 -4
- package/dist/lib/workspace/config-issues.js.map +1 -1
- package/dist/lib/workspace/index.d.ts +2 -2
- package/dist/lib/workspace/index.js +2 -2
- package/dist/lib/workspace/index.js.map +1 -1
- package/dist/previews/enumerate.d.ts +27 -9
- package/dist/previews/enumerate.js +27 -6
- package/dist/previews/enumerate.js.map +1 -1
- package/dist/previews/manifest-format.d.ts +9 -0
- package/dist/previews/manifest-format.js.map +1 -1
- package/dist/router/match.d.ts +0 -2
- package/dist/router/match.js +0 -2
- package/dist/router/match.js.map +1 -1
- package/dist/router/navigate-once.d.ts +19 -4
- package/dist/router/navigate-once.js +22 -5
- package/dist/router/navigate-once.js.map +1 -1
- package/dist/ui/badge.d.ts +1 -1
- package/package.json +3 -3
- package/src/styles/studio.css +5 -4
- package/src/styles/tokens.css +72 -55
- package/convex/content.ts +0 -291
- package/dist/components/collab/collab-context.d.ts +0 -27
- package/dist/components/collab/collab-context.js +0 -39
- package/dist/components/collab/collab-context.js.map +0 -1
- package/dist/components/collab/collab-seed.d.ts +0 -15
- package/dist/components/collab/collab-seed.js +0 -20
- package/dist/components/collab/collab-seed.js.map +0 -1
- package/dist/components/extensions/extensions-view.d.ts +0 -7
- package/dist/components/extensions/extensions-view.js +0 -127
- package/dist/components/extensions/extensions-view.js.map +0 -1
- package/dist/lib/bindings/section-bindings.d.ts +0 -24
- package/dist/lib/bindings/section-bindings.js +0 -9
- package/dist/lib/bindings/section-bindings.js.map +0 -1
- package/dist/lib/data/data-store.d.ts +0 -98
- package/dist/lib/data/data-store.js +0 -211
- package/dist/lib/data/data-store.js.map +0 -1
- package/dist/lib/data/providers.d.ts +0 -143
- package/dist/lib/data/providers.js +0 -255
- package/dist/lib/data/providers.js.map +0 -1
- package/dist/lib/data/sample-capture.d.ts +0 -30
- package/dist/lib/data/sample-capture.js +0 -70
- package/dist/lib/data/sample-capture.js.map +0 -1
- package/dist/lib/data/sources-store.d.ts +0 -42
- package/dist/lib/data/sources-store.js +0 -120
- package/dist/lib/data/sources-store.js.map +0 -1
- package/dist/lib/locale/binding-fallback.d.ts +0 -35
- package/dist/lib/locale/binding-fallback.js +0 -73
- package/dist/lib/locale/binding-fallback.js.map +0 -1
- package/dist/lib/starters/kit-session.d.ts +0 -5
- package/dist/lib/starters/kit-session.js +0 -17
- package/dist/lib/starters/kit-session.js.map +0 -1
|
@@ -58,8 +58,6 @@ declare const MESSAGES: {
|
|
|
58
58
|
'nav.assets.description': import("./types.js").SourceMessage;
|
|
59
59
|
'nav.users.label': import("./types.js").SourceMessage;
|
|
60
60
|
'nav.users.description': import("./types.js").SourceMessage;
|
|
61
|
-
'nav.extensions.label': import("./types.js").SourceMessage;
|
|
62
|
-
'nav.extensions.description': import("./types.js").SourceMessage;
|
|
63
61
|
'nav.settings.label': import("./types.js").SourceMessage;
|
|
64
62
|
'nav.settings.description': import("./types.js").SourceMessage;
|
|
65
63
|
'userMenu.accountMenu': import("./types.js").SourceMessage;
|
|
@@ -78,6 +76,9 @@ declare const MESSAGES: {
|
|
|
78
76
|
'shell.nav.collapseView': import("./types.js").SourceMessage;
|
|
79
77
|
'shell.nav.expandView': import("./types.js").SourceMessage;
|
|
80
78
|
'shell.nav.issuesCount': import("./types.js").SourceMessage;
|
|
79
|
+
'shell.nav.orphanedCollections': import("./types.js").SourceMessage;
|
|
80
|
+
'shell.nav.orphanedCollections.item': import("./types.js").SourceMessage;
|
|
81
|
+
'shell.nav.orphanedCollections.itemPublished': import("./types.js").SourceMessage;
|
|
81
82
|
'shell.sectionState.empty.title': import("./types.js").SourceMessage;
|
|
82
83
|
'shell.sectionState.empty.description': import("./types.js").SourceMessage;
|
|
83
84
|
'shell.sectionState.loading.description': import("./types.js").SourceMessage;
|
|
@@ -409,6 +410,7 @@ declare const MESSAGES: {
|
|
|
409
410
|
'cms.issue.unknown-alias': import("./types.js").SourceMessage;
|
|
410
411
|
'cms.issue.unfilled-slot': import("./types.js").SourceMessage;
|
|
411
412
|
'cms.issue.custom-validation': import("./types.js").SourceMessage;
|
|
413
|
+
'cms.issue.hidden-predicate-error': import("./types.js").SourceMessage;
|
|
412
414
|
'cms.issue.unaddressable-url': import("./types.js").SourceMessage;
|
|
413
415
|
'cms.issue.unknown-version': import("./types.js").SourceMessage;
|
|
414
416
|
'cms.issueBody.missing-required-field': import("./types.js").SourceMessage;
|
|
@@ -421,6 +423,8 @@ declare const MESSAGES: {
|
|
|
421
423
|
'cms.issueMessage.duplicateDocument': import("./types.js").SourceMessage;
|
|
422
424
|
'cms.issueMessage.fieldDetail': import("./types.js").SourceMessage;
|
|
423
425
|
'cms.issueMessage.fieldReason': import("./types.js").SourceMessage;
|
|
426
|
+
'cms.issueMessage.fieldHiddenPredicateThrew': import("./types.js").SourceMessage;
|
|
427
|
+
'cms.issueMessage.groupHiddenPredicateThrew': import("./types.js").SourceMessage;
|
|
424
428
|
'cms.issueMessage.propDetail': import("./types.js").SourceMessage;
|
|
425
429
|
'cms.issueMessage.propReason': import("./types.js").SourceMessage;
|
|
426
430
|
'cms.issueMessage.relationUnknownTargetCollection': import("./types.js").SourceMessage;
|
|
@@ -433,6 +437,7 @@ declare const MESSAGES: {
|
|
|
433
437
|
'cms.issueMessage.assetSingleValued': import("./types.js").SourceMessage;
|
|
434
438
|
'cms.issueMessage.assetExpectsId': import("./types.js").SourceMessage;
|
|
435
439
|
'cms.issueMessage.assetUnknown': import("./types.js").SourceMessage;
|
|
440
|
+
'cms.issueMessage.assetNotAccepted': import("./types.js").SourceMessage;
|
|
436
441
|
'cms.issueMessage.requiredFieldMissing': import("./types.js").SourceMessage;
|
|
437
442
|
'cms.issueMessage.requiredPropMissing': import("./types.js").SourceMessage;
|
|
438
443
|
'cms.issueMessage.perLocaleMapValue': import("./types.js").SourceMessage;
|
|
@@ -760,7 +765,6 @@ declare const MESSAGES: {
|
|
|
760
765
|
'components.detail.notFound.body': import("./types.js").SourceMessage;
|
|
761
766
|
'components.detail.notFound.back': import("./types.js").SourceMessage;
|
|
762
767
|
'components.detail.allComponents': import("./types.js").SourceMessage;
|
|
763
|
-
'components.detail.designTokens': import("./types.js").SourceMessage;
|
|
764
768
|
'components.status.valid': import("./types.js").SourceMessage;
|
|
765
769
|
'components.status.incompatible': import("./types.js").SourceMessage;
|
|
766
770
|
'components.status.invalid': import("./types.js").SourceMessage;
|
|
@@ -820,49 +824,6 @@ declare const MESSAGES: {
|
|
|
820
824
|
'components.browser.project': import("./types.js").SourceMessage;
|
|
821
825
|
'components.browser.noMatchQuery': import("./types.js").SourceMessage;
|
|
822
826
|
'components.browser.noMatchFilters': import("./types.js").SourceMessage;
|
|
823
|
-
'extensions.tab.marketplace': import("./types.js").SourceMessage;
|
|
824
|
-
'extensions.tab.installed': import("./types.js").SourceMessage;
|
|
825
|
-
'extensions.tab.registered': import("./types.js").SourceMessage;
|
|
826
|
-
'extensions.header.title': import("./types.js").SourceMessage;
|
|
827
|
-
'extensions.header.subtitle': import("./types.js").SourceMessage;
|
|
828
|
-
'extensions.search.placeholder': import("./types.js").SourceMessage;
|
|
829
|
-
'extensions.search.aria': import("./types.js").SourceMessage;
|
|
830
|
-
'extensions.token.placeholder': import("./types.js").SourceMessage;
|
|
831
|
-
'extensions.token.unlocked': import("./types.js").SourceMessage;
|
|
832
|
-
'extensions.empty.noMatch.title': import("./types.js").SourceMessage;
|
|
833
|
-
'extensions.empty.noMatch.body': import("./types.js").SourceMessage;
|
|
834
|
-
'extensions.listing.private': import("./types.js").SourceMessage;
|
|
835
|
-
'extensions.listing.noDescription': import("./types.js").SourceMessage;
|
|
836
|
-
'extensions.listing.unknownAuthor': import("./types.js").SourceMessage;
|
|
837
|
-
'extensions.action.installed': import("./types.js").SourceMessage;
|
|
838
|
-
'extensions.action.install': import("./types.js").SourceMessage;
|
|
839
|
-
'extensions.error.accessDenied': import("./types.js").SourceMessage;
|
|
840
|
-
'extensions.error.installFailed': import("./types.js").SourceMessage;
|
|
841
|
-
'extensions.empty.installed.title': import("./types.js").SourceMessage;
|
|
842
|
-
'extensions.empty.installed.body': import("./types.js").SourceMessage;
|
|
843
|
-
'extensions.contrib.components': import("./types.js").SourceMessage;
|
|
844
|
-
'extensions.contrib.fieldTypes': import("./types.js").SourceMessage;
|
|
845
|
-
'extensions.contrib.dataSources': import("./types.js").SourceMessage;
|
|
846
|
-
'extensions.contrib.assetStorage': import("./types.js").SourceMessage;
|
|
847
|
-
'extensions.contrib.exportTargets': import("./types.js").SourceMessage;
|
|
848
|
-
'extensions.contrib.templates': import("./types.js").SourceMessage;
|
|
849
|
-
'extensions.contrib.hooks': import("./types.js").SourceMessage;
|
|
850
|
-
'extensions.registered.intro': import("./types.js").SourceMessage;
|
|
851
|
-
'extensions.registered.components.title': import("./types.js").SourceMessage;
|
|
852
|
-
'extensions.registered.components.empty': import("./types.js").SourceMessage;
|
|
853
|
-
'extensions.registered.fieldTypes.title': import("./types.js").SourceMessage;
|
|
854
|
-
'extensions.registered.dataSources.title': import("./types.js").SourceMessage;
|
|
855
|
-
'extensions.registered.assetStorage.title': import("./types.js").SourceMessage;
|
|
856
|
-
'extensions.registered.assetStorage.empty': import("./types.js").SourceMessage;
|
|
857
|
-
'extensions.registered.exportTargets.title': import("./types.js").SourceMessage;
|
|
858
|
-
'extensions.registered.hookPoints.title': import("./types.js").SourceMessage;
|
|
859
|
-
'extensions.kind.plugin': import("./types.js").SourceMessage;
|
|
860
|
-
'extensions.kind.componentPackage': import("./types.js").SourceMessage;
|
|
861
|
-
'extensions.kind.fieldType': import("./types.js").SourceMessage;
|
|
862
|
-
'extensions.kind.dataSource': import("./types.js").SourceMessage;
|
|
863
|
-
'extensions.kind.assetStorage': import("./types.js").SourceMessage;
|
|
864
|
-
'extensions.kind.exportTarget': import("./types.js").SourceMessage;
|
|
865
|
-
'extensions.kind.template': import("./types.js").SourceMessage;
|
|
866
827
|
'settings.identity.title': import("./types.js").SourceMessage;
|
|
867
828
|
'settings.identity.name': import("./types.js").SourceMessage;
|
|
868
829
|
'settings.identity.urlKey': import("./types.js").SourceMessage;
|
|
@@ -872,7 +833,6 @@ declare const MESSAGES: {
|
|
|
872
833
|
'settings.locales.defaultSuffix': import("./types.js").SourceMessage;
|
|
873
834
|
'settings.environments.title': import("./types.js").SourceMessage;
|
|
874
835
|
'settings.environments.label': import("./types.js").SourceMessage;
|
|
875
|
-
'settings.exportTarget': import("./types.js").SourceMessage;
|
|
876
836
|
'appViews.singleton.opening': import("./types.js").SourceMessage;
|
|
877
837
|
'builder.canvas.loading': import("./types.js").SourceMessage;
|
|
878
838
|
'builder.blocksPanel.title': import("./types.js").SourceMessage;
|
|
@@ -892,8 +852,6 @@ declare const MESSAGES: {
|
|
|
892
852
|
'builder.blocksPanel.variantsHeading': import("./types.js").SourceMessage;
|
|
893
853
|
'builder.blocksPanel.variantIssuesHint': import("./types.js").SourceMessage;
|
|
894
854
|
'builder.pageTree.title': import("./types.js").SourceMessage;
|
|
895
|
-
'builder.pageTree.hiddenByCondition': import("./types.js").SourceMessage;
|
|
896
|
-
'builder.pageTree.conditional': import("./types.js").SourceMessage;
|
|
897
855
|
'builder.pageTree.addChild': import("./types.js").SourceMessage;
|
|
898
856
|
'builder.pageTree.moreActions': import("./types.js").SourceMessage;
|
|
899
857
|
'builder.pageTree.moveUp': import("./types.js").SourceMessage;
|
|
@@ -906,8 +864,8 @@ declare const MESSAGES: {
|
|
|
906
864
|
'builder.clipboard.cutNotice': import("./types.js").SourceMessage;
|
|
907
865
|
'builder.clipboard.pastedInto': import("./types.js").SourceMessage;
|
|
908
866
|
'builder.clipboard.notAllowed': import("./types.js").SourceMessage;
|
|
867
|
+
'builder.clipboard.notAllowedByField': import("./types.js").SourceMessage;
|
|
909
868
|
'builder.clipboard.issueComponent': import("./types.js").SourceMessage;
|
|
910
|
-
'builder.clipboard.issueBinding': import("./types.js").SourceMessage;
|
|
911
869
|
'builder.clipboard.error.corruptJson': import("./types.js").SourceMessage;
|
|
912
870
|
'builder.clipboard.error.notEnvelope': import("./types.js").SourceMessage;
|
|
913
871
|
'builder.clipboard.error.foreignFormat': import("./types.js").SourceMessage;
|
|
@@ -916,12 +874,9 @@ declare const MESSAGES: {
|
|
|
916
874
|
'builder.clipboard.error.invalidPayload': import("./types.js").SourceMessage;
|
|
917
875
|
'builder.clipboard.error.nodeNotFound': import("./types.js").SourceMessage;
|
|
918
876
|
'builder.clipboard.error.fixtureNotFound': import("./types.js").SourceMessage;
|
|
919
|
-
'builder.clipboard.issue.unresolvedBinding': import("./types.js").SourceMessage;
|
|
920
877
|
'builder.clipboard.issue.missingComponent': import("./types.js").SourceMessage;
|
|
921
878
|
'builder.clipboard.summary.pasted': import("./types.js").SourceMessage;
|
|
922
879
|
'builder.clipboard.summary.pastedWith': import("./types.js").SourceMessage;
|
|
923
|
-
'builder.clipboard.summary.bindingUnresolvedOne': import("./types.js").SourceMessage;
|
|
924
|
-
'builder.clipboard.summary.bindingsUnresolved': import("./types.js").SourceMessage;
|
|
925
880
|
'builder.clipboard.summary.componentMissingOne': import("./types.js").SourceMessage;
|
|
926
881
|
'builder.clipboard.summary.componentsMissing': import("./types.js").SourceMessage;
|
|
927
882
|
'builder.reuse.makeReusable': import("./types.js").SourceMessage;
|
|
@@ -64,8 +64,6 @@ const MESSAGES = {
|
|
|
64
64
|
'nav.assets.description': msg('Manage uploaded media and metadata.'),
|
|
65
65
|
'nav.users.label': msg('Users'),
|
|
66
66
|
'nav.users.description': msg('Manage who has access to this deployment and their role.'),
|
|
67
|
-
'nav.extensions.label': msg('Extensions'),
|
|
68
|
-
'nav.extensions.description': msg('Install components, field types, adapters, and templates from the marketplace.'),
|
|
69
67
|
'nav.settings.label': msg('Settings'),
|
|
70
68
|
'nav.settings.description': msg('Configure project metadata and locales.'),
|
|
71
69
|
// ─────────────────────────────────────────────────────────────────────────
|
|
@@ -90,6 +88,11 @@ const MESSAGES = {
|
|
|
90
88
|
'shell.nav.collapseView': msg('Collapse {name}', 'aria-label on a parent nav item disclosure; {name} is the view label.'),
|
|
91
89
|
'shell.nav.expandView': msg('Expand {name}', 'aria-label on a parent nav item disclosure; {name} is the view label.'),
|
|
92
90
|
'shell.nav.issuesCount': msg('{count} sidebar issues', 'aria-label summarising rail customization issues on the collapsed rail.'),
|
|
91
|
+
// EC-606 — stored documents whose collection the project no longer declares. One
|
|
92
|
+
// warning at the rail foot; {collections} joins one item message per collection.
|
|
93
|
+
'shell.nav.orphanedCollections': msg('Stored documents of collections this project does not declare are hidden from the studio: {collections}. To bring them back, declare the collection in "{file}" again (or restore its old id).', 'Warning at the rail foot. {collections} is a comma-separated list of shell.nav.orphanedCollections.item / .itemPublished; {file} is the project config file name (elytra.config.ts), untranslated.'),
|
|
94
|
+
'shell.nav.orphanedCollections.item': msg('"{collection}" ({count} stored)', 'One entry of shell.nav.orphanedCollections. {collection} is a collection id (an identifier, untranslated); {count} a number of documents.'),
|
|
95
|
+
'shell.nav.orphanedCollections.itemPublished': msg('"{collection}" ({count} stored, {published} published)', 'One entry of shell.nav.orphanedCollections when some of its documents are published. {collection} is a collection id (untranslated); {count} and {published} are numbers.'),
|
|
93
96
|
'shell.sectionState.empty.title': msg('Nothing here yet'),
|
|
94
97
|
'shell.sectionState.empty.description': msg('This section has no content for the active project.'),
|
|
95
98
|
'shell.sectionState.loading.description': msg('Fetching the latest state for this section.'),
|
|
@@ -513,6 +516,7 @@ const MESSAGES = {
|
|
|
513
516
|
'cms.issue.unknown-alias': msg('Unknown slot'),
|
|
514
517
|
'cms.issue.unfilled-slot': msg('Empty slot'),
|
|
515
518
|
'cms.issue.custom-validation': msg('Validation rule'),
|
|
519
|
+
'cms.issue.hidden-predicate-error': msg('Broken visibility rule'),
|
|
516
520
|
'cms.issue.unaddressable-url': msg('Unreachable URL'),
|
|
517
521
|
'cms.issue.unknown-version': msg('Unknown version'),
|
|
518
522
|
// EC-443 — issue-card BODY templates, only for codes whose full body derives
|
|
@@ -546,6 +550,10 @@ const MESSAGES = {
|
|
|
546
550
|
'cms.issueMessage.duplicateDocument': msg('Duplicate document "{id}" in collection "{collection}".'),
|
|
547
551
|
'cms.issueMessage.fieldDetail': msg('Field "{field}" {detail}.'),
|
|
548
552
|
'cms.issueMessage.fieldReason': msg('Field "{field}": {reason}'),
|
|
553
|
+
// EC-598 — a config `hidden` predicate threw. {reason} is the thrown message: author
|
|
554
|
+
// prose, kept verbatim (like a `validate` message inside cms.issueMessage.fieldReason).
|
|
555
|
+
'cms.issueMessage.fieldHiddenPredicateThrew': msg('The visibility rule of field "{field}" threw an error ("{reason}"), so the field is shown and validated. Fix the rule in the project config.', 'A developer-authored show/hide rule crashed. {field} is a field id, {reason} the error text the rule threw (untranslated).'),
|
|
556
|
+
'cms.issueMessage.groupHiddenPredicateThrew': msg('The visibility rule of group "{group}" threw an error ("{reason}"), so its fields are shown and validated. Fix the rule in the project config.', 'A developer-authored show/hide rule of a form section crashed. {group} is the section id, {reason} the error text the rule threw (untranslated).'),
|
|
549
557
|
'cms.issueMessage.propDetail': msg('Prop "{field}" {detail}.'),
|
|
550
558
|
'cms.issueMessage.propReason': msg('Prop "{field}": {reason}'),
|
|
551
559
|
'cms.issueMessage.relationUnknownTargetCollection': msg('Relation field "{field}" targets unknown collection "{target}".'),
|
|
@@ -558,6 +566,7 @@ const MESSAGES = {
|
|
|
558
566
|
'cms.issueMessage.assetSingleValued': msg('Asset field "{field}" is single-valued but has {count} targets.'),
|
|
559
567
|
'cms.issueMessage.assetExpectsId': msg('Asset field "{field}" expects an asset id.'),
|
|
560
568
|
'cms.issueMessage.assetUnknown': msg('Asset field "{field}" references unknown asset "{asset}".'),
|
|
569
|
+
'cms.issueMessage.assetNotAccepted': msg('Asset field "{field}" accepts only {accept}, but asset "{asset}" is {type}.'),
|
|
561
570
|
'cms.issueMessage.requiredFieldMissing': msg('Required field "{field}" is missing.'),
|
|
562
571
|
'cms.issueMessage.requiredPropMissing': msg('Required prop "{field}" is missing.'),
|
|
563
572
|
'cms.issueMessage.perLocaleMapValue': msg('Field "{field}" expects a "{type}" value but holds a per-locale map (keys: {keys}) — per-locale values live under the document\'s "localized" bag, never inside a field value.'),
|
|
@@ -951,7 +960,6 @@ const MESSAGES = {
|
|
|
951
960
|
'components.detail.notFound.body': msg('No component is registered with id {id}.'),
|
|
952
961
|
'components.detail.notFound.back': msg('Back to components'),
|
|
953
962
|
'components.detail.allComponents': msg('All components'),
|
|
954
|
-
'components.detail.designTokens': msg('DESIGN TOKENS'),
|
|
955
963
|
'components.status.valid': msg('valid'),
|
|
956
964
|
'components.status.incompatible': msg('incompatible'),
|
|
957
965
|
'components.status.invalid': msg('invalid'),
|
|
@@ -1012,52 +1020,6 @@ const MESSAGES = {
|
|
|
1012
1020
|
'components.browser.noMatchQuery': msg('No components match “{query}”.'),
|
|
1013
1021
|
'components.browser.noMatchFilters': msg('No components match the selected filters.'),
|
|
1014
1022
|
// ─────────────────────────────────────────────────────────────────────────
|
|
1015
|
-
// Extensions (marketplace)
|
|
1016
|
-
// ─────────────────────────────────────────────────────────────────────────
|
|
1017
|
-
'extensions.tab.marketplace': msg('Marketplace'),
|
|
1018
|
-
'extensions.tab.installed': msg('Installed'),
|
|
1019
|
-
'extensions.tab.registered': msg('Registered'),
|
|
1020
|
-
'extensions.header.title': msg('Extensibility'),
|
|
1021
|
-
'extensions.header.subtitle': msg('Components · field types · data sources · asset storage · export targets · templates · hooks'),
|
|
1022
|
-
'extensions.search.placeholder': msg('Search extensions…'),
|
|
1023
|
-
'extensions.search.aria': msg('Search extensions'),
|
|
1024
|
-
'extensions.token.placeholder': msg('Private registry token'),
|
|
1025
|
-
'extensions.token.unlocked': msg('unlocked'),
|
|
1026
|
-
'extensions.empty.noMatch.title': msg('No extensions match'),
|
|
1027
|
-
'extensions.empty.noMatch.body': msg('Try a different search term.'),
|
|
1028
|
-
'extensions.listing.private': msg('private'),
|
|
1029
|
-
'extensions.listing.noDescription': msg('No description provided.'),
|
|
1030
|
-
'extensions.listing.unknownAuthor': msg('Unknown author'),
|
|
1031
|
-
'extensions.action.installed': msg('Installed'),
|
|
1032
|
-
'extensions.action.install': msg('Install'),
|
|
1033
|
-
'extensions.error.accessDenied': msg('Access denied — a valid token is required.'),
|
|
1034
|
-
'extensions.error.installFailed': msg('Installation failed.'),
|
|
1035
|
-
'extensions.empty.installed.title': msg('Nothing installed yet'),
|
|
1036
|
-
'extensions.empty.installed.body': msg('Install an extension from the marketplace to see what it contributes here.'),
|
|
1037
|
-
'extensions.contrib.components': msg('components'),
|
|
1038
|
-
'extensions.contrib.fieldTypes': msg('field types'),
|
|
1039
|
-
'extensions.contrib.dataSources': msg('data sources'),
|
|
1040
|
-
'extensions.contrib.assetStorage': msg('asset storage'),
|
|
1041
|
-
'extensions.contrib.exportTargets': msg('export targets'),
|
|
1042
|
-
'extensions.contrib.templates': msg('templates'),
|
|
1043
|
-
'extensions.contrib.hooks': msg('hooks'),
|
|
1044
|
-
'extensions.registered.intro': msg('Live registries on the plugin host. Built-in capabilities are always present; installing an extension adds to them.'),
|
|
1045
|
-
'extensions.registered.components.title': msg('Components'),
|
|
1046
|
-
'extensions.registered.components.empty': msg('No project components registered.'),
|
|
1047
|
-
'extensions.registered.fieldTypes.title': msg('Field types'),
|
|
1048
|
-
'extensions.registered.dataSources.title': msg('Data source kinds'),
|
|
1049
|
-
'extensions.registered.assetStorage.title': msg('Asset storage backends'),
|
|
1050
|
-
'extensions.registered.assetStorage.empty': msg('No storage adapters installed.'),
|
|
1051
|
-
'extensions.registered.exportTargets.title': msg('Export targets'),
|
|
1052
|
-
'extensions.registered.hookPoints.title': msg('Hook points'),
|
|
1053
|
-
'extensions.kind.plugin': msg('plugin'),
|
|
1054
|
-
'extensions.kind.componentPackage': msg('components'),
|
|
1055
|
-
'extensions.kind.fieldType': msg('field type'),
|
|
1056
|
-
'extensions.kind.dataSource': msg('data source'),
|
|
1057
|
-
'extensions.kind.assetStorage': msg('asset storage'),
|
|
1058
|
-
'extensions.kind.exportTarget': msg('export target'),
|
|
1059
|
-
'extensions.kind.template': msg('template'),
|
|
1060
|
-
// ─────────────────────────────────────────────────────────────────────────
|
|
1061
1023
|
// Settings
|
|
1062
1024
|
// ─────────────────────────────────────────────────────────────────────────
|
|
1063
1025
|
'settings.identity.title': msg('Identity'),
|
|
@@ -1069,7 +1031,6 @@ const MESSAGES = {
|
|
|
1069
1031
|
'settings.locales.defaultSuffix': msg(' · default'),
|
|
1070
1032
|
'settings.environments.title': msg('Environments & export'),
|
|
1071
1033
|
'settings.environments.label': msg('Environments'),
|
|
1072
|
-
'settings.exportTarget': msg('Export target'),
|
|
1073
1034
|
// ─────────────────────────────────────────────────────────────────────────
|
|
1074
1035
|
// App-views shell
|
|
1075
1036
|
// ─────────────────────────────────────────────────────────────────────────
|
|
@@ -1097,8 +1058,6 @@ const MESSAGES = {
|
|
|
1097
1058
|
'builder.blocksPanel.variantsHeading': msg('Variants'),
|
|
1098
1059
|
'builder.blocksPanel.variantIssuesHint': msg('Some variants have validation issues.'),
|
|
1099
1060
|
'builder.pageTree.title': msg('Page tree'),
|
|
1100
|
-
'builder.pageTree.hiddenByCondition': msg('Hidden by condition'),
|
|
1101
|
-
'builder.pageTree.conditional': msg('Conditional'),
|
|
1102
1061
|
'builder.pageTree.addChild': msg('Add child'),
|
|
1103
1062
|
'builder.pageTree.moreActions': msg('More actions'),
|
|
1104
1063
|
'builder.pageTree.moveUp': msg('Move up'),
|
|
@@ -1111,8 +1070,9 @@ const MESSAGES = {
|
|
|
1111
1070
|
'builder.clipboard.cutNotice': msg('Cut {label}'),
|
|
1112
1071
|
'builder.clipboard.pastedInto': msg('{summary} · into {destination}'),
|
|
1113
1072
|
'builder.clipboard.notAllowed': msg('{component} cannot be pasted into {destination} — the slot does not allow it.', '{component} is the pasted root’s short component name (e.g. “Hero”); {destination} is “Parent · slot” (e.g. “Section · body”).'),
|
|
1073
|
+
// EC-554 — the composition FIELD's top-level `allow` refuses the pasted root.
|
|
1074
|
+
'builder.clipboard.notAllowedByField': msg('{component} cannot be pasted at the top level of "{field}" — the field does not allow it.', '{component} is the pasted root’s short component name (e.g. “Container”); {field} is the composition field’s label (e.g. “Canvas”).'),
|
|
1114
1075
|
'builder.clipboard.issueComponent': msg('component'),
|
|
1115
|
-
'builder.clipboard.issueBinding': msg('binding'),
|
|
1116
1076
|
// EC-494 — the engine-built clipboard failures (`core/clipboard`), which carry a
|
|
1117
1077
|
// catalog ref because that subpath may not import this catalog, plus the studio-side
|
|
1118
1078
|
// paste diff and its summary (translated in place — it already holds the locale).
|
|
@@ -1124,12 +1084,9 @@ const MESSAGES = {
|
|
|
1124
1084
|
'builder.clipboard.error.invalidPayload': msg('Clipboard fragment violates the fragment schema.'),
|
|
1125
1085
|
'builder.clipboard.error.nodeNotFound': msg('No node "{nodeId}" exists in the composition.'),
|
|
1126
1086
|
'builder.clipboard.error.fixtureNotFound': msg('Component "{component}" declares no fixture named "{fixture}".'),
|
|
1127
|
-
'builder.clipboard.issue.unresolvedBinding': msg('Binding source "{sourceId}" is not available in this project.'),
|
|
1128
1087
|
'builder.clipboard.issue.missingComponent': msg('Component "{componentId}" is not registered in this project.'),
|
|
1129
1088
|
'builder.clipboard.summary.pasted': msg('Pasted'),
|
|
1130
|
-
'builder.clipboard.summary.pastedWith': msg('Pasted — {parts}', '{parts} is the comma-joined list of the
|
|
1131
|
-
'builder.clipboard.summary.bindingUnresolvedOne': msg('{count} binding unresolved'),
|
|
1132
|
-
'builder.clipboard.summary.bindingsUnresolved': msg('{count} bindings unresolved'),
|
|
1089
|
+
'builder.clipboard.summary.pastedWith': msg('Pasted — {parts}', '{parts} is the comma-joined list of the summary fragments below.'),
|
|
1133
1090
|
'builder.clipboard.summary.componentMissingOne': msg('{count} component missing'),
|
|
1134
1091
|
'builder.clipboard.summary.componentsMissing': msg('{count} components missing'),
|
|
1135
1092
|
'builder.reuse.makeReusable': msg('Make reusable'),
|