Go to file
David Taylor 569b566d38
FIX: Multiple placeholders in a single post (#40)
The changes in 948634fe31 meant that only the most-recently-changed placeholder is actually applied.

This commit refactors things so that we store all placeholder values in JS, and then apply them all in a single pass over the DOM. As well as fixing the bug, this should be a significant perf improvement for posts with lots of placeholders

Also introduces some simple system specs.
---------

Co-authored-by: Joffrey JAFFEUX <j.jaffeux@gmail.com>
2024-08-29 12:37:21 +01:00
.github/workflows DEV: Update CI workflows (#18) 2023-01-10 19:30:47 +00:00
common DEV: Use the new modal api (#26) 2023-12-05 23:15:32 +01:00
javascripts/discourse FIX: Multiple placeholders in a single post (#40) 2024-08-29 12:37:21 +01:00
locales Update translations (#37) 2024-08-20 17:54:48 +02:00
mobile removes links and clear placeholders for now 2020-04-22 12:41:42 +02:00
spec/system FIX: Multiple placeholders in a single post (#40) 2024-08-29 12:37:21 +01:00
test/acceptance DEV: Update linting (#28) 2024-03-27 18:55:28 +01:00
.discourse-compatibility DEV: Update compatibility file 2024-08-29 10:16:48 +01:00
.eslintrc.cjs DEV: Update linting (#28) 2024-03-27 18:55:28 +01:00
.gitignore DEV: Add CI setup and fix linting issues (#9) 2022-06-18 21:27:31 +02:00
.prettierrc.cjs DEV: Update linting (#28) 2024-03-27 18:55:28 +01:00
.template-lintrc.cjs DEV: Update linting (#28) 2024-03-27 18:55:28 +01:00
LICENSE init 2019-05-14 11:18:12 +02:00
README.md plugin-> theme component (#20) 2023-02-04 15:57:50 +01:00
about.json Update about.json (#29) 2024-06-09 10:09:13 +01:00
package.json DEV: Update linting (#28) 2024-03-27 18:55:28 +01:00
translator.yml DEV: Add Crowdin support (#30) 2024-06-11 13:37:43 +02:00
yarn.lock Build(deps): bump braces from 3.0.2 to 3.0.3 (#33) 2024-06-20 11:33:33 +02:00

README.md

discourse-placeholder-theme-component

https://meta.discourse.org/t/discourse-placeholder-theme-component/113533

Usage

[wrap=placeholder key=NAME][/wrap]
[wrap=placeholder key=COUNTRY default=FR][/wrap]
[wrap=placeholder key=SECRET description="Used to open the bank"][/wrap]

I'm =NAME=, I come from =COUNTRY= let me tell you my secret: =SECRET==

Feedback

If you have issues or suggestions for the theme component, please bring them up on Discourse Meta.