@operato/data-grist 7.0.8 → 7.0.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -0
- package/dist/src/data-grid/data-grid-header.js +5 -5
- package/dist/src/data-grid/data-grid-header.js.map +1 -1
- package/dist/src/data-grist.js +3 -3
- package/dist/src/data-grist.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +6 -6
- package/src/data-grid/data-grid-header.ts +5 -5
- package/src/data-grist.ts +3 -3
- package/themes/grist-theme.css +1 -0
package/CHANGELOG.md
CHANGED
@@ -3,6 +3,25 @@
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
5
5
|
|
6
|
+
### [7.0.21](https://github.com/hatiolab/operato/compare/v7.0.20...v7.0.21) (2024-07-18)
|
7
|
+
|
8
|
+
|
9
|
+
### :bug: Bug Fix
|
10
|
+
|
11
|
+
* --grid-header-text-transform 헤더 변수 추가 ([a048ccd](https://github.com/hatiolab/operato/commit/a048ccdeda6c4ce3725ddd6904bf628df5bbf518))
|
12
|
+
* gantt task hierachy ([9c21d39](https://github.com/hatiolab/operato/commit/9c21d39372e4cbb37606f51af7f1067605cca61e))
|
13
|
+
|
14
|
+
|
15
|
+
|
16
|
+
### [7.0.20](https://github.com/hatiolab/operato/compare/v7.0.19...v7.0.20) (2024-07-17)
|
17
|
+
|
18
|
+
|
19
|
+
### :bug: Bug Fix
|
20
|
+
|
21
|
+
* popup position absolute => fixed ([52ab460](https://github.com/hatiolab/operato/commit/52ab460a95bed03ee60bf8034d3f044dc19be410))
|
22
|
+
|
23
|
+
|
24
|
+
|
6
25
|
### [7.0.8](https://github.com/hatiolab/operato/compare/v7.0.7...v7.0.8) (2024-07-07)
|
7
26
|
|
8
27
|
**Note:** Version bump only for package @operato/data-grist
|
@@ -223,11 +223,11 @@ let DataGridHeader = class DataGridHeader extends LitElement {
|
|
223
223
|
// absolute position인 popup의 위치 부모는 grist 이므로,
|
224
224
|
// data-grid-header 의 포지션 부모(grist)의 위치로부터 계산해야함.
|
225
225
|
// this의 position을 relative로 하지 못하는 이유 : ox-popup-list가 grid body에 덮히기 때문.
|
226
|
-
const top = parent.offsetTop + parent.offsetHeight
|
227
|
-
const right = this.clientWidth - (parent.offsetLeft + parent.offsetWidth - this.scrollLeft)
|
226
|
+
// const top = parent.offsetTop + parent.offsetHeight
|
227
|
+
// const right = this.clientWidth - (parent.offsetLeft + parent.offsetWidth - this.scrollLeft)
|
228
228
|
popup === null || popup === void 0 ? void 0 : popup.open({
|
229
|
-
right,
|
230
|
-
top
|
229
|
+
right: 0,
|
230
|
+
top: parent.offsetHeight
|
231
231
|
});
|
232
232
|
}}
|
233
233
|
>filter_alt</md-icon
|
@@ -417,7 +417,7 @@ DataGridHeader.styles = [
|
|
417
417
|
flex: 1;
|
418
418
|
text-overflow: ellipsis;
|
419
419
|
line-height: 1.6;
|
420
|
-
text-transform: capitalize;
|
420
|
+
text-transform: var(--grid-header-text-transform, capitalize);
|
421
421
|
align-self: center;
|
422
422
|
}
|
423
423
|
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"data-grid-header.js","sourceRoot":"","sources":["../../../src/data-grid/data-grid-header.ts"],"names":[],"mappings":"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","sourcesContent":["import '@operato/popup/ox-popup.js'\nimport '@material/web/icon/icon.js'\n\nimport { css, html, LitElement, PropertyValues, nothing, TemplateResult } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { ifDefined } from 'lit/directives/if-defined.js'\nimport throttle from 'lodash-es/throttle'\n\nimport { OxPopup } from '@operato/popup'\nimport { TooltipReactiveController, closestElement } from '@operato/utils'\n\nimport { ZERO_COLUMNS, ZERO_DATA } from '../configure/zero-config'\nimport { FilterStyles } from '../filters/filter-styles'\nimport { getFilterRenderer } from '../filters/registry'\nimport { ColumnConfig, FilterConfigObject, FilterValue, GristData, SortersConfig } from '../types'\n\n@customElement('ox-grid-header')\nexport class DataGridHeader extends LitElement {\n static styles = [\n FilterStyles,\n css`\n :host {\n position: relative;\n display: grid;\n grid-template-columns: var(--grid-template-columns);\n\n border-top: var(--grid-header-top-border);\n overflow: hidden;\n\n font-variation-settings: 'FILL' 1;\n }\n\n :host([raised]) [fixed] {\n /* 고정 컬럼이 살짝 올라와 있는 느낌을 표현 */\n box-shadow: 3px 0 3px rgba(0, 0, 0, 0.1);\n }\n\n div[column] {\n display: flex;\n\n white-space: nowrap;\n overflow: hidden;\n background-color: var(--grid-header-background-color);\n border-bottom: var(--grid-header-bottom-border);\n padding: var(--grid-header-padding);\n\n text-overflow: ellipsis;\n font: var(--grid-header-font);\n color: var(--grid-header-color);\n }\n\n div[gutter] {\n padding: var(--spacing-small) 0;\n text-align: center;\n }\n\n span {\n display: block;\n white-space: nowrap;\n overflow: hidden;\n }\n\n span[for-title] {\n flex: 1;\n text-overflow: ellipsis;\n line-height: 1.6;\n text-transform: capitalize;\n align-self: center;\n }\n\n span[for-title] * {\n vertical-align: middle;\n }\n\n span[for-title] md-icon {\n font-size: 1.2em;\n }\n\n span[sorter],\n span[filter] {\n display: flex;\n align-self: center;\n\n padding: 0;\n border: 0;\n }\n\n span[sorter] md-icon {\n font-size: var(--grid-header-sorter-size);\n }\n\n span[filter] > md-icon {\n font-size: var(--fontsize-default);\n line-height: 20px;\n }\n\n span[splitter] {\n cursor: col-resize;\n border-right: var(--grid-header-splitter-border);\n margin-right: 0;\n }\n\n span[splitter]:hover {\n border-right: var(--grid-header-splitter-border-hover);\n }\n\n [filter-title] {\n color: var(--grid-header-filter-title-color);\n font: var(--grid-header-filter-title-font);\n text-transform: capitalize;\n }\n\n [filter-title] * {\n vertical-align: middle;\n }\n\n [filter-title] md-icon {\n opacity: 0.7;\n color: var(--grid-header-filter-title-icon-color);\n }\n\n [filter] input[type='checkbox'] {\n margin-left: var(--spacing-medium);\n margin-bottom: var(--spacing-small);\n }\n\n [fixed] {\n position: sticky;\n z-index: 1;\n }\n\n .span-both {\n grid-row: 1 / span 2; /* 1단과 2단에 걸쳐 표시 */\n }\n\n .group-header {\n grid-row: 1; /* 1행에 배치 */\n grid-column: var(--group-start) / span var(--group-size); /* 2열부터 시작하여 2열에 걸쳐 표시 */\n }\n\n @media print {\n :host {\n grid-template-columns: var(--grid-template-print-columns);\n }\n }\n `\n ]\n\n @property({ type: Array }) columns: ColumnConfig[] = ZERO_COLUMNS\n @property({ type: Object }) data: GristData = ZERO_DATA\n @property({ type: Array }) sorters: SortersConfig = []\n @property({ type: Array }) filters: FilterValue[] = []\n @property({ type: Boolean, attribute: 'filtering-feature' }) filteringFeature: boolean = false\n\n @state() private row1: {\n index: number\n column: ColumnConfig\n clazz?: string\n start?: number\n size?: number\n align?: string\n group?: string\n }[] = []\n\n @state() private row2: {\n index: number\n column: ColumnConfig\n }[] = []\n\n private _lastAccVal?: number\n private _throttledNotifier?: any\n\n private tooltipController?: TooltipReactiveController = new TooltipReactiveController(this)\n\n connectedCallback() {\n super.connectedCallback()\n\n const grid = closestElement('ox-grist', this)\n\n this.addEventListener('scroll', function () {\n this.scrollLeft == 0 ? this.removeAttribute('raised') : this.setAttribute('raised', '')\n })\n\n if (this.filteringFeature) {\n this?.addEventListener('filter-change', (e: Event) => {\n const { name, operator, value } = (e as CustomEvent).detail\n const filters = this.filters instanceof Array ? [...this.filters] : []\n\n if (value == null) {\n const index = filters.findIndex(filter => filter.name === name)\n if (index === -1) {\n return\n }\n\n filters.splice(index, 1)\n } else {\n const index = filters.findIndex(filter => filter.name === name)\n if (index === -1) {\n filters.push({ name, operator, value })\n } else {\n filters.splice(index, 1, { name, operator, value })\n }\n }\n\n grid?.dispatchEvent(\n new CustomEvent('fetch-params-change', {\n detail: {\n filters,\n from: 'data-grid-header'\n }\n })\n )\n })\n }\n }\n\n render() {\n const clazz = this.row2.length > 0 ? 'span-both' : undefined\n\n return html`\n ${this.row1.map(({ column, clazz, start, size, align, index, group }) =>\n this.renderHeaderColumn({ column, clazz, start, size, align, index, group })\n )}\n\n <div column class=${ifDefined(clazz)}></div>\n\n ${this.row2.map(({ column, index }) => this.renderHeaderColumn({ column, index }))}\n `\n }\n\n renderHeaderColumn({ column, clazz, start, size, align, index, group }: any): TemplateResult {\n if (column.hidden) {\n return html`${nothing}`\n }\n\n return html`\n <div\n ?gutter=${column.type == 'gutter'}\n ?fixed=${column.fixed}\n column\n class=${ifDefined(clazz)}\n style=${group\n ? `--group-start:${start};--group-size:${size};${column.header?.style || ''}`\n : `${column.header?.style || ''}`}\n >\n <span\n for-title\n data-reactive-tooltip\n style=\"text-align:${align || column.record.align || 'left'};\"\n @click=${(e: MouseEvent) => this._changeSort(column)}\n >${this._renderHeader(column)}\n </span>\n\n ${!group && column.sortable\n ? html`\n <span sorter @click=${(e: MouseEvent) => this._changeSort(column)}>\n ${this._renderSortHeader(column)}\n </span>\n `\n : nothing}\n ${!group &&\n this.filteringFeature &&\n column.filter &&\n (column.filter as FilterConfigObject).operator !== 'search'\n ? html` <span filter> ${this._renderFilterHeader(column)} </span> `\n : nothing}\n ${column.resizable !== false\n ? html`\n <span splitter draggable=\"false\" @mousedown=${(e: MouseEvent) => this._mousedown(e, index)}> </span>\n `\n : nothing}\n </div>\n `\n }\n\n notifyFixedLeftChange() {\n const fixedHeaders = Array.from(this.renderRoot.querySelectorAll('div[fixed]')) as HTMLElement[]\n const fixedLefts = [] as number[]\n var left = 0\n fixedHeaders.forEach((header: HTMLElement) => {\n header.style.left = left + 'px'\n fixedLefts.push(left)\n\n const width = header.offsetWidth\n left += width\n })\n\n this.dispatchEvent(\n new CustomEvent('fixed-lefts-change', {\n detail: fixedLefts\n })\n )\n }\n\n updated(changes: PropertyValues) {\n var isColumnWidthChangePossible = false\n\n if (changes.has('columns')) {\n this.row2 = this.columns.reduce((row2, column, index) => {\n if (column.hidden || !column.header?.group) {\n return row2\n }\n return row2.concat({\n index,\n column\n } as any)\n }, [] as any[])\n\n const clazz = this.row2.length > 0 ? 'span-both' : undefined\n\n var columnNo = 0\n\n this.row1 = this.columns.reduce((row1, column, index) => {\n if (column.hidden) {\n return row1\n }\n\n columnNo++\n if (!column.header?.group) {\n return row1.concat({\n index,\n column,\n clazz\n } as any)\n }\n const { group, groupStyle } = column.header\n const last = row1[row1.length - 1] as any\n\n if (!last || group !== last.group) {\n return row1.concat({\n index,\n column: {\n ...column,\n header: {\n renderer: () => group,\n style: groupStyle\n }\n },\n group,\n align: 'center',\n clazz: 'group-header',\n start: columnNo,\n size: 1\n } as any)\n }\n\n last.size++\n\n return row1\n }, [] as any[])\n\n isColumnWidthChangePossible = true\n }\n\n if (changes.has('data')) {\n isColumnWidthChangePossible = true\n }\n\n if (isColumnWidthChangePossible) {\n // requestAnimationFrame(() => this.notifyFixedLeftChange())\n this.notifyFixedLeftChange()\n }\n }\n\n _renderHeader(column: ColumnConfig) {\n var { renderer } = column.header || {}\n var title = renderer.call(this, column)\n\n return html`${column?.record?.mandatory ? '*' : ''} ${title} `\n }\n\n _renderSortHeader(column: ColumnConfig) {\n var sorters = this.sorters || []\n\n var sorter = sorters.find(sorter => column.type !== 'gutter' && column.name == sorter.name)\n if (!sorter) {\n return html`<md-icon style=\"opacity: 0.2;\">unfold_more</md-icon>`\n }\n\n if (sorters.length > 1) {\n var rank = sorters.indexOf(sorter) + 1\n return sorter.desc\n ? html` <md-icon>keyboard_arrow_down</md-icon><sub>${rank}</sub> `\n : html` <md-icon>keyboard_arrow_up</md-icon><sub>${rank}</sub> `\n } else {\n return sorter.desc ? html` <md-icon>keyboard_arrow_down</md-icon> ` : html` <md-icon>keyboard_arrow_up</md-icon> `\n }\n }\n\n _renderFilterHeader(column: ColumnConfig) {\n const name = column.name\n const filter = column.filter as FilterConfigObject\n const type = filter.type\n const value = this.filters.find(filter => filter.name === name)?.value\n const idx = filter!.operator === 'between' ? 1 : 0\n const renderer = getFilterRenderer(type)[idx]\n\n return html`\n <md-icon\n @click=${(e: Event) => {\n const parent = (e.target as HTMLElement).closest('[column]') as HTMLElement\n const popup = parent.querySelector('ox-popup, ox-popup-list') as OxPopup | null\n // const popup = (e.target as HTMLElement).nextSibling as OxPopupList | null\n\n // absolute position인 popup의 위치 부모는 grist 이므로,\n // data-grid-header 의 포지션 부모(grist)의 위치로부터 계산해야함.\n // this의 position을 relative로 하지 못하는 이유 : ox-popup-list가 grid body에 덮히기 때문.\n const top = parent.offsetTop + parent.offsetHeight\n const right = this.clientWidth - (parent.offsetLeft + parent.offsetWidth - this.scrollLeft)\n\n popup?.open({\n right,\n top\n })\n }}\n >filter_alt</md-icon\n >\n\n ${!renderer\n ? html``\n : type !== 'select'\n ? html` <ox-popup\n ><div filter-title><md-icon>filter_alt</md-icon> filter by <strong>${column.name}</strong></div>\n ${renderer(column, value, this)}</ox-popup\n >`\n : filter!.operator === 'in'\n ? html`<ox-popup-list\n multiple\n attr-selected=\"checked\"\n .value=${value}\n with-search\n @select=${(e: CustomEvent) =>\n e.target?.dispatchEvent(\n new CustomEvent('filter-change', {\n bubbles: true,\n composed: true,\n detail: {\n name,\n operator: filter!.operator,\n value: !e.detail\n ? undefined\n : e.detail instanceof Array && e.detail.length === 0\n ? undefined\n : e.detail\n }\n })\n )}\n ><div filter-title slot=\"header\">\n <md-icon>filter_alt</md-icon> filter by <strong>${column.name}</strong>\n </div>\n ${renderer(column, value, this)}</ox-popup-list\n >`\n : html`<ox-popup-list\n .value=${value}\n with-search\n @select=${(e: CustomEvent) =>\n e.target?.dispatchEvent(\n new CustomEvent('filter-change', {\n bubbles: true,\n composed: true,\n detail: {\n name,\n operator: filter!.operator,\n value: e.detail ? e.detail : undefined\n }\n })\n )}\n ><div filter-title slot=\"header\">\n <md-icon>filter_alt</md-icon> filter by <strong>${column.name}</strong>\n </div>\n ${renderer(column, value, this)}</ox-popup-list\n >`}\n `\n }\n\n _changeSort(column: ColumnConfig) {\n if (!column.sortable) {\n return\n }\n\n var sorters = [...this.sorters]\n\n var idx = sorters.findIndex(sorter => sorter.name == column.name)\n if (idx !== -1) {\n let sorter = sorters[idx]\n if (sorter.desc) {\n sorters.splice(idx, 1)\n } else {\n sorters.splice(idx, 1, {\n ...sorter,\n desc: true\n })\n }\n } else {\n var sorter = {\n name: column.name,\n desc: false\n }\n\n sorters.push(sorter)\n }\n\n this.sorters = sorters\n\n this.dispatchEvent(\n new CustomEvent('fetch-params-change', {\n bubbles: true,\n composed: true,\n detail: {\n sorters: this.sorters,\n from: 'data-grid-header'\n }\n })\n )\n }\n\n _accumalate(x: number) {\n this._lastAccVal = (this._lastAccVal ?? 0) + x\n return this._lastAccVal\n }\n\n _notifyWidthChange(idx: number, width: number) {\n if (!this._throttledNotifier) {\n this._throttledNotifier = throttle((idx: number, width: number) => {\n this.dispatchEvent(\n new CustomEvent('column-width-change', {\n bubbles: true,\n composed: true,\n detail: {\n idx,\n width\n }\n })\n )\n\n this.notifyFixedLeftChange()\n\n this._lastAccVal = 0\n }, 100)\n }\n\n this._throttledNotifier(idx, width)\n }\n\n _mousedown(e: MouseEvent, idx: number) {\n e.stopPropagation()\n e.preventDefault()\n\n var mousemoveHandler = ((e: MouseEvent) => {\n e.stopPropagation()\n e.preventDefault()\n let column = this.columns[idx]\n\n let width = Math.max(0, Number(column.width || 100) + this._accumalate(e.movementX))\n if (width == 0) {\n /* CLARIFY-ME 왜 마지막 이벤트의 offsetX로 음수 값이 오는가 */\n return\n }\n\n this._notifyWidthChange(idx, width)\n }).bind(this)\n\n var mouseupHandler = ((e: MouseEvent) => {\n document.removeEventListener('mousemove', mousemoveHandler)\n document.removeEventListener('mouseup', mouseupHandler)\n\n mousemoveHandler(e)\n }).bind(this)\n\n document.addEventListener('mousemove', mousemoveHandler)\n document.addEventListener('mouseup', mouseupHandler)\n }\n}\n"]}
|
1
|
+
{"version":3,"file":"data-grid-header.js","sourceRoot":"","sources":["../../../src/data-grid/data-grid-header.ts"],"names":[],"mappings":"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","sourcesContent":["import '@operato/popup/ox-popup.js'\nimport '@material/web/icon/icon.js'\n\nimport { css, html, LitElement, PropertyValues, nothing, TemplateResult } from 'lit'\nimport { customElement, property, state } from 'lit/decorators.js'\nimport { ifDefined } from 'lit/directives/if-defined.js'\nimport throttle from 'lodash-es/throttle'\n\nimport { OxPopup } from '@operato/popup'\nimport { TooltipReactiveController, closestElement } from '@operato/utils'\n\nimport { ZERO_COLUMNS, ZERO_DATA } from '../configure/zero-config'\nimport { FilterStyles } from '../filters/filter-styles'\nimport { getFilterRenderer } from '../filters/registry'\nimport { ColumnConfig, FilterConfigObject, FilterValue, GristData, SortersConfig } from '../types'\n\n@customElement('ox-grid-header')\nexport class DataGridHeader extends LitElement {\n static styles = [\n FilterStyles,\n css`\n :host {\n position: relative;\n display: grid;\n grid-template-columns: var(--grid-template-columns);\n\n border-top: var(--grid-header-top-border);\n overflow: hidden;\n\n font-variation-settings: 'FILL' 1;\n }\n\n :host([raised]) [fixed] {\n /* 고정 컬럼이 살짝 올라와 있는 느낌을 표현 */\n box-shadow: 3px 0 3px rgba(0, 0, 0, 0.1);\n }\n\n div[column] {\n display: flex;\n\n white-space: nowrap;\n overflow: hidden;\n background-color: var(--grid-header-background-color);\n border-bottom: var(--grid-header-bottom-border);\n padding: var(--grid-header-padding);\n\n text-overflow: ellipsis;\n font: var(--grid-header-font);\n color: var(--grid-header-color);\n }\n\n div[gutter] {\n padding: var(--spacing-small) 0;\n text-align: center;\n }\n\n span {\n display: block;\n white-space: nowrap;\n overflow: hidden;\n }\n\n span[for-title] {\n flex: 1;\n text-overflow: ellipsis;\n line-height: 1.6;\n text-transform: var(--grid-header-text-transform, capitalize);\n align-self: center;\n }\n\n span[for-title] * {\n vertical-align: middle;\n }\n\n span[for-title] md-icon {\n font-size: 1.2em;\n }\n\n span[sorter],\n span[filter] {\n display: flex;\n align-self: center;\n\n padding: 0;\n border: 0;\n }\n\n span[sorter] md-icon {\n font-size: var(--grid-header-sorter-size);\n }\n\n span[filter] > md-icon {\n font-size: var(--fontsize-default);\n line-height: 20px;\n }\n\n span[splitter] {\n cursor: col-resize;\n border-right: var(--grid-header-splitter-border);\n margin-right: 0;\n }\n\n span[splitter]:hover {\n border-right: var(--grid-header-splitter-border-hover);\n }\n\n [filter-title] {\n color: var(--grid-header-filter-title-color);\n font: var(--grid-header-filter-title-font);\n text-transform: capitalize;\n }\n\n [filter-title] * {\n vertical-align: middle;\n }\n\n [filter-title] md-icon {\n opacity: 0.7;\n color: var(--grid-header-filter-title-icon-color);\n }\n\n [filter] input[type='checkbox'] {\n margin-left: var(--spacing-medium);\n margin-bottom: var(--spacing-small);\n }\n\n [fixed] {\n position: sticky;\n z-index: 1;\n }\n\n .span-both {\n grid-row: 1 / span 2; /* 1단과 2단에 걸쳐 표시 */\n }\n\n .group-header {\n grid-row: 1; /* 1행에 배치 */\n grid-column: var(--group-start) / span var(--group-size); /* 2열부터 시작하여 2열에 걸쳐 표시 */\n }\n\n @media print {\n :host {\n grid-template-columns: var(--grid-template-print-columns);\n }\n }\n `\n ]\n\n @property({ type: Array }) columns: ColumnConfig[] = ZERO_COLUMNS\n @property({ type: Object }) data: GristData = ZERO_DATA\n @property({ type: Array }) sorters: SortersConfig = []\n @property({ type: Array }) filters: FilterValue[] = []\n @property({ type: Boolean, attribute: 'filtering-feature' }) filteringFeature: boolean = false\n\n @state() private row1: {\n index: number\n column: ColumnConfig\n clazz?: string\n start?: number\n size?: number\n align?: string\n group?: string\n }[] = []\n\n @state() private row2: {\n index: number\n column: ColumnConfig\n }[] = []\n\n private _lastAccVal?: number\n private _throttledNotifier?: any\n\n private tooltipController?: TooltipReactiveController = new TooltipReactiveController(this)\n\n connectedCallback() {\n super.connectedCallback()\n\n const grid = closestElement('ox-grist', this)\n\n this.addEventListener('scroll', function () {\n this.scrollLeft == 0 ? this.removeAttribute('raised') : this.setAttribute('raised', '')\n })\n\n if (this.filteringFeature) {\n this?.addEventListener('filter-change', (e: Event) => {\n const { name, operator, value } = (e as CustomEvent).detail\n const filters = this.filters instanceof Array ? [...this.filters] : []\n\n if (value == null) {\n const index = filters.findIndex(filter => filter.name === name)\n if (index === -1) {\n return\n }\n\n filters.splice(index, 1)\n } else {\n const index = filters.findIndex(filter => filter.name === name)\n if (index === -1) {\n filters.push({ name, operator, value })\n } else {\n filters.splice(index, 1, { name, operator, value })\n }\n }\n\n grid?.dispatchEvent(\n new CustomEvent('fetch-params-change', {\n detail: {\n filters,\n from: 'data-grid-header'\n }\n })\n )\n })\n }\n }\n\n render() {\n const clazz = this.row2.length > 0 ? 'span-both' : undefined\n\n return html`\n ${this.row1.map(({ column, clazz, start, size, align, index, group }) =>\n this.renderHeaderColumn({ column, clazz, start, size, align, index, group })\n )}\n\n <div column class=${ifDefined(clazz)}></div>\n\n ${this.row2.map(({ column, index }) => this.renderHeaderColumn({ column, index }))}\n `\n }\n\n renderHeaderColumn({ column, clazz, start, size, align, index, group }: any): TemplateResult {\n if (column.hidden) {\n return html`${nothing}`\n }\n\n return html`\n <div\n ?gutter=${column.type == 'gutter'}\n ?fixed=${column.fixed}\n column\n class=${ifDefined(clazz)}\n style=${group\n ? `--group-start:${start};--group-size:${size};${column.header?.style || ''}`\n : `${column.header?.style || ''}`}\n >\n <span\n for-title\n data-reactive-tooltip\n style=\"text-align:${align || column.record.align || 'left'};\"\n @click=${(e: MouseEvent) => this._changeSort(column)}\n >${this._renderHeader(column)}\n </span>\n\n ${!group && column.sortable\n ? html`\n <span sorter @click=${(e: MouseEvent) => this._changeSort(column)}>\n ${this._renderSortHeader(column)}\n </span>\n `\n : nothing}\n ${!group &&\n this.filteringFeature &&\n column.filter &&\n (column.filter as FilterConfigObject).operator !== 'search'\n ? html` <span filter> ${this._renderFilterHeader(column)} </span> `\n : nothing}\n ${column.resizable !== false\n ? html`\n <span splitter draggable=\"false\" @mousedown=${(e: MouseEvent) => this._mousedown(e, index)}> </span>\n `\n : nothing}\n </div>\n `\n }\n\n notifyFixedLeftChange() {\n const fixedHeaders = Array.from(this.renderRoot.querySelectorAll('div[fixed]')) as HTMLElement[]\n const fixedLefts = [] as number[]\n var left = 0\n fixedHeaders.forEach((header: HTMLElement) => {\n header.style.left = left + 'px'\n fixedLefts.push(left)\n\n const width = header.offsetWidth\n left += width\n })\n\n this.dispatchEvent(\n new CustomEvent('fixed-lefts-change', {\n detail: fixedLefts\n })\n )\n }\n\n updated(changes: PropertyValues) {\n var isColumnWidthChangePossible = false\n\n if (changes.has('columns')) {\n this.row2 = this.columns.reduce((row2, column, index) => {\n if (column.hidden || !column.header?.group) {\n return row2\n }\n return row2.concat({\n index,\n column\n } as any)\n }, [] as any[])\n\n const clazz = this.row2.length > 0 ? 'span-both' : undefined\n\n var columnNo = 0\n\n this.row1 = this.columns.reduce((row1, column, index) => {\n if (column.hidden) {\n return row1\n }\n\n columnNo++\n if (!column.header?.group) {\n return row1.concat({\n index,\n column,\n clazz\n } as any)\n }\n const { group, groupStyle } = column.header\n const last = row1[row1.length - 1] as any\n\n if (!last || group !== last.group) {\n return row1.concat({\n index,\n column: {\n ...column,\n header: {\n renderer: () => group,\n style: groupStyle\n }\n },\n group,\n align: 'center',\n clazz: 'group-header',\n start: columnNo,\n size: 1\n } as any)\n }\n\n last.size++\n\n return row1\n }, [] as any[])\n\n isColumnWidthChangePossible = true\n }\n\n if (changes.has('data')) {\n isColumnWidthChangePossible = true\n }\n\n if (isColumnWidthChangePossible) {\n // requestAnimationFrame(() => this.notifyFixedLeftChange())\n this.notifyFixedLeftChange()\n }\n }\n\n _renderHeader(column: ColumnConfig) {\n var { renderer } = column.header || {}\n var title = renderer.call(this, column)\n\n return html`${column?.record?.mandatory ? '*' : ''} ${title} `\n }\n\n _renderSortHeader(column: ColumnConfig) {\n var sorters = this.sorters || []\n\n var sorter = sorters.find(sorter => column.type !== 'gutter' && column.name == sorter.name)\n if (!sorter) {\n return html`<md-icon style=\"opacity: 0.2;\">unfold_more</md-icon>`\n }\n\n if (sorters.length > 1) {\n var rank = sorters.indexOf(sorter) + 1\n return sorter.desc\n ? html` <md-icon>keyboard_arrow_down</md-icon><sub>${rank}</sub> `\n : html` <md-icon>keyboard_arrow_up</md-icon><sub>${rank}</sub> `\n } else {\n return sorter.desc ? html` <md-icon>keyboard_arrow_down</md-icon> ` : html` <md-icon>keyboard_arrow_up</md-icon> `\n }\n }\n\n _renderFilterHeader(column: ColumnConfig) {\n const name = column.name\n const filter = column.filter as FilterConfigObject\n const type = filter.type\n const value = this.filters.find(filter => filter.name === name)?.value\n const idx = filter!.operator === 'between' ? 1 : 0\n const renderer = getFilterRenderer(type)[idx]\n\n return html`\n <md-icon\n @click=${(e: Event) => {\n const parent = (e.target as HTMLElement).closest('[column]') as HTMLElement\n const popup = parent.querySelector('ox-popup, ox-popup-list') as OxPopup | null\n // const popup = (e.target as HTMLElement).nextSibling as OxPopupList | null\n\n // absolute position인 popup의 위치 부모는 grist 이므로,\n // data-grid-header 의 포지션 부모(grist)의 위치로부터 계산해야함.\n // this의 position을 relative로 하지 못하는 이유 : ox-popup-list가 grid body에 덮히기 때문.\n // const top = parent.offsetTop + parent.offsetHeight\n // const right = this.clientWidth - (parent.offsetLeft + parent.offsetWidth - this.scrollLeft)\n\n popup?.open({\n right: 0,\n top: parent.offsetHeight\n })\n }}\n >filter_alt</md-icon\n >\n\n ${!renderer\n ? html``\n : type !== 'select'\n ? html` <ox-popup\n ><div filter-title><md-icon>filter_alt</md-icon> filter by <strong>${column.name}</strong></div>\n ${renderer(column, value, this)}</ox-popup\n >`\n : filter!.operator === 'in'\n ? html`<ox-popup-list\n multiple\n attr-selected=\"checked\"\n .value=${value}\n with-search\n @select=${(e: CustomEvent) =>\n e.target?.dispatchEvent(\n new CustomEvent('filter-change', {\n bubbles: true,\n composed: true,\n detail: {\n name,\n operator: filter!.operator,\n value: !e.detail\n ? undefined\n : e.detail instanceof Array && e.detail.length === 0\n ? undefined\n : e.detail\n }\n })\n )}\n ><div filter-title slot=\"header\">\n <md-icon>filter_alt</md-icon> filter by <strong>${column.name}</strong>\n </div>\n ${renderer(column, value, this)}</ox-popup-list\n >`\n : html`<ox-popup-list\n .value=${value}\n with-search\n @select=${(e: CustomEvent) =>\n e.target?.dispatchEvent(\n new CustomEvent('filter-change', {\n bubbles: true,\n composed: true,\n detail: {\n name,\n operator: filter!.operator,\n value: e.detail ? e.detail : undefined\n }\n })\n )}\n ><div filter-title slot=\"header\">\n <md-icon>filter_alt</md-icon> filter by <strong>${column.name}</strong>\n </div>\n ${renderer(column, value, this)}</ox-popup-list\n >`}\n `\n }\n\n _changeSort(column: ColumnConfig) {\n if (!column.sortable) {\n return\n }\n\n var sorters = [...this.sorters]\n\n var idx = sorters.findIndex(sorter => sorter.name == column.name)\n if (idx !== -1) {\n let sorter = sorters[idx]\n if (sorter.desc) {\n sorters.splice(idx, 1)\n } else {\n sorters.splice(idx, 1, {\n ...sorter,\n desc: true\n })\n }\n } else {\n var sorter = {\n name: column.name,\n desc: false\n }\n\n sorters.push(sorter)\n }\n\n this.sorters = sorters\n\n this.dispatchEvent(\n new CustomEvent('fetch-params-change', {\n bubbles: true,\n composed: true,\n detail: {\n sorters: this.sorters,\n from: 'data-grid-header'\n }\n })\n )\n }\n\n _accumalate(x: number) {\n this._lastAccVal = (this._lastAccVal ?? 0) + x\n return this._lastAccVal\n }\n\n _notifyWidthChange(idx: number, width: number) {\n if (!this._throttledNotifier) {\n this._throttledNotifier = throttle((idx: number, width: number) => {\n this.dispatchEvent(\n new CustomEvent('column-width-change', {\n bubbles: true,\n composed: true,\n detail: {\n idx,\n width\n }\n })\n )\n\n this.notifyFixedLeftChange()\n\n this._lastAccVal = 0\n }, 100)\n }\n\n this._throttledNotifier(idx, width)\n }\n\n _mousedown(e: MouseEvent, idx: number) {\n e.stopPropagation()\n e.preventDefault()\n\n var mousemoveHandler = ((e: MouseEvent) => {\n e.stopPropagation()\n e.preventDefault()\n let column = this.columns[idx]\n\n let width = Math.max(0, Number(column.width || 100) + this._accumalate(e.movementX))\n if (width == 0) {\n /* CLARIFY-ME 왜 마지막 이벤트의 offsetX로 음수 값이 오는가 */\n return\n }\n\n this._notifyWidthChange(idx, width)\n }).bind(this)\n\n var mouseupHandler = ((e: MouseEvent) => {\n document.removeEventListener('mousemove', mousemoveHandler)\n document.removeEventListener('mouseup', mouseupHandler)\n\n mousemoveHandler(e)\n }).bind(this)\n\n document.addEventListener('mousemove', mousemoveHandler)\n document.addEventListener('mouseup', mouseupHandler)\n }\n}\n"]}
|
package/dist/src/data-grist.js
CHANGED
@@ -196,7 +196,8 @@ let DataGrist = class DataGrist extends LitElement {
|
|
196
196
|
const sorters = (_a = this.compiledConfig) === null || _a === void 0 ? void 0 : _a.sorters;
|
197
197
|
const filters = (_b = this.compiledConfig) === null || _b === void 0 ? void 0 : _b.columns.filter(column => column.filter &&
|
198
198
|
'value' in column.filter &&
|
199
|
-
(typeof
|
199
|
+
(typeof column.filter.value === 'boolean' ||
|
200
|
+
column.filter.value)).map(column => {
|
200
201
|
const filter = column.filter;
|
201
202
|
return { name: column.name, operator: filter.operator, value: filter.value };
|
202
203
|
});
|
@@ -250,6 +251,7 @@ let DataGrist = class DataGrist extends LitElement {
|
|
250
251
|
render() {
|
251
252
|
const empty = !this._showSpinner && this._data.records.length == 0;
|
252
253
|
return html `
|
254
|
+
<slot name="headroom"> </slot>
|
253
255
|
<div id="wrap" @keydown=${(e) => this.onKeydown(e)}>
|
254
256
|
${this.mode == 'GRID'
|
255
257
|
? html `
|
@@ -291,8 +293,6 @@ let DataGrist = class DataGrist extends LitElement {
|
|
291
293
|
</div>
|
292
294
|
|
293
295
|
<div id="spinner" ?show=${this._showSpinner}></div>
|
294
|
-
|
295
|
-
<slot name="headroom"> </slot>
|
296
296
|
`;
|
297
297
|
}
|
298
298
|
/* for timecapsule feature */
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"data-grist.js","sourceRoot":"","sources":["../../src/data-grist.ts"],"names":[],"mappings":"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","sourcesContent":["import './data-grid/data-grid'\nimport './data-list/data-list'\nimport './data-card/data-card'\n\nimport { css, html, LitElement, PropertyValues } from 'lit'\nimport { customElement, property, query, queryAsync, state } from 'lit/decorators.js'\nimport isEmpty from 'lodash-es/isEmpty'\nimport isEqual from 'lodash-es/isEqual'\n\nimport Headroom from '@operato/headroom'\nimport { pulltorefresh } from '@operato/pull-to-refresh'\nimport { HeadroomStyles, ScrollbarStyles, SpinnerStyles } from '@operato/styles'\nimport { PagePreferenceProvider } from '@operato/p13n'\nimport { SnapshotTaker, TimeCapsule } from '@operato/utils'\n\nimport { buildConfig } from './configure/config-builder'\nimport { ZERO_CONFIG, ZERO_DATA, ZERO_PAGES, ZERO_PAGINATION } from './configure/zero-config'\nimport { DataCard } from './data-card/data-card'\nimport { DataConsumer } from './data-consumer'\nimport { DataGrid } from './data-grid/data-grid'\nimport { DataList } from './data-list/data-list'\nimport { DataProvider } from './data-provider'\nimport {\n ColumnConfig,\n FetchHandler,\n FilterConfigObject,\n FilterValue,\n GristConfig,\n GristData,\n GristRecord,\n GristSelectFunction,\n PaginationConfig,\n PersonalGristPreference,\n SortersConfig\n} from './types'\nimport { convertListParamToSearchString, convertSearchStringToListParam } from './utils'\n\n/**\n * A custom element for rendering data in a grid, list, or card format.\n *\n * @element ox-grist\n */\n@customElement('ox-grist')\nexport class DataGrist extends LitElement implements DataConsumer {\n static styles = [\n ScrollbarStyles,\n HeadroomStyles,\n SpinnerStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n background-color: var(--grist-background-color);\n min-height: 120px;\n\n overflow: hidden;\n\n /* for pulltorefresh controller */\n position: relative;\n\n padding: var(--ox-grist-padding);\n\n --md-icon-size: var(--grid-record-wide-fontsize);\n }\n\n #wrap {\n flex: 1;\n display: flex;\n flex-direction: column;\n overflow: auto;\n }\n\n ox-grid {\n flex: 1;\n border: var(--grid-wrap-container-border, 0px solid transparent);\n border-width: var(--grid-wrap-container-border-width, 0px);\n }\n\n slot[name='headroom'] {\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n\n width: 100%;\n box-sizing: border-box;\n background-color: var(--grist-background-color);\n\n z-index: 2;\n }\n `\n ]\n\n /**\n * The rendering mode of the component, which can be 'GRID', 'LIST', or 'CARD'.\n * Default is 'GRID'.\n *\n * @property {string}\n */\n @property() mode: 'GRID' | 'LIST' | 'CARD' = 'GRID'\n\n /**\n * The configuration object for the data grist.\n *\n * @property {Object}\n */\n @property() config: any\n\n /**\n * The data to be displayed in the data grist.\n *\n * @property {GristData}\n */\n @property({ type: Object }) data: GristData = ZERO_DATA\n\n /**\n * An array of selected records in the data grist.\n *\n * @property {GristRecord[]}\n */\n @property({ type: Array }) selectedRecords?: GristRecord[]\n\n /**\n * Indicates whether explicit fetching of data is enabled. If true, data will be fetched\n * only when `fetch` method is called. Default is false.\n *\n * @property {boolean}\n */\n @property({ type: Boolean, attribute: 'explicit-fetch' }) explicitFetch: boolean = false\n\n /**\n * The fetch handler function used to retrieve data from a remote source.\n *\n * @property {FetchHandler}\n */\n @property() fetchHandler?: FetchHandler\n\n /**\n * Additional fetch options to be passed to the fetch handler.\n *\n * @property {Object}\n */\n @property() fetchOptions: any\n\n /**\n * An array of filter values to be applied to the data grist.\n *\n * @property {FilterValue[]}\n */\n @property({ type: Array }) filters?: FilterValue[]\n\n /**\n * An array of sorters to determine the order of records in the data grist.\n *\n * @property {SortersConfig}\n */\n @property({ type: Array }) sorters?: SortersConfig\n\n /**\n * The pagination configuration for the data grist.\n *\n * @property {PaginationConfig}\n */\n @property({ type: Object }) pagination?: PaginationConfig\n\n /**\n * Indicates whether URL parameters are sensitive to changes. If true, changes in URL\n * parameters will trigger data fetching. Default is undefined.\n *\n * @property {boolean}\n */\n @property({ type: Boolean, attribute: 'url-params-sensitive' }) urlParamsSensitive?: boolean\n\n @property({ type: Object }) personalConfigProvider: PagePreferenceProvider = {\n load: () => {\n return {}\n },\n save: (preference: any) => preference,\n reset: () => {}\n }\n\n @state() personalConfig?: {\n columns?: Partial<ColumnConfig>[]\n [key: string]: any\n }\n\n @state() _data: GristData = ZERO_DATA // copy data, dirty data\n @state() _config: GristConfig = ZERO_CONFIG // compiled configuration\n @state() private _showSpinner: boolean = false\n\n @query('slot[name=headroom]') head!: HTMLElement\n @query('#grist') grist!: DataGrid | DataList | DataCard\n @queryAsync('#wrap') private wrap!: Promise<HTMLElement>\n\n private timeCapsule?: TimeCapsule\n private snapshotTaker?: SnapshotTaker\n\n private dataProvider?: DataProvider\n private pulltorefreshHandle?: any\n private headroom?: Headroom\n private orginPaddingTop?: string\n private originMarginTop?: string\n private lastLocation: { origin?: string; pathname?: string; search?: string } = {}\n\n /* 그리드가 준비되기 전에 fetch 요청이 있었음을 나타내는 플래그임 */\n private pendingFetch?: boolean\n\n private popstateEventHandler: EventListener = ((e: Event) => {\n const { origin, pathname, search } = window.location\n if (\n this.lastLocation.origin &&\n (this.lastLocation.origin !== origin ||\n this.lastLocation.pathname !== pathname ||\n this.lastLocation.search === search)\n ) {\n return\n }\n\n this.lastLocation = {\n origin,\n pathname,\n search\n }\n\n var { filters = [], sorters = [] } = convertSearchStringToListParam(search)\n\n try {\n if (!isEqual(filters, this.filters) || !isEqual(sorters, this.sorters)) {\n this.dispatchEvent(\n new CustomEvent('fetch-params-change', {\n bubbles: true,\n composed: true,\n detail: {\n filters,\n sorters,\n from: 'url-parameter'\n }\n })\n )\n }\n } catch (e) {\n console.error(`invalid fetch params on URL query string : ${e}`)\n }\n }).bind(this)\n\n private fetchParamsChangeEventHandler: EventListener = ((e: Event) => {\n const { sorters, filters, from } = (e as CustomEvent).detail\n\n sorters && (this.sorters = sorters)\n filters && (this.filters = filters)\n\n if (!this.urlParamsSensitive || from === 'url-parameter') {\n return\n }\n\n const queryString = convertListParamToSearchString({ filters, sorters, base: window.location.search })\n this.lastLocation.search = queryString ? `?${queryString}` : ''\n const url = `${window.location.pathname}${this.lastLocation.search}`\n\n history.pushState({}, document.title, url)\n }).bind(this)\n\n async firstUpdated() {\n // Mutation Observer를 사용하여 슬롯의 크기 변경을 감지하고 다시 그린다.\n const observer = new ResizeObserver(mutationsList => {\n this.setHeadroom()\n })\n\n observer.observe(this.head)\n }\n\n async connectedCallback() {\n super.connectedCallback()\n\n this.dataProvider = new DataProvider(this)\n\n this.timeCapsule = new TimeCapsule(10)\n this.snapshotTaker = new SnapshotTaker(this, this.timeCapsule!)\n\n this.addEventListener('fetch-params-change', this.fetchParamsChangeEventHandler)\n\n await this.updateComplete\n }\n\n disconnectedCallback() {\n super.disconnectedCallback()\n\n this.removeEventListener('fetch-params-change', this.fetchParamsChangeEventHandler)\n\n this.timeCapsule && this.timeCapsule.dispose()\n this.snapshotTaker && this.snapshotTaker.dispose()\n\n delete this.timeCapsule\n delete this.snapshotTaker\n\n this.dataProvider?.dispose()\n this.resetPullToRefresh()\n }\n\n private resetPullToRefresh() {\n if (this.pulltorefreshHandle) {\n this.pulltorefreshHandle()\n delete this.pulltorefreshHandle\n }\n }\n\n private async setPullToRefresh() {\n this.resetPullToRefresh()\n if (this.mode !== 'GRID' && this.fetchHandler) {\n this.pulltorefreshHandle = pulltorefresh({\n container: await this.wrap,\n scrollable: this.grist.pullToRefreshTarget,\n refresh: () => {\n return this.fetch(true)\n }\n })\n }\n }\n\n public applyUpdatedConfiguration() {\n if (!this.personalConfig || !this.config) {\n return\n }\n\n const config = { ...this.config }\n const columns: Partial<ColumnConfig>[] = config.columns\n\n const { columns: personalColumns, sorters, pagination, mode } = this.personalConfig\n\n if (personalColumns) {\n const xcolumns = columns.map((column: Partial<ColumnConfig>) => {\n const personalColumn = personalColumns.find(pcolumn => pcolumn.name == column.name)\n return personalColumn ? { ...column, ...personalColumn } : column\n })\n\n function reorderList(a: { name: string }[], b: { name: string }[]): { name: string }[] {\n // 결과 배열 초기화, a 배열 길이만큼 undefined로 채움\n const result = new Array(a.length)\n\n // b 배열에 없는 아이템은 원래 위치로 채움\n a.forEach((item, index) => {\n if (!item.name || !b.find(bi => bi.name == item.name)) {\n result[index] = item\n }\n })\n\n b.forEach(item => {\n const ai = a.find(ai => ai.name == item.name)\n if (ai) {\n result[result.findIndex(slot => slot === undefined)] = ai\n }\n })\n\n return result\n }\n\n // 배열 재정렬 실행\n config.columns = reorderList(xcolumns as any, personalColumns as any)\n }\n\n if (pagination) {\n config.pagination = pagination\n }\n\n if (sorters) {\n config.sorters = sorters\n }\n\n if (mode) {\n this.mode = mode\n }\n\n this._config = buildConfig({\n ...config\n })\n\n this.dispatchEvent(\n new CustomEvent('config-change', {\n bubbles: true,\n composed: true,\n detail: this.compiledConfig\n })\n )\n\n this.pagination = this.compiledConfig.pagination || {}\n\n if (!this.urlParamsSensitive) {\n const sorters = this.compiledConfig?.sorters\n const filters = this.compiledConfig?.columns\n .filter(\n column =>\n column.filter &&\n 'value' in (column.filter as FilterConfigObject) &&\n (typeof((column.filter as FilterConfigObject).value) === 'boolean' || (column.filter as FilterConfigObject).value)\n )\n .map(column => {\n const filter = column.filter as FilterConfigObject\n return { name: column.name, operator: filter.operator, value: filter.value } as FilterValue\n })\n\n this.dispatchEvent(\n new CustomEvent('fetch-params-change', {\n bubbles: true,\n composed: true,\n detail: {\n filters,\n sorters,\n from: 'config'\n }\n })\n )\n }\n\n if (this.dataProvider) {\n const { limit, pages = ZERO_PAGES } = this._config.pagination || ZERO_PAGINATION\n this.dataProvider.page = 1\n this.dataProvider.limit = limit || pages[0] || ZERO_PAGES[0]\n }\n\n if (this.pendingFetch || (!this.urlParamsSensitive && !this.explicitFetch)) {\n this.pendingFetch = false\n this.fetch()\n }\n }\n\n private setHeadroom() {\n this.headroom?.destroy()\n\n if (this.grist && this.head && this.head.style.display !== 'none') {\n const style = getComputedStyle(this.grist)\n\n this.orginPaddingTop = style.paddingTop || '0'\n this.originMarginTop = style.marginTop || '0'\n\n this.headroom = new Headroom(this.head, {\n scroller: this.grist,\n onTop: () => {\n this.grist.style.paddingTop = this.orginPaddingTop!\n this.originMarginTop = this.grist.style.marginTop\n\n this.grist.style.marginTop = this.head.clientHeight + 'px'\n },\n onNotTop: () => {\n this.grist.style.marginTop = this.originMarginTop!\n this.orginPaddingTop = this.grist.style.paddingTop\n\n this.grist.style.paddingTop = this.head.clientHeight + 'px'\n }\n })\n\n this.headroom.init()\n } else if (this.orginPaddingTop) {\n this.grist.style.paddingTop = this.orginPaddingTop\n this.grist.style.marginTop = this.originMarginTop!\n }\n }\n\n render() {\n const empty = !this._showSpinner && this._data.records.length == 0\n\n return html`\n <div id=\"wrap\" @keydown=${(e: KeyboardEvent) => this.onKeydown(e)}>\n ${this.mode == 'GRID'\n ? html`\n <ox-grid\n id=\"grist\"\n .config=${this.compiledConfig}\n .data=${this._data}\n .sorters=${this.sorters || []}\n .filters=${this.filters || []}\n .pagination=${this.pagination || {}}\n ?empty=${empty}\n >\n <slot name=\"setting\" slot=\"setting\"> </slot>\n </ox-grid>\n `\n : this.mode == 'CARD'\n ? html`\n <ox-card\n id=\"grist\"\n .config=${this.compiledConfig}\n .data=${this._data}\n .sorters=${this.sorters || []}\n .filters=${this.filters || []}\n ?empty=${empty}\n >\n </ox-card>\n `\n : html`\n <ox-list\n id=\"grist\"\n .config=${this.compiledConfig}\n .data=${this._data}\n .sorters=${this.sorters || []}\n .filters=${this.filters || []}\n ?empty=${empty}\n >\n </ox-list>\n `}\n </div>\n\n <div id=\"spinner\" ?show=${this._showSpinner}></div>\n\n <slot name=\"headroom\"> </slot>\n `\n }\n\n /* for timecapsule feature */\n private onKeydown(e: KeyboardEvent) {\n if (e.key === 'z' && (e.metaKey || e.ctrlKey)) {\n if (e.shiftKey) {\n this.redo()\n } else {\n this.undo()\n }\n }\n }\n\n /**\n * Gets the current state of the component. The state includes information about the\n * dirty records and their changes.\n *\n * @getter\n * @public\n * @type {string}\n */\n get state() {\n return JSON.stringify(this.dirtyData)\n }\n\n /**\n * Undoes the previous change in the component's data by restoring it to the previous state.\n * This method is part of the TimeCapsule feature, allowing users to revert changes.\n */\n undo() {\n if (!this.timeCapsule?.backwardable) {\n return\n }\n\n this._data = JSON.parse(this.timeCapsule?.backward())\n }\n\n /**\n * Redoes the previously undone change in the component's data by restoring it to the next state.\n * This method is part of the TimeCapsule feature, allowing users to reapply changes.\n */\n redo() {\n if (!this.timeCapsule?.forwardable) {\n return\n }\n\n this._data = JSON.parse(this.timeCapsule?.forward())\n }\n\n /**\n * Fetches data from a data source and updates the component's data. This method is used to retrieve\n * new data or refresh the existing data in the component.\n *\n * @method\n * @param {boolean} reset - If true, the method resets the scroll position to the top.\n */\n async fetch(reset = true) {\n if (this.compiledConfig === ZERO_CONFIG) {\n /* avoid to be here */\n console.warn('grist is not configured yet.')\n this.pendingFetch = true\n return\n }\n\n if (reset && this.grist) {\n /*\n * scroll 의 현재위치에 의해서 scroll 이벤트가 발생할 수 있으므로, 이를 방지하기 위해서 스크롤의 위치를 TOP으로 옮긴다.\n * (scroll 이 첫페이지 크기 이상으로 내려가 있는 경우, 첫페이지부터 다시 표시하는 경우에, scroll 이벤트가 발생한다.)\n */\n this.grist.scrollTop = 0\n }\n\n if (this.dataProvider) {\n let { limit: initLimit, page: initPage, infinite } = this.compiledConfig.pagination || {}\n let { limit = initLimit || ZERO_PAGINATION.limit, page = initPage || ZERO_PAGINATION.page } = this.dataProvider\n\n if (infinite || this.mode !== 'GRID') {\n await this.dataProvider.attach(reset)\n } else {\n await this.dataProvider.fetch({\n limit,\n page,\n sorters: this.sorters || this.compiledConfig?.sorters,\n sortings: this.sorters || this.compiledConfig?.sorters,\n filters: this.filters\n })\n\n this.pagination && (this.pagination!.limit = limit)\n }\n }\n }\n\n async updated(changes: PropertyValues<this>) {\n var needToSetPullToRefresh = false\n\n if (changes.has('filters')) {\n await this.requestUpdate()\n }\n\n if (changes.has('sorters')) {\n await this.requestUpdate()\n }\n\n if (changes.has('personalConfigProvider')) {\n this.personalConfig = await this.personalConfigProvider.load()\n } else if (changes.has('config') || changes.has('personalConfig')) {\n this.applyUpdatedConfiguration()\n }\n\n if (changes.has('fetchHandler')) {\n this.dataProvider && (this.dataProvider.fetchHandler = this.fetchHandler)\n needToSetPullToRefresh = true\n }\n\n if (changes.has('fetchOptions')) {\n this.dataProvider && (this.dataProvider.fetchOptions = this.fetchOptions)\n }\n\n if (changes.has('data')) {\n this.reset()\n }\n\n if (changes.has('mode')) {\n if (this.mode === 'GRID') {\n this.style.removeProperty('--ox-grist-padding')\n } else {\n this.style.setProperty('--ox-grist-padding', '0')\n }\n\n needToSetPullToRefresh = true\n this.setHeadroom()\n }\n\n if (changes.has('selectedRecords')) {\n var { records } = this.data || []\n var selectedRecords = this.selectedRecords || []\n\n var _records = this.dirtyData.records\n\n /* 원본데이타에서 index를 찾아서, 복사본 데이타의 selected를 설정한다. */\n selectedRecords.forEach(selected => {\n var index = records.indexOf(selected)\n var record = _records[index]\n if (record) {\n record['__selected__'] = true\n }\n })\n\n /* update _data property intentionally */\n this.refresh()\n }\n\n if (changes.has('urlParamsSensitive')) {\n if (this.urlParamsSensitive) {\n //@ts-ignore\n this.popstateEventHandler() // call for the first time\n\n window.addEventListener('popstate', this.popstateEventHandler)\n } else {\n window.removeEventListener('popstate', this.popstateEventHandler)\n }\n }\n\n if (needToSetPullToRefresh) {\n await this.setPullToRefresh()\n }\n }\n\n /**\n * Represents the compiled configuration of the component, which includes various settings and\n * column configurations. You can access this property to get information about how the component\n * is configured.\n *\n * @getter\n * @public\n * @type {GristConfig}\n */\n get compiledConfig(): GristConfig {\n return this._config\n }\n\n /**\n * Returns the dirty data in the component, which includes the records that have been added,\n * modified, or deleted but have not been committed to the main data yet.\n *\n * @getter\n * @public\n * @type {GristData} - An object representing the dirty data.\n */\n get dirtyData(): GristData {\n return (this.grist as any)?.data || {}\n }\n\n /**\n * Returns an array of GristRecord objects representing the records in the dirty state. These are\n * the records that have been added, modified, or deleted but have not been committed to the main\n * data yet.\n *\n * @getter\n * @public\n * @type {GristRecord[]} - An array of GristRecord objects representing the dirty records.\n */\n get dirtyRecords() {\n var { records = [] } = this.dirtyData\n return records.filter(record => record['__dirty__'])\n }\n\n /**\n * Exports a list of patches representing the changes in the dirty state of records. Each patch\n * contains information about whether a record was added, modified, or deleted, along with the\n * record's unique identifier and the changed field values.\n *\n * @param {Object} options - Export options that control the format of the patch list.\n * @param {string} options.flagName - The name of the flag field in the patch indicating the change type (default: 'patchFlag').\n * @param {string} options.addedFlag - The flag value for added records (default: '+').\n * @param {string} options.deletedFlag - The flag value for deleted records (default: '-').\n * @param {string} options.modifiedFlag - The flag value for modified records (default: 'M').\n * @param {string} options.idField - The name of the unique identifier field (default: 'id').\n * @returns {Object[]} - An array of objects representing the patches.\n */\n exportPatchList({ flagName = 'patchFlag', addedFlag = '+', deletedFlag = '-', modifiedFlag = 'M', idField = 'id' }) {\n let dirtyRecords = this.dirtyRecords\n if (!dirtyRecords || dirtyRecords.length == 0) {\n return []\n }\n\n return dirtyRecords.map(record => {\n let flag = record.__dirty__\n\n let patch = {\n [flagName]: flag == 'M' ? modifiedFlag : flag == '+' ? addedFlag : deletedFlag\n }\n\n if (idField in record && record[idField]) {\n patch[idField] = record[idField]\n }\n\n for (let key in record.__dirtyfields__) {\n patch[key] = record[key]\n }\n return patch\n })\n }\n\n /**\n * Exports the selected records or all records in the component, depending on the specified options.\n * You can use this method to export data from the component in various formats or for different purposes.\n *\n * @param {Object} options - Export options that control the behavior of the export.\n * @param {boolean} options.ifSelectedOnly - If true, exports only the selected records. If false, exports all records.\n * @param {boolean} options.includeHiddenField - If true, includes hidden fields in the exported data.\n * @returns {Object[]} - An array of objects representing the exported records.\n */\n exportRecords({ ifSelectedOnly = true, includeHiddenField = true } = {}) {\n let records = ifSelectedOnly ? this.selected : this.data.records\n\n if (ifSelectedOnly && (!records || records.length == 0)) {\n records = this.data.records\n }\n\n let columns = this.compiledConfig.columns.filter(column => column.type !== 'gutter')\n if (!includeHiddenField) {\n columns = columns.filter(column => !column.hidden)\n }\n let columnNames = columns.map(column => column.name)\n\n return records.map(item => {\n return columnNames.reduce((record, name) => {\n record[name] = item[name]\n return record\n }, {} as any)\n })\n }\n\n /**\n * Gets the currently selected records in the component. It returns an array of GristRecord objects\n * that are currently selected. You can access this getter to retrieve the selected records.\n *\n * @getter\n * @public\n * @type {GristRecord[]}\n */\n get selected() {\n var { records = [] } = this.grist?.data\n return records.filter(record => record['__selected__'])\n }\n\n /**\n * Sets the currently selected records in the component. You can use this setter to programmatically\n * select specific records by providing an array of GristRecord objects to be selected.\n *\n * @setter\n * @public\n * @type {GristRecord[]}\n */\n set selected(selected: GristRecord[]) {\n if (!this.grist) {\n console.warn('grist not ready')\n return\n }\n\n selected.forEach(record => (record.__selected__ = true))\n this.refresh()\n }\n\n /**\n * Selects records in the component based on the provided selector function. You can use this method\n * to programmatically select specific records in the component.\n *\n * @method\n * @param {GristSelectFunction} selector - A function that determines which records to select.\n * @param {boolean} reset - If true, clears the previous selection before applying the new one.\n * If false, adds to the existing selection.\n */\n select(selector: GristSelectFunction, reset: boolean = false) {\n var { records = [] } = this.grist?.data\n\n if (reset) {\n this.selected.forEach(record => (record.__selected__ = false))\n }\n\n records.filter(record => selector(record)).forEach(record => (record.__selected__ = true))\n this.refresh()\n }\n\n /**\n * Shows the loading spinner in the component's UI to indicate ongoing data loading or processing.\n * You can call this method to display the spinner when necessary.\n */\n showSpinner() {\n this._showSpinner = true\n }\n\n /**\n * Hides the loading spinner in the component's UI to indicate that data loading or processing has completed.\n * You can call this method to hide the spinner when loading or processing is finished.\n */\n hideSpinner() {\n this._showSpinner = false\n }\n\n /**\n * Focuses on the component, making it the active element in the document. This method is useful\n * when you want to programmatically set focus to the component.\n */\n focus() {\n super.focus()\n\n this.grist.focus()\n }\n\n /**\n * Commits the changes made in the dirty state to the component's data. This method updates the\n * component's data with the changes made in the dirty state and clears the dirty state.\n */\n commit() {\n var { page, total, limit, records } = this.grist.data\n\n this.data = {\n page,\n total,\n limit,\n records: records.map(record => {\n var copied = {\n ...record\n }\n\n delete copied.__seq__\n delete copied.__dirty__\n delete copied.__selected__\n delete copied.__changes__\n delete copied.__dirtyfields__\n delete copied.__origin__\n delete copied.__depth__\n delete copied.__expanded__\n delete copied.__check_in_tree__\n delete copied.__children__\n delete copied.__typename\n\n return copied\n })\n }\n }\n\n /**\n * Shows the headroom element in the component. The headroom element is typically used for\n * displaying additional information or controls at the top of the component.\n */\n showHeadroom() {\n if (this.head) {\n this.head.style.display = 'block'\n this.setHeadroom()\n }\n }\n\n /**\n * Hides the headroom element in the component. This method hides the additional information\n * or controls displayed at the top of the component.\n */\n hideHeadroom() {\n if (this.head) {\n this.head.style.display = 'none'\n this.setHeadroom()\n }\n }\n\n /**\n * Toggles the visibility of the headroom element in the component. If the headroom element is\n * currently visible, this method hides it. If it's hidden, this method shows it.\n */\n toggleHeadroom() {\n if (this.head) {\n const display = this.head.style.display\n this.head.style.display = display !== 'none' ? 'none' : 'block'\n\n this.setHeadroom()\n }\n }\n\n /**\n * Forced internal data to be reflected on the screen\n * Data changing through a normal method is automatically reflected on the screen, so it is a method that does not need to be used in general.\n * Therefore, it will be deprecated.\n * @method\n */\n refresh() {\n this.grist.refresh()\n }\n\n /**\n * Resets the component's data to its original state before any changes were made.\n * This method discards all unsaved changes and restores the data to its initial state.\n *\n * @method\n * @public\n */\n reset() {\n // TODO tree 형태의 데이타로 _data를 만들 때, children, collapsed 등을 감안한다.\n var {\n limit = ZERO_PAGINATION.limit,\n page = ZERO_PAGINATION.page,\n total = ZERO_PAGINATION.total,\n records = []\n } = this.data || ZERO_PAGINATION\n\n const { childrenProperty, expanded } = this.compiledConfig.tree\n\n /* 원본 데이타를 남기고, 복사본(_data)을 사용한다. */\n records = ([] as GristRecord[]).concat(\n ...records.map((record, idx) =>\n this.traverseReset(\n record,\n this.mode == 'GRID' ? (page - 1) * limit + idx + 1 : idx + 1,\n 0,\n childrenProperty,\n expanded as () => boolean\n )\n )\n )\n\n if (childrenProperty) {\n records = ([] as GristRecord[]).concat(...records.map(record => this.traverseExpanded(record)))\n }\n\n this._data = {\n limit,\n page,\n total,\n records\n }\n\n this.timeCapsule?.reset()\n this.snapshotTaker?.take(true)\n }\n\n private traverseReset(\n record: GristRecord,\n seq: number,\n __depth__: number,\n childrenProperty: string | undefined,\n expanded: () => boolean\n ): GristRecord {\n const copied = {\n ...record,\n __seq__: seq,\n __origin__: record\n }\n\n if (childrenProperty) {\n const children: GristRecord[] = record[childrenProperty!]\n\n const __expanded__ = (expanded as Function)(record)\n const __children__ = (children || []).map(child =>\n this.traverseReset(child, seq, __depth__ + 1, childrenProperty, expanded)\n )\n\n Object.assign(copied, { __depth__, __children__, __expanded__ })\n }\n\n return copied\n }\n\n private traverseExpanded(record: GristRecord): GristRecord[] {\n const { __expanded__, __children__ = [] } = record\n\n if (__expanded__ && __children__.length > 0) {\n return [record].concat(...__children__.map(child => this.traverseExpanded(child)))\n } else {\n return [record]\n }\n }\n\n /**\n * Checks for dirty records in the component's data and marks them as dirty.\n * Dirty records are those that have unsaved changes.\n */\n checkDirties() {\n const records = this.dirtyRecords\n const { columns = [] } = this.compiledConfig || {}\n\n for (var record of records || []) {\n var origin = record['__origin__'] || {}\n\n var dirtyFields = (record['__dirtyfields__'] = columns\n .filter(column => column.type !== 'gutter' && !isEqual(origin[column.name], record[column.name]))\n .reduce((sum, column) => {\n var name = column.name\n\n sum[name] = {\n before: origin[name],\n after: record[name]\n }\n\n return sum\n }, {} as any))\n\n if (record['__dirty__'] == 'M' && isEmpty(dirtyFields)) {\n delete record['__dirty__']\n }\n }\n\n this._data = { ...this.dirtyData }\n\n this.snapshotTaker?.touch()\n }\n\n /**\n * Clones the selected records in the component's data. It creates a copy of the selected records\n * and marks them as new (added) records.\n */\n cloneSelectedRecords() {\n const records = this.selected || ([] as GristRecord[])\n\n records.forEach(record => {\n var cloned = {\n __dirty__: '+'\n } as GristRecord\n\n this.compiledConfig.columns\n .filter(column => column.record.editable)\n .forEach(column => {\n cloned[column.name] = record[column.name]\n })\n const rowIndex = this.dirtyData.records.findIndex(rec => rec === record)\n\n this.dirtyData.records.splice(rowIndex + 1, 0, cloned)\n })\n\n this.checkDirties()\n }\n\n /**\n * Adds child nodes to selected records in the component's tree data. It allows users to add child nodes\n * to the selected parent records.\n */\n addChildNodes() {\n const records = this.selected || ([] as GristRecord[])\n\n records.forEach(record => {\n this.grist.addChildNode(record)\n })\n }\n\n /**\n * Adds sibling nodes to selected records in the component's tree data. It allows users to add sibling nodes\n * to the selected records.\n */\n addSiblingNodes() {\n const records = this.selected || ([] as GristRecord[])\n\n records.forEach(record => {\n this.grist.addSiblingNode(record)\n })\n }\n\n /**\n * Deletes the selected records in the component's data. It removes the selected records from the data,\n * optionally marking them as deleted.\n *\n * @method\n * @param {boolean} dirty - If true, the method marks the records as deleted.\n */\n deleteSelectedRecords(dirty = true) {\n const records = this.selected || ([] as GristRecord[])\n\n records.forEach(record => {\n if (dirty) {\n record.__dirty__ = '-'\n }\n\n const rowIndex = this.dirtyData.records.findIndex(rec => rec === record)\n this.dirtyData.records.splice(rowIndex, 1)\n })\n\n this.checkDirties()\n }\n\n /**\n * Retrieves the search text used for filtering records.\n *\n * @property {string}\n */\n get searchText() {\n return (this.filters?.find(filter => filter.operator === 'search')?.value as string)?.match(/^\\%(.*)\\%$/)?.[1] || ''\n }\n\n /**\n * Sets the search text for filtering records.\n *\n * @property {string}\n */\n set searchText(searchText: string) {\n var filters = (this.filters || []).filter((filter: FilterValue) => filter.operator !== 'search')\n\n if (searchText) {\n const filtersConfig = this.compiledConfig.columns.filter(columnConfig => !!columnConfig.filter)\n const searchColumns = filtersConfig.filter(columnConfig => {\n const filter = columnConfig.filter as FilterConfigObject\n return filter!.operator === 'search'\n })\n\n filters = [\n ...searchColumns.map((column: ColumnConfig) => {\n const { name } = column\n\n return {\n name,\n operator: 'search',\n value: `%${searchText}%`\n } as FilterValue\n }),\n ...filters\n ]\n }\n\n this.grist.dispatchEvent(\n new CustomEvent('fetch-params-change', {\n bubbles: true,\n composed: true,\n detail: {\n filters\n }\n })\n )\n }\n\n getCurrentLimit() {\n return this.dataProvider?.limit || ZERO_PAGINATION.limit\n }\n}\n"]}
|
1
|
+
{"version":3,"file":"data-grist.js","sourceRoot":"","sources":["../../src/data-grist.ts"],"names":[],"mappings":"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","sourcesContent":["import './data-grid/data-grid'\nimport './data-list/data-list'\nimport './data-card/data-card'\n\nimport { css, html, LitElement, PropertyValues } from 'lit'\nimport { customElement, property, query, queryAsync, state } from 'lit/decorators.js'\nimport isEmpty from 'lodash-es/isEmpty'\nimport isEqual from 'lodash-es/isEqual'\n\nimport Headroom from '@operato/headroom'\nimport { pulltorefresh } from '@operato/pull-to-refresh'\nimport { HeadroomStyles, ScrollbarStyles, SpinnerStyles } from '@operato/styles'\nimport { PagePreferenceProvider } from '@operato/p13n'\nimport { SnapshotTaker, TimeCapsule } from '@operato/utils'\n\nimport { buildConfig } from './configure/config-builder'\nimport { ZERO_CONFIG, ZERO_DATA, ZERO_PAGES, ZERO_PAGINATION } from './configure/zero-config'\nimport { DataCard } from './data-card/data-card'\nimport { DataConsumer } from './data-consumer'\nimport { DataGrid } from './data-grid/data-grid'\nimport { DataList } from './data-list/data-list'\nimport { DataProvider } from './data-provider'\nimport {\n ColumnConfig,\n FetchHandler,\n FilterConfigObject,\n FilterValue,\n GristConfig,\n GristData,\n GristRecord,\n GristSelectFunction,\n PaginationConfig,\n PersonalGristPreference,\n SortersConfig\n} from './types'\nimport { convertListParamToSearchString, convertSearchStringToListParam } from './utils'\n\n/**\n * A custom element for rendering data in a grid, list, or card format.\n *\n * @element ox-grist\n */\n@customElement('ox-grist')\nexport class DataGrist extends LitElement implements DataConsumer {\n static styles = [\n ScrollbarStyles,\n HeadroomStyles,\n SpinnerStyles,\n css`\n :host {\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n background-color: var(--grist-background-color);\n min-height: 120px;\n\n overflow: hidden;\n\n /* for pulltorefresh controller */\n position: relative;\n\n padding: var(--ox-grist-padding);\n\n --md-icon-size: var(--grid-record-wide-fontsize);\n }\n\n #wrap {\n flex: 1;\n display: flex;\n flex-direction: column;\n overflow: auto;\n }\n\n ox-grid {\n flex: 1;\n border: var(--grid-wrap-container-border, 0px solid transparent);\n border-width: var(--grid-wrap-container-border-width, 0px);\n }\n\n slot[name='headroom'] {\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n\n width: 100%;\n box-sizing: border-box;\n background-color: var(--grist-background-color);\n\n z-index: 2;\n }\n `\n ]\n\n /**\n * The rendering mode of the component, which can be 'GRID', 'LIST', or 'CARD'.\n * Default is 'GRID'.\n *\n * @property {string}\n */\n @property() mode: 'GRID' | 'LIST' | 'CARD' = 'GRID'\n\n /**\n * The configuration object for the data grist.\n *\n * @property {Object}\n */\n @property() config: any\n\n /**\n * The data to be displayed in the data grist.\n *\n * @property {GristData}\n */\n @property({ type: Object }) data: GristData = ZERO_DATA\n\n /**\n * An array of selected records in the data grist.\n *\n * @property {GristRecord[]}\n */\n @property({ type: Array }) selectedRecords?: GristRecord[]\n\n /**\n * Indicates whether explicit fetching of data is enabled. If true, data will be fetched\n * only when `fetch` method is called. Default is false.\n *\n * @property {boolean}\n */\n @property({ type: Boolean, attribute: 'explicit-fetch' }) explicitFetch: boolean = false\n\n /**\n * The fetch handler function used to retrieve data from a remote source.\n *\n * @property {FetchHandler}\n */\n @property() fetchHandler?: FetchHandler\n\n /**\n * Additional fetch options to be passed to the fetch handler.\n *\n * @property {Object}\n */\n @property() fetchOptions: any\n\n /**\n * An array of filter values to be applied to the data grist.\n *\n * @property {FilterValue[]}\n */\n @property({ type: Array }) filters?: FilterValue[]\n\n /**\n * An array of sorters to determine the order of records in the data grist.\n *\n * @property {SortersConfig}\n */\n @property({ type: Array }) sorters?: SortersConfig\n\n /**\n * The pagination configuration for the data grist.\n *\n * @property {PaginationConfig}\n */\n @property({ type: Object }) pagination?: PaginationConfig\n\n /**\n * Indicates whether URL parameters are sensitive to changes. If true, changes in URL\n * parameters will trigger data fetching. Default is undefined.\n *\n * @property {boolean}\n */\n @property({ type: Boolean, attribute: 'url-params-sensitive' }) urlParamsSensitive?: boolean\n\n @property({ type: Object }) personalConfigProvider: PagePreferenceProvider = {\n load: () => {\n return {}\n },\n save: (preference: any) => preference,\n reset: () => {}\n }\n\n @state() personalConfig?: {\n columns?: Partial<ColumnConfig>[]\n [key: string]: any\n }\n\n @state() _data: GristData = ZERO_DATA // copy data, dirty data\n @state() _config: GristConfig = ZERO_CONFIG // compiled configuration\n @state() private _showSpinner: boolean = false\n\n @query('slot[name=headroom]') head!: HTMLElement\n @query('#grist') grist!: DataGrid | DataList | DataCard\n @queryAsync('#wrap') private wrap!: Promise<HTMLElement>\n\n private timeCapsule?: TimeCapsule\n private snapshotTaker?: SnapshotTaker\n\n private dataProvider?: DataProvider\n private pulltorefreshHandle?: any\n private headroom?: Headroom\n private orginPaddingTop?: string\n private originMarginTop?: string\n private lastLocation: { origin?: string; pathname?: string; search?: string } = {}\n\n /* 그리드가 준비되기 전에 fetch 요청이 있었음을 나타내는 플래그임 */\n private pendingFetch?: boolean\n\n private popstateEventHandler: EventListener = ((e: Event) => {\n const { origin, pathname, search } = window.location\n if (\n this.lastLocation.origin &&\n (this.lastLocation.origin !== origin ||\n this.lastLocation.pathname !== pathname ||\n this.lastLocation.search === search)\n ) {\n return\n }\n\n this.lastLocation = {\n origin,\n pathname,\n search\n }\n\n var { filters = [], sorters = [] } = convertSearchStringToListParam(search)\n\n try {\n if (!isEqual(filters, this.filters) || !isEqual(sorters, this.sorters)) {\n this.dispatchEvent(\n new CustomEvent('fetch-params-change', {\n bubbles: true,\n composed: true,\n detail: {\n filters,\n sorters,\n from: 'url-parameter'\n }\n })\n )\n }\n } catch (e) {\n console.error(`invalid fetch params on URL query string : ${e}`)\n }\n }).bind(this)\n\n private fetchParamsChangeEventHandler: EventListener = ((e: Event) => {\n const { sorters, filters, from } = (e as CustomEvent).detail\n\n sorters && (this.sorters = sorters)\n filters && (this.filters = filters)\n\n if (!this.urlParamsSensitive || from === 'url-parameter') {\n return\n }\n\n const queryString = convertListParamToSearchString({ filters, sorters, base: window.location.search })\n this.lastLocation.search = queryString ? `?${queryString}` : ''\n const url = `${window.location.pathname}${this.lastLocation.search}`\n\n history.pushState({}, document.title, url)\n }).bind(this)\n\n async firstUpdated() {\n // Mutation Observer를 사용하여 슬롯의 크기 변경을 감지하고 다시 그린다.\n const observer = new ResizeObserver(mutationsList => {\n this.setHeadroom()\n })\n\n observer.observe(this.head)\n }\n\n async connectedCallback() {\n super.connectedCallback()\n\n this.dataProvider = new DataProvider(this)\n\n this.timeCapsule = new TimeCapsule(10)\n this.snapshotTaker = new SnapshotTaker(this, this.timeCapsule!)\n\n this.addEventListener('fetch-params-change', this.fetchParamsChangeEventHandler)\n\n await this.updateComplete\n }\n\n disconnectedCallback() {\n super.disconnectedCallback()\n\n this.removeEventListener('fetch-params-change', this.fetchParamsChangeEventHandler)\n\n this.timeCapsule && this.timeCapsule.dispose()\n this.snapshotTaker && this.snapshotTaker.dispose()\n\n delete this.timeCapsule\n delete this.snapshotTaker\n\n this.dataProvider?.dispose()\n this.resetPullToRefresh()\n }\n\n private resetPullToRefresh() {\n if (this.pulltorefreshHandle) {\n this.pulltorefreshHandle()\n delete this.pulltorefreshHandle\n }\n }\n\n private async setPullToRefresh() {\n this.resetPullToRefresh()\n if (this.mode !== 'GRID' && this.fetchHandler) {\n this.pulltorefreshHandle = pulltorefresh({\n container: await this.wrap,\n scrollable: this.grist.pullToRefreshTarget,\n refresh: () => {\n return this.fetch(true)\n }\n })\n }\n }\n\n public applyUpdatedConfiguration() {\n if (!this.personalConfig || !this.config) {\n return\n }\n\n const config = { ...this.config }\n const columns: Partial<ColumnConfig>[] = config.columns\n\n const { columns: personalColumns, sorters, pagination, mode } = this.personalConfig\n\n if (personalColumns) {\n const xcolumns = columns.map((column: Partial<ColumnConfig>) => {\n const personalColumn = personalColumns.find(pcolumn => pcolumn.name == column.name)\n return personalColumn ? { ...column, ...personalColumn } : column\n })\n\n function reorderList(a: { name: string }[], b: { name: string }[]): { name: string }[] {\n // 결과 배열 초기화, a 배열 길이만큼 undefined로 채움\n const result = new Array(a.length)\n\n // b 배열에 없는 아이템은 원래 위치로 채움\n a.forEach((item, index) => {\n if (!item.name || !b.find(bi => bi.name == item.name)) {\n result[index] = item\n }\n })\n\n b.forEach(item => {\n const ai = a.find(ai => ai.name == item.name)\n if (ai) {\n result[result.findIndex(slot => slot === undefined)] = ai\n }\n })\n\n return result\n }\n\n // 배열 재정렬 실행\n config.columns = reorderList(xcolumns as any, personalColumns as any)\n }\n\n if (pagination) {\n config.pagination = pagination\n }\n\n if (sorters) {\n config.sorters = sorters\n }\n\n if (mode) {\n this.mode = mode\n }\n\n this._config = buildConfig({\n ...config\n })\n\n this.dispatchEvent(\n new CustomEvent('config-change', {\n bubbles: true,\n composed: true,\n detail: this.compiledConfig\n })\n )\n\n this.pagination = this.compiledConfig.pagination || {}\n\n if (!this.urlParamsSensitive) {\n const sorters = this.compiledConfig?.sorters\n const filters = this.compiledConfig?.columns\n .filter(\n column =>\n column.filter &&\n 'value' in (column.filter as FilterConfigObject) &&\n (typeof (column.filter as FilterConfigObject).value === 'boolean' ||\n (column.filter as FilterConfigObject).value)\n )\n .map(column => {\n const filter = column.filter as FilterConfigObject\n return { name: column.name, operator: filter.operator, value: filter.value } as FilterValue\n })\n\n this.dispatchEvent(\n new CustomEvent('fetch-params-change', {\n bubbles: true,\n composed: true,\n detail: {\n filters,\n sorters,\n from: 'config'\n }\n })\n )\n }\n\n if (this.dataProvider) {\n const { limit, pages = ZERO_PAGES } = this._config.pagination || ZERO_PAGINATION\n this.dataProvider.page = 1\n this.dataProvider.limit = limit || pages[0] || ZERO_PAGES[0]\n }\n\n if (this.pendingFetch || (!this.urlParamsSensitive && !this.explicitFetch)) {\n this.pendingFetch = false\n this.fetch()\n }\n }\n\n private setHeadroom() {\n this.headroom?.destroy()\n\n if (this.grist && this.head && this.head.style.display !== 'none') {\n const style = getComputedStyle(this.grist)\n\n this.orginPaddingTop = style.paddingTop || '0'\n this.originMarginTop = style.marginTop || '0'\n\n this.headroom = new Headroom(this.head, {\n scroller: this.grist,\n onTop: () => {\n this.grist.style.paddingTop = this.orginPaddingTop!\n this.originMarginTop = this.grist.style.marginTop\n\n this.grist.style.marginTop = this.head.clientHeight + 'px'\n },\n onNotTop: () => {\n this.grist.style.marginTop = this.originMarginTop!\n this.orginPaddingTop = this.grist.style.paddingTop\n\n this.grist.style.paddingTop = this.head.clientHeight + 'px'\n }\n })\n\n this.headroom.init()\n } else if (this.orginPaddingTop) {\n this.grist.style.paddingTop = this.orginPaddingTop\n this.grist.style.marginTop = this.originMarginTop!\n }\n }\n\n render() {\n const empty = !this._showSpinner && this._data.records.length == 0\n\n return html`\n <slot name=\"headroom\"> </slot>\n <div id=\"wrap\" @keydown=${(e: KeyboardEvent) => this.onKeydown(e)}>\n ${this.mode == 'GRID'\n ? html`\n <ox-grid\n id=\"grist\"\n .config=${this.compiledConfig}\n .data=${this._data}\n .sorters=${this.sorters || []}\n .filters=${this.filters || []}\n .pagination=${this.pagination || {}}\n ?empty=${empty}\n >\n <slot name=\"setting\" slot=\"setting\"> </slot>\n </ox-grid>\n `\n : this.mode == 'CARD'\n ? html`\n <ox-card\n id=\"grist\"\n .config=${this.compiledConfig}\n .data=${this._data}\n .sorters=${this.sorters || []}\n .filters=${this.filters || []}\n ?empty=${empty}\n >\n </ox-card>\n `\n : html`\n <ox-list\n id=\"grist\"\n .config=${this.compiledConfig}\n .data=${this._data}\n .sorters=${this.sorters || []}\n .filters=${this.filters || []}\n ?empty=${empty}\n >\n </ox-list>\n `}\n </div>\n\n <div id=\"spinner\" ?show=${this._showSpinner}></div>\n `\n }\n\n /* for timecapsule feature */\n private onKeydown(e: KeyboardEvent) {\n if (e.key === 'z' && (e.metaKey || e.ctrlKey)) {\n if (e.shiftKey) {\n this.redo()\n } else {\n this.undo()\n }\n }\n }\n\n /**\n * Gets the current state of the component. The state includes information about the\n * dirty records and their changes.\n *\n * @getter\n * @public\n * @type {string}\n */\n get state() {\n return JSON.stringify(this.dirtyData)\n }\n\n /**\n * Undoes the previous change in the component's data by restoring it to the previous state.\n * This method is part of the TimeCapsule feature, allowing users to revert changes.\n */\n undo() {\n if (!this.timeCapsule?.backwardable) {\n return\n }\n\n this._data = JSON.parse(this.timeCapsule?.backward())\n }\n\n /**\n * Redoes the previously undone change in the component's data by restoring it to the next state.\n * This method is part of the TimeCapsule feature, allowing users to reapply changes.\n */\n redo() {\n if (!this.timeCapsule?.forwardable) {\n return\n }\n\n this._data = JSON.parse(this.timeCapsule?.forward())\n }\n\n /**\n * Fetches data from a data source and updates the component's data. This method is used to retrieve\n * new data or refresh the existing data in the component.\n *\n * @method\n * @param {boolean} reset - If true, the method resets the scroll position to the top.\n */\n async fetch(reset = true) {\n if (this.compiledConfig === ZERO_CONFIG) {\n /* avoid to be here */\n console.warn('grist is not configured yet.')\n this.pendingFetch = true\n return\n }\n\n if (reset && this.grist) {\n /*\n * scroll 의 현재위치에 의해서 scroll 이벤트가 발생할 수 있으므로, 이를 방지하기 위해서 스크롤의 위치를 TOP으로 옮긴다.\n * (scroll 이 첫페이지 크기 이상으로 내려가 있는 경우, 첫페이지부터 다시 표시하는 경우에, scroll 이벤트가 발생한다.)\n */\n this.grist.scrollTop = 0\n }\n\n if (this.dataProvider) {\n let { limit: initLimit, page: initPage, infinite } = this.compiledConfig.pagination || {}\n let { limit = initLimit || ZERO_PAGINATION.limit, page = initPage || ZERO_PAGINATION.page } = this.dataProvider\n\n if (infinite || this.mode !== 'GRID') {\n await this.dataProvider.attach(reset)\n } else {\n await this.dataProvider.fetch({\n limit,\n page,\n sorters: this.sorters || this.compiledConfig?.sorters,\n sortings: this.sorters || this.compiledConfig?.sorters,\n filters: this.filters\n })\n\n this.pagination && (this.pagination!.limit = limit)\n }\n }\n }\n\n async updated(changes: PropertyValues<this>) {\n var needToSetPullToRefresh = false\n\n if (changes.has('filters')) {\n await this.requestUpdate()\n }\n\n if (changes.has('sorters')) {\n await this.requestUpdate()\n }\n\n if (changes.has('personalConfigProvider')) {\n this.personalConfig = await this.personalConfigProvider.load()\n } else if (changes.has('config') || changes.has('personalConfig')) {\n this.applyUpdatedConfiguration()\n }\n\n if (changes.has('fetchHandler')) {\n this.dataProvider && (this.dataProvider.fetchHandler = this.fetchHandler)\n needToSetPullToRefresh = true\n }\n\n if (changes.has('fetchOptions')) {\n this.dataProvider && (this.dataProvider.fetchOptions = this.fetchOptions)\n }\n\n if (changes.has('data')) {\n this.reset()\n }\n\n if (changes.has('mode')) {\n if (this.mode === 'GRID') {\n this.style.removeProperty('--ox-grist-padding')\n } else {\n this.style.setProperty('--ox-grist-padding', '0')\n }\n\n needToSetPullToRefresh = true\n this.setHeadroom()\n }\n\n if (changes.has('selectedRecords')) {\n var { records } = this.data || []\n var selectedRecords = this.selectedRecords || []\n\n var _records = this.dirtyData.records\n\n /* 원본데이타에서 index를 찾아서, 복사본 데이타의 selected를 설정한다. */\n selectedRecords.forEach(selected => {\n var index = records.indexOf(selected)\n var record = _records[index]\n if (record) {\n record['__selected__'] = true\n }\n })\n\n /* update _data property intentionally */\n this.refresh()\n }\n\n if (changes.has('urlParamsSensitive')) {\n if (this.urlParamsSensitive) {\n //@ts-ignore\n this.popstateEventHandler() // call for the first time\n\n window.addEventListener('popstate', this.popstateEventHandler)\n } else {\n window.removeEventListener('popstate', this.popstateEventHandler)\n }\n }\n\n if (needToSetPullToRefresh) {\n await this.setPullToRefresh()\n }\n }\n\n /**\n * Represents the compiled configuration of the component, which includes various settings and\n * column configurations. You can access this property to get information about how the component\n * is configured.\n *\n * @getter\n * @public\n * @type {GristConfig}\n */\n get compiledConfig(): GristConfig {\n return this._config\n }\n\n /**\n * Returns the dirty data in the component, which includes the records that have been added,\n * modified, or deleted but have not been committed to the main data yet.\n *\n * @getter\n * @public\n * @type {GristData} - An object representing the dirty data.\n */\n get dirtyData(): GristData {\n return (this.grist as any)?.data || {}\n }\n\n /**\n * Returns an array of GristRecord objects representing the records in the dirty state. These are\n * the records that have been added, modified, or deleted but have not been committed to the main\n * data yet.\n *\n * @getter\n * @public\n * @type {GristRecord[]} - An array of GristRecord objects representing the dirty records.\n */\n get dirtyRecords() {\n var { records = [] } = this.dirtyData\n return records.filter(record => record['__dirty__'])\n }\n\n /**\n * Exports a list of patches representing the changes in the dirty state of records. Each patch\n * contains information about whether a record was added, modified, or deleted, along with the\n * record's unique identifier and the changed field values.\n *\n * @param {Object} options - Export options that control the format of the patch list.\n * @param {string} options.flagName - The name of the flag field in the patch indicating the change type (default: 'patchFlag').\n * @param {string} options.addedFlag - The flag value for added records (default: '+').\n * @param {string} options.deletedFlag - The flag value for deleted records (default: '-').\n * @param {string} options.modifiedFlag - The flag value for modified records (default: 'M').\n * @param {string} options.idField - The name of the unique identifier field (default: 'id').\n * @returns {Object[]} - An array of objects representing the patches.\n */\n exportPatchList({ flagName = 'patchFlag', addedFlag = '+', deletedFlag = '-', modifiedFlag = 'M', idField = 'id' }) {\n let dirtyRecords = this.dirtyRecords\n if (!dirtyRecords || dirtyRecords.length == 0) {\n return []\n }\n\n return dirtyRecords.map(record => {\n let flag = record.__dirty__\n\n let patch = {\n [flagName]: flag == 'M' ? modifiedFlag : flag == '+' ? addedFlag : deletedFlag\n }\n\n if (idField in record && record[idField]) {\n patch[idField] = record[idField]\n }\n\n for (let key in record.__dirtyfields__) {\n patch[key] = record[key]\n }\n return patch\n })\n }\n\n /**\n * Exports the selected records or all records in the component, depending on the specified options.\n * You can use this method to export data from the component in various formats or for different purposes.\n *\n * @param {Object} options - Export options that control the behavior of the export.\n * @param {boolean} options.ifSelectedOnly - If true, exports only the selected records. If false, exports all records.\n * @param {boolean} options.includeHiddenField - If true, includes hidden fields in the exported data.\n * @returns {Object[]} - An array of objects representing the exported records.\n */\n exportRecords({ ifSelectedOnly = true, includeHiddenField = true } = {}) {\n let records = ifSelectedOnly ? this.selected : this.data.records\n\n if (ifSelectedOnly && (!records || records.length == 0)) {\n records = this.data.records\n }\n\n let columns = this.compiledConfig.columns.filter(column => column.type !== 'gutter')\n if (!includeHiddenField) {\n columns = columns.filter(column => !column.hidden)\n }\n let columnNames = columns.map(column => column.name)\n\n return records.map(item => {\n return columnNames.reduce((record, name) => {\n record[name] = item[name]\n return record\n }, {} as any)\n })\n }\n\n /**\n * Gets the currently selected records in the component. It returns an array of GristRecord objects\n * that are currently selected. You can access this getter to retrieve the selected records.\n *\n * @getter\n * @public\n * @type {GristRecord[]}\n */\n get selected() {\n var { records = [] } = this.grist?.data\n return records.filter(record => record['__selected__'])\n }\n\n /**\n * Sets the currently selected records in the component. You can use this setter to programmatically\n * select specific records by providing an array of GristRecord objects to be selected.\n *\n * @setter\n * @public\n * @type {GristRecord[]}\n */\n set selected(selected: GristRecord[]) {\n if (!this.grist) {\n console.warn('grist not ready')\n return\n }\n\n selected.forEach(record => (record.__selected__ = true))\n this.refresh()\n }\n\n /**\n * Selects records in the component based on the provided selector function. You can use this method\n * to programmatically select specific records in the component.\n *\n * @method\n * @param {GristSelectFunction} selector - A function that determines which records to select.\n * @param {boolean} reset - If true, clears the previous selection before applying the new one.\n * If false, adds to the existing selection.\n */\n select(selector: GristSelectFunction, reset: boolean = false) {\n var { records = [] } = this.grist?.data\n\n if (reset) {\n this.selected.forEach(record => (record.__selected__ = false))\n }\n\n records.filter(record => selector(record)).forEach(record => (record.__selected__ = true))\n this.refresh()\n }\n\n /**\n * Shows the loading spinner in the component's UI to indicate ongoing data loading or processing.\n * You can call this method to display the spinner when necessary.\n */\n showSpinner() {\n this._showSpinner = true\n }\n\n /**\n * Hides the loading spinner in the component's UI to indicate that data loading or processing has completed.\n * You can call this method to hide the spinner when loading or processing is finished.\n */\n hideSpinner() {\n this._showSpinner = false\n }\n\n /**\n * Focuses on the component, making it the active element in the document. This method is useful\n * when you want to programmatically set focus to the component.\n */\n focus() {\n super.focus()\n\n this.grist.focus()\n }\n\n /**\n * Commits the changes made in the dirty state to the component's data. This method updates the\n * component's data with the changes made in the dirty state and clears the dirty state.\n */\n commit() {\n var { page, total, limit, records } = this.grist.data\n\n this.data = {\n page,\n total,\n limit,\n records: records.map(record => {\n var copied = {\n ...record\n }\n\n delete copied.__seq__\n delete copied.__dirty__\n delete copied.__selected__\n delete copied.__changes__\n delete copied.__dirtyfields__\n delete copied.__origin__\n delete copied.__depth__\n delete copied.__expanded__\n delete copied.__check_in_tree__\n delete copied.__children__\n delete copied.__typename\n\n return copied\n })\n }\n }\n\n /**\n * Shows the headroom element in the component. The headroom element is typically used for\n * displaying additional information or controls at the top of the component.\n */\n showHeadroom() {\n if (this.head) {\n this.head.style.display = 'block'\n this.setHeadroom()\n }\n }\n\n /**\n * Hides the headroom element in the component. This method hides the additional information\n * or controls displayed at the top of the component.\n */\n hideHeadroom() {\n if (this.head) {\n this.head.style.display = 'none'\n this.setHeadroom()\n }\n }\n\n /**\n * Toggles the visibility of the headroom element in the component. If the headroom element is\n * currently visible, this method hides it. If it's hidden, this method shows it.\n */\n toggleHeadroom() {\n if (this.head) {\n const display = this.head.style.display\n this.head.style.display = display !== 'none' ? 'none' : 'block'\n\n this.setHeadroom()\n }\n }\n\n /**\n * Forced internal data to be reflected on the screen\n * Data changing through a normal method is automatically reflected on the screen, so it is a method that does not need to be used in general.\n * Therefore, it will be deprecated.\n * @method\n */\n refresh() {\n this.grist.refresh()\n }\n\n /**\n * Resets the component's data to its original state before any changes were made.\n * This method discards all unsaved changes and restores the data to its initial state.\n *\n * @method\n * @public\n */\n reset() {\n // TODO tree 형태의 데이타로 _data를 만들 때, children, collapsed 등을 감안한다.\n var {\n limit = ZERO_PAGINATION.limit,\n page = ZERO_PAGINATION.page,\n total = ZERO_PAGINATION.total,\n records = []\n } = this.data || ZERO_PAGINATION\n\n const { childrenProperty, expanded } = this.compiledConfig.tree\n\n /* 원본 데이타를 남기고, 복사본(_data)을 사용한다. */\n records = ([] as GristRecord[]).concat(\n ...records.map((record, idx) =>\n this.traverseReset(\n record,\n this.mode == 'GRID' ? (page - 1) * limit + idx + 1 : idx + 1,\n 0,\n childrenProperty,\n expanded as () => boolean\n )\n )\n )\n\n if (childrenProperty) {\n records = ([] as GristRecord[]).concat(...records.map(record => this.traverseExpanded(record)))\n }\n\n this._data = {\n limit,\n page,\n total,\n records\n }\n\n this.timeCapsule?.reset()\n this.snapshotTaker?.take(true)\n }\n\n private traverseReset(\n record: GristRecord,\n seq: number,\n __depth__: number,\n childrenProperty: string | undefined,\n expanded: () => boolean\n ): GristRecord {\n const copied = {\n ...record,\n __seq__: seq,\n __origin__: record\n }\n\n if (childrenProperty) {\n const children: GristRecord[] = record[childrenProperty!]\n\n const __expanded__ = (expanded as Function)(record)\n const __children__ = (children || []).map(child =>\n this.traverseReset(child, seq, __depth__ + 1, childrenProperty, expanded)\n )\n\n Object.assign(copied, { __depth__, __children__, __expanded__ })\n }\n\n return copied\n }\n\n private traverseExpanded(record: GristRecord): GristRecord[] {\n const { __expanded__, __children__ = [] } = record\n\n if (__expanded__ && __children__.length > 0) {\n return [record].concat(...__children__.map(child => this.traverseExpanded(child)))\n } else {\n return [record]\n }\n }\n\n /**\n * Checks for dirty records in the component's data and marks them as dirty.\n * Dirty records are those that have unsaved changes.\n */\n checkDirties() {\n const records = this.dirtyRecords\n const { columns = [] } = this.compiledConfig || {}\n\n for (var record of records || []) {\n var origin = record['__origin__'] || {}\n\n var dirtyFields = (record['__dirtyfields__'] = columns\n .filter(column => column.type !== 'gutter' && !isEqual(origin[column.name], record[column.name]))\n .reduce((sum, column) => {\n var name = column.name\n\n sum[name] = {\n before: origin[name],\n after: record[name]\n }\n\n return sum\n }, {} as any))\n\n if (record['__dirty__'] == 'M' && isEmpty(dirtyFields)) {\n delete record['__dirty__']\n }\n }\n\n this._data = { ...this.dirtyData }\n\n this.snapshotTaker?.touch()\n }\n\n /**\n * Clones the selected records in the component's data. It creates a copy of the selected records\n * and marks them as new (added) records.\n */\n cloneSelectedRecords() {\n const records = this.selected || ([] as GristRecord[])\n\n records.forEach(record => {\n var cloned = {\n __dirty__: '+'\n } as GristRecord\n\n this.compiledConfig.columns\n .filter(column => column.record.editable)\n .forEach(column => {\n cloned[column.name] = record[column.name]\n })\n const rowIndex = this.dirtyData.records.findIndex(rec => rec === record)\n\n this.dirtyData.records.splice(rowIndex + 1, 0, cloned)\n })\n\n this.checkDirties()\n }\n\n /**\n * Adds child nodes to selected records in the component's tree data. It allows users to add child nodes\n * to the selected parent records.\n */\n addChildNodes() {\n const records = this.selected || ([] as GristRecord[])\n\n records.forEach(record => {\n this.grist.addChildNode(record)\n })\n }\n\n /**\n * Adds sibling nodes to selected records in the component's tree data. It allows users to add sibling nodes\n * to the selected records.\n */\n addSiblingNodes() {\n const records = this.selected || ([] as GristRecord[])\n\n records.forEach(record => {\n this.grist.addSiblingNode(record)\n })\n }\n\n /**\n * Deletes the selected records in the component's data. It removes the selected records from the data,\n * optionally marking them as deleted.\n *\n * @method\n * @param {boolean} dirty - If true, the method marks the records as deleted.\n */\n deleteSelectedRecords(dirty = true) {\n const records = this.selected || ([] as GristRecord[])\n\n records.forEach(record => {\n if (dirty) {\n record.__dirty__ = '-'\n }\n\n const rowIndex = this.dirtyData.records.findIndex(rec => rec === record)\n this.dirtyData.records.splice(rowIndex, 1)\n })\n\n this.checkDirties()\n }\n\n /**\n * Retrieves the search text used for filtering records.\n *\n * @property {string}\n */\n get searchText() {\n return (this.filters?.find(filter => filter.operator === 'search')?.value as string)?.match(/^\\%(.*)\\%$/)?.[1] || ''\n }\n\n /**\n * Sets the search text for filtering records.\n *\n * @property {string}\n */\n set searchText(searchText: string) {\n var filters = (this.filters || []).filter((filter: FilterValue) => filter.operator !== 'search')\n\n if (searchText) {\n const filtersConfig = this.compiledConfig.columns.filter(columnConfig => !!columnConfig.filter)\n const searchColumns = filtersConfig.filter(columnConfig => {\n const filter = columnConfig.filter as FilterConfigObject\n return filter!.operator === 'search'\n })\n\n filters = [\n ...searchColumns.map((column: ColumnConfig) => {\n const { name } = column\n\n return {\n name,\n operator: 'search',\n value: `%${searchText}%`\n } as FilterValue\n }),\n ...filters\n ]\n }\n\n this.grist.dispatchEvent(\n new CustomEvent('fetch-params-change', {\n bubbles: true,\n composed: true,\n detail: {\n filters\n }\n })\n )\n }\n\n getCurrentLimit() {\n return this.dataProvider?.limit || ZERO_PAGINATION.limit\n }\n}\n"]}
|
@@ -1 +1 @@
|
|
1
|
-
{"program":{"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/tslib/tslib.d.ts","../../../node_modules/@types/trusted-types/lib/index.d.ts","../../../node_modules/@types/trusted-types/index.d.ts","../../../node_modules/lit-html/directive.d.ts","../../../node_modules/lit-html/lit-html.d.ts","../../../node_modules/@lit/reactive-element/css-tag.d.ts","../../../node_modules/@lit/reactive-element/reactive-controller.d.ts","../../../node_modules/@lit/reactive-element/reactive-element.d.ts","../../../node_modules/lit-element/lit-element.d.ts","../../../node_modules/lit-html/is-server.d.ts","../../../node_modules/lit/index.d.ts","../../../node_modules/@lit/reactive-element/decorators/base.d.ts","../../../node_modules/@lit/reactive-element/decorators/custom-element.d.ts","../../../node_modules/@lit/reactive-element/decorators/property.d.ts","../../../node_modules/@lit/reactive-element/decorators/state.d.ts","../../../node_modules/@lit/reactive-element/decorators/event-options.d.ts","../../../node_modules/@lit/reactive-element/decorators/query.d.ts","../../../node_modules/@lit/reactive-element/decorators/query-all.d.ts","../../../node_modules/@lit/reactive-element/decorators/query-async.d.ts","../../../node_modules/@lit/reactive-element/decorators/query-assigned-nodes.d.ts","../../../node_modules/@lit/reactive-element/decorators/query-assigned-elements.d.ts","../../../node_modules/lit/decorators.d.ts","../src/configure/zero-config.ts","../src/data-card/data-card-field.ts","../src/data-card/data-card-gutter.ts","../../../node_modules/@material/web/icon/internal/icon.d.ts","../../../node_modules/@material/web/icon/icon.d.ts","../../utils/dist/src/sleep.d.ts","../../utils/dist/src/async-lock.d.ts","../../utils/dist/src/file-drop-helper.d.ts","../../utils/dist/src/context-path.d.ts","../../utils/dist/src/os.d.ts","../../utils/dist/src/swipe-listener.d.ts","../../utils/dist/src/fullscreen.d.ts","../../utils/dist/src/parse-jwt.d.ts","../../utils/dist/src/password-pattern.d.ts","../../utils/dist/src/closest-element.d.ts","../../utils/dist/src/detect-overflow.d.ts","../../utils/dist/src/has-overflow.d.ts","../../utils/dist/src/timecapsule/snapshot-taker.d.ts","../../utils/dist/src/timecapsule/timecapsule.d.ts","../../utils/dist/src/timecapsule/index.d.ts","../../utils/dist/src/clipboard.d.ts","../../utils/dist/src/format.d.ts","../../utils/dist/src/adjust-list-param.d.ts","../../utils/dist/src/is-unvalued.d.ts","../../utils/dist/src/stringify-bignum.d.ts","../../utils/dist/src/encode-form-params.d.ts","../../utils/dist/src/cookie.d.ts","../../utils/dist/src/number-parser.d.ts","../../utils/dist/src/longpressable.d.ts","../../utils/dist/src/decode-html.d.ts","../../utils/dist/src/reactive-controllers/tooltip-reactive-controller.d.ts","../../utils/dist/src/reactive-controllers/index.d.ts","../../utils/dist/src/index.d.ts","../src/data-grid/data-grid-field.ts","../src/record-view/event-handlers/record-view-body-click-handler.ts","../src/record-view/event-handlers/record-view-body-keydown-handler.ts","../src/record-view/record-view-body.ts","../../styles/dist/src/headroom-styles.d.ts","../../styles/dist/src/scrollbar-styles.d.ts","../../styles/dist/src/spinner-styles.d.ts","../../styles/dist/src/common-button-styles.d.ts","../../styles/dist/src/common-grist-styles.d.ts","../../styles/dist/src/button-container-styles.d.ts","../../styles/dist/src/common-header-styles.d.ts","../../styles/dist/src/index.d.ts","../src/record-view/record-view.ts","../../popup/dist/src/ox-popup.d.ts","../../popup/dist/src/ox-popup-list.d.ts","../../popup/dist/src/ox-popup-menu.d.ts","../../popup/dist/src/ox-popup-menuitem.d.ts","../../../node_modules/@material/web/elevation/internal/elevation.d.ts","../../../node_modules/@material/web/elevation/elevation.d.ts","../../../node_modules/@material/web/internal/controller/attachable-controller.d.ts","../../../node_modules/@material/web/focus/internal/focus-ring.d.ts","../../../node_modules/@material/web/focus/md-focus-ring.d.ts","../../../node_modules/@material/web/ripple/internal/ripple.d.ts","../../../node_modules/@material/web/ripple/ripple.d.ts","../../../node_modules/@material/web/labs/behaviors/mixin.d.ts","../../../node_modules/@material/web/labs/behaviors/element-internals.d.ts","../../../node_modules/@material/web/internal/controller/form-submitter.d.ts","../../../node_modules/@material/web/button/internal/button.d.ts","../../../node_modules/@material/web/button/internal/filled-button.d.ts","../../../node_modules/@material/web/button/filled-button.d.ts","../../../node_modules/@material/web/button/internal/outlined-button.d.ts","../../../node_modules/@material/web/button/outlined-button.d.ts","../../popup/dist/src/ox-prompt.d.ts","../../popup/dist/src/ox-floating-overlay.d.ts","../../popup/dist/src/open-popup.d.ts","../../popup/dist/src/index.d.ts","../src/empty-note.ts","../../../node_modules/lit-html/directives/if-defined.d.ts","../../../node_modules/lit/directives/if-defined.d.ts","../../../node_modules/@types/lodash/common/common.d.ts","../../../node_modules/@types/lodash/common/array.d.ts","../../../node_modules/@types/lodash/common/collection.d.ts","../../../node_modules/@types/lodash/common/date.d.ts","../../../node_modules/@types/lodash/common/function.d.ts","../../../node_modules/@types/lodash/common/lang.d.ts","../../../node_modules/@types/lodash/common/math.d.ts","../../../node_modules/@types/lodash/common/number.d.ts","../../../node_modules/@types/lodash/common/object.d.ts","../../../node_modules/@types/lodash/common/seq.d.ts","../../../node_modules/@types/lodash/common/string.d.ts","../../../node_modules/@types/lodash/common/util.d.ts","../../../node_modules/@types/lodash/index.d.ts","../../../node_modules/@types/lodash-es/throttle.d.ts","../src/filters/filter-styles.ts","../src/filters/filter-checkbox.ts","../src/filters/filter-input-barcode.ts","../src/filters/filter-input.ts","../src/filters/filter-range-date.ts","../src/filters/filter-range-number.ts","../src/filters/filter-select-buttons.ts","../../../node_modules/lit-html/async-directive.d.ts","../../../node_modules/lit-html/directives/until.d.ts","../../../node_modules/lit/directives/until.d.ts","../../../node_modules/@material/web/typography/md-typescale-styles.d.ts","../../p13n/dist/src/types.d.ts","../../p13n/dist/src/p13n-mixin.d.ts","../../p13n/dist/src/ox-user-preferences-context.d.ts","../../p13n/dist/src/ox-user-preferences-provider.d.ts","../../p13n/dist/src/ox-user-preferences-consumer.d.ts","../../p13n/dist/src/index.d.ts","../../../packages/time-calculator/dist/src/registry.d.ts","../../../packages/time-calculator/dist/src/index.d.ts","../src/filters/filters-form.ts","../src/filters/filter-select.ts","../src/filters/registry.ts","../src/data-grid/data-grid-header.ts","../../../node_modules/i18next/typescript/helpers.d.ts","../../../node_modules/i18next/typescript/options.d.ts","../../../node_modules/i18next/typescript/t.d.ts","../../../node_modules/i18next/index.d.ts","../../i18n/dist/src/config.d.ts","../../i18n/dist/src/localize.d.ts","../../i18n/dist/src/ox-i18n.d.ts","../../i18n/dist/src/ox-i18n-selector.d.ts","../../i18n/dist/src/index.d.ts","../src/data-grid/data-grid-accum-field.ts","../../../node_modules/@types/lodash-es/debounce.d.ts","../src/data-list/data-list-gutter.ts","../src/data-list/data-list-field.ts","../src/data-list/event-handlers/record-partial-click-handler.ts","../src/data-list/event-handlers/record-partial-dblclick-handler.ts","../src/data-list/record-partial.ts","../src/record-view/record-view-handler.ts","../src/utils/supports-passive.ts","../../../node_modules/json5/lib/parse.d.ts","../../../node_modules/json5/lib/stringify.d.ts","../../../node_modules/json5/lib/index.d.ts","../../../node_modules/@types/lodash-es/pickby.d.ts","../src/utils/list-param.ts","../src/utils/index.ts","../src/data-grid/data-grid-body-style.ts","../src/data-grid/event-handlers/data-grid-body-click-handler.ts","../src/data-grid/event-handlers/data-grid-body-dblclick-handler.ts","../src/data-grid/event-handlers/data-grid-body-focus-change-handler.ts","../src/data-grid/event-handlers/data-grid-body-contextmenu-handler.ts","../src/data-grid/event-handlers/data-grid-body-keydown-handler.ts","../src/accumulator/accumulator.ts","../src/data-grid/data-grid-body.ts","../src/data-grid/data-grid-footer.ts","../src/data-manipulator.ts","../src/data-grid/data-grid.ts","../src/data-list/data-list.ts","../src/data-card/data-card.ts","../../../node_modules/@types/lodash-es/isempty.d.ts","../../../node_modules/@types/lodash-es/isequal.d.ts","../../headroom/dist/src/headroom.d.ts","../../headroom/dist/src/index.d.ts","../../pull-to-refresh/dist/src/pull-to-refresh-control.d.ts","../../pull-to-refresh/dist/src/pull-to-refresh.d.ts","../../pull-to-refresh/dist/src/index.d.ts","../src/const.ts","../src/editors/ox-grist-editor.ts","../src/editors/ox-grist-editor-checkbox.ts","../src/editors/ox-grist-editor-color.ts","../src/editors/ox-grist-editor-date.ts","../src/editors/ox-grist-editor-datetime.ts","../src/editors/ox-grist-editor-email.ts","../src/editors/ox-grist-editor-file.ts","../src/editors/ox-grist-editor-image.ts","../src/editors/ox-grist-editor-month.ts","../src/editors/ox-grist-editor-multiple-select.ts","../src/editors/ox-grist-editor-number.ts","../src/editors/ox-grist-editor-password.ts","../src/editors/ox-grist-editor-select.ts","../src/editors/ox-grist-editor-tel.ts","../src/editors/ox-grist-editor-text.ts","../src/editors/ox-grist-editor-textarea.ts","../src/editors/ox-grist-editor-time.ts","../../input/dist/src/ox-form-field.d.ts","../../input/dist/src/ox-buttons-radio.d.ts","../../input/dist/src/ox-checkbox.d.ts","../../input/dist/src/ox-select.d.ts","../../input/dist/src/ox-input-angle.d.ts","../../input/dist/src/ox-input-3dish.d.ts","../../input/dist/src/ox-input-3axis.d.ts","../../input/dist/src/ox-input-stack.d.ts","../../input/dist/src/ox-input-barcode.d.ts","../../../node_modules/@codemirror/state/dist/index.d.ts","../../../node_modules/style-mod/src/style-mod.d.ts","../../../node_modules/@codemirror/view/dist/index.d.ts","../../input/dist/src/ox-input-code.d.ts","../../input/dist/src/ox-input-color.d.ts","../../input/dist/src/ox-input-multiple-colors.d.ts","../../input/dist/src/ox-input-color-stops.d.ts","../../../node_modules/@polymer/iron-a11y-keys-behavior/iron-a11y-keys-behavior.d.ts","../../../node_modules/@polymer/polymer/lib/utils/array-splice.d.ts","../../../node_modules/@polymer/polymer/interfaces.d.ts","../../../node_modules/@polymer/polymer/lib/utils/async.d.ts","../../../node_modules/@polymer/polymer/lib/utils/flattened-nodes-observer.d.ts","../../../node_modules/@polymer/polymer/lib/utils/debounce.d.ts","../../../node_modules/@polymer/polymer/lib/utils/flush.d.ts","../../../node_modules/@polymer/polymer/lib/legacy/polymer.dom.d.ts","../../../node_modules/@polymer/iron-behaviors/iron-button-state.d.ts","../../../node_modules/@polymer/iron-behaviors/iron-control-state.d.ts","../../../node_modules/@polymer/iron-form-element-behavior/iron-form-element-behavior.d.ts","../../../node_modules/@polymer/polymer/lib/utils/mixin.d.ts","../../../node_modules/@polymer/polymer/lib/utils/resolve-url.d.ts","../../../node_modules/@polymer/polymer/lib/elements/dom-module.d.ts","../../../node_modules/@polymer/polymer/lib/utils/style-gather.d.ts","../../../node_modules/@polymer/polymer/lib/utils/path.d.ts","../../../node_modules/@polymer/polymer/lib/utils/case-map.d.ts","../../../node_modules/@polymer/polymer/lib/mixins/properties-changed.d.ts","../../../node_modules/@polymer/polymer/lib/mixins/property-accessors.d.ts","../../../node_modules/@polymer/polymer/lib/mixins/template-stamp.d.ts","../../../node_modules/@polymer/polymer/lib/mixins/property-effects.d.ts","../../../node_modules/@polymer/polymer/lib/utils/telemetry.d.ts","../../../node_modules/@polymer/polymer/lib/mixins/properties-mixin.d.ts","../../../node_modules/@polymer/polymer/lib/mixins/element-mixin.d.ts","../../../node_modules/@polymer/polymer/lib/utils/gestures.d.ts","../../../node_modules/@polymer/polymer/lib/mixins/gesture-event-listeners.d.ts","../../../node_modules/@polymer/polymer/lib/mixins/dir-mixin.d.ts","../../../node_modules/@polymer/polymer/lib/utils/scope-subtree.d.ts","../../../node_modules/@polymer/polymer/lib/mixins/disable-upgrade-mixin.d.ts","../../../node_modules/@polymer/polymer/lib/legacy/legacy-element-mixin.d.ts","../../../node_modules/@polymer/polymer/lib/legacy/class.d.ts","../../../node_modules/@polymer/polymer/lib/legacy/polymer-fn.d.ts","../../../node_modules/@polymer/iron-meta/iron-meta.d.ts","../../../node_modules/@polymer/iron-validatable-behavior/iron-validatable-behavior.d.ts","../../../node_modules/@polymer/polymer/lib/utils/html-tag.d.ts","../../../node_modules/@polymer/paper-dropdown-menu/paper-dropdown-menu.d.ts","../../../node_modules/@polymer/iron-selector/iron-selection.d.ts","../../../node_modules/@polymer/iron-selector/iron-selectable.d.ts","../../../node_modules/@polymer/iron-selector/iron-multi-selectable.d.ts","../../../node_modules/@polymer/iron-menu-behavior/iron-menu-behavior.d.ts","../../../node_modules/@polymer/paper-listbox/paper-listbox.d.ts","../../../node_modules/@polymer/paper-item/paper-item-behavior.d.ts","../../../node_modules/@polymer/paper-item/paper-item.d.ts","../../input/dist/src/ox-input-color-gradient.d.ts","../../input/dist/src/ox-input-file.d.ts","../../input/dist/src/ox-input-image.d.ts","../../input/dist/src/ox-input-value-ranges.d.ts","../../input/dist/src/ox-input-value-map.d.ts","../../input/dist/src/ox-input-table.d.ts","../../input/dist/src/ox-input-scene-component-id.d.ts","../../input/dist/src/ox-input-crontab.d.ts","../../input/dist/src/ox-input-partition-keys.d.ts","../../input/dist/src/ox-input-duration.d.ts","../../input/dist/src/ox-input-quantifier.d.ts","../../../node_modules/lit-html/directives/class-map.d.ts","../../../node_modules/lit/directives/class-map.d.ts","../../../node_modules/@material/web/chips/internal/chip.d.ts","../../../node_modules/@material/web/chips/internal/multi-action-chip.d.ts","../../../node_modules/@material/web/chips/internal/filter-chip.d.ts","../../../node_modules/@material/web/chips/filter-chip.d.ts","../../../node_modules/@material/web/chips/internal/chip-set.d.ts","../../../node_modules/@material/web/chips/chip-set.d.ts","../../input/dist/src/ox-input-select-buttons.d.ts","../../input/dist/src/ox-input-textarea.d.ts","../../input/dist/src/ox-input-direction.d.ts","../../input/dist/src/ox-input-table-column-config.d.ts","../../input/dist/src/ox-input-search.d.ts","../../input/dist/src/index.d.ts","../src/editors/ox-input-tree.ts","../src/editors/ox-grist-editor-tree.ts","../src/editors/ox-grist-editor-week.ts","../src/editors/registry.ts","../src/editors/index.ts","../src/gutters/gutter-button.ts","../src/gutters/gutter-dirty.ts","../src/gutters/gutter-row-selector.ts","../src/gutters/gutter-sequence.ts","../src/gutters/registry.ts","../src/gutters/index.ts","../src/handlers/contextmenu-tree-mutation.ts","../src/handlers/move-down.ts","../src/handlers/move-up.ts","../src/handlers/record-copy.ts","../src/handlers/record-delete.ts","../src/handlers/record-view-handler.ts","../src/handlers/select-row.ts","../src/handlers/select-row-toggle.ts","../src/handlers/registry.ts","../src/handlers/index.ts","../src/data-report/data-report-field.ts","../src/renderers/ox-grist-renderer-boolean.ts","../src/renderers/ox-grist-renderer-color.ts","../src/renderers/ox-grist-renderer-date.ts","../src/renderers/ox-grist-renderer-file.ts","../src/renderers/ox-grist-renderer-image.ts","../src/renderers/ox-grist-renderer-json5.ts","../src/renderers/ox-grist-renderer-link.ts","../src/renderers/ox-grist-renderer-password.ts","../src/renderers/ox-grist-renderer.ts","../src/renderers/ox-grist-renderer-progress.ts","../src/renderers/ox-grist-renderer-select.ts","../src/renderers/ox-grist-renderer-text.ts","../src/renderers/ox-grist-renderer-textarea.ts","../src/renderers/ox-grist-renderer-tree.ts","../src/renderers/registry.ts","../src/renderers/index.ts","../src/configure/column-builder.ts","../src/configure/imex-option-builder.ts","../src/configure/list-option-builder.ts","../src/configure/tree-option-builder.ts","../src/configure/rows-option-builder.ts","../src/configure/filters-option-builder.ts","../src/configure/config-builder.ts","../src/data-consumer.ts","../src/data-provider.ts","../src/data-grist.ts","../src/record-view/record-creator.ts","../src/record-view/index.ts","../src/data-card/data-card-gutter-menu.ts","../src/data-card/event-handlers/record-card-click-handler.ts","../src/data-card/event-handlers/record-card-dblclick-handler.ts","../src/data-card/record-card.ts","../src/filters/index.ts","../src/types.ts","../src/data-report/data-report-header.ts","../src/data-report/data-report-body-style.ts","../src/data-report/event-handlers/data-report-body-click-handler.ts","../src/data-report/event-handlers/data-report-body-dblclick-handler.ts","../src/data-report/event-handlers/data-report-body-keydown-handler.ts","../src/data-report/data-report-body.ts","../src/data-report/data-report-component.ts","../src/data-report.ts","../src/formatters/date-formatter.ts","../src/formatters/number-formatter.ts","../src/formatters/text-formatter.ts","../src/formatters/registry.ts","../src/formatters/index.ts","../src/sorters/sorters-control.ts","../src/personalizer/ox-grist-personalizer.ts","../src/personalizer/index.ts","../src/index.ts","../index.ts","../src/data-list/event-handlers/record-partial-long-press-handler.ts","../src/personalizer/ox-grist-filter-personalizer.ts","../stories/accumulator-format.stories.ts","../stories/barcode-input-filter.stories.ts","../stories/bounded-select-filters.stories.ts","../stories/bounded-select-record.stories.ts","../stories/click-event.stories.ts","../stories/creatable-only-column.stories.ts","../stories/default-filters.stories.ts","../stories/dynamic-editable.stories.ts","../stories/empty-sorters.stories.ts","../stories/explicit-fetch.stories.ts","../stories/fixed-column.stories.ts","../stories/grid-setting.stories.ts","../stories/grist-modes.stories.ts","../stories/group-header.stories.ts","../stories/textarea.stories.ts","../stories/tree-column-with-checkbox.stories.ts","../stories/tree-column.stories.ts","../../../node_modules/@types/node/assert.d.ts","../../../node_modules/@types/node/assert/strict.d.ts","../../../node_modules/buffer/index.d.ts","../../../node_modules/undici-types/header.d.ts","../../../node_modules/undici-types/readable.d.ts","../../../node_modules/undici-types/file.d.ts","../../../node_modules/undici-types/fetch.d.ts","../../../node_modules/undici-types/formdata.d.ts","../../../node_modules/undici-types/connector.d.ts","../../../node_modules/undici-types/client.d.ts","../../../node_modules/undici-types/errors.d.ts","../../../node_modules/undici-types/dispatcher.d.ts","../../../node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/undici-types/global-origin.d.ts","../../../node_modules/undici-types/pool-stats.d.ts","../../../node_modules/undici-types/pool.d.ts","../../../node_modules/undici-types/handlers.d.ts","../../../node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/undici-types/agent.d.ts","../../../node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/undici-types/mock-agent.d.ts","../../../node_modules/undici-types/mock-client.d.ts","../../../node_modules/undici-types/mock-pool.d.ts","../../../node_modules/undici-types/mock-errors.d.ts","../../../node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/undici-types/api.d.ts","../../../node_modules/undici-types/cookies.d.ts","../../../node_modules/undici-types/patch.d.ts","../../../node_modules/undici-types/filereader.d.ts","../../../node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/undici-types/websocket.d.ts","../../../node_modules/undici-types/content-type.d.ts","../../../node_modules/undici-types/cache.d.ts","../../../node_modules/undici-types/interceptors.d.ts","../../../node_modules/undici-types/index.d.ts","../../../node_modules/@types/node/globals.d.ts","../../../node_modules/@types/node/async_hooks.d.ts","../../../node_modules/@types/node/buffer.d.ts","../../../node_modules/@types/node/child_process.d.ts","../../../node_modules/@types/node/cluster.d.ts","../../../node_modules/@types/node/console.d.ts","../../../node_modules/@types/node/constants.d.ts","../../../node_modules/@types/node/crypto.d.ts","../../../node_modules/@types/node/dgram.d.ts","../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/@types/node/dns.d.ts","../../../node_modules/@types/node/dns/promises.d.ts","../../../node_modules/@types/node/domain.d.ts","../../../node_modules/@types/node/dom-events.d.ts","../../../node_modules/@types/node/events.d.ts","../../../node_modules/@types/node/fs.d.ts","../../../node_modules/@types/node/fs/promises.d.ts","../../../node_modules/@types/node/http.d.ts","../../../node_modules/@types/node/http2.d.ts","../../../node_modules/@types/node/https.d.ts","../../../node_modules/@types/node/inspector.d.ts","../../../node_modules/@types/node/module.d.ts","../../../node_modules/@types/node/net.d.ts","../../../node_modules/@types/node/os.d.ts","../../../node_modules/@types/node/path.d.ts","../../../node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/@types/node/process.d.ts","../../../node_modules/@types/node/punycode.d.ts","../../../node_modules/@types/node/querystring.d.ts","../../../node_modules/@types/node/readline.d.ts","../../../node_modules/@types/node/readline/promises.d.ts","../../../node_modules/@types/node/repl.d.ts","../../../node_modules/@types/node/sea.d.ts","../../../node_modules/@types/node/stream.d.ts","../../../node_modules/@types/node/stream/promises.d.ts","../../../node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/@types/node/stream/web.d.ts","../../../node_modules/@types/node/string_decoder.d.ts","../../../node_modules/@types/node/test.d.ts","../../../node_modules/@types/node/timers.d.ts","../../../node_modules/@types/node/timers/promises.d.ts","../../../node_modules/@types/node/tls.d.ts","../../../node_modules/@types/node/trace_events.d.ts","../../../node_modules/@types/node/tty.d.ts","../../../node_modules/@types/node/url.d.ts","../../../node_modules/@types/node/util.d.ts","../../../node_modules/@types/node/v8.d.ts","../../../node_modules/@types/node/vm.d.ts","../../../node_modules/@types/node/wasi.d.ts","../../../node_modules/@types/node/worker_threads.d.ts","../../../node_modules/@types/node/zlib.d.ts","../../../node_modules/@types/node/globals.global.d.ts","../../../node_modules/@types/node/index.d.ts","../../../node_modules/@types/mocha/index.d.ts"],"fileInfos":[{"version":"44e584d4f6444f58791784f1d530875970993129442a847597db702a073ca68c","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"4af6b0c727b7a2896463d512fafd23634229adf69ac7c00e2ae15a09cb084fad","affectsGlobalScope":true},{"version":"6920e1448680767498a0b77c6a00a8e77d14d62c3da8967b171f1ddffa3c18e4","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true},{"version":"ae37d6ccd1560b0203ab88d46987393adaaa78c919e51acf32fb82c86502e98c","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"479553e3779be7d4f68e9f40cdb82d038e5ef7592010100410723ceced22a0f7","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},"4a882ffbb4ed09d9b7734f784aebb1dfe488d63725c40759165c5d9c657ca029","15fe687c59d62741b4494d5e623d497d55eb38966ecf5bea7f36e48fc3fbe15e",{"version":"2c3b8be03577c98530ef9cb1a76e2c812636a871f367e9edf4c5f3ce702b77f8","affectsGlobalScope":true},"d4b4f6148a6444ec92db4ac4c7dd7050ffc32b21a10276a59498e04740e8fd8d","2524f58c8d67af441b487c0ce0e0dd9c18bf3d06c05f621874dcda9780d8e22c","e056bb30bf82271634daeee81f772f4a7960085f01f6d4d09c8da1ebe5f6a623","5e30131b6a5587fe666926ad1d9807e733c0a597ed12d682669fcaa331aea576",{"version":"86492a546c3308feaf1dde967afd325c321483b5e96f5fa9e9b6e691dc23fa9e","affectsGlobalScope":true},"c7dd759e5948a94b42422ba7cf70eb8455416def9447614a3bdc1a99b81fc8bb","1bcd560deed90a43c51b08aa18f7f55229f2e30974ab5ed1b7bb5721be379013","dc08fe04e50bc24d1baded4f33e942222bbdd5d77d6341a93cfe6e4e4586a3be","cdeae34aca6700620ebf3f27cf7d439c3af97595dd6e2729fa4780483add5680","3ff87ea3471b51beaf4aa8fd8f4422862b11d343fdbb55bf383e0f8cc195a445","1cc188904259bd0985b24d9dc2a160891cb5e94210901466b951716fcdb4ff62","732fb71ecb695d6f36ddcbb72ebfe4ff6b6491d45101a00fa2b75a26b80d640f","039cb05125d7621f8143616c495b8e6b54249c4e64d2754b80ff93867f7f4b01","1b81f1fa82ad30af01ab1cae91ccaddc10c48f5916bbd6d282155e44a65d858d","a0fc7a02a75802678a67000607f20266cf1a49dc0e787967efe514e31b9ed0c3","5ebf098a1d81d400b8af82807cf19893700335cf91a7b9dbd83a5d737af34b11","101cf83ac3f9c5e1a7355a02e4fbe988877ef83c4ebec0ff0f02b2af022254a3","d017e2fcd44b46ca80cd2b592a6314e75f5caab5bda230f0f4a45e964049a43a","a8992b852521a66f63e0cedc6e1f054b28f972232b6fa5ca59771db6a1c8bbea",{"version":"be46700f84d0795f4a876947a3e0fcfd5b2369653c55b9efd8bbd84464630062","signature":"386e5858ba95acd2c0fa5ed0c5bff19addb0ef8c32ebcaf171d5bdcbb9ab8a3e"},{"version":"194d831644482bfd506296a5ed9a37ae280f7aa36670105c7e06694368739ee1","signature":"cc6bcd576056d8ccc3bb297b152e9e4d694fa13a3790078fc9c03f361d82060b"},{"version":"830c8d8367008c6d74c1d006ef214c3e7cd3fdaa2d4c3e7d74821145d5c719a5","signature":"038f7ba9c3cb0d2097d1fb3f6294c355999e257e42d6769280e1a978c84f871c"},"5565deadc1d553f9f1ef370351432c258d2a6f1a5ca47e574e5430db824468c7",{"version":"4ae1ed87c59518f4e0918a21409ec3020e97037a386b57953c6b9fed9cad6949","affectsGlobalScope":true},"05cfea0488751015b0b85911b6cdcde7c6cebdd9b8cada1ec0b5c1736357a552","f5800813e5c0d6c27d73b76f2c99f39bdfd6229d03553a8a9ae485f6aeb94425","4d5e201faa4bceca840b652dfc10795170c061f498e19429a06e056490aa69aa","6cf5098c7bf0c14358b656edd6103df1ae9f8c6a94abca9df8650c2b520d8096","ee11b7061adce4a1c0370620949a57851215b152a5632d2faf1aedbc90ad0520","f8c86fcbfb0a1e69a0ed28d3249cc33c312fa23a39c17e15cbbcc539bdcdc303","85e0f00b17c3ae8cd88438c754a2c43f4a9361e685b97a70e52e33afbf62488f","39d2d450df6efbf38585fd316f18922c8ac3fdfd4c3fc412d0bee34e2bc86378","4dcdfe4c18557fc02d8cb22cb422cb98bfeba8158aaf18cc66f9d99293ebe2c8","7efea6f2270a14f1b0d5f472f2a6fcb0a97beb677299e10b073cc2abdabeef51","642bd83dc8b11abc31785975f869fea5ab2dd84246acd13c6ad7e769fea95150","712dbb6cc6020b1dae2a2031b8a117717318652f73fd5042d508f7de416c47b7","3df6a0e8bdb7199dff6cf75c0250316f06b87c982bb47460960a1c5a793f5ca6","b3238dd00b7796eda3f507726e9882a55ff7043b249be8309abed22cfb7d7463","f499d7fb533781939c7a5ab778ac6e6c8ffe65601b1a61a843c36ee0013f05b6","7fcb76be88d4a64f6318b5a24b57021d7463f24485a3d1a931bf664c7e437534","d75490903da576f8fd0ee1c990858cb31e605d3db925593c12728bd0949eedfe","098ec42cd54c2b3354584c4fe8ad143040114891dde762741522b62788772f0d","1e73d612f806d183d6c16c4135c16c1a14dd827c1a67097e72ab1841852bfcb9","30046b0787c577061d43e498b507da8a249fbc58bbe33a09a7bef777e1d5fb67","cb2de9f1d7d286191834eeb331d23dc69eeb322745114ddad1695e4c575b5feb","dc2461db89dde29306a73a2926e2cf874e981ef034412f4d1e3d06d45bb3127e","13a5d8ec52111b64ed8fdcb47ab664b60085733c46c44aede33fd2926840ac31","1cf02270a889fcc3fa5863734fcdbea410d3b4dd71e4678a894a48028f836f6e","4f69dd36aa514494e2665a9dd1ecbb94f705c37f13554aa6f0c4b55d47dcfec1","c88faa2f2d9778aa0b4dedc2bfde0990b0beea6c45b0fc7d4a79e1294ebe8cb0","51f3be4aa09529ea1ad83a3d66830075a49e3e630df25d9892ef5708bb00de55","1bdef5c3270439174be1f8668f4e2d9b0e61be67f10e5dc770b4b7562caf04bb",{"version":"95a1fdd92694bcf9c78a3bdee8cbbaa04f8eb40bd95b94451baadc6ce417a1f9","signature":"09973dc7078994307990247facb1ee49da7c77f1bc4a5335f79a1921e4a9d081"},{"version":"4ddb9a84f8f53b8ac9a38f235d097856d1fb82b9a6e7b3048a4ad837ac5a60ef","signature":"b139ec32726b861d729421f33e3d51a26ced7a5556363ccd7c13b0463bc351f9"},{"version":"e66d43dfcddea457eba1932607fa69025d6c8bf2caf9776f8524dbb484a165ec","signature":"292ebd2977ebceff1836f8df3788f7d9472f41a26d0b4b6c704404a112f979dd"},{"version":"99b2337781b8262e9db5efad61367729d5efb6c64d6344f47d9fa42c093fb571","signature":"48ad022e52419d1016325b379d0ec9983e7543fa291d85bab1e05db4ba4d991e"},"cf93fb9208a01c80f0fad245c4360356e5de6c2384b7641acf0b9cc2f5c42448","336398b0efaf964124e636a9b29c4edd5870aee79ac64bf87be58a9d66b7c048","571bc65ec37ba124e762bb822e14a2b8502dc684e356be8feaccbd6b9cadd023","7cd455fc4c4818f19263d73b29c59f3fb5fd54b45a6ab83ca3eb3661281db56b","1c6b9b5501774a2ece6574be8e26092800e3f1f836f8c179b4f9fdd271a620f8","bcd2426fd141157e04e3a8eff914b575403587f398cf0878f07c2f283e0d1afd","bac8ff394e831e4dd3f0961d6abb414b0e2b4ba16fdeb502d087ebf0340ed5f6","51a48986bfceaa54e86e8402a1c3184de6e7f096f7d2a3ff1382d71aaaaf6d9b",{"version":"a1e35ff73cd8da1121c5e275268e29306ddbcf1cc5dfa55648e7240464b4081f","signature":"9ca4c5743ac77f84a83e5c6812ca41880b5f532c8a344343c0ec5a307b8d5fe3"},"4b5f6072b4a2eecac2f89ed771612c856582722f356ea5e07cad34442703dc8e","ea4d0ede198caccace0378164a34bd26dc5df276aff53e03ec59dd22fdc2347a","d033de6f37b4734cea6214bdde25f0eb60999f8f803856eae89eb804c0b6e0fe","6d8223035d3e6d8ed0760d4579dc0cc582c8972ea198e4919c8080ec3e9baf0a","6184309fe39e2fe444f4ba94e7cd1abef48fcb48e258457c3b77c65828184241",{"version":"98c511f60c3079d731a35353a47bfa89dd79eeacad48a45d07170d22ef4bfd02","affectsGlobalScope":true},"905800cc110167503d0cf58bb0dd6fa4aaac1e9cedc9bd9c48e5d1f8b5b8d4c8","d17be577b99e59611df19ca2cf0356df554f55bb06617c21321fc4ec06b820d0",{"version":"5f30145fbc8ca508ae4e0d90a4fe9eaff490783f380a92f6aa262accdf7887b7","affectsGlobalScope":true},"2c887f29f6796ea68247c626acbef560ff29bb8d0042b641e4fc69559841463d",{"version":"f882b77c5939860d599b4b7bc39f741ebcd56123e18b284500f4b8923acd2e72","affectsGlobalScope":true},"0230bc76ed3a464531a43d2434d315b9cc2096aaca28bdaa65b8f9dce9f3bc81","559d2d1cd7f37dc2ac59e7adce198ad16a5eb0c7273d67b8e4ff72821b7c853f","afa8760622183e35e86f516574217eb1853b08cf2168be0bfe991643ece1a8fe","82c4af4fef6ea53203df31d4d1da9acb47f9a1eabfc7f45f0f181b7ff9345187","d08d474654640266d6ac03f51ee04d72438b78ea377b9dc4678c480ce0477e1a",{"version":"929f21090183949e93fd99327d292bff76f781895d5252eb43319b2c3e014528","affectsGlobalScope":true},"f9f3097a031827350b6befd870e9da3ec0953b7269497c1a7c5dc840223d2fb3",{"version":"d56278ed347a6685abc6da6b49277da36db3ddce86bd298c03b48a5f9c6d145c","affectsGlobalScope":true},"2c26b6850c5c0a3a7c833b22fa88fa52358316b958588c865854467736e266eb","072757052034bd5b80f7e5cbe3e3c26810efa06b822fdd6f6416d4c72f8a0503","c97f742ef6e8c0bc4e5e4ad8d90b4489cdd3bd1c007510ee4a2e4c09266a11d2","6a17f676d06d3e695520b275dd483b4fe62d34b84926c0bf6425c08490ee2c41",{"version":"5d12cb6727905e2c47f26154cc2b0625adef069d5666e534dcb158f4eeee2317","signature":"b4e0c5592f4108bc1c855177aaa1b61d09d02f8e0f59089388aba7206c47d4d7"},"74fe889b1d2bba4b2893d518ba94e2b20dabe6d19d0c2f9554d9a5d3755710f4","2ae64cd7b6e760496069ee3b496c64700c956a0620740e1ef52b163824859db7","ff81bffa4ecfceae2e86b5920c3fcb250b66b1d6ed72944dffdf58123be2481b","458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","aa2c18a1b5a086bbcaae10a4efba409cc95ba7287d8cf8f2591b53704fea3dea","6f294731b495c65ecf46a5694f0082954b961cf05463bea823f8014098eaffa0","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","6c65d33115c7410ecbb59db5fcbb042fc6b831a258d028dbb06b42b75d8459c1","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","4f6a12044ee6f458db11964153830abbc499e73d065c51c329ec97407f4b13dd","1be8da453470021f6fe936ba19ee0bfebc7cfa2406953fa56e78940467c90769",{"version":"3b4541e209c5748bd4193c455e8eff5e289ea8745e0bdfa640dd17ac4efe483c","signature":"a1338c1eb0e7551a083f0f812e6ceefac1814572837a6c3d3bb4c9b7c3b0156a"},{"version":"a7db10c9e8fe7bf5b08b25288802a95ecde8bbb397237edbaf388dd3f4974902","signature":"ea65e3ce32dcbb61edb379f86b303732103a887fcfe61fb0434cd5398fc8c272"},{"version":"38d283fcc907d965fc0d5cf56db46a44e6a26944f7c47125611c4090227414be","signature":"2a489164e760c8f1c603a0272822b1eaf4886e578e8128ba6bfb82993b419c53"},{"version":"9e6f764c8f782eb7112a6caa510d18995f1d840e32a6a721cd60419686256dd4","signature":"e1925458d0ea29d0b4d314ac029c368dcc5b5b0421be3c05c36a12df92840401"},{"version":"0ba3f0e844a39f80a09ed6949047f62d8d7aa7a7b1f58d42e9da66d39bdc8ddc","signature":"19236d2b3a4d329eecb7d867e62ba2ce8ff2a1c290d9b9cadc246e1e860232ca"},{"version":"8c182691fdb83b3eb48d185fd25ed63ad4cdba1e60c9d0b1b03f9cb595abb28c","signature":"c348a5e4481d61843505811ed74ca62234d5bde08db286a719a7421bf64fc8c2"},{"version":"e0ea3314210ec55edaad6d5efc66a5f5e628d1c34492c00a8753ed565aefc59e","signature":"5e0042ca0dbe77639779a6f861c2a32fdff5094031e013fccf95508b49f6d7ee"},"c42f9b18f5f559b133cf9b409f678afb30df9c6498865aae9a1abad0f1e727a8","d58ccd9064506e6b18e5deb6d80d775caa48447a2af4f26b5b1258a23470a574","deb6a1fe91454c998461ab46ccfe923c761e859989e5267b84c911945fde22be","d6c0b824e25ca3bdd752c8baa81a8c5c2da034ffaa54ad60fb5cb2bea6e2bcec","f267810dcd09cb85ea08c95901e568becf0b9d22a6d213701ef804d40b386f60","53d73afd92083f9a920e20349f78a555a0efdb6af456d93d9e909a6218a02984","680b90445420b57653cd9afa1a143605cebe72cfdd0404fd5865cf7468d9fbaf","08c284a870f969e3755ec10154f7116391ef7370d157b612598f9a990adf6b37","90e0f68bc1ea26121712b8697446d05374c920d57178f64cf1864171de75129c","38310ee8ef968c009441d8589375a1a9c302594afb260aa663f70906f581175e","4c0507b286279fdc18c4cb683f42674a21b8437d6b283a4ee432e6fd7f59d59b","27909ca3d149c1c6f45b29b6e2ef4b1cbf709bfe6c0c66276d4541f6afc8031d",{"version":"ac20330d0e04d55fed3b4c7217077c24d3670d1eebb7f2b3648af4777b28f138","signature":"71259283b7feffae74bdd462c324546c90977acacc55ad5317bf4b2ecc23bb22"},{"version":"b096bf6199de06040b835094623bc21bc153a670bdd6e0099c03f9a39982dbbf","signature":"f0512312084ae789be5862be6bbbb4bd4ece73ca1bdaa3193b1a2e3dc0b8ea42"},{"version":"38ef896f3757957ce79dfd87e5a25d439f95a76870ca5e88b19ddbe83a85c8a3","signature":"4285b3976062212af73781ab61cd2d35014d6c8922ccbc082272ea14b56c4119"},{"version":"91e56399a09af398cfe646baab37d09b5ad25b90337462e1e1c5821281fa071b","signature":"8dafa4ba5adabe83b44b8e04407318146bcc51da5e1d4cee7b1c6a11d2501ddf"},"251a1c5478e2a771c4b375028331f71f0d9e4416bb7845832aec9fccfb2656f8","14ebc955b44627c8c31d5cbab04ec92b0a31d01c058cfdeedd427c0305649c8a","f2d2cc02bc76f6dc38112a954fadb956d92a141db93224f6378c036a505f1aeb","ca1495c5560ab3ed0f7da01267a8ac4a92c612d0fc13d56c4ebd5a2e3f595679","0f81a53d54fd2b4ae2bf60067d616de99884bda21cb5784d942089d52319fb97","86d356e64ab8d56852623677eb1bed0c106703aed9b7788ad8a5a56e647822cb","29dca1b5f0cac95b675f86c7846f9d587ed47cc46609dd00d152bcb37683b069","231d829c892caeb88dd469e0847bf9d14e29c82b8b158b381ec866c868adf9af","48ba49f8bfce8c08ad1e7e54f0b85da9db7317ca76835d1c2640567e3fbd50c6",{"version":"b4bb0b73794facc029460c133c3222afac409384839731376f3f27e6f4bb7d25","signature":"f4ce147c4745d8662c66dc47cc77226bf79eb00766801c8225b570d1335f0de0"},"a862dcb740371257e3dae1ab379b0859edcb5119484f8359a5e6fb405db9e12e",{"version":"76631ba4aae52b025081045898af6678333ab7bff9ac4aae9bd21096d854579b","signature":"27fd44ac917b8f78d65173dccad092de47f408db592e1abb355f661d49646312"},{"version":"8ff93ffdd9b9b85fc4c03c6200a8731d090081157d40b69ab85d1bbf0219fe52","signature":"700828225cf903b1fce7dbac7d6afe27aab606cf6f38d29382f6d8cce445f3f9"},{"version":"7861e945dfd5b6ae1e09e8b9740297e969028020b60d5dda013b84c7cc291188","signature":"46b34b7637e3c97dbf73dc0d167b84f90551113719a2e6ac825dc06407cdbd2e"},{"version":"7906b3b0f38706b264bf78d59a373fe595f4fb6a48378babbe599b380ec07cf9","signature":"6865ad92b0b4533fba14f0583b28ea2fc6a750235c1399a9689e029dcf64fcbe"},{"version":"1f7f544c6e60b016d28db16415c5a2f22219e821e6c5313a5f1c8f3bd4803496","signature":"beab932797dc68066e0d458ee92dcc8cd6bc356599a70689007f68e74e340c8e"},{"version":"acf6fadac9d6f7b196f325c8bada72d821009cebb1455da43ef3d875804d5a46","signature":"24e703a20760ede3d4ba47c5ccb615e27f4e512756784069bd9266cc09168d4e"},{"version":"2fd48df87a103cee6f65309642f4502853d1608eeb00189249b2286093413e09","signature":"311011b8c26c201fcbf5d2640cb0fc0a68bb6e86982da073bd966438a560c5bf"},"88a3a6f8c2a1640d8d5fd30d8d86462f8babd86a1e52fab0e8b7f7c141fb348e","345f76c854da724803c96f727a3f9c75e26cf95c6e7b8c1064dbc4e7727b74e6","ab7b7a15a5d73eb0cfc2b973e580f357f07492bff6608669d7e899e2d49ac9a3","553312560ad0ef97b344b653931935d6e80840c2de6ab90b8be43cbacf0d04cf",{"version":"09574ed79cbe0351672af3886a15443918c08c75f1e0a811fa45dda4964880a7","signature":"30d0c3169d63adaa3d171a6c5fad4bb3c904d70608bea6024d1d906baca96be1"},{"version":"a8e890a50f7c34eda4f7e046220e7f444a5e2c20308c96e7612eb6b380c811ea","signature":"98dfd5ef3bdbcf4df59a1c17736d8a347295b3921310f68e4f70f28cb81c1fed"},{"version":"4b18642548cbaf278c003b46ee59d07881efe615c702e10ca36d9cf8f5cde753","signature":"7e6f3b3128a22e847dcf416c6b33ffe6204ca823e1db144a8b8aacf0b6ec33cf"},{"version":"2910061081ede86ebab15dc9a5d67c77c798b1ef5846ebbafde719de4cdd5a4d","signature":"e9dfd662b153cb241334ce04bb29c1ccf07b4143f144dcc0e7d1c2339a10c2c4"},{"version":"8a79a7a56562c1d3f69704789ce70226b5d11c2ffff2c341dc23bc7dc870e566","signature":"36660e8875c1d5b060f1373543cc76b7be3137cf789dbd2962f67da264d349fd"},{"version":"01e4e8dd96539570ce8869d117df02aab83eb5f4002f74ab2f088ce1af186153","signature":"1326612693a2e42cb96b6097f79336ed82d582f581e2d3aecb157c50fbb7cbe1"},{"version":"94b0db6b6f1f1ab48612703889a20b18728b4013cbd2e75d20e11129420a79cb","signature":"880d6f16d4f1a93111c1ac563b264db9413810c415a95bada77c0e5a46432704"},{"version":"00df5ddec88858239f9105b898535fb82d4c9b21caaad6bceb0fabdbc7ef4c81","signature":"0e6dc8cb5b0edff44f46586d030e374df1388c8417a1685ecd7721ed01cb4dc5"},{"version":"b6c20cc4628976a2c9c129cd30ba82973cc3acfb26cb93de41881f7ba3717807","signature":"cc8768e0f4b821b76cdb679a23d65c9987ac10fb458789505b2cf582220841b4"},{"version":"d1f662d0c6c8f0ad7c74100c19a276dd9367c8b3aaa3de15ee5b9ca725c91187","signature":"b6248600b10f10758e88f29c62e6e7da3ff95e4f2f04a4998b914b8bae6192e2"},{"version":"146914ff4c06af253e9268327a8630949e8987a9a51f790b286add192871911a","signature":"cdc4e7fd1b86c67e46621ee7ab6b709a582912caa997d9874e13c9896a0b9cc9"},{"version":"8f196ca7056d7812807d4c3bba8835b948c018161ea2b4d40bf44f0fbb20442a","signature":"3c458c4c878a7be2ceaa7e9318ab2d03d799dba17209c18443d087b68a053185"},{"version":"6575712e1315863b78a1cbaa87576fc9bc45bf33aa67fe26600aa6dead6ecf0c","signature":"6a82472fbb0445e81d7975c7c63d3deb69285ce74081268ca3b3a66863ac54b2"},{"version":"aa0dd4da48215f4130aed9283fdc7b3bd44ba93741dc0c8f6160507fb26dd84a","signature":"832b1083b3fe23aaa13484835124c9150c7ccb80f3a8c2bf007ce183f2592b07"},{"version":"cb7796d30a49d91f814af1129fa98771c04b10872991f04244a918889b0daa9a","signature":"03f3f03872ff6a90ecf2f05abf86b743b479e28111a53860316cbd3acd16e652"},"3be6b3304a81d0301838860fd3b4536c2b93390e785808a1f1a30e4135501514","da66c1b3e50ef9908e31ce7a281b137b2db41423c2b143c62524f97a536a53d9","769c966ef166205a08c0382a298a6c5877951599d805931a963ae5650ee46391","35c1202e93852c1c233191971b8c4aefe5d3f9df287991585fe305078c0880e6","690a59ec8ef431839c447cd88fbb0bd0ce59c037736d8748737d4e0f2ed57077","4a2a6bd6a36b058effc58d1aab136cdbd66188773470885a4b414098a0d76821","b12f96f442196be954b8fa982f179527fff05a796962fecfb6e12b0a2c1b6867",{"version":"2ddb9572f13b565c3fe90c9c797950c8c7b49e84989e850ce8619564b711d6f6","signature":"26e4e730c693d40c7b96173958fda238b0bdc5060efef9d8dde36e61a0c53418"},{"version":"355450714c1eb72cd75858fda0a458f7ceafe5654551e8c7e3a82bbe05ec25b5","signature":"988e6ed31d7d505106c63046218e13120a1d058854dc0007ce729fea94e5a557"},{"version":"b5cc98c007d3c63a2f85d8c14e120932b20f0092ef46c19bab741c25664b770f","signature":"c66d1dfe44eeaee2f129547a9f822cd271a510a8a62941bfbef00395ed6b60e6"},{"version":"8c03b854441aa92eed8ea8282057605bbf4f1d7a52103f5ac55084afcdd32a9f","signature":"1fa27a2737b97856d4c626aeb160d4eb2be9bdb430116f682e6aea2c302acc69"},{"version":"a0547cb5b8de1df4dde2d852d988f67995f07a1974c7e8eb99bc6b44a659bd1f","signature":"44e1a9f36b41a93165ca1a8ae69c38528eae065856dd7e854a3ffae97801ce00"},{"version":"c17dcc94de829de95ce1e2ca5d577a727517f0f0001f075f7b9626bd5013b288","signature":"4407669bd505d8a03ca675be46129d7d1e3110ac8a541ce1c0a48fe450b83a85"},{"version":"0eb009ca9bab7ed05e23270d194a8958a004439ccdfc998207ddffe26a919c51","signature":"f0d539a02cba1e4bab64d2bc6447effe2b197a1d30fec8cb636b25478f7de4f0"},{"version":"fca32ecbb77416d944b9e28062955527478b5da530c9195d23450f86cdbc57c8","signature":"fd5466afeeb6b4351f0ba943b582bedb3720b94cb5d28d945f34871951d949db"},{"version":"cbd762ac17acf3080e0acefc49b9b84a36756d3c835204fc152c1ce9a2cf028f","signature":"5b2dafe66896138a12fc33743126ed316f93971f5233fccaf602784a3c8ac22d"},{"version":"da84102257a1041607674f42ea9cc84237825fb363d54d1cdd42baf1489aa0ea","signature":"437020e4126eb3f158b1cd46ce7c469465e7f60029fa78335e44f85dae0bf97c"},{"version":"3e21e5658458213bbf254b87e8ac88aca6e922fd10d8b7a0e07625b6fa3909f6","signature":"f075fcae71eb7641f6a73d5efd39072a9f8d02b4185bfc0ea0977026b4895dd7"},{"version":"a43a79716ea9f2761256f7e8fa06344dd579d9b184064b125284738a09d02859","signature":"3e4cd4ced7e1059b14a400e6e035ae8a2872484d5d8ee9ac9c07a0a21cc230c9"},{"version":"cc5271ae03529c1bbd0641d3fce46f72a4ad28b39dba4ac588bf96433816a023","signature":"8c952d03f02465cf6a46fdeb9209f586c45f76cb29170cc94d2ea4898733d8cd"},{"version":"a647b4a652d4d596ffa78ca67ddc6c90c909175319e256c770dcad53c22f045f","signature":"eb3467ea87de54d0159d56cb11b2c011b948183d1f5b8bbca396543c92e68fea"},{"version":"be3570eb0fba40c48257efa6fbf672a81166e73546804d14e0de730ec15658d3","signature":"533fad16dc5ea358001aaa1593ad8b6ec9f01593530aa3593a2c267991f4a569"},{"version":"023df7640738f59e9e81128ff194f354b9a948d43d2f00e6bd7d29e8f2e8c7f7","signature":"6334bc1747824bcc915df251966fa4a6a23882884f63e78a6afa167672a7ce32"},{"version":"b8cca2153afcd0cf116b3bc9dcac04636aa518dbbc19daa82d8912289cd64b5a","signature":"3382af95e795d8905a8396033f1e7b9043fc83782c14d7ccf8ce49769ee03bd4"},{"version":"9739c15e13703253b7d0999100b20ee0c1e0c957bfce484adf8d67e2c74d9bd5","signature":"6281abf5998eeb7645c2fd778f165fb09aa8040925545ef803c5102bd0afeba7"},"447514d8b6ecb35b116a2e41f5df316c5c3ddc3facb4af22d1daf99d64d7ca34","1c177fa07b680ea2bf225f7d1da10a11af8a6fb70635b1525ebba8b83557bf69","6d839cd56f1d70d0efa2f9a359bf3ae6a611b8926f3c4cd151628479c289d392","4ea7da92da0f5f8a8ef411629fa1ecd3c91646de0f34560d5b48779131076c5b","9079351d06f84fcee2c0baf7406f9c92ce6af84d0ecd84cea6c985edde6bc912","708ba239cba9880cb24afde1c8cabf3f51fb3c0d495c679edf493457e2a7e97b","3ff161670bd227ca0359b7f2dc838384d38b7b6c5e92c2c0af5947f0ded6cc3e","e01e6ae95699d5a2dfb96eb9d115ff4472937a719bd79f77e6545d71a054a066","82bbc4f18267bf75c517fa7aa5835adef8a0a452050d1f8c4ab737917bf549b4","ee77aa598a528f724562dba2a766d58dc0dd8003bc7ebae9c4432862cba96454","fe9dd679e568dc2a0e5e6959f77b53f8bc1f126d46b0d17631347ba57470b808","57950481faf0210f869f558b80ea7747bbd7a9bc81f12b4e9dcde321300aa577","8e4440f2afe7db03030474a78ad2d61a4812f7479479ebb02aaab30e1688644f","e7cfcffcf2fc1dfd889a4db6ee67c33b8ae8f03913e9991503c427fe5771cc2e","4d0acbfbdcfac4d84cd03d34354746381bb97b0a4e070005b2d63b35a50dfbf4","e03c675a217181b8f3b92a61d161673afc488aacdaf872f953fdc48d5a6bc582","d0e548b52ce2a55820b470ad9c2d66e2855fb3e9dea936fc29b4d4a63bb8fa54","5b402d6c32c733bf8065b8abc34904fffcfe5b94b0e1b99e63a34f450d87faba","4242ec59abfe16b8b893a3f9ef0ce90b6a53afba1ceaaf808e0a225bda7e0714","46971bf04e56b8de7c9c74bba27b54f5f4a78873b6cbf0682592d0693c2acb25","54570339e5e91d8d8380dee2ab4014ffa88cdfd73ff0a20e4ec085d64d81cd78","311c45b5a2b6585a84306100bb514c919b01ee21de43efb1bb2aa6a98a2753db","fc94de52737bc8fb2b1290d6f22b5dfea3e50c8d547625781fa6a2ccd35c7242","003fc70f48af6f23b3ed3bead2cc2d00b07b82e414b0b80f905a6e72a3fb1419","15a95894e214753c1e2dc638670ac7c5a6d05d952b19ea3745767d239fe00789","5d82404561003f51fed07b961d061f702dfd379ef5f0f7927744a4fff21fbf64","c0a0a579f2a69a5600eec5da4d87f83a82cef0aa70cd4063e9040f95d879b96e","8ecbfacf281dbd929d3b5f09b4f96bf999a45a959e08501b07117256b1eeb659","968bc5962ea9834b383119f668c4cabd35ba7e4a2c5107fb2d38c8fa66f164be",{"version":"22a05089243a8f0fdfbfbc2d956dcf61872c5c973ecda5320a8f1e3a4dd90bfb","affectsGlobalScope":true},"9bb6e652f67b205e169436f76e1d8fd396bc9971dbec1a558eab3be406343e8c","6cb1ff661eb0cff9177c3b47e82abd0fe3122fc62f2bc0af432a8c4205ff3ec6","d4931bfce5c009c57f86bcd1039b3f0a5c5ef61d26a685f0abf77f20b18fc066","4bd4c71ed7c85138316133c98926c344916002fd572f52af1889961dad8d73c0","d0e3fc2ed7395634479edf269cc2b3e25d90b05ce08ddda1717282f9f3afecd0","8744338f1b9f91b6ca97ceb3bfb10babf4397ffe3c304b5ae4dc016f7c3fcde3","694291734f077ed109fdabbfee35995f7168b5d1af643bd6404eeabd7036aa01","8a01e603808722b8fc316d1bd57be1ebcd485237bae329c275999a8257ba77d0","4012af9177a7bb1715a569cc54565b906e5c087a97067abbcf9f75f7f9a476dc","9be3b21edf891a0ec1d8caa0da81816162f4fa5376a7652e0ec3154df6433a08","e544e87f21a6afb7a4e1196a991fd5d235d6df3b8c04ca6df0bc5f85f3aa4f5b","19910d826b4901606d47b306cd70ace2960eeb2ca2cb5e57acc81b42eedbfbcd","d48721b66317440af7e3257b38e144adf76953419a4a4db1fb60f743eb7c9b92","a71d8fe039f1b2c852618ef0b6971561ca4626fb8b30abbf6d238441d47aa6a4","baebdb5ba48a482240d2ecf8497a432aba8ca37d8930cc618c4d3b5d12ceefae","9ce316b892b5134f715b4f7afd71c06384cf9af9a69009cc9566b325a095e592","e5b8715a800a942f0a3d57d84725080ff8931d095de55497c4cd18e23fae9c1d","8a77a40bc44b873c7c000435ccbc0c16ca1d4b523e2528e0a8d05d0b95c520ad",{"version":"c34297a26fdf8d47f98aeb755e0e6a6fbd935d0e347979f63d4cb9a5abf14140","affectsGlobalScope":true},"0a3f0bdec21726a138d8202f5428adfe962df1e7259a41d68c109d22f6e18672","fef62bed109b31722160fabb598f61308506f9b7f40e60b3746ae01e3a3dc18b",{"version":"c81679572dcb2188e18113641e0a8914c7cf06582d1c9429a9a5bf1f72a31aa6","affectsGlobalScope":true},"60daaa6b5dfacd7813a9cf22e1ca5860217f36e70dfcf2fc28c049a7305076e1","b203234dcc09962eadae1146518df97f0768783913616ece5fd1f7f13d6f1361","74a696e2d8acb105f173f536ede57df87f10f1811879c6537cd40718156e4809","bfa3213963e67340227e92bbfb9ae68bc9945e505818e9fd3fb1b207bc8ec89a",{"version":"67893347ea02fa7f9dac48c06155eb469725bd9bf44e2b108604c58d07d13780","affectsGlobalScope":true},"eed40411368d686759c235bd0ba8300c6f4c13d5d1ebaf05a475332c946c4d4f",{"version":"bf20e597b39dc2e7dddbe50af7e58adafc0e25add218d074cc72d3875ecc5a31","affectsGlobalScope":true},"72a4d5caba027e6aedf80ecc3df2262953bf812ce8ffae9808a8ec8dc5de460d","ebe6f76595fbda9ca25d8018bd932cab144c2b1ec62ab8ec064da0ad729eac96","6bb8d9049c8717a1aa508b02a46bbad3a5a682442f7aa2bbec8ae65409c9cab9","74b9515be606b420215bea8e2773a68843ff56936321a2a05d6dcb03f7f439d8","fe6ef56e51a42c920ca515c73990634b33330c3acffd13b0ab7c24ee499fbdfc","d770f49f264d056151919d21af581b03f5d898e06073fc4919e84732f73fbe22","bd47882cbeddd30ec1ed8e5c2e92e8e15e9ad21947c0f0f41c9e19ec60ab9d83","21868b61c093f8a0fcb968db12638faedc271b56cbf2ec7a5f8043c7ad5fb430","eeadb355ae4a55fdec488dc4cd3de017ed497aed0f9c69610a8cb3c22e159250","62fa4423fd0495c9f46a1b2ac13dac99b6484dd3d661ea572ae27c49572b28a4","fb5c068182ae45b9970d0ba96eef722610272bb072a41b7111a00b431c2d8ffc","8a9b7a437bea4cc34e5e103e01573ab3afc4564a22c838942b6dcca0f68020e8","8bb8931e629d9adfac6fe0c067de1a3c2f82b47262f83fa76eb0772ef13808e8","7791e93d454eb1f0bc12341338d4a556155c128a9b4a9733978b6260bf081bc0","073bca57dd662b743900afbe847255ce6ebd8d0fdff5e16bb1a5ba3295c69410","e19dab5e7994dccbd37c1d9a887ebe6e0ee9d494ff814bbdc8641de8f8deef2e",{"version":"220a08c0460aff4f65b8129a53c63c97599d96430150e7fb2ca8da5ccbc16bfc","affectsGlobalScope":true},"f296e6ff892a925da76ed1e7b2114803db2877f1fdd665f33e0b26de7e1a6523",{"version":"2b7426977de7220c78217f27552dca65b529654f85f7c26b6689684c9f002cef","affectsGlobalScope":true},"a19ab932455c9c78c3e290ccb7d3f1f4880cafe5e89a05967903e1765a37153f","30ccfaba09980deb3ee75bf38131c4594c27125ae1274a95a0924eeb33c63083","04793be22ad889679768f15d11c20d091d7bea8901993785fd79466cae6a5352","3dc9ae67c7a8d4e9e6aceb54f37790cf7c12d2ad4555025783974a4c284c51c9","504a630faad84c8b488f06c7e44e5fdd0222036ce2d72e1863f47b91bb9dd314","23f87ef63730cb4fda4d1435088be67d36545602591c526f9abcb3820a62708b",{"version":"dd1eed464ed71359a17fc199cd4ef15bdf1a2ac39e3a462f77cde75c7ac36664","signature":"b65930f4a752c0d23b3412d1cd878ed11f6b29b1fe27a6a364f0cc86adf385be"},{"version":"2f82d22ebfb6a696faf77aad00b4b8c0d867f5efff7ad585cafccf1487821930","signature":"0dfdbb9e8ef7cc69aa288954638e18cd6a14411fe7c8dcec510a2bced510fc96"},{"version":"4fd357efbcc34d7fdfd0b4fd62ecaa536f10648769841b7863231f4e2d08e926","signature":"c447020e4465f53f011373d258d785edba93ee7195bfdd10f053ddccf5a47148"},{"version":"8d455f8624a1df37cf5f2013c60a5748c7892c9f974291a74d6a0a0ac96f71ce","signature":"32acecbba5dbfbe22f171d1aeffbd1df9c8d8d17e386479eabbde7209e936917"},{"version":"2168fb0b1c695e7eb6b1d181839b338a3aa4760d29f8e4a89e4c87b1b35bf8ae","signature":"99a2a7093ce043534c17c2ebebdce37f1c14ac2b77780a476cfb70e5a9d035e2"},{"version":"1283bd0148fd0b69b6b870e22d46c64241e819c5d80ab24b617298591ed7c3ff","signature":"c721ad947ae42f62060796a1219783240ae5e49a17831117a5bda2d6e5aea2e8"},{"version":"440095e93b145ba926dd78a7ab2b242044f55556b26929336f6c853061a86cab","signature":"aa9938ee0714b2ce25b2b0702efafbe81361e6cb1fc73c835e492d946052b572"},{"version":"e72c4adf8e839c50c829a897ed9ceb6010f4b9f1cc95272dd43b63405116052c","signature":"e395cc56652d1d4bde7f78fcd62e7356a76cc3b190e219dddbaf6fe87eb2dbdf"},{"version":"fa672aba14b4bee3652f28bf078eb498a71374b3dc9b1e63b65b05fd213e4635","signature":"b43727be75c10e1869bc887efafda3300221ada612ca08e6237b8718e86ada93"},{"version":"1e834276e651debe99cd115a3cee8d3a53b1858355251bc8fee5c9be76bea5e4","signature":"b1d629950cf09eed9cc08a0f2f4ac780de6f05c2e542b907777f7eedfe77097f"},{"version":"900683c32709e025b93cc18be550bbf2a2e5686e0ac5d058f25468062117a5a7","signature":"27909ca3d149c1c6f45b29b6e2ef4b1cbf709bfe6c0c66276d4541f6afc8031d"},{"version":"9ee433390d3dc83deb73c8547ab196a4611d7fa203214f807cc50f83f63acc40","signature":"ee5dd58be2d59336348bb96a03e2a8a7f36fa0b597e71b02510c555bbd248cf6"},{"version":"a06107192a8072e1f67569393e90d4ed71d3e6e7b766f0278821ea240d0697b0","signature":"94bf4be8557d0895cdba0fed67bae5088ec9cca47a946180efd7185a5708dbea"},{"version":"1db98e998ff6ba289361642182158025bb4ff8e4a38b361463808fd4c8efac4d","signature":"9017a768f6256decc1ab10240a2ddae30e0a01e802b012148926bda165c8668a"},{"version":"f16186178339bc9aeaad0a572195767171a127cd5f3555f9d772ae4a4efc0a6b","signature":"4191fb85077a7c48cfedfa46819c208c32fad51af7a1c144fa1004deb08c5a0c"},{"version":"18687acebfc1767389e8dbae6d28f82bf935399c5f931c54a62c461a64a38cbb","signature":"49c2f0ad931e5d8d527e573b448596a239f3e3ef0a1a233afdd79b9e4f89fb7d"},{"version":"7dab165656a73dda1802becb82bea549f7021c7f6cc0d04e9d7447aa9c244e0d","signature":"44405175791806173152834a7a42a33babc0e3fc9494af8cbad7606bb2a936e6"},{"version":"dd20dc1dde9e5dfc60ee128833c3fff8ac7367b3e5be5dd0abe8ddf01276703a","signature":"5f6b95a458bea91e008fa7ac9c5763331ae550b46e6d857ee59817fa100023d1"},{"version":"ac86afc126abbafd403f5619ea8a9dbfb1423fad5a59941e3c5bfd2c80e45b58","signature":"adf1b38dc34f8147a18388d5b716ed3c4a2ac94fe2da47690a5cef0554168d67"},{"version":"2484f3e12424669b28b6a5f7e9073cd49d2a897df50f2a7c589bb5170ab0334c","signature":"a2ce66067019351078533b6eddb5240e96f01686f8014f8959d63a2587557fb7"},{"version":"900683c32709e025b93cc18be550bbf2a2e5686e0ac5d058f25468062117a5a7","signature":"27909ca3d149c1c6f45b29b6e2ef4b1cbf709bfe6c0c66276d4541f6afc8031d"},{"version":"d9147cec8c6e0e20ae11852c7a15085769befa4e780ca9bd100ca2c7e9db1532","signature":"998699eba617b9157327ec3be6a0da70bc0ffd86a40a20c21ed619f6f5eda300"},{"version":"231bfc4b61cba3ef55fcf0fd3f03233fc01e2fe17fe374d02969203ea169ba93","signature":"04a54102a8f6780bee6e4fb11f2a4385bd5db1c108232b61ebf197296005fc55"},{"version":"7853744c3ef97b5d1985112225e71e6a6567e129b6eb4239a7f551a748f82a4d","signature":"a5acce94760166021b02598b5b4e9048d761cd713d0094743979f8dc97171395"},{"version":"14f0dc09968e72de27228594bafa2621498bc7b222e1963dc508666e5e88eae8","signature":"c75c4ce24b1f7976aabe62f58b079210dda7c8bff461cb852903ce0063b876f5"},{"version":"19272e0b09360fddf253d5c950575359862bfcd48f36ea2452e8daa419195a9f","signature":"1905cf2a2c68efce92637b0637dd1db38e2fd5683e61901e6447bcf8fca752f7"},{"version":"3781ab2e8f69f8211d1b76142da2f4528b1cb95277031a747da340aebc41b40c","signature":"9cac36fd227125723097775e2700432838e54d9c1530cd45f36653e20513dc61"},{"version":"3d9373f113b17e319484033d8c90257d6d3b02ff64994b2bdf3470129961f4c3","signature":"b461bba9fdefa4860fbbe4ab8d584aba4ff2410d7a940ccd08d797ba62b9b4ad"},{"version":"c61924e5279fe18980383cfc1a82d8da204ced49f8890ff8b76a96f26784cbc7","signature":"1b0dddfa3431d9cf7489393f6eda8c39d64b0ad5006e61b323b41e946de1cb64"},{"version":"06839aae07c9eb684746b4148a05f65aefa5f79a7311deecebe82ebb4a35b22f","signature":"69f943fd9ea150bdae776e0753da4e9e7cb5bcd2c3b357241669cb7b1146a8ef"},{"version":"9b1d4524172ee9d615e612e396637e7c471a2addb29b72b56521daba4a38b377","signature":"19f4c3da100f6ae2baeb548f5334cd238ea8da4a62812afe579f9ecc4fd6b35a"},{"version":"0dcd6d71e953763b9faf89c0c9b2ed96a56011c6ece3f7fd6b06c94ab34b0419","signature":"2f3641dc015c1f0d5a0c6d3425c05cccb6b4a58960014138e988d7ac7e89e95b"},{"version":"bf78b3e7c0de43d8ead5c7fe9c1ebf58f7219b7a0a38bab344d4b22fd41743ef","signature":"c4178d7f38a1a95f9e7763e4ede95a8ff29c134ce9dde7a5532c617489e73e32"},{"version":"c8a8e4bb94f3ce7a540355b8d49fb4ff5a537e8cf5fd937d5b430a8ad2b59c5b","signature":"d76e3643450c47b47c246ddefcaee7210175a5200f96c68c36f22290ae908999"},{"version":"73e654113ed338086b7549141ab127b7646ed7f51f9a559ce8873290a991c8af","signature":"060b73fbb370ddb4d790bca51dd91765129a04d4321f5989bcb5469722ae190c"},{"version":"3f1ba5e7aa065073f6341688b22ebd917991ecc9ddb327e5d0b613606fc55ed0","signature":"6b52835e215f2dea36fbdb96e174c45e91467fb18a57ca02bc4a44ad4bfdd557"},{"version":"e8f8e75c7d83bb81b9fb8e3cf8a7fed915e113a35d2d46fbb121021aaa52eeb1","signature":"b248a2c86a9608ef3f4c5480fda53e28daaa858fdfbfbe9ed31e0e0a0aa83b69"},{"version":"20daec6882e1d9ff1c3871026eeea68972c45a7d46e33e35499027849c959bff","signature":"d38038c1daa64482b31d0ec1fa336d9a47b09e647cf788ceef2fb3e8310bb09f"},{"version":"e84dd27f2c7845aa5afc26cb491566dd4ffb77906ed067bf8b94d1b35591b42c","signature":"c3a6919d157c2437257cfa8eff0d2f60d804630748d55f96360ddc8ce93f15b3"},{"version":"42221ab620b5c643d8acf4ebf0be653237ae703e61d75d080865169dc216b709","signature":"5e5971464c4425f6c6a5bfd8c1b6c144118591a7e1d8178313d44740a3b161fd"},{"version":"73b26e3c7b6eaf55f643c472c43230568ac1bc788fe30a40c90a8c55c32fc4e1","signature":"e81de24f4f00f9548b07e616c9dc22c3a2266807775c56bef9fe46697cc548d1"},{"version":"617bb5ccb64e7d32ee9b1f257e613349414bd811b9a867c5cee310d7cf7b7559","signature":"d8a5707a9f2502bcb4362258f1df33c40256fd5c98fa00dff7c3210a0bb6d0a6"},{"version":"2473eef5cdbb6035fb7c0983edda216231a78e91f501afdb256d4d8497297617","signature":"7e66d9b5e4e3ad7e26f4143447835da4cda365faef0a3892a89c47b2bdf36c86"},{"version":"3a97444a600cf4b4baafe6381add95bc41aa307b9bec159b7425837e06f49244","signature":"f1ad756dfd15039835ab4a1de31f03998aebcf0b9c927a17f33d55bce449bf2a"},{"version":"402c6f70afc7d5df3fdb54e3f664de9ea874af347fe54b814918ae1749b9a957","signature":"088776fa648f7419caaf011b861a29a7b7879f5b0df2bfff046b56f92dcb6ecf"},{"version":"7d6da094cbc76e84428fe4d59076a498c72fe18a28efc07552602b9a059f186c","signature":"5125dcacb1417e6bfaf4ddebbc2c0574f29d8770f0b2f83c478c3a070566342a"},{"version":"fd215c07f5de917879cfef7b20517092933ab9b1c3516164cff05610d5278058","signature":"8fa46771471e73275f627ca29cc6ad4227cbfad15a7a0abcc7027d13867e55ea"},{"version":"818eb059c3a03dfa24edde294c37c893236aae671d48748ab4cd9c81a45ae688","signature":"804023449340bc984ae9c0b204266ff1716e3bef56550eab1a1527600a1302c7"},{"version":"e0f604652be69ca676b9dc90be6ea363a585c5fc71790124963981133404058b","signature":"b7efcc72fc31290211c9bdd3f09ce55f2bc139043a197dc658421b640e416b28"},{"version":"e24ecdde72c55132e9e3e23864ff74bbeea7e60b554b944dbca00b66e94f8fe1","signature":"15b4d80e51b3ea458c75c3a68644a41024f7d83c12f1b37715a53a8a7f0fe9f8"},{"version":"9d23d162b6ddbc219ce2124e805b08aee6589f631e1ec4024bd0067f554bcd0c","signature":"7df0848e1a42b4e997f23f3d432ef1920a6c3b0587d32aedb6ae851f3b1aee2b"},{"version":"24d9d5ecc018888f466fc0cdcc63967f340313ecd666d27112b5a83e1eeea2c9","signature":"5be7ddc8c1edff3bb3925c3d3e2a999a4ca7fdf33906bebce8f8688e5c85034f"},{"version":"6afa90097461b708ef4888e3a057a83d62e766e1d3b944b84e97503cbc5cacad","signature":"218c2533a5deffeb04f929c81888025e7123f780a7d7308614b6d06bf94e5e84"},{"version":"869bacdcebb7d7ace3ad0ba336e8c91f605a0a1ba58517b20f72ea94c9b4e75f","signature":"b5d1c04406f012961931edc572ce53e835d8308178b58ae127624dbfdc63fec3"},{"version":"ca38d768d9ff57c3fedfdaa821f5969863bfdf7efa6530a30caa7312bb454b65","signature":"e9dd5f52c1e6edc780ececd7b176b1ad8ce106f35a9f0fdb67f3c8668522e839"},{"version":"a8162a55b5afe7c01286b34980e6d2f8125bcb1afef666ec4953b7e15ba4f669","signature":"130c15b5ce27ae9f2a5941a07385d593115dae9075ca3f5387e228e32d4fec9f"},{"version":"f1490b44970b5d97db8307cb82b470a09e71cbe673939a4c41b30e66cb8c2c82","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"84f090849fcf05385e3028adb7e0dd317ef90d2d6e2ce5b3014cc227ad959012","signature":"15a84436cf944e1fd426624372ee52fb1f5e46c515bcb778619e821275942b9e"},{"version":"fb396aed0372a9d07b066357137a71cada3c2cdcf63a943bb5cf54693879170f","signature":"8c2494044864da412ce9916eea8a66342b4a947f88b3dd22c175063aca1dddc4"},{"version":"0866f5c3af2d2991560fe573f7770a5de4df9e8661f3422dc3cdf3d07c7ca77b","signature":"29ee4936c7f6c66e5b967bee5e5c062c89cd6a7697ea354be2c6ef79544d2c5a"},{"version":"5d3de1f16098f5f882e7505d5d1eddb2a9463d9dcbe7b03f022d363e3e9b4cc0","signature":"6b001100afde7b8246b0b6aebe74a5c41c6054666bd4dee6e34521706d3b867b"},{"version":"0a51a88972a90a4308abdffb89d7339455145c55b8f371cb4ee92d88548c4dea","signature":"a208a319c19376e0e8d953d58ddee7b2cc8de3be72e110f97c7fbaa23bf1e5b4"},{"version":"f2492c82b866dbbec1cbf905068d3f10395eba9eddfeb93cd68d7999c7c02e94","signature":"709f62b8c98e1db14602e873218cc5d22f81d64cd88f25adb5b4d2705a7e5d5c"},{"version":"5af20831c647d0f95b2ce4c7d66544b36af5f6ea3a0af0c43478a657bf58feff","signature":"284bf56773e6da050a953484eaca4beaceedce83b49be512a527ce88111a9a1a"},{"version":"1e8c51eaab31c7c7ce8590e80b8663f360aed54caf8cdf2643349ef59ae27876","signature":"1a85409fafbd8616120a0a0e65fde663d6ce75fc66a83cdfa2b6553baea53cdc"},{"version":"85d33ba4097c3f24ceeca365379301c327d5291da44e57bbcf301b68621f3708","signature":"33612a1d9e60be6cb57a6cc5e1b364840ab6930b72464f19bb4361bfd68c37a3"},{"version":"39426a077f479e1b77cd46b3b2341d76963fc3f4832143effe966b22cd77b72f","signature":"976a07c70d961e35f4ff28926415b8d479400e46fb667f664ce10339226b2fe8"},{"version":"f7f1e3147bdda813f8f14187c20ee886cd7cc1f1fe2bf61f678727789cf671ac","signature":"5a6534f5d0435656321853f3e16dd4c7f944162ec9af7a99ff9d0142947bf359"},{"version":"900683c32709e025b93cc18be550bbf2a2e5686e0ac5d058f25468062117a5a7","signature":"27909ca3d149c1c6f45b29b6e2ef4b1cbf709bfe6c0c66276d4541f6afc8031d"},{"version":"8628cb8f0ae9525851a3b3ccb07a60b5043699843befe7226fc554ff4139987b","signature":"d5d357f555e6f34eae1b87fa0d2622cd4d243145c705dc6408ceae7f591cfd40"},{"version":"98697dd9eca9863d7490c6fde283f3018798f1f57df1ac4ad754382ac2d25b80","signature":"b546c64e0e45bd8ce4806cc8e541c99c161ea07eedd9259dd3bd33bda8713a36"},{"version":"6bb36f0e8fc014f9bd759d81ef3e5ceac258f359e4ae19e2b856150577b37a18","signature":"a3432be9faf500053701c7c7dd0117c0c23fefe51807ee74829db6507736e463"},{"version":"6dfb3b78da41b3548540f79e75959039b42107d89f168fc12094d86fdbc6a21b","signature":"6cb10423acf5726011131bf6e79754dc18b412ec8f335a09d1de6045bfd443fe"},{"version":"a5e79bb8f19b20dbe0c68bd79b290a2b444c6b545cfb78d31f963c8e250df9a2","signature":"80a3bbe0e4fdfaac2c0a8b92a3ed66d3ded5e8f454c5790c8d593872fc1197f1"},{"version":"4cce334e4debece9a8fe9e1731582299a42207058c7db50729d63fcff8189a22","signature":"043b2a84437ceee41987ecf59ccc88c502430359ca7409da82ebf77a8af59e70"},{"version":"09eca3ede06fd964fbc9b611200a85e0095a62a67ac473b8bd8969421e4314ac","signature":"ba9da035a3894eadb8a2c45f8ed91994ff56124e47b3e830bc27102edf619eb0"},{"version":"56d9ac804157926d6ceda4dd4c93e23c90ad7f81dd3f7614a43583f835df4507","signature":"38871433314c5aede5ab826b99eb496befb9a5e16fdf0c7c185f963ea76fcac8"},{"version":"9f1a98de72fe3c00171db4a8470143cd5da2609cec08f3a0c21073c3ec791077","signature":"5ef4059db4d4ac518e838c27b560782f3dc39458004a782ac0a9df9f7ed9fde1"},{"version":"0b500f7ba9b8572cabcfffb8db35b1bf475ff9c6c414cb546c502a2f39546c10","signature":"d248a78d5e4bea035815dd54f943fedfc69fd7e6c55d6fe5af957c20f147fb0a"},{"version":"a3702eb08896a20432aa995551eef2fffe5848e86a8837eb6afdbcc024bd5638","signature":"d248a78d5e4bea035815dd54f943fedfc69fd7e6c55d6fe5af957c20f147fb0a"},{"version":"040d8c0ada323eee6b977521ab98ff178cfbcf16b14b6f530b84e2266790db95","signature":"ef57cd44fa3739900a7916419d787a43520a15b23ed25043c828b812d4d2846e"},{"version":"716342c8bf542aa2de88d53224429b2ca4c266482e5f35bc8fe1ad27c47d5633","signature":"99f8cd656806c513d5308d8cf6abfd50d0ace6e9985b6f5babc36f5cb44211c6"},{"version":"41fff361e41fdcd5a4a7b69eab444940dbefb8a4ab206a51b87391eb79916957","signature":"9ac56e2af0dc7c8a14b4a3accd9e41553c15931bfbda0bb14e9e3f7404e33934"},{"version":"eba5d33b7cb69136af29deabe39856b17b1bce74416aeb1db10790cf9b32164b","signature":"d248a78d5e4bea035815dd54f943fedfc69fd7e6c55d6fe5af957c20f147fb0a"},{"version":"e495764208edda0600cb50a50b62f765eb706a6b9db44166dbb6d54c8f9eee45","signature":"b4d58ec0ee5953e935eb7446d08db5c22021be7621c4c3945c132c300a07116a"},{"version":"d471825ec8e3497ec5ade143b603b730d40367341e254a910cdde66cae4fe858","signature":"8b93142525a231ca64d023448ce684dde544b96bc61f095adf81151c70c9ea2a"},{"version":"99634043114e2040cf81b4fb485a7d46d9f0715e51266e1f3938bd53a82b4355","signature":"50985f52f3622f46df590402401a3f65416888995b32d00bd5258de83267dd97"},{"version":"af70162c9b4094b616bebde3e7b043ea144e22734d904af960fffa1547e9a1fe","signature":"fd5c58124257d0bbfbdc08eaa996512bde82dfc89a410a48dfca005579b1aa1a"},{"version":"d05624ba4ce7a30321cc1f68fb8ac971bbb6f403e68447e59fe94af4ab1fb078","signature":"58fdb8e8e3d81cead1a2ac6d74f15cf6281c836e913a791a2bcbad062ea8a0f7"},{"version":"a4c2de4f4a070712ac89e5b02f12c3cc00b2931dc9afea8e3ca965ad1c795870","signature":"50985f52f3622f46df590402401a3f65416888995b32d00bd5258de83267dd97"},{"version":"f6cf6697ebd661c50c8396fbc17aaf8836e8a6ebc81b9cad4d0f4c8e62578a93","signature":"58fdb8e8e3d81cead1a2ac6d74f15cf6281c836e913a791a2bcbad062ea8a0f7"},{"version":"763cadc5f499728f996618011a9dd6e6357f9b874c4c5585415296b53411f4d3","signature":"50985f52f3622f46df590402401a3f65416888995b32d00bd5258de83267dd97"},{"version":"91b54b61a9c044294b627cdafd79ee3fc7062de8b1e462643566fe373fe76dd5","signature":"50985f52f3622f46df590402401a3f65416888995b32d00bd5258de83267dd97"},"2db0dd3aaa2ed285950273ce96ae8a450b45423aa9da2d10e194570f1233fa6b","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","8e9c23ba78aabc2e0a27033f18737a6df754067731e69dc5f52823957d60a4b6","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"e7be367719c613d580d4b27fdf8fe64c9736f48217f4b322c0d63b2971460918","affectsGlobalScope":true},"3d77c73be94570813f8cadd1f05ebc3dc5e2e4fdefe4d340ca20cd018724ee36",{"version":"392eadc2af403dd10b4debfbc655c089a7fa6a9750caeb770cfb30051e55e848","affectsGlobalScope":true},"62f1c00d3d246e0e3cf0224f91e122d560428ec1ccc36bb51d4574a84f1dbad0","53f0960fdcc53d097918adfd8861ffbe0db989c56ffc16c052197bf115da5ed6",{"version":"662163e5327f260b23ca0a1a1ad8a74078aabb587c904fcb5ef518986987eaff","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"c48c503c6b3f63baf18257e9a87559b5602a4e960107c762586d2a6a62b64a18","affectsGlobalScope":true},"b0c0d1d13be149f790a75b381b413490f98558649428bb916fd2d71a3f47a134","3c884d9d9ec454bdf0d5a0b8465bf8297d2caa4d853851d92cc417ac6f30b969","0364f8bb461d6e84252412d4e5590feda4eb582f77d47f7a024a7a9ff105dfdc","5433f7f77cd1fd53f45bd82445a4e437b2f6a72a32070e907530a4fea56c30c8","d0ca5d7df114035258a9d01165be309371fcccf0cccd9d57b1453204686d1ed0",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9a30b7fefd7f8abbca4828d481c61c18e40fe5ff107e113b1c1fcd2c8dcf2743","affectsGlobalScope":true},"173b6275a81ebdb283b180654890f46516c21199734fed01a773b1c168b8c45c","304f66274aa8119e8d65a49b1cff84cbf803def6afe1b2cc987386e9a9890e22","1b9adafe8a7fefaeaf9099a0e06f602903f6268438147b843a33a5233ac71745","98273274f2dbb79b0b2009b20f74eca4a7146a3447c912d580cd5d2d94a7ae30","c933f7ba4b201c98b14275fd11a14abb950178afd2074703250fe3654fc10cd2","2eaa31492906bc8525aff3c3ec2236e22d90b0dfeee77089f196cd0adf0b3e3b",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"8f5814f29dbaf8bacd1764aebdf1c8a6eb86381f6a188ddbac0fcbaab855ce52","a63d03de72adfb91777784015bd3b4125abd2f5ef867fc5a13920b5649e8f52b","d20e003f3d518a7c1f749dbe27c6ab5e3be7b3c905a48361b04a9557de4a6900",{"version":"1d4d78c8b23c9ddaaaa49485e6adc2ec01086dfe5d8d4d36ca4cdc98d2f7e74a","affectsGlobalScope":true},{"version":"44fc16356b81c0463cc7d7b2b35dcf324d8144136f5bc5ce73ced86f2b3475b5","affectsGlobalScope":true},"575fb200043b11b464db8e42cc64379c5fd322b6d787638e005b5ee98a64486d","6de2f225d942562733e231a695534b30039bdf1875b377bb7255881f0df8ede8","56249fd3ef1f6b90888e606f4ea648c43978ef43a7263aafad64f8d83cd3b8aa","139ad1dc93a503da85b7a0d5f615bddbae61ad796bc68fedd049150db67a1e26","7b166975fdbd3b37afb64707b98bca88e46577bbc6c59871f9383a7df2daacd1","9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","81505c54d7cad0009352eaa21bd923ab7cdee7ec3405357a54d9a5da033a2084","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","3c1f19c7abcda6b3a4cf9438a15c7307a080bd3b51dfd56b198d9f86baf19447","2ee1645e0df9d84467cfe1d67b0ad3003c2f387de55874d565094464ee6f2927",{"version":"7da97d603bf3dd0000f56467c56cb6efaf5f94692980474925fae6c33412b12a","affectsGlobalScope":true},{"version":"9cf780e96b687e4bdfd1907ed26a688c18b89797490a00598fa8b8ab683335dd","affectsGlobalScope":true},"98e00f3613402504bc2a2c9a621800ab48e0a463d1eed062208a4ae98ad8f84c","9ae88ce9f73446c24b2d2452e993b676da1b31fca5ceb7276e7f36279f693ed1","e49d7625faff2a7842e4e7b9b197f972633fca685afcf6b4403400c97d087c36","b82c38abc53922b1b3670c3af6f333c21b735722a8f156e7d357a2da7c53a0a0",{"version":"b423f53647708043299ded4daa68d95c967a2ac30aa1437adc4442129d7d0a6c","affectsGlobalScope":true},{"version":"7245af181218216bacb01fbdf51095617a51661f20d77178c69a377e16fb69ed","affectsGlobalScope":true},"4f0fc7b7f54422bd97cfaf558ddb4bca86893839367b746a8f86b60ac7619673","4cdd8b6b51599180a387cc7c1c50f49eca5ce06595d781638fd0216520d98246","d91a7d8b5655c42986f1bdfe2105c4408f472831c8f20cf11a8c3345b6b56c8c",{"version":"8704423bf338bff381ebc951ed819935d0252d90cd6de7dffe5b0a5debb65d07","affectsGlobalScope":true},"7c6929fd7cbf38499b6a600b91c3b603d1d78395046dc3499b2b92d01418b94b",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc",{"version":"90ebf5865e27d8966ef44b073e6e83b0ddd45058bab1d58b1e4b5a47d36396c4","affectsGlobalScope":true}],"root":[[69,71],[102,105],114,138,[155,161],[174,177],187,[189,195],[200,214],[222,239],[324,416]],"options":{"allowJs":true,"allowSyntheticDefaultImports":true,"declaration":true,"esModuleInterop":true,"experimentalDecorators":true,"importHelpers":true,"inlineSources":true,"module":99,"noEmitOnError":true,"outDir":"./","rootDir":"..","sourceMap":true,"strict":true,"target":5,"useDefineForClassFields":false},"fileIdsList":[[249,250],[58],[54,58],[54,58,66],[60],[52,53],[57,130],[51,57,123,125,126,127,128],[51,120,129],[51,129],[57,132],[57,316],[57,314],[51,57,312],[57,123,125,311],[51,57,120,313],[51,312],[57,119],[51,57],[57,121],[57,122],[57,72],[57],[57,127],[57,126],[51,57,121],[57,124],[256,263],[263],[256,263,293,294],[285,287],[293],[263,272,292],[288],[263,264,265,266,280,285,287,289,290],[264,265],[285,287,290,297],[285,287,290,295],[268],[258,285],[259,261,263,267,271,273,274,275,276,277,278,279,280,281,282,283,284],[258,286],[260,261,262],[267,273,274],[267,273,274,275,276,278,279],[258,267,268,269,270,273,274,275,276,278],[267,280],[259,267],[267,273,277],[267,272,273],[258,267,271,272,273,274,275],[258,267],[258],[257,259],[261],[258,259,261],[268,269],[153],[141,143,144,145,146,147,148,149,150,151,152,153],[141,142,144,145,146,147,148,149,150,151,152,153],[142,143,144,145,146,147,148,149,150,151,152,153],[141,142,143,145,146,147,148,149,150,151,152,153],[141,142,143,144,146,147,148,149,150,151,152,153],[141,142,143,144,145,147,148,149,150,151,152,153],[141,142,143,144,145,146,148,149,150,151,152,153],[141,142,143,144,145,146,147,149,150,151,152,153],[141,142,143,144,145,146,147,148,150,151,152,153],[141,142,143,144,145,146,147,148,149,151,152,153],[141,142,143,144,145,146,147,148,149,150,152,153],[141,142,143,144,145,146,147,148,149,150,151,153],[141,142,143,144,145,146,147,148,149,150,151,152],[417],[453],[454,459,488],[455,460,466,467,474,485,496],[455,456,466,474],[457,497],[458,459,467,475],[459,485,493],[460,462,466,474],[453,461],[462,463],[466],[464,466],[453,466],[466,467,468,485,496],[466,467,468,481,485,488],[451,454,501],[462,466,469,474,485,496],[466,467,469,470,474,485,493,496],[469,471,485,493,496],[417,418,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503],[466,472],[473,496,501],[462,466,474,485],[475],[476],[453,477],[474,475,478,495,501],[479],[480],[466,481,482],[481,483,497,499],[454,466,485,486,487,488],[454,485,487],[485,486],[488],[489],[453,485],[466,491,492],[491,492],[459,474,485,493],[494],[474,495],[454,469,480,496],[459,497],[485,498],[473,499],[500],[454,459,466,468,477,485,496,499,501],[485,502],[48],[178,179,180],[178],[178,179],[196,197],[51,54],[50,51],[51],[50,51,162],[49,50],[59,60,61,62,63,64,65,66,67],[310],[139],[163],[51,54,55,56],[428,432,496],[428,485,496],[423],[425,428,493,496],[474,493],[504],[423,504],[425,428,474,496],[420,421,424,427,454,466,485,496],[420,426],[424,428,454,488,496,504],[454,504],[444,454,504],[422,423,504],[428],[422,423,424,425,426,427,428,429,430,432,433,434,435,436,437,438,439,440,441,442,443,445,446,447,448,449,450],[428,435,436],[426,428,436,437],[427],[420,423,428],[428,432,436,437],[432],[426,428,431,496],[420,425,426,428,432,435],[454,485],[423,428,444,454,501,504],[172],[47,396],[47,379],[47,222,328,334,344,361,379,396],[47,362,363,364,365,366,367,379],[47,222,344,379],[47],[47,57,68,69,379],[47,57,68,71,73,137,379],[47,57,68,73,138,211,377,379],[47,70,71,377],[47,57,68,69,70,71,73,194,373,374,375,376,379],[47,57,68,69,186,379],[47,57],[47,57,68,69,101,102,140,187,188,194,201,202,203,204,205,206,207,208,379],[47,57,68,69,101,379],[47,57,68,69,73,101,379],[47,57,68,69,73,101,115,137,140,154,155,176,379],[47,57,68,113,138,165,177,201,209,210,211,379],[47,102,209],[47,209],[47,57,68,69,101,113,171,201,212,213,214,215,216,218,221,368,369,370,379],[47,57,68,73,193,211,379],[47,189,190,193],[47,57,68,69,73,189,190,191,192,194,373,379],[47,69,369,379],[47,57,68,69,113,181,221,362,368,369,370,379,386],[47,57,68,69,345,379,381,382,383,384],[47,57,68,69,113,379,380,385],[47,57,68,69,154,201,379],[47,345,385],[47,385],[47,223,230,327],[47,57,68,223],[47,57,68,116,223],[47,57,68,101,223],[47,57,68,164,223,379],[47,57,68,223,324],[47,57,68,69,102,173,379],[47,57,68,140,323,379],[47,102,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,325,326,379],[47,57,68,73],[47,51,379],[47,57,164,174,177,379],[47,57,68,116,155,165,171,173,176,371,379],[47,156,158,159,160,161,174,175,176],[47,156,157,158,159,160,161,175,379],[47,391],[47,222,388,389,390],[47,57,73,379],[47,57,68,73,379],[47,57,212,213,214,379],[47,212,213,214,379],[47,333],[47,329,330,331,332,379],[47,57,102,137,379],[47,343],[47,102,379],[47,335,336,337,338,339,340,341,342,379],[47,69,200,328,334,344,361,371,373,378,379,387,392,393,395],[47,394],[47,57,68,133,137,174,186,379],[47,57,68,133,137,186,323,371,379],[47,102,105],[47,105],[47,114,372],[47,57,68,73,114,137,371,379],[47,57,68,69,73,102,103,104,379],[47,102,114,193,209,377,379],[47,57,68,69,73,102,105,113,379],[47,346,347,348,349,350,351,352,353,354,355,356,357,360],[47,57,379],[47,57,198,379],[47,57,68,354],[47,57,164,379],[47,57,101,379],[47,57,68,140,354],[47,57,68,69,102,379],[47,70,71,102,189,190,193,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,377,379],[47,57,68,371,379],[47,51,70,71,102,189,190,193,328,345,354,377,378],[47,195,200],[47,198,199,379],[47,57,73,113,116,165,174,372,379,393,396],[47,57,73,113,116,165,174,379,393,396],[47,57,73,101,102,113,116,165,174,379,393,396],[47,57,73,113,116,137,165,174,372,379,393,396],[47,57,73,101,113,116,137,165,174,372,379,393,394,396,399],[217],[181],[182,183,184,185],[57,181],[240,241,242,243,244,245,246,247,248,252,253,254,255,299,300,301,302,303,304,305,306,307,308,309,318,319,320,321,322],[51,57,240],[51,57,240,244],[51,57,115,240],[57,240,251],[51,57,184,240,255,291,296,298],[51,57,240,253],[51,57,73,240],[51,57,73,240,253],[51,57,240,315,317],[73,184,253,291,298],[51,57,73,116,240,242],[166,167,168,169,170],[166],[115,116,117,118,134,136],[57,135],[51,57,73],[51,57,73,115],[51,57,115],[51,57,117],[51,57,73,131,133],[220],[219],[106,107,108,109,110,111,112],[74,75,76,77,78,79,80,81,82,83,84,85,88,89,90,91,92,93,94,95,96,97,98,100],[99],[86,87],[87],[86]],"referencedMap":[[251,1],[59,2],[62,3],[60,3],[64,3],[67,4],[66,3],[65,3],[63,3],[61,5],[54,6],[131,7],[129,8],[130,9],[132,10],[133,11],[317,12],[315,13],[316,14],[312,15],[314,16],[313,17],[120,18],[119,19],[122,20],[123,21],[73,22],[72,19],[121,23],[128,24],[127,25],[124,26],[125,27],[165,23],[264,28],[265,29],[295,30],[288,31],[294,32],[293,33],[289,34],[291,35],[297,36],[298,37],[296,38],[269,39],[286,40],[285,41],[287,42],[263,43],[282,44],[284,45],[279,46],[281,47],[273,48],[278,49],[274,50],[276,51],[275,52],[259,53],[261,53],[260,54],[262,55],[280,56],[270,57],[277,53],[188,58],[215,58],[216,58],[199,58],[154,58],[142,59],[143,60],[141,61],[144,62],[145,63],[146,64],[147,65],[148,66],[149,67],[150,68],[151,69],[152,70],[153,71],[417,72],[418,72],[453,73],[454,74],[455,75],[456,76],[457,77],[458,78],[459,79],[460,80],[461,81],[462,82],[463,82],[465,83],[464,84],[466,85],[467,86],[468,87],[452,88],[469,89],[470,90],[471,91],[504,92],[472,93],[473,94],[474,95],[475,96],[476,97],[477,98],[478,99],[479,100],[480,101],[481,102],[482,102],[483,103],[485,104],[487,105],[486,106],[488,107],[489,108],[490,109],[491,110],[492,111],[493,112],[494,113],[495,114],[496,115],[497,116],[498,117],[499,118],[500,119],[501,120],[502,121],[49,122],[181,123],[179,124],[180,125],[198,126],[55,127],[162,128],[50,129],[310,128],[139,129],[163,130],[51,131],[68,132],[311,133],[140,134],[164,135],[57,136],[435,137],[442,138],[434,137],[449,139],[426,140],[425,141],[448,142],[443,143],[446,144],[428,145],[427,146],[423,147],[422,148],[445,149],[424,150],[429,151],[433,151],[451,152],[450,151],[437,153],[438,154],[440,155],[436,156],[439,157],[444,142],[431,158],[432,159],[441,160],[421,161],[447,162],[173,163],[397,164],[208,165],[362,166],[368,167],[367,165],[363,165],[364,165],[366,168],[365,165],[69,165],[222,169],[70,170],[374,171],[71,170],[214,172],[375,173],[376,173],[377,174],[369,165],[187,175],[202,176],[209,177],[102,178],[210,179],[177,180],[212,181],[203,182],[206,182],[204,182],[205,183],[207,183],[371,184],[190,170],[189,170],[213,185],[191,186],[192,186],[398,186],[193,187],[211,170],[370,188],[387,189],[381,176],[385,190],[386,191],[345,170],[380,192],[382,193],[383,193],[384,194],[328,195],[224,196],[225,196],[226,196],[227,196],[228,196],[229,196],[230,196],[231,196],[232,197],[233,198],[234,196],[235,199],[236,196],[237,196],[238,196],[239,196],[325,200],[326,196],[223,201],[324,202],[327,203],[138,204],[156,205],[157,205],[158,205],[159,205],[160,205],[161,205],[175,206],[155,176],[174,207],[378,208],[176,209],[388,169],[392,210],[389,169],[391,211],[390,169],[329,212],[330,213],[331,214],[332,215],[334,216],[333,217],[335,218],[344,219],[336,220],[337,220],[338,220],[339,220],[340,220],[343,221],[342,220],[341,220],[396,222],[395,223],[399,224],[394,225],[103,226],[104,227],[373,228],[372,229],[105,230],[194,231],[114,232],[361,233],[346,234],[347,234],[348,234],[349,234],[350,234],[351,235],[352,234],[353,234],[355,236],[356,237],[357,238],[358,234],[359,239],[354,240],[360,241],[393,242],[379,243],[201,244],[200,245],[195,169],[400,246],[401,247],[402,248],[403,248],[404,246],[405,247],[406,247],[407,247],[408,247],[409,247],[410,249],[411,250],[412,249],[413,249],[414,246],[415,246],[416,246],[218,251],[182,252],[186,253],[183,254],[185,19],[184,19],[323,255],[241,256],[242,256],[240,23],[246,256],[245,257],[244,256],[248,258],[252,259],[299,260],[255,261],[253,256],[306,256],[320,262],[308,256],[300,262],[301,262],[254,263],[307,262],[309,256],[305,256],[322,262],[318,264],[247,256],[321,262],[304,265],[319,256],[303,261],[302,261],[243,266],[171,267],[170,19],[169,19],[167,268],[137,269],[136,270],[135,271],[116,272],[117,273],[118,274],[115,19],[134,275],[221,276],[219,19],[220,277],[111,23],[110,23],[112,23],[106,23],[113,278],[107,23],[108,23],[101,279],[100,280],[99,23],[88,281],[86,282],[87,283]]},"version":"5.5.3"}
|
1
|
+
{"program":{"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/tslib/tslib.d.ts","../../../node_modules/@types/trusted-types/lib/index.d.ts","../../../node_modules/@types/trusted-types/index.d.ts","../../../node_modules/lit-html/directive.d.ts","../../../node_modules/lit-html/lit-html.d.ts","../../../node_modules/@lit/reactive-element/css-tag.d.ts","../../../node_modules/@lit/reactive-element/reactive-controller.d.ts","../../../node_modules/@lit/reactive-element/reactive-element.d.ts","../../../node_modules/lit-element/lit-element.d.ts","../../../node_modules/lit-html/is-server.d.ts","../../../node_modules/lit/index.d.ts","../../../node_modules/@lit/reactive-element/decorators/base.d.ts","../../../node_modules/@lit/reactive-element/decorators/custom-element.d.ts","../../../node_modules/@lit/reactive-element/decorators/property.d.ts","../../../node_modules/@lit/reactive-element/decorators/state.d.ts","../../../node_modules/@lit/reactive-element/decorators/event-options.d.ts","../../../node_modules/@lit/reactive-element/decorators/query.d.ts","../../../node_modules/@lit/reactive-element/decorators/query-all.d.ts","../../../node_modules/@lit/reactive-element/decorators/query-async.d.ts","../../../node_modules/@lit/reactive-element/decorators/query-assigned-nodes.d.ts","../../../node_modules/@lit/reactive-element/decorators/query-assigned-elements.d.ts","../../../node_modules/lit/decorators.d.ts","../src/configure/zero-config.ts","../src/data-card/data-card-field.ts","../src/data-card/data-card-gutter.ts","../../../node_modules/@material/web/icon/internal/icon.d.ts","../../../node_modules/@material/web/icon/icon.d.ts","../../utils/dist/src/sleep.d.ts","../../utils/dist/src/async-lock.d.ts","../../utils/dist/src/file-drop-helper.d.ts","../../utils/dist/src/context-path.d.ts","../../utils/dist/src/os.d.ts","../../utils/dist/src/swipe-listener.d.ts","../../utils/dist/src/fullscreen.d.ts","../../utils/dist/src/parse-jwt.d.ts","../../utils/dist/src/password-pattern.d.ts","../../utils/dist/src/closest-element.d.ts","../../utils/dist/src/detect-overflow.d.ts","../../utils/dist/src/has-overflow.d.ts","../../utils/dist/src/timecapsule/snapshot-taker.d.ts","../../utils/dist/src/timecapsule/timecapsule.d.ts","../../utils/dist/src/timecapsule/index.d.ts","../../utils/dist/src/clipboard.d.ts","../../utils/dist/src/format.d.ts","../../utils/dist/src/adjust-list-param.d.ts","../../utils/dist/src/is-unvalued.d.ts","../../utils/dist/src/stringify-bignum.d.ts","../../utils/dist/src/encode-form-params.d.ts","../../utils/dist/src/cookie.d.ts","../../utils/dist/src/number-parser.d.ts","../../utils/dist/src/longpressable.d.ts","../../utils/dist/src/decode-html.d.ts","../../utils/dist/src/reactive-controllers/tooltip-reactive-controller.d.ts","../../utils/dist/src/reactive-controllers/index.d.ts","../../utils/dist/src/index.d.ts","../src/data-grid/data-grid-field.ts","../src/record-view/event-handlers/record-view-body-click-handler.ts","../src/record-view/event-handlers/record-view-body-keydown-handler.ts","../src/record-view/record-view-body.ts","../../styles/dist/src/headroom-styles.d.ts","../../styles/dist/src/scrollbar-styles.d.ts","../../styles/dist/src/spinner-styles.d.ts","../../styles/dist/src/common-button-styles.d.ts","../../styles/dist/src/common-grist-styles.d.ts","../../styles/dist/src/button-container-styles.d.ts","../../styles/dist/src/common-header-styles.d.ts","../../styles/dist/src/index.d.ts","../src/record-view/record-view.ts","../../popup/dist/src/ox-popup.d.ts","../../popup/dist/src/ox-popup-list.d.ts","../../popup/dist/src/ox-popup-menu.d.ts","../../popup/dist/src/ox-popup-menuitem.d.ts","../../../node_modules/@material/web/elevation/internal/elevation.d.ts","../../../node_modules/@material/web/elevation/elevation.d.ts","../../../node_modules/@material/web/internal/controller/attachable-controller.d.ts","../../../node_modules/@material/web/focus/internal/focus-ring.d.ts","../../../node_modules/@material/web/focus/md-focus-ring.d.ts","../../../node_modules/@material/web/ripple/internal/ripple.d.ts","../../../node_modules/@material/web/ripple/ripple.d.ts","../../../node_modules/@material/web/labs/behaviors/mixin.d.ts","../../../node_modules/@material/web/labs/behaviors/element-internals.d.ts","../../../node_modules/@material/web/internal/controller/form-submitter.d.ts","../../../node_modules/@material/web/button/internal/button.d.ts","../../../node_modules/@material/web/button/internal/filled-button.d.ts","../../../node_modules/@material/web/button/filled-button.d.ts","../../../node_modules/@material/web/button/internal/outlined-button.d.ts","../../../node_modules/@material/web/button/outlined-button.d.ts","../../popup/dist/src/ox-prompt.d.ts","../../popup/dist/src/ox-floating-overlay.d.ts","../../popup/dist/src/open-popup.d.ts","../../popup/dist/src/index.d.ts","../src/empty-note.ts","../../../node_modules/lit-html/directives/if-defined.d.ts","../../../node_modules/lit/directives/if-defined.d.ts","../../../node_modules/@types/lodash/common/common.d.ts","../../../node_modules/@types/lodash/common/array.d.ts","../../../node_modules/@types/lodash/common/collection.d.ts","../../../node_modules/@types/lodash/common/date.d.ts","../../../node_modules/@types/lodash/common/function.d.ts","../../../node_modules/@types/lodash/common/lang.d.ts","../../../node_modules/@types/lodash/common/math.d.ts","../../../node_modules/@types/lodash/common/number.d.ts","../../../node_modules/@types/lodash/common/object.d.ts","../../../node_modules/@types/lodash/common/seq.d.ts","../../../node_modules/@types/lodash/common/string.d.ts","../../../node_modules/@types/lodash/common/util.d.ts","../../../node_modules/@types/lodash/index.d.ts","../../../node_modules/@types/lodash-es/throttle.d.ts","../src/filters/filter-styles.ts","../src/filters/filter-checkbox.ts","../src/filters/filter-input-barcode.ts","../src/filters/filter-input.ts","../src/filters/filter-range-date.ts","../src/filters/filter-range-number.ts","../src/filters/filter-select-buttons.ts","../../../node_modules/lit-html/async-directive.d.ts","../../../node_modules/lit-html/directives/until.d.ts","../../../node_modules/lit/directives/until.d.ts","../../../node_modules/@material/web/typography/md-typescale-styles.d.ts","../../p13n/dist/src/types.d.ts","../../p13n/dist/src/p13n-mixin.d.ts","../../p13n/dist/src/ox-user-preferences-context.d.ts","../../p13n/dist/src/ox-user-preferences-provider.d.ts","../../p13n/dist/src/ox-user-preferences-consumer.d.ts","../../p13n/dist/src/index.d.ts","../../../packages/time-calculator/dist/src/registry.d.ts","../../../packages/time-calculator/dist/src/index.d.ts","../src/filters/filters-form.ts","../src/filters/filter-select.ts","../src/filters/registry.ts","../src/data-grid/data-grid-header.ts","../../../node_modules/i18next/typescript/helpers.d.ts","../../../node_modules/i18next/typescript/options.d.ts","../../../node_modules/i18next/typescript/t.d.ts","../../../node_modules/i18next/index.d.ts","../../i18n/dist/src/config.d.ts","../../i18n/dist/src/localize.d.ts","../../i18n/dist/src/ox-i18n.d.ts","../../i18n/dist/src/ox-i18n-selector.d.ts","../../i18n/dist/src/index.d.ts","../src/data-grid/data-grid-accum-field.ts","../../../node_modules/@types/lodash-es/debounce.d.ts","../src/data-list/data-list-gutter.ts","../src/data-list/data-list-field.ts","../src/data-list/event-handlers/record-partial-click-handler.ts","../src/data-list/event-handlers/record-partial-dblclick-handler.ts","../src/data-list/record-partial.ts","../src/record-view/record-view-handler.ts","../src/utils/supports-passive.ts","../../../node_modules/json5/lib/parse.d.ts","../../../node_modules/json5/lib/stringify.d.ts","../../../node_modules/json5/lib/index.d.ts","../../../node_modules/@types/lodash-es/pickby.d.ts","../src/utils/list-param.ts","../src/utils/index.ts","../src/data-grid/data-grid-body-style.ts","../src/data-grid/event-handlers/data-grid-body-click-handler.ts","../src/data-grid/event-handlers/data-grid-body-dblclick-handler.ts","../src/data-grid/event-handlers/data-grid-body-focus-change-handler.ts","../src/data-grid/event-handlers/data-grid-body-contextmenu-handler.ts","../src/data-grid/event-handlers/data-grid-body-keydown-handler.ts","../src/accumulator/accumulator.ts","../src/data-grid/data-grid-body.ts","../src/data-grid/data-grid-footer.ts","../src/data-manipulator.ts","../src/data-grid/data-grid.ts","../src/data-list/data-list.ts","../src/data-card/data-card.ts","../../../node_modules/@types/lodash-es/isempty.d.ts","../../../node_modules/@types/lodash-es/isequal.d.ts","../../headroom/dist/src/headroom.d.ts","../../headroom/dist/src/index.d.ts","../../pull-to-refresh/dist/src/pull-to-refresh-control.d.ts","../../pull-to-refresh/dist/src/pull-to-refresh.d.ts","../../pull-to-refresh/dist/src/index.d.ts","../src/const.ts","../src/editors/ox-grist-editor.ts","../src/editors/ox-grist-editor-checkbox.ts","../src/editors/ox-grist-editor-color.ts","../src/editors/ox-grist-editor-date.ts","../src/editors/ox-grist-editor-datetime.ts","../src/editors/ox-grist-editor-email.ts","../src/editors/ox-grist-editor-file.ts","../src/editors/ox-grist-editor-image.ts","../src/editors/ox-grist-editor-month.ts","../src/editors/ox-grist-editor-multiple-select.ts","../src/editors/ox-grist-editor-number.ts","../src/editors/ox-grist-editor-password.ts","../src/editors/ox-grist-editor-select.ts","../src/editors/ox-grist-editor-tel.ts","../src/editors/ox-grist-editor-text.ts","../src/editors/ox-grist-editor-textarea.ts","../src/editors/ox-grist-editor-time.ts","../../input/dist/src/ox-form-field.d.ts","../../input/dist/src/ox-buttons-radio.d.ts","../../input/dist/src/ox-checkbox.d.ts","../../input/dist/src/ox-select.d.ts","../../input/dist/src/ox-input-angle.d.ts","../../input/dist/src/ox-input-3dish.d.ts","../../input/dist/src/ox-input-3axis.d.ts","../../input/dist/src/ox-input-stack.d.ts","../../input/dist/src/ox-input-barcode.d.ts","../../../node_modules/@codemirror/state/dist/index.d.ts","../../../node_modules/style-mod/src/style-mod.d.ts","../../../node_modules/@codemirror/view/dist/index.d.ts","../../input/dist/src/ox-input-code.d.ts","../../input/dist/src/ox-input-color.d.ts","../../input/dist/src/ox-input-multiple-colors.d.ts","../../input/dist/src/ox-input-color-stops.d.ts","../../../node_modules/@polymer/iron-a11y-keys-behavior/iron-a11y-keys-behavior.d.ts","../../../node_modules/@polymer/polymer/lib/utils/array-splice.d.ts","../../../node_modules/@polymer/polymer/interfaces.d.ts","../../../node_modules/@polymer/polymer/lib/utils/async.d.ts","../../../node_modules/@polymer/polymer/lib/utils/flattened-nodes-observer.d.ts","../../../node_modules/@polymer/polymer/lib/utils/debounce.d.ts","../../../node_modules/@polymer/polymer/lib/utils/flush.d.ts","../../../node_modules/@polymer/polymer/lib/legacy/polymer.dom.d.ts","../../../node_modules/@polymer/iron-behaviors/iron-button-state.d.ts","../../../node_modules/@polymer/iron-behaviors/iron-control-state.d.ts","../../../node_modules/@polymer/iron-form-element-behavior/iron-form-element-behavior.d.ts","../../../node_modules/@polymer/polymer/lib/utils/mixin.d.ts","../../../node_modules/@polymer/polymer/lib/utils/resolve-url.d.ts","../../../node_modules/@polymer/polymer/lib/elements/dom-module.d.ts","../../../node_modules/@polymer/polymer/lib/utils/style-gather.d.ts","../../../node_modules/@polymer/polymer/lib/utils/path.d.ts","../../../node_modules/@polymer/polymer/lib/utils/case-map.d.ts","../../../node_modules/@polymer/polymer/lib/mixins/properties-changed.d.ts","../../../node_modules/@polymer/polymer/lib/mixins/property-accessors.d.ts","../../../node_modules/@polymer/polymer/lib/mixins/template-stamp.d.ts","../../../node_modules/@polymer/polymer/lib/mixins/property-effects.d.ts","../../../node_modules/@polymer/polymer/lib/utils/telemetry.d.ts","../../../node_modules/@polymer/polymer/lib/mixins/properties-mixin.d.ts","../../../node_modules/@polymer/polymer/lib/mixins/element-mixin.d.ts","../../../node_modules/@polymer/polymer/lib/utils/gestures.d.ts","../../../node_modules/@polymer/polymer/lib/mixins/gesture-event-listeners.d.ts","../../../node_modules/@polymer/polymer/lib/mixins/dir-mixin.d.ts","../../../node_modules/@polymer/polymer/lib/utils/scope-subtree.d.ts","../../../node_modules/@polymer/polymer/lib/mixins/disable-upgrade-mixin.d.ts","../../../node_modules/@polymer/polymer/lib/legacy/legacy-element-mixin.d.ts","../../../node_modules/@polymer/polymer/lib/legacy/class.d.ts","../../../node_modules/@polymer/polymer/lib/legacy/polymer-fn.d.ts","../../../node_modules/@polymer/iron-meta/iron-meta.d.ts","../../../node_modules/@polymer/iron-validatable-behavior/iron-validatable-behavior.d.ts","../../../node_modules/@polymer/polymer/lib/utils/html-tag.d.ts","../../../node_modules/@polymer/paper-dropdown-menu/paper-dropdown-menu.d.ts","../../../node_modules/@polymer/iron-selector/iron-selection.d.ts","../../../node_modules/@polymer/iron-selector/iron-selectable.d.ts","../../../node_modules/@polymer/iron-selector/iron-multi-selectable.d.ts","../../../node_modules/@polymer/iron-menu-behavior/iron-menu-behavior.d.ts","../../../node_modules/@polymer/paper-listbox/paper-listbox.d.ts","../../../node_modules/@polymer/paper-item/paper-item-behavior.d.ts","../../../node_modules/@polymer/paper-item/paper-item.d.ts","../../input/dist/src/ox-input-color-gradient.d.ts","../../input/dist/src/ox-input-file.d.ts","../../input/dist/src/ox-input-image.d.ts","../../input/dist/src/ox-input-value-ranges.d.ts","../../input/dist/src/ox-input-value-map.d.ts","../../input/dist/src/ox-input-table.d.ts","../../input/dist/src/ox-input-scene-component-id.d.ts","../../input/dist/src/ox-input-crontab.d.ts","../../input/dist/src/ox-input-partition-keys.d.ts","../../input/dist/src/ox-input-duration.d.ts","../../input/dist/src/ox-input-quantifier.d.ts","../../../node_modules/lit-html/directives/class-map.d.ts","../../../node_modules/lit/directives/class-map.d.ts","../../../node_modules/@material/web/chips/internal/chip.d.ts","../../../node_modules/@material/web/chips/internal/multi-action-chip.d.ts","../../../node_modules/@material/web/chips/internal/filter-chip.d.ts","../../../node_modules/@material/web/chips/filter-chip.d.ts","../../../node_modules/@material/web/chips/internal/chip-set.d.ts","../../../node_modules/@material/web/chips/chip-set.d.ts","../../input/dist/src/ox-input-select-buttons.d.ts","../../input/dist/src/ox-input-textarea.d.ts","../../input/dist/src/ox-input-direction.d.ts","../../input/dist/src/ox-input-table-column-config.d.ts","../../input/dist/src/ox-input-search.d.ts","../../input/dist/src/index.d.ts","../src/editors/ox-input-tree.ts","../src/editors/ox-grist-editor-tree.ts","../src/editors/ox-grist-editor-week.ts","../src/editors/registry.ts","../src/editors/index.ts","../src/gutters/gutter-button.ts","../src/gutters/gutter-dirty.ts","../src/gutters/gutter-row-selector.ts","../src/gutters/gutter-sequence.ts","../src/gutters/registry.ts","../src/gutters/index.ts","../src/handlers/contextmenu-tree-mutation.ts","../src/handlers/move-down.ts","../src/handlers/move-up.ts","../src/handlers/record-copy.ts","../src/handlers/record-delete.ts","../src/handlers/record-view-handler.ts","../src/handlers/select-row.ts","../src/handlers/select-row-toggle.ts","../src/handlers/registry.ts","../src/handlers/index.ts","../src/data-report/data-report-field.ts","../src/renderers/ox-grist-renderer-boolean.ts","../src/renderers/ox-grist-renderer-color.ts","../src/renderers/ox-grist-renderer-date.ts","../src/renderers/ox-grist-renderer-file.ts","../src/renderers/ox-grist-renderer-image.ts","../src/renderers/ox-grist-renderer-json5.ts","../src/renderers/ox-grist-renderer-link.ts","../src/renderers/ox-grist-renderer-password.ts","../src/renderers/ox-grist-renderer.ts","../src/renderers/ox-grist-renderer-progress.ts","../src/renderers/ox-grist-renderer-select.ts","../src/renderers/ox-grist-renderer-text.ts","../src/renderers/ox-grist-renderer-textarea.ts","../src/renderers/ox-grist-renderer-tree.ts","../src/renderers/registry.ts","../src/renderers/index.ts","../src/configure/column-builder.ts","../src/configure/imex-option-builder.ts","../src/configure/list-option-builder.ts","../src/configure/tree-option-builder.ts","../src/configure/rows-option-builder.ts","../src/configure/filters-option-builder.ts","../src/configure/config-builder.ts","../src/data-consumer.ts","../src/data-provider.ts","../src/data-grist.ts","../src/record-view/record-creator.ts","../src/record-view/index.ts","../src/data-card/data-card-gutter-menu.ts","../src/data-card/event-handlers/record-card-click-handler.ts","../src/data-card/event-handlers/record-card-dblclick-handler.ts","../src/data-card/record-card.ts","../src/filters/index.ts","../src/types.ts","../src/data-report/data-report-header.ts","../src/data-report/data-report-body-style.ts","../src/data-report/event-handlers/data-report-body-click-handler.ts","../src/data-report/event-handlers/data-report-body-dblclick-handler.ts","../src/data-report/event-handlers/data-report-body-keydown-handler.ts","../src/data-report/data-report-body.ts","../src/data-report/data-report-component.ts","../src/data-report.ts","../src/formatters/date-formatter.ts","../src/formatters/number-formatter.ts","../src/formatters/text-formatter.ts","../src/formatters/registry.ts","../src/formatters/index.ts","../src/sorters/sorters-control.ts","../src/personalizer/ox-grist-personalizer.ts","../src/personalizer/index.ts","../src/index.ts","../index.ts","../src/data-list/event-handlers/record-partial-long-press-handler.ts","../src/personalizer/ox-grist-filter-personalizer.ts","../stories/accumulator-format.stories.ts","../stories/barcode-input-filter.stories.ts","../stories/bounded-select-filters.stories.ts","../stories/bounded-select-record.stories.ts","../stories/click-event.stories.ts","../stories/creatable-only-column.stories.ts","../stories/default-filters.stories.ts","../stories/dynamic-editable.stories.ts","../stories/empty-sorters.stories.ts","../stories/explicit-fetch.stories.ts","../stories/fixed-column.stories.ts","../stories/grid-setting.stories.ts","../stories/grist-modes.stories.ts","../stories/group-header.stories.ts","../stories/textarea.stories.ts","../stories/tree-column-with-checkbox.stories.ts","../stories/tree-column.stories.ts","../../../node_modules/@types/node/assert.d.ts","../../../node_modules/@types/node/assert/strict.d.ts","../../../node_modules/buffer/index.d.ts","../../../node_modules/undici-types/header.d.ts","../../../node_modules/undici-types/readable.d.ts","../../../node_modules/undici-types/file.d.ts","../../../node_modules/undici-types/fetch.d.ts","../../../node_modules/undici-types/formdata.d.ts","../../../node_modules/undici-types/connector.d.ts","../../../node_modules/undici-types/client.d.ts","../../../node_modules/undici-types/errors.d.ts","../../../node_modules/undici-types/dispatcher.d.ts","../../../node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/undici-types/global-origin.d.ts","../../../node_modules/undici-types/pool-stats.d.ts","../../../node_modules/undici-types/pool.d.ts","../../../node_modules/undici-types/handlers.d.ts","../../../node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/undici-types/agent.d.ts","../../../node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/undici-types/mock-agent.d.ts","../../../node_modules/undici-types/mock-client.d.ts","../../../node_modules/undici-types/mock-pool.d.ts","../../../node_modules/undici-types/mock-errors.d.ts","../../../node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/undici-types/api.d.ts","../../../node_modules/undici-types/cookies.d.ts","../../../node_modules/undici-types/patch.d.ts","../../../node_modules/undici-types/filereader.d.ts","../../../node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/undici-types/websocket.d.ts","../../../node_modules/undici-types/content-type.d.ts","../../../node_modules/undici-types/cache.d.ts","../../../node_modules/undici-types/interceptors.d.ts","../../../node_modules/undici-types/index.d.ts","../../../node_modules/@types/node/globals.d.ts","../../../node_modules/@types/node/async_hooks.d.ts","../../../node_modules/@types/node/buffer.d.ts","../../../node_modules/@types/node/child_process.d.ts","../../../node_modules/@types/node/cluster.d.ts","../../../node_modules/@types/node/console.d.ts","../../../node_modules/@types/node/constants.d.ts","../../../node_modules/@types/node/crypto.d.ts","../../../node_modules/@types/node/dgram.d.ts","../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/@types/node/dns.d.ts","../../../node_modules/@types/node/dns/promises.d.ts","../../../node_modules/@types/node/domain.d.ts","../../../node_modules/@types/node/dom-events.d.ts","../../../node_modules/@types/node/events.d.ts","../../../node_modules/@types/node/fs.d.ts","../../../node_modules/@types/node/fs/promises.d.ts","../../../node_modules/@types/node/http.d.ts","../../../node_modules/@types/node/http2.d.ts","../../../node_modules/@types/node/https.d.ts","../../../node_modules/@types/node/inspector.d.ts","../../../node_modules/@types/node/module.d.ts","../../../node_modules/@types/node/net.d.ts","../../../node_modules/@types/node/os.d.ts","../../../node_modules/@types/node/path.d.ts","../../../node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/@types/node/process.d.ts","../../../node_modules/@types/node/punycode.d.ts","../../../node_modules/@types/node/querystring.d.ts","../../../node_modules/@types/node/readline.d.ts","../../../node_modules/@types/node/readline/promises.d.ts","../../../node_modules/@types/node/repl.d.ts","../../../node_modules/@types/node/sea.d.ts","../../../node_modules/@types/node/stream.d.ts","../../../node_modules/@types/node/stream/promises.d.ts","../../../node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/@types/node/stream/web.d.ts","../../../node_modules/@types/node/string_decoder.d.ts","../../../node_modules/@types/node/test.d.ts","../../../node_modules/@types/node/timers.d.ts","../../../node_modules/@types/node/timers/promises.d.ts","../../../node_modules/@types/node/tls.d.ts","../../../node_modules/@types/node/trace_events.d.ts","../../../node_modules/@types/node/tty.d.ts","../../../node_modules/@types/node/url.d.ts","../../../node_modules/@types/node/util.d.ts","../../../node_modules/@types/node/v8.d.ts","../../../node_modules/@types/node/vm.d.ts","../../../node_modules/@types/node/wasi.d.ts","../../../node_modules/@types/node/worker_threads.d.ts","../../../node_modules/@types/node/zlib.d.ts","../../../node_modules/@types/node/globals.global.d.ts","../../../node_modules/@types/node/index.d.ts","../../../node_modules/@types/mocha/index.d.ts"],"fileInfos":[{"version":"44e584d4f6444f58791784f1d530875970993129442a847597db702a073ca68c","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4",{"version":"4af6b0c727b7a2896463d512fafd23634229adf69ac7c00e2ae15a09cb084fad","affectsGlobalScope":true},{"version":"6920e1448680767498a0b77c6a00a8e77d14d62c3da8967b171f1ddffa3c18e4","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true},{"version":"ae37d6ccd1560b0203ab88d46987393adaaa78c919e51acf32fb82c86502e98c","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"479553e3779be7d4f68e9f40cdb82d038e5ef7592010100410723ceced22a0f7","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},"4a882ffbb4ed09d9b7734f784aebb1dfe488d63725c40759165c5d9c657ca029","15fe687c59d62741b4494d5e623d497d55eb38966ecf5bea7f36e48fc3fbe15e",{"version":"2c3b8be03577c98530ef9cb1a76e2c812636a871f367e9edf4c5f3ce702b77f8","affectsGlobalScope":true},"d4b4f6148a6444ec92db4ac4c7dd7050ffc32b21a10276a59498e04740e8fd8d","2524f58c8d67af441b487c0ce0e0dd9c18bf3d06c05f621874dcda9780d8e22c","e056bb30bf82271634daeee81f772f4a7960085f01f6d4d09c8da1ebe5f6a623","5e30131b6a5587fe666926ad1d9807e733c0a597ed12d682669fcaa331aea576",{"version":"86492a546c3308feaf1dde967afd325c321483b5e96f5fa9e9b6e691dc23fa9e","affectsGlobalScope":true},"c7dd759e5948a94b42422ba7cf70eb8455416def9447614a3bdc1a99b81fc8bb","1bcd560deed90a43c51b08aa18f7f55229f2e30974ab5ed1b7bb5721be379013","dc08fe04e50bc24d1baded4f33e942222bbdd5d77d6341a93cfe6e4e4586a3be","cdeae34aca6700620ebf3f27cf7d439c3af97595dd6e2729fa4780483add5680","3ff87ea3471b51beaf4aa8fd8f4422862b11d343fdbb55bf383e0f8cc195a445","1cc188904259bd0985b24d9dc2a160891cb5e94210901466b951716fcdb4ff62","732fb71ecb695d6f36ddcbb72ebfe4ff6b6491d45101a00fa2b75a26b80d640f","039cb05125d7621f8143616c495b8e6b54249c4e64d2754b80ff93867f7f4b01","1b81f1fa82ad30af01ab1cae91ccaddc10c48f5916bbd6d282155e44a65d858d","a0fc7a02a75802678a67000607f20266cf1a49dc0e787967efe514e31b9ed0c3","5ebf098a1d81d400b8af82807cf19893700335cf91a7b9dbd83a5d737af34b11","101cf83ac3f9c5e1a7355a02e4fbe988877ef83c4ebec0ff0f02b2af022254a3","d017e2fcd44b46ca80cd2b592a6314e75f5caab5bda230f0f4a45e964049a43a","a8992b852521a66f63e0cedc6e1f054b28f972232b6fa5ca59771db6a1c8bbea",{"version":"be46700f84d0795f4a876947a3e0fcfd5b2369653c55b9efd8bbd84464630062","signature":"386e5858ba95acd2c0fa5ed0c5bff19addb0ef8c32ebcaf171d5bdcbb9ab8a3e"},{"version":"194d831644482bfd506296a5ed9a37ae280f7aa36670105c7e06694368739ee1","signature":"cc6bcd576056d8ccc3bb297b152e9e4d694fa13a3790078fc9c03f361d82060b"},{"version":"830c8d8367008c6d74c1d006ef214c3e7cd3fdaa2d4c3e7d74821145d5c719a5","signature":"038f7ba9c3cb0d2097d1fb3f6294c355999e257e42d6769280e1a978c84f871c"},"5565deadc1d553f9f1ef370351432c258d2a6f1a5ca47e574e5430db824468c7",{"version":"4ae1ed87c59518f4e0918a21409ec3020e97037a386b57953c6b9fed9cad6949","affectsGlobalScope":true},"05cfea0488751015b0b85911b6cdcde7c6cebdd9b8cada1ec0b5c1736357a552","f5800813e5c0d6c27d73b76f2c99f39bdfd6229d03553a8a9ae485f6aeb94425","4d5e201faa4bceca840b652dfc10795170c061f498e19429a06e056490aa69aa","6cf5098c7bf0c14358b656edd6103df1ae9f8c6a94abca9df8650c2b520d8096","ee11b7061adce4a1c0370620949a57851215b152a5632d2faf1aedbc90ad0520","f8c86fcbfb0a1e69a0ed28d3249cc33c312fa23a39c17e15cbbcc539bdcdc303","85e0f00b17c3ae8cd88438c754a2c43f4a9361e685b97a70e52e33afbf62488f","39d2d450df6efbf38585fd316f18922c8ac3fdfd4c3fc412d0bee34e2bc86378","4dcdfe4c18557fc02d8cb22cb422cb98bfeba8158aaf18cc66f9d99293ebe2c8","7efea6f2270a14f1b0d5f472f2a6fcb0a97beb677299e10b073cc2abdabeef51","642bd83dc8b11abc31785975f869fea5ab2dd84246acd13c6ad7e769fea95150","712dbb6cc6020b1dae2a2031b8a117717318652f73fd5042d508f7de416c47b7","3df6a0e8bdb7199dff6cf75c0250316f06b87c982bb47460960a1c5a793f5ca6","b3238dd00b7796eda3f507726e9882a55ff7043b249be8309abed22cfb7d7463","f499d7fb533781939c7a5ab778ac6e6c8ffe65601b1a61a843c36ee0013f05b6","7fcb76be88d4a64f6318b5a24b57021d7463f24485a3d1a931bf664c7e437534","d75490903da576f8fd0ee1c990858cb31e605d3db925593c12728bd0949eedfe","098ec42cd54c2b3354584c4fe8ad143040114891dde762741522b62788772f0d","1e73d612f806d183d6c16c4135c16c1a14dd827c1a67097e72ab1841852bfcb9","30046b0787c577061d43e498b507da8a249fbc58bbe33a09a7bef777e1d5fb67","cb2de9f1d7d286191834eeb331d23dc69eeb322745114ddad1695e4c575b5feb","dc2461db89dde29306a73a2926e2cf874e981ef034412f4d1e3d06d45bb3127e","13a5d8ec52111b64ed8fdcb47ab664b60085733c46c44aede33fd2926840ac31","1cf02270a889fcc3fa5863734fcdbea410d3b4dd71e4678a894a48028f836f6e","4f69dd36aa514494e2665a9dd1ecbb94f705c37f13554aa6f0c4b55d47dcfec1","c88faa2f2d9778aa0b4dedc2bfde0990b0beea6c45b0fc7d4a79e1294ebe8cb0","51f3be4aa09529ea1ad83a3d66830075a49e3e630df25d9892ef5708bb00de55","1bdef5c3270439174be1f8668f4e2d9b0e61be67f10e5dc770b4b7562caf04bb",{"version":"95a1fdd92694bcf9c78a3bdee8cbbaa04f8eb40bd95b94451baadc6ce417a1f9","signature":"09973dc7078994307990247facb1ee49da7c77f1bc4a5335f79a1921e4a9d081"},{"version":"4ddb9a84f8f53b8ac9a38f235d097856d1fb82b9a6e7b3048a4ad837ac5a60ef","signature":"b139ec32726b861d729421f33e3d51a26ced7a5556363ccd7c13b0463bc351f9"},{"version":"e66d43dfcddea457eba1932607fa69025d6c8bf2caf9776f8524dbb484a165ec","signature":"292ebd2977ebceff1836f8df3788f7d9472f41a26d0b4b6c704404a112f979dd"},{"version":"99b2337781b8262e9db5efad61367729d5efb6c64d6344f47d9fa42c093fb571","signature":"48ad022e52419d1016325b379d0ec9983e7543fa291d85bab1e05db4ba4d991e"},"cf93fb9208a01c80f0fad245c4360356e5de6c2384b7641acf0b9cc2f5c42448","336398b0efaf964124e636a9b29c4edd5870aee79ac64bf87be58a9d66b7c048","571bc65ec37ba124e762bb822e14a2b8502dc684e356be8feaccbd6b9cadd023","7cd455fc4c4818f19263d73b29c59f3fb5fd54b45a6ab83ca3eb3661281db56b","1c6b9b5501774a2ece6574be8e26092800e3f1f836f8c179b4f9fdd271a620f8","bcd2426fd141157e04e3a8eff914b575403587f398cf0878f07c2f283e0d1afd","bac8ff394e831e4dd3f0961d6abb414b0e2b4ba16fdeb502d087ebf0340ed5f6","51a48986bfceaa54e86e8402a1c3184de6e7f096f7d2a3ff1382d71aaaaf6d9b",{"version":"a1e35ff73cd8da1121c5e275268e29306ddbcf1cc5dfa55648e7240464b4081f","signature":"9ca4c5743ac77f84a83e5c6812ca41880b5f532c8a344343c0ec5a307b8d5fe3"},{"version":"f3bec138ac43d875c319e24729f2ab4ee6a19464627aab97628f5687c5838452","affectsGlobalScope":true},"6e83d5c6aa7712affc00153d00e3011017371f5d29bc38c792ee7e493294ecda","63d42cf122d1de7c80d8280bfac8801253c2f1c739c37b2917049b9e028660f1","6d8223035d3e6d8ed0760d4579dc0cc582c8972ea198e4919c8080ec3e9baf0a","6184309fe39e2fe444f4ba94e7cd1abef48fcb48e258457c3b77c65828184241",{"version":"98c511f60c3079d731a35353a47bfa89dd79eeacad48a45d07170d22ef4bfd02","affectsGlobalScope":true},"905800cc110167503d0cf58bb0dd6fa4aaac1e9cedc9bd9c48e5d1f8b5b8d4c8","d17be577b99e59611df19ca2cf0356df554f55bb06617c21321fc4ec06b820d0",{"version":"5f30145fbc8ca508ae4e0d90a4fe9eaff490783f380a92f6aa262accdf7887b7","affectsGlobalScope":true},"2c887f29f6796ea68247c626acbef560ff29bb8d0042b641e4fc69559841463d",{"version":"f882b77c5939860d599b4b7bc39f741ebcd56123e18b284500f4b8923acd2e72","affectsGlobalScope":true},"0230bc76ed3a464531a43d2434d315b9cc2096aaca28bdaa65b8f9dce9f3bc81","559d2d1cd7f37dc2ac59e7adce198ad16a5eb0c7273d67b8e4ff72821b7c853f","afa8760622183e35e86f516574217eb1853b08cf2168be0bfe991643ece1a8fe","82c4af4fef6ea53203df31d4d1da9acb47f9a1eabfc7f45f0f181b7ff9345187","d08d474654640266d6ac03f51ee04d72438b78ea377b9dc4678c480ce0477e1a",{"version":"929f21090183949e93fd99327d292bff76f781895d5252eb43319b2c3e014528","affectsGlobalScope":true},"f9f3097a031827350b6befd870e9da3ec0953b7269497c1a7c5dc840223d2fb3",{"version":"d56278ed347a6685abc6da6b49277da36db3ddce86bd298c03b48a5f9c6d145c","affectsGlobalScope":true},"2c26b6850c5c0a3a7c833b22fa88fa52358316b958588c865854467736e266eb","072757052034bd5b80f7e5cbe3e3c26810efa06b822fdd6f6416d4c72f8a0503","c97f742ef6e8c0bc4e5e4ad8d90b4489cdd3bd1c007510ee4a2e4c09266a11d2","6a17f676d06d3e695520b275dd483b4fe62d34b84926c0bf6425c08490ee2c41",{"version":"5d12cb6727905e2c47f26154cc2b0625adef069d5666e534dcb158f4eeee2317","signature":"b4e0c5592f4108bc1c855177aaa1b61d09d02f8e0f59089388aba7206c47d4d7"},"74fe889b1d2bba4b2893d518ba94e2b20dabe6d19d0c2f9554d9a5d3755710f4","2ae64cd7b6e760496069ee3b496c64700c956a0620740e1ef52b163824859db7","ff81bffa4ecfceae2e86b5920c3fcb250b66b1d6ed72944dffdf58123be2481b","458111fc89d11d2151277c822dfdc1a28fa5b6b2493cf942e37d4cd0a6ee5f22","da2b6356b84a40111aaecb18304ea4e4fcb43d70efb1c13ca7d7a906445ee0d3","187119ff4f9553676a884e296089e131e8cc01691c546273b1d0089c3533ce42","aa2c18a1b5a086bbcaae10a4efba409cc95ba7287d8cf8f2591b53704fea3dea","6f294731b495c65ecf46a5694f0082954b961cf05463bea823f8014098eaffa0","0aaef8cded245bf5036a7a40b65622dd6c4da71f7a35343112edbe112b348a1e","00baffbe8a2f2e4875367479489b5d43b5fc1429ecb4a4cc98cfc3009095f52a","6c65d33115c7410ecbb59db5fcbb042fc6b831a258d028dbb06b42b75d8459c1","3c92b6dfd43cc1c2485d9eba5ff0b74a19bb8725b692773ef1d66dac48cda4bd","b03afe4bec768ae333582915146f48b161e567a81b5ebc31c4d78af089770ac9","df996e25faa505f85aeb294d15ebe61b399cf1d1e49959cdfaf2cc0815c203f9","4f6a12044ee6f458db11964153830abbc499e73d065c51c329ec97407f4b13dd","1be8da453470021f6fe936ba19ee0bfebc7cfa2406953fa56e78940467c90769",{"version":"3b4541e209c5748bd4193c455e8eff5e289ea8745e0bdfa640dd17ac4efe483c","signature":"a1338c1eb0e7551a083f0f812e6ceefac1814572837a6c3d3bb4c9b7c3b0156a"},{"version":"a7db10c9e8fe7bf5b08b25288802a95ecde8bbb397237edbaf388dd3f4974902","signature":"ea65e3ce32dcbb61edb379f86b303732103a887fcfe61fb0434cd5398fc8c272"},{"version":"38d283fcc907d965fc0d5cf56db46a44e6a26944f7c47125611c4090227414be","signature":"2a489164e760c8f1c603a0272822b1eaf4886e578e8128ba6bfb82993b419c53"},{"version":"9e6f764c8f782eb7112a6caa510d18995f1d840e32a6a721cd60419686256dd4","signature":"e1925458d0ea29d0b4d314ac029c368dcc5b5b0421be3c05c36a12df92840401"},{"version":"0ba3f0e844a39f80a09ed6949047f62d8d7aa7a7b1f58d42e9da66d39bdc8ddc","signature":"19236d2b3a4d329eecb7d867e62ba2ce8ff2a1c290d9b9cadc246e1e860232ca"},{"version":"8c182691fdb83b3eb48d185fd25ed63ad4cdba1e60c9d0b1b03f9cb595abb28c","signature":"c348a5e4481d61843505811ed74ca62234d5bde08db286a719a7421bf64fc8c2"},{"version":"e0ea3314210ec55edaad6d5efc66a5f5e628d1c34492c00a8753ed565aefc59e","signature":"5e0042ca0dbe77639779a6f861c2a32fdff5094031e013fccf95508b49f6d7ee"},"c42f9b18f5f559b133cf9b409f678afb30df9c6498865aae9a1abad0f1e727a8","d58ccd9064506e6b18e5deb6d80d775caa48447a2af4f26b5b1258a23470a574","deb6a1fe91454c998461ab46ccfe923c761e859989e5267b84c911945fde22be","d6c0b824e25ca3bdd752c8baa81a8c5c2da034ffaa54ad60fb5cb2bea6e2bcec","f267810dcd09cb85ea08c95901e568becf0b9d22a6d213701ef804d40b386f60","53d73afd92083f9a920e20349f78a555a0efdb6af456d93d9e909a6218a02984","680b90445420b57653cd9afa1a143605cebe72cfdd0404fd5865cf7468d9fbaf","08c284a870f969e3755ec10154f7116391ef7370d157b612598f9a990adf6b37","90e0f68bc1ea26121712b8697446d05374c920d57178f64cf1864171de75129c","38310ee8ef968c009441d8589375a1a9c302594afb260aa663f70906f581175e","4c0507b286279fdc18c4cb683f42674a21b8437d6b283a4ee432e6fd7f59d59b","27909ca3d149c1c6f45b29b6e2ef4b1cbf709bfe6c0c66276d4541f6afc8031d",{"version":"ac20330d0e04d55fed3b4c7217077c24d3670d1eebb7f2b3648af4777b28f138","signature":"71259283b7feffae74bdd462c324546c90977acacc55ad5317bf4b2ecc23bb22"},{"version":"b096bf6199de06040b835094623bc21bc153a670bdd6e0099c03f9a39982dbbf","signature":"f0512312084ae789be5862be6bbbb4bd4ece73ca1bdaa3193b1a2e3dc0b8ea42"},{"version":"38ef896f3757957ce79dfd87e5a25d439f95a76870ca5e88b19ddbe83a85c8a3","signature":"4285b3976062212af73781ab61cd2d35014d6c8922ccbc082272ea14b56c4119"},{"version":"b9646d6efc3ba841bb745cc0c731b79f1fce30013a579b9e9dd1a3cfb9686d92","signature":"8dafa4ba5adabe83b44b8e04407318146bcc51da5e1d4cee7b1c6a11d2501ddf"},"251a1c5478e2a771c4b375028331f71f0d9e4416bb7845832aec9fccfb2656f8","14ebc955b44627c8c31d5cbab04ec92b0a31d01c058cfdeedd427c0305649c8a","f2d2cc02bc76f6dc38112a954fadb956d92a141db93224f6378c036a505f1aeb","ca1495c5560ab3ed0f7da01267a8ac4a92c612d0fc13d56c4ebd5a2e3f595679","0f81a53d54fd2b4ae2bf60067d616de99884bda21cb5784d942089d52319fb97","86d356e64ab8d56852623677eb1bed0c106703aed9b7788ad8a5a56e647822cb","29dca1b5f0cac95b675f86c7846f9d587ed47cc46609dd00d152bcb37683b069","231d829c892caeb88dd469e0847bf9d14e29c82b8b158b381ec866c868adf9af","48ba49f8bfce8c08ad1e7e54f0b85da9db7317ca76835d1c2640567e3fbd50c6",{"version":"b4bb0b73794facc029460c133c3222afac409384839731376f3f27e6f4bb7d25","signature":"f4ce147c4745d8662c66dc47cc77226bf79eb00766801c8225b570d1335f0de0"},"a862dcb740371257e3dae1ab379b0859edcb5119484f8359a5e6fb405db9e12e",{"version":"76631ba4aae52b025081045898af6678333ab7bff9ac4aae9bd21096d854579b","signature":"27fd44ac917b8f78d65173dccad092de47f408db592e1abb355f661d49646312"},{"version":"8ff93ffdd9b9b85fc4c03c6200a8731d090081157d40b69ab85d1bbf0219fe52","signature":"700828225cf903b1fce7dbac7d6afe27aab606cf6f38d29382f6d8cce445f3f9"},{"version":"7861e945dfd5b6ae1e09e8b9740297e969028020b60d5dda013b84c7cc291188","signature":"46b34b7637e3c97dbf73dc0d167b84f90551113719a2e6ac825dc06407cdbd2e"},{"version":"7906b3b0f38706b264bf78d59a373fe595f4fb6a48378babbe599b380ec07cf9","signature":"6865ad92b0b4533fba14f0583b28ea2fc6a750235c1399a9689e029dcf64fcbe"},{"version":"1f7f544c6e60b016d28db16415c5a2f22219e821e6c5313a5f1c8f3bd4803496","signature":"beab932797dc68066e0d458ee92dcc8cd6bc356599a70689007f68e74e340c8e"},{"version":"acf6fadac9d6f7b196f325c8bada72d821009cebb1455da43ef3d875804d5a46","signature":"24e703a20760ede3d4ba47c5ccb615e27f4e512756784069bd9266cc09168d4e"},{"version":"2fd48df87a103cee6f65309642f4502853d1608eeb00189249b2286093413e09","signature":"311011b8c26c201fcbf5d2640cb0fc0a68bb6e86982da073bd966438a560c5bf"},"88a3a6f8c2a1640d8d5fd30d8d86462f8babd86a1e52fab0e8b7f7c141fb348e","345f76c854da724803c96f727a3f9c75e26cf95c6e7b8c1064dbc4e7727b74e6","ab7b7a15a5d73eb0cfc2b973e580f357f07492bff6608669d7e899e2d49ac9a3","553312560ad0ef97b344b653931935d6e80840c2de6ab90b8be43cbacf0d04cf",{"version":"09574ed79cbe0351672af3886a15443918c08c75f1e0a811fa45dda4964880a7","signature":"30d0c3169d63adaa3d171a6c5fad4bb3c904d70608bea6024d1d906baca96be1"},{"version":"a8e890a50f7c34eda4f7e046220e7f444a5e2c20308c96e7612eb6b380c811ea","signature":"98dfd5ef3bdbcf4df59a1c17736d8a347295b3921310f68e4f70f28cb81c1fed"},{"version":"4b18642548cbaf278c003b46ee59d07881efe615c702e10ca36d9cf8f5cde753","signature":"7e6f3b3128a22e847dcf416c6b33ffe6204ca823e1db144a8b8aacf0b6ec33cf"},{"version":"2910061081ede86ebab15dc9a5d67c77c798b1ef5846ebbafde719de4cdd5a4d","signature":"e9dfd662b153cb241334ce04bb29c1ccf07b4143f144dcc0e7d1c2339a10c2c4"},{"version":"8a79a7a56562c1d3f69704789ce70226b5d11c2ffff2c341dc23bc7dc870e566","signature":"36660e8875c1d5b060f1373543cc76b7be3137cf789dbd2962f67da264d349fd"},{"version":"01e4e8dd96539570ce8869d117df02aab83eb5f4002f74ab2f088ce1af186153","signature":"1326612693a2e42cb96b6097f79336ed82d582f581e2d3aecb157c50fbb7cbe1"},{"version":"94b0db6b6f1f1ab48612703889a20b18728b4013cbd2e75d20e11129420a79cb","signature":"880d6f16d4f1a93111c1ac563b264db9413810c415a95bada77c0e5a46432704"},{"version":"00df5ddec88858239f9105b898535fb82d4c9b21caaad6bceb0fabdbc7ef4c81","signature":"0e6dc8cb5b0edff44f46586d030e374df1388c8417a1685ecd7721ed01cb4dc5"},{"version":"b6c20cc4628976a2c9c129cd30ba82973cc3acfb26cb93de41881f7ba3717807","signature":"cc8768e0f4b821b76cdb679a23d65c9987ac10fb458789505b2cf582220841b4"},{"version":"d1f662d0c6c8f0ad7c74100c19a276dd9367c8b3aaa3de15ee5b9ca725c91187","signature":"b6248600b10f10758e88f29c62e6e7da3ff95e4f2f04a4998b914b8bae6192e2"},{"version":"146914ff4c06af253e9268327a8630949e8987a9a51f790b286add192871911a","signature":"cdc4e7fd1b86c67e46621ee7ab6b709a582912caa997d9874e13c9896a0b9cc9"},{"version":"8f196ca7056d7812807d4c3bba8835b948c018161ea2b4d40bf44f0fbb20442a","signature":"3c458c4c878a7be2ceaa7e9318ab2d03d799dba17209c18443d087b68a053185"},{"version":"6575712e1315863b78a1cbaa87576fc9bc45bf33aa67fe26600aa6dead6ecf0c","signature":"6a82472fbb0445e81d7975c7c63d3deb69285ce74081268ca3b3a66863ac54b2"},{"version":"aa0dd4da48215f4130aed9283fdc7b3bd44ba93741dc0c8f6160507fb26dd84a","signature":"832b1083b3fe23aaa13484835124c9150c7ccb80f3a8c2bf007ce183f2592b07"},{"version":"cb7796d30a49d91f814af1129fa98771c04b10872991f04244a918889b0daa9a","signature":"03f3f03872ff6a90ecf2f05abf86b743b479e28111a53860316cbd3acd16e652"},"3be6b3304a81d0301838860fd3b4536c2b93390e785808a1f1a30e4135501514","da66c1b3e50ef9908e31ce7a281b137b2db41423c2b143c62524f97a536a53d9","769c966ef166205a08c0382a298a6c5877951599d805931a963ae5650ee46391","35c1202e93852c1c233191971b8c4aefe5d3f9df287991585fe305078c0880e6","690a59ec8ef431839c447cd88fbb0bd0ce59c037736d8748737d4e0f2ed57077","4a2a6bd6a36b058effc58d1aab136cdbd66188773470885a4b414098a0d76821","b12f96f442196be954b8fa982f179527fff05a796962fecfb6e12b0a2c1b6867",{"version":"2ddb9572f13b565c3fe90c9c797950c8c7b49e84989e850ce8619564b711d6f6","signature":"26e4e730c693d40c7b96173958fda238b0bdc5060efef9d8dde36e61a0c53418"},{"version":"355450714c1eb72cd75858fda0a458f7ceafe5654551e8c7e3a82bbe05ec25b5","signature":"988e6ed31d7d505106c63046218e13120a1d058854dc0007ce729fea94e5a557"},{"version":"b5cc98c007d3c63a2f85d8c14e120932b20f0092ef46c19bab741c25664b770f","signature":"c66d1dfe44eeaee2f129547a9f822cd271a510a8a62941bfbef00395ed6b60e6"},{"version":"8c03b854441aa92eed8ea8282057605bbf4f1d7a52103f5ac55084afcdd32a9f","signature":"1fa27a2737b97856d4c626aeb160d4eb2be9bdb430116f682e6aea2c302acc69"},{"version":"a0547cb5b8de1df4dde2d852d988f67995f07a1974c7e8eb99bc6b44a659bd1f","signature":"44e1a9f36b41a93165ca1a8ae69c38528eae065856dd7e854a3ffae97801ce00"},{"version":"c17dcc94de829de95ce1e2ca5d577a727517f0f0001f075f7b9626bd5013b288","signature":"4407669bd505d8a03ca675be46129d7d1e3110ac8a541ce1c0a48fe450b83a85"},{"version":"0eb009ca9bab7ed05e23270d194a8958a004439ccdfc998207ddffe26a919c51","signature":"f0d539a02cba1e4bab64d2bc6447effe2b197a1d30fec8cb636b25478f7de4f0"},{"version":"fca32ecbb77416d944b9e28062955527478b5da530c9195d23450f86cdbc57c8","signature":"fd5466afeeb6b4351f0ba943b582bedb3720b94cb5d28d945f34871951d949db"},{"version":"cbd762ac17acf3080e0acefc49b9b84a36756d3c835204fc152c1ce9a2cf028f","signature":"5b2dafe66896138a12fc33743126ed316f93971f5233fccaf602784a3c8ac22d"},{"version":"da84102257a1041607674f42ea9cc84237825fb363d54d1cdd42baf1489aa0ea","signature":"437020e4126eb3f158b1cd46ce7c469465e7f60029fa78335e44f85dae0bf97c"},{"version":"3e21e5658458213bbf254b87e8ac88aca6e922fd10d8b7a0e07625b6fa3909f6","signature":"f075fcae71eb7641f6a73d5efd39072a9f8d02b4185bfc0ea0977026b4895dd7"},{"version":"a43a79716ea9f2761256f7e8fa06344dd579d9b184064b125284738a09d02859","signature":"3e4cd4ced7e1059b14a400e6e035ae8a2872484d5d8ee9ac9c07a0a21cc230c9"},{"version":"cc5271ae03529c1bbd0641d3fce46f72a4ad28b39dba4ac588bf96433816a023","signature":"8c952d03f02465cf6a46fdeb9209f586c45f76cb29170cc94d2ea4898733d8cd"},{"version":"a647b4a652d4d596ffa78ca67ddc6c90c909175319e256c770dcad53c22f045f","signature":"eb3467ea87de54d0159d56cb11b2c011b948183d1f5b8bbca396543c92e68fea"},{"version":"be3570eb0fba40c48257efa6fbf672a81166e73546804d14e0de730ec15658d3","signature":"533fad16dc5ea358001aaa1593ad8b6ec9f01593530aa3593a2c267991f4a569"},{"version":"023df7640738f59e9e81128ff194f354b9a948d43d2f00e6bd7d29e8f2e8c7f7","signature":"6334bc1747824bcc915df251966fa4a6a23882884f63e78a6afa167672a7ce32"},{"version":"b8cca2153afcd0cf116b3bc9dcac04636aa518dbbc19daa82d8912289cd64b5a","signature":"3382af95e795d8905a8396033f1e7b9043fc83782c14d7ccf8ce49769ee03bd4"},{"version":"9739c15e13703253b7d0999100b20ee0c1e0c957bfce484adf8d67e2c74d9bd5","signature":"6281abf5998eeb7645c2fd778f165fb09aa8040925545ef803c5102bd0afeba7"},"447514d8b6ecb35b116a2e41f5df316c5c3ddc3facb4af22d1daf99d64d7ca34","1c177fa07b680ea2bf225f7d1da10a11af8a6fb70635b1525ebba8b83557bf69","6d839cd56f1d70d0efa2f9a359bf3ae6a611b8926f3c4cd151628479c289d392","4ea7da92da0f5f8a8ef411629fa1ecd3c91646de0f34560d5b48779131076c5b","9079351d06f84fcee2c0baf7406f9c92ce6af84d0ecd84cea6c985edde6bc912","708ba239cba9880cb24afde1c8cabf3f51fb3c0d495c679edf493457e2a7e97b","3ff161670bd227ca0359b7f2dc838384d38b7b6c5e92c2c0af5947f0ded6cc3e","e01e6ae95699d5a2dfb96eb9d115ff4472937a719bd79f77e6545d71a054a066","82bbc4f18267bf75c517fa7aa5835adef8a0a452050d1f8c4ab737917bf549b4","ee77aa598a528f724562dba2a766d58dc0dd8003bc7ebae9c4432862cba96454","fe9dd679e568dc2a0e5e6959f77b53f8bc1f126d46b0d17631347ba57470b808","57950481faf0210f869f558b80ea7747bbd7a9bc81f12b4e9dcde321300aa577","8e4440f2afe7db03030474a78ad2d61a4812f7479479ebb02aaab30e1688644f","e7cfcffcf2fc1dfd889a4db6ee67c33b8ae8f03913e9991503c427fe5771cc2e","4d0acbfbdcfac4d84cd03d34354746381bb97b0a4e070005b2d63b35a50dfbf4","e03c675a217181b8f3b92a61d161673afc488aacdaf872f953fdc48d5a6bc582","d0e548b52ce2a55820b470ad9c2d66e2855fb3e9dea936fc29b4d4a63bb8fa54","5b402d6c32c733bf8065b8abc34904fffcfe5b94b0e1b99e63a34f450d87faba","4242ec59abfe16b8b893a3f9ef0ce90b6a53afba1ceaaf808e0a225bda7e0714","46971bf04e56b8de7c9c74bba27b54f5f4a78873b6cbf0682592d0693c2acb25","54570339e5e91d8d8380dee2ab4014ffa88cdfd73ff0a20e4ec085d64d81cd78","311c45b5a2b6585a84306100bb514c919b01ee21de43efb1bb2aa6a98a2753db","fc94de52737bc8fb2b1290d6f22b5dfea3e50c8d547625781fa6a2ccd35c7242","003fc70f48af6f23b3ed3bead2cc2d00b07b82e414b0b80f905a6e72a3fb1419","15a95894e214753c1e2dc638670ac7c5a6d05d952b19ea3745767d239fe00789","5d82404561003f51fed07b961d061f702dfd379ef5f0f7927744a4fff21fbf64","c0a0a579f2a69a5600eec5da4d87f83a82cef0aa70cd4063e9040f95d879b96e","8ecbfacf281dbd929d3b5f09b4f96bf999a45a959e08501b07117256b1eeb659","968bc5962ea9834b383119f668c4cabd35ba7e4a2c5107fb2d38c8fa66f164be",{"version":"22a05089243a8f0fdfbfbc2d956dcf61872c5c973ecda5320a8f1e3a4dd90bfb","affectsGlobalScope":true},"9bb6e652f67b205e169436f76e1d8fd396bc9971dbec1a558eab3be406343e8c","6cb1ff661eb0cff9177c3b47e82abd0fe3122fc62f2bc0af432a8c4205ff3ec6","d4931bfce5c009c57f86bcd1039b3f0a5c5ef61d26a685f0abf77f20b18fc066","4bd4c71ed7c85138316133c98926c344916002fd572f52af1889961dad8d73c0","d0e3fc2ed7395634479edf269cc2b3e25d90b05ce08ddda1717282f9f3afecd0","8744338f1b9f91b6ca97ceb3bfb10babf4397ffe3c304b5ae4dc016f7c3fcde3","694291734f077ed109fdabbfee35995f7168b5d1af643bd6404eeabd7036aa01","8a01e603808722b8fc316d1bd57be1ebcd485237bae329c275999a8257ba77d0","4012af9177a7bb1715a569cc54565b906e5c087a97067abbcf9f75f7f9a476dc","9be3b21edf891a0ec1d8caa0da81816162f4fa5376a7652e0ec3154df6433a08","e544e87f21a6afb7a4e1196a991fd5d235d6df3b8c04ca6df0bc5f85f3aa4f5b","19910d826b4901606d47b306cd70ace2960eeb2ca2cb5e57acc81b42eedbfbcd","d48721b66317440af7e3257b38e144adf76953419a4a4db1fb60f743eb7c9b92","a71d8fe039f1b2c852618ef0b6971561ca4626fb8b30abbf6d238441d47aa6a4","baebdb5ba48a482240d2ecf8497a432aba8ca37d8930cc618c4d3b5d12ceefae","9ce316b892b5134f715b4f7afd71c06384cf9af9a69009cc9566b325a095e592","e5b8715a800a942f0a3d57d84725080ff8931d095de55497c4cd18e23fae9c1d","8a77a40bc44b873c7c000435ccbc0c16ca1d4b523e2528e0a8d05d0b95c520ad",{"version":"c34297a26fdf8d47f98aeb755e0e6a6fbd935d0e347979f63d4cb9a5abf14140","affectsGlobalScope":true},"0a3f0bdec21726a138d8202f5428adfe962df1e7259a41d68c109d22f6e18672","fef62bed109b31722160fabb598f61308506f9b7f40e60b3746ae01e3a3dc18b",{"version":"c81679572dcb2188e18113641e0a8914c7cf06582d1c9429a9a5bf1f72a31aa6","affectsGlobalScope":true},"60daaa6b5dfacd7813a9cf22e1ca5860217f36e70dfcf2fc28c049a7305076e1","b203234dcc09962eadae1146518df97f0768783913616ece5fd1f7f13d6f1361","74a696e2d8acb105f173f536ede57df87f10f1811879c6537cd40718156e4809","bfa3213963e67340227e92bbfb9ae68bc9945e505818e9fd3fb1b207bc8ec89a",{"version":"67893347ea02fa7f9dac48c06155eb469725bd9bf44e2b108604c58d07d13780","affectsGlobalScope":true},"eed40411368d686759c235bd0ba8300c6f4c13d5d1ebaf05a475332c946c4d4f",{"version":"bf20e597b39dc2e7dddbe50af7e58adafc0e25add218d074cc72d3875ecc5a31","affectsGlobalScope":true},"72a4d5caba027e6aedf80ecc3df2262953bf812ce8ffae9808a8ec8dc5de460d","ebe6f76595fbda9ca25d8018bd932cab144c2b1ec62ab8ec064da0ad729eac96","6bb8d9049c8717a1aa508b02a46bbad3a5a682442f7aa2bbec8ae65409c9cab9","74b9515be606b420215bea8e2773a68843ff56936321a2a05d6dcb03f7f439d8","fe6ef56e51a42c920ca515c73990634b33330c3acffd13b0ab7c24ee499fbdfc","d770f49f264d056151919d21af581b03f5d898e06073fc4919e84732f73fbe22","bd47882cbeddd30ec1ed8e5c2e92e8e15e9ad21947c0f0f41c9e19ec60ab9d83","21868b61c093f8a0fcb968db12638faedc271b56cbf2ec7a5f8043c7ad5fb430","eeadb355ae4a55fdec488dc4cd3de017ed497aed0f9c69610a8cb3c22e159250","62fa4423fd0495c9f46a1b2ac13dac99b6484dd3d661ea572ae27c49572b28a4","fb5c068182ae45b9970d0ba96eef722610272bb072a41b7111a00b431c2d8ffc","8a9b7a437bea4cc34e5e103e01573ab3afc4564a22c838942b6dcca0f68020e8","8bb8931e629d9adfac6fe0c067de1a3c2f82b47262f83fa76eb0772ef13808e8","7791e93d454eb1f0bc12341338d4a556155c128a9b4a9733978b6260bf081bc0","073bca57dd662b743900afbe847255ce6ebd8d0fdff5e16bb1a5ba3295c69410","e19dab5e7994dccbd37c1d9a887ebe6e0ee9d494ff814bbdc8641de8f8deef2e",{"version":"220a08c0460aff4f65b8129a53c63c97599d96430150e7fb2ca8da5ccbc16bfc","affectsGlobalScope":true},"f296e6ff892a925da76ed1e7b2114803db2877f1fdd665f33e0b26de7e1a6523",{"version":"2b7426977de7220c78217f27552dca65b529654f85f7c26b6689684c9f002cef","affectsGlobalScope":true},"a19ab932455c9c78c3e290ccb7d3f1f4880cafe5e89a05967903e1765a37153f","30ccfaba09980deb3ee75bf38131c4594c27125ae1274a95a0924eeb33c63083","04793be22ad889679768f15d11c20d091d7bea8901993785fd79466cae6a5352","3dc9ae67c7a8d4e9e6aceb54f37790cf7c12d2ad4555025783974a4c284c51c9","504a630faad84c8b488f06c7e44e5fdd0222036ce2d72e1863f47b91bb9dd314","23f87ef63730cb4fda4d1435088be67d36545602591c526f9abcb3820a62708b",{"version":"dd1eed464ed71359a17fc199cd4ef15bdf1a2ac39e3a462f77cde75c7ac36664","signature":"b65930f4a752c0d23b3412d1cd878ed11f6b29b1fe27a6a364f0cc86adf385be"},{"version":"2f82d22ebfb6a696faf77aad00b4b8c0d867f5efff7ad585cafccf1487821930","signature":"0dfdbb9e8ef7cc69aa288954638e18cd6a14411fe7c8dcec510a2bced510fc96"},{"version":"4fd357efbcc34d7fdfd0b4fd62ecaa536f10648769841b7863231f4e2d08e926","signature":"c447020e4465f53f011373d258d785edba93ee7195bfdd10f053ddccf5a47148"},{"version":"8d455f8624a1df37cf5f2013c60a5748c7892c9f974291a74d6a0a0ac96f71ce","signature":"32acecbba5dbfbe22f171d1aeffbd1df9c8d8d17e386479eabbde7209e936917"},{"version":"2168fb0b1c695e7eb6b1d181839b338a3aa4760d29f8e4a89e4c87b1b35bf8ae","signature":"99a2a7093ce043534c17c2ebebdce37f1c14ac2b77780a476cfb70e5a9d035e2"},{"version":"1283bd0148fd0b69b6b870e22d46c64241e819c5d80ab24b617298591ed7c3ff","signature":"c721ad947ae42f62060796a1219783240ae5e49a17831117a5bda2d6e5aea2e8"},{"version":"440095e93b145ba926dd78a7ab2b242044f55556b26929336f6c853061a86cab","signature":"aa9938ee0714b2ce25b2b0702efafbe81361e6cb1fc73c835e492d946052b572"},{"version":"e72c4adf8e839c50c829a897ed9ceb6010f4b9f1cc95272dd43b63405116052c","signature":"e395cc56652d1d4bde7f78fcd62e7356a76cc3b190e219dddbaf6fe87eb2dbdf"},{"version":"fa672aba14b4bee3652f28bf078eb498a71374b3dc9b1e63b65b05fd213e4635","signature":"b43727be75c10e1869bc887efafda3300221ada612ca08e6237b8718e86ada93"},{"version":"1e834276e651debe99cd115a3cee8d3a53b1858355251bc8fee5c9be76bea5e4","signature":"b1d629950cf09eed9cc08a0f2f4ac780de6f05c2e542b907777f7eedfe77097f"},{"version":"900683c32709e025b93cc18be550bbf2a2e5686e0ac5d058f25468062117a5a7","signature":"27909ca3d149c1c6f45b29b6e2ef4b1cbf709bfe6c0c66276d4541f6afc8031d"},{"version":"9ee433390d3dc83deb73c8547ab196a4611d7fa203214f807cc50f83f63acc40","signature":"ee5dd58be2d59336348bb96a03e2a8a7f36fa0b597e71b02510c555bbd248cf6"},{"version":"a06107192a8072e1f67569393e90d4ed71d3e6e7b766f0278821ea240d0697b0","signature":"94bf4be8557d0895cdba0fed67bae5088ec9cca47a946180efd7185a5708dbea"},{"version":"1db98e998ff6ba289361642182158025bb4ff8e4a38b361463808fd4c8efac4d","signature":"9017a768f6256decc1ab10240a2ddae30e0a01e802b012148926bda165c8668a"},{"version":"f16186178339bc9aeaad0a572195767171a127cd5f3555f9d772ae4a4efc0a6b","signature":"4191fb85077a7c48cfedfa46819c208c32fad51af7a1c144fa1004deb08c5a0c"},{"version":"18687acebfc1767389e8dbae6d28f82bf935399c5f931c54a62c461a64a38cbb","signature":"49c2f0ad931e5d8d527e573b448596a239f3e3ef0a1a233afdd79b9e4f89fb7d"},{"version":"7dab165656a73dda1802becb82bea549f7021c7f6cc0d04e9d7447aa9c244e0d","signature":"44405175791806173152834a7a42a33babc0e3fc9494af8cbad7606bb2a936e6"},{"version":"dd20dc1dde9e5dfc60ee128833c3fff8ac7367b3e5be5dd0abe8ddf01276703a","signature":"5f6b95a458bea91e008fa7ac9c5763331ae550b46e6d857ee59817fa100023d1"},{"version":"ac86afc126abbafd403f5619ea8a9dbfb1423fad5a59941e3c5bfd2c80e45b58","signature":"adf1b38dc34f8147a18388d5b716ed3c4a2ac94fe2da47690a5cef0554168d67"},{"version":"2484f3e12424669b28b6a5f7e9073cd49d2a897df50f2a7c589bb5170ab0334c","signature":"a2ce66067019351078533b6eddb5240e96f01686f8014f8959d63a2587557fb7"},{"version":"900683c32709e025b93cc18be550bbf2a2e5686e0ac5d058f25468062117a5a7","signature":"27909ca3d149c1c6f45b29b6e2ef4b1cbf709bfe6c0c66276d4541f6afc8031d"},{"version":"d9147cec8c6e0e20ae11852c7a15085769befa4e780ca9bd100ca2c7e9db1532","signature":"998699eba617b9157327ec3be6a0da70bc0ffd86a40a20c21ed619f6f5eda300"},{"version":"231bfc4b61cba3ef55fcf0fd3f03233fc01e2fe17fe374d02969203ea169ba93","signature":"04a54102a8f6780bee6e4fb11f2a4385bd5db1c108232b61ebf197296005fc55"},{"version":"7853744c3ef97b5d1985112225e71e6a6567e129b6eb4239a7f551a748f82a4d","signature":"a5acce94760166021b02598b5b4e9048d761cd713d0094743979f8dc97171395"},{"version":"14f0dc09968e72de27228594bafa2621498bc7b222e1963dc508666e5e88eae8","signature":"c75c4ce24b1f7976aabe62f58b079210dda7c8bff461cb852903ce0063b876f5"},{"version":"19272e0b09360fddf253d5c950575359862bfcd48f36ea2452e8daa419195a9f","signature":"1905cf2a2c68efce92637b0637dd1db38e2fd5683e61901e6447bcf8fca752f7"},{"version":"3781ab2e8f69f8211d1b76142da2f4528b1cb95277031a747da340aebc41b40c","signature":"9cac36fd227125723097775e2700432838e54d9c1530cd45f36653e20513dc61"},{"version":"3d9373f113b17e319484033d8c90257d6d3b02ff64994b2bdf3470129961f4c3","signature":"b461bba9fdefa4860fbbe4ab8d584aba4ff2410d7a940ccd08d797ba62b9b4ad"},{"version":"c61924e5279fe18980383cfc1a82d8da204ced49f8890ff8b76a96f26784cbc7","signature":"1b0dddfa3431d9cf7489393f6eda8c39d64b0ad5006e61b323b41e946de1cb64"},{"version":"06839aae07c9eb684746b4148a05f65aefa5f79a7311deecebe82ebb4a35b22f","signature":"69f943fd9ea150bdae776e0753da4e9e7cb5bcd2c3b357241669cb7b1146a8ef"},{"version":"9b1d4524172ee9d615e612e396637e7c471a2addb29b72b56521daba4a38b377","signature":"19f4c3da100f6ae2baeb548f5334cd238ea8da4a62812afe579f9ecc4fd6b35a"},{"version":"0dcd6d71e953763b9faf89c0c9b2ed96a56011c6ece3f7fd6b06c94ab34b0419","signature":"2f3641dc015c1f0d5a0c6d3425c05cccb6b4a58960014138e988d7ac7e89e95b"},{"version":"bf78b3e7c0de43d8ead5c7fe9c1ebf58f7219b7a0a38bab344d4b22fd41743ef","signature":"c4178d7f38a1a95f9e7763e4ede95a8ff29c134ce9dde7a5532c617489e73e32"},{"version":"c8a8e4bb94f3ce7a540355b8d49fb4ff5a537e8cf5fd937d5b430a8ad2b59c5b","signature":"d76e3643450c47b47c246ddefcaee7210175a5200f96c68c36f22290ae908999"},{"version":"73e654113ed338086b7549141ab127b7646ed7f51f9a559ce8873290a991c8af","signature":"060b73fbb370ddb4d790bca51dd91765129a04d4321f5989bcb5469722ae190c"},{"version":"3f1ba5e7aa065073f6341688b22ebd917991ecc9ddb327e5d0b613606fc55ed0","signature":"6b52835e215f2dea36fbdb96e174c45e91467fb18a57ca02bc4a44ad4bfdd557"},{"version":"e8f8e75c7d83bb81b9fb8e3cf8a7fed915e113a35d2d46fbb121021aaa52eeb1","signature":"b248a2c86a9608ef3f4c5480fda53e28daaa858fdfbfbe9ed31e0e0a0aa83b69"},{"version":"20daec6882e1d9ff1c3871026eeea68972c45a7d46e33e35499027849c959bff","signature":"d38038c1daa64482b31d0ec1fa336d9a47b09e647cf788ceef2fb3e8310bb09f"},{"version":"e84dd27f2c7845aa5afc26cb491566dd4ffb77906ed067bf8b94d1b35591b42c","signature":"c3a6919d157c2437257cfa8eff0d2f60d804630748d55f96360ddc8ce93f15b3"},{"version":"42221ab620b5c643d8acf4ebf0be653237ae703e61d75d080865169dc216b709","signature":"5e5971464c4425f6c6a5bfd8c1b6c144118591a7e1d8178313d44740a3b161fd"},{"version":"73b26e3c7b6eaf55f643c472c43230568ac1bc788fe30a40c90a8c55c32fc4e1","signature":"e81de24f4f00f9548b07e616c9dc22c3a2266807775c56bef9fe46697cc548d1"},{"version":"617bb5ccb64e7d32ee9b1f257e613349414bd811b9a867c5cee310d7cf7b7559","signature":"d8a5707a9f2502bcb4362258f1df33c40256fd5c98fa00dff7c3210a0bb6d0a6"},{"version":"2473eef5cdbb6035fb7c0983edda216231a78e91f501afdb256d4d8497297617","signature":"7e66d9b5e4e3ad7e26f4143447835da4cda365faef0a3892a89c47b2bdf36c86"},{"version":"3a97444a600cf4b4baafe6381add95bc41aa307b9bec159b7425837e06f49244","signature":"f1ad756dfd15039835ab4a1de31f03998aebcf0b9c927a17f33d55bce449bf2a"},{"version":"402c6f70afc7d5df3fdb54e3f664de9ea874af347fe54b814918ae1749b9a957","signature":"088776fa648f7419caaf011b861a29a7b7879f5b0df2bfff046b56f92dcb6ecf"},{"version":"7d6da094cbc76e84428fe4d59076a498c72fe18a28efc07552602b9a059f186c","signature":"5125dcacb1417e6bfaf4ddebbc2c0574f29d8770f0b2f83c478c3a070566342a"},{"version":"fd215c07f5de917879cfef7b20517092933ab9b1c3516164cff05610d5278058","signature":"8fa46771471e73275f627ca29cc6ad4227cbfad15a7a0abcc7027d13867e55ea"},{"version":"8ae8146e7a168e4bbd16f904cddb128b9d2aea21a3d709b57cb9832bbca02791","signature":"804023449340bc984ae9c0b204266ff1716e3bef56550eab1a1527600a1302c7"},{"version":"e0f604652be69ca676b9dc90be6ea363a585c5fc71790124963981133404058b","signature":"b7efcc72fc31290211c9bdd3f09ce55f2bc139043a197dc658421b640e416b28"},{"version":"e24ecdde72c55132e9e3e23864ff74bbeea7e60b554b944dbca00b66e94f8fe1","signature":"15b4d80e51b3ea458c75c3a68644a41024f7d83c12f1b37715a53a8a7f0fe9f8"},{"version":"9d23d162b6ddbc219ce2124e805b08aee6589f631e1ec4024bd0067f554bcd0c","signature":"7df0848e1a42b4e997f23f3d432ef1920a6c3b0587d32aedb6ae851f3b1aee2b"},{"version":"24d9d5ecc018888f466fc0cdcc63967f340313ecd666d27112b5a83e1eeea2c9","signature":"5be7ddc8c1edff3bb3925c3d3e2a999a4ca7fdf33906bebce8f8688e5c85034f"},{"version":"6afa90097461b708ef4888e3a057a83d62e766e1d3b944b84e97503cbc5cacad","signature":"218c2533a5deffeb04f929c81888025e7123f780a7d7308614b6d06bf94e5e84"},{"version":"869bacdcebb7d7ace3ad0ba336e8c91f605a0a1ba58517b20f72ea94c9b4e75f","signature":"b5d1c04406f012961931edc572ce53e835d8308178b58ae127624dbfdc63fec3"},{"version":"ca38d768d9ff57c3fedfdaa821f5969863bfdf7efa6530a30caa7312bb454b65","signature":"e9dd5f52c1e6edc780ececd7b176b1ad8ce106f35a9f0fdb67f3c8668522e839"},{"version":"a8162a55b5afe7c01286b34980e6d2f8125bcb1afef666ec4953b7e15ba4f669","signature":"130c15b5ce27ae9f2a5941a07385d593115dae9075ca3f5387e228e32d4fec9f"},{"version":"f1490b44970b5d97db8307cb82b470a09e71cbe673939a4c41b30e66cb8c2c82","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"84f090849fcf05385e3028adb7e0dd317ef90d2d6e2ce5b3014cc227ad959012","signature":"15a84436cf944e1fd426624372ee52fb1f5e46c515bcb778619e821275942b9e"},{"version":"fb396aed0372a9d07b066357137a71cada3c2cdcf63a943bb5cf54693879170f","signature":"8c2494044864da412ce9916eea8a66342b4a947f88b3dd22c175063aca1dddc4"},{"version":"0866f5c3af2d2991560fe573f7770a5de4df9e8661f3422dc3cdf3d07c7ca77b","signature":"29ee4936c7f6c66e5b967bee5e5c062c89cd6a7697ea354be2c6ef79544d2c5a"},{"version":"5d3de1f16098f5f882e7505d5d1eddb2a9463d9dcbe7b03f022d363e3e9b4cc0","signature":"6b001100afde7b8246b0b6aebe74a5c41c6054666bd4dee6e34521706d3b867b"},{"version":"0a51a88972a90a4308abdffb89d7339455145c55b8f371cb4ee92d88548c4dea","signature":"a208a319c19376e0e8d953d58ddee7b2cc8de3be72e110f97c7fbaa23bf1e5b4"},{"version":"f2492c82b866dbbec1cbf905068d3f10395eba9eddfeb93cd68d7999c7c02e94","signature":"709f62b8c98e1db14602e873218cc5d22f81d64cd88f25adb5b4d2705a7e5d5c"},{"version":"5af20831c647d0f95b2ce4c7d66544b36af5f6ea3a0af0c43478a657bf58feff","signature":"284bf56773e6da050a953484eaca4beaceedce83b49be512a527ce88111a9a1a"},{"version":"1e8c51eaab31c7c7ce8590e80b8663f360aed54caf8cdf2643349ef59ae27876","signature":"1a85409fafbd8616120a0a0e65fde663d6ce75fc66a83cdfa2b6553baea53cdc"},{"version":"85d33ba4097c3f24ceeca365379301c327d5291da44e57bbcf301b68621f3708","signature":"33612a1d9e60be6cb57a6cc5e1b364840ab6930b72464f19bb4361bfd68c37a3"},{"version":"39426a077f479e1b77cd46b3b2341d76963fc3f4832143effe966b22cd77b72f","signature":"976a07c70d961e35f4ff28926415b8d479400e46fb667f664ce10339226b2fe8"},{"version":"f7f1e3147bdda813f8f14187c20ee886cd7cc1f1fe2bf61f678727789cf671ac","signature":"5a6534f5d0435656321853f3e16dd4c7f944162ec9af7a99ff9d0142947bf359"},{"version":"900683c32709e025b93cc18be550bbf2a2e5686e0ac5d058f25468062117a5a7","signature":"27909ca3d149c1c6f45b29b6e2ef4b1cbf709bfe6c0c66276d4541f6afc8031d"},{"version":"8628cb8f0ae9525851a3b3ccb07a60b5043699843befe7226fc554ff4139987b","signature":"d5d357f555e6f34eae1b87fa0d2622cd4d243145c705dc6408ceae7f591cfd40"},{"version":"98697dd9eca9863d7490c6fde283f3018798f1f57df1ac4ad754382ac2d25b80","signature":"b546c64e0e45bd8ce4806cc8e541c99c161ea07eedd9259dd3bd33bda8713a36"},{"version":"6bb36f0e8fc014f9bd759d81ef3e5ceac258f359e4ae19e2b856150577b37a18","signature":"a3432be9faf500053701c7c7dd0117c0c23fefe51807ee74829db6507736e463"},{"version":"6dfb3b78da41b3548540f79e75959039b42107d89f168fc12094d86fdbc6a21b","signature":"6cb10423acf5726011131bf6e79754dc18b412ec8f335a09d1de6045bfd443fe"},{"version":"a5e79bb8f19b20dbe0c68bd79b290a2b444c6b545cfb78d31f963c8e250df9a2","signature":"80a3bbe0e4fdfaac2c0a8b92a3ed66d3ded5e8f454c5790c8d593872fc1197f1"},{"version":"4cce334e4debece9a8fe9e1731582299a42207058c7db50729d63fcff8189a22","signature":"043b2a84437ceee41987ecf59ccc88c502430359ca7409da82ebf77a8af59e70"},{"version":"09eca3ede06fd964fbc9b611200a85e0095a62a67ac473b8bd8969421e4314ac","signature":"ba9da035a3894eadb8a2c45f8ed91994ff56124e47b3e830bc27102edf619eb0"},{"version":"56d9ac804157926d6ceda4dd4c93e23c90ad7f81dd3f7614a43583f835df4507","signature":"38871433314c5aede5ab826b99eb496befb9a5e16fdf0c7c185f963ea76fcac8"},{"version":"9f1a98de72fe3c00171db4a8470143cd5da2609cec08f3a0c21073c3ec791077","signature":"5ef4059db4d4ac518e838c27b560782f3dc39458004a782ac0a9df9f7ed9fde1"},{"version":"0b500f7ba9b8572cabcfffb8db35b1bf475ff9c6c414cb546c502a2f39546c10","signature":"d248a78d5e4bea035815dd54f943fedfc69fd7e6c55d6fe5af957c20f147fb0a"},{"version":"a3702eb08896a20432aa995551eef2fffe5848e86a8837eb6afdbcc024bd5638","signature":"d248a78d5e4bea035815dd54f943fedfc69fd7e6c55d6fe5af957c20f147fb0a"},{"version":"040d8c0ada323eee6b977521ab98ff178cfbcf16b14b6f530b84e2266790db95","signature":"ef57cd44fa3739900a7916419d787a43520a15b23ed25043c828b812d4d2846e"},{"version":"716342c8bf542aa2de88d53224429b2ca4c266482e5f35bc8fe1ad27c47d5633","signature":"99f8cd656806c513d5308d8cf6abfd50d0ace6e9985b6f5babc36f5cb44211c6"},{"version":"41fff361e41fdcd5a4a7b69eab444940dbefb8a4ab206a51b87391eb79916957","signature":"9ac56e2af0dc7c8a14b4a3accd9e41553c15931bfbda0bb14e9e3f7404e33934"},{"version":"eba5d33b7cb69136af29deabe39856b17b1bce74416aeb1db10790cf9b32164b","signature":"d248a78d5e4bea035815dd54f943fedfc69fd7e6c55d6fe5af957c20f147fb0a"},{"version":"e495764208edda0600cb50a50b62f765eb706a6b9db44166dbb6d54c8f9eee45","signature":"b4d58ec0ee5953e935eb7446d08db5c22021be7621c4c3945c132c300a07116a"},{"version":"d471825ec8e3497ec5ade143b603b730d40367341e254a910cdde66cae4fe858","signature":"8b93142525a231ca64d023448ce684dde544b96bc61f095adf81151c70c9ea2a"},{"version":"99634043114e2040cf81b4fb485a7d46d9f0715e51266e1f3938bd53a82b4355","signature":"50985f52f3622f46df590402401a3f65416888995b32d00bd5258de83267dd97"},{"version":"af70162c9b4094b616bebde3e7b043ea144e22734d904af960fffa1547e9a1fe","signature":"fd5c58124257d0bbfbdc08eaa996512bde82dfc89a410a48dfca005579b1aa1a"},{"version":"d05624ba4ce7a30321cc1f68fb8ac971bbb6f403e68447e59fe94af4ab1fb078","signature":"58fdb8e8e3d81cead1a2ac6d74f15cf6281c836e913a791a2bcbad062ea8a0f7"},{"version":"a4c2de4f4a070712ac89e5b02f12c3cc00b2931dc9afea8e3ca965ad1c795870","signature":"50985f52f3622f46df590402401a3f65416888995b32d00bd5258de83267dd97"},{"version":"f6cf6697ebd661c50c8396fbc17aaf8836e8a6ebc81b9cad4d0f4c8e62578a93","signature":"58fdb8e8e3d81cead1a2ac6d74f15cf6281c836e913a791a2bcbad062ea8a0f7"},{"version":"763cadc5f499728f996618011a9dd6e6357f9b874c4c5585415296b53411f4d3","signature":"50985f52f3622f46df590402401a3f65416888995b32d00bd5258de83267dd97"},{"version":"91b54b61a9c044294b627cdafd79ee3fc7062de8b1e462643566fe373fe76dd5","signature":"50985f52f3622f46df590402401a3f65416888995b32d00bd5258de83267dd97"},"2db0dd3aaa2ed285950273ce96ae8a450b45423aa9da2d10e194570f1233fa6b","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","8e9c23ba78aabc2e0a27033f18737a6df754067731e69dc5f52823957d60a4b6","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"e7be367719c613d580d4b27fdf8fe64c9736f48217f4b322c0d63b2971460918","affectsGlobalScope":true},"3d77c73be94570813f8cadd1f05ebc3dc5e2e4fdefe4d340ca20cd018724ee36",{"version":"392eadc2af403dd10b4debfbc655c089a7fa6a9750caeb770cfb30051e55e848","affectsGlobalScope":true},"62f1c00d3d246e0e3cf0224f91e122d560428ec1ccc36bb51d4574a84f1dbad0","53f0960fdcc53d097918adfd8861ffbe0db989c56ffc16c052197bf115da5ed6",{"version":"662163e5327f260b23ca0a1a1ad8a74078aabb587c904fcb5ef518986987eaff","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"c48c503c6b3f63baf18257e9a87559b5602a4e960107c762586d2a6a62b64a18","affectsGlobalScope":true},"b0c0d1d13be149f790a75b381b413490f98558649428bb916fd2d71a3f47a134","3c884d9d9ec454bdf0d5a0b8465bf8297d2caa4d853851d92cc417ac6f30b969","0364f8bb461d6e84252412d4e5590feda4eb582f77d47f7a024a7a9ff105dfdc","5433f7f77cd1fd53f45bd82445a4e437b2f6a72a32070e907530a4fea56c30c8","d0ca5d7df114035258a9d01165be309371fcccf0cccd9d57b1453204686d1ed0",{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true},{"version":"9a30b7fefd7f8abbca4828d481c61c18e40fe5ff107e113b1c1fcd2c8dcf2743","affectsGlobalScope":true},"173b6275a81ebdb283b180654890f46516c21199734fed01a773b1c168b8c45c","304f66274aa8119e8d65a49b1cff84cbf803def6afe1b2cc987386e9a9890e22","1b9adafe8a7fefaeaf9099a0e06f602903f6268438147b843a33a5233ac71745","98273274f2dbb79b0b2009b20f74eca4a7146a3447c912d580cd5d2d94a7ae30","c933f7ba4b201c98b14275fd11a14abb950178afd2074703250fe3654fc10cd2","2eaa31492906bc8525aff3c3ec2236e22d90b0dfeee77089f196cd0adf0b3e3b",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"8f5814f29dbaf8bacd1764aebdf1c8a6eb86381f6a188ddbac0fcbaab855ce52","a63d03de72adfb91777784015bd3b4125abd2f5ef867fc5a13920b5649e8f52b","d20e003f3d518a7c1f749dbe27c6ab5e3be7b3c905a48361b04a9557de4a6900",{"version":"1d4d78c8b23c9ddaaaa49485e6adc2ec01086dfe5d8d4d36ca4cdc98d2f7e74a","affectsGlobalScope":true},{"version":"44fc16356b81c0463cc7d7b2b35dcf324d8144136f5bc5ce73ced86f2b3475b5","affectsGlobalScope":true},"575fb200043b11b464db8e42cc64379c5fd322b6d787638e005b5ee98a64486d","6de2f225d942562733e231a695534b30039bdf1875b377bb7255881f0df8ede8","56249fd3ef1f6b90888e606f4ea648c43978ef43a7263aafad64f8d83cd3b8aa","139ad1dc93a503da85b7a0d5f615bddbae61ad796bc68fedd049150db67a1e26","7b166975fdbd3b37afb64707b98bca88e46577bbc6c59871f9383a7df2daacd1","9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","81505c54d7cad0009352eaa21bd923ab7cdee7ec3405357a54d9a5da033a2084","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","3c1f19c7abcda6b3a4cf9438a15c7307a080bd3b51dfd56b198d9f86baf19447","2ee1645e0df9d84467cfe1d67b0ad3003c2f387de55874d565094464ee6f2927",{"version":"7da97d603bf3dd0000f56467c56cb6efaf5f94692980474925fae6c33412b12a","affectsGlobalScope":true},{"version":"9cf780e96b687e4bdfd1907ed26a688c18b89797490a00598fa8b8ab683335dd","affectsGlobalScope":true},"98e00f3613402504bc2a2c9a621800ab48e0a463d1eed062208a4ae98ad8f84c","9ae88ce9f73446c24b2d2452e993b676da1b31fca5ceb7276e7f36279f693ed1","e49d7625faff2a7842e4e7b9b197f972633fca685afcf6b4403400c97d087c36","b82c38abc53922b1b3670c3af6f333c21b735722a8f156e7d357a2da7c53a0a0",{"version":"b423f53647708043299ded4daa68d95c967a2ac30aa1437adc4442129d7d0a6c","affectsGlobalScope":true},{"version":"7245af181218216bacb01fbdf51095617a51661f20d77178c69a377e16fb69ed","affectsGlobalScope":true},"4f0fc7b7f54422bd97cfaf558ddb4bca86893839367b746a8f86b60ac7619673","4cdd8b6b51599180a387cc7c1c50f49eca5ce06595d781638fd0216520d98246","d91a7d8b5655c42986f1bdfe2105c4408f472831c8f20cf11a8c3345b6b56c8c",{"version":"8704423bf338bff381ebc951ed819935d0252d90cd6de7dffe5b0a5debb65d07","affectsGlobalScope":true},"7c6929fd7cbf38499b6a600b91c3b603d1d78395046dc3499b2b92d01418b94b",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"a42be67ed1ddaec743582f41fc219db96a1b69719fccac6d1464321178d610fc",{"version":"90ebf5865e27d8966ef44b073e6e83b0ddd45058bab1d58b1e4b5a47d36396c4","affectsGlobalScope":true}],"root":[[69,71],[102,105],114,138,[155,161],[174,177],187,[189,195],[200,214],[222,239],[324,416]],"options":{"allowJs":true,"allowSyntheticDefaultImports":true,"declaration":true,"esModuleInterop":true,"experimentalDecorators":true,"importHelpers":true,"inlineSources":true,"module":99,"noEmitOnError":true,"outDir":"./","rootDir":"..","sourceMap":true,"strict":true,"target":5,"useDefineForClassFields":false},"fileIdsList":[[249,250],[58],[54,58],[54,58,66],[60],[52,53],[57,130],[51,57,123,125,126,127,128],[51,120,129],[51,129],[57,132],[57,316],[57,314],[51,57,312],[57,123,125,311],[51,57,120,313],[51,312],[57,119],[51,57],[57,121],[57,122],[57,72],[57],[57,127],[57,126],[51,57,121],[57,124],[256,263],[263],[256,263,293,294],[285,287],[293],[263,272,292],[288],[263,264,265,266,280,285,287,289,290],[264,265],[285,287,290,297],[285,287,290,295],[268],[258,285],[259,261,263,267,271,273,274,275,276,277,278,279,280,281,282,283,284],[258,286],[260,261,262],[267,273,274],[267,273,274,275,276,278,279],[258,267,268,269,270,273,274,275,276,278],[267,280],[259,267],[267,273,277],[267,272,273],[258,267,271,272,273,274,275],[258,267],[258],[257,259],[261],[258,259,261],[268,269],[153],[141,143,144,145,146,147,148,149,150,151,152,153],[141,142,144,145,146,147,148,149,150,151,152,153],[142,143,144,145,146,147,148,149,150,151,152,153],[141,142,143,145,146,147,148,149,150,151,152,153],[141,142,143,144,146,147,148,149,150,151,152,153],[141,142,143,144,145,147,148,149,150,151,152,153],[141,142,143,144,145,146,148,149,150,151,152,153],[141,142,143,144,145,146,147,149,150,151,152,153],[141,142,143,144,145,146,147,148,150,151,152,153],[141,142,143,144,145,146,147,148,149,151,152,153],[141,142,143,144,145,146,147,148,149,150,152,153],[141,142,143,144,145,146,147,148,149,150,151,153],[141,142,143,144,145,146,147,148,149,150,151,152],[417],[453],[454,459,488],[455,460,466,467,474,485,496],[455,456,466,474],[457,497],[458,459,467,475],[459,485,493],[460,462,466,474],[453,461],[462,463],[466],[464,466],[453,466],[466,467,468,485,496],[466,467,468,481,485,488],[451,454,501],[462,466,469,474,485,496],[466,467,469,470,474,485,493,496],[469,471,485,493,496],[417,418,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503],[466,472],[473,496,501],[462,466,474,485],[475],[476],[453,477],[474,475,478,495,501],[479],[480],[466,481,482],[481,483,497,499],[454,466,485,486,487,488],[454,485,487],[485,486],[488],[489],[453,485],[466,491,492],[491,492],[459,474,485,493],[494],[474,495],[454,469,480,496],[459,497],[485,498],[473,499],[500],[454,459,466,468,477,485,496,499,501],[485,502],[48],[178,179,180],[178],[178,179],[196,197],[51,54],[50,51],[51],[50,51,162],[49,50],[59,60,61,62,63,64,65,66,67],[310],[139],[163],[51,54,55,56],[428,432,496],[428,485,496],[423],[425,428,493,496],[474,493],[504],[423,504],[425,428,474,496],[420,421,424,427,454,466,485,496],[420,426],[424,428,454,488,496,504],[454,504],[444,454,504],[422,423,504],[428],[422,423,424,425,426,427,428,429,430,432,433,434,435,436,437,438,439,440,441,442,443,445,446,447,448,449,450],[428,435,436],[426,428,436,437],[427],[420,423,428],[428,432,436,437],[432],[426,428,431,496],[420,425,426,428,432,435],[454,485],[423,428,444,454,501,504],[172],[47,396],[47,379],[47,222,328,334,344,361,379,396],[47,362,363,364,365,366,367,379],[47,222,344,379],[47],[47,57,68,69,379],[47,57,68,71,73,137,379],[47,57,68,73,138,211,377,379],[47,70,71,377],[47,57,68,69,70,71,73,194,373,374,375,376,379],[47,57,68,69,186,379],[47,57],[47,57,68,69,101,102,140,187,188,194,201,202,203,204,205,206,207,208,379],[47,57,68,69,101,379],[47,57,68,69,73,101,379],[47,57,68,69,73,101,115,137,140,154,155,176,379],[47,57,68,113,138,165,177,201,209,210,211,379],[47,102,209],[47,209],[47,57,68,69,101,113,171,201,212,213,214,215,216,218,221,368,369,370,379],[47,57,68,73,193,211,379],[47,189,190,193],[47,57,68,69,73,189,190,191,192,194,373,379],[47,69,369,379],[47,57,68,69,113,181,221,362,368,369,370,379,386],[47,57,68,69,345,379,381,382,383,384],[47,57,68,69,113,379,380,385],[47,57,68,69,154,201,379],[47,345,385],[47,385],[47,223,230,327],[47,57,68,223],[47,57,68,116,223],[47,57,68,101,223],[47,57,68,164,223,379],[47,57,68,223,324],[47,57,68,69,102,173,379],[47,57,68,140,323,379],[47,102,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,325,326,379],[47,57,68,73],[47,51,379],[47,57,164,174,177,379],[47,57,68,116,155,165,171,173,176,371,379],[47,156,158,159,160,161,174,175,176],[47,156,157,158,159,160,161,175,379],[47,391],[47,222,388,389,390],[47,57,73,379],[47,57,68,73,379],[47,57,212,213,214,379],[47,212,213,214,379],[47,333],[47,329,330,331,332,379],[47,57,102,137,379],[47,343],[47,102,379],[47,335,336,337,338,339,340,341,342,379],[47,69,200,328,334,344,361,371,373,378,379,387,392,393,395],[47,394],[47,57,68,133,137,174,186,379],[47,57,68,133,137,186,323,371,379],[47,102,105],[47,105],[47,114,372],[47,57,68,73,114,137,371,379],[47,57,68,69,73,102,103,104,379],[47,102,114,193,209,377,379],[47,57,68,69,73,102,105,113,379],[47,346,347,348,349,350,351,352,353,354,355,356,357,360],[47,57,379],[47,57,198,379],[47,57,68,354],[47,57,164,379],[47,57,101,379],[47,57,68,140,354],[47,57,68,69,102,379],[47,70,71,102,189,190,193,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,377,379],[47,57,68,371,379],[47,51,70,71,102,189,190,193,328,345,354,377,378],[47,195,200],[47,198,199,379],[47,57,73,113,116,165,174,372,379,393,396],[47,57,73,113,116,165,174,379,393,396],[47,57,73,101,102,113,116,165,174,379,393,396],[47,57,73,113,116,137,165,174,372,379,393,396],[47,57,73,101,113,116,137,165,174,372,379,393,394,396,399],[217],[181],[182,183,184,185],[57,181],[240,241,242,243,244,245,246,247,248,252,253,254,255,299,300,301,302,303,304,305,306,307,308,309,318,319,320,321,322],[51,57,240],[51,57,240,244],[51,57,115,240],[57,240,251],[51,57,184,240,255,291,296,298],[51,57,240,253],[51,57,73,240],[51,57,73,240,253],[51,57,240,315,317],[73,184,253,291,298],[51,57,73,116,240,242],[166,167,168,169,170],[166],[115,116,117,118,134,136],[57,135],[51,57,73],[51,57,73,115],[51,57,115],[51,57,117],[51,57,73,131,133],[220],[219],[106,107,108,109,110,111,112],[74,75,76,77,78,79,80,81,82,83,84,85,88,89,90,91,92,93,94,95,96,97,98,100],[99],[86,87],[87],[86]],"referencedMap":[[251,1],[59,2],[62,3],[60,3],[64,3],[67,4],[66,3],[65,3],[63,3],[61,5],[54,6],[131,7],[129,8],[130,9],[132,10],[133,11],[317,12],[315,13],[316,14],[312,15],[314,16],[313,17],[120,18],[119,19],[122,20],[123,21],[73,22],[72,19],[121,23],[128,24],[127,25],[124,26],[125,27],[165,23],[264,28],[265,29],[295,30],[288,31],[294,32],[293,33],[289,34],[291,35],[297,36],[298,37],[296,38],[269,39],[286,40],[285,41],[287,42],[263,43],[282,44],[284,45],[279,46],[281,47],[273,48],[278,49],[274,50],[276,51],[275,52],[259,53],[261,53],[260,54],[262,55],[280,56],[270,57],[277,53],[188,58],[215,58],[216,58],[199,58],[154,58],[142,59],[143,60],[141,61],[144,62],[145,63],[146,64],[147,65],[148,66],[149,67],[150,68],[151,69],[152,70],[153,71],[417,72],[418,72],[453,73],[454,74],[455,75],[456,76],[457,77],[458,78],[459,79],[460,80],[461,81],[462,82],[463,82],[465,83],[464,84],[466,85],[467,86],[468,87],[452,88],[469,89],[470,90],[471,91],[504,92],[472,93],[473,94],[474,95],[475,96],[476,97],[477,98],[478,99],[479,100],[480,101],[481,102],[482,102],[483,103],[485,104],[487,105],[486,106],[488,107],[489,108],[490,109],[491,110],[492,111],[493,112],[494,113],[495,114],[496,115],[497,116],[498,117],[499,118],[500,119],[501,120],[502,121],[49,122],[181,123],[179,124],[180,125],[198,126],[55,127],[162,128],[50,129],[310,128],[139,129],[163,130],[51,131],[68,132],[311,133],[140,134],[164,135],[57,136],[435,137],[442,138],[434,137],[449,139],[426,140],[425,141],[448,142],[443,143],[446,144],[428,145],[427,146],[423,147],[422,148],[445,149],[424,150],[429,151],[433,151],[451,152],[450,151],[437,153],[438,154],[440,155],[436,156],[439,157],[444,142],[431,158],[432,159],[441,160],[421,161],[447,162],[173,163],[397,164],[208,165],[362,166],[368,167],[367,165],[363,165],[364,165],[366,168],[365,165],[69,165],[222,169],[70,170],[374,171],[71,170],[214,172],[375,173],[376,173],[377,174],[369,165],[187,175],[202,176],[209,177],[102,178],[210,179],[177,180],[212,181],[203,182],[206,182],[204,182],[205,183],[207,183],[371,184],[190,170],[189,170],[213,185],[191,186],[192,186],[398,186],[193,187],[211,170],[370,188],[387,189],[381,176],[385,190],[386,191],[345,170],[380,192],[382,193],[383,193],[384,194],[328,195],[224,196],[225,196],[226,196],[227,196],[228,196],[229,196],[230,196],[231,196],[232,197],[233,198],[234,196],[235,199],[236,196],[237,196],[238,196],[239,196],[325,200],[326,196],[223,201],[324,202],[327,203],[138,204],[156,205],[157,205],[158,205],[159,205],[160,205],[161,205],[175,206],[155,176],[174,207],[378,208],[176,209],[388,169],[392,210],[389,169],[391,211],[390,169],[329,212],[330,213],[331,214],[332,215],[334,216],[333,217],[335,218],[344,219],[336,220],[337,220],[338,220],[339,220],[340,220],[343,221],[342,220],[341,220],[396,222],[395,223],[399,224],[394,225],[103,226],[104,227],[373,228],[372,229],[105,230],[194,231],[114,232],[361,233],[346,234],[347,234],[348,234],[349,234],[350,234],[351,235],[352,234],[353,234],[355,236],[356,237],[357,238],[358,234],[359,239],[354,240],[360,241],[393,242],[379,243],[201,244],[200,245],[195,169],[400,246],[401,247],[402,248],[403,248],[404,246],[405,247],[406,247],[407,247],[408,247],[409,247],[410,249],[411,250],[412,249],[413,249],[414,246],[415,246],[416,246],[218,251],[182,252],[186,253],[183,254],[185,19],[184,19],[323,255],[241,256],[242,256],[240,23],[246,256],[245,257],[244,256],[248,258],[252,259],[299,260],[255,261],[253,256],[306,256],[320,262],[308,256],[300,262],[301,262],[254,263],[307,262],[309,256],[305,256],[322,262],[318,264],[247,256],[321,262],[304,265],[319,256],[303,261],[302,261],[243,266],[171,267],[170,19],[169,19],[167,268],[137,269],[136,270],[135,271],[116,272],[117,273],[118,274],[115,19],[134,275],[221,276],[219,19],[220,277],[111,23],[110,23],[112,23],[106,23],[113,278],[107,23],[108,23],[101,279],[100,280],[99,23],[88,281],[86,282],[87,283]]},"version":"5.5.3"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@operato/data-grist",
|
3
|
-
"version": "7.0.
|
3
|
+
"version": "7.0.21",
|
4
4
|
"description": "User interface for grid (desktop) and list (mobile)",
|
5
5
|
"author": "heartyoh",
|
6
6
|
"main": "dist/index.js",
|
@@ -63,11 +63,11 @@
|
|
63
63
|
"dependencies": {
|
64
64
|
"@material/web": "^1.5.0",
|
65
65
|
"@operato/headroom": "^7.0.0",
|
66
|
-
"@operato/input": "^7.0.
|
67
|
-
"@operato/p13n": "^7.0.
|
68
|
-
"@operato/popup": "^7.0.
|
66
|
+
"@operato/input": "^7.0.20",
|
67
|
+
"@operato/p13n": "^7.0.21",
|
68
|
+
"@operato/popup": "^7.0.20",
|
69
69
|
"@operato/pull-to-refresh": "^7.0.0",
|
70
|
-
"@operato/styles": "^7.0.
|
70
|
+
"@operato/styles": "^7.0.20",
|
71
71
|
"@operato/time-calculator": "^7.0.0",
|
72
72
|
"@operato/utils": "^7.0.5",
|
73
73
|
"i18next": "^23.11.5",
|
@@ -108,5 +108,5 @@
|
|
108
108
|
"prettier --write"
|
109
109
|
]
|
110
110
|
},
|
111
|
-
"gitHead": "
|
111
|
+
"gitHead": "f15b6544c29dda768b9c0205b3c48cd1094f49e4"
|
112
112
|
}
|
@@ -64,7 +64,7 @@ export class DataGridHeader extends LitElement {
|
|
64
64
|
flex: 1;
|
65
65
|
text-overflow: ellipsis;
|
66
66
|
line-height: 1.6;
|
67
|
-
text-transform: capitalize;
|
67
|
+
text-transform: var(--grid-header-text-transform, capitalize);
|
68
68
|
align-self: center;
|
69
69
|
}
|
70
70
|
|
@@ -405,12 +405,12 @@ export class DataGridHeader extends LitElement {
|
|
405
405
|
// absolute position인 popup의 위치 부모는 grist 이므로,
|
406
406
|
// data-grid-header 의 포지션 부모(grist)의 위치로부터 계산해야함.
|
407
407
|
// this의 position을 relative로 하지 못하는 이유 : ox-popup-list가 grid body에 덮히기 때문.
|
408
|
-
const top = parent.offsetTop + parent.offsetHeight
|
409
|
-
const right = this.clientWidth - (parent.offsetLeft + parent.offsetWidth - this.scrollLeft)
|
408
|
+
// const top = parent.offsetTop + parent.offsetHeight
|
409
|
+
// const right = this.clientWidth - (parent.offsetLeft + parent.offsetWidth - this.scrollLeft)
|
410
410
|
|
411
411
|
popup?.open({
|
412
|
-
right,
|
413
|
-
top
|
412
|
+
right: 0,
|
413
|
+
top: parent.offsetHeight
|
414
414
|
})
|
415
415
|
}}
|
416
416
|
>filter_alt</md-icon
|
package/src/data-grist.ts
CHANGED
@@ -392,7 +392,8 @@ export class DataGrist extends LitElement implements DataConsumer {
|
|
392
392
|
column =>
|
393
393
|
column.filter &&
|
394
394
|
'value' in (column.filter as FilterConfigObject) &&
|
395
|
-
(typeof(
|
395
|
+
(typeof (column.filter as FilterConfigObject).value === 'boolean' ||
|
396
|
+
(column.filter as FilterConfigObject).value)
|
396
397
|
)
|
397
398
|
.map(column => {
|
398
399
|
const filter = column.filter as FilterConfigObject
|
@@ -460,6 +461,7 @@ export class DataGrist extends LitElement implements DataConsumer {
|
|
460
461
|
const empty = !this._showSpinner && this._data.records.length == 0
|
461
462
|
|
462
463
|
return html`
|
464
|
+
<slot name="headroom"> </slot>
|
463
465
|
<div id="wrap" @keydown=${(e: KeyboardEvent) => this.onKeydown(e)}>
|
464
466
|
${this.mode == 'GRID'
|
465
467
|
? html`
|
@@ -501,8 +503,6 @@ export class DataGrist extends LitElement implements DataConsumer {
|
|
501
503
|
</div>
|
502
504
|
|
503
505
|
<div id="spinner" ?show=${this._showSpinner}></div>
|
504
|
-
|
505
|
-
<slot name="headroom"> </slot>
|
506
506
|
`
|
507
507
|
}
|
508
508
|
|
package/themes/grist-theme.css
CHANGED
@@ -37,6 +37,7 @@ body {
|
|
37
37
|
--grid-header-filter-title-color: var(--md-sys-color-on-surface);
|
38
38
|
--grid-header-filter-title-font: normal 12px var(--theme-font, 'Roboto');
|
39
39
|
--grid-header-filter-title-icon-color: var(--md-sys-color-on-surface-variant);
|
40
|
+
--grid-header-text-transform: capitalize;
|
40
41
|
|
41
42
|
--grid-body-bottom-border: var(--grid-header-bottom-border);
|
42
43
|
|