realgrid-vue 0.9.5 → 0.9.7
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/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -0
- package/dist/index.d.ts +12 -8
- package/dist/index.es.js +5 -4
- package/dist/index.es.js.map +1 -0
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const w=require("realgrid"),i=require("vue");function C(t){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const n in t)if(n!=="default"){const o=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,o.get?o:{enumerable:!0,get:()=>t[n]})}}return e.default=t,Object.freeze(e)}const h=C(w),F=t=>t.replace(/-./g,e=>e[1].toUpperCase()),r=(t,e="")=>{const n={};for(let o in t)n[F(e?`${e}-${o}`:o)]=i.toRaw(t[o]);return n},m=(t,e={},n={})=>{t=t||{};const o=["children"];for(const[a,s]of Object.entries(e))if(!o.includes(a))if(!n.hasOwnProperty(a))t[a]=null;else if(Array.isArray(s))(!n[a]||JSON.stringify(s)!=JSON.stringify(n[a]))&&(t[a]=n[a]);else if(s instanceof Object&&!(s instanceof Date||Array.isArray(s)||typeof s=="function"))if(!(n[a]instanceof Object))t[a]=n[a];else{const d=m({},s,n[a]);d&&Object.keys(d).length>0&&(t[a]=d)}else s!==n[a]&&(t[a]=n[a]);for(const[a,s]of Object.entries(n))o.includes(a)||e.hasOwnProperty(a)||(t[a]=s);return t},R=(t,e,n)=>{for(const[o,a]of Object.entries(n))o&&typeof a=="function"&&o.startsWith("on")&&(o==="onRowInserting"?t.onRowInserting=a:o==="onDataRowInserting"?e.onRowInserting=a:(t.hasOwnProperty(o)&&(t[o]=a),e.hasOwnProperty(o)&&(e[o]=a)))},p=()=>i.defineComponent({name:"RealGridBase",props:{disabled:Boolean,gridProps:Object,dataProps:Object,locale:Object,autoGenerateField:Boolean,rows:Array,rowStyleCallback:Function,cellStyleCallback:Function,layout:Array,onInitialized:Function,onDestroy:Function,onCurrentChanging:Function,onCurrentChanged:Function,onCurrentRowChanged:Function,onValidateColumn:Function,onValidateRow:Function,onValidationFail:Function,onColumnCheckedChanged:Function,onMenuItemClicked:Function,onContextMenuPopup:Function,onContextMenuItemClicked:Function,onCellButtonClicked:Function,onScrollToBottom:Function,onTopIndexChanged:Function,onTopIndexChanging:Function,onLeftPosChanged:Function,onRowsDeleting:Function,onRowInserting:Function,onSelectionCleared:Function,onSelectionChanged:Function,onSelectionAdded:Function,onSelectionEnded:Function,onShowEditor:Function,onShowEditCommand:Function,onHideEditor:Function,onEditChange:Function,onGetEditValue:Function,onEditCommit:Function,onEditCanceled:Function,onItemEditCanceled:Function,onItemEditCancel:Function,onEditSearch:Function,onSearchCellButtonClick:Function,onCellEdited:Function,onEditRowChanged:Function,onEditRowPasted:Function,onRowsPasted:Function,onCellPasting:Function,onItemChecked:Function,onItemAllChecked:Function,onErrorClicked:Function,onSorting:Function,onSortingChanged:Function,onFiltering:Function,onFilteringChanged:Function,onWheel:Function,onKeyDown:Function,onKeyPress:Function,onKeyUp:Function,onShowTooltip:Function,onShowHeaderTooltip:Function,onColumnPropertyChanged:Function,onLayoutPropertyChanged:Function,onGridActivated:Function,onCopy:Function,onPaste:Function,onPasted:Function,onItemsChecked:Function,onCellClicked:Function,onCellDblClicked:Function,onCellItemClicked:Function,onCommandStackChanged:Function,onDataLoadComplated:Function,onLayoutExpanding:Function,onLayoutExpanded:Function,onLayoutCollapsing:Function,onLayoutCollapsed:Function,onGridFocusChanged:Function},data(){return{$dataProvider:null,$gridView:null,_mountTimer:null,_mountCBs:[]}},mounted(){const t=this.$el,e=r(i.toRaw(this.$props)),{grid:n,dataProvider:o}=this._createGrid(t,e);this.dataProvider=o,this.gridView=n,this.executeCB(),R(n,o,e),this._applyOptions(e),e.layout&&n.setColumnLayout(e.layout),this._doInitProc(n,e),this._setData(e)},computed:{dataProvider:{get(){return i.toRaw(this.$data.$dataProvider)},set(t){this.$dataProvider=t}},gridView:{get(){return i.toRaw(this.$data.$gridView)},set(t){this.$gridView=t}}},unmounted(){const t=r(this.$props),e=r(this.$attrs,"on"),n=t.onDestroy||e.onDestroy;n&&n(this.gridView),this.gridView=this.gridView&&this.gridView.destroy(),this.dataProvider=this.dataProvider&&this.dataProvider.destroy()},destroyed(){const t=r(this.$props),e=r(this.$attrs,"on"),n=t.onDestroy||e.onDestroy;n&&n(this.gridView),this.gridView=this.gridView&&this.gridView.destroy(),this.dataProvider=this.dataProvider&&this.dataProvider.destroy()},watch:{gridProps:{handler(t,e){const n=m({},e,t);this.gridView&&n&&Object.keys(n).length>0&&this.gridView.setOptions(n)},deep:!0},disabled(t,e){this.gridView&&(this.gridView.disabled=t)},dataProps:{handler(t,e){const n=m({},e,t);this.dataProvider&&n&&Object.keys(n).length>0&&this.dataProvider.setOptions(n)},deep:!0},locale:{handler(t,e){t&&h.default.setLocale(t)}},layout:{handler(t,e){this.gridView&&this.gridView.setColumnLayout(t)},deep:!0}},methods:{addCallback(t){this.$data._mountCBs.push(t),clearTimeout(this.$data._mountTimer);const e=this;this.$data._mountTimer=window.setTimeout(function(){e.executeCB()},20)},removeCallback(t){if(this.$data._mountCBs.indexOf(t)>=0){const e=this.$data._mountCBs.indexOf(t);this.$data._mountCBs.splice(e,1)}},executeCB(){const t=this.gridView,e=this.dataProvider;if(t&&(clearTimeout(this._mountTimer),t&&t._view)){t.beginUpdate();try{e==null||e.beginUpdate();try{const n=this.$data._mountCBs.sort((o,a)=>(o.$mountSeq==null?-1:o.$mountSeq)-(a.$mountSeq==null?-1:a.$mountSeq));for(;n&&n.length;){const o=n.shift();o==null||o.call(this,t)}}finally{e==null||e.endUpdate()}}finally{t.endUpdate(!0),this.$data._mountTimer=null,this.$data._mountCBs=[]}}},_applyOptions(t){const e=this.gridView,n=this.dataProvider;if(e)for(let[o,a]of Object.entries(t))switch(o){case"gridProps":a&&e.setOptions(a);break;case"disabled":e&&(e.disabled=!!a);break;case"dataProps":a&&(n==null||n.setOptions(a));break;case"layout":a&&e&&e.setColumnLayout(a);break;case"rowStyleCallback":e.setRowStyleCallback(a);break;case"cellStyleCallback":e.setCellStyleCallback(a);break;case"locale":a&&h.default.setLocale(a);break}this._doApplyOptions(t)},_createGrid(t,e){return{grid:null,dataProvider:null}},_doInitProc(t,e){const n=e.onInitialized;if(n){const o=n.constructor.name;o==="Function"?n(t):o==="AsyncFunction"&&Promise.resolve(n(t))}},_doApplyOptions(t){},_setData(t){}},render(){var s;const t=d=>{const l=[];if(Array.isArray(d))for(let u of d)Array.isArray(u.children)?l.push(...t(u.children)):l.push(u);return l},e=[];for(let d of Object.keys(this.$slots)){let l=this.$slots[d];typeof l=="function"&&(l=l()),e.push(...t(l))}let n=0;for(let d=0;d<e.length;d++){const l=e[d];if(l.type instanceof Object&&l.type.hasOwnProperty("name")){const u=l.type.name;u&&/^RG.+Column$/.exec(u)&&(l.props=l.props||{},l.props&&((s=l.props).displayIndex??(s.displayIndex=n++)))}l.$mountSeq=d}const o=this.$attrs.style?this.$attrs.style:{width:"100%",height:"100%"};return i.h("div",{style:o},e)}}),f=i.defineComponent({name:"RealGridVue",extends:p(),props:{accessibility:Boolean,waiOptions:Object,onPageChanging:Function,onPageChanged:Function,onPageCountChanged:Function,onGrouping:Function,onGrouped:Function,onExpanding:Function,onExpanded:Function,onCollapsing:Function,onCollapsed:Function,onRowCountChanged:Function,onRowUpdating:Function,onRowUpdated:Function,onRowsUpdated:Function,onRowListUpdated:Function,onDataRowInserting:Function,onRowInserted:Function,onRowsInserted:Function,onRowDeleting:Function,onRowDeleted:Function,onRowsDeleted:Function,onRowMoving:Function,onRowMoved:Function,onRowsMoving:Function,onRowsMoved:Function,onRowListMoving:Function,onRowListMoved:Function,onValueChanged:Function,onDataChanged:Function,onRowStateChanged:Function,onRowStatesChanged:Function,onRowStatesCleared:Function,onRestoreRows:Function},data(){return{$dataProvider:null,$gridView:null}},watch:{rows:{handler(t,e){var n;if(this.$data._mountTimer!=null){const o=()=>{i.nextTick(()=>{var a;(a=this.dataProvider)==null||a.setRows(i.toRaw(t))})};o.$mountSeq=1/0,this.addCallback(o)}else(n=this.dataProvider)==null||n.setRows(i.toRaw(t))}}},methods:{_createGrid(t,e){var a;const n=new h.default.GridView(t,e==null?void 0:e.accessibility,e==null?void 0:e.waiOptions),o=new h.default.LocalDataProvider((a=e.dataProps)==null?void 0:a.undoable);return n.setDataSource(o),{grid:n,dataProvider:o}},_doApplyOptions(t){},_setData(t){var e;t.rows&&((e=this.dataProvider)==null||e.setRows(i.toRaw(t.rows)))}}}),$=i.defineComponent({name:"RealTreeVue",extends:p(),props:{treeOptions:Object,treeField:String,needSorting:Boolean,childrenField:String,iconField:String,json:Object,rowsProp:String,childrenProp:String,iconProp:String,onTreeItemExpanding:Function,onTreeItemExpanded:Function,onTreeItemCollapsing:Function,onTreeItemCollapsed:Function,onTreeItemChanged:Function,onRowCountChanged:Function,onRowAdding:Function,onRowAdded:Function,onRowsAdded:Function,onRowDeleting:Function,onRowDeleted:Function,onRowsDeleted:Function,onRowUpdating:Function,onRowUpdated:Function,onRowsUpdating:Function,onRowsUpdated:Function,onValueChanged:Function,onDataChanged:Function,onRowStateChanged:Function,onRowStatesChanged:Function,onRowSiblingMoving:Function,onRowSiblingMoved:Function,onRowsSiblingMoving:Function,onRowsSiblingMoved:Function,onRowParentChanging:Function,onRowParentChanged:Function},data(){return{$gridView:null,$dataProvider:null}},computed:{gridView:{get(){return i.toRaw(this.$data.$gridView)},set(t){this.$gridView=t}},dataProvider:{get(){return i.toRaw(this.$data.$dataProvider)},set(t){this.$dataProvider=t}}},methods:{_createGrid(t,e){var a;const n=new h.TreeView(t),o=new h.LocalTreeDataProvider((a=e.dataProps)==null?void 0:a.undoable);return n.setDataSource(o),{grid:n,dataProvider:o}},_doApplyOptions(t){var e;for(const[n,o]of Object.entries(t))switch(n){case"treeOptions":o&&((e=this.gridView)==null||e.setTreeOptions(i.toRaw(o)));break}},_setData(t){var e,n;t.rows?(e=this.dataProvider)==null||e.setRows(i.toRaw(t.rows),this.treeField,this.needSorting,this.childrenField,this.iconField):t.json&&((n=this.dataProvider)==null||n.setObjectRows(i.toRaw(t.json),this.rowsProp,this.childrenProp,this.iconProp))}},watch:{rows:{handler(t,e){var n;if(this.$data._mountTimer!=null){const o=()=>{i.nextTick(()=>{var a;(a=this.dataProvider)==null||a.setRows(i.toRaw(t),this.treeField,this.needSorting,this.childrenField,this.iconField)})};o.$mountSeq=1/0,this.addCallback(o)}else(n=this.dataProvider)==null||n.setRows(i.toRaw(t),this.treeField,this.needSorting,this.childrenField,this.iconField)}},json:{handler(t,e){var n;if(this.$data._mountTimer!=null){const o=()=>{i.nextTick(()=>{var a;(a=this.dataProvider)==null||a.setObjectRows(i.toRaw(t),this.rowsProp,this.childrenProp,this.iconProp)})};o.$mountSeq=1/0,this.addCallback(o)}else(n=this.dataProvider)==null||n.setObjectRows(i.toRaw(t),this.rowsProp,this.childrenProp,this.iconProp)}}}}),c=i.defineComponent({name:"ComponentBase",props:{},data(){return{$model:null,$oldValue:null}},mounted(){const t=i.toRaw(this.$parent);t&&(this.$oldValue=r(i.toRaw(this.$attrs)),this.mountCB.$mountSeq=this.$.vnode.$mountSeq,t.addCallback(this.mountCB))},unmounted(){const t=this.$parent;t&&(t.removeCallback(this.mountCB),t.addCallback(this.unmountCB))},destroyed(){const t=this.$parent;t&&(t.removeCallback(this.mountCB),t.addCallback(this.unmountCB))},watch:{$attrs:{handler(t,e){var a;const n=r(i.toRaw(t)),o=m({},r(i.toRaw(this.$data.$oldValue)),r(i.toRaw(t)));if(o&&Object.keys(o).length>0){const s=i.toRaw((a=this.$data)==null?void 0:a.$model);s&&s.assignFrom&&s.assignFrom(n),this._doWatchAttrs(o),this.$oldValue=n}},deep:!0}},methods:{mountCB(){},unmountCB(){},_doWatchAttrs(t){}},render(){}}),y=i.defineComponent({name:"RGSeriesColumn",extends:c,data(){return{}},props:{},methods:{mountCB(t){var n;if(r(i.toRaw((n=this.$parent)==null?void 0:n.$attrs))){const o=r(i.toRaw(this.$attrs));t&&(this.$model=t.addColumn({...o,type:"series"},o.displayIndex??-1))}},unmountCB(t){this.$data.$model&&t.removeColumn(this.$data.$model.name)},_doWatchAttrs(t){if(t.hasOwnProperty("width")&&!isNaN(t.width)){const n=i.toRaw(this.$data.$model).layout;n&&(n.cellWidth=t.width)}}}}),g=i.defineComponent({name:"RGStateBar",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setStateBar(r(i.toRaw(this.$attrs))),this.$model=t.stateBar}}}),P=i.defineComponent({name:"RGRowIndicator",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setRowIndicator(r(i.toRaw(this.$attrs))),this.$model=t.rowIndicator}}}),S=i.defineComponent({name:"RGHeaderSummaries",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setHeaderSummaries(r(i.toRaw(this.$attrs))),this.$model=t.headerSummaries}}}),b=i.defineComponent({name:"RGHeaderSummary",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setHeaderSummary(r(i.toRaw(this.$attrs))),this.$model=t.headerSummary}}}),G=i.defineComponent({name:"RGHeader",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setHeader(r(i.toRaw(this.$attrs))),this.$model=t.header}}}),k=i.defineComponent({name:"RGGroupPanel",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setGroupPanel(r(i.toRaw(this.$attrs))),this.$model=t.groupPanel}}}),B=i.defineComponent({name:"RGFooter",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setFooter(r(i.toRaw(this.$attrs))),this.$model=t.footer}}}),v=i.defineComponent({name:"RGFooters",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setFooters(r(i.toRaw(this.$attrs))),this.$model=t.footer}}}),O=i.defineComponent({name:"RGFilterPanel",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setFilterPanel(r(i.toRaw(this.$attrs))),this.$model=t.filterPanel}}}),V=i.defineComponent({name:"RGDataField",extends:c,props:{},data(){return{}},methods:{mountCB(t){const e=r(i.toRaw(this.$attrs));if(e.fieldName){const n=t.getDataSource();n.fieldByName(e.fieldName)||(this.$model=n.addField(e,!0))}},unmountDB(t){this.$model&&t.getDataSource().removeField(this.$model)}}}),x=i.defineComponent({name:"RGDataColumn",extends:c,data(){return{}},props:{},methods:{mountCB(t){var n;const e=r(i.toRaw((n=this.$parent)==null?void 0:n.$props));if(e){const o=e.autoGenerateField,a=t==null?void 0:t.getDataSource(),s=r(i.toRaw(this.$attrs));let d=s.fieldName;o&&(!d&&s.field&&(d=s.field.fieldName),a&&!a.fieldByName(d)&&a.addField(s.field||d)),t&&(this.$model=t.addColumn({...s,fieldName:d},s.displayIndex??-1))}},unmountCB(t){var n;this.$data.$model&&t.removeColumn(this.$data.$model.name);const e=r(i.toRaw((n=this.$parent)==null?void 0:n.$props));if(e){const o=e.autoGenerateField,a=t==null?void 0:t.getDataSource(),s=r(i.toRaw(this.$attrs));let d=s.fieldName;o&&(!d&&s.field&&(d=s.field.fieldName),t.columnByField(d)||a.removeField(d))}},_doWatchAttrs(t){if(t.hasOwnProperty("width")&&!isNaN(t.width)){const n=i.toRaw(this.$data.$model).layout;n&&(n.cellWidth=t.width)}}}}),D=i.defineComponent({name:"RGLiteralColumn",extends:c,data(){return{}},props:{},methods:{mountCB(t){var n;if(r(i.toRaw((n=this.$parent)==null?void 0:n.$attrs))){const o=r(i.toRaw(this.$attrs));t&&(this.$model=t.addColumn({...o,type:"literal"},o.displayIndex??-1))}},unmountCB(t){this.$data.$model&&t.removeColumn(this.$data.$model.name)},_doWatchAttrs(t){if(t.hasOwnProperty("width")&&!isNaN(t.width)){const n=i.toRaw(this.$data.$model).layout;n&&(n.cellWidth=t.width)}}}}),_=i.defineComponent({name:"RGCheckBar",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setCheckBar(r(i.toRaw(this.$attrs))),this.$model=t.checkBar}}});exports.RGCheckBar=_;exports.RGDataColumn=x;exports.RGDataField=V;exports.RGFilterPanel=O;exports.RGFooter=B;exports.RGFooters=v;exports.RGGroupPanel=k;exports.RGHeader=G;exports.RGHeaderSummaries=S;exports.RGHeaderSummary=b;exports.RGLiteralColumn=D;exports.RGRowIndicator=P;exports.RGSeriesColumn=y;exports.RGStateBar=g;exports.RealGridVue=f;exports.RealTreeVue=$;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const w=require("realgrid"),i=require("vue");function C(t){const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const n in t)if(n!=="default"){const o=Object.getOwnPropertyDescriptor(t,n);Object.defineProperty(e,n,o.get?o:{enumerable:!0,get:()=>t[n]})}}return e.default=t,Object.freeze(e)}const h=C(w),F=t=>t.replace(/-./g,e=>e[1].toUpperCase()),r=(t,e="")=>{const n={};for(let o in t)n[F(e?`${e}-${o}`:o)]=i.toRaw(t[o]);return n},m=(t,e={},n={})=>{t=t||{};const o=["children"];for(const[a,s]of Object.entries(e))if(!o.includes(a))if(!n.hasOwnProperty(a))t[a]=null;else if(Array.isArray(s))(!n[a]||JSON.stringify(s)!=JSON.stringify(n[a]))&&(t[a]=n[a]);else if(s instanceof Object&&!(s instanceof Date||Array.isArray(s)||typeof s=="function"))if(!(n[a]instanceof Object))t[a]=n[a];else{const d=m({},s,n[a]);d&&Object.keys(d).length>0&&(t[a]=d)}else s!==n[a]&&(t[a]=n[a]);for(const[a,s]of Object.entries(n))o.includes(a)||e.hasOwnProperty(a)||(t[a]=s);return t},R=(t,e,n)=>{for(const[o,a]of Object.entries(n))o&&typeof a=="function"&&o.startsWith("on")&&(o==="onRowInserting"?t.onRowInserting=a:o==="onDataRowInserting"?e.onRowInserting=a:(t.hasOwnProperty(o)&&(t[o]=a),e.hasOwnProperty(o)&&(e[o]=a)))},p=()=>i.defineComponent({name:"RealGridBase",props:{disabled:Boolean,gridProps:Object,dataProps:Object,locale:Object,autoGenerateField:Boolean,rows:Array,rowStyleCallback:Function,cellStyleCallback:Function,layout:Array,onInitialized:Function,onDestroy:Function,onCurrentChanging:Function,onCurrentChanged:Function,onCurrentRowChanged:Function,onValidateColumn:Function,onValidateRow:Function,onValidationFail:Function,onColumnCheckedChanged:Function,onMenuItemClicked:Function,onContextMenuPopup:Function,onContextMenuItemClicked:Function,onCellButtonClicked:Function,onScrollToBottom:Function,onTopIndexChanged:Function,onTopIndexChanging:Function,onLeftPosChanged:Function,onRowsDeleting:Function,onRowInserting:Function,onSelectionCleared:Function,onSelectionChanged:Function,onSelectionAdded:Function,onSelectionEnded:Function,onShowEditor:Function,onShowEditCommand:Function,onHideEditor:Function,onEditChange:Function,onGetEditValue:Function,onEditCommit:Function,onEditCanceled:Function,onItemEditCanceled:Function,onItemEditCancel:Function,onEditSearch:Function,onSearchCellButtonClick:Function,onCellEdited:Function,onEditRowChanged:Function,onEditRowPasted:Function,onRowsPasted:Function,onCellPasting:Function,onItemChecked:Function,onItemAllChecked:Function,onErrorClicked:Function,onSorting:Function,onSortingChanged:Function,onFiltering:Function,onFilteringChanged:Function,onWheel:Function,onKeyDown:Function,onKeyPress:Function,onKeyUp:Function,onShowRowBarTooltip:Function,onShowTooltip:Function,onShowHeaderTooltip:Function,onColumnPropertyChanged:Function,onLayoutPropertyChanged:Function,onGridActivated:Function,onCopy:Function,onPaste:Function,onPasted:Function,onItemsChecked:Function,onCellClicked:Function,onCellDblClicked:Function,onCellItemClicked:Function,onCommandStackChanged:Function,onDataLoadComplated:Function,onLayoutExpanding:Function,onLayoutExpanded:Function,onLayoutCollapsing:Function,onLayoutCollapsed:Function,onGridFocusChanged:Function},data(){return{$dataProvider:null,$gridView:null,_mountTimer:null,_mountCBs:[]}},mounted(){const t=this.$el,e=r(i.toRaw(this.$props)),{grid:n,dataProvider:o}=this._createGrid(t,e);this.dataProvider=o,this.gridView=n,this.executeCB(),R(n,o,e),this._applyOptions(e),e.layout&&n.setColumnLayout(e.layout),this._doInitProc(n,e),this._setData(e)},computed:{dataProvider:{get(){return i.toRaw(this.$data.$dataProvider)},set(t){this.$dataProvider=t}},gridView:{get(){return i.toRaw(this.$data.$gridView)},set(t){this.$gridView=t}}},unmounted(){const t=r(this.$props),e=r(this.$attrs,"on"),n=t.onDestroy||e.onDestroy;n&&n(this.gridView),this.gridView=this.gridView&&this.gridView.destroy(),this.dataProvider=this.dataProvider&&this.dataProvider.destroy()},destroyed(){const t=r(this.$props),e=r(this.$attrs,"on"),n=t.onDestroy||e.onDestroy;n&&n(this.gridView),this.gridView=this.gridView&&this.gridView.destroy(),this.dataProvider=this.dataProvider&&this.dataProvider.destroy()},watch:{gridProps:{handler(t,e){const n=m({},e,t);this.gridView&&n&&Object.keys(n).length>0&&this.gridView.setOptions(n)},deep:!0},disabled(t,e){this.gridView&&(this.gridView.disabled=t)},dataProps:{handler(t,e){const n=m({},e,t);this.dataProvider&&n&&Object.keys(n).length>0&&this.dataProvider.setOptions(n)},deep:!0},locale:{handler(t,e){t&&h.default.setLocale(t)}},layout:{handler(t,e){this.gridView&&this.gridView.setColumnLayout(t)},deep:!0}},methods:{addCallback(t){this.$data._mountCBs.push(t),clearTimeout(this.$data._mountTimer);const e=this;this.$data._mountTimer=window.setTimeout(function(){e.executeCB()},20)},removeCallback(t){if(this.$data._mountCBs.indexOf(t)>=0){const e=this.$data._mountCBs.indexOf(t);this.$data._mountCBs.splice(e,1)}},executeCB(){const t=this.gridView,e=this.dataProvider;if(t&&(clearTimeout(this._mountTimer),t&&t._view)){t.beginUpdate();try{e==null||e.beginUpdate();try{const n=this.$data._mountCBs.sort((o,a)=>(o.$mountSeq==null?-1:o.$mountSeq)-(a.$mountSeq==null?-1:a.$mountSeq));for(;n&&n.length;){const o=n.shift();o==null||o.call(this,t)}}finally{e==null||e.endUpdate()}}finally{t.endUpdate(!0),this.$data._mountTimer=null,this.$data._mountCBs=[]}}},_applyOptions(t){const e=this.gridView,n=this.dataProvider;if(e)for(let[o,a]of Object.entries(t))switch(o){case"gridProps":a&&e.setOptions(a);break;case"disabled":e&&(e.disabled=!!a);break;case"dataProps":a&&(n==null||n.setOptions(a));break;case"layout":a&&e&&e.setColumnLayout(a);break;case"rowStyleCallback":e.setRowStyleCallback(a);break;case"cellStyleCallback":e.setCellStyleCallback(a);break;case"locale":a&&h.default.setLocale(a);break}this._doApplyOptions(t)},_createGrid(t,e){return{grid:null,dataProvider:null}},_doInitProc(t,e){const n=e.onInitialized;if(n){const o=n.constructor.name;o==="Function"?n(t):o==="AsyncFunction"&&Promise.resolve(n(t))}},_doApplyOptions(t){},_setData(t){}},render(){var s;const t=d=>{const l=[];if(Array.isArray(d))for(let u of d)Array.isArray(u.children)?l.push(...t(u.children)):l.push(u);return l},e=[];for(let d of Object.keys(this.$slots)){let l=this.$slots[d];typeof l=="function"&&(l=l()),e.push(...t(l))}let n=0;for(let d=0;d<e.length;d++){const l=e[d];if(l.type instanceof Object&&l.type.hasOwnProperty("name")){const u=l.type.name;u&&/^RG.+Column$/.exec(u)&&(l.props=l.props||{},l.props&&((s=l.props).displayIndex??(s.displayIndex=n++)))}l.$mountSeq=d}const o=this.$attrs.style?this.$attrs.style:{width:"100%",height:"100%"};return i.h("div",{style:o},e)}}),f=i.defineComponent({name:"RealGridVue",extends:p(),props:{accessibility:Boolean,waiOptions:Object,onPageChanging:Function,onPageChanged:Function,onPageCountChanged:Function,onGrouping:Function,onGrouped:Function,onExpanding:Function,onExpanded:Function,onCollapsing:Function,onCollapsed:Function,onRowCountChanged:Function,onRowUpdating:Function,onRowUpdated:Function,onRowsUpdated:Function,onRowListUpdated:Function,onDataRowInserting:Function,onRowInserted:Function,onRowsInserted:Function,onRowDeleting:Function,onRowDeleted:Function,onRowsDeleted:Function,onRowMoving:Function,onRowMoved:Function,onRowsMoving:Function,onRowsMoved:Function,onRowListMoving:Function,onRowListMoved:Function,onValueChanged:Function,onDataChanged:Function,onRowStateChanged:Function,onRowStatesChanged:Function,onRowStatesCleared:Function,onRestoreRows:Function},data(){return{$dataProvider:null,$gridView:null}},watch:{rows:{handler(t,e){var n;if(this.$data._mountTimer!=null){const o=()=>{i.nextTick(()=>{var a;(a=this.dataProvider)==null||a.setRows(i.toRaw(t))})};o.$mountSeq=1/0,this.addCallback(o)}else(n=this.dataProvider)==null||n.setRows(i.toRaw(t))}}},methods:{_createGrid(t,e){var a;const n=new h.default.GridView(t,e==null?void 0:e.accessibility,e==null?void 0:e.waiOptions),o=new h.default.LocalDataProvider((a=e.dataProps)==null?void 0:a.undoable);return n.setDataSource(o),{grid:n,dataProvider:o}},_doApplyOptions(t){},_setData(t){var e;t.rows&&((e=this.dataProvider)==null||e.setRows(i.toRaw(t.rows)))}}}),$=i.defineComponent({name:"RealTreeVue",extends:p(),props:{treeOptions:Object,treeField:String,needSorting:Boolean,childrenField:String,iconField:String,json:Object,rowsProp:String,childrenProp:String,iconProp:String,onTreeItemExpanding:Function,onTreeItemExpanded:Function,onTreeItemCollapsing:Function,onTreeItemCollapsed:Function,onTreeItemChanged:Function,onRowCountChanged:Function,onRowAdding:Function,onRowAdded:Function,onRowsAdded:Function,onRowDeleting:Function,onRowDeleted:Function,onRowsDeleted:Function,onRowUpdating:Function,onRowUpdated:Function,onRowsUpdating:Function,onRowsUpdated:Function,onValueChanged:Function,onDataChanged:Function,onRowStateChanged:Function,onRowStatesChanged:Function,onRowSiblingMoving:Function,onRowSiblingMoved:Function,onRowsSiblingMoving:Function,onRowsSiblingMoved:Function,onRowParentChanging:Function,onRowParentChanged:Function},data(){return{$gridView:null,$dataProvider:null}},computed:{gridView:{get(){return i.toRaw(this.$data.$gridView)},set(t){this.$gridView=t}},dataProvider:{get(){return i.toRaw(this.$data.$dataProvider)},set(t){this.$dataProvider=t}}},methods:{_createGrid(t,e){var a;const n=new h.TreeView(t),o=new h.LocalTreeDataProvider((a=e.dataProps)==null?void 0:a.undoable);return n.setDataSource(o),{grid:n,dataProvider:o}},_doApplyOptions(t){var e;for(const[n,o]of Object.entries(t))switch(n){case"treeOptions":o&&((e=this.gridView)==null||e.setTreeOptions(i.toRaw(o)));break}},_setData(t){var e,n;t.rows?(e=this.dataProvider)==null||e.setRows(i.toRaw(t.rows),this.treeField,this.needSorting,this.childrenField,this.iconField):t.json&&((n=this.dataProvider)==null||n.setObjectRows(i.toRaw(t.json),this.rowsProp,this.childrenProp,this.iconProp))}},watch:{rows:{handler(t,e){var n;if(this.$data._mountTimer!=null){const o=()=>{i.nextTick(()=>{var a;(a=this.dataProvider)==null||a.setRows(i.toRaw(t),this.treeField,this.needSorting,this.childrenField,this.iconField)})};o.$mountSeq=1/0,this.addCallback(o)}else(n=this.dataProvider)==null||n.setRows(i.toRaw(t),this.treeField,this.needSorting,this.childrenField,this.iconField)}},json:{handler(t,e){var n;if(this.$data._mountTimer!=null){const o=()=>{i.nextTick(()=>{var a;(a=this.dataProvider)==null||a.setObjectRows(i.toRaw(t),this.rowsProp,this.childrenProp,this.iconProp)})};o.$mountSeq=1/0,this.addCallback(o)}else(n=this.dataProvider)==null||n.setObjectRows(i.toRaw(t),this.rowsProp,this.childrenProp,this.iconProp)}}}}),c=i.defineComponent({name:"ComponentBase",props:{},data(){return{$model:null,$oldValue:null}},mounted(){const t=i.toRaw(this.$parent);t&&(this.$oldValue=r(i.toRaw(this.$attrs)),this.mountCB.$mountSeq=this.$.vnode.$mountSeq,t.addCallback(this.mountCB))},unmounted(){const t=this.$parent;t&&(t.removeCallback(this.mountCB),t.addCallback(this.unmountCB))},destroyed(){const t=this.$parent;t&&(t.removeCallback(this.mountCB),t.addCallback(this.unmountCB))},watch:{$attrs:{handler(t,e){var a;const n=r(i.toRaw(t)),o=m({},r(i.toRaw(this.$data.$oldValue)),r(i.toRaw(t)));if(o&&Object.keys(o).length>0){const s=i.toRaw((a=this.$data)==null?void 0:a.$model);s&&s.assignFrom&&s.assignFrom(n),this._doWatchAttrs(o),this.$oldValue=n}},deep:!0}},methods:{mountCB(){},unmountCB(){},_doWatchAttrs(t){}},render(){}}),y=i.defineComponent({name:"RGSeriesColumn",extends:c,data(){return{}},props:{},methods:{mountCB(t){var n;if(r(i.toRaw((n=this.$parent)==null?void 0:n.$attrs))){const o=r(i.toRaw(this.$attrs));t&&(this.$model=t.addColumn({...o,type:"series"},o.displayIndex??-1))}},unmountCB(t){this.$data.$model&&t.removeColumn(this.$data.$model.name)},_doWatchAttrs(t){if(t.hasOwnProperty("width")&&!isNaN(t.width)){const n=i.toRaw(this.$data.$model).layout;n&&(n.cellWidth=t.width)}}}}),g=i.defineComponent({name:"RGStateBar",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setStateBar(r(i.toRaw(this.$attrs))),this.$model=t.stateBar}}}),P=i.defineComponent({name:"RGRowIndicator",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setRowIndicator(r(i.toRaw(this.$attrs))),this.$model=t.rowIndicator}}}),S=i.defineComponent({name:"RGHeaderSummaries",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setHeaderSummaries(r(i.toRaw(this.$attrs))),this.$model=t.headerSummaries}}}),b=i.defineComponent({name:"RGHeaderSummary",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setHeaderSummary(r(i.toRaw(this.$attrs))),this.$model=t.headerSummary}}}),G=i.defineComponent({name:"RGHeader",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setHeader(r(i.toRaw(this.$attrs))),this.$model=t.header}}}),k=i.defineComponent({name:"RGGroupPanel",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setGroupPanel(r(i.toRaw(this.$attrs))),this.$model=t.groupPanel}}}),B=i.defineComponent({name:"RGFooter",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setFooter(r(i.toRaw(this.$attrs))),this.$model=t.footer}}}),v=i.defineComponent({name:"RGFooters",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setFooters(r(i.toRaw(this.$attrs))),this.$model=t.footer}}}),O=i.defineComponent({name:"RGFilterPanel",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setFilterPanel(r(i.toRaw(this.$attrs))),this.$model=t.filterPanel}}}),V=i.defineComponent({name:"RGDataField",extends:c,props:{},data(){return{}},methods:{mountCB(t){const e=r(i.toRaw(this.$attrs));if(e.fieldName){const n=t.getDataSource();n.fieldByName(e.fieldName)||(this.$model=n.addField(e,!0))}},unmountDB(t){this.$model&&t.getDataSource().removeField(this.$model)}}}),x=i.defineComponent({name:"RGDataColumn",extends:c,data(){return{}},props:{},methods:{mountCB(t){var n;const e=r(i.toRaw((n=this.$parent)==null?void 0:n.$props));if(e){const o=e.autoGenerateField,a=t==null?void 0:t.getDataSource(),s=r(i.toRaw(this.$attrs));let d=s.fieldName;o&&(!d&&s.field&&(d=s.field.fieldName),a&&!a.fieldByName(d)&&a.addField(s.field||d)),t&&(this.$model=t.addColumn({...s,fieldName:d},s.displayIndex??-1))}},unmountCB(t){var n;this.$data.$model&&t.removeColumn(this.$data.$model.name);const e=r(i.toRaw((n=this.$parent)==null?void 0:n.$props));if(e){const o=e.autoGenerateField,a=t==null?void 0:t.getDataSource(),s=r(i.toRaw(this.$attrs));let d=s.fieldName;o&&(!d&&s.field&&(d=s.field.fieldName),t.columnByField(d)||a.removeField(d))}},_doWatchAttrs(t){if(t.hasOwnProperty("width")&&!isNaN(t.width)){const n=i.toRaw(this.$data.$model).layout;n&&(n.cellWidth=t.width)}}}}),D=i.defineComponent({name:"RGLiteralColumn",extends:c,data(){return{}},props:{},methods:{mountCB(t){var n;if(r(i.toRaw((n=this.$parent)==null?void 0:n.$attrs))){const o=r(i.toRaw(this.$attrs));t&&(this.$model=t.addColumn({...o,type:"literal"},o.displayIndex??-1))}},unmountCB(t){this.$data.$model&&t.removeColumn(this.$data.$model.name)},_doWatchAttrs(t){if(t.hasOwnProperty("width")&&!isNaN(t.width)){const n=i.toRaw(this.$data.$model).layout;n&&(n.cellWidth=t.width)}}}}),_=i.defineComponent({name:"RGCheckBar",extends:c,props:{},data(){return{}},methods:{mountCB(t){t.setCheckBar(r(i.toRaw(this.$attrs))),this.$model=t.checkBar}}});exports.RGCheckBar=_;exports.RGDataColumn=x;exports.RGDataField=V;exports.RGFilterPanel=O;exports.RGFooter=B;exports.RGFooters=v;exports.RGGroupPanel=k;exports.RGHeader=G;exports.RGHeaderSummaries=S;exports.RGHeaderSummary=b;exports.RGLiteralColumn=D;exports.RGRowIndicator=P;exports.RGSeriesColumn=y;exports.RGStateBar=g;exports.RealGridVue=f;exports.RealTreeVue=$;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.cjs.js","sources":["../src/Utils.ts","../src/RealGridBase.ts","../src/ComponentBase.ts","../src/RGComponents/RGSeriesColumn.ts","../src/RGComponents/RGStateBar.ts","../src/RGComponents/RGRowIndicator.ts","../src/RGComponents/RGHeaderSummaries.ts","../src/RGComponents/RGHeaderSummary.ts","../src/RGComponents/RGHeader.ts","../src/RGComponents/RGGroupPanel.ts","../src/RGComponents/RGFooter.ts","../src/RGComponents/RGFooters.ts","../src/RGComponents/RGFilterPanel.ts","../src/RGComponents/RGDataField.ts","../src/RGComponents/RGDataColumn.ts","../src/RGComponents/RGLiteralColumn.ts","../src/RGComponents/RGCheckBar.ts"],"sourcesContent":["import * as RealGrid from 'realgrid'\nimport { toRaw, version } from 'vue'\n\nexport const isVue2 = () => {\n return version.split(\".\")[0] === \"2\"\n}\n\n\nexport const toCustomRaw = (props: any) => {\n return isVue2() ? props : toRaw(props); \n}\n\nexport const camelize = (s: string) => s.replace(/-./g, (x) => x[1].toUpperCase())\nexport const pascalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1);\nexport const kebabToCamel = (obj: { [key: string]: any }, prefix: string = '') => {\n const ret: { [key: string]: any } = {}\n for (let key in obj) {\n ret[camelize(prefix ? `${prefix}-${key}` : key)] = toRaw(obj[key])\n }\n return ret\n}\nexport const deepMerge = (target: any, ...sources: any[]) => {\n sources.forEach((src) => {\n for (const key in src) {\n if (key === 'children') {\n continue\n }\n // undefined, object, boolean, number, string, function\n const value = src[key]\n if (value === null) {\n target[key] = null\n } else if (value === undefined) {\n delete target[key]\n } else if (Array.isArray(value)) {\n // deepCopy하는 방법 구현 필요.\n target[key] = [...value]\n } else if (typeof value === 'object') {\n if (value instanceof Date) {\n target[key] = new Date(value)\n } else {\n target[key] = deepMerge(target[key] == null ? {} : target[key], value)\n }\n } else {\n target[key] = value\n }\n }\n })\n return target\n}\n\nexport const extractDiff = (target: any, origin: any = {}, diff: any = {}): any => {\n target = target || {}\n const exceptKey = ['children']\n for (const [key, value] of Object.entries(origin)) {\n if (exceptKey.includes(key)) {\n continue\n }\n if (!diff.hasOwnProperty(key)) {\n target[key] = null\n } else if (Array.isArray(value)) {\n if (!diff[key] || JSON.stringify(value) != JSON.stringify(diff[key])) {\n target[key] = diff[key]\n }\n } else if (value instanceof Object && !(value instanceof Date || Array.isArray(value) || typeof value === 'function')) {\n if (!(diff[key] instanceof Object)) {\n target[key] = diff[key]\n } else {\n const dif = extractDiff({}, value, diff[key] as Object)\n if (dif && Object.keys(dif).length > 0) {\n target[key] = dif\n }\n }\n } else if (value !== diff[key]) {\n target[key] = diff[key]\n }\n }\n // props의 경우 origin에 없으면 없는것이다...\n for (const [key, value] of Object.entries(diff)) {\n if (exceptKey.includes(key)) {\n continue\n }\n if (!origin.hasOwnProperty(key)) {\n target[key] = value\n }\n }\n return target\n}\n\n\n\nexport const $_connectEvents = (grid: RealGrid.GridBase, provider: RealGrid.DataProviderBase, props: Object): void => {\n for (const [key, value] of Object.entries(props)) {\n if (key && typeof value === 'function' && key.startsWith('on')) { \n if (key === 'onRowInserting') {\n grid.onRowInserting = value\n } else if (key === 'onDataRowInserting') {\n //@ts-ignore\n provider.onRowInserting = value\n } else {\n //@ts-ignore\n grid.hasOwnProperty(key) && (grid[key] = value)\n //@ts-ignore\n provider.hasOwnProperty(key) && (provider[key] = value)\n }\n }\n }\n}","import * as RealGrid from 'realgrid'\nimport { GridOptions, GridType, Omits, ProviderType } from './Types'\nimport { $_connectEvents, extractDiff, kebabToCamel } from './Utils'\nimport { PropType, VNode, defineComponent, h, toRaw, nextTick } from 'vue'\n\nconst RealGridBase = <T>() => {\n return defineComponent({\n name: 'RealGridBase',\n props: {\n disabled: Boolean,\n gridProps: Object as PropType<GridOptions<T>>,\n dataProps: Object as PropType<RealGrid.DataOptions>,\n locale: Object as PropType<Partial<RealGrid.RealGridLocale>>,\n autoGenerateField: Boolean,\n rows: Array as PropType<RealGrid.DataValues[]>,\n rowStyleCallback: Function as PropType<RealGrid.RowStyleCallback>,\n cellStyleCallback: Function as PropType<RealGrid.CellStyleCallback>,\n layout: Array as PropType<(string | RealGrid.CellLayoutGroupItem | RealGrid.CellLayoutColumnItem)[]>,\n onInitialized: Function as PropType<(grid: GridType<T>) => void>,\n onDestroy: Function as PropType<(grid: GridType<T>) => void>,\n onCurrentChanging: Function as PropType<(grid: GridType<T>, oldIndex: RealGrid.CellIndex, newIndex: RealGrid.CellIndex) => boolean>,\n onCurrentChanged: Function as PropType<(grid: GridType<T>, newIndex: RealGrid.CellIndex) => void>,\n onCurrentRowChanged: Function as PropType<(grid: GridType<T>, oldRow: number, newRow: number) => void>,\n onValidateColumn: Function as PropType<(grid: GridType<T>, column: RealGrid.DataColumn, inserting: boolean, value: any, itemIndex: number, dataRow: number) => RealGrid.ValidationError | undefined>,\n onValidateRow: Function as PropType<(grid: GridType<T>, itemIndex: number, dataRow: number, inserting: boolean, values: any[]) => RealGrid.ValidationError>,\n onValidationFail: Function as PropType<(grid: GridType<T>, itemIndex: number, column: RealGrid.GridColumn, error: RealGrid.ValidationError) => RealGrid.ValidationError>,\n onColumnCheckedChanged: Function as PropType<(grid: GridType<T>, column: RealGrid.GridColumn, checked: boolean) => void>,\n onMenuItemClicked: Function as PropType<(grid: GridType<T>, item: RealGrid.PopupMenuItem, clickData: RealGrid.ClickData) => void>,\n onContextMenuPopup: Function as PropType<(grid: GridType<T>, x: number, y: number, clickData: RealGrid.ClickData, menu: string, rightClick: boolean) => boolean | string>,\n onContextMenuItemClicked: Function as PropType<(grid: GridType<T>, item: RealGrid.PopupMenuItem, clickData: RealGrid.ClickData) => void>,\n onCellButtonClicked: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, column: RealGrid.GridColumn) => void>,\n onScrollToBottom: Function as PropType<(grid: GridType<T>) => void>,\n onTopIndexChanged: Function as PropType<(grid: GridType<T>, itemIndex: number) => void>,\n onTopIndexChanging: Function as PropType<(grid: GridType<T>, currentTop: number, delta: number, focusing: boolean, adjust: boolean) => number>,\n onLeftPosChanged: Function as PropType<(grid: GridType<T>, pos: number) => void>,\n onRowsDeleting: Function as PropType<(grid: GridType<T>, rows: number[]) => boolean>,\n onRowInserting: Function as PropType<(grid: GridType<T>, itemIndex: number, dataRow: number) => boolean>,\n onSelectionCleared: Function as PropType<(grid: GridType<T>) => void>,\n onSelectionChanged: Function as PropType<(grid: GridType<T>, selection: RealGrid.Selection) => void>,\n onSelectionAdded: Function as PropType<(grid: GridType<T>, selection: RealGrid.Selection) => void>,\n onSelectionEnded: Function as PropType<(grid: GridType<T>, selection: RealGrid.Selection) => void>,\n onShowEditor: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, props: any, attrs: any) => boolean>,\n onShowEditCommand: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex) => boolean>,\n onHideEditor: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex) => void>,\n onEditChange: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, value: any) => void>,\n onGetEditValue: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, editResult: Object) => void | boolean>,\n onEditCommit: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, oldValue: any, newValue: any) => boolean>,\n onEditCanceled: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex) => void>,\n onItemEditCanceled: Function as PropType<(grid: GridType<T>, itemIndex: number, state: string) => void>,\n onItemEditCancel: Function as PropType<(grid: GridType<T>, itemIndex: number, state: string) => boolean>,\n onEditSearch: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, text: string) => void>,\n onSearchCellButtonClick: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, text: string) => void>,\n onCellEdited: Function as PropType<(grid: GridType<T>, itemIndex: number, row: number, field: number) => void>,\n onEditRowChanged: Function as PropType<(grid: GridType<T>, itemIndex: number, row: number, field: number, oldValue: any, newValue: any) => void>,\n onEditRowPasted: Function as PropType<(grid: GridType<T>, itemIndex: number, row: number, fields: number[], oldValues: any[], newValues: any[]) => void>,\n onRowsPasted: Function as PropType<(grid: GridType<T>, items: number[]) => void>,\n onCellPasting: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, value: any, editResult: RealGrid.EditResult) => boolean>,\n onItemChecked: Function as PropType<(grid: GridType<T>, itemIndex: number, checked: boolean) => void>,\n onItemAllChecked: Function as PropType<(grid: GridType<T>, checked: boolean) => void>,\n onErrorClicked: Function as PropType<(grid: GridType<T>, error: string) => void>,\n onSorting: Function as PropType<(grid: GridType<T>, fields: number[], directions: string[]) => boolean>,\n onSortingChanged: Function as PropType<(grid: GridType<T>) => void>,\n onFiltering: Function as PropType<(grid: GridType<T>) => boolean>,\n onFilteringChanged: Function as PropType<(grid: GridType<T>, column: RealGrid.GridColumn, filter: RealGrid.ColumnFilter, reset: boolean) => void>,\n onWheel: Function as PropType<(grid: GridType<T>, event: WheelEvent) => boolean>,\n onKeyDown: Function as PropType<(grid: GridType<T>, event: KeyboardEvent) => boolean>,\n onKeyPress: Function as PropType<(grid: GridType<T>, event: KeyboardEvent) => void>,\n onKeyUp: Function as PropType<(grid: GridType<T>, event: KeyboardEvent) => void>,\n onShowTooltip: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, value: any, isEllipsis: boolean) => boolean | string>,\n onShowHeaderTooltip: Function as PropType<(grid: GridType<T>, column: RealGrid.GridColumn, value: any, layout: RealGrid.CellLayoutItem, isEllipsis: boolean) => string>,\n onColumnPropertyChanged: Function as PropType<(grid: GridType<T>, column: RealGrid.GridColumn, property: string, newValue: any, oldValue: any) => void>,\n onLayoutPropertyChanged: Function as PropType<(grid: GridType<T>, layout: RealGrid.CellLayoutItem, property: string, newValue: any, oldValue: any) => void>,\n onGridActivated: Function as PropType<(grid: GridType<T>) => void>,\n onCopy: Function as PropType<(grid: GridType<T>, selection: RealGrid.Selection | RealGrid.Selection[], event: ClipboardEvent) => boolean>,\n onPaste: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, event: ClipboardEvent) => boolean>,\n onPasted: Function as PropType<(grid: GridType<T>) => void>,\n onItemsChecked: Function as PropType<(grid: GridType<T>, items: number[], checked: boolean) => void>,\n onCellClicked: Function as PropType<(grid: GridType<T>, clickData: RealGrid.ClickData) => void>,\n onCellDblClicked: Function as PropType<(grid: GridType<T>, clickData: RealGrid.ClickData) => void>,\n onCellItemClicked: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, clickData: RealGrid.ClickData) => boolean>,\n onCommandStackChanged: Function as PropType<(grid: GridType<T>, undoable: boolean, redoable: boolean) => void>,\n onDataLoadComplated: Function as PropType<(grid: GridType<T>) => void>,\n onLayoutExpanding: Function as PropType<(grid: GridType<T>, layout: RealGrid.CellLayoutGroupItem) => boolean>,\n onLayoutExpanded: Function as PropType<(grid: GridType<T>, layout: RealGrid.CellLayoutGroupItem) => void>,\n onLayoutCollapsing: Function as PropType<(grid: GridType<T>, layout: RealGrid.CellLayoutGroupItem) => boolean>,\n onLayoutCollapsed: Function as PropType<(grid: GridType<T>, layout: RealGrid.CellLayoutGroupItem) => void>,\n onGridFocusChanged: Function as PropType<(grid: GridType<T>, focused: boolean, event: Event) => void>\n },\n data() {\n return {\n $dataProvider: null as RealGrid.DataProviderBase | null,\n $gridView: null as RealGrid.GridBase | null,\n _mountTimer: null as number | null,\n _mountCBs: [] as Function[],\n }\n },\n mounted() {\n const container = this.$el as HTMLDivElement\n const props = kebabToCamel(toRaw(this.$props)) as any\n const { grid, dataProvider } = this._createGrid(container, props)\n this.dataProvider = dataProvider\n this.gridView = grid\n this.executeCB()\n $_connectEvents(grid, dataProvider, props)\n this._applyOptions(props)\n\n if (props.layout) {\n grid.setColumnLayout(props.layout)\n }\n\n this._doInitProc(grid, props)\n this._setData(props)\n },\n computed: {\n dataProvider: {\n get(): ProviderType<T> {\n return toRaw(this.$data.$dataProvider) as unknown as ProviderType<T>\n },\n set(value: ProviderType<T>) {\n this.$dataProvider = value\n },\n },\n gridView: {\n get(): GridType<T> {\n return toRaw(this.$data.$gridView) as unknown as GridType<T>\n },\n set(value: GridType<T>) {\n this.$gridView = value\n },\n },\n },\n unmounted() {\n const props = kebabToCamel(this.$props) as any\n const listener = kebabToCamel(this.$attrs, 'on') as any\n\n const destroyProc = props.onDestroy || listener.onDestroy\n destroyProc && destroyProc(this.gridView)\n this.gridView = this.gridView && this.gridView.destroy()\n this.dataProvider = this.dataProvider && this.dataProvider.destroy()\n },\n destroyed() {\n const props = kebabToCamel(this.$props) as any\n const listener = kebabToCamel(this.$attrs, 'on') as any\n\n const destroyProc = props.onDestroy || listener.onDestroy\n destroyProc && destroyProc(this.gridView)\n this.gridView = this.gridView && this.gridView.destroy()\n this.dataProvider = this.dataProvider && this.dataProvider.destroy()\n },\n watch: {\n gridProps: {\n handler(val, oldVal) {\n const diff = extractDiff({}, oldVal, val)\n if (this.gridView && diff && Object.keys(diff).length > 0) {\n this.gridView.setOptions(diff)\n }\n },\n deep: true,\n },\n disabled(val, oldVal) {\n this.gridView && (this.gridView.disabled = val)\n },\n dataProps: {\n handler(val, oldVal) {\n const diff = extractDiff({}, oldVal, val)\n if (this.dataProvider && diff && Object.keys(diff).length > 0) {\n this.dataProvider.setOptions(diff)\n }\n },\n deep: true,\n },\n locale: {\n handler(val, oldVal) {\n val && RealGrid.default.setLocale(val)\n },\n },\n layout: {\n handler(val, oldVal) {\n this.gridView && this.gridView.setColumnLayout(val)\n },\n deep: true,\n },\n },\n methods: {\n addCallback(fn: Function) {\n this.$data._mountCBs.push(fn)\n clearTimeout(this.$data._mountTimer!)\n const self = this\n this.$data._mountTimer = window.setTimeout(function () {\n self.executeCB()\n }, 20)\n },\n removeCallback(fn: Function) {\n if (this.$data._mountCBs.indexOf(fn) >= 0) {\n const idx = this.$data._mountCBs.indexOf(fn)\n this.$data._mountCBs.splice(idx, 1)\n }\n },\n executeCB() {\n const gridView = this.gridView\n const dataProvider = this.dataProvider\n if (!gridView) {\n return\n }\n clearTimeout(this._mountTimer!)\n //@ts-ignore\n if (gridView && gridView['_view']) {\n gridView.beginUpdate()\n try {\n dataProvider?.beginUpdate()\n try {\n const cbs = this.$data._mountCBs.sort((v1: any, v2: any) => {\n return (v1.$mountSeq == null ? -1 : v1.$mountSeq) - (v2.$mountSeq == null ? -1 : v2.$mountSeq)\n })\n while (cbs && cbs.length) {\n const f = cbs.shift()\n f?.call(this, gridView)\n }\n } finally {\n dataProvider?.endUpdate()\n }\n } finally {\n gridView.endUpdate(true)\n this.$data._mountTimer = null\n this.$data._mountCBs = []\n }\n }\n },\n _applyOptions(options: any) {\n const grid = this.gridView\n const dataProvider = this.dataProvider\n if (grid) {\n for (let [key, value] of Object.entries(options)) {\n switch (key) {\n case 'gridProps':\n value && grid.setOptions(value as RealGrid.ViewOptions)\n break\n case 'disabled':\n grid && (grid.disabled = !!value)\n break\n case 'dataProps':\n value && dataProvider?.setOptions(value as RealGrid.DataOptions)\n break\n case 'layout':\n value && grid && grid.setColumnLayout(value as any)\n break\n case 'rowStyleCallback':\n grid.setRowStyleCallback(value as RealGrid.RowStyleCallback)\n break\n case 'cellStyleCallback':\n grid.setCellStyleCallback(value as RealGrid.CellStyleCallback)\n break\n case 'locale':\n value && RealGrid.default.setLocale(value as RealGrid.RealGridLocale)\n break\n }\n }\n }\n this._doApplyOptions(options)\n },\n _createGrid(container: HTMLDivElement, props: any): { grid: GridType<T>; dataProvider: ProviderType<T> } {\n return {\n grid: null as unknown as GridType<T>,\n dataProvider: null as unknown as ProviderType<T>,\n }\n },\n _doInitProc(grid: RealGrid.GridBase, props: any) {\n const initProc = props.onInitialized\n if (initProc) {\n const fType = initProc.constructor.name\n if (fType === 'Function') {\n initProc(grid)\n } else if (fType === 'AsyncFunction') {\n Promise.resolve(initProc(grid))\n }\n }\n },\n _doApplyOptions(options: any) {},\n _setData(rows: any) {},\n },\n render() {\n const parseChild = (vNodes: any[]): VNode[] => {\n const child = []\n if (Array.isArray(vNodes)) {\n for (let vNode of vNodes) {\n if (Array.isArray(vNode.children)) {\n child.push(...parseChild(vNode.children))\n } else {\n child.push(vNode)\n }\n }\n }\n return child\n }\n const children = []\n for (let key of Object.keys(this.$slots)) {\n let vNodes: any = this.$slots[key]\n if (typeof vNodes === 'function') {\n vNodes = vNodes()\n }\n children.push(...parseChild(vNodes))\n }\n let displayIndex = 0\n for (let i = 0; i < children.length; i++) {\n const child = children[i]\n // @ts-ignore\n if (child.type instanceof Object && child.type.hasOwnProperty('name')) {\n // @ts-ignore\n const name = child.type.name\n if (name && /^RG.+Column$/.exec(name)) {\n // @ts-ignore\n child.props = child.props || {}\n // @ts-ignore\n child.props && (child.props.displayIndex ??= displayIndex++)\n }\n }\n //@ts-ignore\n child.$mountSeq = i\n }\n const style = this.$attrs.style ? this.$attrs.style : { width: '100%', height: '100%' }\n const node = h('div', { style }, children)\n\n return node\n },\n })\n}\n\nconst RealGridVue = defineComponent({\n name: 'RealGridVue',\n extends: RealGridBase<RealGrid.GridView>(),\n props: {\n accessibility: Boolean,\n waiOptions: Object as PropType<RealGrid.WaiOptions>,\n\n onPageChanging: Function as PropType<(grid: RealGrid.GridView, page: number) => boolean>,\n onPageChanged: Function as PropType<(grid: RealGrid.GridView, page: number) => void>,\n onPageCountChanged: Function as PropType<(grid: RealGrid.GridView, pageCount: number) => void>,\n onGrouping: Function as PropType<(grid: RealGrid.GridView, fields: number[]) => boolean>,\n onGrouped: Function as PropType<(grid: RealGrid.GridView) => void>,\n onExpanding: Function as PropType<(grid: RealGrid.GridView, itemIndex: number) => boolean>,\n onExpanded: Function as PropType<(grid: RealGrid.GridView, itemIndex: number) => void>,\n onCollapsing: Function as PropType<(grid: RealGrid.GridView, itemIndex: number) => boolean>,\n onCollapsed: Function as PropType<(grid: RealGrid.GridView, itemIndex: number) => void>,\n\n // dataProvider\n onRowCountChanged: Function as PropType<(provider: RealGrid.LocalDataProvider, newCount: number) => void>,\n onRowUpdating: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number, oldValues: RealGrid.RowValues, newValues: RealGrid.RowValues) => boolean>,\n onRowUpdated: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number) => void>,\n onRowsUpdated: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number, count: number) => void>,\n onRowListUpdated: Function as PropType<(provider: RealGrid.LocalDataProvider, rows: number[]) => void>,\n onDataRowInserting: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number, values: RealGrid.DataValues) => boolean>,\n onRowInserted: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number) => void>,\n onRowsInserted: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number, count: number) => void>,\n onRowDeleting: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number) => boolean>,\n onRowDeleted: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number) => void>,\n onRowsDeleted: Function as PropType<(provider: RealGrid.LocalDataProvider, rows: number[]) => void>,\n onRowMoving: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number, newRow: number) => boolean>,\n onRowMoved: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number, newRow: number) => void>,\n onRowsMoving: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number, count: number, newRow: number) => boolean>,\n onRowsMoved: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number, count: number, newRow: number) => void>,\n onRowListMoving: Function as PropType<(provider: RealGrid.LocalDataProvider, rows: number[], newRow: number) => boolean>,\n onRowListMoved: Function as PropType<(provider: RealGrid.LocalDataProvider, rows: number[], newRow: number) => void>,\n onValueChanged: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number, field: number) => void>,\n onDataChanged: Function as PropType<(provider: RealGrid.LocalDataProvider) => void>,\n onRowStateChanged: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number) => void>,\n onRowStatesChanged: Function as PropType<(provider: RealGrid.LocalDataProvider, rows: number[]) => void>,\n onRowStatesCleared: Function as PropType<(provider: RealGrid.LocalDataProvider) => void>,\n onRestoreRows: Function as PropType<(provider: RealGrid.LocalDataProvider, rows: number[]) => void>,\n },\n data() {\n return {\n $dataProvider: null as RealGrid.LocalDataProvider | null,\n $gridView: null as RealGrid.GridView | null,\n }\n },\n\n watch: {\n rows: {\n handler(val, oldVal) {\n if (this.$data._mountTimer != null) {\n const callback = () => {\n nextTick(() => {\n this.dataProvider?.setRows(toRaw(val))\n })\n }\n\n callback.$mountSeq = Infinity\n this.addCallback(callback)\n } else {\n this.dataProvider?.setRows(toRaw(val))\n }\n },\n // immediate 절대 사용금지.\n },\n },\n methods: {\n _createGrid(container: HTMLDivElement, props: any) {\n const grid = new RealGrid.default.GridView(container, props?.accessibility, props?.waiOptions)\n const dataProvider = new RealGrid.default.LocalDataProvider(props.dataProps?.undoable)\n grid.setDataSource(dataProvider)\n return {\n grid,\n dataProvider,\n }\n },\n _doApplyOptions(options: { [key: string]: any }) {},\n _setData(options: { [key: string]: any }) {\n if (options.rows) {\n this.dataProvider?.setRows(toRaw(options.rows))\n }\n },\n },\n})\n\nconst RealTreeVue = defineComponent({\n name: 'RealTreeVue',\n extends: RealGridBase<RealGrid.TreeView>(),\n props: {\n treeOptions: Object as PropType<RealGrid.TreeOptions>,\n treeField: String,\n needSorting: Boolean,\n childrenField: String,\n iconField: String,\n json: Object as PropType<any>,\n rowsProp: String,\n childrenProp: String,\n iconProp: String,\n onTreeItemExpanding: Function as PropType<(tree: RealGrid.TreeView, itemIndex: number, rowId: number) => boolean>,\n onTreeItemExpanded: Function as PropType<(tree: RealGrid.TreeView, itemIndex: number, rowId: number) => void>,\n onTreeItemCollapsing: Function as PropType<(tree: RealGrid.TreeView, itemIndex: number, rowId: number) => void>,\n onTreeItemCollapsed: Function as PropType<(tree: RealGrid.TreeView, itemIndex: number, rowId: number) => void>,\n onTreeItemChanged: Function as PropType<(tree: RealGrid.TreeView, itemIndex: number, rowId: number) => void>,\n\n // dataProvider\n onRowCountChanged: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, newCount: number) => void>,\n onRowAdding: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number, index: number, child: any) => boolean>,\n onRowAdded: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number) => void>,\n onRowsAdded: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, parent: number, rows: number[]) => void>,\n onRowDeleting: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number) => boolean>,\n onRowDeleted: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number) => void>,\n onRowsDeleted: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, rows: number[]) => void>,\n onRowUpdating: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number, oldValues: RealGrid.RowValues, newValues: RealGrid.RowValues) => boolean>,\n onRowUpdated: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number) => void>,\n onRowsUpdating: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, rows: number[]) => boolean>,\n onRowsUpdated: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, rows: number[]) => void>,\n onValueChanged: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number, field: number) => void>,\n onDataChanged: Function as PropType<(provider: RealGrid.LocalTreeDataProvider) => void>,\n onRowStateChanged: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number) => void>,\n onRowStatesChanged: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, rows: number[]) => void>,\n onRowSiblingMoving: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number, offset: number) => boolean>,\n onRowSiblingMoved: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number, offset: number) => void>,\n onRowsSiblingMoving: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, rows: number[], offset: number) => boolean>,\n onRowsSiblingMoved: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, rows: number[], offset: number) => void>,\n onRowParentChanging: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number, parent: number, index: number) => boolean>,\n onRowParentChanged: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number, parent: number, index: number) => void>,\n },\n data() {\n return {\n $gridView: null as RealGrid.TreeView | null,\n $dataProvider: null as RealGrid.LocalTreeDataProvider | null,\n }\n },\n computed: {\n gridView: {\n get() {\n return toRaw(this.$data.$gridView)\n },\n set(value: RealGrid.TreeView) {\n this.$gridView = value\n },\n },\n dataProvider: {\n get() {\n return toRaw(this.$data.$dataProvider)\n },\n set(value: RealGrid.LocalTreeDataProvider) {\n this.$dataProvider = value\n },\n },\n },\n methods: {\n _createGrid(container: HTMLDivElement, props: any) {\n const grid = new RealGrid.TreeView(container)\n const dataProvider = new RealGrid.LocalTreeDataProvider(props.dataProps?.undoable)\n grid.setDataSource(dataProvider)\n return {\n grid,\n dataProvider,\n }\n },\n _doApplyOptions(options: { [key: string]: any }) {\n for (const [key, value] of Object.entries(options)) {\n switch (key) {\n case 'treeOptions':\n value && this.gridView?.setTreeOptions(toRaw(value))\n break\n }\n }\n },\n _setData(options: { [key: string]: any }) {\n if (options.rows) {\n this.dataProvider?.setRows(toRaw(options.rows), this.treeField as string, this.needSorting, this.childrenField, this.iconField)\n } else if (options.json) {\n this.dataProvider?.setObjectRows(toRaw(options.json), this.rowsProp as string, this.childrenProp, this.iconProp)\n }\n },\n },\n watch: {\n rows: {\n handler(val, oldVal) {\n if (this.$data._mountTimer != null) {\n const callback = () => {\n nextTick(() => {\n this.dataProvider?.setRows(toRaw(val), this.treeField!, this.needSorting, this.childrenField, this.iconField)\n })\n }\n\n callback.$mountSeq = Infinity\n this.addCallback(callback)\n } else {\n this.dataProvider?.setRows(toRaw(val), this.treeField!, this.needSorting, this.childrenField, this.iconField)\n }\n },\n },\n json: {\n handler(val, oldVal) {\n if (this.$data._mountTimer != null) {\n const callback = () => {\n nextTick(() => {\n this.dataProvider?.setObjectRows(toRaw(val), this.rowsProp!, this.childrenProp, this.iconProp)\n })\n }\n\n callback.$mountSeq = Infinity\n this.addCallback(callback)\n } else {\n this.dataProvider?.setObjectRows(toRaw(val), this.rowsProp!, this.childrenProp, this.iconProp)\n }\n },\n },\n },\n})\n\ntype RealGridVue = Omit<InstanceType<typeof RealGridVue>, Omits>\ntype RealTreeVue = Omit<InstanceType<typeof RealTreeVue>, Omits>\n\nexport { RealGridVue, RealTreeVue }\n","import { ConfigObject } from 'realgrid'\nimport { IComponentBase, IModel, IRealBaseVue } from './Types'\nimport { extractDiff, kebabToCamel } from './Utils'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\n\nexport const ComponentBase = defineComponent({\n name: 'ComponentBase',\n props: {} as ComponentPropsOptions & IComponentBase,\n data() {\n return {\n $model: null as IModel | null,\n $oldValue: null as any | null,\n }\n },\n mounted() {\n const p: IRealBaseVue = toRaw(this.$parent) as IRealBaseVue\n if (p) {\n this.$oldValue = kebabToCamel(toRaw(this.$attrs))\n //@ts-ignore\n this.mountCB.$mountSeq = this.$.vnode.$mountSeq\n p.addCallback(this.mountCB)\n }\n },\n unmounted() {\n const p: IRealBaseVue = this.$parent as IRealBaseVue\n if (p) {\n p.removeCallback(this.mountCB)\n p.addCallback(this.unmountCB)\n }\n },\n destroyed() {\n const p: IRealBaseVue = this.$parent as IRealBaseVue\n if (p) {\n p.removeCallback(this.mountCB)\n p.addCallback(this.unmountCB)\n }\n },\n watch: {\n $attrs: {\n handler(val, oldVal) {\n const value = kebabToCamel(toRaw(val))\n const diff: ConfigObject = extractDiff({}, kebabToCamel(toRaw(this.$data.$oldValue)), kebabToCamel(toRaw(val)))\n if (diff && Object.keys(diff).length > 0) {\n const model = toRaw(this.$data?.$model)\n if (model && model.assignFrom) {\n model.assignFrom(value)\n }\n this._doWatchAttrs(diff)\n this.$oldValue = value\n }\n },\n deep: true,\n },\n },\n methods: {\n mountCB() {},\n unmountCB() {},\n _doWatchAttrs(diff: ConfigObject) {},\n },\n render() {\n // return h(\"\");\n },\n})\n\nexport default ComponentBase\n","import ComponentBase from '../ComponentBase'\nimport { ConfigObject, IRealGridSeriesColumn, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\n\nconst RGSeriesColumn = defineComponent({\n name: \"RGSeriesColumn\",\n extends: ComponentBase,\n data() {\n return {\n }\n },\n props: {\n } as (ComponentPropsOptions & IRealGridSeriesColumn),\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n const pAttrs = kebabToCamel(toRaw(this.$parent?.$attrs!));\n if (pAttrs) {\n const props = kebabToCamel(toRaw(this.$attrs));\n if (grid) {\n this.$model = grid.addColumn({...props, type:\"series\"}, props.displayIndex??-1);\n }; \n }\n },\n unmountCB(grid: RealGrid.GridBase) {\n \n if (this.$data.$model) {\n grid.removeColumn(this.$data.$model.name!);\n }\n },\n _doWatchAttrs(diff: ConfigObject) {\n if (diff.hasOwnProperty(\"width\") && !isNaN(diff[\"width\"])) {\n const column = toRaw(this.$data.$model) as RealGrid.GridColumn;\n const layout = column.layout;\n if (layout) {\n layout.cellWidth = diff.width;\n }\n }\n } \n }\n});\ntype RGSeriesColumn = Omit<InstanceType<typeof RGSeriesColumn>, Omits>;\nexport default RGSeriesColumn\n","import ComponentBase from '../ComponentBase'\nimport { IRealGridStateBar, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\n\nconst RGStateBar = defineComponent({\n name: 'RGStateBar',\n extends: ComponentBase,\n props: {} as ComponentPropsOptions & IRealGridStateBar,\n data() {\n return {}\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n grid.setStateBar(kebabToCamel(toRaw(this.$attrs)))\n this.$model = grid.stateBar\n },\n },\n})\ntype RGStateBar = Omit<InstanceType<typeof RGStateBar>, Omits>\nexport default RGStateBar\n","import ComponentBase from '../ComponentBase'\nimport { IRealGridRowIndicator, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\n\nconst RGRowIndicator = defineComponent({\n name: \"RGRowIndicator\",\n extends: ComponentBase,\n props: {\n } as (ComponentPropsOptions & IRealGridRowIndicator),\n data() {\n return {\n }\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n grid.setRowIndicator(kebabToCamel(toRaw(this.$attrs)));\n this.$model = grid.rowIndicator;\n },\n }\n})\ntype RGRowIndicator = Omit<InstanceType<typeof RGRowIndicator>, Omits>;\nexport default RGRowIndicator\n","import ComponentBase from '../ComponentBase'\nimport { IRealGridheaderSummaries, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\nconst RGHeaderSummaries = defineComponent({\n name: 'RGHeaderSummaries',\n extends: ComponentBase,\n props: {} as ComponentPropsOptions & IRealGridheaderSummaries,\n data() {\n return {}\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n grid.setHeaderSummaries(kebabToCamel(toRaw(this.$attrs)))\n this.$model = grid.headerSummaries\n },\n },\n})\ntype RGHeaderSummaries = Omit<InstanceType<typeof RGHeaderSummaries>, Omits>;\nexport default RGHeaderSummaries\n","import ComponentBase from '../ComponentBase'\nimport { IRealGridHeaderSummary, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\nconst RGHeaderSummary = defineComponent({\n name: 'RGHeaderSummary',\n extends: ComponentBase,\n props: {} as ComponentPropsOptions & IRealGridHeaderSummary,\n data() {\n return {}\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n grid.setHeaderSummary(kebabToCamel(toRaw(this.$attrs)))\n this.$model = grid.headerSummary\n },\n },\n})\ntype RGHeaderSummary = Omit<InstanceType<typeof RGHeaderSummary>, Omits>;\nexport default RGHeaderSummary\n","import ComponentBase from \"../ComponentBase\";\nimport { IRealGridHeader, Omits } from \"../Types\";\nimport { ComponentPropsOptions, defineComponent, toRaw } from \"vue\";\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from \"../Utils\";\n\nconst RGHeader = defineComponent({\n name: \"RGHeader\",\n extends: ComponentBase,\n props: {\n } as (ComponentPropsOptions & IRealGridHeader),\n data() {\n return {\n }\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n grid.setHeader(kebabToCamel(toRaw(this.$attrs)));\n this.$model = grid.header;\n },\n }\n});\ntype RGHeader = Omit<InstanceType<typeof RGHeader>, Omits>;\nexport default RGHeader;","import ComponentBase from '../ComponentBase'\nimport { IRealGridGroupPanel, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\n\nconst RGGroupPanel = defineComponent({\n name: \"RGGroupPanel\",\n extends: ComponentBase,\n props: {\n } as (ComponentPropsOptions & IRealGridGroupPanel),\n data() {\n return {\n }\n },\n methods: {\n mountCB(grid: RealGrid.GridView) {\n grid.setGroupPanel(kebabToCamel(toRaw(this.$attrs)));\n this.$model = grid.groupPanel;\n },\n }\n});\n\ntype RGGroupPanel = Omit<InstanceType<typeof RGGroupPanel>, Omits>;\n\nexport default RGGroupPanel\n","import ComponentBase from \"../ComponentBase\";\nimport { ComponentPropsOptions, defineComponent, toRaw } from \"vue\";\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from \"../Utils\";\nimport { IRealGridFooters, Omits } from \"../Types\";\n\n\nconst RGFooter = defineComponent({\n name: \"RGFooter\",\n extends: ComponentBase,\n props: {\n } as (ComponentPropsOptions & IRealGridFooters),\n data() {\n return {\n }\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n grid.setFooter(kebabToCamel(toRaw(this.$attrs)));\n this.$model = grid.footer;\n },\n }\n});\n\ntype RGFooter = Omit<InstanceType<typeof RGFooter>, Omits>;\n\nexport default RGFooter;","import ComponentBase from \"../ComponentBase\";\nimport { IRealGridFooter, Omits } from \"../Types\";\nimport { ComponentPropsOptions, defineComponent, toRaw } from \"vue\";\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from \"../Utils\";\nconst RGFooters = defineComponent({\n name: \"RGFooters\",\n extends: ComponentBase,\n props: {\n } as (ComponentPropsOptions & IRealGridFooter),\n data() {\n return {\n }\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n grid.setFooters(kebabToCamel(toRaw(this.$attrs)));\n this.$model = grid.footer;\n },\n }\n});\n\ntype RGFooters = Omit<InstanceType<typeof RGFooters>, Omits>;\n\nexport default RGFooters;","import ComponentBase from '../ComponentBase'\nimport { IRealGridFilterPanel, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\n\nconst RGFilterPanel = defineComponent({\n name: \"RGFilterPanel\",\n extends: ComponentBase,\n props: {\n } as (ComponentPropsOptions & IRealGridFilterPanel),\n data() {\n return {\n }\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n grid.setFilterPanel(kebabToCamel(toRaw(this.$attrs)));\n this.$model = grid.filterPanel;\n },\n }\n});\n\ntype RGFilterPanel = Omit<InstanceType<typeof RGFilterPanel>, Omits>;\n\nexport default RGFilterPanel\n","import ComponentBase from \"../ComponentBase\";\nimport { ComponentPropsOptions, defineComponent, toRaw } from \"vue\";\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from \"../Utils\";\nimport { IRealGridDataField, Omits } from \"../Types\";\n\nconst RGDataField = defineComponent({\n name: \"RGDataField\",\n extends: ComponentBase,\n props: {\n } as (ComponentPropsOptions & IRealGridDataField),\n data() {\n return {\n\n }\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n const attrs = kebabToCamel(toRaw(this.$attrs));\n if (attrs.fieldName) {\n const dp = grid.getDataSource();\n const field = dp.fieldByName(attrs.fieldName);\n if (!field) {\n this.$model = dp.addField(attrs, true);\n }\n }\n },\n unmountDB(grid: RealGrid.GridBase) {\n if (this.$model) {\n const dp = grid.getDataSource();\n dp.removeField(this.$model);\n }\n }\n }\n});\n\ntype RGDataField = Omit<InstanceType<typeof RGDataField>, Omits>;\n\nexport default RGDataField;","import ComponentBase from '../ComponentBase'\nimport { ConfigObject, IRGDataColumn, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\n\n\nconst RGDataColumn = defineComponent({\n name: \"RGDataColumn\",\n extends: ComponentBase,\n data() {\n return {\n }\n },\n\n props: {\n } as (ComponentPropsOptions & IRGDataColumn),\n\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n const pAttrs = kebabToCamel(toRaw(this.$parent?.$props!));\n if (pAttrs) {\n const generateField = pAttrs.autoGenerateField;\n const dp = grid?.getDataSource();\n const props = kebabToCamel(toRaw(this.$attrs));\n let fieldName = props.fieldName;\n if (generateField) {\n if (!fieldName && props.field) {\n fieldName = props.field.fieldName;\n }\n \n if (dp && !dp.fieldByName(fieldName)) {\n dp.addField(props.field || fieldName);\n }\n }\n if (grid) {\n this.$model = grid.addColumn({...props, ...{fieldName}}, props.displayIndex??-1);\n }; \n }\n },\n unmountCB(grid: RealGrid.GridBase) {\n if (this.$data.$model) {\n grid.removeColumn(this.$data.$model.name!);\n }\n const pAttrs = kebabToCamel(toRaw(this.$parent?.$props!));\n if (pAttrs) {\n const generateField = pAttrs.autoGenerateField;\n const dp = grid?.getDataSource();\n const props = kebabToCamel(toRaw(this.$attrs));\n let fieldName = props.fieldName;\n if (generateField) {\n if (!fieldName && props.field) {\n fieldName = props.field.fieldName;\n }\n if (!grid.columnByField(fieldName)) {\n dp.removeField(fieldName)\n }\n }; \n }\n\n },\n _doWatchAttrs(diff: ConfigObject) {\n if (diff.hasOwnProperty(\"width\") && !isNaN(diff[\"width\"])) {\n const column = toRaw(this.$data.$model) as RealGrid.GridColumn;\n const layout = column.layout;\n if (layout) {\n layout.cellWidth = diff.width;\n }\n }\n }\n }\n});\ntype RGDataColumn = Omit<InstanceType<typeof RGDataColumn>, Omits>;\nexport default RGDataColumn\n","import ComponentBase from '../ComponentBase'\nimport { ConfigObject, IRealGridLiteralColumn, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\n\nconst RGLiteralColumn = defineComponent({\n name: \"RGLiteralColumn\",\n extends: ComponentBase,\n data() {\n return {\n }\n },\n props: {\n } as (ComponentPropsOptions & IRealGridLiteralColumn),\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n const pAttrs = kebabToCamel(toRaw(this.$parent?.$attrs!));\n if (pAttrs) {\n const props = kebabToCamel(toRaw(this.$attrs));\n if (grid) {\n this.$model = grid.addColumn({...props, type:\"literal\"}, props.displayIndex??-1);\n }; \n }\n },\n unmountCB(grid: RealGrid.GridBase) {\n \n if (this.$data.$model) {\n grid.removeColumn(this.$data.$model.name!);\n }\n },\n _doWatchAttrs(diff: ConfigObject) {\n if (diff.hasOwnProperty(\"width\") && !isNaN(diff[\"width\"])) {\n const column = toRaw(this.$data.$model) as RealGrid.GridColumn;\n const layout = column.layout;\n if (layout) {\n layout.cellWidth = diff.width;\n }\n }\n } \n }\n});\ntype RGLiteralColumn = Omit<InstanceType<typeof RGLiteralColumn>, Omits>;\nexport default RGLiteralColumn\n","import ComponentBase from '../ComponentBase'\nimport { IRealGridCheckBar, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\n\nconst RGCheckBar = defineComponent({\n name: \"RGCheckBar\",\n extends: ComponentBase,\n props: {\n } as (ComponentPropsOptions & IRealGridCheckBar),\n data() {\n return {\n }\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n grid.setCheckBar(kebabToCamel(toRaw(this.$attrs)));\n this.$model = grid.checkBar;\n },\n }\n})\n\ntype RGCheckBar = Omit<InstanceType<typeof RGCheckBar>, Omits>;\nexport default RGCheckBar\n"],"names":["camelize","s","x","kebabToCamel","obj","prefix","ret","key","toRaw","extractDiff","target","origin","diff","exceptKey","value","dif","$_connectEvents","grid","provider","props","RealGridBase","defineComponent","container","dataProvider","listener","destroyProc","val","oldVal","RealGrid","fn","self","idx","gridView","cbs","v1","v2","f","options","initProc","fType","rows","parseChild","vNodes","child","vNode","children","displayIndex","i","name","_a","style","h","RealGridVue","callback","nextTick","RealTreeVue","_b","ComponentBase","p","model","RGSeriesColumn","layout","RGStateBar","RGRowIndicator","RGHeaderSummaries","RGHeaderSummary","RGHeader","RGGroupPanel","RGFooter","RGFooters","RGFilterPanel","RGDataField","attrs","dp","RGDataColumn","pAttrs","generateField","fieldName","RGLiteralColumn","RGCheckBar"],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -179,8 +179,9 @@ onWheel: PropType<(grid: RealGrid.GridView, event: WheelEvent) => boolean>;
|
|
|
179
179
|
onKeyDown: PropType<(grid: RealGrid.GridView, event: KeyboardEvent) => boolean>;
|
|
180
180
|
onKeyPress: PropType<(grid: RealGrid.GridView, event: KeyboardEvent) => void>;
|
|
181
181
|
onKeyUp: PropType<(grid: RealGrid.GridView, event: KeyboardEvent) => void>;
|
|
182
|
-
|
|
183
|
-
|
|
182
|
+
onShowRowBarTooltip: PropType<(grid: RealGrid.GridView, cellType: RealGrid.GridCellType, itemIndex: number, dataRow: number) => string | RealGrid.TooltipOptions>;
|
|
183
|
+
onShowTooltip: PropType<(grid: RealGrid.GridView, index: RealGrid.CellIndex, value: any, isEllipsis: boolean) => boolean | string | RealGrid.TooltipOptions>;
|
|
184
|
+
onShowHeaderTooltip: PropType<(grid: RealGrid.GridView, column: RealGrid.GridColumn, value: any, layout: RealGrid.CellLayoutItem, isEllipsis: boolean) => boolean | string | RealGrid.TooltipOptions>;
|
|
184
185
|
onColumnPropertyChanged: PropType<(grid: RealGrid.GridView, column: RealGrid.GridColumn, property: string, newValue: any, oldValue: any) => void>;
|
|
185
186
|
onLayoutPropertyChanged: PropType<(grid: RealGrid.GridView, layout: RealGrid.CellLayoutItem, property: string, newValue: any, oldValue: any) => void>;
|
|
186
187
|
onGridActivated: PropType<(grid: RealGrid.GridView) => void>;
|
|
@@ -284,8 +285,9 @@ onWheel: PropType<(grid: RealGrid.GridView, event: WheelEvent) => boolean>;
|
|
|
284
285
|
onKeyDown: PropType<(grid: RealGrid.GridView, event: KeyboardEvent) => boolean>;
|
|
285
286
|
onKeyPress: PropType<(grid: RealGrid.GridView, event: KeyboardEvent) => void>;
|
|
286
287
|
onKeyUp: PropType<(grid: RealGrid.GridView, event: KeyboardEvent) => void>;
|
|
287
|
-
|
|
288
|
-
|
|
288
|
+
onShowRowBarTooltip: PropType<(grid: RealGrid.GridView, cellType: RealGrid.GridCellType, itemIndex: number, dataRow: number) => string | RealGrid.TooltipOptions>;
|
|
289
|
+
onShowTooltip: PropType<(grid: RealGrid.GridView, index: RealGrid.CellIndex, value: any, isEllipsis: boolean) => boolean | string | RealGrid.TooltipOptions>;
|
|
290
|
+
onShowHeaderTooltip: PropType<(grid: RealGrid.GridView, column: RealGrid.GridColumn, value: any, layout: RealGrid.CellLayoutItem, isEllipsis: boolean) => boolean | string | RealGrid.TooltipOptions>;
|
|
289
291
|
onColumnPropertyChanged: PropType<(grid: RealGrid.GridView, column: RealGrid.GridColumn, property: string, newValue: any, oldValue: any) => void>;
|
|
290
292
|
onLayoutPropertyChanged: PropType<(grid: RealGrid.GridView, layout: RealGrid.CellLayoutItem, property: string, newValue: any, oldValue: any) => void>;
|
|
291
293
|
onGridActivated: PropType<(grid: RealGrid.GridView) => void>;
|
|
@@ -466,8 +468,9 @@ onWheel: PropType<(grid: RealGrid.TreeView, event: WheelEvent) => boolean>;
|
|
|
466
468
|
onKeyDown: PropType<(grid: RealGrid.TreeView, event: KeyboardEvent) => boolean>;
|
|
467
469
|
onKeyPress: PropType<(grid: RealGrid.TreeView, event: KeyboardEvent) => void>;
|
|
468
470
|
onKeyUp: PropType<(grid: RealGrid.TreeView, event: KeyboardEvent) => void>;
|
|
469
|
-
|
|
470
|
-
|
|
471
|
+
onShowRowBarTooltip: PropType<(grid: RealGrid.TreeView, cellType: RealGrid.GridCellType, itemIndex: number, dataRow: number) => string | RealGrid.TooltipOptions>;
|
|
472
|
+
onShowTooltip: PropType<(grid: RealGrid.TreeView, index: RealGrid.CellIndex, value: any, isEllipsis: boolean) => boolean | string | RealGrid.TooltipOptions>;
|
|
473
|
+
onShowHeaderTooltip: PropType<(grid: RealGrid.TreeView, column: RealGrid.GridColumn, value: any, layout: RealGrid.CellLayoutItem, isEllipsis: boolean) => boolean | string | RealGrid.TooltipOptions>;
|
|
471
474
|
onColumnPropertyChanged: PropType<(grid: RealGrid.TreeView, column: RealGrid.GridColumn, property: string, newValue: any, oldValue: any) => void>;
|
|
472
475
|
onLayoutPropertyChanged: PropType<(grid: RealGrid.TreeView, layout: RealGrid.CellLayoutItem, property: string, newValue: any, oldValue: any) => void>;
|
|
473
476
|
onGridActivated: PropType<(grid: RealGrid.TreeView) => void>;
|
|
@@ -571,8 +574,9 @@ onWheel: PropType<(grid: RealGrid.TreeView, event: WheelEvent) => boolean>;
|
|
|
571
574
|
onKeyDown: PropType<(grid: RealGrid.TreeView, event: KeyboardEvent) => boolean>;
|
|
572
575
|
onKeyPress: PropType<(grid: RealGrid.TreeView, event: KeyboardEvent) => void>;
|
|
573
576
|
onKeyUp: PropType<(grid: RealGrid.TreeView, event: KeyboardEvent) => void>;
|
|
574
|
-
|
|
575
|
-
|
|
577
|
+
onShowRowBarTooltip: PropType<(grid: RealGrid.TreeView, cellType: RealGrid.GridCellType, itemIndex: number, dataRow: number) => string | RealGrid.TooltipOptions>;
|
|
578
|
+
onShowTooltip: PropType<(grid: RealGrid.TreeView, index: RealGrid.CellIndex, value: any, isEllipsis: boolean) => boolean | string | RealGrid.TooltipOptions>;
|
|
579
|
+
onShowHeaderTooltip: PropType<(grid: RealGrid.TreeView, column: RealGrid.GridColumn, value: any, layout: RealGrid.CellLayoutItem, isEllipsis: boolean) => boolean | string | RealGrid.TooltipOptions>;
|
|
576
580
|
onColumnPropertyChanged: PropType<(grid: RealGrid.TreeView, column: RealGrid.GridColumn, property: string, newValue: any, oldValue: any) => void>;
|
|
577
581
|
onLayoutPropertyChanged: PropType<(grid: RealGrid.TreeView, layout: RealGrid.CellLayoutItem, property: string, newValue: any, oldValue: any) => void>;
|
|
578
582
|
onGridActivated: PropType<(grid: RealGrid.TreeView) => void>;
|
package/dist/index.es.js
CHANGED
|
@@ -90,6 +90,7 @@ const $ = (t) => t.replace(/-./g, (n) => n[1].toUpperCase()), r = (t, n = "") =>
|
|
|
90
90
|
onKeyDown: Function,
|
|
91
91
|
onKeyPress: Function,
|
|
92
92
|
onKeyUp: Function,
|
|
93
|
+
onShowRowBarTooltip: Function,
|
|
93
94
|
onShowTooltip: Function,
|
|
94
95
|
onShowHeaderTooltip: Function,
|
|
95
96
|
onColumnPropertyChanged: Function,
|
|
@@ -577,7 +578,7 @@ const $ = (t) => t.replace(/-./g, (n) => n[1].toUpperCase()), r = (t, n = "") =>
|
|
|
577
578
|
t.setRowIndicator(r(a(this.$attrs))), this.$model = t.rowIndicator;
|
|
578
579
|
}
|
|
579
580
|
}
|
|
580
|
-
}),
|
|
581
|
+
}), B = l({
|
|
581
582
|
name: "RGHeaderSummaries",
|
|
582
583
|
extends: u,
|
|
583
584
|
props: {},
|
|
@@ -589,7 +590,7 @@ const $ = (t) => t.replace(/-./g, (n) => n[1].toUpperCase()), r = (t, n = "") =>
|
|
|
589
590
|
t.setHeaderSummaries(r(a(this.$attrs))), this.$model = t.headerSummaries;
|
|
590
591
|
}
|
|
591
592
|
}
|
|
592
|
-
}),
|
|
593
|
+
}), k = l({
|
|
593
594
|
name: "RGHeaderSummary",
|
|
594
595
|
extends: u,
|
|
595
596
|
props: {},
|
|
@@ -761,8 +762,8 @@ export {
|
|
|
761
762
|
O as RGFooters,
|
|
762
763
|
V as RGGroupPanel,
|
|
763
764
|
v as RGHeader,
|
|
764
|
-
|
|
765
|
-
|
|
765
|
+
B as RGHeaderSummaries,
|
|
766
|
+
k as RGHeaderSummary,
|
|
766
767
|
_ as RGLiteralColumn,
|
|
767
768
|
b as RGRowIndicator,
|
|
768
769
|
P as RGSeriesColumn,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.es.js","sources":["../src/Utils.ts","../src/RealGridBase.ts","../src/ComponentBase.ts","../src/RGComponents/RGSeriesColumn.ts","../src/RGComponents/RGStateBar.ts","../src/RGComponents/RGRowIndicator.ts","../src/RGComponents/RGHeaderSummaries.ts","../src/RGComponents/RGHeaderSummary.ts","../src/RGComponents/RGHeader.ts","../src/RGComponents/RGGroupPanel.ts","../src/RGComponents/RGFooter.ts","../src/RGComponents/RGFooters.ts","../src/RGComponents/RGFilterPanel.ts","../src/RGComponents/RGDataField.ts","../src/RGComponents/RGDataColumn.ts","../src/RGComponents/RGLiteralColumn.ts","../src/RGComponents/RGCheckBar.ts"],"sourcesContent":["import * as RealGrid from 'realgrid'\nimport { toRaw, version } from 'vue'\n\nexport const isVue2 = () => {\n return version.split(\".\")[0] === \"2\"\n}\n\n\nexport const toCustomRaw = (props: any) => {\n return isVue2() ? props : toRaw(props); \n}\n\nexport const camelize = (s: string) => s.replace(/-./g, (x) => x[1].toUpperCase())\nexport const pascalize = (s: string) => s.charAt(0).toUpperCase() + s.slice(1);\nexport const kebabToCamel = (obj: { [key: string]: any }, prefix: string = '') => {\n const ret: { [key: string]: any } = {}\n for (let key in obj) {\n ret[camelize(prefix ? `${prefix}-${key}` : key)] = toRaw(obj[key])\n }\n return ret\n}\nexport const deepMerge = (target: any, ...sources: any[]) => {\n sources.forEach((src) => {\n for (const key in src) {\n if (key === 'children') {\n continue\n }\n // undefined, object, boolean, number, string, function\n const value = src[key]\n if (value === null) {\n target[key] = null\n } else if (value === undefined) {\n delete target[key]\n } else if (Array.isArray(value)) {\n // deepCopy하는 방법 구현 필요.\n target[key] = [...value]\n } else if (typeof value === 'object') {\n if (value instanceof Date) {\n target[key] = new Date(value)\n } else {\n target[key] = deepMerge(target[key] == null ? {} : target[key], value)\n }\n } else {\n target[key] = value\n }\n }\n })\n return target\n}\n\nexport const extractDiff = (target: any, origin: any = {}, diff: any = {}): any => {\n target = target || {}\n const exceptKey = ['children']\n for (const [key, value] of Object.entries(origin)) {\n if (exceptKey.includes(key)) {\n continue\n }\n if (!diff.hasOwnProperty(key)) {\n target[key] = null\n } else if (Array.isArray(value)) {\n if (!diff[key] || JSON.stringify(value) != JSON.stringify(diff[key])) {\n target[key] = diff[key]\n }\n } else if (value instanceof Object && !(value instanceof Date || Array.isArray(value) || typeof value === 'function')) {\n if (!(diff[key] instanceof Object)) {\n target[key] = diff[key]\n } else {\n const dif = extractDiff({}, value, diff[key] as Object)\n if (dif && Object.keys(dif).length > 0) {\n target[key] = dif\n }\n }\n } else if (value !== diff[key]) {\n target[key] = diff[key]\n }\n }\n // props의 경우 origin에 없으면 없는것이다...\n for (const [key, value] of Object.entries(diff)) {\n if (exceptKey.includes(key)) {\n continue\n }\n if (!origin.hasOwnProperty(key)) {\n target[key] = value\n }\n }\n return target\n}\n\n\n\nexport const $_connectEvents = (grid: RealGrid.GridBase, provider: RealGrid.DataProviderBase, props: Object): void => {\n for (const [key, value] of Object.entries(props)) {\n if (key && typeof value === 'function' && key.startsWith('on')) { \n if (key === 'onRowInserting') {\n grid.onRowInserting = value\n } else if (key === 'onDataRowInserting') {\n //@ts-ignore\n provider.onRowInserting = value\n } else {\n //@ts-ignore\n grid.hasOwnProperty(key) && (grid[key] = value)\n //@ts-ignore\n provider.hasOwnProperty(key) && (provider[key] = value)\n }\n }\n }\n}","import * as RealGrid from 'realgrid'\nimport { GridOptions, GridType, Omits, ProviderType } from './Types'\nimport { $_connectEvents, extractDiff, kebabToCamel } from './Utils'\nimport { PropType, VNode, defineComponent, h, toRaw, nextTick } from 'vue'\n\nconst RealGridBase = <T>() => {\n return defineComponent({\n name: 'RealGridBase',\n props: {\n disabled: Boolean,\n gridProps: Object as PropType<GridOptions<T>>,\n dataProps: Object as PropType<RealGrid.DataOptions>,\n locale: Object as PropType<Partial<RealGrid.RealGridLocale>>,\n autoGenerateField: Boolean,\n rows: Array as PropType<RealGrid.DataValues[]>,\n rowStyleCallback: Function as PropType<RealGrid.RowStyleCallback>,\n cellStyleCallback: Function as PropType<RealGrid.CellStyleCallback>,\n layout: Array as PropType<(string | RealGrid.CellLayoutGroupItem | RealGrid.CellLayoutColumnItem)[]>,\n onInitialized: Function as PropType<(grid: GridType<T>) => void>,\n onDestroy: Function as PropType<(grid: GridType<T>) => void>,\n onCurrentChanging: Function as PropType<(grid: GridType<T>, oldIndex: RealGrid.CellIndex, newIndex: RealGrid.CellIndex) => boolean>,\n onCurrentChanged: Function as PropType<(grid: GridType<T>, newIndex: RealGrid.CellIndex) => void>,\n onCurrentRowChanged: Function as PropType<(grid: GridType<T>, oldRow: number, newRow: number) => void>,\n onValidateColumn: Function as PropType<(grid: GridType<T>, column: RealGrid.DataColumn, inserting: boolean, value: any, itemIndex: number, dataRow: number) => RealGrid.ValidationError | undefined>,\n onValidateRow: Function as PropType<(grid: GridType<T>, itemIndex: number, dataRow: number, inserting: boolean, values: any[]) => RealGrid.ValidationError>,\n onValidationFail: Function as PropType<(grid: GridType<T>, itemIndex: number, column: RealGrid.GridColumn, error: RealGrid.ValidationError) => RealGrid.ValidationError>,\n onColumnCheckedChanged: Function as PropType<(grid: GridType<T>, column: RealGrid.GridColumn, checked: boolean) => void>,\n onMenuItemClicked: Function as PropType<(grid: GridType<T>, item: RealGrid.PopupMenuItem, clickData: RealGrid.ClickData) => void>,\n onContextMenuPopup: Function as PropType<(grid: GridType<T>, x: number, y: number, clickData: RealGrid.ClickData, menu: string, rightClick: boolean) => boolean | string>,\n onContextMenuItemClicked: Function as PropType<(grid: GridType<T>, item: RealGrid.PopupMenuItem, clickData: RealGrid.ClickData) => void>,\n onCellButtonClicked: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, column: RealGrid.GridColumn) => void>,\n onScrollToBottom: Function as PropType<(grid: GridType<T>) => void>,\n onTopIndexChanged: Function as PropType<(grid: GridType<T>, itemIndex: number) => void>,\n onTopIndexChanging: Function as PropType<(grid: GridType<T>, currentTop: number, delta: number, focusing: boolean, adjust: boolean) => number>,\n onLeftPosChanged: Function as PropType<(grid: GridType<T>, pos: number) => void>,\n onRowsDeleting: Function as PropType<(grid: GridType<T>, rows: number[]) => boolean>,\n onRowInserting: Function as PropType<(grid: GridType<T>, itemIndex: number, dataRow: number) => boolean>,\n onSelectionCleared: Function as PropType<(grid: GridType<T>) => void>,\n onSelectionChanged: Function as PropType<(grid: GridType<T>, selection: RealGrid.Selection) => void>,\n onSelectionAdded: Function as PropType<(grid: GridType<T>, selection: RealGrid.Selection) => void>,\n onSelectionEnded: Function as PropType<(grid: GridType<T>, selection: RealGrid.Selection) => void>,\n onShowEditor: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, props: any, attrs: any) => boolean>,\n onShowEditCommand: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex) => boolean>,\n onHideEditor: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex) => void>,\n onEditChange: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, value: any) => void>,\n onGetEditValue: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, editResult: Object) => void | boolean>,\n onEditCommit: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, oldValue: any, newValue: any) => boolean>,\n onEditCanceled: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex) => void>,\n onItemEditCanceled: Function as PropType<(grid: GridType<T>, itemIndex: number, state: string) => void>,\n onItemEditCancel: Function as PropType<(grid: GridType<T>, itemIndex: number, state: string) => boolean>,\n onEditSearch: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, text: string) => void>,\n onSearchCellButtonClick: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, text: string) => void>,\n onCellEdited: Function as PropType<(grid: GridType<T>, itemIndex: number, row: number, field: number) => void>,\n onEditRowChanged: Function as PropType<(grid: GridType<T>, itemIndex: number, row: number, field: number, oldValue: any, newValue: any) => void>,\n onEditRowPasted: Function as PropType<(grid: GridType<T>, itemIndex: number, row: number, fields: number[], oldValues: any[], newValues: any[]) => void>,\n onRowsPasted: Function as PropType<(grid: GridType<T>, items: number[]) => void>,\n onCellPasting: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, value: any, editResult: RealGrid.EditResult) => boolean>,\n onItemChecked: Function as PropType<(grid: GridType<T>, itemIndex: number, checked: boolean) => void>,\n onItemAllChecked: Function as PropType<(grid: GridType<T>, checked: boolean) => void>,\n onErrorClicked: Function as PropType<(grid: GridType<T>, error: string) => void>,\n onSorting: Function as PropType<(grid: GridType<T>, fields: number[], directions: string[]) => boolean>,\n onSortingChanged: Function as PropType<(grid: GridType<T>) => void>,\n onFiltering: Function as PropType<(grid: GridType<T>) => boolean>,\n onFilteringChanged: Function as PropType<(grid: GridType<T>, column: RealGrid.GridColumn, filter: RealGrid.ColumnFilter, reset: boolean) => void>,\n onWheel: Function as PropType<(grid: GridType<T>, event: WheelEvent) => boolean>,\n onKeyDown: Function as PropType<(grid: GridType<T>, event: KeyboardEvent) => boolean>,\n onKeyPress: Function as PropType<(grid: GridType<T>, event: KeyboardEvent) => void>,\n onKeyUp: Function as PropType<(grid: GridType<T>, event: KeyboardEvent) => void>,\n onShowTooltip: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, value: any, isEllipsis: boolean) => boolean | string>,\n onShowHeaderTooltip: Function as PropType<(grid: GridType<T>, column: RealGrid.GridColumn, value: any, layout: RealGrid.CellLayoutItem, isEllipsis: boolean) => string>,\n onColumnPropertyChanged: Function as PropType<(grid: GridType<T>, column: RealGrid.GridColumn, property: string, newValue: any, oldValue: any) => void>,\n onLayoutPropertyChanged: Function as PropType<(grid: GridType<T>, layout: RealGrid.CellLayoutItem, property: string, newValue: any, oldValue: any) => void>,\n onGridActivated: Function as PropType<(grid: GridType<T>) => void>,\n onCopy: Function as PropType<(grid: GridType<T>, selection: RealGrid.Selection | RealGrid.Selection[], event: ClipboardEvent) => boolean>,\n onPaste: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, event: ClipboardEvent) => boolean>,\n onPasted: Function as PropType<(grid: GridType<T>) => void>,\n onItemsChecked: Function as PropType<(grid: GridType<T>, items: number[], checked: boolean) => void>,\n onCellClicked: Function as PropType<(grid: GridType<T>, clickData: RealGrid.ClickData) => void>,\n onCellDblClicked: Function as PropType<(grid: GridType<T>, clickData: RealGrid.ClickData) => void>,\n onCellItemClicked: Function as PropType<(grid: GridType<T>, index: RealGrid.CellIndex, clickData: RealGrid.ClickData) => boolean>,\n onCommandStackChanged: Function as PropType<(grid: GridType<T>, undoable: boolean, redoable: boolean) => void>,\n onDataLoadComplated: Function as PropType<(grid: GridType<T>) => void>,\n onLayoutExpanding: Function as PropType<(grid: GridType<T>, layout: RealGrid.CellLayoutGroupItem) => boolean>,\n onLayoutExpanded: Function as PropType<(grid: GridType<T>, layout: RealGrid.CellLayoutGroupItem) => void>,\n onLayoutCollapsing: Function as PropType<(grid: GridType<T>, layout: RealGrid.CellLayoutGroupItem) => boolean>,\n onLayoutCollapsed: Function as PropType<(grid: GridType<T>, layout: RealGrid.CellLayoutGroupItem) => void>,\n onGridFocusChanged: Function as PropType<(grid: GridType<T>, focused: boolean, event: Event) => void>\n },\n data() {\n return {\n $dataProvider: null as RealGrid.DataProviderBase | null,\n $gridView: null as RealGrid.GridBase | null,\n _mountTimer: null as number | null,\n _mountCBs: [] as Function[],\n }\n },\n mounted() {\n const container = this.$el as HTMLDivElement\n const props = kebabToCamel(toRaw(this.$props)) as any\n const { grid, dataProvider } = this._createGrid(container, props)\n this.dataProvider = dataProvider\n this.gridView = grid\n this.executeCB()\n $_connectEvents(grid, dataProvider, props)\n this._applyOptions(props)\n\n if (props.layout) {\n grid.setColumnLayout(props.layout)\n }\n\n this._doInitProc(grid, props)\n this._setData(props)\n },\n computed: {\n dataProvider: {\n get(): ProviderType<T> {\n return toRaw(this.$data.$dataProvider) as unknown as ProviderType<T>\n },\n set(value: ProviderType<T>) {\n this.$dataProvider = value\n },\n },\n gridView: {\n get(): GridType<T> {\n return toRaw(this.$data.$gridView) as unknown as GridType<T>\n },\n set(value: GridType<T>) {\n this.$gridView = value\n },\n },\n },\n unmounted() {\n const props = kebabToCamel(this.$props) as any\n const listener = kebabToCamel(this.$attrs, 'on') as any\n\n const destroyProc = props.onDestroy || listener.onDestroy\n destroyProc && destroyProc(this.gridView)\n this.gridView = this.gridView && this.gridView.destroy()\n this.dataProvider = this.dataProvider && this.dataProvider.destroy()\n },\n destroyed() {\n const props = kebabToCamel(this.$props) as any\n const listener = kebabToCamel(this.$attrs, 'on') as any\n\n const destroyProc = props.onDestroy || listener.onDestroy\n destroyProc && destroyProc(this.gridView)\n this.gridView = this.gridView && this.gridView.destroy()\n this.dataProvider = this.dataProvider && this.dataProvider.destroy()\n },\n watch: {\n gridProps: {\n handler(val, oldVal) {\n const diff = extractDiff({}, oldVal, val)\n if (this.gridView && diff && Object.keys(diff).length > 0) {\n this.gridView.setOptions(diff)\n }\n },\n deep: true,\n },\n disabled(val, oldVal) {\n this.gridView && (this.gridView.disabled = val)\n },\n dataProps: {\n handler(val, oldVal) {\n const diff = extractDiff({}, oldVal, val)\n if (this.dataProvider && diff && Object.keys(diff).length > 0) {\n this.dataProvider.setOptions(diff)\n }\n },\n deep: true,\n },\n locale: {\n handler(val, oldVal) {\n val && RealGrid.default.setLocale(val)\n },\n },\n layout: {\n handler(val, oldVal) {\n this.gridView && this.gridView.setColumnLayout(val)\n },\n deep: true,\n },\n },\n methods: {\n addCallback(fn: Function) {\n this.$data._mountCBs.push(fn)\n clearTimeout(this.$data._mountTimer!)\n const self = this\n this.$data._mountTimer = window.setTimeout(function () {\n self.executeCB()\n }, 20)\n },\n removeCallback(fn: Function) {\n if (this.$data._mountCBs.indexOf(fn) >= 0) {\n const idx = this.$data._mountCBs.indexOf(fn)\n this.$data._mountCBs.splice(idx, 1)\n }\n },\n executeCB() {\n const gridView = this.gridView\n const dataProvider = this.dataProvider\n if (!gridView) {\n return\n }\n clearTimeout(this._mountTimer!)\n //@ts-ignore\n if (gridView && gridView['_view']) {\n gridView.beginUpdate()\n try {\n dataProvider?.beginUpdate()\n try {\n const cbs = this.$data._mountCBs.sort((v1: any, v2: any) => {\n return (v1.$mountSeq == null ? -1 : v1.$mountSeq) - (v2.$mountSeq == null ? -1 : v2.$mountSeq)\n })\n while (cbs && cbs.length) {\n const f = cbs.shift()\n f?.call(this, gridView)\n }\n } finally {\n dataProvider?.endUpdate()\n }\n } finally {\n gridView.endUpdate(true)\n this.$data._mountTimer = null\n this.$data._mountCBs = []\n }\n }\n },\n _applyOptions(options: any) {\n const grid = this.gridView\n const dataProvider = this.dataProvider\n if (grid) {\n for (let [key, value] of Object.entries(options)) {\n switch (key) {\n case 'gridProps':\n value && grid.setOptions(value as RealGrid.ViewOptions)\n break\n case 'disabled':\n grid && (grid.disabled = !!value)\n break\n case 'dataProps':\n value && dataProvider?.setOptions(value as RealGrid.DataOptions)\n break\n case 'layout':\n value && grid && grid.setColumnLayout(value as any)\n break\n case 'rowStyleCallback':\n grid.setRowStyleCallback(value as RealGrid.RowStyleCallback)\n break\n case 'cellStyleCallback':\n grid.setCellStyleCallback(value as RealGrid.CellStyleCallback)\n break\n case 'locale':\n value && RealGrid.default.setLocale(value as RealGrid.RealGridLocale)\n break\n }\n }\n }\n this._doApplyOptions(options)\n },\n _createGrid(container: HTMLDivElement, props: any): { grid: GridType<T>; dataProvider: ProviderType<T> } {\n return {\n grid: null as unknown as GridType<T>,\n dataProvider: null as unknown as ProviderType<T>,\n }\n },\n _doInitProc(grid: RealGrid.GridBase, props: any) {\n const initProc = props.onInitialized\n if (initProc) {\n const fType = initProc.constructor.name\n if (fType === 'Function') {\n initProc(grid)\n } else if (fType === 'AsyncFunction') {\n Promise.resolve(initProc(grid))\n }\n }\n },\n _doApplyOptions(options: any) {},\n _setData(rows: any) {},\n },\n render() {\n const parseChild = (vNodes: any[]): VNode[] => {\n const child = []\n if (Array.isArray(vNodes)) {\n for (let vNode of vNodes) {\n if (Array.isArray(vNode.children)) {\n child.push(...parseChild(vNode.children))\n } else {\n child.push(vNode)\n }\n }\n }\n return child\n }\n const children = []\n for (let key of Object.keys(this.$slots)) {\n let vNodes: any = this.$slots[key]\n if (typeof vNodes === 'function') {\n vNodes = vNodes()\n }\n children.push(...parseChild(vNodes))\n }\n let displayIndex = 0\n for (let i = 0; i < children.length; i++) {\n const child = children[i]\n // @ts-ignore\n if (child.type instanceof Object && child.type.hasOwnProperty('name')) {\n // @ts-ignore\n const name = child.type.name\n if (name && /^RG.+Column$/.exec(name)) {\n // @ts-ignore\n child.props = child.props || {}\n // @ts-ignore\n child.props && (child.props.displayIndex ??= displayIndex++)\n }\n }\n //@ts-ignore\n child.$mountSeq = i\n }\n const style = this.$attrs.style ? this.$attrs.style : { width: '100%', height: '100%' }\n const node = h('div', { style }, children)\n\n return node\n },\n })\n}\n\nconst RealGridVue = defineComponent({\n name: 'RealGridVue',\n extends: RealGridBase<RealGrid.GridView>(),\n props: {\n accessibility: Boolean,\n waiOptions: Object as PropType<RealGrid.WaiOptions>,\n\n onPageChanging: Function as PropType<(grid: RealGrid.GridView, page: number) => boolean>,\n onPageChanged: Function as PropType<(grid: RealGrid.GridView, page: number) => void>,\n onPageCountChanged: Function as PropType<(grid: RealGrid.GridView, pageCount: number) => void>,\n onGrouping: Function as PropType<(grid: RealGrid.GridView, fields: number[]) => boolean>,\n onGrouped: Function as PropType<(grid: RealGrid.GridView) => void>,\n onExpanding: Function as PropType<(grid: RealGrid.GridView, itemIndex: number) => boolean>,\n onExpanded: Function as PropType<(grid: RealGrid.GridView, itemIndex: number) => void>,\n onCollapsing: Function as PropType<(grid: RealGrid.GridView, itemIndex: number) => boolean>,\n onCollapsed: Function as PropType<(grid: RealGrid.GridView, itemIndex: number) => void>,\n\n // dataProvider\n onRowCountChanged: Function as PropType<(provider: RealGrid.LocalDataProvider, newCount: number) => void>,\n onRowUpdating: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number, oldValues: RealGrid.RowValues, newValues: RealGrid.RowValues) => boolean>,\n onRowUpdated: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number) => void>,\n onRowsUpdated: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number, count: number) => void>,\n onRowListUpdated: Function as PropType<(provider: RealGrid.LocalDataProvider, rows: number[]) => void>,\n onDataRowInserting: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number, values: RealGrid.DataValues) => boolean>,\n onRowInserted: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number) => void>,\n onRowsInserted: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number, count: number) => void>,\n onRowDeleting: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number) => boolean>,\n onRowDeleted: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number) => void>,\n onRowsDeleted: Function as PropType<(provider: RealGrid.LocalDataProvider, rows: number[]) => void>,\n onRowMoving: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number, newRow: number) => boolean>,\n onRowMoved: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number, newRow: number) => void>,\n onRowsMoving: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number, count: number, newRow: number) => boolean>,\n onRowsMoved: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number, count: number, newRow: number) => void>,\n onRowListMoving: Function as PropType<(provider: RealGrid.LocalDataProvider, rows: number[], newRow: number) => boolean>,\n onRowListMoved: Function as PropType<(provider: RealGrid.LocalDataProvider, rows: number[], newRow: number) => void>,\n onValueChanged: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number, field: number) => void>,\n onDataChanged: Function as PropType<(provider: RealGrid.LocalDataProvider) => void>,\n onRowStateChanged: Function as PropType<(provider: RealGrid.LocalDataProvider, row: number) => void>,\n onRowStatesChanged: Function as PropType<(provider: RealGrid.LocalDataProvider, rows: number[]) => void>,\n onRowStatesCleared: Function as PropType<(provider: RealGrid.LocalDataProvider) => void>,\n onRestoreRows: Function as PropType<(provider: RealGrid.LocalDataProvider, rows: number[]) => void>,\n },\n data() {\n return {\n $dataProvider: null as RealGrid.LocalDataProvider | null,\n $gridView: null as RealGrid.GridView | null,\n }\n },\n\n watch: {\n rows: {\n handler(val, oldVal) {\n if (this.$data._mountTimer != null) {\n const callback = () => {\n nextTick(() => {\n this.dataProvider?.setRows(toRaw(val))\n })\n }\n\n callback.$mountSeq = Infinity\n this.addCallback(callback)\n } else {\n this.dataProvider?.setRows(toRaw(val))\n }\n },\n // immediate 절대 사용금지.\n },\n },\n methods: {\n _createGrid(container: HTMLDivElement, props: any) {\n const grid = new RealGrid.default.GridView(container, props?.accessibility, props?.waiOptions)\n const dataProvider = new RealGrid.default.LocalDataProvider(props.dataProps?.undoable)\n grid.setDataSource(dataProvider)\n return {\n grid,\n dataProvider,\n }\n },\n _doApplyOptions(options: { [key: string]: any }) {},\n _setData(options: { [key: string]: any }) {\n if (options.rows) {\n this.dataProvider?.setRows(toRaw(options.rows))\n }\n },\n },\n})\n\nconst RealTreeVue = defineComponent({\n name: 'RealTreeVue',\n extends: RealGridBase<RealGrid.TreeView>(),\n props: {\n treeOptions: Object as PropType<RealGrid.TreeOptions>,\n treeField: String,\n needSorting: Boolean,\n childrenField: String,\n iconField: String,\n json: Object as PropType<any>,\n rowsProp: String,\n childrenProp: String,\n iconProp: String,\n onTreeItemExpanding: Function as PropType<(tree: RealGrid.TreeView, itemIndex: number, rowId: number) => boolean>,\n onTreeItemExpanded: Function as PropType<(tree: RealGrid.TreeView, itemIndex: number, rowId: number) => void>,\n onTreeItemCollapsing: Function as PropType<(tree: RealGrid.TreeView, itemIndex: number, rowId: number) => void>,\n onTreeItemCollapsed: Function as PropType<(tree: RealGrid.TreeView, itemIndex: number, rowId: number) => void>,\n onTreeItemChanged: Function as PropType<(tree: RealGrid.TreeView, itemIndex: number, rowId: number) => void>,\n\n // dataProvider\n onRowCountChanged: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, newCount: number) => void>,\n onRowAdding: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number, index: number, child: any) => boolean>,\n onRowAdded: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number) => void>,\n onRowsAdded: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, parent: number, rows: number[]) => void>,\n onRowDeleting: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number) => boolean>,\n onRowDeleted: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number) => void>,\n onRowsDeleted: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, rows: number[]) => void>,\n onRowUpdating: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number, oldValues: RealGrid.RowValues, newValues: RealGrid.RowValues) => boolean>,\n onRowUpdated: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number) => void>,\n onRowsUpdating: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, rows: number[]) => boolean>,\n onRowsUpdated: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, rows: number[]) => void>,\n onValueChanged: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number, field: number) => void>,\n onDataChanged: Function as PropType<(provider: RealGrid.LocalTreeDataProvider) => void>,\n onRowStateChanged: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number) => void>,\n onRowStatesChanged: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, rows: number[]) => void>,\n onRowSiblingMoving: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number, offset: number) => boolean>,\n onRowSiblingMoved: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number, offset: number) => void>,\n onRowsSiblingMoving: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, rows: number[], offset: number) => boolean>,\n onRowsSiblingMoved: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, rows: number[], offset: number) => void>,\n onRowParentChanging: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number, parent: number, index: number) => boolean>,\n onRowParentChanged: Function as PropType<(provider: RealGrid.LocalTreeDataProvider, row: number, parent: number, index: number) => void>,\n },\n data() {\n return {\n $gridView: null as RealGrid.TreeView | null,\n $dataProvider: null as RealGrid.LocalTreeDataProvider | null,\n }\n },\n computed: {\n gridView: {\n get() {\n return toRaw(this.$data.$gridView)\n },\n set(value: RealGrid.TreeView) {\n this.$gridView = value\n },\n },\n dataProvider: {\n get() {\n return toRaw(this.$data.$dataProvider)\n },\n set(value: RealGrid.LocalTreeDataProvider) {\n this.$dataProvider = value\n },\n },\n },\n methods: {\n _createGrid(container: HTMLDivElement, props: any) {\n const grid = new RealGrid.TreeView(container)\n const dataProvider = new RealGrid.LocalTreeDataProvider(props.dataProps?.undoable)\n grid.setDataSource(dataProvider)\n return {\n grid,\n dataProvider,\n }\n },\n _doApplyOptions(options: { [key: string]: any }) {\n for (const [key, value] of Object.entries(options)) {\n switch (key) {\n case 'treeOptions':\n value && this.gridView?.setTreeOptions(toRaw(value))\n break\n }\n }\n },\n _setData(options: { [key: string]: any }) {\n if (options.rows) {\n this.dataProvider?.setRows(toRaw(options.rows), this.treeField as string, this.needSorting, this.childrenField, this.iconField)\n } else if (options.json) {\n this.dataProvider?.setObjectRows(toRaw(options.json), this.rowsProp as string, this.childrenProp, this.iconProp)\n }\n },\n },\n watch: {\n rows: {\n handler(val, oldVal) {\n if (this.$data._mountTimer != null) {\n const callback = () => {\n nextTick(() => {\n this.dataProvider?.setRows(toRaw(val), this.treeField!, this.needSorting, this.childrenField, this.iconField)\n })\n }\n\n callback.$mountSeq = Infinity\n this.addCallback(callback)\n } else {\n this.dataProvider?.setRows(toRaw(val), this.treeField!, this.needSorting, this.childrenField, this.iconField)\n }\n },\n },\n json: {\n handler(val, oldVal) {\n if (this.$data._mountTimer != null) {\n const callback = () => {\n nextTick(() => {\n this.dataProvider?.setObjectRows(toRaw(val), this.rowsProp!, this.childrenProp, this.iconProp)\n })\n }\n\n callback.$mountSeq = Infinity\n this.addCallback(callback)\n } else {\n this.dataProvider?.setObjectRows(toRaw(val), this.rowsProp!, this.childrenProp, this.iconProp)\n }\n },\n },\n },\n})\n\ntype RealGridVue = Omit<InstanceType<typeof RealGridVue>, Omits>\ntype RealTreeVue = Omit<InstanceType<typeof RealTreeVue>, Omits>\n\nexport { RealGridVue, RealTreeVue }\n","import { ConfigObject } from 'realgrid'\nimport { IComponentBase, IModel, IRealBaseVue } from './Types'\nimport { extractDiff, kebabToCamel } from './Utils'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\n\nexport const ComponentBase = defineComponent({\n name: 'ComponentBase',\n props: {} as ComponentPropsOptions & IComponentBase,\n data() {\n return {\n $model: null as IModel | null,\n $oldValue: null as any | null,\n }\n },\n mounted() {\n const p: IRealBaseVue = toRaw(this.$parent) as IRealBaseVue\n if (p) {\n this.$oldValue = kebabToCamel(toRaw(this.$attrs))\n //@ts-ignore\n this.mountCB.$mountSeq = this.$.vnode.$mountSeq\n p.addCallback(this.mountCB)\n }\n },\n unmounted() {\n const p: IRealBaseVue = this.$parent as IRealBaseVue\n if (p) {\n p.removeCallback(this.mountCB)\n p.addCallback(this.unmountCB)\n }\n },\n destroyed() {\n const p: IRealBaseVue = this.$parent as IRealBaseVue\n if (p) {\n p.removeCallback(this.mountCB)\n p.addCallback(this.unmountCB)\n }\n },\n watch: {\n $attrs: {\n handler(val, oldVal) {\n const value = kebabToCamel(toRaw(val))\n const diff: ConfigObject = extractDiff({}, kebabToCamel(toRaw(this.$data.$oldValue)), kebabToCamel(toRaw(val)))\n if (diff && Object.keys(diff).length > 0) {\n const model = toRaw(this.$data?.$model)\n if (model && model.assignFrom) {\n model.assignFrom(value)\n }\n this._doWatchAttrs(diff)\n this.$oldValue = value\n }\n },\n deep: true,\n },\n },\n methods: {\n mountCB() {},\n unmountCB() {},\n _doWatchAttrs(diff: ConfigObject) {},\n },\n render() {\n // return h(\"\");\n },\n})\n\nexport default ComponentBase\n","import ComponentBase from '../ComponentBase'\nimport { ConfigObject, IRealGridSeriesColumn, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\n\nconst RGSeriesColumn = defineComponent({\n name: \"RGSeriesColumn\",\n extends: ComponentBase,\n data() {\n return {\n }\n },\n props: {\n } as (ComponentPropsOptions & IRealGridSeriesColumn),\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n const pAttrs = kebabToCamel(toRaw(this.$parent?.$attrs!));\n if (pAttrs) {\n const props = kebabToCamel(toRaw(this.$attrs));\n if (grid) {\n this.$model = grid.addColumn({...props, type:\"series\"}, props.displayIndex??-1);\n }; \n }\n },\n unmountCB(grid: RealGrid.GridBase) {\n \n if (this.$data.$model) {\n grid.removeColumn(this.$data.$model.name!);\n }\n },\n _doWatchAttrs(diff: ConfigObject) {\n if (diff.hasOwnProperty(\"width\") && !isNaN(diff[\"width\"])) {\n const column = toRaw(this.$data.$model) as RealGrid.GridColumn;\n const layout = column.layout;\n if (layout) {\n layout.cellWidth = diff.width;\n }\n }\n } \n }\n});\ntype RGSeriesColumn = Omit<InstanceType<typeof RGSeriesColumn>, Omits>;\nexport default RGSeriesColumn\n","import ComponentBase from '../ComponentBase'\nimport { IRealGridStateBar, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\n\nconst RGStateBar = defineComponent({\n name: 'RGStateBar',\n extends: ComponentBase,\n props: {} as ComponentPropsOptions & IRealGridStateBar,\n data() {\n return {}\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n grid.setStateBar(kebabToCamel(toRaw(this.$attrs)))\n this.$model = grid.stateBar\n },\n },\n})\ntype RGStateBar = Omit<InstanceType<typeof RGStateBar>, Omits>\nexport default RGStateBar\n","import ComponentBase from '../ComponentBase'\nimport { IRealGridRowIndicator, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\n\nconst RGRowIndicator = defineComponent({\n name: \"RGRowIndicator\",\n extends: ComponentBase,\n props: {\n } as (ComponentPropsOptions & IRealGridRowIndicator),\n data() {\n return {\n }\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n grid.setRowIndicator(kebabToCamel(toRaw(this.$attrs)));\n this.$model = grid.rowIndicator;\n },\n }\n})\ntype RGRowIndicator = Omit<InstanceType<typeof RGRowIndicator>, Omits>;\nexport default RGRowIndicator\n","import ComponentBase from '../ComponentBase'\nimport { IRealGridheaderSummaries, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\nconst RGHeaderSummaries = defineComponent({\n name: 'RGHeaderSummaries',\n extends: ComponentBase,\n props: {} as ComponentPropsOptions & IRealGridheaderSummaries,\n data() {\n return {}\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n grid.setHeaderSummaries(kebabToCamel(toRaw(this.$attrs)))\n this.$model = grid.headerSummaries\n },\n },\n})\ntype RGHeaderSummaries = Omit<InstanceType<typeof RGHeaderSummaries>, Omits>;\nexport default RGHeaderSummaries\n","import ComponentBase from '../ComponentBase'\nimport { IRealGridHeaderSummary, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\nconst RGHeaderSummary = defineComponent({\n name: 'RGHeaderSummary',\n extends: ComponentBase,\n props: {} as ComponentPropsOptions & IRealGridHeaderSummary,\n data() {\n return {}\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n grid.setHeaderSummary(kebabToCamel(toRaw(this.$attrs)))\n this.$model = grid.headerSummary\n },\n },\n})\ntype RGHeaderSummary = Omit<InstanceType<typeof RGHeaderSummary>, Omits>;\nexport default RGHeaderSummary\n","import ComponentBase from \"../ComponentBase\";\nimport { IRealGridHeader, Omits } from \"../Types\";\nimport { ComponentPropsOptions, defineComponent, toRaw } from \"vue\";\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from \"../Utils\";\n\nconst RGHeader = defineComponent({\n name: \"RGHeader\",\n extends: ComponentBase,\n props: {\n } as (ComponentPropsOptions & IRealGridHeader),\n data() {\n return {\n }\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n grid.setHeader(kebabToCamel(toRaw(this.$attrs)));\n this.$model = grid.header;\n },\n }\n});\ntype RGHeader = Omit<InstanceType<typeof RGHeader>, Omits>;\nexport default RGHeader;","import ComponentBase from '../ComponentBase'\nimport { IRealGridGroupPanel, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\n\nconst RGGroupPanel = defineComponent({\n name: \"RGGroupPanel\",\n extends: ComponentBase,\n props: {\n } as (ComponentPropsOptions & IRealGridGroupPanel),\n data() {\n return {\n }\n },\n methods: {\n mountCB(grid: RealGrid.GridView) {\n grid.setGroupPanel(kebabToCamel(toRaw(this.$attrs)));\n this.$model = grid.groupPanel;\n },\n }\n});\n\ntype RGGroupPanel = Omit<InstanceType<typeof RGGroupPanel>, Omits>;\n\nexport default RGGroupPanel\n","import ComponentBase from \"../ComponentBase\";\nimport { ComponentPropsOptions, defineComponent, toRaw } from \"vue\";\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from \"../Utils\";\nimport { IRealGridFooters, Omits } from \"../Types\";\n\n\nconst RGFooter = defineComponent({\n name: \"RGFooter\",\n extends: ComponentBase,\n props: {\n } as (ComponentPropsOptions & IRealGridFooters),\n data() {\n return {\n }\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n grid.setFooter(kebabToCamel(toRaw(this.$attrs)));\n this.$model = grid.footer;\n },\n }\n});\n\ntype RGFooter = Omit<InstanceType<typeof RGFooter>, Omits>;\n\nexport default RGFooter;","import ComponentBase from \"../ComponentBase\";\nimport { IRealGridFooter, Omits } from \"../Types\";\nimport { ComponentPropsOptions, defineComponent, toRaw } from \"vue\";\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from \"../Utils\";\nconst RGFooters = defineComponent({\n name: \"RGFooters\",\n extends: ComponentBase,\n props: {\n } as (ComponentPropsOptions & IRealGridFooter),\n data() {\n return {\n }\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n grid.setFooters(kebabToCamel(toRaw(this.$attrs)));\n this.$model = grid.footer;\n },\n }\n});\n\ntype RGFooters = Omit<InstanceType<typeof RGFooters>, Omits>;\n\nexport default RGFooters;","import ComponentBase from '../ComponentBase'\nimport { IRealGridFilterPanel, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\n\nconst RGFilterPanel = defineComponent({\n name: \"RGFilterPanel\",\n extends: ComponentBase,\n props: {\n } as (ComponentPropsOptions & IRealGridFilterPanel),\n data() {\n return {\n }\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n grid.setFilterPanel(kebabToCamel(toRaw(this.$attrs)));\n this.$model = grid.filterPanel;\n },\n }\n});\n\ntype RGFilterPanel = Omit<InstanceType<typeof RGFilterPanel>, Omits>;\n\nexport default RGFilterPanel\n","import ComponentBase from \"../ComponentBase\";\nimport { ComponentPropsOptions, defineComponent, toRaw } from \"vue\";\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from \"../Utils\";\nimport { IRealGridDataField, Omits } from \"../Types\";\n\nconst RGDataField = defineComponent({\n name: \"RGDataField\",\n extends: ComponentBase,\n props: {\n } as (ComponentPropsOptions & IRealGridDataField),\n data() {\n return {\n\n }\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n const attrs = kebabToCamel(toRaw(this.$attrs));\n if (attrs.fieldName) {\n const dp = grid.getDataSource();\n const field = dp.fieldByName(attrs.fieldName);\n if (!field) {\n this.$model = dp.addField(attrs, true);\n }\n }\n },\n unmountDB(grid: RealGrid.GridBase) {\n if (this.$model) {\n const dp = grid.getDataSource();\n dp.removeField(this.$model);\n }\n }\n }\n});\n\ntype RGDataField = Omit<InstanceType<typeof RGDataField>, Omits>;\n\nexport default RGDataField;","import ComponentBase from '../ComponentBase'\nimport { ConfigObject, IRGDataColumn, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\n\n\nconst RGDataColumn = defineComponent({\n name: \"RGDataColumn\",\n extends: ComponentBase,\n data() {\n return {\n }\n },\n\n props: {\n } as (ComponentPropsOptions & IRGDataColumn),\n\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n const pAttrs = kebabToCamel(toRaw(this.$parent?.$props!));\n if (pAttrs) {\n const generateField = pAttrs.autoGenerateField;\n const dp = grid?.getDataSource();\n const props = kebabToCamel(toRaw(this.$attrs));\n let fieldName = props.fieldName;\n if (generateField) {\n if (!fieldName && props.field) {\n fieldName = props.field.fieldName;\n }\n \n if (dp && !dp.fieldByName(fieldName)) {\n dp.addField(props.field || fieldName);\n }\n }\n if (grid) {\n this.$model = grid.addColumn({...props, ...{fieldName}}, props.displayIndex??-1);\n }; \n }\n },\n unmountCB(grid: RealGrid.GridBase) {\n if (this.$data.$model) {\n grid.removeColumn(this.$data.$model.name!);\n }\n const pAttrs = kebabToCamel(toRaw(this.$parent?.$props!));\n if (pAttrs) {\n const generateField = pAttrs.autoGenerateField;\n const dp = grid?.getDataSource();\n const props = kebabToCamel(toRaw(this.$attrs));\n let fieldName = props.fieldName;\n if (generateField) {\n if (!fieldName && props.field) {\n fieldName = props.field.fieldName;\n }\n if (!grid.columnByField(fieldName)) {\n dp.removeField(fieldName)\n }\n }; \n }\n\n },\n _doWatchAttrs(diff: ConfigObject) {\n if (diff.hasOwnProperty(\"width\") && !isNaN(diff[\"width\"])) {\n const column = toRaw(this.$data.$model) as RealGrid.GridColumn;\n const layout = column.layout;\n if (layout) {\n layout.cellWidth = diff.width;\n }\n }\n }\n }\n});\ntype RGDataColumn = Omit<InstanceType<typeof RGDataColumn>, Omits>;\nexport default RGDataColumn\n","import ComponentBase from '../ComponentBase'\nimport { ConfigObject, IRealGridLiteralColumn, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\n\nconst RGLiteralColumn = defineComponent({\n name: \"RGLiteralColumn\",\n extends: ComponentBase,\n data() {\n return {\n }\n },\n props: {\n } as (ComponentPropsOptions & IRealGridLiteralColumn),\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n const pAttrs = kebabToCamel(toRaw(this.$parent?.$attrs!));\n if (pAttrs) {\n const props = kebabToCamel(toRaw(this.$attrs));\n if (grid) {\n this.$model = grid.addColumn({...props, type:\"literal\"}, props.displayIndex??-1);\n }; \n }\n },\n unmountCB(grid: RealGrid.GridBase) {\n \n if (this.$data.$model) {\n grid.removeColumn(this.$data.$model.name!);\n }\n },\n _doWatchAttrs(diff: ConfigObject) {\n if (diff.hasOwnProperty(\"width\") && !isNaN(diff[\"width\"])) {\n const column = toRaw(this.$data.$model) as RealGrid.GridColumn;\n const layout = column.layout;\n if (layout) {\n layout.cellWidth = diff.width;\n }\n }\n } \n }\n});\ntype RGLiteralColumn = Omit<InstanceType<typeof RGLiteralColumn>, Omits>;\nexport default RGLiteralColumn\n","import ComponentBase from '../ComponentBase'\nimport { IRealGridCheckBar, Omits } from '../Types'\nimport { ComponentPropsOptions, defineComponent, toRaw } from 'vue'\nimport * as RealGrid from 'realgrid'\nimport { kebabToCamel } from '../Utils'\n\nconst RGCheckBar = defineComponent({\n name: \"RGCheckBar\",\n extends: ComponentBase,\n props: {\n } as (ComponentPropsOptions & IRealGridCheckBar),\n data() {\n return {\n }\n },\n methods: {\n mountCB(grid: RealGrid.GridBase) {\n grid.setCheckBar(kebabToCamel(toRaw(this.$attrs)));\n this.$model = grid.checkBar;\n },\n }\n})\n\ntype RGCheckBar = Omit<InstanceType<typeof RGCheckBar>, Omits>;\nexport default RGCheckBar\n"],"names":["camelize","s","x","kebabToCamel","obj","prefix","ret","key","toRaw","extractDiff","target","origin","diff","exceptKey","value","dif","$_connectEvents","grid","provider","props","RealGridBase","defineComponent","container","dataProvider","listener","destroyProc","val","oldVal","RealGrid","fn","self","idx","gridView","cbs","v1","v2","f","options","initProc","fType","rows","parseChild","vNodes","child","vNode","children","displayIndex","i","name","_a","style","h","RealGridVue","callback","nextTick","RealTreeVue","_b","ComponentBase","p","model","RGSeriesColumn","layout","RGStateBar","RGRowIndicator","RGHeaderSummaries","RGHeaderSummary","RGHeader","RGGroupPanel","RGFooter","RGFooters","RGFilterPanel","RGDataField","attrs","dp","RGDataColumn","pAttrs","generateField","fieldName","RGLiteralColumn","RGCheckBar"],"mappings":"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"}
|