mapcomplete/test.ts

66 lines
2.2 KiB
TypeScript
Raw Normal View History

2021-06-16 17:09:32 +02:00
import ValidatedTextField from "./UI/Input/ValidatedTextField";
2021-06-14 19:21:33 +02:00
import Combine from "./UI/Base/Combine";
2021-06-16 14:23:53 +02:00
import {VariableUiElement} from "./UI/Base/VariableUIElement";
2021-06-16 21:23:03 +02:00
import {UIEventSource} from "./Logic/UIEventSource";
import TagRenderingConfig from "./Customizations/JSON/TagRenderingConfig";
import State from "./State";
import TagRenderingQuestion from "./UI/Popup/TagRenderingQuestion";
2021-06-17 13:17:16 +02:00
import {SlideShow} from "./UI/Image/SlideShow";
import {FixedUiElement} from "./UI/Base/FixedUiElement";
import Img from "./UI/Base/Img";
import {AttributedImage} from "./UI/Image/AttributedImage";
import {Imgur} from "./Logic/Web/Imgur";
2021-06-14 17:28:11 +02:00
2021-06-17 13:17:16 +02:00
function TestSlideshow(){
const elems = new UIEventSource([
new FixedUiElement("A"),
new FixedUiElement("qmsldkfjqmlsdkjfmqlskdjfmqlksdf").SetClass("text-xl"),
new Img("https://i.imgur.com/8lIQ5Hv.jpg"),
new AttributedImage("https://i.imgur.com/y5XudzW.jpg", new Imgur()),
2021-06-17 13:17:16 +02:00
new Img("https://www.grunge.com/img/gallery/the-real-reason-your-cat-sleeps-so-much/intro-1601496900.webp")
])
new SlideShow(elems).AttachTo("maindiv")
}
2021-06-16 21:23:03 +02:00
function TestTagRendering(){
State.state = new State(undefined)
const tagsSource = new UIEventSource({
id:"node/1"
})
new TagRenderingQuestion(
tagsSource,
new TagRenderingConfig({
multiAnswer: false,
freeform: {
key:"valve"
},
question: "What valves are supported?",
render: "This pump supports {valve}",
mappings: [
{
if: "valve=dunlop",
then: "This pump supports dunlop"
},
{
if:"valve=shrader",
then:"shrader is supported",
}
],
}, undefined, "test")
).AttachTo("maindiv")
new VariableUiElement(tagsSource.map(tags => tags["valves"])).SetClass("alert").AttachTo("extradiv")
}
function TestAllInputMethods(){
new Combine(ValidatedTextField.tpList.map(tp => {
const tf = ValidatedTextField.InputForType(tp.name);
return new Combine([tf, new VariableUiElement(tf.GetValue()).SetClass("alert")]);
})).AttachTo("maindiv")
}
2021-06-17 13:17:16 +02:00
TestSlideshow()