MCPcopy
hub / github.com/tw-in-js/twind / interpolate

Function interpolate

packages/core/src/internal/interpolate.ts:5–19  ·  view source on GitHub ↗
(
  strings: TemplateStringsArray | Class,
  interpolations: Class[],
)

Source from the content-addressed store, hash-verified

3
4// based on https://github.com/lukeed/clsx and https://github.com/jorgebucaran/classcat
5export function interpolate(
6 strings: TemplateStringsArray | Class,
7 interpolations: Class[],
8): string {
9 return Array.isArray(strings) && Array.isArray((strings as unknown as TemplateStringsArray).raw)
10 ? interleave(strings as unknown as TemplateStringsArray, interpolations, (value) =>
11 toString(value).trim(),
12 )
13 : interpolations
14 .filter(Boolean)
15 .reduce(
16 (result: string, value) => result + toString(value),
17 strings ? toString(strings as Class) : '',
18 )
19}
20
21function toString(value: Class): string {
22 let result = ''

Callers 4

cxFunction · 0.90
alias$Function · 0.90
txFunction · 0.90
toStringFunction · 0.85

Calls 2

interleaveFunction · 0.90
toStringFunction · 0.70

Tested by

no test coverage detected