0
0
Fork 0
mirror of https://github.com/discourse/discourse.git synced 2026-08-12 05:37:26 +08:00
discourse/plugins/poll
David Taylor d46dc3407b
DEV: Improve cross-plugin/theme import handling
1. Remove 'federated exports' system, which was named entrypoint exports for every module inside the plugin. Replace it with a single import of the target plugin's 'compatModules', and then update call sites to do a 'just in time' lookup of the module and export. This is implemented in a new `babel-resolve-plugin-imports` plugin

2. Update theme & plugin build systems to produce a list of external plugins which are imported. For plugins, it's stored in the manifest. For themes, it's stored in a new column of the javascript_caches table.

3. Refactor theme extra_js loading to use a more structured data model, and move the HTML generation to the erb template

4. Update core importmap to identify any missing plugin dependencies and add a fake placeholder module for them. This allows the imports to exist without causing a boot error. The imported values will resolve to 'null'.

5. Update core plugins to remove use of `optionalRequire`, and replace it with simple imports. These are now functionally equivalent, but without leaning on the legacy `loader.js` system of core

Co-authored-by: Jarek Radosz <jarek@cvx.dev>
2026-06-16 23:51:05 +01:00
..
app FIX: Respect poll result visibility for ranked-choice outcomes (#40578) 2026-06-04 12:04:38 -03:00
assets DEV: Improve cross-plugin/theme import handling 2026-06-16 23:51:05 +01:00
config I18N: Update translations (#40680) 2026-06-09 17:21:49 +02:00
db/migrate FEATURE: dynamic poll support (#34368) 2025-08-19 16:43:36 +10:00
jobs/regular
lib FIX: Respect poll result visibility for ranked-choice outcomes (#40578) 2026-06-04 12:04:38 -03:00
spec FIX: Respect poll result visibility for ranked-choice outcomes (#40578) 2026-06-04 12:04:38 -03:00
test/javascripts FIX: Respect poll result visibility for ranked-choice outcomes (#40578) 2026-06-04 12:04:38 -03:00
package.json DEV: Add a script for generating external types in discourse-types (#37095) 2026-03-09 20:37:43 +01:00
plugin.rb FEATURE: Prompt anonymous users to sign up after engagement clicks (#40256) 2026-05-26 09:30:38 +02:00
tsconfig.json DEV: Add a script for generating external types in discourse-types (#37095) 2026-03-09 20:37:43 +01:00