@vmscloud/moz-ui-grid-vue 0.1.41
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 +71 -0
- package/dist/MozGrid.vue.d.ts +127 -0
- package/dist/bridge/VueRenderer.d.ts +37 -0
- package/dist/bridge/fieldBuilder.d.ts +9 -0
- package/dist/bridge/lifecycle.d.ts +6 -0
- package/dist/bridge/templateRegistry.d.ts +8 -0
- package/dist/chunks/index-BDQ0HlwR.js +3404 -0
- package/dist/chunks/index-D5KJLBGW.cjs +14 -0
- package/dist/chunks/notification.contract-BTOch6ed.js +16 -0
- package/dist/chunks/notification.contract-oFkBaE2U.cjs +1 -0
- package/dist/compat/MozGridVue.vue.d.ts +645 -0
- package/dist/compat/MozPivotVue.vue.d.ts +606 -0
- package/dist/compat/index.d.ts +9 -0
- package/dist/compat/legacyGridAliases.d.ts +8 -0
- package/dist/composables/useGridPreset.d.ts +19 -0
- package/dist/contracts/UserLayoutInstance.d.ts +38 -0
- package/dist/contracts/notification.contract.d.ts +41 -0
- package/dist/contracts/userLayout.contract.d.ts +16 -0
- package/dist/index.cjs +26 -0
- package/dist/index.d.ts +24 -0
- package/dist/index.js +90599 -0
- package/dist/legacy/components/common/Dragging.d.ts +17 -0
- package/dist/legacy/components/common/Dragging.vue.d.ts +49 -0
- package/dist/legacy/components/common/custom-cell/FormulaEngine.d.ts +256 -0
- package/dist/legacy/components/common/custom-cell/FormulaInput.vue.d.ts +33 -0
- package/dist/legacy/components/common/custom-cell/GridCustomCell.vue.d.ts +23 -0
- package/dist/legacy/components/common/custom-cell/useFormulaAutocomplete.d.ts +44 -0
- package/dist/legacy/components/common/excel/ClientExcelUploadPopup.vue.d.ts +201 -0
- package/dist/legacy/components/common/excel/assets/IconDropZone.vue.d.ts +2 -0
- package/dist/legacy/components/common/excel/assets/IconFileUpload.vue.d.ts +2 -0
- package/dist/legacy/components/common/filter/GridFilter.vue.d.ts +23 -0
- package/dist/legacy/components/common/footer/GridFooter.vue.d.ts +29 -0
- package/dist/legacy/components/common/sort/GridSort.vue.d.ts +23 -0
- package/dist/legacy/components/common/toolbar/GridSearchInput.vue.d.ts +33 -0
- package/dist/legacy/components/grid/MozGridVue.vue.d.ts +2041 -0
- package/dist/legacy/components/grid/MozGridVueCore.vue.d.ts +118 -0
- package/dist/legacy/components/grid/bulk-editor/GridBulkEditor.vue.d.ts +10 -0
- package/dist/legacy/components/grid/column-settings/AlignPicker.vue.d.ts +10 -0
- package/dist/legacy/components/grid/column-settings/ColorSwatchPicker.vue.d.ts +11 -0
- package/dist/legacy/components/grid/column-settings/ColumnListItem.vue.d.ts +17 -0
- package/dist/legacy/components/grid/column-settings/ColumnOptionsPanel.vue.d.ts +32 -0
- package/dist/legacy/components/grid/column-settings/FontSizePicker.vue.d.ts +10 -0
- package/dist/legacy/components/grid/column-settings/FontStyleToggles.vue.d.ts +15 -0
- package/dist/legacy/components/grid/column-settings/MaskPresetPicker.vue.d.ts +14 -0
- package/dist/legacy/components/grid/context-menu/GridContextMenu.vue.d.ts +208 -0
- package/dist/legacy/components/grid/group-panel/GroupPanel.vue.d.ts +18 -0
- package/dist/legacy/components/grid/toolbar/ColumnPicker.vue.d.ts +17 -0
- package/dist/legacy/components/grid/toolbar/ColumnSettings.vue.d.ts +30 -0
- package/dist/legacy/components/grid/toolbar/GridOptionModal.vue.d.ts +211 -0
- package/dist/legacy/components/grid/toolbar/GridToolBox.vue.d.ts +69 -0
- package/dist/legacy/components/pivot/MozPivotVue.vue.d.ts +1868 -0
- package/dist/legacy/components/pivot/PivotContextMenu.vue.d.ts +634 -0
- package/dist/legacy/components/pivot/PivotFieldChip.vue.d.ts +16 -0
- package/dist/legacy/components/pivot/PivotFieldDropZone.vue.d.ts +26 -0
- package/dist/legacy/components/pivot/PivotFieldPanel.vue.d.ts +28 -0
- package/dist/legacy/components/pivot/PivotOptionModal.vue.d.ts +534 -0
- package/dist/legacy/components/pivot/PivotToolBox.vue.d.ts +79 -0
- package/dist/legacy/components/pivot/chart/EChart.vue.d.ts +13 -0
- package/dist/legacy/components/pivot/chart/MozPivotChart.types.d.ts +16 -0
- package/dist/legacy/components/pivot/chart/MozPivotChart.vue.d.ts +14 -0
- package/dist/legacy/components/pivot/chart/PivotChartDetail.vue.d.ts +13 -0
- package/dist/legacy/components/pivot/chart/PivotChartMini.vue.d.ts +18 -0
- package/dist/legacy/components/pivot/chart/PivotChartMultiple.vue.d.ts +18 -0
- package/dist/legacy/components/pivot/chart/PivotChartToolbar.vue.d.ts +38 -0
- package/dist/legacy/components/pivot/chart/chartUtils.d.ts +45 -0
- package/dist/legacy/components/pivot/chart/useChartData.d.ts +35 -0
- package/dist/legacy/composables/useCellTooltip.d.ts +8 -0
- package/dist/legacy/composables/useClientExcelExport.d.ts +24 -0
- package/dist/legacy/composables/useClientExcelStore.d.ts +16 -0
- package/dist/legacy/composables/useColumnFormatter.d.ts +45 -0
- package/dist/legacy/composables/useColumnSettings.d.ts +35 -0
- package/dist/legacy/composables/useContextMenu.d.ts +71 -0
- package/dist/legacy/composables/useGridBulkEditor.d.ts +36 -0
- package/dist/legacy/composables/useGridChanges.d.ts +28 -0
- package/dist/legacy/composables/useGridColumns.d.ts +37 -0
- package/dist/legacy/composables/useGridCustomCell.d.ts +34 -0
- package/dist/legacy/composables/useGridEvents.d.ts +14 -0
- package/dist/legacy/composables/useGridFilter.d.ts +38 -0
- package/dist/legacy/composables/useGridInstance.d.ts +16 -0
- package/dist/legacy/composables/useGridSelect.d.ts +18 -0
- package/dist/legacy/composables/useGridSelection.d.ts +18 -0
- package/dist/legacy/composables/useGridSort.d.ts +38 -0
- package/dist/legacy/composables/useGridUndoRedo.d.ts +28 -0
- package/dist/legacy/composables/useGridValidation.d.ts +28 -0
- package/dist/legacy/composables/useMaskPresets.d.ts +38 -0
- package/dist/legacy/composables/useSearchHighlight.d.ts +12 -0
- package/dist/legacy/icons/IconAdd.vue.d.ts +11 -0
- package/dist/legacy/icons/IconArrowDownWithTail.vue.d.ts +11 -0
- package/dist/legacy/icons/IconArrowLeft.vue.d.ts +11 -0
- package/dist/legacy/icons/IconArrowLeftWithTail.vue.d.ts +11 -0
- package/dist/legacy/icons/IconArrowRight.vue.d.ts +11 -0
- package/dist/legacy/icons/IconArrowUpCenter.vue.d.ts +11 -0
- package/dist/legacy/icons/IconArrowUpWithTail.vue.d.ts +11 -0
- package/dist/legacy/icons/IconChart.vue.d.ts +11 -0
- package/dist/legacy/icons/IconClose.vue.d.ts +13 -0
- package/dist/legacy/icons/IconColorPicker.vue.d.ts +11 -0
- package/dist/legacy/icons/IconCustomCell.vue.d.ts +11 -0
- package/dist/legacy/icons/IconDecide.vue.d.ts +11 -0
- package/dist/legacy/icons/IconDownload.vue.d.ts +11 -0
- package/dist/legacy/icons/IconDragHandler.vue.d.ts +11 -0
- package/dist/legacy/icons/IconFilter.vue.d.ts +11 -0
- package/dist/legacy/icons/IconInfoFilled.vue.d.ts +11 -0
- package/dist/legacy/icons/IconRedo.vue.d.ts +9 -0
- package/dist/legacy/icons/IconReset.vue.d.ts +9 -0
- package/dist/legacy/icons/IconResetGridToolbar.vue.d.ts +11 -0
- package/dist/legacy/icons/IconSearch.vue.d.ts +11 -0
- package/dist/legacy/icons/IconSetting.vue.d.ts +11 -0
- package/dist/legacy/icons/IconSettingFilled.vue.d.ts +11 -0
- package/dist/legacy/icons/IconSort.vue.d.ts +11 -0
- package/dist/legacy/icons/IconToastWarning.vue.d.ts +11 -0
- package/dist/legacy/icons/IconUndo.vue.d.ts +9 -0
- package/dist/legacy/icons/index.d.ts +25 -0
- package/dist/legacy/index.d.ts +69 -0
- package/dist/legacy/shared/colorPresets.d.ts +36 -0
- package/dist/legacy/store/UploadRefreshRegistry.d.ts +5 -0
- package/dist/legacy/store/excelStore.d.ts +89 -0
- package/dist/legacy/store/index.d.ts +231 -0
- package/dist/legacy/stores/index.d.ts +2 -0
- package/dist/legacy/stores/projectInfo/projectInfo.contract.d.ts +130 -0
- package/dist/legacy/stories/Autofit.stories.d.ts +9 -0
- package/dist/legacy/stories/CRUD.stories.d.ts +9 -0
- package/dist/legacy/stories/CellAttributes.stories.d.ts +19 -0
- package/dist/legacy/stories/CellMask.stories.d.ts +19 -0
- package/dist/legacy/stories/ClientExcel.stories.d.ts +8 -0
- package/dist/legacy/stories/Clipboard.stories.d.ts +12 -0
- package/dist/legacy/stories/ColumnVisibility.stories.d.ts +12 -0
- package/dist/legacy/stories/ColumnWidths.stories.d.ts +11 -0
- package/dist/legacy/stories/CustomSortFilter.stories.d.ts +7 -0
- package/dist/legacy/stories/DynamicRowHeight.stories.d.ts +13 -0
- package/dist/legacy/stories/Editors.stories.d.ts +9 -0
- package/dist/legacy/stories/EmptyState.stories.d.ts +10 -0
- package/dist/legacy/stories/FormatRow.stories.d.ts +20 -0
- package/dist/legacy/stories/Grouping.stories.d.ts +14 -0
- package/dist/legacy/stories/HeaderGroup.stories.d.ts +11 -0
- package/dist/legacy/stories/LargeData.stories.d.ts +19 -0
- package/dist/legacy/stories/MasterDetail.stories.d.ts +17 -0
- package/dist/legacy/stories/Merge.stories.d.ts +10 -0
- package/dist/legacy/stories/MultiRow.stories.d.ts +12 -0
- package/dist/legacy/stories/MultiRowCrud.stories.d.ts +11 -0
- package/dist/legacy/stories/MultiRowGroup.stories.d.ts +11 -0
- package/dist/legacy/stories/Pinning.stories.d.ts +44 -0
- package/dist/legacy/stories/Pivot.stories.d.ts +23 -0
- package/dist/legacy/stories/PivotAdvanced.stories.d.ts +20 -0
- package/dist/legacy/stories/PivotChart.stories.d.ts +23 -0
- package/dist/legacy/stories/PivotNonNumeric.stories.d.ts +27 -0
- package/dist/legacy/stories/Preset.stories.d.ts +11 -0
- package/dist/legacy/stories/ReactiveAPI.stories.d.ts +8 -0
- package/dist/legacy/stories/ReactiveSafety.stories.d.ts +28 -0
- package/dist/legacy/stories/Repro.stories.d.ts +36 -0
- package/dist/legacy/stories/RowAPI.stories.d.ts +12 -0
- package/dist/legacy/stories/SelectionModes.stories.d.ts +35 -0
- package/dist/legacy/stories/Streaming.stories.d.ts +12 -0
- package/dist/legacy/stories/Tree.stories.d.ts +13 -0
- package/dist/legacy/stories/WorkerMode.stories.d.ts +15 -0
- package/dist/legacy/stories/_helpers/localDataLoader.d.ts +7 -0
- package/dist/legacy/stories/_helpers/sampleData.d.ts +117 -0
- package/dist/legacy/types/FileParameter.d.ts +31 -0
- package/dist/legacy/types/StreamingParameter.d.ts +18 -0
- package/dist/legacy/types/excel.types.d.ts +48 -0
- package/dist/legacy/types/index.d.ts +10 -0
- package/dist/legacy/types/pivot-props.d.ts +140 -0
- package/dist/legacy/types/props.d.ts +176 -0
- package/dist/legacy/types/toolbar.d.ts +225 -0
- package/dist/legacy/utils/async/debounce.d.ts +4 -0
- package/dist/legacy/utils/crypto/crypto.d.ts +7 -0
- package/dist/legacy/utils/dialog/dialog.d.ts +19 -0
- package/dist/legacy/utils/excel/ExcelGuard.d.ts +73 -0
- package/dist/legacy/utils/excel/ExcelImportUtil.d.ts +34 -0
- package/dist/legacy/utils/excel/ExcelQueueManager.d.ts +57 -0
- package/dist/legacy/utils/excel/ExcelTaskRunner.d.ts +17 -0
- package/dist/legacy/utils/excel/ExcelTimeoutManager.d.ts +37 -0
- package/dist/legacy/utils/file.d.ts +34 -0
- package/dist/legacy/utils/http/rest.d.ts +5 -0
- package/dist/legacy/utils/id/generator.d.ts +2 -0
- package/dist/legacy/utils/index.d.ts +10 -0
- package/dist/store.cjs +1 -0
- package/dist/store.js +8 -0
- package/dist/stories/ColumnLockVisible.stories.d.ts +42 -0
- package/dist/stories/DateBooleanFilter.stories.d.ts +42 -0
- package/dist/stories/DisplayedRowApi.stories.d.ts +28 -0
- package/dist/stories/FieldId.stories.d.ts +113 -0
- package/dist/stories/GroupPanelWithoutToolbox.stories.d.ts +28 -0
- package/dist/stories/GroupRowRecycle.stories.d.ts +45 -0
- package/dist/stories/GroupTreeExpandNav.stories.d.ts +41 -0
- package/dist/stories/LargeData.stories.d.ts +20 -0
- package/dist/stories/MozGrid.stories.d.ts +51 -0
- package/dist/stories/PivotBarInitiallyOpen.stories.d.ts +69 -0
- package/dist/stories/PivotBarWithoutToolbox.stories.d.ts +39 -0
- package/dist/stories/SelectionApiPlayground.stories.d.ts +28 -0
- package/dist/stories/SingleSelectionModes.stories.d.ts +47 -0
- package/dist/stories/WideColumns.stories.d.ts +17 -0
- package/dist/style.css +1 -0
- package/dist/templates/CellEditor.d.ts +27 -0
- package/dist/templates/CellTemplate.d.ts +27 -0
- package/dist/templates/DetailTemplate.d.ts +60 -0
- package/dist/templates/GroupTemplate.d.ts +17 -0
- package/dist/templates/HeaderTemplate.d.ts +25 -0
- package/dist/types/injection-keys.d.ts +24 -0
- package/dist/types/slots.d.ts +49 -0
- package/dist/utils/excel/ExcelGuard.cjs +1 -0
- package/dist/utils/excel/ExcelGuard.js +74 -0
- package/dist/utils/excel/ExcelImportUtil.cjs +1 -0
- package/dist/utils/excel/ExcelImportUtil.js +61 -0
- package/dist/utils/excel/ExcelQueueManager.cjs +1 -0
- package/dist/utils/excel/ExcelQueueManager.js +10 -0
- package/dist/utils/excel/ExcelTaskRunner.cjs +1 -0
- package/dist/utils/excel/ExcelTaskRunner.js +12 -0
- package/dist/utils/excel/ExcelTimeoutManager.cjs +1 -0
- package/dist/utils/excel/ExcelTimeoutManager.js +420 -0
- package/docs/manual/examples.md +2385 -0
- package/docs/manual/reference.md +4695 -0
- package/docs/manual/reference_vue.md +709 -0
- package/package.json +129 -0
package/README.md
ADDED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# @vmscloud/moz-ui-grid-vue
|
|
2
|
+
|
|
3
|
+
`@vmscloud/moz-ui-grid-core`의 Vue 3 wrapping 라이브러리입니다. 컴포넌트 `MozGrid`는 바닐라 `GridChrome`(`@vmscloud/moz-ui-grid-wrapper`)을 얇게 감싸는 어댑터입니다. React 버전(`@vmscloud/moz-ui-grid-react`)과 외관·동작·API가 동등합니다.
|
|
4
|
+
|
|
5
|
+
## 설치
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
pnpm add @vmscloud/moz-ui-grid-vue vue
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
npmjs 공개 패키지라 레지스트리 설정이나 토큰 없이 설치됩니다.
|
|
12
|
+
예전에 `.npmrc`에 넣어 둔 `@vmscloud:registry=https://npm.pkg.github.com` 매핑은 제거하세요.
|
|
13
|
+
|
|
14
|
+
단, 필수 peerDependency인 `@vmscloud/moz-ui-components`는 아직 GitHub Packages(private)에만 있습니다.
|
|
15
|
+
같은 스코프를 두 레지스트리에 동시에 매핑할 수 없으므로, 이 패키지만 tarball URL로 지정해 설치하세요.
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
# GitHub Packages 읽기 권한이 있는 환경에서 tarball URL을 조회한 뒤
|
|
19
|
+
npm view @vmscloud/moz-ui-components@<version> dist.tarball --@vmscloud:registry=https://npm.pkg.github.com
|
|
20
|
+
pnpm add "@vmscloud/moz-ui-components@<위에서 얻은 tarball URL>"
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
```ini
|
|
24
|
+
# .npmrc — 인증은 호스트별로만 남기고 스코프는 npmjs로 둡니다
|
|
25
|
+
//npm.pkg.github.com/:_authToken=${GITHUB_PACKAGES_TOKEN}
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## 문서
|
|
29
|
+
|
|
30
|
+
전체 API 레퍼런스가 패키지에 **동봉**됩니다 (`node_modules/@vmscloud/moz-ui-grid-vue/docs/manual/`):
|
|
31
|
+
|
|
32
|
+
- **`reference_vue.md`** — Vue 래퍼(`MozGrid`) Props·Emits·Slots·인스턴스 API
|
|
33
|
+
- **`reference.md`** — 코어(`PureSheet`) Config·타입·이벤트 전체 레퍼런스 (래퍼 문서가 링크로 위임)
|
|
34
|
+
- **`examples.md`** — 코어 사용 예제
|
|
35
|
+
|
|
36
|
+
## 기본 사용법
|
|
37
|
+
|
|
38
|
+
```vue
|
|
39
|
+
<script setup lang="ts">
|
|
40
|
+
import { ref } from 'vue';
|
|
41
|
+
import { MozGrid } from '@vmscloud/moz-ui-grid-vue';
|
|
42
|
+
import type { MozGridCoreProps } from '@vmscloud/moz-ui-grid-vue';
|
|
43
|
+
// 코어 그리드 본체 스타일(.ps-*)은 wrapper 스타일시트에만 있음 → 필수
|
|
44
|
+
import '@vmscloud/moz-ui-grid-wrapper/style.css';
|
|
45
|
+
import '@vmscloud/moz-ui-grid-vue/style.css';
|
|
46
|
+
|
|
47
|
+
const coreConfig = ref<MozGridCoreProps>({
|
|
48
|
+
mode: 'flat',
|
|
49
|
+
fields: [
|
|
50
|
+
{ id: 'name', header: '이름', dataType: 'string', width: 200 },
|
|
51
|
+
{ id: 'age', header: '나이', dataType: 'number', width: 100 },
|
|
52
|
+
],
|
|
53
|
+
data: [
|
|
54
|
+
{ id: 1, name: '홍길동', age: 30 },
|
|
55
|
+
{ id: 2, name: '김철수', age: 25 },
|
|
56
|
+
],
|
|
57
|
+
});
|
|
58
|
+
</script>
|
|
59
|
+
|
|
60
|
+
<template>
|
|
61
|
+
<MozGrid v-model:coreConfig="coreConfig" height="600px" @ready="(g) => console.log(g)" />
|
|
62
|
+
</template>
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## 스타일
|
|
66
|
+
|
|
67
|
+
코어 그리드 본체 스타일(`.ps-*`)은 **`@vmscloud/moz-ui-grid-wrapper/style.css`에만** 포함됩니다 — 위 예제처럼 wrapper 스타일시트를 반드시 import하세요. `@vmscloud/moz-ui-grid-vue/style.css`는 Vue 어댑터 추가 스타일입니다. 자세한 내용은 동봉된 `reference_vue.md`를 참조하세요.
|
|
68
|
+
|
|
69
|
+
## 라이센스
|
|
70
|
+
|
|
71
|
+
ISC
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { GridChrome, WrapperExtras, MozGridCoreProps } from '../../moz-ui-grid-wrapper/src/index.ts';
|
|
2
|
+
import { PureSheet } from '../../moz-ui-grid-core/src/index.ts';
|
|
3
|
+
type __VLS_Props = WrapperExtras & {
|
|
4
|
+
name?: string;
|
|
5
|
+
};
|
|
6
|
+
type __VLS_PublicProps = {
|
|
7
|
+
'coreConfig'?: MozGridCoreProps;
|
|
8
|
+
} & __VLS_Props;
|
|
9
|
+
declare function __VLS_template(): {
|
|
10
|
+
attrs: Partial<{}>;
|
|
11
|
+
slots: {
|
|
12
|
+
default?(_: {}): any;
|
|
13
|
+
};
|
|
14
|
+
refs: {
|
|
15
|
+
hostRef: HTMLDivElement;
|
|
16
|
+
};
|
|
17
|
+
rootEl: any;
|
|
18
|
+
};
|
|
19
|
+
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
20
|
+
declare const __VLS_component: import('vue').DefineComponent<__VLS_PublicProps, {
|
|
21
|
+
grid: PureSheet;
|
|
22
|
+
slots: import('../../moz-ui-grid-wrapper/src/index.ts').SlotHost;
|
|
23
|
+
ui: Required<import('../../moz-ui-grid-wrapper/src/index.ts').WrapperUIOptions>;
|
|
24
|
+
filter: import('../../moz-ui-grid-wrapper/src/index.ts').FilterController;
|
|
25
|
+
sort: import('../../moz-ui-grid-wrapper/src/index.ts').SortController;
|
|
26
|
+
customCell: import('../../moz-ui-grid-wrapper/src/index.ts').CustomCellController;
|
|
27
|
+
bulkEditor: import('../../moz-ui-grid-wrapper/src/index.ts').BulkEditorController;
|
|
28
|
+
columnSettings: import('../../moz-ui-grid-wrapper/src/index.ts').ColumnSettingsController;
|
|
29
|
+
group: import('../../moz-ui-grid-wrapper/src/index.ts').GroupController;
|
|
30
|
+
excel: import('../../moz-ui-grid-wrapper/src/index.ts').ExcelController;
|
|
31
|
+
pivot: import('../../moz-ui-grid-wrapper/src/index.ts').PivotController;
|
|
32
|
+
search: import('../../moz-ui-grid-wrapper/src/index.ts').SearchController;
|
|
33
|
+
columnFormat: import('../../moz-ui-grid-wrapper/src/index.ts').ColumnFormatController;
|
|
34
|
+
contextMenu: import('../../moz-ui-grid-wrapper/src/index.ts').ContextMenuController;
|
|
35
|
+
chart: import('../../moz-ui-grid-wrapper/src/index.ts').ChartController | null;
|
|
36
|
+
chrome: GridChrome | null;
|
|
37
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
38
|
+
contextmenu: (payload: unknown) => any;
|
|
39
|
+
scroll: (payload: unknown) => any;
|
|
40
|
+
"data:loaded": () => any;
|
|
41
|
+
"selection:changed": (payload: unknown) => any;
|
|
42
|
+
"row:reordered": (payload: unknown) => any;
|
|
43
|
+
"row:pinned": (payload: unknown) => any;
|
|
44
|
+
"row:unpinned": (payload: unknown) => any;
|
|
45
|
+
"column:pin": (payload: unknown) => any;
|
|
46
|
+
"column:resize": (payload: unknown) => any;
|
|
47
|
+
"column:reorder": (payload: unknown) => any;
|
|
48
|
+
"rowGroup:batchToggle": (payload: unknown) => any;
|
|
49
|
+
"row:click": (payload: unknown) => any;
|
|
50
|
+
"row:dblclick": (payload: unknown) => any;
|
|
51
|
+
"cell:click": (payload: unknown) => any;
|
|
52
|
+
"cell:dblclick": (payload: unknown) => any;
|
|
53
|
+
"cell:change": (payload: unknown) => any;
|
|
54
|
+
"sort:changed": (payload: unknown) => any;
|
|
55
|
+
"filter:changed": (payload: unknown) => any;
|
|
56
|
+
"header:click": (payload: unknown) => any;
|
|
57
|
+
"header:sortClick": (payload: unknown) => any;
|
|
58
|
+
"header:filterClick": (payload: unknown) => any;
|
|
59
|
+
"undo:stateChange": (payload: unknown) => any;
|
|
60
|
+
"clipboard:copy": (payload: unknown) => any;
|
|
61
|
+
"clipboard:paste": (payload: unknown) => any;
|
|
62
|
+
"validation:changed": (payload: unknown) => any;
|
|
63
|
+
"columnGroup:toggle": (payload: unknown) => any;
|
|
64
|
+
"rowGroup:toggle": (payload: unknown) => any;
|
|
65
|
+
"cell:beforeEdit": (payload: unknown) => any;
|
|
66
|
+
"cell:editCommitting": (payload: unknown) => any;
|
|
67
|
+
"cell:editCommitted": (payload: unknown) => any;
|
|
68
|
+
"cell:tooltip": (payload: unknown) => any;
|
|
69
|
+
"column:visibility": (payload: unknown) => any;
|
|
70
|
+
ready: (grid: PureSheet, chrome: GridChrome) => any;
|
|
71
|
+
"update:coreConfig": (value: MozGridCoreProps) => any;
|
|
72
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
73
|
+
onContextmenu?: ((payload: unknown) => any) | undefined;
|
|
74
|
+
onScroll?: ((payload: unknown) => any) | undefined;
|
|
75
|
+
"onData:loaded"?: (() => any) | undefined;
|
|
76
|
+
"onSelection:changed"?: ((payload: unknown) => any) | undefined;
|
|
77
|
+
"onRow:reordered"?: ((payload: unknown) => any) | undefined;
|
|
78
|
+
"onRow:pinned"?: ((payload: unknown) => any) | undefined;
|
|
79
|
+
"onRow:unpinned"?: ((payload: unknown) => any) | undefined;
|
|
80
|
+
"onColumn:pin"?: ((payload: unknown) => any) | undefined;
|
|
81
|
+
"onColumn:resize"?: ((payload: unknown) => any) | undefined;
|
|
82
|
+
"onColumn:reorder"?: ((payload: unknown) => any) | undefined;
|
|
83
|
+
"onRowGroup:batchToggle"?: ((payload: unknown) => any) | undefined;
|
|
84
|
+
"onRow:click"?: ((payload: unknown) => any) | undefined;
|
|
85
|
+
"onRow:dblclick"?: ((payload: unknown) => any) | undefined;
|
|
86
|
+
"onCell:click"?: ((payload: unknown) => any) | undefined;
|
|
87
|
+
"onCell:dblclick"?: ((payload: unknown) => any) | undefined;
|
|
88
|
+
"onCell:change"?: ((payload: unknown) => any) | undefined;
|
|
89
|
+
"onSort:changed"?: ((payload: unknown) => any) | undefined;
|
|
90
|
+
"onFilter:changed"?: ((payload: unknown) => any) | undefined;
|
|
91
|
+
"onHeader:click"?: ((payload: unknown) => any) | undefined;
|
|
92
|
+
"onHeader:sortClick"?: ((payload: unknown) => any) | undefined;
|
|
93
|
+
"onHeader:filterClick"?: ((payload: unknown) => any) | undefined;
|
|
94
|
+
"onUndo:stateChange"?: ((payload: unknown) => any) | undefined;
|
|
95
|
+
"onClipboard:copy"?: ((payload: unknown) => any) | undefined;
|
|
96
|
+
"onClipboard:paste"?: ((payload: unknown) => any) | undefined;
|
|
97
|
+
"onValidation:changed"?: ((payload: unknown) => any) | undefined;
|
|
98
|
+
"onColumnGroup:toggle"?: ((payload: unknown) => any) | undefined;
|
|
99
|
+
"onRowGroup:toggle"?: ((payload: unknown) => any) | undefined;
|
|
100
|
+
"onCell:beforeEdit"?: ((payload: unknown) => any) | undefined;
|
|
101
|
+
"onCell:editCommitting"?: ((payload: unknown) => any) | undefined;
|
|
102
|
+
"onCell:editCommitted"?: ((payload: unknown) => any) | undefined;
|
|
103
|
+
"onCell:tooltip"?: ((payload: unknown) => any) | undefined;
|
|
104
|
+
"onColumn:visibility"?: ((payload: unknown) => any) | undefined;
|
|
105
|
+
onReady?: ((grid: PureSheet, chrome: GridChrome) => any) | undefined;
|
|
106
|
+
"onUpdate:coreConfig"?: ((value: MozGridCoreProps) => any) | undefined;
|
|
107
|
+
}>, {
|
|
108
|
+
height: string | number;
|
|
109
|
+
useToolBox: boolean;
|
|
110
|
+
useToolBoxSetting: boolean;
|
|
111
|
+
useExtendFooter: boolean;
|
|
112
|
+
useSummaryFooter: boolean;
|
|
113
|
+
useSort: boolean;
|
|
114
|
+
useCustomCell: boolean;
|
|
115
|
+
useContextMenu: boolean;
|
|
116
|
+
usePivotBar: boolean;
|
|
117
|
+
useBuiltinTooltip: boolean;
|
|
118
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
|
|
119
|
+
hostRef: HTMLDivElement;
|
|
120
|
+
}, any>;
|
|
121
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
122
|
+
export default _default;
|
|
123
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
124
|
+
new (): {
|
|
125
|
+
$slots: S;
|
|
126
|
+
};
|
|
127
|
+
};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { AppContext, Component } from 'vue';
|
|
2
|
+
export declare class VueRenderer {
|
|
3
|
+
private instances;
|
|
4
|
+
private appContext;
|
|
5
|
+
/** 부모 앱 컨텍스트 캡처 (MozGridVue setup에서 호출) */
|
|
6
|
+
setAppContext(ctx: AppContext): void;
|
|
7
|
+
/**
|
|
8
|
+
* Vue 컴포넌트를 DOM 요소에 마운트합니다.
|
|
9
|
+
*
|
|
10
|
+
* 동일 key로 재호출 시 props만 업데이트합니다 (재마운트 없음).
|
|
11
|
+
*/
|
|
12
|
+
mount(key: string, container: HTMLElement, component: Component, props?: Record<string, unknown>): void;
|
|
13
|
+
/**
|
|
14
|
+
* 컨테이너 단위 lifecycle 인스턴스 마운트 (키 없음).
|
|
15
|
+
*
|
|
16
|
+
* core 의 LifecycleCellRenderer(arity 2: `(container, params) => instance`) 전용.
|
|
17
|
+
* 전역 키맵을 쓰지 않고 셀 컨테이너마다 독립 app 을 만들며, reactive props 로 갱신(update),
|
|
18
|
+
* unmount 로 정리(destroy)한다. 가상 스크롤 재사용은 destroy 없이 update(props 교체)로 처리되어
|
|
19
|
+
* mount/destroy 반복 비용이 없다. (키 충돌·미재마운트로 셀이 안 그려지던 버그 해소)
|
|
20
|
+
*/
|
|
21
|
+
mountInstance(container: HTMLElement, slot: (props: Record<string, unknown>) => unknown, initialProps: Record<string, unknown>): {
|
|
22
|
+
update: (props: Record<string, unknown>) => void;
|
|
23
|
+
destroy: () => void;
|
|
24
|
+
};
|
|
25
|
+
/** props 업데이트 (재마운트 없음) */
|
|
26
|
+
updateProps(key: string, props: Record<string, unknown>): void;
|
|
27
|
+
/** 특정 인스턴스 언마운트 */
|
|
28
|
+
unmount(key: string): void;
|
|
29
|
+
/** 접두사 기반 일괄 언마운트 (예: 'cell:' 접두사의 모든 셀 인스턴스) */
|
|
30
|
+
unmountByPrefix(prefix: string): void;
|
|
31
|
+
/** 전체 인스턴스 언마운트 */
|
|
32
|
+
unmountAll(): void;
|
|
33
|
+
/** 현재 마운트된 인스턴스 수 */
|
|
34
|
+
get size(): number;
|
|
35
|
+
/** 특정 key의 인스턴스가 존재하는지 확인 */
|
|
36
|
+
has(key: string): boolean;
|
|
37
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { FieldDef } from '../../../moz-ui-grid-core/src/index.ts';
|
|
2
|
+
import { TemplateRegistry } from '../types/slots';
|
|
3
|
+
import { VueRenderer } from './VueRenderer';
|
|
4
|
+
/**
|
|
5
|
+
* 사용자 FieldDef + 등록된 템플릿 → cellRenderer/headerRenderer/editor 주입.
|
|
6
|
+
*
|
|
7
|
+
* TemplateRegistry에 등록된 슬롯을 FieldDef의 콜백으로 변환합니다.
|
|
8
|
+
*/
|
|
9
|
+
export declare function buildFieldDefs(fields: FieldDef[], registry: TemplateRegistry, renderer: VueRenderer): FieldDef[];
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { TemplateRegistry } from '../types/slots';
|
|
2
|
+
/**
|
|
3
|
+
* 템플릿 레지스트리 생성.
|
|
4
|
+
*
|
|
5
|
+
* CellTemplate, HeaderTemplate, CellEditor, DetailTemplate, GroupTemplate이
|
|
6
|
+
* setup 시 register하고, unmount 시 unregister합니다.
|
|
7
|
+
*/
|
|
8
|
+
export declare function createTemplateRegistry(): TemplateRegistry;
|