UNPKG

3.55 kBSource Map (JSON)View Raw
1{"version":3,"sources":["table/SelectionBox.js"],"names":["React","Component","Checkbox","Radio","SelectionBox","props","state","checked","getCheckState","subscribe","unsubscribe","store","setState","defaultSelection","rowIndex","getState","selectionDirty","selectedRowKeys","indexOf","type","rest","createElement","value"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAOA,KAAP,IAAgBC,SAAhB,QAAiC,OAAjC;AACA,OAAOC,QAAP,MAAqB,aAArB;AACA,OAAOC,KAAP,MAAkB,UAAlB;;IACqBC,Y;;;;;;;AACjB,wBAAYC,KAAZ,EAAmB;AAAA;;AAAA;;AACf,8BAAMA,KAAN;AACA,UAAKC,KAAL,GAAa;AACTC,MAAAA,OAAO,EAAE,MAAKC,aAAL,CAAmBH,KAAnB;AADA,KAAb;AAFe;AAKlB;;;;wCACmB;AAChB,WAAKI,SAAL;AACH;;;2CACsB;AACnB,UAAI,KAAKC,WAAT,EAAsB;AAClB,aAAKA,WAAL;AACH;AACJ;;;gCACW;AAAA;;AAAA,UACAC,KADA,GACU,KAAKN,KADf,CACAM,KADA;AAER,WAAKD,WAAL,GAAmBC,KAAK,CAACF,SAAN,CAAgB,YAAM;AACrC,YAAMF,OAAO,GAAG,MAAI,CAACC,aAAL,CAAmB,MAAI,CAACH,KAAxB,CAAhB;;AACA,QAAA,MAAI,CAACO,QAAL,CAAc;AAAEL,UAAAA,OAAO,EAAPA;AAAF,SAAd;AACH,OAHkB,CAAnB;AAIH;;;kCACaF,K,EAAO;AAAA,UACTM,KADS,GAC6BN,KAD7B,CACTM,KADS;AAAA,UACFE,gBADE,GAC6BR,KAD7B,CACFQ,gBADE;AAAA,UACgBC,QADhB,GAC6BT,KAD7B,CACgBS,QADhB;AAEjB,UAAIP,OAAO,GAAG,KAAd;;AACA,UAAII,KAAK,CAACI,QAAN,GAAiBC,cAArB,EAAqC;AACjCT,QAAAA,OAAO,GAAGI,KAAK,CAACI,QAAN,GAAiBE,eAAjB,CAAiCC,OAAjC,CAAyCJ,QAAzC,KAAsD,CAAhE;AACH,OAFD,MAGK;AACDP,QAAAA,OAAO,GACHI,KAAK,CAACI,QAAN,GAAiBE,eAAjB,CAAiCC,OAAjC,CAAyCJ,QAAzC,KAAsD,CAAtD,IACID,gBAAgB,CAACK,OAAjB,CAAyBJ,QAAzB,KAAsC,CAF9C;AAGH;;AACD,aAAOP,OAAP;AACH;;;6BACQ;AAAA,wBAC+B,KAAKF,KADpC;AAAA,UACGc,IADH,eACGA,IADH;AAAA,UACSL,QADT,eACSA,QADT;AAAA,UACsBM,IADtB;;AAAA,UAEGb,OAFH,GAEe,KAAKD,KAFpB,CAEGC,OAFH;;AAGL,UAAIY,IAAI,KAAK,OAAb,EAAsB;AAClB,eAAOnB,KAAK,CAACqB,aAAN,CAAoBlB,KAApB,EAA2B,SAAc;AAAEI,UAAAA,OAAO,EAAEA,OAAX;AAAoBe,UAAAA,KAAK,EAAER;AAA3B,SAAd,EAAqDM,IAArD,CAA3B,CAAP;AACH;;AACD,aAAOpB,KAAK,CAACqB,aAAN,CAAoBnB,QAApB,EAA8B,SAAc;AAAEK,QAAAA,OAAO,EAAEA;AAAX,OAAd,EAAoCa,IAApC,CAA9B,CAAP;AACH;;;;EA1CqCnB,S;;SAArBG,Y","sourcesContent":["import React, { Component } from 'react';\nimport Checkbox from '../checkbox';\nimport Radio from '../radio';\nexport default class SelectionBox extends Component {\n constructor(props) {\n super(props);\n this.state = {\n checked: this.getCheckState(props),\n };\n }\n componentDidMount() {\n this.subscribe();\n }\n componentWillUnmount() {\n if (this.unsubscribe) {\n this.unsubscribe();\n }\n }\n subscribe() {\n const { store } = this.props;\n this.unsubscribe = store.subscribe(() => {\n const checked = this.getCheckState(this.props);\n this.setState({ checked });\n });\n }\n getCheckState(props) {\n const { store, defaultSelection, rowIndex } = props;\n let checked = false;\n if (store.getState().selectionDirty) {\n checked = store.getState().selectedRowKeys.indexOf(rowIndex) >= 0;\n }\n else {\n checked =\n store.getState().selectedRowKeys.indexOf(rowIndex) >= 0 ||\n defaultSelection.indexOf(rowIndex) >= 0;\n }\n return checked;\n }\n render() {\n const { type, rowIndex, ...rest } = this.props;\n const { checked } = this.state;\n if (type === 'radio') {\n return React.createElement(Radio, Object.assign({ checked: checked, value: rowIndex }, rest));\n }\n return React.createElement(Checkbox, Object.assign({ checked: checked }, rest));\n }\n}\n"],"file":"SelectionBox.js"}
\No newline at end of file