Skip to content

Justflows 0.3.9

Choose a tag to compare

@NOOBBase NOOBBase released this 28 Oct 17:45
892eb49

[0.3.9]

Added

  • SDK: plugins translate their own admin menu labels. An adminMenu entry's labelKey is now looked up in the plugin's own adminApp.locales catalogs before core's, and a new labels field takes per-locale labels straight from the manifest, for plugins without an admin app. The sidebar, page heading, and browser title use the label for the admin language, so a plugin no longer needs a key in core's catalogs. Forms and Cookie Consent now use it, so core's catalogs hold no plugin menu labels. (#192)

  • SDK: plugin pages name their roles, plugins adjust their settings form, and network handlers can link to a site. An adminMenu entry takes roles, the roles that may open that page (a role the plugin registers, for example); without it the page keeps the administrator and editor rule. The plugin.settings.schema filter lets a plugin drop fields or fill select options for the current site. ctx.network.site(siteId?) returns one live site and its public address from any site, the main site when no id is given. ctx.captcha.verify without an action now expects the plugin's own name (helpdesk for justflows.helpdesk). (#189)

  • SDK: image fields, image helpers, and live previews for plugin blocks. A plugin block field can be images, a list of images added by upload, from the media library, or by URL, with alt text and a caption. For media and images fields the host adds the media library's responsive derivatives as a responsive prop. The SDK now exports renderResponsiveImage, applyResponsiveProp, escapeHtml, and safeMediaSrc, so a plugin renders images the way core.image does. The page builder previews a plugin block with the block's own render, sanitized like an HTML block, instead of showing its type name. (#190)

  • SDK: plugins shape a public page's title, canonical link, and site identity. New html.title, html.canonical, and site.identity filters, and html.head now receives the page's content type and fields, description, canonical URL, share image, origin, and whether it is indexable (PublicPageContext). (#191)

  • SDK: plugins add sections to the content editor. editorPanels in a plugin manifest adds content editor sections with text, textarea, URL, image, and checkbox fields, labelled per admin language. Values are saved in the entry's fields. A panel can be limited to content types that are included in search engines. (#191)

Removed

  • The Cookie Consent screen left core. Its page, route, nav rule, and strings (nav.consent, consent.*) are gone from the admin; Cookie Consent 1.1.0 ships the same screen as its own admin app in all 8 admin languages. Update Cookie Consent to 1.1.0 together with this release, because an older plugin has no screen on this core. (#186)

  • Forms code left core. Core no longer answers /justflows-forms/*: the CORS headers, preflight, CSRF exemption, and submit rate limit, the static-export pass-through and .htaccess / nginx rules, the reserved slugs, the admin nav rule, and nav.forms are gone. Forms 0.3.0 serves its endpoints as its own routes under /api/forms/, which static export already passes through, and registers its own CSRF opt-out and rate limit. Update Forms to 0.3.0 together with this release, and re-run the static export so exported pages use the new endpoints. (#188)

  • Helpdesk code left core. Core no longer builds the admin Support button, points the public support popup at another site, changes Helpdesk's settings form, or gives the Support agent role access to Helpdesk pages. Helpdesk 0.2.0 does all of this itself with the SDK additions above. Update Helpdesk to 0.2.0 together with this release; until then other sites show no admin Support button and Support agents cannot open Helpdesk. (#189)

  • Gallery code left core. Core no longer renders the Gallery block, skips the Gallery plugin's code, or ships a Gallery editor and preview in the page builder. Gallery 0.3.0 registers its block itself with the SDK additions above; existing galleries keep their images, captions, layout, columns, and lightbox. Update Gallery to 0.3.0 together with this release; until then galleries do not show on public pages. The builder's Gallery layout, columns, and lightbox labels are now the plugin's own English labels. (#190)

  • SEO output left core. Core no longer reads the SEO plugin's settings to write meta descriptions, Open Graph and Twitter tags, JSON-LD, the title template, the site title and tagline override, or extra sitemap paths, and the SEO plugin is no longer a runtime special case (hostCooperative is gone). Without an SEO plugin a page still gets its plain <title>, a canonical link, and a basic /sitemap.xml. SEO Toolkit 0.2.0 adds the rest through the new filters; update it together with this release, because an older version leaves pages without those tags. (#191)

  • The SEO fields left the content editor's core. The SEO section (SEO title, meta description, canonical URL, social image, and feed exclusion) is now SEO Toolkit 0.3.0's own editor panel, in all 8 admin languages; existing values are kept. Without SEO Toolkit the editor no longer shows an SEO section. (#191)

Fixed

  • The root pnpm typecheck passes again. A @justflows/plugin-api test for operatorKey.ensure used untyped hook handler parameters, so the test typecheck failed although the tests passed. (#194)