{"componentChunkName":"component---src-templates-example-page-js","path":"/tutorial-example22-setting-width-height","result":{"data":{"examplePageJson":{"title":"22. Setting Width, Height","codeJs":"\n    <span class=\"token keyword\">const</span> columnData <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span>\n      <span class=\"token punctuation\">{</span>\n        <span class=\"token literal-property property\">header</span><span class=\"token operator\">:</span> <span class=\"token string\">'Name'</span><span class=\"token punctuation\">,</span>\n        <span class=\"token literal-property property\">name</span><span class=\"token operator\">:</span> <span class=\"token string\">'name'</span>\n      <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n      <span class=\"token punctuation\">{</span>\n        <span class=\"token literal-property property\">header</span><span class=\"token operator\">:</span> <span class=\"token string\">'Artist'</span><span class=\"token punctuation\">,</span>\n        <span class=\"token literal-property property\">name</span><span class=\"token operator\">:</span> <span class=\"token string\">'artist'</span>\n      <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n      <span class=\"token punctuation\">{</span>\n        <span class=\"token literal-property property\">header</span><span class=\"token operator\">:</span> <span class=\"token string\">'Type'</span><span class=\"token punctuation\">,</span>\n        <span class=\"token literal-property property\">name</span><span class=\"token operator\">:</span> <span class=\"token string\">'type'</span>\n      <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n      <span class=\"token punctuation\">{</span>\n        <span class=\"token literal-property property\">header</span><span class=\"token operator\">:</span> <span class=\"token string\">'Release'</span><span class=\"token punctuation\">,</span>\n        <span class=\"token literal-property property\">name</span><span class=\"token operator\">:</span> <span class=\"token string\">'release'</span>\n      <span class=\"token punctuation\">}</span><span class=\"token punctuation\">,</span>\n      <span class=\"token punctuation\">{</span>\n        <span class=\"token literal-property property\">header</span><span class=\"token operator\">:</span> <span class=\"token string\">'Genre'</span><span class=\"token punctuation\">,</span>\n        <span class=\"token literal-property property\">name</span><span class=\"token operator\">:</span> <span class=\"token string\">'genre'</span>\n      <span class=\"token punctuation\">}</span>\n    <span class=\"token punctuation\">]</span><span class=\"token punctuation\">;</span>\n\n    <span class=\"token keyword\">function</span> <span class=\"token function\">createGrid</span><span class=\"token punctuation\">(</span><span class=\"token parameter\">width<span class=\"token punctuation\">,</span> height</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n      <span class=\"token keyword\">return</span> <span class=\"token keyword\">new</span> <span class=\"token class-name\">tui<span class=\"token punctuation\">.</span>Grid</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">{</span>\n        <span class=\"token literal-property property\">el</span><span class=\"token operator\">:</span> document<span class=\"token punctuation\">.</span><span class=\"token function\">getElementById</span><span class=\"token punctuation\">(</span><span class=\"token string\">'grid'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>\n        <span class=\"token literal-property property\">data</span><span class=\"token operator\">:</span> gridData<span class=\"token punctuation\">,</span>\n        <span class=\"token literal-property property\">columns</span><span class=\"token operator\">:</span> <span class=\"token function\">createColumns</span><span class=\"token punctuation\">(</span>width<span class=\"token punctuation\">)</span><span class=\"token punctuation\">,</span>\n        <span class=\"token operator\">...</span><span class=\"token function\">createRowHeight</span><span class=\"token punctuation\">(</span>height<span class=\"token punctuation\">)</span>\n      <span class=\"token punctuation\">}</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n    <span class=\"token punctuation\">}</span>\n\n    <span class=\"token keyword\">function</span> <span class=\"token function\">createColumns</span><span class=\"token punctuation\">(</span><span class=\"token parameter\">width</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n      <span class=\"token keyword\">const</span> columns <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">;</span>\n\n      columnData<span class=\"token punctuation\">.</span><span class=\"token function\">forEach</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">(</span><span class=\"token parameter\"><span class=\"token punctuation\">{</span> header<span class=\"token punctuation\">,</span> name <span class=\"token punctuation\">}</span></span><span class=\"token punctuation\">)</span> <span class=\"token operator\">=></span> <span class=\"token punctuation\">{</span>\n        <span class=\"token keyword\">const</span> column <span class=\"token operator\">=</span> <span class=\"token punctuation\">{</span>\n          header<span class=\"token punctuation\">,</span>\n          name<span class=\"token punctuation\">,</span>\n          width\n        <span class=\"token punctuation\">}</span><span class=\"token punctuation\">;</span>\n        <span class=\"token comment\">// If the width is less than 50, minWidth should be set.</span>\n        <span class=\"token keyword\">if</span> <span class=\"token punctuation\">(</span>width <span class=\"token operator\">&lt;</span> <span class=\"token number\">50</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n          column<span class=\"token punctuation\">.</span>minWidth <span class=\"token operator\">=</span> width<span class=\"token punctuation\">;</span>\n        <span class=\"token punctuation\">}</span>\n        columns<span class=\"token punctuation\">.</span><span class=\"token function\">push</span><span class=\"token punctuation\">(</span>column<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n      <span class=\"token punctuation\">}</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n\n      console<span class=\"token punctuation\">.</span><span class=\"token function\">log</span><span class=\"token punctuation\">(</span><span class=\"token string\">'columns option'</span><span class=\"token punctuation\">,</span> columns<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n      <span class=\"token keyword\">return</span> columns<span class=\"token punctuation\">;</span>\n    <span class=\"token punctuation\">}</span>\n\n    <span class=\"token keyword\">function</span> <span class=\"token function\">createRowHeight</span><span class=\"token punctuation\">(</span><span class=\"token parameter\">height</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n      <span class=\"token keyword\">const</span> option <span class=\"token operator\">=</span> <span class=\"token punctuation\">{</span> <span class=\"token literal-property property\">rowHeight</span><span class=\"token operator\">:</span> height <span class=\"token punctuation\">}</span><span class=\"token punctuation\">;</span>\n\n      <span class=\"token comment\">// If the height is less than 40, minRowHeight should be set.</span>\n      <span class=\"token keyword\">if</span> <span class=\"token punctuation\">(</span>height <span class=\"token operator\">&lt;</span> <span class=\"token number\">40</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n        option<span class=\"token punctuation\">.</span>minRowHeight <span class=\"token operator\">=</span> height<span class=\"token punctuation\">;</span>\n      <span class=\"token punctuation\">}</span>\n\n      console<span class=\"token punctuation\">.</span><span class=\"token function\">log</span><span class=\"token punctuation\">(</span><span class=\"token string\">'rowHeight option'</span><span class=\"token punctuation\">,</span> option<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n      <span class=\"token keyword\">return</span> option<span class=\"token punctuation\">;</span>\n    <span class=\"token punctuation\">}</span>\n\n    <span class=\"token keyword\">let</span> width <span class=\"token operator\">=</span> <span class=\"token number\">150</span><span class=\"token punctuation\">;</span>\n    <span class=\"token keyword\">let</span> height <span class=\"token operator\">=</span> <span class=\"token number\">70</span><span class=\"token punctuation\">;</span>\n    <span class=\"token keyword\">let</span> grid <span class=\"token operator\">=</span> <span class=\"token function\">createGrid</span><span class=\"token punctuation\">(</span>width<span class=\"token punctuation\">,</span> height<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n\n    document<span class=\"token punctuation\">.</span><span class=\"token function\">getElementById</span><span class=\"token punctuation\">(</span><span class=\"token string\">'width'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">.</span><span class=\"token function\">addEventListener</span><span class=\"token punctuation\">(</span><span class=\"token string\">'change'</span><span class=\"token punctuation\">,</span> <span class=\"token parameter\">ev</span> <span class=\"token operator\">=></span> <span class=\"token punctuation\">{</span>\n      width <span class=\"token operator\">=</span> <span class=\"token function\">Number</span><span class=\"token punctuation\">(</span>ev<span class=\"token punctuation\">.</span>target<span class=\"token punctuation\">.</span>value<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n\n      <span class=\"token keyword\">if</span> <span class=\"token punctuation\">(</span>grid<span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n        grid<span class=\"token punctuation\">.</span><span class=\"token function\">destroy</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n        document<span class=\"token punctuation\">.</span><span class=\"token function\">getElementById</span><span class=\"token punctuation\">(</span><span class=\"token string\">'grid'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">.</span>style<span class=\"token punctuation\">.</span>width <span class=\"token operator\">=</span> <span class=\"token template-string\"><span class=\"token template-punctuation string\">`</span><span class=\"token interpolation\"><span class=\"token interpolation-punctuation punctuation\">${</span>width <span class=\"token operator\">*</span> <span class=\"token number\">5</span> <span class=\"token operator\">+</span> <span class=\"token number\">18</span><span class=\"token interpolation-punctuation punctuation\">}</span></span><span class=\"token string\">px</span><span class=\"token template-punctuation string\">`</span></span><span class=\"token punctuation\">;</span>\n      <span class=\"token punctuation\">}</span>\n\n      grid <span class=\"token operator\">=</span> <span class=\"token function\">createGrid</span><span class=\"token punctuation\">(</span>width<span class=\"token punctuation\">,</span> height<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n    <span class=\"token punctuation\">}</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n\n    document<span class=\"token punctuation\">.</span><span class=\"token function\">getElementById</span><span class=\"token punctuation\">(</span><span class=\"token string\">'height'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">.</span><span class=\"token function\">addEventListener</span><span class=\"token punctuation\">(</span><span class=\"token string\">'change'</span><span class=\"token punctuation\">,</span> <span class=\"token parameter\">ev</span> <span class=\"token operator\">=></span> <span class=\"token punctuation\">{</span>\n      height <span class=\"token operator\">=</span> <span class=\"token function\">Number</span><span class=\"token punctuation\">(</span>ev<span class=\"token punctuation\">.</span>target<span class=\"token punctuation\">.</span>value<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n\n      <span class=\"token keyword\">if</span> <span class=\"token punctuation\">(</span>grid<span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n        grid<span class=\"token punctuation\">.</span><span class=\"token function\">destroy</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n        document<span class=\"token punctuation\">.</span><span class=\"token function\">getElementById</span><span class=\"token punctuation\">(</span><span class=\"token string\">'grid'</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">.</span>style<span class=\"token punctuation\">.</span>height <span class=\"token operator\">=</span> <span class=\"token template-string\"><span class=\"token template-punctuation string\">`</span><span class=\"token interpolation\"><span class=\"token interpolation-punctuation punctuation\">${</span>height <span class=\"token operator\">*</span> <span class=\"token number\">20</span> <span class=\"token operator\">+</span> <span class=\"token number\">17</span><span class=\"token interpolation-punctuation punctuation\">}</span></span><span class=\"token string\">px</span><span class=\"token template-punctuation string\">`</span></span><span class=\"token punctuation\">;</span>\n      <span class=\"token punctuation\">}</span>\n\n      grid <span class=\"token operator\">=</span> <span class=\"token function\">createGrid</span><span class=\"token punctuation\">(</span>width<span class=\"token punctuation\">,</span> height<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n    <span class=\"token punctuation\">}</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  ","codeHtml":"\n        <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>div</span> <span class=\"token attr-name\">id</span><span class=\"token attr-value\"><span class=\"token punctuation attr-equals\">=</span><span class=\"token punctuation\">\"</span>grid<span class=\"token punctuation\">\"</span></span> <span class=\"token special-attr\"><span class=\"token attr-name\">style</span><span class=\"token attr-value\"><span class=\"token punctuation attr-equals\">=</span><span class=\"token punctuation\">\"</span><span class=\"token value css language-css\"><span class=\"token property\">width</span><span class=\"token punctuation\">:</span> 768px</span><span class=\"token punctuation\">\"</span></span></span><span class=\"token punctuation\">></span></span><span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>div</span><span class=\"token punctuation\">></span></span>\n      "},"file":{"relativePath":"examples/example22-setting-width-height.html"}},"pageContext":{"id":"tutorial-example22-setting-width-height","filename":"example22-setting-width-height"}},"staticQueryHashes":["1348573739","1897965698","2583274425","4108157242"]}