@svgrid/grid 2.6.3 → 2.6.4
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/README.md +199 -199
- package/dist/FlexRender.svelte +96 -96
- package/dist/GridFooter.svelte +178 -178
- package/dist/GridMenus.svelte +705 -705
- package/dist/SvAutoComplete.svelte +165 -165
- package/dist/SvAvatar.svelte +75 -75
- package/dist/SvCalendar.svelte +503 -503
- package/dist/SvCarousel.svelte +141 -141
- package/dist/SvCheckBox.svelte +102 -102
- package/dist/SvCircularProgress.svelte +109 -109
- package/dist/SvColorInput.svelte +181 -181
- package/dist/SvComboBox.svelte +275 -275
- package/dist/SvContextMenu.svelte +116 -116
- package/dist/SvCountryInput.svelte +163 -163
- package/dist/SvDrawer.svelte +254 -254
- package/dist/SvDropDownList.svelte +374 -374
- package/dist/SvDurationInput.svelte +126 -126
- package/dist/SvField.svelte +293 -293
- package/dist/SvForm.svelte +437 -437
- package/dist/SvGrid.controller.svelte.d.ts +2 -1
- package/dist/SvGrid.controller.svelte.js +145 -3
- package/dist/SvGrid.css +2846 -2814
- package/dist/SvGrid.svelte +3548 -3490
- package/dist/SvGrid.types.d.ts +61 -0
- package/dist/SvGridChart.svelte +1716 -1716
- package/dist/SvGridChartPanel.svelte +485 -485
- package/dist/SvGridChartView.svelte +70 -70
- package/dist/SvGridDropdown.svelte +728 -728
- package/dist/SvGridSelect.svelte +266 -266
- package/dist/SvGroupCell.svelte +116 -116
- package/dist/SvListBox.svelte +326 -326
- package/dist/SvMaskedInput.svelte +122 -122
- package/dist/SvMenu.svelte +124 -124
- package/dist/SvMenuList.svelte +146 -146
- package/dist/SvMultiSelect.svelte +289 -289
- package/dist/SvNumberInput.svelte +168 -168
- package/dist/SvOtpInput.svelte +158 -158
- package/dist/SvPasswordInput.svelte +151 -151
- package/dist/SvPhoneInput.svelte +133 -133
- package/dist/SvPopover.svelte +197 -197
- package/dist/SvProgress.svelte +116 -116
- package/dist/SvRadioGroup.svelte +107 -107
- package/dist/SvRating.svelte +112 -112
- package/dist/SvResult.svelte +73 -73
- package/dist/SvRichText.svelte +211 -211
- package/dist/SvRowGroupPanel.svelte +170 -170
- package/dist/SvScrollArea.svelte +61 -61
- package/dist/SvSlider.svelte +203 -203
- package/dist/SvSwitchButton.svelte +108 -108
- package/dist/SvTagsInput.svelte +115 -115
- package/dist/SvTextInput.svelte +147 -147
- package/dist/SvTimePicker.svelte +245 -245
- package/dist/SvToaster.svelte +159 -159
- package/dist/SvToggleButton.svelte +85 -85
- package/dist/SvTooltip.svelte +161 -161
- package/dist/SvTour.svelte +208 -208
- package/dist/SvTree.svelte +444 -444
- package/dist/SvTreeSelect.svelte +235 -235
- package/dist/a11y/grid-announcements.d.ts +58 -0
- package/dist/a11y/grid-announcements.js +70 -0
- package/dist/advanced-filter.svelte.d.ts +42 -0
- package/dist/advanced-filter.svelte.js +13 -0
- package/dist/build-api.js +44 -2
- package/dist/cdn/{GridMenus-DL1zrDwf.js → GridMenus-1NLNSqWz.js} +15 -15
- package/dist/cdn/{GridMenus-BoVKgAv8.js → GridMenus-B2Dt25-8.js} +15 -15
- package/dist/cdn/{SvDateTimePicker-CHnUkWcH.js → SvDateTimePicker-DSUhIta8.js} +2 -2
- package/dist/cdn/{SvDateTimePicker-CRQH_U7E.js → SvDateTimePicker-h9kPyszT.js} +2 -2
- package/dist/cdn/{SvGridChart-BwVos976.js → SvGridChart-Bs2GIR2Q.js} +1 -1
- package/dist/cdn/{SvGridChart-BEJmNNx9.js → SvGridChart-CwhFz7GV.js} +1 -1
- package/dist/cdn/{SvGridChartPanel-BOknOkrP.js → SvGridChartPanel-1WXuStzM.js} +1 -1
- package/dist/cdn/{SvGridChartPanel-D2PjII4O.js → SvGridChartPanel-e5_nqNP9.js} +1 -1
- package/dist/cdn/{SvGridChartView-00LPUHL1.js → SvGridChartView-SmPW10dI.js} +1 -1
- package/dist/cdn/{SvGridChartView-BhUEJ5ki.js → SvGridChartView-eSPuJE6g.js} +1 -1
- package/dist/cdn/{SvGridDropdown-D0VdjeR8.js → SvGridDropdown-B1ZcLpgs.js} +1 -1
- package/dist/cdn/{SvGridDropdown-D13MtJ2j.js → SvGridDropdown-CtdbHcIS.js} +1 -1
- package/dist/cdn/{src-M2NfKnjX.js → src-D35VGBU5.js} +5954 -5765
- package/dist/cdn/{src-CEpw6Ato.js → src-D7DLIAPD.js} +3396 -3207
- package/dist/cdn/svgrid.js +9 -9
- package/dist/cdn/svgrid.svelte-external.js +9 -9
- package/dist/chart-export.js +8 -8
- package/dist/filter-operators.d.ts +2 -1
- package/dist/filter-operators.js +5 -6
- package/dist/filtering/excel-filters.d.ts +1 -0
- package/dist/filtering/excel-filters.js +5 -0
- package/dist/filtering/filter-operator-catalogue.d.ts +42 -0
- package/dist/filtering/filter-operator-catalogue.js +42 -0
- package/dist/filtering/predicate-expr.d.ts +78 -0
- package/dist/filtering/predicate-expr.js +1 -0
- package/dist/filtering/row-predicate.d.ts +17 -0
- package/dist/filtering/row-predicate.js +55 -0
- package/dist/grid-messages.d.ts +7 -0
- package/dist/grid-messages.js +7 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +5 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/_svelte_metadata.json +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/_metadata.json +178 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/attachments-qzRy9DX4.js +3843 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/attachments-qzRy9DX4.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/constants-RLNOXCpz.js +23 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/constants-RLNOXCpz.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/dev-DPd12uEU.js +1925 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/dev-DPd12uEU.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/events-CDC4DKuQ.js +206 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/events-CDC4DKuQ.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/flags-BD-lYX7s.js +20 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/flags-BD-lYX7s.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/hydration-D3UBU2t8.js +264 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/hydration-D3UBU2t8.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/legacy-client-B0ZUlbSQ.js +698 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/legacy-client-B0ZUlbSQ.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/package.json +3 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte.js +135 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_animate.js +57 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_animate.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_attachments.js +2 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_compiler.js +46691 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_compiler.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_easing.js +239 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_easing.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_events.js +2 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal.js +6 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_client.js +7 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_disclose-version.js +6 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_disclose-version.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_async.js +7 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_async.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_legacy.js +7 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_legacy.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_tracing.js +7 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_tracing.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_server.js +6 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_legacy.js +85 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_legacy.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_motion.js +561 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_motion.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_reactivity.js +26 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_reactivity.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_reactivity_window.js +124 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_reactivity_window.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_server.js +2 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_store.js +91 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_store.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_transition.js +242 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_transition.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/utils-lObbumRX.js +497 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/utils-lObbumRX.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/utils-mR9mAWyK.js +4929 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/utils-mR9mAWyK.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/validate-CezNmRkM.js +192 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/validate-CezNmRkM.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/version-BHHo0WE-.js +10 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/version-BHHo0WE-.js.map +1 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/warnings-yiExAB06.js +140 -0
- package/dist/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/warnings-yiExAB06.js.map +1 -0
- package/dist/server-data-source.d.ts +34 -0
- package/dist/server-data-source.js +19 -0
- package/dist/svgrid-wrapper.types.d.ts +37 -5
- package/dist/themes/index.js +12 -4
- package/package.json +12 -11
- package/src/FlexRender.svelte +96 -96
- package/src/GridFooter.svelte +178 -178
- package/src/GridMenus.svelte +705 -705
- package/src/SvAutoComplete.svelte +165 -165
- package/src/SvAvatar.svelte +75 -75
- package/src/SvCalendar.svelte +503 -503
- package/src/SvCalendar.test.ts +226 -226
- package/src/SvCarousel.svelte +141 -141
- package/src/SvCheckBox.svelte +102 -102
- package/src/SvCircularProgress.svelte +109 -109
- package/src/SvColorInput.svelte +181 -181
- package/src/SvComboBox.svelte +275 -275
- package/src/SvContextMenu.svelte +116 -116
- package/src/SvCountryInput.svelte +163 -163
- package/src/SvDrawer.svelte +254 -254
- package/src/SvDropDownList.svelte +374 -374
- package/src/SvDurationInput.svelte +126 -126
- package/src/SvField.svelte +293 -293
- package/src/SvForm.svelte +437 -437
- package/src/SvForm.test.ts +411 -411
- package/src/SvGrid.controller.svelte.ts +3858 -3691
- package/src/SvGrid.css +2846 -2814
- package/src/SvGrid.svelte +3548 -3490
- package/src/SvGrid.types.ts +1769 -1708
- package/src/SvGridChart.svelte +1716 -1716
- package/src/SvGridChartPanel.svelte +485 -485
- package/src/SvGridChartView.svelte +70 -70
- package/src/SvGridDropdown.svelte +728 -728
- package/src/SvGridSelect.svelte +266 -266
- package/src/SvGroupCell.svelte +116 -116
- package/src/SvListBox.svelte +326 -326
- package/src/SvMaskedInput.svelte +122 -122
- package/src/SvMenu.svelte +124 -124
- package/src/SvMenu.test.ts +97 -97
- package/src/SvMenuList.svelte +146 -146
- package/src/SvMultiSelect.svelte +289 -289
- package/src/SvNumberInput.svelte +168 -168
- package/src/SvOtpInput.svelte +158 -158
- package/src/SvPasswordInput.svelte +151 -151
- package/src/SvPhoneInput.svelte +133 -133
- package/src/SvPopover.svelte +197 -197
- package/src/SvProgress.svelte +116 -116
- package/src/SvRadioGroup.svelte +107 -107
- package/src/SvRating.svelte +112 -112
- package/src/SvResult.svelte +73 -73
- package/src/SvRichText.svelte +211 -211
- package/src/SvRowGroupPanel.svelte +170 -170
- package/src/SvScrollArea.svelte +61 -61
- package/src/SvSlider.svelte +203 -203
- package/src/SvSwitchButton.svelte +108 -108
- package/src/SvTagsInput.svelte +115 -115
- package/src/SvTextInput.svelte +147 -147
- package/src/SvTimePicker.svelte +245 -245
- package/src/SvToaster.svelte +159 -159
- package/src/SvToaster.test.ts +95 -95
- package/src/SvToggleButton.svelte +85 -85
- package/src/SvTooltip.svelte +161 -161
- package/src/SvTour.svelte +208 -208
- package/src/SvTree.svelte +444 -444
- package/src/SvTreeSelect.svelte +235 -235
- package/src/a11y/dismissable.test.ts +119 -119
- package/src/a11y/dismissable.ts +114 -114
- package/src/a11y/grid-announcements.test.ts +78 -0
- package/src/a11y/grid-announcements.ts +94 -0
- package/src/a11y.announce.test.ts +250 -0
- package/src/a11y.axe.test.ts +194 -0
- package/src/a11y.contract.test.ts +49 -49
- package/src/a11y.test.ts +59 -59
- package/src/a11y.ts +61 -61
- package/src/advanced-filter.svelte.ts +59 -0
- package/src/ai.test.ts +502 -502
- package/src/ai.ts +1391 -1391
- package/src/build-api.coverage.test.ts +633 -633
- package/src/build-api.ts +846 -805
- package/src/builtin-editors.grid.test.ts +85 -85
- package/src/cell-formatting.ts +169 -169
- package/src/cell-render.test.ts +513 -513
- package/src/cell-render.ts +496 -496
- package/src/cell-values.ts +118 -118
- package/src/chart-export.ts +201 -201
- package/src/chart-view.svelte.ts +36 -36
- package/src/chart.ts +2295 -2295
- package/src/collaboration.test.ts +104 -104
- package/src/collaboration.ts +167 -167
- package/src/core.performance.test.ts +30 -30
- package/src/core.ts +1261 -1261
- package/src/createAutocomplete.svelte.ts +132 -132
- package/src/createCombobox.svelte.ts +191 -191
- package/src/createCountryInput.svelte.ts +157 -157
- package/src/createDropdownList.svelte.ts +168 -168
- package/src/createForm.svelte.ts +386 -386
- package/src/createGrid.svelte.ts +42 -42
- package/src/createGrid.test.ts +10 -10
- package/src/createGridState.svelte.ts +17 -17
- package/src/createListbox.svelte.ts +250 -250
- package/src/createMenu.svelte.ts +224 -224
- package/src/createPopoverSelect.svelte.ts +213 -213
- package/src/createSlider.svelte.ts +191 -191
- package/src/createTooltip.svelte.ts +144 -144
- package/src/createTree.svelte.ts +319 -319
- package/src/editing.test.ts +949 -949
- package/src/editing.ts +606 -606
- package/src/editor-contract.ts +170 -170
- package/src/editor-registry.grid.test.ts +144 -144
- package/src/editor-registry.ts +122 -122
- package/src/export-data-api.test.ts +126 -126
- package/src/export-format.test.ts +107 -107
- package/src/export-format.ts +601 -601
- package/src/filter-operators.ts +160 -157
- package/src/filtering/excel-filters.ts +15 -0
- package/src/filtering/filter-operator-catalogue.ts +74 -0
- package/src/filtering/node-entry.test.ts +75 -0
- package/src/filtering/predicate-expr.ts +50 -0
- package/src/filtering/row-predicate.ts +57 -0
- package/src/flex-render.ts +3 -3
- package/src/form-field.ts +127 -127
- package/src/grid-messages.ts +18 -0
- package/src/group-display.test.ts +167 -167
- package/src/group-display.ts +200 -200
- package/src/index.ts +754 -726
- package/src/js-scroller.svelte.ts +173 -173
- package/src/keyboard-handlers.ts +270 -270
- package/src/keyboard.test.ts +59 -59
- package/src/keyboard.ts +97 -97
- package/src/list-nav.test.ts +49 -49
- package/src/list-nav.ts +29 -29
- package/src/list-option.test.ts +56 -56
- package/src/list-option.ts +172 -172
- package/src/menus.ts +567 -567
- package/src/merge-objects.ts +48 -48
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/_svelte_metadata.json +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/_metadata.json +178 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/attachments-qzRy9DX4.js +3843 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/attachments-qzRy9DX4.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/constants-RLNOXCpz.js +23 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/constants-RLNOXCpz.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/dev-DPd12uEU.js +1925 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/dev-DPd12uEU.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/events-CDC4DKuQ.js +206 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/events-CDC4DKuQ.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/flags-BD-lYX7s.js +20 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/flags-BD-lYX7s.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/hydration-D3UBU2t8.js +264 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/hydration-D3UBU2t8.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/legacy-client-B0ZUlbSQ.js +698 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/legacy-client-B0ZUlbSQ.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/package.json +3 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte.js +135 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_animate.js +57 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_animate.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_attachments.js +2 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_compiler.js +46691 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_compiler.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_easing.js +239 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_easing.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_events.js +2 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal.js +6 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_client.js +7 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_disclose-version.js +6 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_disclose-version.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_async.js +7 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_async.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_legacy.js +7 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_legacy.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_tracing.js +7 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_flags_tracing.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_internal_server.js +6 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_legacy.js +85 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_legacy.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_motion.js +561 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_motion.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_reactivity.js +26 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_reactivity.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_reactivity_window.js +124 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_reactivity_window.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_server.js +2 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_store.js +91 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_store.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_transition.js +242 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/svelte_transition.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/utils-lObbumRX.js +497 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/utils-lObbumRX.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/utils-mR9mAWyK.js +4929 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/utils-mR9mAWyK.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/validate-CezNmRkM.js +192 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/validate-CezNmRkM.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/version-BHHo0WE-.js +10 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/version-BHHo0WE-.js.map +1 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/warnings-yiExAB06.js +140 -0
- package/src/node_modules/.vite/vitest/67d8ed22ed986c5e2e948f64d892f30be166cc36/deps___vitest__/warnings-yiExAB06.js.map +1 -0
- package/src/overlays.test.ts +90 -90
- package/src/render-component.ts +28 -28
- package/src/row-resize.ts +210 -210
- package/src/scheduler-model.test.ts +562 -562
- package/src/scheduler-model.ts +872 -872
- package/src/selection.test.ts +754 -754
- package/src/selection.ts +491 -491
- package/src/server-data-source.test.ts +383 -289
- package/src/server-data-source.ts +469 -413
- package/src/sparkline.test.ts +68 -68
- package/src/sparkline.ts +169 -169
- package/src/spreadsheet.test.ts +488 -488
- package/src/spreadsheet.ts +312 -312
- package/src/static-functions.ts +11 -11
- package/src/subscribe.ts +38 -38
- package/src/svgrid-wrapper.types.ts +558 -526
- package/src/svgrid.advanced-filter.test.ts +481 -0
- package/src/svgrid.async-editor-options.test.ts +271 -271
- package/src/svgrid.auto-row-height.test.ts +204 -204
- package/src/svgrid.behavior.test.ts +705 -705
- package/src/svgrid.charting.test.ts +534 -534
- package/src/svgrid.comments-autocomplete.test.ts +123 -123
- package/src/svgrid.context-menu.test.ts +147 -147
- package/src/svgrid.displayed-rows.test.ts +144 -0
- package/src/svgrid.features.test.ts +157 -157
- package/src/svgrid.filter-depth.test.ts +163 -163
- package/src/svgrid.filter-menu-listbox.svelte.test.ts +331 -331
- package/src/svgrid.filter-menu-scroll.test.ts +112 -112
- package/src/svgrid.grand-total.test.ts +188 -188
- package/src/svgrid.group-display-mode.test.ts +171 -171
- package/src/svgrid.group-footers.test.ts +121 -121
- package/src/svgrid.group-pagination.test.ts +153 -153
- package/src/svgrid.group-props-reactive.svelte.test.ts +151 -0
- package/src/svgrid.group-props.test.ts +280 -0
- package/src/svgrid.new-features.wrapper.test.ts +251 -251
- package/src/svgrid.tree-data.test.ts +186 -186
- package/src/svgrid.wrapper.test.ts +63 -63
- package/src/svgriddropdown.async-panel.svelte.test.ts +195 -195
- package/src/test-setup.ts +62 -62
- package/src/themes/contrast.test.ts +112 -0
- package/src/themes/index.ts +286 -278
- package/src/toast-store.svelte.ts +246 -246
- package/src/toast-store.test.ts +147 -147
- package/src/tree-row-model.test.ts +168 -168
- package/src/ui-buttons.test.ts +144 -144
- package/src/ui-inputs.test.ts +118 -118
- package/src/ui-localization.test.ts +113 -113
- package/src/ui-range.test.ts +70 -70
- package/src/ui-selection.test.ts +155 -155
- package/src/ui-tier1.test.ts +142 -142
- package/src/virtual.test.ts +88 -88
- package/src/virtualization/column-virtualizer.test.ts +27 -27
- package/src/virtualization/column-virtualizer.ts +30 -30
- package/src/virtualization/svelte-virtualizer.svelte.ts +26 -26
- package/src/virtualization/types.ts +30 -30
- package/src/virtualization/virtualizer.test.ts +47 -47
- package/src/virtualization/virtualizer.ts +296 -296
- package/themes/catppuccin.css +3 -3
- package/themes/dracula.css +3 -3
- package/themes/nord.css +3 -3
- package/themes/notion.css +4 -4
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
import { Dr as svelte_element_invalid_this_value, Er as store_invalid_shape, Tr as snippet_without_render_tag, dr as has_own_property, hn as dynamic_void_element_content } from "./utils-mR9mAWyK.js";
|
|
2
|
+
import { _ as is_void, b as escape_html } from "./utils-lObbumRX.js";
|
|
3
|
+
//#region ../../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.mjs
|
|
4
|
+
function r(e) {
|
|
5
|
+
var t, f, n = "";
|
|
6
|
+
if ("string" == typeof e || "number" == typeof e) n += e;
|
|
7
|
+
else if ("object" == typeof e) if (Array.isArray(e)) {
|
|
8
|
+
var o = e.length;
|
|
9
|
+
for (t = 0; t < o; t++) e[t] && (f = r(e[t])) && (n && (n += " "), n += f);
|
|
10
|
+
} else for (f in e) e[f] && (n && (n += " "), n += f);
|
|
11
|
+
return n;
|
|
12
|
+
}
|
|
13
|
+
function clsx$1() {
|
|
14
|
+
for (var e, t, f = 0, n = "", o = arguments.length; f < o; f++) (e = arguments[f]) && (t = r(e)) && (n && (n += " "), n += t);
|
|
15
|
+
return n;
|
|
16
|
+
}
|
|
17
|
+
//#endregion
|
|
18
|
+
//#region ../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/internal/shared/attributes.js
|
|
19
|
+
/**
|
|
20
|
+
* `<div translate={false}>` should be rendered as `<div translate="no">` and _not_
|
|
21
|
+
* `<div translate="false">`, which is equivalent to `<div translate="yes">`. There
|
|
22
|
+
* may be other odd cases that need to be added to this list in future
|
|
23
|
+
* @type {Record<string, Map<any, string>>}
|
|
24
|
+
*/
|
|
25
|
+
var replacements = { translate: new Map([[true, "yes"], [false, "no"]]) };
|
|
26
|
+
/**
|
|
27
|
+
* @template V
|
|
28
|
+
* @param {string} name
|
|
29
|
+
* @param {V} value
|
|
30
|
+
* @param {boolean} [is_boolean]
|
|
31
|
+
* @returns {string}
|
|
32
|
+
*/
|
|
33
|
+
function attr(name, value, is_boolean = false) {
|
|
34
|
+
if (name === "hidden" && value !== "until-found") is_boolean = true;
|
|
35
|
+
if (value == null || !value && is_boolean) return "";
|
|
36
|
+
const normalized = has_own_property.call(replacements, name) && replacements[name].get(value) || value;
|
|
37
|
+
return ` ${name}${is_boolean ? `=""` : `="${escape_html(normalized, true)}"`}`;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Small wrapper around clsx to preserve Svelte's (weird) handling of falsy values.
|
|
41
|
+
* TODO Svelte 6 revisit this, and likely turn all falsy values into the empty string (what clsx also does)
|
|
42
|
+
* @param {any} value
|
|
43
|
+
*/
|
|
44
|
+
function clsx(value) {
|
|
45
|
+
if (typeof value === "object") return clsx$1(value);
|
|
46
|
+
else return value ?? "";
|
|
47
|
+
}
|
|
48
|
+
var whitespace = [..." \n\r\f\xA0\v"];
|
|
49
|
+
/**
|
|
50
|
+
* @param {any} value
|
|
51
|
+
* @param {string | null} [hash]
|
|
52
|
+
* @param {Record<string, boolean>} [directives]
|
|
53
|
+
* @returns {string | null}
|
|
54
|
+
*/
|
|
55
|
+
function to_class(value, hash, directives) {
|
|
56
|
+
var classname = value == null ? "" : "" + value;
|
|
57
|
+
if (hash) classname = classname ? classname + " " + hash : hash;
|
|
58
|
+
if (directives) {
|
|
59
|
+
for (var key of Object.keys(directives)) if (directives[key]) classname = classname ? classname + " " + key : key;
|
|
60
|
+
else if (classname.length) {
|
|
61
|
+
var len = key.length;
|
|
62
|
+
var a = 0;
|
|
63
|
+
while ((a = classname.indexOf(key, a)) >= 0) {
|
|
64
|
+
var b = a + len;
|
|
65
|
+
if ((a === 0 || whitespace.includes(classname[a - 1])) && (b === classname.length || whitespace.includes(classname[b]))) classname = (a === 0 ? "" : classname.substring(0, a)) + classname.substring(b + 1);
|
|
66
|
+
else a = b;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
return classname === "" ? null : classname;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
*
|
|
74
|
+
* @param {Record<string,any>} styles
|
|
75
|
+
* @param {boolean} important
|
|
76
|
+
*/
|
|
77
|
+
function append_styles(styles, important = false) {
|
|
78
|
+
var separator = important ? " !important;" : ";";
|
|
79
|
+
var css = "";
|
|
80
|
+
for (var key of Object.keys(styles)) {
|
|
81
|
+
var value = styles[key];
|
|
82
|
+
if (value != null && value !== "") css += " " + key + ": " + value + separator;
|
|
83
|
+
}
|
|
84
|
+
return css;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* @param {string} name
|
|
88
|
+
* @returns {string}
|
|
89
|
+
*/
|
|
90
|
+
function to_css_name(name) {
|
|
91
|
+
if (name[0] !== "-" || name[1] !== "-") return name.toLowerCase();
|
|
92
|
+
return name;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* @param {any} value
|
|
96
|
+
* @param {Record<string, any> | [Record<string, any>, Record<string, any>]} [styles]
|
|
97
|
+
* @returns {string | null}
|
|
98
|
+
*/
|
|
99
|
+
function to_style(value, styles) {
|
|
100
|
+
if (styles) {
|
|
101
|
+
var new_style = "";
|
|
102
|
+
/** @type {Record<string,any> | undefined} */
|
|
103
|
+
var normal_styles;
|
|
104
|
+
/** @type {Record<string,any> | undefined} */
|
|
105
|
+
var important_styles;
|
|
106
|
+
if (Array.isArray(styles)) {
|
|
107
|
+
normal_styles = styles[0];
|
|
108
|
+
important_styles = styles[1];
|
|
109
|
+
} else normal_styles = styles;
|
|
110
|
+
if (value) {
|
|
111
|
+
value = String(value).replaceAll(/\s*\/\*.*?\*\/\s*/g, "").trim();
|
|
112
|
+
/** @type {boolean | '"' | "'"} */
|
|
113
|
+
var in_str = false;
|
|
114
|
+
var in_apo = 0;
|
|
115
|
+
var in_comment = false;
|
|
116
|
+
var reserved_names = [];
|
|
117
|
+
if (normal_styles) reserved_names.push(...Object.keys(normal_styles).map(to_css_name));
|
|
118
|
+
if (important_styles) reserved_names.push(...Object.keys(important_styles).map(to_css_name));
|
|
119
|
+
var start_index = 0;
|
|
120
|
+
var name_index = -1;
|
|
121
|
+
const len = value.length;
|
|
122
|
+
for (var i = 0; i < len; i++) {
|
|
123
|
+
var c = value[i];
|
|
124
|
+
if (in_comment) {
|
|
125
|
+
if (c === "/" && value[i - 1] === "*") in_comment = false;
|
|
126
|
+
} else if (in_str) {
|
|
127
|
+
if (in_str === c) in_str = false;
|
|
128
|
+
} else if (c === "/" && value[i + 1] === "*") in_comment = true;
|
|
129
|
+
else if (c === "\"" || c === "'") in_str = c;
|
|
130
|
+
else if (c === "(") in_apo++;
|
|
131
|
+
else if (c === ")") in_apo--;
|
|
132
|
+
if (!in_comment && in_str === false && in_apo === 0) {
|
|
133
|
+
if (c === ":" && name_index === -1) name_index = i;
|
|
134
|
+
else if (c === ";" || i === len - 1) {
|
|
135
|
+
if (name_index !== -1) {
|
|
136
|
+
var name = to_css_name(value.substring(start_index, name_index).trim());
|
|
137
|
+
if (!reserved_names.includes(name)) {
|
|
138
|
+
if (c !== ";") i++;
|
|
139
|
+
var property = value.substring(start_index, i).trim();
|
|
140
|
+
new_style += " " + property + ";";
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
start_index = i + 1;
|
|
144
|
+
name_index = -1;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
if (normal_styles) new_style += append_styles(normal_styles);
|
|
150
|
+
if (important_styles) new_style += append_styles(important_styles, true);
|
|
151
|
+
new_style = new_style.trim();
|
|
152
|
+
return new_style === "" ? null : new_style;
|
|
153
|
+
}
|
|
154
|
+
return value == null ? null : String(value);
|
|
155
|
+
}
|
|
156
|
+
//#endregion
|
|
157
|
+
//#region ../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/internal/shared/validate.js
|
|
158
|
+
/**
|
|
159
|
+
* @param {() => string} tag_fn
|
|
160
|
+
* @returns {void}
|
|
161
|
+
*/
|
|
162
|
+
function validate_void_dynamic_element(tag_fn) {
|
|
163
|
+
const tag = tag_fn();
|
|
164
|
+
if (tag && is_void(tag)) dynamic_void_element_content(tag);
|
|
165
|
+
}
|
|
166
|
+
/** @param {() => unknown} tag_fn */
|
|
167
|
+
function validate_dynamic_element_tag(tag_fn) {
|
|
168
|
+
const tag = tag_fn();
|
|
169
|
+
if (tag && !(typeof tag === "string")) svelte_element_invalid_this_value();
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* @param {any} store
|
|
173
|
+
* @param {string} name
|
|
174
|
+
*/
|
|
175
|
+
function validate_store(store, name) {
|
|
176
|
+
if (store != null && typeof store.subscribe !== "function") store_invalid_shape(name);
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* @template {(...args: any[]) => unknown} T
|
|
180
|
+
* @param {T} fn
|
|
181
|
+
*/
|
|
182
|
+
function prevent_snippet_stringification(fn) {
|
|
183
|
+
fn.toString = () => {
|
|
184
|
+
snippet_without_render_tag();
|
|
185
|
+
return "";
|
|
186
|
+
};
|
|
187
|
+
return fn;
|
|
188
|
+
}
|
|
189
|
+
//#endregion
|
|
190
|
+
export { attr as a, to_style as c, validate_void_dynamic_element as i, validate_dynamic_element_tag as n, clsx as o, validate_store as r, to_class as s, prevent_snippet_stringification as t };
|
|
191
|
+
|
|
192
|
+
//# sourceMappingURL=validate-CezNmRkM.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validate-CezNmRkM.js","names":["clsx","_clsx"],"sources":["../../../../../../../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.mjs","../../../../../../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/internal/shared/attributes.js","../../../../../../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/internal/shared/validate.js"],"sourcesContent":["function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=\" \"),n+=f)}else for(f in e)e[f]&&(n&&(n+=\" \"),n+=f);return n}export function clsx(){for(var e,t,f=0,n=\"\",o=arguments.length;f<o;f++)(e=arguments[f])&&(t=r(e))&&(n&&(n+=\" \"),n+=t);return n}export default clsx;","import { escape_html } from '../../escaping.js';\nimport { clsx as _clsx } from 'clsx';\nimport { has_own_property } from './utils.js';\n\n/**\n * `<div translate={false}>` should be rendered as `<div translate=\"no\">` and _not_\n * `<div translate=\"false\">`, which is equivalent to `<div translate=\"yes\">`. There\n * may be other odd cases that need to be added to this list in future\n * @type {Record<string, Map<any, string>>}\n */\nconst replacements = {\n\ttranslate: new Map([\n\t\t[true, 'yes'],\n\t\t[false, 'no']\n\t])\n};\n\n/**\n * @template V\n * @param {string} name\n * @param {V} value\n * @param {boolean} [is_boolean]\n * @returns {string}\n */\nexport function attr(name, value, is_boolean = false) {\n\t// attribute hidden for values other than \"until-found\" behaves like a boolean attribute\n\tif (name === 'hidden' && value !== 'until-found') {\n\t\tis_boolean = true;\n\t}\n\tif (value == null || (!value && is_boolean)) return '';\n\tconst normalized =\n\t\t(has_own_property.call(replacements, name) && replacements[name].get(value)) || value;\n\tconst assignment = is_boolean ? `=\"\"` : `=\"${escape_html(normalized, true)}\"`;\n\treturn ` ${name}${assignment}`;\n}\n\n/**\n * Small wrapper around clsx to preserve Svelte's (weird) handling of falsy values.\n * TODO Svelte 6 revisit this, and likely turn all falsy values into the empty string (what clsx also does)\n * @param {any} value\n */\nexport function clsx(value) {\n\tif (typeof value === 'object') {\n\t\treturn _clsx(value);\n\t} else {\n\t\treturn value ?? '';\n\t}\n}\n\nconst whitespace = [...' \\t\\n\\r\\f\\u00a0\\u000b\\ufeff'];\n\n/**\n * @param {any} value\n * @param {string | null} [hash]\n * @param {Record<string, boolean>} [directives]\n * @returns {string | null}\n */\nexport function to_class(value, hash, directives) {\n\tvar classname = value == null ? '' : '' + value;\n\n\tif (hash) {\n\t\tclassname = classname ? classname + ' ' + hash : hash;\n\t}\n\n\tif (directives) {\n\t\tfor (var key of Object.keys(directives)) {\n\t\t\tif (directives[key]) {\n\t\t\t\tclassname = classname ? classname + ' ' + key : key;\n\t\t\t} else if (classname.length) {\n\t\t\t\tvar len = key.length;\n\t\t\t\tvar a = 0;\n\n\t\t\t\twhile ((a = classname.indexOf(key, a)) >= 0) {\n\t\t\t\t\tvar b = a + len;\n\n\t\t\t\t\tif (\n\t\t\t\t\t\t(a === 0 || whitespace.includes(classname[a - 1])) &&\n\t\t\t\t\t\t(b === classname.length || whitespace.includes(classname[b]))\n\t\t\t\t\t) {\n\t\t\t\t\t\tclassname = (a === 0 ? '' : classname.substring(0, a)) + classname.substring(b + 1);\n\t\t\t\t\t} else {\n\t\t\t\t\t\ta = b;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn classname === '' ? null : classname;\n}\n\n/**\n *\n * @param {Record<string,any>} styles\n * @param {boolean} important\n */\nfunction append_styles(styles, important = false) {\n\tvar separator = important ? ' !important;' : ';';\n\tvar css = '';\n\n\tfor (var key of Object.keys(styles)) {\n\t\tvar value = styles[key];\n\t\tif (value != null && value !== '') {\n\t\t\tcss += ' ' + key + ': ' + value + separator;\n\t\t}\n\t}\n\n\treturn css;\n}\n\n/**\n * @param {string} name\n * @returns {string}\n */\nfunction to_css_name(name) {\n\tif (name[0] !== '-' || name[1] !== '-') {\n\t\treturn name.toLowerCase();\n\t}\n\treturn name;\n}\n\n/**\n * @param {any} value\n * @param {Record<string, any> | [Record<string, any>, Record<string, any>]} [styles]\n * @returns {string | null}\n */\nexport function to_style(value, styles) {\n\tif (styles) {\n\t\tvar new_style = '';\n\n\t\t/** @type {Record<string,any> | undefined} */\n\t\tvar normal_styles;\n\n\t\t/** @type {Record<string,any> | undefined} */\n\t\tvar important_styles;\n\n\t\tif (Array.isArray(styles)) {\n\t\t\tnormal_styles = styles[0];\n\t\t\timportant_styles = styles[1];\n\t\t} else {\n\t\t\tnormal_styles = styles;\n\t\t}\n\n\t\tif (value) {\n\t\t\tvalue = String(value)\n\t\t\t\t.replaceAll(/\\s*\\/\\*.*?\\*\\/\\s*/g, '')\n\t\t\t\t.trim();\n\n\t\t\t/** @type {boolean | '\"' | \"'\"} */\n\t\t\tvar in_str = false;\n\t\t\tvar in_apo = 0;\n\t\t\tvar in_comment = false;\n\n\t\t\tvar reserved_names = [];\n\n\t\t\tif (normal_styles) {\n\t\t\t\treserved_names.push(...Object.keys(normal_styles).map(to_css_name));\n\t\t\t}\n\t\t\tif (important_styles) {\n\t\t\t\treserved_names.push(...Object.keys(important_styles).map(to_css_name));\n\t\t\t}\n\n\t\t\tvar start_index = 0;\n\t\t\tvar name_index = -1;\n\n\t\t\tconst len = value.length;\n\t\t\tfor (var i = 0; i < len; i++) {\n\t\t\t\tvar c = value[i];\n\n\t\t\t\tif (in_comment) {\n\t\t\t\t\tif (c === '/' && value[i - 1] === '*') {\n\t\t\t\t\t\tin_comment = false;\n\t\t\t\t\t}\n\t\t\t\t} else if (in_str) {\n\t\t\t\t\tif (in_str === c) {\n\t\t\t\t\t\tin_str = false;\n\t\t\t\t\t}\n\t\t\t\t} else if (c === '/' && value[i + 1] === '*') {\n\t\t\t\t\tin_comment = true;\n\t\t\t\t} else if (c === '\"' || c === \"'\") {\n\t\t\t\t\tin_str = c;\n\t\t\t\t} else if (c === '(') {\n\t\t\t\t\tin_apo++;\n\t\t\t\t} else if (c === ')') {\n\t\t\t\t\tin_apo--;\n\t\t\t\t}\n\n\t\t\t\tif (!in_comment && in_str === false && in_apo === 0) {\n\t\t\t\t\tif (c === ':' && name_index === -1) {\n\t\t\t\t\t\tname_index = i;\n\t\t\t\t\t} else if (c === ';' || i === len - 1) {\n\t\t\t\t\t\tif (name_index !== -1) {\n\t\t\t\t\t\t\tvar name = to_css_name(value.substring(start_index, name_index).trim());\n\n\t\t\t\t\t\t\tif (!reserved_names.includes(name)) {\n\t\t\t\t\t\t\t\tif (c !== ';') {\n\t\t\t\t\t\t\t\t\ti++;\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\tvar property = value.substring(start_index, i).trim();\n\t\t\t\t\t\t\t\tnew_style += ' ' + property + ';';\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tstart_index = i + 1;\n\t\t\t\t\t\tname_index = -1;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (normal_styles) {\n\t\t\tnew_style += append_styles(normal_styles);\n\t\t}\n\n\t\tif (important_styles) {\n\t\t\tnew_style += append_styles(important_styles, true);\n\t\t}\n\n\t\tnew_style = new_style.trim();\n\t\treturn new_style === '' ? null : new_style;\n\t}\n\n\treturn value == null ? null : String(value);\n}\n","import { is_void } from '../../utils.js';\nimport * as w from './warnings.js';\nimport * as e from './errors.js';\n\nexport { invalid_default_snippet } from './errors.js';\n\n/**\n * @param {() => string} tag_fn\n * @returns {void}\n */\nexport function validate_void_dynamic_element(tag_fn) {\n\tconst tag = tag_fn();\n\tif (tag && is_void(tag)) {\n\t\tw.dynamic_void_element_content(tag);\n\t}\n}\n\n/** @param {() => unknown} tag_fn */\nexport function validate_dynamic_element_tag(tag_fn) {\n\tconst tag = tag_fn();\n\tconst is_string = typeof tag === 'string';\n\tif (tag && !is_string) {\n\t\te.svelte_element_invalid_this_value();\n\t}\n}\n\n/**\n * @param {any} store\n * @param {string} name\n */\nexport function validate_store(store, name) {\n\tif (store != null && typeof store.subscribe !== 'function') {\n\t\te.store_invalid_shape(name);\n\t}\n}\n\n/**\n * @template {(...args: any[]) => unknown} T\n * @param {T} fn\n */\nexport function prevent_snippet_stringification(fn) {\n\tfn.toString = () => {\n\t\te.snippet_without_render_tag();\n\t\treturn '';\n\t};\n\treturn fn;\n}\n"],"x_google_ignoreList":[0,1,2],"mappings":";;;AAAA,SAAS,EAAE,GAAE;CAAC,IAAI,GAAE,GAAE,IAAE;CAAG,IAAG,YAAU,OAAO,KAAG,YAAU,OAAO,GAAE,KAAG;MAAO,IAAG,YAAU,OAAO,GAAE,IAAG,MAAM,QAAQ,CAAC,GAAE;EAAC,IAAI,IAAE,EAAE;EAAO,KAAI,IAAE,GAAE,IAAE,GAAE,KAAI,EAAE,OAAK,IAAE,EAAE,EAAE,EAAE,OAAK,MAAI,KAAG,MAAK,KAAG;CAAE,OAAM,KAAI,KAAK,GAAE,EAAE,OAAK,MAAI,KAAG,MAAK,KAAG;CAAG,OAAO;AAAC;AAAC,SAAgBA,SAAM;CAAC,KAAI,IAAI,GAAE,GAAE,IAAE,GAAE,IAAE,IAAG,IAAE,UAAU,QAAO,IAAE,GAAE,KAAI,CAAC,IAAE,UAAU,QAAM,IAAE,EAAE,CAAC,OAAK,MAAI,KAAG,MAAK,KAAG;CAAG,OAAO;AAAC;;;;;;;;;ACU/W,IAAM,eAAe,EACpB,WAAW,IAAI,IAAI,CAClB,CAAC,MAAM,KAAK,GACZ,CAAC,OAAO,IAAI,CACb,CAAC,EACF;;;;;;;;AASA,SAAgB,KAAK,MAAM,OAAO,aAAa,OAAO;CAErD,IAAI,SAAS,YAAY,UAAU,eAClC,aAAa;CAEd,IAAI,SAAS,QAAS,CAAC,SAAS,YAAa,OAAO;CACpD,MAAM,aACJ,iBAAiB,KAAK,cAAc,IAAI,KAAK,aAAa,MAAM,IAAI,KAAK,KAAM;CAEjF,OAAO,IAAI,OADQ,aAAa,QAAQ,KAAK,YAAY,YAAY,IAAI,EAAE;AAE5E;;;;;;AAOA,SAAgB,KAAK,OAAO;CAC3B,IAAI,OAAO,UAAU,UACpB,OAAOC,OAAM,KAAK;MAElB,OAAO,SAAS;AAElB;AAEA,IAAM,aAAa,CAAC,GAAG,iBAA6B;;;;;;;AAQpD,SAAgB,SAAS,OAAO,MAAM,YAAY;CACjD,IAAI,YAAY,SAAS,OAAO,KAAK,KAAK;CAE1C,IAAI,MACH,YAAY,YAAY,YAAY,MAAM,OAAO;CAGlD,IAAI;OACE,IAAI,OAAO,OAAO,KAAK,UAAU,GACrC,IAAI,WAAW,MACd,YAAY,YAAY,YAAY,MAAM,MAAM;OAC1C,IAAI,UAAU,QAAQ;GAC5B,IAAI,MAAM,IAAI;GACd,IAAI,IAAI;GAER,QAAQ,IAAI,UAAU,QAAQ,KAAK,CAAC,MAAM,GAAG;IAC5C,IAAI,IAAI,IAAI;IAEZ,KACE,MAAM,KAAK,WAAW,SAAS,UAAU,IAAI,EAAE,OAC/C,MAAM,UAAU,UAAU,WAAW,SAAS,UAAU,EAAE,IAE3D,aAAa,MAAM,IAAI,KAAK,UAAU,UAAU,GAAG,CAAC,KAAK,UAAU,UAAU,IAAI,CAAC;SAElF,IAAI;GAEN;EACD;;CAIF,OAAO,cAAc,KAAK,OAAO;AAClC;;;;;;AAOA,SAAS,cAAc,QAAQ,YAAY,OAAO;CACjD,IAAI,YAAY,YAAY,iBAAiB;CAC7C,IAAI,MAAM;CAEV,KAAK,IAAI,OAAO,OAAO,KAAK,MAAM,GAAG;EACpC,IAAI,QAAQ,OAAO;EACnB,IAAI,SAAS,QAAQ,UAAU,IAC9B,OAAO,MAAM,MAAM,OAAO,QAAQ;CAEpC;CAEA,OAAO;AACR;;;;;AAMA,SAAS,YAAY,MAAM;CAC1B,IAAI,KAAK,OAAO,OAAO,KAAK,OAAO,KAClC,OAAO,KAAK,YAAY;CAEzB,OAAO;AACR;;;;;;AAOA,SAAgB,SAAS,OAAO,QAAQ;CACvC,IAAI,QAAQ;EACX,IAAI,YAAY;;EAGhB,IAAI;;EAGJ,IAAI;EAEJ,IAAI,MAAM,QAAQ,MAAM,GAAG;GAC1B,gBAAgB,OAAO;GACvB,mBAAmB,OAAO;EAC3B,OACC,gBAAgB;EAGjB,IAAI,OAAO;GACV,QAAQ,OAAO,KAAK,EAClB,WAAW,sBAAsB,EAAE,EACnC,KAAK;;GAGP,IAAI,SAAS;GACb,IAAI,SAAS;GACb,IAAI,aAAa;GAEjB,IAAI,iBAAiB,CAAC;GAEtB,IAAI,eACH,eAAe,KAAK,GAAG,OAAO,KAAK,aAAa,EAAE,IAAI,WAAW,CAAC;GAEnE,IAAI,kBACH,eAAe,KAAK,GAAG,OAAO,KAAK,gBAAgB,EAAE,IAAI,WAAW,CAAC;GAGtE,IAAI,cAAc;GAClB,IAAI,aAAa;GAEjB,MAAM,MAAM,MAAM;GAClB,KAAK,IAAI,IAAI,GAAG,IAAI,KAAK,KAAK;IAC7B,IAAI,IAAI,MAAM;IAEd,IAAI;SACC,MAAM,OAAO,MAAM,IAAI,OAAO,KACjC,aAAa;IAAA,OAER,IAAI;SACN,WAAW,GACd,SAAS;IAAA,OAEJ,IAAI,MAAM,OAAO,MAAM,IAAI,OAAO,KACxC,aAAa;SACP,IAAI,MAAM,QAAO,MAAM,KAC7B,SAAS;SACH,IAAI,MAAM,KAChB;SACM,IAAI,MAAM,KAChB;IAGD,IAAI,CAAC,cAAc,WAAW,SAAS,WAAW;SAC7C,MAAM,OAAO,eAAe,IAC/B,aAAa;UACP,IAAI,MAAM,OAAO,MAAM,MAAM,GAAG;MACtC,IAAI,eAAe,IAAI;OACtB,IAAI,OAAO,YAAY,MAAM,UAAU,aAAa,UAAU,EAAE,KAAK,CAAC;OAEtE,IAAI,CAAC,eAAe,SAAS,IAAI,GAAG;QACnC,IAAI,MAAM,KACT;QAGD,IAAI,WAAW,MAAM,UAAU,aAAa,CAAC,EAAE,KAAK;QACpD,aAAa,MAAM,WAAW;OAC/B;MACD;MAEA,cAAc,IAAI;MAClB,aAAa;KACd;;GAEF;EACD;EAEA,IAAI,eACH,aAAa,cAAc,aAAa;EAGzC,IAAI,kBACH,aAAa,cAAc,kBAAkB,IAAI;EAGlD,YAAY,UAAU,KAAK;EAC3B,OAAO,cAAc,KAAK,OAAO;CAClC;CAEA,OAAO,SAAS,OAAO,OAAO,OAAO,KAAK;AAC3C;;;;;;;ACtNA,SAAgB,8BAA8B,QAAQ;CACrD,MAAM,MAAM,OAAO;CACnB,IAAI,OAAO,QAAQ,GAAG,GACrB,6BAA+B,GAAG;AAEpC;;AAGA,SAAgB,6BAA6B,QAAQ;CACpD,MAAM,MAAM,OAAO;CAEnB,IAAI,OAAO,EADO,OAAO,QAAQ,WAEhC,kCAAoC;AAEtC;;;;;AAMA,SAAgB,eAAe,OAAO,MAAM;CAC3C,IAAI,SAAS,QAAQ,OAAO,MAAM,cAAc,YAC/C,oBAAsB,IAAI;AAE5B;;;;;AAMA,SAAgB,gCAAgC,IAAI;CACnD,GAAG,iBAAiB;EACnB,2BAA6B;EAC7B,OAAO;CACR;CACA,OAAO;AACR"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
//#region ../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/version.js
|
|
2
|
+
/**
|
|
3
|
+
* The current version, as set in package.json.
|
|
4
|
+
* @type {string}
|
|
5
|
+
*/
|
|
6
|
+
var VERSION = "5.55.9";
|
|
7
|
+
//#endregion
|
|
8
|
+
export { VERSION as t };
|
|
9
|
+
|
|
10
|
+
//# sourceMappingURL=version-BHHo0WE-.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"version-BHHo0WE-.js","names":[],"sources":["../../../../../../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/version.js"],"sourcesContent":["// generated during release, do not modify\n\n/**\n * The current version, as set in package.json.\n * @type {string}\n */\nexport const VERSION = '5.55.9';\nexport const PUBLIC_VERSION = '5';\n"],"x_google_ignoreList":[0],"mappings":";;;;;AAMA,IAAa,UAAU"}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
//#region ../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/internal/client/warnings.js
|
|
2
|
+
var bold = "font-weight: bold";
|
|
3
|
+
var normal = "font-weight: normal";
|
|
4
|
+
/**
|
|
5
|
+
* Assignment to `%property%` property (%location%) will evaluate to the right-hand side, not the value of `%property%` following the assignment. This may result in unexpected behaviour.
|
|
6
|
+
* @param {string} property
|
|
7
|
+
* @param {string} location
|
|
8
|
+
*/
|
|
9
|
+
function assignment_value_stale(property, location) {
|
|
10
|
+
console.warn(`%c[svelte] assignment_value_stale\n%cAssignment to \`${property}\` property (${location}) will evaluate to the right-hand side, not the value of \`${property}\` following the assignment. This may result in unexpected behaviour.\nhttps://svelte.dev/e/assignment_value_stale`, bold, normal);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Detected reactivity loss when reading `%name%`. This happens when state is read in an async function after an earlier `await`
|
|
14
|
+
* @param {string} name
|
|
15
|
+
*/
|
|
16
|
+
function await_reactivity_loss(name) {
|
|
17
|
+
console.warn(`%c[svelte] await_reactivity_loss\n%cDetected reactivity loss when reading \`${name}\`. This happens when state is read in an async function after an earlier \`await\`\nhttps://svelte.dev/e/await_reactivity_loss`, bold, normal);
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* An async derived, `%name%` (%location%) was not read immediately after it resolved. This often indicates an unnecessary waterfall, which can slow down your app
|
|
21
|
+
* @param {string} name
|
|
22
|
+
* @param {string} location
|
|
23
|
+
*/
|
|
24
|
+
function await_waterfall(name, location) {
|
|
25
|
+
console.warn(`%c[svelte] await_waterfall\n%cAn async derived, \`${name}\` (${location}) was not read immediately after it resolved. This often indicates an unnecessary waterfall, which can slow down your app\nhttps://svelte.dev/e/await_waterfall`, bold, normal);
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* `%binding%` (%location%) is binding to a non-reactive property
|
|
29
|
+
* @param {string} binding
|
|
30
|
+
* @param {string | undefined | null} [location]
|
|
31
|
+
*/
|
|
32
|
+
function binding_property_non_reactive(binding, location) {
|
|
33
|
+
console.warn(`%c[svelte] binding_property_non_reactive\n%c${location ? `\`${binding}\` (${location}) is binding to a non-reactive property` : `\`${binding}\` is binding to a non-reactive property`}\nhttps://svelte.dev/e/binding_property_non_reactive`, bold, normal);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Your `console.%method%` contained `$state` proxies. Consider using `$inspect(...)` or `$state.snapshot(...)` instead
|
|
37
|
+
* @param {string} method
|
|
38
|
+
*/
|
|
39
|
+
function console_log_state(method) {
|
|
40
|
+
console.warn(`%c[svelte] console_log_state\n%cYour \`console.${method}\` contained \`$state\` proxies. Consider using \`$inspect(...)\` or \`$state.snapshot(...)\` instead\nhttps://svelte.dev/e/console_log_state`, bold, normal);
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Reading a derived belonging to a now-destroyed effect may result in stale values
|
|
44
|
+
*/
|
|
45
|
+
function derived_inert() {
|
|
46
|
+
console.warn(`%c[svelte] derived_inert\n%cReading a derived belonging to a now-destroyed effect may result in stale values\nhttps://svelte.dev/e/derived_inert`, bold, normal);
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* %handler% should be a function. Did you mean to %suggestion%?
|
|
50
|
+
* @param {string} handler
|
|
51
|
+
* @param {string} suggestion
|
|
52
|
+
*/
|
|
53
|
+
function event_handler_invalid(handler, suggestion) {
|
|
54
|
+
console.warn(`%c[svelte] event_handler_invalid\n%c${handler} should be a function. Did you mean to ${suggestion}?\nhttps://svelte.dev/e/event_handler_invalid`, bold, normal);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* The `%attribute%` attribute on `%html%` changed its value between server and client renders. The client value, `%value%`, will be ignored in favour of the server value
|
|
58
|
+
* @param {string} attribute
|
|
59
|
+
* @param {string} html
|
|
60
|
+
* @param {string} value
|
|
61
|
+
*/
|
|
62
|
+
function hydration_attribute_changed(attribute, html, value) {
|
|
63
|
+
console.warn(`%c[svelte] hydration_attribute_changed\n%cThe \`${attribute}\` attribute on \`${html}\` changed its value between server and client renders. The client value, \`${value}\`, will be ignored in favour of the server value\nhttps://svelte.dev/e/hydration_attribute_changed`, bold, normal);
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* The value of an `{@html ...}` block %location% changed between server and client renders. The client value will be ignored in favour of the server value
|
|
67
|
+
* @param {string | undefined | null} [location]
|
|
68
|
+
*/
|
|
69
|
+
function hydration_html_changed(location) {
|
|
70
|
+
console.warn(`%c[svelte] hydration_html_changed\n%c${location ? `The value of an \`{@html ...}\` block ${location} changed between server and client renders. The client value will be ignored in favour of the server value` : "The value of an `{@html ...}` block changed between server and client renders. The client value will be ignored in favour of the server value"}\nhttps://svelte.dev/e/hydration_html_changed`, bold, normal);
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Hydration failed because the initial UI does not match what was rendered on the server. The error occurred near %location%
|
|
74
|
+
* @param {string | undefined | null} [location]
|
|
75
|
+
*/
|
|
76
|
+
function hydration_mismatch(location) {
|
|
77
|
+
console.warn(`%c[svelte] hydration_mismatch\n%c${location ? `Hydration failed because the initial UI does not match what was rendered on the server. The error occurred near ${location}` : "Hydration failed because the initial UI does not match what was rendered on the server"}\nhttps://svelte.dev/e/hydration_mismatch`, bold, normal);
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Tried to unmount a component that was not mounted
|
|
81
|
+
*/
|
|
82
|
+
function lifecycle_double_unmount() {
|
|
83
|
+
console.warn(`%c[svelte] lifecycle_double_unmount\n%cTried to unmount a component that was not mounted\nhttps://svelte.dev/e/lifecycle_double_unmount`, bold, normal);
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* %parent% passed property `%prop%` to %child% with `bind:`, but its parent component %owner% did not declare `%prop%` as a binding. Consider creating a binding between %owner% and %parent% (e.g. `bind:%prop%={...}` instead of `%prop%={...}`)
|
|
87
|
+
* @param {string} parent
|
|
88
|
+
* @param {string} prop
|
|
89
|
+
* @param {string} child
|
|
90
|
+
* @param {string} owner
|
|
91
|
+
*/
|
|
92
|
+
function ownership_invalid_binding(parent, prop, child, owner) {
|
|
93
|
+
console.warn(`%c[svelte] ownership_invalid_binding\n%c${parent} passed property \`${prop}\` to ${child} with \`bind:\`, but its parent component ${owner} did not declare \`${prop}\` as a binding. Consider creating a binding between ${owner} and ${parent} (e.g. \`bind:${prop}={...}\` instead of \`${prop}={...}\`)\nhttps://svelte.dev/e/ownership_invalid_binding`, bold, normal);
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Mutating unbound props (`%name%`, at %location%) is strongly discouraged. Consider using `bind:%prop%={...}` in %parent% (or using a callback) instead
|
|
97
|
+
* @param {string} name
|
|
98
|
+
* @param {string} location
|
|
99
|
+
* @param {string} prop
|
|
100
|
+
* @param {string} parent
|
|
101
|
+
*/
|
|
102
|
+
function ownership_invalid_mutation(name, location, prop, parent) {
|
|
103
|
+
console.warn(`%c[svelte] ownership_invalid_mutation\n%cMutating unbound props (\`${name}\`, at ${location}) is strongly discouraged. Consider using \`bind:${prop}={...}\` in ${parent} (or using a callback) instead\nhttps://svelte.dev/e/ownership_invalid_mutation`, bold, normal);
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* The `value` property of a `<select multiple>` element should be an array, but it received a non-array value. The selection will be kept as is.
|
|
107
|
+
*/
|
|
108
|
+
function select_multiple_invalid_value() {
|
|
109
|
+
console.warn(`%c[svelte] select_multiple_invalid_value\n%cThe \`value\` property of a \`<select multiple>\` element should be an array, but it received a non-array value. The selection will be kept as is.\nhttps://svelte.dev/e/select_multiple_invalid_value`, bold, normal);
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Reactive `$state(...)` proxies and the values they proxy have different identities. Because of this, comparisons with `%operator%` will produce unexpected results
|
|
113
|
+
* @param {string} operator
|
|
114
|
+
*/
|
|
115
|
+
function state_proxy_equality_mismatch(operator) {
|
|
116
|
+
console.warn(`%c[svelte] state_proxy_equality_mismatch\n%cReactive \`$state(...)\` proxies and the values they proxy have different identities. Because of this, comparisons with \`${operator}\` will produce unexpected results\nhttps://svelte.dev/e/state_proxy_equality_mismatch`, bold, normal);
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Tried to unmount a state proxy, rather than a component
|
|
120
|
+
*/
|
|
121
|
+
function state_proxy_unmount() {
|
|
122
|
+
console.warn(`%c[svelte] state_proxy_unmount\n%cTried to unmount a state proxy, rather than a component\nhttps://svelte.dev/e/state_proxy_unmount`, bold, normal);
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* A `<svelte:boundary>` `reset` function only resets the boundary the first time it is called
|
|
126
|
+
*/
|
|
127
|
+
function svelte_boundary_reset_noop() {
|
|
128
|
+
console.warn(`%c[svelte] svelte_boundary_reset_noop\n%cA \`<svelte:boundary>\` \`reset\` function only resets the boundary the first time it is called\nhttps://svelte.dev/e/svelte_boundary_reset_noop`, bold, normal);
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* The `slide` transition does not work correctly for elements with `display: %value%`
|
|
132
|
+
* @param {string} value
|
|
133
|
+
*/
|
|
134
|
+
function transition_slide_display(value) {
|
|
135
|
+
console.warn(`%c[svelte] transition_slide_display\n%cThe \`slide\` transition does not work correctly for elements with \`display: ${value}\`\nhttps://svelte.dev/e/transition_slide_display`, bold, normal);
|
|
136
|
+
}
|
|
137
|
+
//#endregion
|
|
138
|
+
export { svelte_boundary_reset_noop as _, console_log_state as a, hydration_attribute_changed as c, lifecycle_double_unmount as d, ownership_invalid_binding as f, state_proxy_unmount as g, state_proxy_equality_mismatch as h, binding_property_non_reactive as i, hydration_html_changed as l, select_multiple_invalid_value as m, await_reactivity_loss as n, derived_inert as o, ownership_invalid_mutation as p, await_waterfall as r, event_handler_invalid as s, assignment_value_stale as t, hydration_mismatch as u, transition_slide_display as v };
|
|
139
|
+
|
|
140
|
+
//# sourceMappingURL=warnings-yiExAB06.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"warnings-yiExAB06.js","names":[],"sources":["../../../../../../../../node_modules/.pnpm/svelte@5.55.9/node_modules/svelte/src/internal/client/warnings.js"],"sourcesContent":["/* This file is generated by scripts/process-messages/index.js. Do not edit! */\n\nimport { DEV } from 'esm-env';\n\nvar bold = 'font-weight: bold';\nvar normal = 'font-weight: normal';\n\n/**\n * Assignment to `%property%` property (%location%) will evaluate to the right-hand side, not the value of `%property%` following the assignment. This may result in unexpected behaviour.\n * @param {string} property\n * @param {string} location\n */\nexport function assignment_value_stale(property, location) {\n\tif (DEV) {\n\t\tconsole.warn(`%c[svelte] assignment_value_stale\\n%cAssignment to \\`${property}\\` property (${location}) will evaluate to the right-hand side, not the value of \\`${property}\\` following the assignment. This may result in unexpected behaviour.\\nhttps://svelte.dev/e/assignment_value_stale`, bold, normal);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/assignment_value_stale`);\n\t}\n}\n\n/**\n * Detected reactivity loss when reading `%name%`. This happens when state is read in an async function after an earlier `await`\n * @param {string} name\n */\nexport function await_reactivity_loss(name) {\n\tif (DEV) {\n\t\tconsole.warn(`%c[svelte] await_reactivity_loss\\n%cDetected reactivity loss when reading \\`${name}\\`. This happens when state is read in an async function after an earlier \\`await\\`\\nhttps://svelte.dev/e/await_reactivity_loss`, bold, normal);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/await_reactivity_loss`);\n\t}\n}\n\n/**\n * An async derived, `%name%` (%location%) was not read immediately after it resolved. This often indicates an unnecessary waterfall, which can slow down your app\n * @param {string} name\n * @param {string} location\n */\nexport function await_waterfall(name, location) {\n\tif (DEV) {\n\t\tconsole.warn(`%c[svelte] await_waterfall\\n%cAn async derived, \\`${name}\\` (${location}) was not read immediately after it resolved. This often indicates an unnecessary waterfall, which can slow down your app\\nhttps://svelte.dev/e/await_waterfall`, bold, normal);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/await_waterfall`);\n\t}\n}\n\n/**\n * `%binding%` (%location%) is binding to a non-reactive property\n * @param {string} binding\n * @param {string | undefined | null} [location]\n */\nexport function binding_property_non_reactive(binding, location) {\n\tif (DEV) {\n\t\tconsole.warn(\n\t\t\t`%c[svelte] binding_property_non_reactive\\n%c${location\n\t\t\t\t? `\\`${binding}\\` (${location}) is binding to a non-reactive property`\n\t\t\t\t: `\\`${binding}\\` is binding to a non-reactive property`}\\nhttps://svelte.dev/e/binding_property_non_reactive`,\n\t\t\tbold,\n\t\t\tnormal\n\t\t);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/binding_property_non_reactive`);\n\t}\n}\n\n/**\n * Your `console.%method%` contained `$state` proxies. Consider using `$inspect(...)` or `$state.snapshot(...)` instead\n * @param {string} method\n */\nexport function console_log_state(method) {\n\tif (DEV) {\n\t\tconsole.warn(`%c[svelte] console_log_state\\n%cYour \\`console.${method}\\` contained \\`$state\\` proxies. Consider using \\`$inspect(...)\\` or \\`$state.snapshot(...)\\` instead\\nhttps://svelte.dev/e/console_log_state`, bold, normal);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/console_log_state`);\n\t}\n}\n\n/**\n * Reading a derived belonging to a now-destroyed effect may result in stale values\n */\nexport function derived_inert() {\n\tif (DEV) {\n\t\tconsole.warn(`%c[svelte] derived_inert\\n%cReading a derived belonging to a now-destroyed effect may result in stale values\\nhttps://svelte.dev/e/derived_inert`, bold, normal);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/derived_inert`);\n\t}\n}\n\n/**\n * %handler% should be a function. Did you mean to %suggestion%?\n * @param {string} handler\n * @param {string} suggestion\n */\nexport function event_handler_invalid(handler, suggestion) {\n\tif (DEV) {\n\t\tconsole.warn(`%c[svelte] event_handler_invalid\\n%c${handler} should be a function. Did you mean to ${suggestion}?\\nhttps://svelte.dev/e/event_handler_invalid`, bold, normal);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/event_handler_invalid`);\n\t}\n}\n\n/**\n * Expected to find a hydratable with key `%key%` during hydration, but did not.\n * @param {string} key\n */\nexport function hydratable_missing_but_expected(key) {\n\tif (DEV) {\n\t\tconsole.warn(`%c[svelte] hydratable_missing_but_expected\\n%cExpected to find a hydratable with key \\`${key}\\` during hydration, but did not.\\nhttps://svelte.dev/e/hydratable_missing_but_expected`, bold, normal);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/hydratable_missing_but_expected`);\n\t}\n}\n\n/**\n * The `%attribute%` attribute on `%html%` changed its value between server and client renders. The client value, `%value%`, will be ignored in favour of the server value\n * @param {string} attribute\n * @param {string} html\n * @param {string} value\n */\nexport function hydration_attribute_changed(attribute, html, value) {\n\tif (DEV) {\n\t\tconsole.warn(`%c[svelte] hydration_attribute_changed\\n%cThe \\`${attribute}\\` attribute on \\`${html}\\` changed its value between server and client renders. The client value, \\`${value}\\`, will be ignored in favour of the server value\\nhttps://svelte.dev/e/hydration_attribute_changed`, bold, normal);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/hydration_attribute_changed`);\n\t}\n}\n\n/**\n * The value of an `{@html ...}` block %location% changed between server and client renders. The client value will be ignored in favour of the server value\n * @param {string | undefined | null} [location]\n */\nexport function hydration_html_changed(location) {\n\tif (DEV) {\n\t\tconsole.warn(\n\t\t\t`%c[svelte] hydration_html_changed\\n%c${location\n\t\t\t\t? `The value of an \\`{@html ...}\\` block ${location} changed between server and client renders. The client value will be ignored in favour of the server value`\n\t\t\t\t: 'The value of an `{@html ...}` block changed between server and client renders. The client value will be ignored in favour of the server value'}\\nhttps://svelte.dev/e/hydration_html_changed`,\n\t\t\tbold,\n\t\t\tnormal\n\t\t);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/hydration_html_changed`);\n\t}\n}\n\n/**\n * Hydration failed because the initial UI does not match what was rendered on the server. The error occurred near %location%\n * @param {string | undefined | null} [location]\n */\nexport function hydration_mismatch(location) {\n\tif (DEV) {\n\t\tconsole.warn(\n\t\t\t`%c[svelte] hydration_mismatch\\n%c${location\n\t\t\t\t? `Hydration failed because the initial UI does not match what was rendered on the server. The error occurred near ${location}`\n\t\t\t\t: 'Hydration failed because the initial UI does not match what was rendered on the server'}\\nhttps://svelte.dev/e/hydration_mismatch`,\n\t\t\tbold,\n\t\t\tnormal\n\t\t);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/hydration_mismatch`);\n\t}\n}\n\n/**\n * The `render` function passed to `createRawSnippet` should return HTML for a single element\n */\nexport function invalid_raw_snippet_render() {\n\tif (DEV) {\n\t\tconsole.warn(`%c[svelte] invalid_raw_snippet_render\\n%cThe \\`render\\` function passed to \\`createRawSnippet\\` should return HTML for a single element\\nhttps://svelte.dev/e/invalid_raw_snippet_render`, bold, normal);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/invalid_raw_snippet_render`);\n\t}\n}\n\n/**\n * Detected a migrated `$:` reactive block in `%filename%` that both accesses and updates the same reactive value. This may cause recursive updates when converted to an `$effect`.\n * @param {string} filename\n */\nexport function legacy_recursive_reactive_block(filename) {\n\tif (DEV) {\n\t\tconsole.warn(`%c[svelte] legacy_recursive_reactive_block\\n%cDetected a migrated \\`$:\\` reactive block in \\`${filename}\\` that both accesses and updates the same reactive value. This may cause recursive updates when converted to an \\`$effect\\`.\\nhttps://svelte.dev/e/legacy_recursive_reactive_block`, bold, normal);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/legacy_recursive_reactive_block`);\n\t}\n}\n\n/**\n * Tried to unmount a component that was not mounted\n */\nexport function lifecycle_double_unmount() {\n\tif (DEV) {\n\t\tconsole.warn(`%c[svelte] lifecycle_double_unmount\\n%cTried to unmount a component that was not mounted\\nhttps://svelte.dev/e/lifecycle_double_unmount`, bold, normal);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/lifecycle_double_unmount`);\n\t}\n}\n\n/**\n * %parent% passed property `%prop%` to %child% with `bind:`, but its parent component %owner% did not declare `%prop%` as a binding. Consider creating a binding between %owner% and %parent% (e.g. `bind:%prop%={...}` instead of `%prop%={...}`)\n * @param {string} parent\n * @param {string} prop\n * @param {string} child\n * @param {string} owner\n */\nexport function ownership_invalid_binding(parent, prop, child, owner) {\n\tif (DEV) {\n\t\tconsole.warn(`%c[svelte] ownership_invalid_binding\\n%c${parent} passed property \\`${prop}\\` to ${child} with \\`bind:\\`, but its parent component ${owner} did not declare \\`${prop}\\` as a binding. Consider creating a binding between ${owner} and ${parent} (e.g. \\`bind:${prop}={...}\\` instead of \\`${prop}={...}\\`)\\nhttps://svelte.dev/e/ownership_invalid_binding`, bold, normal);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/ownership_invalid_binding`);\n\t}\n}\n\n/**\n * Mutating unbound props (`%name%`, at %location%) is strongly discouraged. Consider using `bind:%prop%={...}` in %parent% (or using a callback) instead\n * @param {string} name\n * @param {string} location\n * @param {string} prop\n * @param {string} parent\n */\nexport function ownership_invalid_mutation(name, location, prop, parent) {\n\tif (DEV) {\n\t\tconsole.warn(`%c[svelte] ownership_invalid_mutation\\n%cMutating unbound props (\\`${name}\\`, at ${location}) is strongly discouraged. Consider using \\`bind:${prop}={...}\\` in ${parent} (or using a callback) instead\\nhttps://svelte.dev/e/ownership_invalid_mutation`, bold, normal);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/ownership_invalid_mutation`);\n\t}\n}\n\n/**\n * The `value` property of a `<select multiple>` element should be an array, but it received a non-array value. The selection will be kept as is.\n */\nexport function select_multiple_invalid_value() {\n\tif (DEV) {\n\t\tconsole.warn(`%c[svelte] select_multiple_invalid_value\\n%cThe \\`value\\` property of a \\`<select multiple>\\` element should be an array, but it received a non-array value. The selection will be kept as is.\\nhttps://svelte.dev/e/select_multiple_invalid_value`, bold, normal);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/select_multiple_invalid_value`);\n\t}\n}\n\n/**\n * Reactive `$state(...)` proxies and the values they proxy have different identities. Because of this, comparisons with `%operator%` will produce unexpected results\n * @param {string} operator\n */\nexport function state_proxy_equality_mismatch(operator) {\n\tif (DEV) {\n\t\tconsole.warn(`%c[svelte] state_proxy_equality_mismatch\\n%cReactive \\`$state(...)\\` proxies and the values they proxy have different identities. Because of this, comparisons with \\`${operator}\\` will produce unexpected results\\nhttps://svelte.dev/e/state_proxy_equality_mismatch`, bold, normal);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/state_proxy_equality_mismatch`);\n\t}\n}\n\n/**\n * Tried to unmount a state proxy, rather than a component\n */\nexport function state_proxy_unmount() {\n\tif (DEV) {\n\t\tconsole.warn(`%c[svelte] state_proxy_unmount\\n%cTried to unmount a state proxy, rather than a component\\nhttps://svelte.dev/e/state_proxy_unmount`, bold, normal);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/state_proxy_unmount`);\n\t}\n}\n\n/**\n * A `<svelte:boundary>` `reset` function only resets the boundary the first time it is called\n */\nexport function svelte_boundary_reset_noop() {\n\tif (DEV) {\n\t\tconsole.warn(`%c[svelte] svelte_boundary_reset_noop\\n%cA \\`<svelte:boundary>\\` \\`reset\\` function only resets the boundary the first time it is called\\nhttps://svelte.dev/e/svelte_boundary_reset_noop`, bold, normal);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/svelte_boundary_reset_noop`);\n\t}\n}\n\n/**\n * The `slide` transition does not work correctly for elements with `display: %value%`\n * @param {string} value\n */\nexport function transition_slide_display(value) {\n\tif (DEV) {\n\t\tconsole.warn(`%c[svelte] transition_slide_display\\n%cThe \\`slide\\` transition does not work correctly for elements with \\`display: ${value}\\`\\nhttps://svelte.dev/e/transition_slide_display`, bold, normal);\n\t} else {\n\t\tconsole.warn(`https://svelte.dev/e/transition_slide_display`);\n\t}\n}"],"x_google_ignoreList":[0],"mappings":";AAIA,IAAI,OAAO;AACX,IAAI,SAAS;;;;;;AAOb,SAAgB,uBAAuB,UAAU,UAAU;CAEzD,QAAQ,KAAK,wDAAwD,SAAS,eAAe,SAAS,6DAA6D,SAAS,qHAAqH,MAAM,MAAM;AAI/S;;;;;AAMA,SAAgB,sBAAsB,MAAM;CAE1C,QAAQ,KAAK,+EAA+E,KAAK,kIAAkI,MAAM,MAAM;AAIjP;;;;;;AAOA,SAAgB,gBAAgB,MAAM,UAAU;CAE9C,QAAQ,KAAK,qDAAqD,KAAK,MAAM,SAAS,kKAAkK,MAAM,MAAM;AAItQ;;;;;;AAOA,SAAgB,8BAA8B,SAAS,UAAU;CAE/D,QAAQ,KACP,+CAA+C,WAC5C,KAAK,QAAQ,MAAM,SAAS,2CAC5B,KAAK,QAAQ,0CAA0C,uDAC1D,MACA,MACD;AAIF;;;;;AAMA,SAAgB,kBAAkB,QAAQ;CAExC,QAAQ,KAAK,kDAAkD,OAAO,gJAAgJ,MAAM,MAAM;AAIpO;;;;AAKA,SAAgB,gBAAgB;CAE9B,QAAQ,KAAK,oJAAoJ,MAAM,MAAM;AAI/K;;;;;;AAOA,SAAgB,sBAAsB,SAAS,YAAY;CAEzD,QAAQ,KAAK,uCAAuC,QAAQ,yCAAyC,WAAW,gDAAgD,MAAM,MAAM;AAI9K;;;;;;;AAoBA,SAAgB,4BAA4B,WAAW,MAAM,OAAO;CAElE,QAAQ,KAAK,mDAAmD,UAAU,oBAAoB,KAAK,8EAA8E,MAAM,sGAAsG,MAAM,MAAM;AAI3S;;;;;AAMA,SAAgB,uBAAuB,UAAU;CAE/C,QAAQ,KACP,wCAAwC,WACrC,yCAAyC,SAAS,8GAClD,gJAAgJ,gDACnJ,MACA,MACD;AAIF;;;;;AAMA,SAAgB,mBAAmB,UAAU;CAE3C,QAAQ,KACP,oCAAoC,WACjC,mHAAmH,aACnH,yFAAyF,4CAC5F,MACA,MACD;AAIF;;;;AA4BA,SAAgB,2BAA2B;CAEzC,QAAQ,KAAK,2IAA2I,MAAM,MAAM;AAItK;;;;;;;;AASA,SAAgB,0BAA0B,QAAQ,MAAM,OAAO,OAAO;CAEpE,QAAQ,KAAK,2CAA2C,OAAO,qBAAqB,KAAK,QAAQ,MAAM,4CAA4C,MAAM,qBAAqB,KAAK,uDAAuD,MAAM,OAAO,OAAO,gBAAgB,KAAK,wBAAwB,KAAK,4DAA4D,MAAM,MAAM;AAI1X;;;;;;;;AASA,SAAgB,2BAA2B,MAAM,UAAU,MAAM,QAAQ;CAEvE,QAAQ,KAAK,sEAAsE,KAAK,SAAS,SAAS,mDAAmD,KAAK,cAAc,OAAO,kFAAkF,MAAM,MAAM;AAIvR;;;;AAKA,SAAgB,gCAAgC;CAE9C,QAAQ,KAAK,sPAAsP,MAAM,MAAM;AAIjR;;;;;AAMA,SAAgB,8BAA8B,UAAU;CAEtD,QAAQ,KAAK,yKAAyK,SAAS,yFAAyF,MAAM,MAAM;AAItS;;;;AAKA,SAAgB,sBAAsB;CAEpC,QAAQ,KAAK,uIAAuI,MAAM,MAAM;AAIlK;;;;AAKA,SAAgB,6BAA6B;CAE3C,QAAQ,KAAK,6LAA6L,MAAM,MAAM;AAIxN;;;;;AAMA,SAAgB,yBAAyB,OAAO;CAE9C,QAAQ,KAAK,wHAAwH,MAAM,oDAAoD,MAAM,MAAM;AAI7M"}
|
|
@@ -15,6 +15,7 @@
|
|
|
15
15
|
* non-optimistic for now - the grid reflects a change only after the
|
|
16
16
|
* follow-up re-fetch of the current page lands.
|
|
17
17
|
*/
|
|
18
|
+
import type { GridPredicateExpr } from './filtering/predicate-expr';
|
|
18
19
|
export type ServerSortModel = Array<{
|
|
19
20
|
id: string;
|
|
20
21
|
desc: boolean;
|
|
@@ -33,6 +34,24 @@ export type ServerFilterModel = {
|
|
|
33
34
|
valueTo?: string;
|
|
34
35
|
selectedValues?: string[];
|
|
35
36
|
}>;
|
|
37
|
+
/**
|
|
38
|
+
* Advanced-filter predicate (Pro), as a JSON AST. Expresses what `columns`
|
|
39
|
+
* cannot: OR across columns, nesting, negation, two conditions on one
|
|
40
|
+
* column, cross-column comparison, and aggregates.
|
|
41
|
+
*
|
|
42
|
+
* CONTRACT - all or nothing. A backend that receives this MUST either:
|
|
43
|
+
*
|
|
44
|
+
* (a) translate the WHOLE expression into its query, make `rowCount`
|
|
45
|
+
* reflect it, and set `appliedExpression: true` on the result; or
|
|
46
|
+
* (b) apply none of it and leave `appliedExpression` unset.
|
|
47
|
+
*
|
|
48
|
+
* Partial application is a contract violation, not a degraded mode: it
|
|
49
|
+
* returns a SUPERSET of the requested rows while the UI says the filter is
|
|
50
|
+
* on. That is strictly worse than not filtering, because nothing about the
|
|
51
|
+
* result looks wrong. When the ack is missing the grid says so rather than
|
|
52
|
+
* filtering the loaded page itself - see `ServerState.expressionUnapplied`.
|
|
53
|
+
*/
|
|
54
|
+
expression?: GridPredicateExpr;
|
|
36
55
|
};
|
|
37
56
|
/** A value column to roll up per group. */
|
|
38
57
|
export type ServerAggregation = {
|
|
@@ -137,6 +156,12 @@ export type ServerResult<TData> = {
|
|
|
137
156
|
rows: ReadonlyArray<TData>;
|
|
138
157
|
/** Total row count after filtering (for the pager). */
|
|
139
158
|
rowCount: number;
|
|
159
|
+
/**
|
|
160
|
+
* Set `true` ONLY when `filterModel.expression` was applied in full. Leave it
|
|
161
|
+
* unset if you ignored the expression; the grid then warns rather than
|
|
162
|
+
* pretending the filter ran. See the contract on `ServerFilterModel.expression`.
|
|
163
|
+
*/
|
|
164
|
+
appliedExpression?: boolean;
|
|
140
165
|
};
|
|
141
166
|
export type ServerDataSource<TData> = {
|
|
142
167
|
getRows(request: ServerRequest): Promise<ServerResult<TData>>;
|
|
@@ -162,6 +187,15 @@ export type ServerState<TData> = {
|
|
|
162
187
|
pageCount: number;
|
|
163
188
|
sortModel: ServerSortModel;
|
|
164
189
|
filterModel: ServerFilterModel;
|
|
190
|
+
/**
|
|
191
|
+
* True when an advanced-filter expression was sent but the source did not
|
|
192
|
+
* acknowledge applying it - so `rows` is unfiltered and the UI should say so.
|
|
193
|
+
* Surface this rather than hiding it: the rows look perfectly normal.
|
|
194
|
+
*
|
|
195
|
+
* Optional so existing code that builds a `ServerState` literal keeps
|
|
196
|
+
* compiling; the controller always sets it.
|
|
197
|
+
*/
|
|
198
|
+
expressionUnapplied?: boolean;
|
|
165
199
|
};
|
|
166
200
|
export type ServerController<TData> = {
|
|
167
201
|
/** Re-fetch the current page (e.g. after a mutation). */
|
|
@@ -10,11 +10,15 @@ export function createServerDataSource(source, options) {
|
|
|
10
10
|
pageCount: 1,
|
|
11
11
|
sortModel: [],
|
|
12
12
|
filterModel: {},
|
|
13
|
+
expressionUnapplied: false,
|
|
13
14
|
};
|
|
14
15
|
// Monotonic request id: only the latest fetch is allowed to land, so a slow
|
|
15
16
|
// response for an old sort/filter can't clobber a newer one.
|
|
16
17
|
let requestSeq = 0;
|
|
17
18
|
let disposed = false;
|
|
19
|
+
// Once per controller: a misconfigured backend would otherwise log on every
|
|
20
|
+
// page, scroll and filter change.
|
|
21
|
+
let warnedExpressionUnapplied = false;
|
|
18
22
|
const emit = () => {
|
|
19
23
|
state.pageCount = Math.max(1, Math.ceil(state.total / state.pageSize));
|
|
20
24
|
options.onChange({ ...state });
|
|
@@ -44,6 +48,21 @@ export function createServerDataSource(source, options) {
|
|
|
44
48
|
return; // stale
|
|
45
49
|
state.rows = result.rows;
|
|
46
50
|
state.total = result.rowCount;
|
|
51
|
+
// An expression was sent but the backend did not acknowledge applying it,
|
|
52
|
+
// so these rows are a SUPERSET of what was asked for. Say so instead of
|
|
53
|
+
// filtering the loaded page here: filtering one page would turn
|
|
54
|
+
// "3 of 1,000,000 match" into a confident lie and make paging incoherent,
|
|
55
|
+
// since page 2 would re-filter a different slice.
|
|
56
|
+
state.expressionUnapplied =
|
|
57
|
+
state.filterModel.expression != null && result.appliedExpression !== true;
|
|
58
|
+
if (state.expressionUnapplied && !warnedExpressionUnapplied) {
|
|
59
|
+
warnedExpressionUnapplied = true;
|
|
60
|
+
console.warn('[svgrid] The data source was sent filterModel.expression but did not ' +
|
|
61
|
+
'return `appliedExpression: true`, so the advanced filter is NOT applied ' +
|
|
62
|
+
'and the rows shown are unfiltered. Apply the whole expression and ' +
|
|
63
|
+
'acknowledge it, or clear the advanced filter. ' +
|
|
64
|
+
'See https://svgrid.com/docs/help/server/server-filtering');
|
|
65
|
+
}
|
|
47
66
|
state.loading = false;
|
|
48
67
|
emit();
|
|
49
68
|
}
|
|
@@ -2,6 +2,7 @@ import type { CellFormatConfig, ColumnDef, RowData, SvGridOptions, TableFeatures
|
|
|
2
2
|
import type { FilterOperator, Props } from './SvGrid.types';
|
|
3
3
|
import type { GridExportOptions, GridClipboardOptions } from './export-format';
|
|
4
4
|
import type { ChartSpec, ChartType } from './chart';
|
|
5
|
+
import type { GridPredicateExpr } from './filtering/predicate-expr';
|
|
5
6
|
export type SvGridFilterOperator = FilterOperator;
|
|
6
7
|
/**
|
|
7
8
|
* A serializable snapshot of everything that makes up the current "view":
|
|
@@ -36,6 +37,13 @@ export type SvGridViewState = {
|
|
|
36
37
|
}>;
|
|
37
38
|
/** Facet (Excel-style value checklist) selections, keyed by column id. */
|
|
38
39
|
facetFilters: Record<string, string[]>;
|
|
40
|
+
/**
|
|
41
|
+
* Advanced-filter expression (Pro). OPTIONAL, and omitted entirely when no
|
|
42
|
+
* advanced filter is set - so views saved before this feature existed, and
|
|
43
|
+
* views from grids that never use it, round-trip byte-identical. An explicit
|
|
44
|
+
* `null` clears the filter on `setState`.
|
|
45
|
+
*/
|
|
46
|
+
advancedFilter?: GridPredicateExpr | null;
|
|
39
47
|
/** Built-in chart panel state (present only when `charting` is on): the
|
|
40
48
|
* ACTIVE chart, for back-compat + spread-and-tweak. */
|
|
41
49
|
chart?: {
|
|
@@ -218,10 +226,25 @@ export type SvGridApi<TFeatures extends TableFeatures, TData extends RowData> =
|
|
|
218
226
|
*/
|
|
219
227
|
refreshEditorOptions(columnId?: string): void;
|
|
220
228
|
/**
|
|
221
|
-
* Clear every active column filter (menu, filter-row, set-list, and
|
|
222
|
-
* Resets the grid to "no filtering" in a single call.
|
|
229
|
+
* Clear every active column filter (menu, filter-row, set-list, global, and
|
|
230
|
+
* the advanced filter). Resets the grid to "no filtering" in a single call.
|
|
223
231
|
*/
|
|
224
232
|
clearAllFilters(): void;
|
|
233
|
+
/**
|
|
234
|
+
* Set the advanced-filter expression (Pro). `null` clears it. Composed with
|
|
235
|
+
* AND after the global, column and facet filters.
|
|
236
|
+
*
|
|
237
|
+
* Rows are only removed once `@svgrid/enterprise`'s `enableAdvancedFilter()`
|
|
238
|
+
* has registered a compiler. Without it the expression is stored but nothing
|
|
239
|
+
* is filtered - use `isAdvancedFilterActive()` to tell the two apart.
|
|
240
|
+
*/
|
|
241
|
+
setAdvancedFilter(expr: GridPredicateExpr | null): void;
|
|
242
|
+
/** The current advanced-filter expression, or `null`. */
|
|
243
|
+
getAdvancedFilter(): GridPredicateExpr | null;
|
|
244
|
+
/** Clear the advanced filter, leaving other filter surfaces untouched. */
|
|
245
|
+
clearAdvancedFilter(): void;
|
|
246
|
+
/** Whether an expression is set AND an engine is registered to run it. */
|
|
247
|
+
isAdvancedFilterActive(): boolean;
|
|
225
248
|
/**
|
|
226
249
|
* Read the active column-menu filters as a snapshot. Keyed by column id.
|
|
227
250
|
* Returns an empty object when nothing is filtered. `valueTo` is only
|
|
@@ -233,9 +256,15 @@ export type SvGridApi<TFeatures extends TableFeatures, TData extends RowData> =
|
|
|
233
256
|
valueTo?: string;
|
|
234
257
|
}>;
|
|
235
258
|
/**
|
|
236
|
-
* Snapshot of the rows the grid is
|
|
237
|
-
*
|
|
238
|
-
*
|
|
259
|
+
* Snapshot of the DATA rows the grid is displaying right now - after
|
|
260
|
+
* filtering, sorting, grouping and pagination. Use this when you need the
|
|
261
|
+
* visible result set (e.g. to export it as CSV).
|
|
262
|
+
*
|
|
263
|
+
* Group banner rows are not included: the return type is `TData`, and a
|
|
264
|
+
* banner is not one of your rows. That matters while grouping is on, because
|
|
265
|
+
* with every group collapsed this returns an EMPTY array even though the
|
|
266
|
+
* grid visibly shows a banner per group. Count banners from `getState()`
|
|
267
|
+
* rather than from the length of this.
|
|
239
268
|
*/
|
|
240
269
|
getDisplayedRows(): ReadonlyArray<TData>;
|
|
241
270
|
/** Snapshot of the current data array (pre-pipeline). */
|
|
@@ -256,6 +285,9 @@ export type SvGridApi<TFeatures extends TableFeatures, TData extends RowData> =
|
|
|
256
285
|
format?: CellFormatConfig;
|
|
257
286
|
/** Effective horizontal alignment ('left' | 'center' | 'right'). */
|
|
258
287
|
align?: 'left' | 'center' | 'right';
|
|
288
|
+
/** The column's declared `editorType`, when set. Lets a filter or
|
|
289
|
+
* expression UI offer type-appropriate operators. */
|
|
290
|
+
editorType?: string;
|
|
259
291
|
}>;
|
|
260
292
|
/**
|
|
261
293
|
* Export the grid to a **CSV** file. Free in the community grid; the
|
package/dist/themes/index.js
CHANGED
|
@@ -81,16 +81,24 @@ export const themePresets = [
|
|
|
81
81
|
light: { bg: '#ffffff', fg: '#282a30', muted: '#6b6f76', border: '#e9e9eb', headerBg: '#f7f8f8', headerFg: '#6b6f76', accent: '#5e6ad2', rowAlt: '#fbfbfc', rowHover: '#f4f4f5', selectionBg: '#e8eafd' },
|
|
82
82
|
dark: { bg: '#08090a', fg: '#f7f8f8', muted: '#8a8f98', border: '#23252a', headerBg: '#0f1011', headerFg: '#8a8f98', accent: '#5e6ad2', rowAlt: '#0f1011', rowHover: '#1a1b1e', selectionBg: '#2a2d4a' } },
|
|
83
83
|
{ id: 'notion', name: 'Notion', radius: 4, font: 'ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif',
|
|
84
|
-
|
|
84
|
+
// muted + headerFg darkened from #787774, which sat at 4.48:1 on white and
|
|
85
|
+
// 4.14:1 on the header fill - both just under AA. #6b6a67 keeps the warm
|
|
86
|
+
// grey and clears it at 5.41:1 / 5:1.
|
|
87
|
+
light: { bg: '#ffffff', fg: '#37352f', muted: '#6b6a67', border: '#e9e9e7', headerBg: '#f7f6f3', headerFg: '#6b6a67', accent: '#2383e2', rowAlt: '#fbfbfa', rowHover: '#f1f1ef', selectionBg: '#d9eaf7' },
|
|
85
88
|
dark: { bg: '#191919', fg: '#d4d4d4', muted: '#9b9b9b', border: '#2f2f2f', headerBg: '#202020', headerFg: '#9b9b9b', accent: '#529cca', rowAlt: '#1c1c1c', rowHover: '#252525', selectionBg: '#20415c' } },
|
|
86
89
|
{ id: 'nord', name: 'Nord', radius: 4, font: '"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',
|
|
87
90
|
light: { bg: '#eceff4', fg: '#2e3440', muted: '#4c566a', border: '#d8dee9', headerBg: '#e5e9f0', headerFg: '#2e3440', accent: '#5579a5', rowAlt: '#e5e9f0', rowHover: '#dde3ec', selectionBg: '#d8dee9' },
|
|
88
|
-
|
|
91
|
+
// muted lightened from Nord's #4c566a (nord3): on the nord0 background that
|
|
92
|
+
// is 1.69:1, effectively invisible. #97a0b0 keeps the Nord hue at 4.74:1.
|
|
93
|
+
dark: { bg: '#2e3440', fg: '#d8dee9', muted: '#97a0b0', border: '#434c5e', headerBg: '#3b4252', headerFg: '#e5e9f0', accent: '#88c0d0', rowAlt: '#333b48', rowHover: '#3b4252', selectionBg: '#434c5e' } },
|
|
89
94
|
{ id: 'dracula', name: 'Dracula', radius: 6, font: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',
|
|
90
95
|
light: { bg: '#fffbeb', fg: '#1f1f1f', muted: '#6c664b', border: '#dedccf', headerBg: '#ece9df', headerFg: '#1f1f1f', accent: '#644ac9', rowAlt: '#fffdf5', rowHover: '#f2efe3', selectionBg: '#cfcfde' },
|
|
91
|
-
|
|
96
|
+
// muted lightened from Dracula's comment colour #6272a4 (3.03:1) to 5.04:1.
|
|
97
|
+
dark: { bg: '#282a36', fg: '#f8f8f2', muted: '#8b98c9', border: '#44475a', headerBg: '#21222c', headerFg: '#f8f8f2', accent: '#bd93f9', rowAlt: '#2d2f3b', rowHover: '#343746', selectionBg: '#44475a' } },
|
|
92
98
|
{ id: 'catppuccin', name: 'Catppuccin', radius: 8, font: '"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',
|
|
93
|
-
|
|
99
|
+
// muted moved from Latte subtext0 (#6c6f85, 4.37:1) to subtext1 (#5c5f77),
|
|
100
|
+
// still an official Catppuccin colour, at 5.53:1.
|
|
101
|
+
light: { bg: '#eff1f5', fg: '#4c4f69', muted: '#5c5f77', border: '#ccd0da', headerBg: '#e6e9ef', headerFg: '#4c4f69', accent: '#8839ef', rowAlt: '#e6e9ef', rowHover: '#dce0e8', selectionBg: '#dce0e8' },
|
|
94
102
|
dark: { bg: '#1e1e2e', fg: '#cdd6f4', muted: '#a6adc8', border: '#313244', headerBg: '#181825', headerFg: '#cdd6f4', accent: '#cba6f7', rowAlt: '#1a1a28', rowHover: '#313244', selectionBg: '#45475a' } },
|
|
95
103
|
];
|
|
96
104
|
/** The default preset (used when nothing is chosen). */
|