0
0
mirror of https://github.com/naturalcrit/homebrewery.git synced 2026-01-27 22:33:07 +00:00

add support for function values

This commit is contained in:
Charlie Humphreys
2023-07-15 00:58:37 -05:00
parent 4c087e9aa5
commit e6055bd417
3 changed files with 3 additions and 3 deletions

View File

@@ -23,7 +23,7 @@ export const PATTERNS = {
[SNIPPET_TYPE.INJECTOR] : ()=>new RegExp(`^\\!\\[(?:[a-zA-Z -]+)?\\]\\(.*\\).*{[a-zA-Z0-9:, "'-]+}$`), [SNIPPET_TYPE.INJECTOR] : ()=>new RegExp(`^\\!\\[(?:[a-zA-Z -]+)?\\]\\(.*\\).*{[a-zA-Z0-9:, "'-]+}$`),
}, },
field : { field : {
[FIELD_TYPE.TEXT] : (name)=>new RegExp(`[{,;](${name}):("[^},;"]*"|[^},;]*)`), [FIELD_TYPE.TEXT] : (name)=>new RegExp(`[{,;](${name}):([^};,"\\(]*\\((?!,)[^};"\\)]*\\)|"[^},;"]*"|[^},;]*)`),
}, },
collectStyles : new RegExp(`(?:([a-zA-Z-]+):(?!\\/))+`, 'g'), collectStyles : new RegExp(`(?:([a-zA-Z-]+):(?!\\/))+`, 'g'),
}; };

View File

@@ -100,7 +100,7 @@ const Text = createClass({
const { code } = e; const { code } = e;
const { field } = this.props; const { field } = this.props;
const { value } = this.state; const { value } = this.state;
const match = value.match(NUMBER_PATTERN); const match = value?.match(NUMBER_PATTERN);
if(code === 'ArrowDown') { if(code === 'ArrowDown') {
if(match && match[3] && CSS.supports(field.name, value)) { if(match && match[3] && CSS.supports(field.name, value)) {
e.preventDefault(); e.preventDefault();

View File

@@ -63,7 +63,7 @@ module.exports = function(widgets, cm, setHints) {
add(spec.mediaFeatures); add(spec.mediaFeatures);
} }
result = result.map((h)=>({ hint: h, type: HINT_TYPE.VALUE })) result = result.map((h)=>({ hint: h, type: HINT_TYPE.VALUE }))
.filter((h)=>CSS.supports(field.name, h.hint)); .filter((h)=>CSS.supports(field.name, h.hint) && h.hint.includes(value ?? ''));
const numberSuffix = word.slice(-4).replaceAll(/\d/g, ''); const numberSuffix = word.slice(-4).replaceAll(/\d/g, '');
if(token.type === 'number' && !UNITS.includes(numberSuffix)) { if(token.type === 'number' && !UNITS.includes(numberSuffix)) {