Previously, we maintained separate registeries for the screenshot
configurations - `WEBHOOK_SCREENSHOT_CONFIG`,
`FIXTURELESS_SCREENSHOT_CONFIG`, `DOC_SCREENSHOT_CONFIG`. Now, all
integration-related configuration is in a single registry
`INTEGRATIONS`.
Updated all mentions of DOC_SCREENSHOT_CONFIG in the docs.
This will help us clearly define which operators we need to write
logic for.
Especially useful when we will define different operand types for
each operator.
This file was meant to be shared with the zulip react native app. Since
we have moved to zulip-flutter app in production as well, we can move
this file to web/src.
We also remove mentions of these files from webpack config and some test
config since all these files have moved to web/src with this commit.
https://chat.zulip.org/#narrow/channel/6-frontend/topic/web.2Fshared
Decision made in https://chat.zulip.org/#narrow/channel/19-documentation/topic/integrations.20docs.20per-page.20info/near/2268569
Integrations and the related docs were all running as an SPA. But to run
them in single page, we had a lot of logic on the frontend to make this
happen. We noticed that we missed to replicate page title changes on the
frontend. With the added burden of maintaining that integrations.ts page
navigation code and the uncertainty of not knowing what we might have
missed to replicate on the frontend, we decided to just render all the
pages server side while keeping our search on the backend.
This commit splits index.html into two templates, catalog.html for
integrations catalog and doc.html for the individual integration details
page.
We use a @typed_endpoint instead of a class based view since there are
very few class based views left in our codebase and this felt like a
nice opportunity to have integrations use them as well.
We port over any special non-navigation logic we were doing in
integrations.ts serverside.
We used to use animations for the lozenges when changing categories, we
don't do that anymore, since every category is a new page fetch and
animation does not make sense in that case.
We also port over the logic of adding the `without-category` class to
the lozenge icon on the indivdidual integration doc page.
We have a few integrations with legacy set to true. We used to set
their display to none in the CSS for the catalog page and we used to
remove that legacy class in integrations.ts for the individual doc page.
We remove legacy integrations from `visible_integrations` now, while the
individual doc page of the legacy integration works just fine without
the use of `legacy` class anywhere.
It extracts CZO links from issues and PRs, and also searches
web-public channels in CZO for those same issue and PR numbers to
collect more CZO topic links.
This adds a new field in the "Organization settings" menu for the
moderation request channel. It only includes private channels as the
dropdown options.
Fixes#20047.
Co-authored-by: Adam Sah <140002+asah@users.noreply.github.com>
Co-authored-by: Alya Abbott <alya@zulip.com>
Fixed feature level in topic name where notification is sent. Also,
changelog entries will be included in the notification message instead
of only changed endpoints.
Migrate `stream_name` in Integration class to `channel` in
`WebhookScreenshotConfig` and `FixturelessScreenshotConfig` dataclasses.
`stream_name` is being used only when generating screenshots, and
hence belongs better in the screenshot config objects.
In the next commit, the ScreenshotConfig will be added as an Integration
property.
The `gh pr list --search` results may have an _empty_ state for the
first several seconds, leading to this immediately aborting, deleting
the branch and closing the PR.
Help center dev server always runs on a port different than the web
app. We have relative URLs pointing to the web app in the help
center, but they are not on the port help center is running on. We
redirect instead to our web app proxy port.
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm, --test-custom-db, Debian 12 production install with custom db name and user, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:jammy, , Ubuntu 22.04 production install and PostgreSQL upgrade with pgroonga, jammy) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:bookworm, --test-custom-db, Debian 12 production install with custom db name and user, bookworm) (push) Has been cancelled
Zulip production suite / ${{ matrix.name }} (zulip/ci:jammy, , Ubuntu 22.04 production install and PostgreSQL upgrade with pgroonga, jammy) (push) Has been cancelled
For get and filter queries of NamedUserGroup, realm_for_sharding
field is used instead of realm field, as directly using
realm_for_sharding field on NamedUserGroup makes the query faster
than using realm present on the base UserGroup table.