zulip/web/shared
N-Shar-ma b6a04aaa83 typeahead: Add option for word order not mattering for query matching.
Uptil now, the `query_matches_string_in_order` function would respect
the order of words in the query string when matching a source string.
This meant that for query "two one", the source string "one two three"
would not be matched.

For more flexibility, a new function, `query_matches_string_in_any_order`,
has been added., which returns true if each word in the query string matches
the prefix of a distinct word in the source string, else it returns false.

The algorithm for computing this is quadratic in terms of the source word
count so can be a little expensive, but it is only currently used for
searching topics in Recent Conversations, where the strings' length is
limited by the max stream / topic name length allowed, so this should be
performant enough for this use case.
2024-03-22 15:20:40 -07:00
..
icons gear_menu_popover: Update the rocket icon used for plan and pricing. 2023-12-13 07:59:13 -08:00
src typeahead: Add option for word order not mattering for query matching. 2024-03-22 15:20:40 -07:00
tools
.gitignore
.npmrc
README.md
package.json
tsconfig.json dependencies: Upgrade JavaScript dependencies. 2024-01-29 16:14:26 -08:00

README.md

The files in this subtree are part of the Zulip web frontend, and are also incorporated by the Zulip mobile app.

Note that the deployment cycles are different:

  • In the web app, this code is deployed in the same way as the rest of the web frontend: it's part of the server tree, and the browser gets it from the server, so the client is always running the same version the server just gave it.

  • In the mobile app, this code is deployed in the same way as the rest of the mobile app: it's bundled up into the app binary which is uploaded to app stores and users install on their devices. The client will be running the version built into their version of the mobile app, which may be newer, older, or simply different from the version on the server.

    The mobile app always refers to a specific version of this code; changes to this code will appear in the mobile app only after a commit in the mobile app pulls them in.

To update the version of @zulip/shared on NPM, see the instructions in the mobile repo.