mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2025-10-16 12:05:41 +00:00
48 lines
1.5 KiB
TypeScript
48 lines
1.5 KiB
TypeScript
import format = require("string-template");
|
|
import compile = require("string-template/compile");
|
|
|
|
// Format tests
|
|
{
|
|
let greeting: string;
|
|
|
|
// Format using an object hash with keys matching [0-9a-zA-Z]+
|
|
greeting = format("Hello {name}, you have {count} unread messages", { name: "Robert", count: 12 })
|
|
// greeting -> "Hello Robert, you have 12 unread messages"
|
|
|
|
// Format using a number indexed array
|
|
greeting = format("Hello {0}, you have {1} unread messages", ["Robert", 12])
|
|
// greeting -> "Hello Robert, you have 12 unread messages"
|
|
|
|
// Format using optional arguments
|
|
greeting = format("Hello {0}, you have {1} unread messages", "Robert", 12)
|
|
// greeting -> "Hello Robert, you have 12 unread messages"
|
|
|
|
// Escape {} pairs by using double {{}}
|
|
let text: string = format("{{0}}")
|
|
// text -> "{0}"
|
|
}
|
|
|
|
|
|
// Compile tests
|
|
{
|
|
{
|
|
let greetingTemplate = compile("Hello {0}, you have {1} unread messages", true)
|
|
// -> greetingTemplate generated using new Function
|
|
let greeting = greetingTemplate("Robert", 12)
|
|
// -> "Hello Robert, you have 12 unread messages"
|
|
}
|
|
|
|
{
|
|
let greetingTemplate = compile("Hello {0}, you have {1} unread messages", true)
|
|
// -> greetingTemplate generated using new Function
|
|
|
|
let greeting = greetingTemplate(["Robert", 12])
|
|
// -> "Hello Robert, you have 12 unread messages"
|
|
}
|
|
|
|
{
|
|
let template = compile("{likes} people have liked this")
|
|
let result = template({ likes: 123 })
|
|
}
|
|
}
|