{"version":3,"file":"popular.js","sources":["popular.jsx"],"sourcesContent":["\"use strict\";\nconst { h, render, Component } = preact;\n/** @jsx h */\ndocument.body.firstChild.remove();\n\nconst jsonParse = text => {\n const dateFormat = /^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}Z$/;\n function reviver(key, value) {\n if (typeof value === \"string\" && dateFormat.test(value)) {\n return new Date(value);\n }\n return value;\n }\n return JSON.parse(text, reviver);\n};\n\nconst fixupTags = result => {\n if (result.t.length === 1 && result.t[0] === \"\") {\n result.t.shift();\n }\n};\n\nconst FormatDate = ({ date }) => {\n const display = moment.utc(date).fromNow();\n const raw = date.toISOString();\n return ;\n};\n\nconst Tags = ({ children }) => (\n \n);\n\nconst Card = ({ link }) => (\n
\n
\n {link.d}\n
\n
\n by {link.a}\n
\n {link.t}\n

{link.n}

\n
\n);\n\nclass Demo extends Component {\n constructor(props) {\n super(props);\n this.setState({ loading: true });\n }\n async componentDidMount() {\n const contents = jsonParse(\n await fetch(\"popular.json\").then(res => res.text())\n );\n contents.forEach(fixupTags);\n this.setState({ loading: false, contents });\n }\n render(props, { loading, contents }) {\n if (loading) {\n return

loading

;\n }\n return (\n \n );\n }\n}\n\nrender(, document.body);\n"],"names":[],"mappings":"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"}