| 1 | // Check that the input is a valid number |
| 2 | function setSuggestionsForNumberInput(query: string, result: SuggestionResults, completions?: string[]) { |
| 3 | if (query === '') { |
| 4 | result.setSuggestions(completions ?? []) |
| 5 | } else if (!Number.isFinite(Number(query))) { |
| 6 | result.setError("Please enter a numeric value") |
| 7 | } else if (Number(query) <= 0) { |
| 8 | result.setError("Must be larger than 0") |
| 9 | } else { |
| 10 | const filteredCompletions = completions ? completions.filter(s => s.includes(query) && s !== query) : [] |
| 11 | result.setSuggestions([query, ...filteredCompletions]) |
| 12 | } |
| 13 | } |
| 14 | |
| 15 | // The 'input' event listens for text change in the Quick Actions box after a plugin is 'Tabbed' into. |
| 16 | figma.parameters.on('input', ({query, key, result}: ParameterInputEvent) => { |