-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathcomponent---src-pages-examples-tsx-47ccd72de612c930c9b2.js.map
1 lines (1 loc) · 51.3 KB
/
component---src-pages-examples-tsx-47ccd72de612c930c9b2.js.map
1
{"version":3,"sources":["webpack:///./node_modules/reactstrap/es/TabContext.js","webpack:///./node_modules/reactstrap/es/TabContent.js","webpack:///./node_modules/reactstrap/es/TabPane.js","webpack:///./content/examples/examplesData.tsx","webpack:///../node_modules/strict-uri-encode/index.js","webpack:///../node_modules/decode-uri-component/index.js","webpack:///../node_modules/split-on-first/index.js","webpack:///../node_modules/query-string/index.js","webpack:///../src/index.js","webpack:///./src/components/SamplesWrapper.tsx","webpack:///./src/pages/examples.tsx"],"names":["TabContext","createContext","propTypes","tag","activeTab","any","className","string","cssModule","object","_Component","TabContent","props","_this","call","this","state","getDerivedStateFromProps","nextProps","prevState","prototype","render","_this$props","Tag","attributes","Object","keys","classes","createElement","Provider","value","activeTabId","defaultProps","_excluded","TabPane","tabId","getClasses","active","Consumer","_ref","ExternalLink","to","title","children","React","Link","Fragment","samplesData","urlParam","icon","enabled","description","header","content","component","singleMatcher","RegExp","multiMatcher","decodeComponents","components","split","decodeURIComponent","join","err","length","left","slice","right","Array","concat","decode","input","tokens","match","i","decodeUriComponent","encodedURI","TypeError","replace","replaceMap","exec","result","entries","key","customDecodeURIComponent","splitOnFirst","separator","separatorIndex","indexOf","validateArrayFormatSeparator","encode","options","strict","encodeURIComponent","x","charCodeAt","toString","toUpperCase","removeHash","hashStart","extract","queryStart","parseValue","parseNumbers","Number","isNaN","trim","parseBooleans","toLowerCase","parse","assign","sort","arrayFormat","arrayFormatSeparator","formatter","accumulator","undefined","newValue","map","item","parserForArrayFormat","ret","create","param","k","reduce","Boolean","isArray","keysSorter","a","b","exports","stringify","index","skipNull","_toConsumableArray","encoderForArrayFormat","objectCopy","filter","parseUrl","url","query","stringifyUrl","queryFromUrl","parsedQueryFromUrl","hash","getHash","queryString","useQueryParam","defaultState","searchParams","useState","_useState2","setSearch","inBrowser","document","location","search","getSearchParams","SampleTab","column1","column2","Sample","samples","Row","Col","xs","md","idx","dangerouslySetInnerHTML","__html","SamplesWrapper","_enabledExamples$find","exampleParam","enabledExamples","sample","activeTabIdx","findIndex","activeComponent","find","tabMenuItems","NavItem","id","NavLink","classnames","style","cursor","sampleTabs","Container","marginBottom","textAlign","color","Nav","pills","overflowX","justifyContent","Examples","data","pages","social","site","siteMetadata","Layout","SEO"],"mappings":"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","file":"component---src-pages-examples-tsx-47ccd72de612c930c9b2.js","sourcesContent":["import React from 'react';\n/**\n * TabContext\n * {\n * activeTabId: PropTypes.any\n * }\n */\n\nexport var TabContext = /*#__PURE__*/React.createContext({});","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { TabContext } from './TabContext';\nimport { mapToCssModules, omit, tagPropType } from './utils';\nvar propTypes = {\n tag: tagPropType,\n activeTab: PropTypes.any,\n className: PropTypes.string,\n cssModule: PropTypes.object\n};\nvar defaultProps = {\n tag: 'div'\n};\nvar TabContent = /*#__PURE__*/function (_Component) {\n _inheritsLoose(TabContent, _Component);\n TabContent.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, prevState) {\n if (prevState.activeTab !== nextProps.activeTab) {\n return {\n activeTab: nextProps.activeTab\n };\n }\n return null;\n };\n function TabContent(props) {\n var _this;\n _this = _Component.call(this, props) || this;\n _this.state = {\n activeTab: _this.props.activeTab\n };\n return _this;\n }\n var _proto = TabContent.prototype;\n _proto.render = function render() {\n var _this$props = this.props,\n className = _this$props.className,\n cssModule = _this$props.cssModule,\n Tag = _this$props.tag;\n var attributes = omit(this.props, Object.keys(propTypes));\n var classes = mapToCssModules(classNames('tab-content', className), cssModule);\n return /*#__PURE__*/React.createElement(TabContext.Provider, {\n value: {\n activeTabId: this.state.activeTab\n }\n }, /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {\n className: classes\n })));\n };\n return TabContent;\n}(Component);\nexport default TabContent;\nTabContent.defaultProps = defaultProps;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nvar _excluded = [\"className\", \"cssModule\", \"tabId\", \"tag\"];\nimport React from 'react';\nimport classNames from 'classnames';\nimport { TabContext } from './TabContext';\nimport { mapToCssModules, tagPropType } from './utils';\nvar defaultProps = {\n tag: 'div'\n};\nexport default function TabPane(props) {\n var className = props.className,\n cssModule = props.cssModule,\n tabId = props.tabId,\n Tag = props.tag,\n attributes = _objectWithoutPropertiesLoose(props, _excluded);\n var getClasses = function getClasses(activeTabId) {\n return mapToCssModules(classNames('tab-pane', className, {\n active: tabId === activeTabId\n }), cssModule);\n };\n return /*#__PURE__*/React.createElement(TabContext.Consumer, null, function (_ref) {\n var activeTabId = _ref.activeTabId;\n return /*#__PURE__*/React.createElement(Tag, _extends({}, attributes, {\n className: getClasses(activeTabId)\n }));\n });\n}\nTabPane.defaultProps = defaultProps;","import React from 'react';\r\nimport { Link } from \"gatsby\";\r\n\r\ninterface ExampleInfo {\r\n title: string;\r\n icon: string;\r\n urlParam?: string;\r\n enabled: boolean;\r\n className: string;\r\n component: string;\r\n description: {\r\n header: string;\r\n content: React.ReactNode;\r\n }[] | string;\r\n}\r\n\r\nconst ExternalLink: React.FC<{ to: string; title?: string }> = ({ to, title = 'docs', children }) => {\r\n return (\r\n <Link to={to}>\r\n {children || <><span className='text-nowrap'>{title} <i className=\"fas fa-external-link-alt fa-xs\"></i></span></>}\r\n </Link>\r\n )\r\n}\r\n\r\nexport const samplesData: ExampleInfo[] = [\r\n {\r\n title: 'Budget planner',\r\n urlParam: 'budget-planner',\r\n icon: 'fas fa-search-dollar fa-3x',\r\n enabled: true,\r\n description: [\r\n {\r\n header: `Capabilities:`,\r\n content: [\r\n `This budget planner example shows the possibility of calculating values of all aggregation fields \r\n in a reactive way in two axes - for organization or project for some time. See the available functionality:`,\r\n `Only white cells are able to change their value (all the aggregation cells will be updated accordingly)`,\r\n `A new value entered for a certain quarter on a given node will be proportionally distributed into the months within this quarter`,\r\n `Reorder a single row by drag & drop action onto a selected row (you can't reorder multiple rows)`,\r\n `Fold/unfold unit node with <code><kbd>SPACE</kbd></code> key (node cell has to be focused) or click on the chevron icon`,\r\n `Fold/unfold year and/or quarter columns by clicking chevron icon in the top row`,\r\n `Add a new row by clicking 'Add child row' in the context menu option on a selected row or delete it via 'Remove row' option`,\r\n ]\r\n },\r\n {\r\n header: `Core features (applied):`,\r\n content: [\r\n <>Vertical and horizontal grouping (see the <ExternalLink to={'/docs/4.0/4-cell-templates/5-ChevronCell/'} />)</>,\r\n <>Custom cell templates (e.g. non editable number cell, see the <ExternalLink to={'/docs/4.0/5-create-your-own-cell-template/'} />)</>,\r\n <>Context menu (adding and removing row, see the <ExternalLink to={'/docs/4.0/2-implementing-core-features/5-context-menu/'} />)</>,\r\n <>Sticky row and column (see the <ExternalLink to={'/docs/4.0/2-implementing-core-features/4-sticky/'} />)</>,\r\n <>Row reordering (see the <ExternalLink to={'/docs/4.0/2-implementing-core-features/3-column-and-row-reordering/'} />)</>,\r\n <>Range, column and row selection (+ multi selection, see the <ExternalLink to={'/docs/4.0/2-implementing-core-features/4a-selections/'} />)</>,\r\n `Fill handle`,\r\n `Copy/cut/paste`,\r\n `Touch capability`,\r\n `SASS custom styling`,\r\n ]\r\n }\r\n ],\r\n className: 'bp-sample',\r\n component: 'BPSample'\r\n },\r\n {\r\n title: 'Multi user',\r\n icon: 'fas fa-border-all fa-3x',\r\n enabled: true,\r\n urlParam: 'multi-user',\r\n description: [\r\n {\r\n header: `Capabilities:`,\r\n content: [\r\n `Includes most features of ReactGrid`,\r\n `Presents multiple data changes in real time `,\r\n `Provides additional actions in context menu (removing rows or columns)`,\r\n ]\r\n },\r\n {\r\n header: `Core features (applied):`,\r\n content: [\r\n <>Highlights (see the <ExternalLink to={'/docs/4.0/4-cell-templates/5-GroupCell/'} />)</>,\r\n <>Custom cell templates (e.g. flag icon, see the <ExternalLink to={'/docs/4.0/5-create-your-own-cell-template/'} />)</>,\r\n <>Sticky row and column (see the <ExternalLink to={'/docs/4.0/2-implementing-core-features/4-sticky/'} />)</>,\r\n <>Column resize (see the <ExternalLink to={'/docs/4.0/2-implementing-core-features/2-column-resizing/'} />)</>,\r\n <>Row and column reordering (see the <ExternalLink to={'/docs/4.0/2-implementing-core-features/3-column-and-row-reordering/'} />)</>,\r\n <>Range, column and row selection (+ multi selection, see the <ExternalLink to={'/docs/4.0/2-implementing-core-features/4a-selections/'} />)</>,\r\n <>Context menu (see the <ExternalLink to={'/docs/4.0/2-implementing-core-features/5-context-menu/'} />)</>,\r\n `Fill handle`,\r\n `Copy/cut/paste`,\r\n `Touch capability`,\r\n `SASS custom styling`,\r\n ]\r\n }\r\n ],\r\n className: 'datagrid-sample',\r\n component: 'DatagridSample'\r\n },\r\n {\r\n title: 'Athletes\\' exercises',\r\n icon: 'fas fa-border-all fa-3x',\r\n enabled: true,\r\n urlParam: 'athletes-exercises',\r\n description: [\r\n {\r\n header: `Capabilities:`,\r\n content: [\r\n `Implements most ReactGrid features in a simple way`,\r\n `Calculates the athlete's points in the real time`,\r\n `Built-in Chevron Cell allows you to collapse the excercise's category\r\n by pressing on the chevron on pressing space`,\r\n ]\r\n },\r\n {\r\n header: `Core features (applied):`,\r\n content: [\r\n <>Sticky row and column (see the <ExternalLink to={'/docs/4.0/2-implementing-core-features/4-sticky/'} />)</>,\r\n <>Range selection (+ multi selection, see the <ExternalLink to={'/docs/4.0/2-implementing-core-features/4a-selections/'} />)</>,\r\n <>Sticky row and column (see the <ExternalLink to={'/docs/4.0/2-implementing-core-features/4-sticky/'} />)</>,\r\n <>Custom cell templates (see the <ExternalLink to={'/docs/4.0/5-create-your-own-cell-template/'} />)</>,\r\n `Copy/cut/paste`,\r\n `Touch capability`,\r\n `SASS custom styling`,\r\n ]\r\n }\r\n ],\r\n className: 'exercises-sample',\r\n component: 'ExcercisesDataSample'\r\n },\r\n {\r\n title: 'Customization',\r\n icon: 'fas fa-border-all fa-3x',\r\n enabled: true,\r\n urlParam: 'customization',\r\n description: [\r\n {\r\n header: `Capabilities:`,\r\n content: [\r\n `Customization sample ReactGrid implementation allows user to add new records by editing the last blank row`,\r\n `It is possible to render every row in various ways, ReactGrid empowers the user to fully configure each cell independently`,\r\n `The simple configurator shows how easily you can style your table`,\r\n `Sample contains custom written dropdown cell`,\r\n `The header row and the blank row are sticky, so you can always see the title of the column and you're able to add new records`,\r\n ]\r\n },\r\n {\r\n header: `Core features (applied):`,\r\n content: [\r\n <>Range selection (+ multi selection, see the <ExternalLink to={'/docs/4.0/2-implementing-core-features/4a-selections/'} />)</>,\r\n <>Sticky row and column (see the <ExternalLink to={'/docs/4.0/2-implementing-core-features/4-sticky/'} />)</>,\r\n <>Custom cell templates (see the <ExternalLink to={'/docs/4.0/5-create-your-own-cell-template/'} />)</>,\r\n `Copy/cut/paste`,\r\n `Touch capability`,\r\n `SASS custom styling`,\r\n ]\r\n }\r\n ],\r\n className: 'workhours-sample',\r\n component: 'WorkhoursSample'\r\n },\r\n {\r\n title: 'Financial liquidity planner',\r\n icon: 'fas fa-search-dollar fa-3x',\r\n urlParam: 'liquidity-planner',\r\n enabled: true,\r\n description: [\r\n {\r\n header: `Capabilities:`,\r\n content: [\r\n <>This sample app was made for related article on our blog: <ExternalLink to={'/blog/financial-liquidity-planner-with-reactgrid-and-chartjs'} title='open' /></>,\r\n ]\r\n },\r\n {\r\n header: `Core features (applied):`,\r\n content: [\r\n <>Sticky columns (see the <ExternalLink to={'/docs/4.0/2-implementing-core-features/4-sticky/'} />)</>,\r\n <>Range selection (+ multi selection, see the <ExternalLink to={'/docs/4.0/2-implementing-core-features/4a-selections/'} />)</>,\r\n `Fill handle`,\r\n `Copy/cut/paste`,\r\n `Touch capability`,\r\n `CSS custom styling`,\r\n ]\r\n }\r\n ],\r\n className: 'liquidity-planner-app',\r\n component: 'LiquidityPlanner'\r\n },\r\n {\r\n title: 'Cryptocurrency Market',\r\n icon: 'fab fa-bitcoin fa-3x',\r\n enabled: false,\r\n description: [\r\n {\r\n header: `Capabilities:`,\r\n content: [\r\n `Filling grid with data from 3rd party API`,\r\n `Continuosly pooling for changes and presenting them`,\r\n ]\r\n },\r\n {\r\n header: `Applied core features:`,\r\n content: [\r\n `Freezed first top row`,\r\n `Area, column and row selection (+ multi selection)`,\r\n `Custom cell template`,\r\n `Copy/cut/paste`,\r\n `Touch capability`,\r\n `SASS styling`,\r\n ]\r\n }\r\n ],\r\n className: 'cryptocurrency-market-sample',\r\n component: 'CryptocurrencyMarketSample'\r\n },\r\n {\r\n title: 'Rate cell',\r\n icon: 'far fa-lightbulb fa-3x',\r\n enabled: false,\r\n description: 'Short description of demo content',\r\n className: 'rate-cell-sample',\r\n component: 'RateCellSample'\r\n },\r\n {\r\n title: 'Resize columns',\r\n icon: 'fas fa-arrows-alt-h fa-3x',\r\n enabled: false,\r\n description: [\r\n {\r\n header: `Capabilities:`,\r\n content: [\r\n `Changing width of column`,\r\n `Disabling this feature for each column`,\r\n `Handling <code>onColumnResize()</code> event`,\r\n ]\r\n },\r\n {\r\n header: `Applied core features:`,\r\n content: [\r\n `Column resize`,\r\n `Area selection`,\r\n `Custom cell templates (rate and flag cell)`,\r\n `Copy/cut/paste`,\r\n `Touch capability`,\r\n `SASS styling`,\r\n ]\r\n }\r\n ],\r\n className: 'resize-column-sample',\r\n component: 'ResizeColumnSample'\r\n },\r\n {\r\n title: 'Row/columns reorder',\r\n icon: 'fas fa-arrows-alt fa-3x',\r\n enabled: false,\r\n description: [\r\n {\r\n header: `Usage:`,\r\n content: [\r\n `Press <code>ctlr</code> key and select columns/rows`,\r\n `Drag column/rows do desired destination`,\r\n ]\r\n },\r\n {\r\n header: `Applied core features:`,\r\n content: [\r\n `Column reorder`,\r\n `Row reorder`,\r\n `Area selection`,\r\n `Custom cell templates (rate and flag cell)`,\r\n `Copy/cut/paste`,\r\n `Touch capability`,\r\n `SASS styling`,\r\n ]\r\n }\r\n ],\r\n className: 'column-reorder-sample',\r\n component: 'ColumnReorderSample'\r\n },\r\n {\r\n title: 'Context menu',\r\n icon: 'far fa-comment-alt fa-3x',\r\n enabled: false,\r\n description: [\r\n {\r\n header: `Usage:`,\r\n content: [\r\n `Press <code>ctlr</code> key and select columns/rows`,\r\n `Drag column/rows do desired destination`,\r\n ]\r\n },\r\n {\r\n header: `Applied core features:`,\r\n content: [\r\n `Column reorder`,\r\n `Row reorder`,\r\n `Area selection`,\r\n `Custom cell templates (rate and flag cell)`,\r\n `Copy/cut/paste`,\r\n `Touch capability`,\r\n `SASS styling`,\r\n ]\r\n }\r\n ],\r\n className: 'context-menu-sample',\r\n component: 'ContextMenuSample'\r\n },\r\n {\r\n title: 'Group data',\r\n icon: 'fa fa-stream fa-3x',\r\n enabled: false,\r\n description: [\r\n {\r\n header: `Capabilities:`,\r\n content: [\r\n `Application of Group cell template that contains informations about single node`,\r\n `Toggling node with <code><kbd>SPACE</kbd></code> key or click on chevron`,\r\n ]\r\n },\r\n {\r\n header: `Applied core features:`,\r\n content: [\r\n `Freezed top row and left column`,\r\n `Area, column and row selection (+ multi selection)`,\r\n `Copy/cut/paste`,\r\n `Touch capability`,\r\n `SASS styling`,\r\n ]\r\n }\r\n ],\r\n className: 'group-cell-sample',\r\n component: 'GroupCellSample'\r\n },\r\n];\r\n","'use strict';\nmodule.exports = str => encodeURIComponent(str).replace(/[!'()*]/g, x => `%${x.charCodeAt(0).toString(16).toUpperCase()}`);\n","'use strict';\nvar token = '%[a-f0-9]{2}';\nvar singleMatcher = new RegExp(token, 'gi');\nvar multiMatcher = new RegExp('(' + token + ')+', 'gi');\n\nfunction decodeComponents(components, split) {\n\ttry {\n\t\t// Try to decode the entire string first\n\t\treturn decodeURIComponent(components.join(''));\n\t} catch (err) {\n\t\t// Do nothing\n\t}\n\n\tif (components.length === 1) {\n\t\treturn components;\n\t}\n\n\tsplit = split || 1;\n\n\t// Split the array in 2 parts\n\tvar left = components.slice(0, split);\n\tvar right = components.slice(split);\n\n\treturn Array.prototype.concat.call([], decodeComponents(left), decodeComponents(right));\n}\n\nfunction decode(input) {\n\ttry {\n\t\treturn decodeURIComponent(input);\n\t} catch (err) {\n\t\tvar tokens = input.match(singleMatcher);\n\n\t\tfor (var i = 1; i < tokens.length; i++) {\n\t\t\tinput = decodeComponents(tokens, i).join('');\n\n\t\t\ttokens = input.match(singleMatcher);\n\t\t}\n\n\t\treturn input;\n\t}\n}\n\nfunction customDecodeURIComponent(input) {\n\t// Keep track of all the replacements and prefill the map with the `BOM`\n\tvar replaceMap = {\n\t\t'%FE%FF': '\\uFFFD\\uFFFD',\n\t\t'%FF%FE': '\\uFFFD\\uFFFD'\n\t};\n\n\tvar match = multiMatcher.exec(input);\n\twhile (match) {\n\t\ttry {\n\t\t\t// Decode as big chunks as possible\n\t\t\treplaceMap[match[0]] = decodeURIComponent(match[0]);\n\t\t} catch (err) {\n\t\t\tvar result = decode(match[0]);\n\n\t\t\tif (result !== match[0]) {\n\t\t\t\treplaceMap[match[0]] = result;\n\t\t\t}\n\t\t}\n\n\t\tmatch = multiMatcher.exec(input);\n\t}\n\n\t// Add `%C2` at the end of the map to make sure it does not replace the combinator before everything else\n\treplaceMap['%C2'] = '\\uFFFD';\n\n\tvar entries = Object.keys(replaceMap);\n\n\tfor (var i = 0; i < entries.length; i++) {\n\t\t// Replace all decoded components\n\t\tvar key = entries[i];\n\t\tinput = input.replace(new RegExp(key, 'g'), replaceMap[key]);\n\t}\n\n\treturn input;\n}\n\nmodule.exports = function (encodedURI) {\n\tif (typeof encodedURI !== 'string') {\n\t\tthrow new TypeError('Expected `encodedURI` to be of type `string`, got `' + typeof encodedURI + '`');\n\t}\n\n\ttry {\n\t\tencodedURI = encodedURI.replace(/\\+/g, ' ');\n\n\t\t// Try the built in decoder first\n\t\treturn decodeURIComponent(encodedURI);\n\t} catch (err) {\n\t\t// Fallback to a more advanced decoder\n\t\treturn customDecodeURIComponent(encodedURI);\n\t}\n};\n","'use strict';\n\nmodule.exports = (string, separator) => {\n\tif (!(typeof string === 'string' && typeof separator === 'string')) {\n\t\tthrow new TypeError('Expected the arguments to be of type `string`');\n\t}\n\n\tif (separator === '') {\n\t\treturn [string];\n\t}\n\n\tconst separatorIndex = string.indexOf(separator);\n\n\tif (separatorIndex === -1) {\n\t\treturn [string];\n\t}\n\n\treturn [\n\t\tstring.slice(0, separatorIndex),\n\t\tstring.slice(separatorIndex + separator.length)\n\t];\n};\n","'use strict';\nconst strictUriEncode = require('strict-uri-encode');\nconst decodeComponent = require('decode-uri-component');\nconst splitOnFirst = require('split-on-first');\n\nfunction encoderForArrayFormat(options) {\n\tswitch (options.arrayFormat) {\n\t\tcase 'index':\n\t\t\treturn key => (result, value) => {\n\t\t\t\tconst index = result.length;\n\t\t\t\tif (value === undefined || (options.skipNull && value === null)) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [...result, [encode(key, options), '[', index, ']'].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '[', encode(index, options), ']=', encode(value, options)].join('')\n\t\t\t\t];\n\t\t\t};\n\n\t\tcase 'bracket':\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (value === undefined || (options.skipNull && value === null)) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [...result, [encode(key, options), '[]'].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [...result, [encode(key, options), '[]=', encode(value, options)].join('')];\n\t\t\t};\n\n\t\tcase 'comma':\n\t\tcase 'separator':\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (value === null || value === undefined || value.length === 0) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (result.length === 0) {\n\t\t\t\t\treturn [[encode(key, options), '=', encode(value, options)].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [[result, encode(value, options)].join(options.arrayFormatSeparator)];\n\t\t\t};\n\n\t\tdefault:\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (value === undefined || (options.skipNull && value === null)) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [...result, encode(key, options)];\n\t\t\t\t}\n\n\t\t\t\treturn [...result, [encode(key, options), '=', encode(value, options)].join('')];\n\t\t\t};\n\t}\n}\n\nfunction parserForArrayFormat(options) {\n\tlet result;\n\n\tswitch (options.arrayFormat) {\n\t\tcase 'index':\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /\\[(\\d*)\\]$/.exec(key);\n\n\t\t\t\tkey = key.replace(/\\[\\d*\\]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = {};\n\t\t\t\t}\n\n\t\t\t\taccumulator[key][result[1]] = value;\n\t\t\t};\n\n\t\tcase 'bracket':\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /(\\[\\])$/.exec(key);\n\t\t\t\tkey = key.replace(/\\[\\]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = [value];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [].concat(accumulator[key], value);\n\t\t\t};\n\n\t\tcase 'comma':\n\t\tcase 'separator':\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tconst isArray = typeof value === 'string' && value.split('').indexOf(options.arrayFormatSeparator) > -1;\n\t\t\t\tconst newValue = isArray ? value.split(options.arrayFormatSeparator).map(item => decode(item, options)) : value === null ? value : decode(value, options);\n\t\t\t\taccumulator[key] = newValue;\n\t\t\t};\n\n\t\tdefault:\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [].concat(accumulator[key], value);\n\t\t\t};\n\t}\n}\n\nfunction validateArrayFormatSeparator(value) {\n\tif (typeof value !== 'string' || value.length !== 1) {\n\t\tthrow new TypeError('arrayFormatSeparator must be single character string');\n\t}\n}\n\nfunction encode(value, options) {\n\tif (options.encode) {\n\t\treturn options.strict ? strictUriEncode(value) : encodeURIComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction decode(value, options) {\n\tif (options.decode) {\n\t\treturn decodeComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction keysSorter(input) {\n\tif (Array.isArray(input)) {\n\t\treturn input.sort();\n\t}\n\n\tif (typeof input === 'object') {\n\t\treturn keysSorter(Object.keys(input))\n\t\t\t.sort((a, b) => Number(a) - Number(b))\n\t\t\t.map(key => input[key]);\n\t}\n\n\treturn input;\n}\n\nfunction removeHash(input) {\n\tconst hashStart = input.indexOf('#');\n\tif (hashStart !== -1) {\n\t\tinput = input.slice(0, hashStart);\n\t}\n\n\treturn input;\n}\n\nfunction getHash(url) {\n\tlet hash = '';\n\tconst hashStart = url.indexOf('#');\n\tif (hashStart !== -1) {\n\t\thash = url.slice(hashStart);\n\t}\n\n\treturn hash;\n}\n\nfunction extract(input) {\n\tinput = removeHash(input);\n\tconst queryStart = input.indexOf('?');\n\tif (queryStart === -1) {\n\t\treturn '';\n\t}\n\n\treturn input.slice(queryStart + 1);\n}\n\nfunction parseValue(value, options) {\n\tif (options.parseNumbers && !Number.isNaN(Number(value)) && (typeof value === 'string' && value.trim() !== '')) {\n\t\tvalue = Number(value);\n\t} else if (options.parseBooleans && value !== null && (value.toLowerCase() === 'true' || value.toLowerCase() === 'false')) {\n\t\tvalue = value.toLowerCase() === 'true';\n\t}\n\n\treturn value;\n}\n\nfunction parse(input, options) {\n\toptions = Object.assign({\n\t\tdecode: true,\n\t\tsort: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ',',\n\t\tparseNumbers: false,\n\t\tparseBooleans: false\n\t}, options);\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst formatter = parserForArrayFormat(options);\n\n\t// Create an object with no prototype\n\tconst ret = Object.create(null);\n\n\tif (typeof input !== 'string') {\n\t\treturn ret;\n\t}\n\n\tinput = input.trim().replace(/^[?#&]/, '');\n\n\tif (!input) {\n\t\treturn ret;\n\t}\n\n\tfor (const param of input.split('&')) {\n\t\tlet [key, value] = splitOnFirst(options.decode ? param.replace(/\\+/g, ' ') : param, '=');\n\n\t\t// Missing `=` should be `null`:\n\t\t// http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters\n\t\tvalue = value === undefined ? null : options.arrayFormat === 'comma' ? value : decode(value, options);\n\t\tformatter(decode(key, options), value, ret);\n\t}\n\n\tfor (const key of Object.keys(ret)) {\n\t\tconst value = ret[key];\n\t\tif (typeof value === 'object' && value !== null) {\n\t\t\tfor (const k of Object.keys(value)) {\n\t\t\t\tvalue[k] = parseValue(value[k], options);\n\t\t\t}\n\t\t} else {\n\t\t\tret[key] = parseValue(value, options);\n\t\t}\n\t}\n\n\tif (options.sort === false) {\n\t\treturn ret;\n\t}\n\n\treturn (options.sort === true ? Object.keys(ret).sort() : Object.keys(ret).sort(options.sort)).reduce((result, key) => {\n\t\tconst value = ret[key];\n\t\tif (Boolean(value) && typeof value === 'object' && !Array.isArray(value)) {\n\t\t\t// Sort object keys, not values\n\t\t\tresult[key] = keysSorter(value);\n\t\t} else {\n\t\t\tresult[key] = value;\n\t\t}\n\n\t\treturn result;\n\t}, Object.create(null));\n}\n\nexports.extract = extract;\nexports.parse = parse;\n\nexports.stringify = (object, options) => {\n\tif (!object) {\n\t\treturn '';\n\t}\n\n\toptions = Object.assign({\n\t\tencode: true,\n\t\tstrict: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ','\n\t}, options);\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst formatter = encoderForArrayFormat(options);\n\n\tconst objectCopy = Object.assign({}, object);\n\tif (options.skipNull) {\n\t\tfor (const key of Object.keys(objectCopy)) {\n\t\t\tif (objectCopy[key] === undefined || objectCopy[key] === null) {\n\t\t\t\tdelete objectCopy[key];\n\t\t\t}\n\t\t}\n\t}\n\n\tconst keys = Object.keys(objectCopy);\n\n\tif (options.sort !== false) {\n\t\tkeys.sort(options.sort);\n\t}\n\n\treturn keys.map(key => {\n\t\tconst value = object[key];\n\n\t\tif (value === undefined) {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (value === null) {\n\t\t\treturn encode(key, options);\n\t\t}\n\n\t\tif (Array.isArray(value)) {\n\t\t\treturn value\n\t\t\t\t.reduce(formatter(key), [])\n\t\t\t\t.join('&');\n\t\t}\n\n\t\treturn encode(key, options) + '=' + encode(value, options);\n\t}).filter(x => x.length > 0).join('&');\n};\n\nexports.parseUrl = (input, options) => {\n\treturn {\n\t\turl: removeHash(input).split('?')[0] || '',\n\t\tquery: parse(extract(input), options)\n\t};\n};\n\nexports.stringifyUrl = (input, options) => {\n\tconst url = removeHash(input.url).split('?')[0] || '';\n\tconst queryFromUrl = exports.extract(input.url);\n\tconst parsedQueryFromUrl = exports.parse(queryFromUrl);\n\tconst hash = getHash(input.url);\n\tconst query = Object.assign(parsedQueryFromUrl, input.query);\n\tlet queryString = exports.stringify(query, options);\n\tif (queryString) {\n\t\tqueryString = `?${queryString}`;\n\t}\n\n\treturn `${url}${queryString}${hash}`;\n};\n","import { useEffect, useState } from 'react'\r\nimport queryString from 'query-string'\r\n\r\nconst getSearchParams = () => {\r\n const [searchParams, setSearch] = useState({})\r\n const inBrowser = typeof document !== 'undefined'\r\n\r\n useEffect(() => {\r\n if (inBrowser) {\r\n setSearch(document.location.search ? queryString.parse(document.location.search) : {})\r\n }\r\n }, inBrowser ? [document.location.search] : [])\r\n\r\n return searchParams\r\n}\r\n\r\nconst useQueryParam = (key, defaultState) => {\r\n const searchParams = getSearchParams();\r\n return searchParams[key] ? searchParams[key] : defaultState ? defaultState : null;\r\n}\r\n\r\nexport {\r\n getSearchParams,\r\n useQueryParam\r\n}\r\n","import React from 'react';\r\nimport classnames from 'classnames';\r\nimport {\r\n Container,\r\n Row,\r\n Col,\r\n TabContent,\r\n TabPane,\r\n Nav,\r\n NavItem,\r\n NavLink,\r\n} from \"reactstrap\";\r\nimport { samplesData } from '../../content/examples/examplesData';\r\nimport { useQueryParam } from \"gatsby-query-params\";\r\nimport * as samples from '../samples';\r\nimport { Link } from 'gatsby';\r\n\r\nconst SamplesWrapper: React.FC = () => {\r\n // TODO fix rerendering issue\r\n const exampleParam = useQueryParam('example', 'budget-planner');\r\n const enabledExamples = samplesData.filter(sample => sample.enabled);\r\n const activeTabIdx = enabledExamples.findIndex(sample => sample.urlParam === exampleParam);\r\n const activeComponent = enabledExamples.find(sample => sample.urlParam === exampleParam)?.component;\r\n\r\n const tabMenuItems = enabledExamples.map((sample, idx) =>\r\n <NavItem key={idx} className=\"pb-0 pb-md-3 flex-shrink-0\" id={`item-${idx}`}>\r\n <Link to={'/examples/?example=' + sample.urlParam}\r\n >\r\n <NavLink\r\n className={classnames([{ active: activeTabIdx === idx }])}\r\n style={{ cursor: 'pointer'}}\r\n tag='span'\r\n >\r\n {sample.title}\r\n </NavLink>\r\n </Link>\r\n </NavItem>\r\n );\r\n\r\n const sampleTabs = enabledExamples.map((sample, idx) =>\r\n <SampleTab\r\n key={idx}\r\n tabId={idx}\r\n title={sample.title}\r\n description={sample.description}\r\n className={sample.className}\r\n component={activeComponent}\r\n />\r\n );\r\n\r\n return (\r\n <Container className=\"section px-3\">\r\n <Row>\r\n <Col>\r\n <p style={{ marginBottom: 10, textAlign: \"right\", color: \"#5c5c5c\" }}>version: 4.1.10</p>\r\n <Nav pills className={`justify-content-center nav-pills-icons`} >\r\n <div className=\"d-flex w-100\" style={{overflowX: 'auto', justifyContent: 'space-between'}}>{tabMenuItems}</div>\r\n <div className=\"space-50\"></div>\r\n <TabContent activeTab={activeTabIdx} className=\"example-tabs-content w-100\">\r\n {sampleTabs}\r\n </TabContent>\r\n </Nav>\r\n </Col>\r\n </Row>\r\n </Container>\r\n )\r\n}\r\n\r\nconst SampleTab = ({ tabId, title, description, component, className }) => {\r\n const [column1, column2] = description;\r\n const Sample = samples[component];\r\n return (\r\n <TabPane tabId={tabId}>\r\n <Row>\r\n <Col xs=\"12\" className={className}>\r\n <div className={tabId === 3 ? \"sample-wrapper-workhours\" : \"sample-wrapper\"}>\r\n <Sample />\r\n </div>\r\n <div className=\"pt-5\">\r\n {description.length === 2 ?\r\n <Row>\r\n <Col md=\"6\" className=\"pb-4\">\r\n <h3>{column1.header}</h3>\r\n <ul className=\"\">\r\n {column1.content.map((item, idx) => <li key={idx} className=\"pb-3 text-left\">{item}</li>)}\r\n </ul>\r\n </Col>\r\n <Col md=\"6\">\r\n <h3>{column2.header}</h3>\r\n <ul className=\"\">\r\n {column2.content.map((item, idx) => <li key={idx} className=\"pb-2 text-left\">{item}</li>)}\r\n </ul>\r\n </Col>\r\n </Row>\r\n : <p dangerouslySetInnerHTML={{ __html: description }}></p>}\r\n </div>\r\n </Col>\r\n </Row>\r\n </TabPane>\r\n )\r\n}\r\n\r\nexport default SamplesWrapper;\r\n","import React from \"react\";\r\nimport { graphql } from \"gatsby\";\r\nimport Layout from \"../components/layout\";\r\nimport SEO from \"../components/seo\";\r\nimport SamplesWrapper from \"../components/SamplesWrapper\";\r\n\r\n\r\nconst Examples = ({ data }) => {\r\n const { title, description, pages, social } = data.site.siteMetadata;\r\n return (\r\n <Layout pages={pages} social={social} description={description} title={title}>\r\n <SEO\r\n title={'Examples'}\r\n description={`Check out our examples and follow the guide to learn how ReactGrid works and how you can boost performance of your React application!`}\r\n />\r\n <SamplesWrapper />\r\n </Layout>\r\n )\r\n}\r\n\r\nexport default Examples;\r\n\r\nexport const pageQuery = graphql`\r\n query {\r\n site {\r\n ...SiteMetadata\r\n }\r\n }\r\n`\r\n"],"sourceRoot":""}