diff --git a/examples/common.css.map b/examples/common.css.map index f91226a..07f6f96 100644 --- a/examples/common.css.map +++ b/examples/common.css.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///./assets/index.less","webpack:///assets/index.less"],"names":[],"mappings":"AAuBA;EACE;EACA;EACA;EACA;EACA;EAdA;EACA;CCPD;ADeD;EALI;EACA;CCPH;ADoBC;EACE;EACA;EACA;EACA;EACA;EACA;CClBH;ADqBC;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CCnBH;ADqBG;EACE;CCnBL;ADsBK;EACE;EACA;CCpBP;ADyBC;EACE;EACA;EACA;EACA;EACA;EACA;CCvBH;AD0BC;EACE;EACA;EACA;EACA;EACA;EACA;CCxBH;AD0BG;EACE;CCxBL;AD4BC;EACE;EACA;EACA;EACA;EACA;CC1BH;AD6BC;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CC3BH;AD4BG;EACE;CC1BL;AD4BG;EACE;CC1BL;AD4BG;EACE;CC1BL;AD8BC;EACE;CC5BH;AD2BC;EAII;CC5BL;ADwBC;;EAQI;EACA;EACA;CC5BL;ADkBC;;EAcI;CC5BL;ADiCD;EACE;EACA;CC/BD;ADiCG;EACE;EACA;CC/BL;ADkCG;EACE;EACA;EACA;CChCL;ADmCG;EACE;EACA;EACA;CCjCL;ADoCG;EACE;EACA;CClCL;ADqCG;EACE;EACA;CCnCL;ADoCK;EACE;CClCP;ADoCK;EACE;CClCP;AD+CC;;EANA;UAAA;EACA;UAAA;EACA;EAME;UAAA;CC1CH;AD4CC;EAVA;UAAA;EACA;UAAA;EACA;EAUE;UAAA;CCxCH;AD0CC;;EACE;UAAA;EACA;UAAA;CCvCH;ADyCC;EACE;UAAA;EACA;UAAA;CCvCH;AD4CC;;EACE;UAAA;EACA;UAAA;CCzCH;AD2CC;EACE;UAAA;CCzCH;AD8CD;EACE;IACE;IACA;YAAA;IACA;YAAA;GC5CD;ED8CD;IACE;YAAA;IACA;YAAA;GC5CD;CACF;ADmCD;EACE;IACE;IACA;YAAA;IACA;YAAA;GC5CD;ED8CD;IACE;YAAA;IACA;YAAA;GC5CD;CACF;AD+CD;EACE;IACE;YAAA;IACA;YAAA;GC7CD;ED+CD;IACE;IACA;YAAA;IACA;YAAA;GC7CD;CACF;ADoCD;EACE;IACE;YAAA;IACA;YAAA;GC7CD;ED+CD;IACE;IACA;YAAA;IACA;YAAA;GC7CD;CACF;ADgDD;EACE;EACA;EACA;EACA;EACA;EAjOA;EACA;CCoLD;ADuCD;EAxNI;EACA;CCoLH;AD4CC;EACE;CC1CH;AD6CC;EACE;CC3CH;AD8CC;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CC5CH;AD+CC;EACE;EACA;EACA;EACA;EACA;CC7CH;ADgDC;EACE;EACA;EACA;EACA;EACA;CC9CH","file":"common.css","sourcesContent":["@prefixClass: rc-slider;\n\n@disabledColor: #ccc;\n@border-radius-base: 6px;\n@primary-color: #2db7f5;\n@tooltip-color: #fff;\n@tooltip-bg: tint(#666, 4%);\n@tooltip-arrow-width: 4px;\n@tooltip-distance: @tooltip-arrow-width+4;\n@tooltip-arrow-color: @tooltip-bg;\n@ease-out-quint : cubic-bezier(0.23, 1, 0.32, 1);\n@ease-in-quint : cubic-bezier(0.755, 0.05, 0.855, 0.06);\n\n.borderBox() {\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0); // remove tap highlight color for mobile safari\n\n * {\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0); // remove tap highlight color for mobile safari\n }\n}\n\n.@{prefixClass} {\n position: relative;\n height: 4px;\n width: 100%;\n border-radius: @border-radius-base;\n background-color: #e9e9e9;\n\n .borderBox();\n\n &-track {\n position: absolute;\n left: 0;\n height: 4px;\n border-radius: @border-radius-base;\n background-color: tint(@primary-color, 60%);\n z-index: 1;\n }\n\n &-handle {\n position: absolute;\n margin-left: -7px;\n margin-top: -5px;\n width: 14px;\n height: 14px;\n cursor: pointer;\n border-radius: 50%;\n border: solid 2px tint(@primary-color, 50%);\n background-color: #fff;\n z-index: 2;\n\n &:hover {\n border-color: tint(@primary-color, 20%);\n }\n &-active {\n &:active {\n border-color: tint(@primary-color, 20%);\n box-shadow: 0 0 5px tint(@primary-color, 20%);\n }\n }\n }\n\n &-mark {\n position: absolute;\n top: 10px;\n left: 0;\n width: 100%;\n font-size: 12px;\n z-index: 3;\n }\n\n &-mark-text {\n position: absolute;\n display: inline-block;\n vertical-align: middle;\n text-align: center;\n cursor: pointer;\n color: #999;\n\n &-active {\n color: #666;\n }\n }\n\n &-step {\n position: absolute;\n width: 100%;\n height: 4px;\n background: transparent;\n z-index: 1;\n }\n\n &-dot {\n position: absolute;\n bottom: -2px;\n margin-left: -4px;\n width: 8px;\n height: 8px;\n border: 2px solid #e9e9e9;\n background-color: #fff;\n cursor: pointer;\n border-radius: 50%;\n vertical-align: middle;\n &:first-child {\n margin-left: -4px;\n }\n &:last-child {\n margin-left: -4px;\n }\n &-active {\n border-color: tint(@primary-color, 50%);\n }\n }\n\n &-disabled {\n background-color: #e9e9e9;\n\n .@{prefixClass}-track {\n background-color: @disabledColor;\n }\n\n .@{prefixClass}-handle, .@{prefixClass}-dot {\n border-color: @disabledColor;\n background-color: #fff;\n cursor: not-allowed;\n }\n\n .@{prefixClass}-mark-text, .@{prefixClass}-dot {\n cursor: not-allowed!important;\n }\n }\n}\n\n.@{prefixClass}-vertical {\n width: 4px;\n height: 100%;\n .@{prefixClass} {\n &-track {\n bottom: 0;\n width: 4px;\n }\n\n &-handle {\n position: absolute;\n margin-left: -5px;\n margin-bottom: -7px;\n }\n\n &-mark {\n top: 0;\n left: 10px;\n height: 100%;\n }\n\n &-step {\n height: 100%;\n width: 4px;\n }\n\n &-dot {\n left: 2px;\n margin-bottom: -4px;\n &:first-child {\n margin-bottom: -4px;\n }\n &:last-child {\n margin-bottom: -4px;\n }\n }\n }\n}\n\n.motion-common() {\n animation-duration: .3s;\n animation-fill-mode: both;\n display: block !important;\n}\n\n.make-motion(@className, @keyframeName) {\n .@{className}-enter, .@{className}-appear {\n .motion-common();\n animation-play-state: paused;\n }\n .@{className}-leave {\n .motion-common();\n animation-play-state: paused;\n }\n .@{className}-enter.@{className}-enter-active, .@{className}-appear.@{className}-appear-active {\n animation-name: ~\"@{keyframeName}In\";\n animation-play-state: running;\n }\n .@{className}-leave.@{className}-leave-active {\n animation-name: ~\"@{keyframeName}Out\";\n animation-play-state: running;\n }\n}\n.zoom-motion(@className, @keyframeName) {\n .make-motion(@className, @keyframeName);\n .@{className}-enter, .@{className}-appear {\n transform: scale(0, 0); // need this by yiminghe\n animation-timing-function: @ease-out-quint;\n }\n .@{className}-leave {\n animation-timing-function: @ease-in-quint;\n }\n}\n.zoom-motion(rc-slider-tooltip-zoom-down, rcSliderTooltipZoomDown);\n\n@keyframes rcSliderTooltipZoomDownIn {\n 0% {\n opacity: 0;\n transform-origin: 50% 100%;\n transform: scale(0, 0);\n }\n 100% {\n transform-origin: 50% 100%;\n transform: scale(1, 1);\n }\n}\n\n@keyframes rcSliderTooltipZoomDownOut {\n 0% {\n transform-origin: 50% 100%;\n transform: scale(1, 1);\n }\n 100% {\n opacity: 0;\n transform-origin: 50% 100%;\n transform: scale(0, 0);\n }\n}\n\n.rc-tooltip {\n position: absolute;\n left: -9999px;\n top: -9999px;\n z-index: 4;\n visibility: visible;\n\n .borderBox();\n\n &-hidden {\n display: none;\n }\n\n &-placement-top {\n padding: @tooltip-arrow-width 0 @tooltip-distance 0;\n }\n\n &-inner {\n padding: 6px 2px;\n min-width: 24px;\n height: 24px;\n font-size: 12px;\n line-height: 1;\n color: @tooltip-color;\n text-align: center;\n text-decoration: none;\n background-color: @tooltip-bg;\n border-radius: @border-radius-base;\n box-shadow: 0 0 4px #d9d9d9;\n }\n\n &-arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n }\n\n &-placement-top &-arrow {\n bottom: @tooltip-distance - @tooltip-arrow-width;\n left: 50%;\n margin-left: -@tooltip-arrow-width;\n border-width: @tooltip-arrow-width @tooltip-arrow-width 0;\n border-top-color: @tooltip-arrow-color;\n }\n}\n\n\n/** WEBPACK FOOTER **\n ** ./assets/index.less\n **/",".rc-slider {\n position: relative;\n height: 4px;\n width: 100%;\n border-radius: 6px;\n background-color: #e9e9e9;\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n.rc-slider * {\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n.rc-slider-track {\n position: absolute;\n left: 0;\n height: 4px;\n border-radius: 6px;\n background-color: #abe2fb;\n z-index: 1;\n}\n.rc-slider-handle {\n position: absolute;\n margin-left: -7px;\n margin-top: -5px;\n width: 14px;\n height: 14px;\n cursor: pointer;\n border-radius: 50%;\n border: solid 2px #96dbfa;\n background-color: #fff;\n z-index: 2;\n}\n.rc-slider-handle:hover {\n border-color: #57c5f7;\n}\n.rc-slider-handle-active:active {\n border-color: #57c5f7;\n box-shadow: 0 0 5px #57c5f7;\n}\n.rc-slider-mark {\n position: absolute;\n top: 10px;\n left: 0;\n width: 100%;\n font-size: 12px;\n z-index: 3;\n}\n.rc-slider-mark-text {\n position: absolute;\n display: inline-block;\n vertical-align: middle;\n text-align: center;\n cursor: pointer;\n color: #999;\n}\n.rc-slider-mark-text-active {\n color: #666;\n}\n.rc-slider-step {\n position: absolute;\n width: 100%;\n height: 4px;\n background: transparent;\n z-index: 1;\n}\n.rc-slider-dot {\n position: absolute;\n bottom: -2px;\n margin-left: -4px;\n width: 8px;\n height: 8px;\n border: 2px solid #e9e9e9;\n background-color: #fff;\n cursor: pointer;\n border-radius: 50%;\n vertical-align: middle;\n}\n.rc-slider-dot:first-child {\n margin-left: -4px;\n}\n.rc-slider-dot:last-child {\n margin-left: -4px;\n}\n.rc-slider-dot-active {\n border-color: #96dbfa;\n}\n.rc-slider-disabled {\n background-color: #e9e9e9;\n}\n.rc-slider-disabled .rc-slider-track {\n background-color: #ccc;\n}\n.rc-slider-disabled .rc-slider-handle,\n.rc-slider-disabled .rc-slider-dot {\n border-color: #ccc;\n background-color: #fff;\n cursor: not-allowed;\n}\n.rc-slider-disabled .rc-slider-mark-text,\n.rc-slider-disabled .rc-slider-dot {\n cursor: not-allowed !important;\n}\n.rc-slider-vertical {\n width: 4px;\n height: 100%;\n}\n.rc-slider-vertical .rc-slider-track {\n bottom: 0;\n width: 4px;\n}\n.rc-slider-vertical .rc-slider-handle {\n position: absolute;\n margin-left: -5px;\n margin-bottom: -7px;\n}\n.rc-slider-vertical .rc-slider-mark {\n top: 0;\n left: 10px;\n height: 100%;\n}\n.rc-slider-vertical .rc-slider-step {\n height: 100%;\n width: 4px;\n}\n.rc-slider-vertical .rc-slider-dot {\n left: 2px;\n margin-bottom: -4px;\n}\n.rc-slider-vertical .rc-slider-dot:first-child {\n margin-bottom: -4px;\n}\n.rc-slider-vertical .rc-slider-dot:last-child {\n margin-bottom: -4px;\n}\n.rc-slider-tooltip-zoom-down-enter,\n.rc-slider-tooltip-zoom-down-appear {\n animation-duration: .3s;\n animation-fill-mode: both;\n display: block !important;\n animation-play-state: paused;\n}\n.rc-slider-tooltip-zoom-down-leave {\n animation-duration: .3s;\n animation-fill-mode: both;\n display: block !important;\n animation-play-state: paused;\n}\n.rc-slider-tooltip-zoom-down-enter.rc-slider-tooltip-zoom-down-enter-active,\n.rc-slider-tooltip-zoom-down-appear.rc-slider-tooltip-zoom-down-appear-active {\n animation-name: rcSliderTooltipZoomDownIn;\n animation-play-state: running;\n}\n.rc-slider-tooltip-zoom-down-leave.rc-slider-tooltip-zoom-down-leave-active {\n animation-name: rcSliderTooltipZoomDownOut;\n animation-play-state: running;\n}\n.rc-slider-tooltip-zoom-down-enter,\n.rc-slider-tooltip-zoom-down-appear {\n transform: scale(0, 0);\n animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1);\n}\n.rc-slider-tooltip-zoom-down-leave {\n animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);\n}\n@keyframes rcSliderTooltipZoomDownIn {\n 0% {\n opacity: 0;\n transform-origin: 50% 100%;\n transform: scale(0, 0);\n }\n 100% {\n transform-origin: 50% 100%;\n transform: scale(1, 1);\n }\n}\n@keyframes rcSliderTooltipZoomDownOut {\n 0% {\n transform-origin: 50% 100%;\n transform: scale(1, 1);\n }\n 100% {\n opacity: 0;\n transform-origin: 50% 100%;\n transform: scale(0, 0);\n }\n}\n.rc-tooltip {\n position: absolute;\n left: -9999px;\n top: -9999px;\n z-index: 4;\n visibility: visible;\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n.rc-tooltip * {\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n.rc-tooltip-hidden {\n display: none;\n}\n.rc-tooltip-placement-top {\n padding: 4px 0 8px 0;\n}\n.rc-tooltip-inner {\n padding: 6px 2px;\n min-width: 24px;\n height: 24px;\n font-size: 12px;\n line-height: 1;\n color: #fff;\n text-align: center;\n text-decoration: none;\n background-color: #6c6c6c;\n border-radius: 6px;\n box-shadow: 0 0 4px #d9d9d9;\n}\n.rc-tooltip-arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.rc-tooltip-placement-top .rc-tooltip-arrow {\n bottom: 4px;\n left: 50%;\n margin-left: -4px;\n border-width: 4px 4px 0;\n border-top-color: #6c6c6c;\n}\n\n\n\n/** WEBPACK FOOTER **\n ** assets/index.less\n **/"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///./assets/index.less","webpack:///index.less"],"names":[],"mappings":"AAuBA;EACE;EACA;EACA;EACA;EACA;EAdA;EACA;CCPD;ADeD;EALI;EACA;CCPH;ADoBC;EACE;EACA;EACA;EACA;EACA;EACA;CClBH;ADqBC;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CCnBH;ADqBG;EACE;CCnBL;ADsBK;EACE;EACA;CCpBP;ADyBC;EACE;EACA;EACA;EACA;EACA;EACA;CCvBH;AD0BC;EACE;EACA;EACA;EACA;EACA;EACA;CCxBH;AD0BG;EACE;CCxBL;AD4BC;EACE;EACA;EACA;EACA;EACA;CC1BH;AD6BC;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CC3BH;AD4BG;EACE;CC1BL;AD4BG;EACE;CC1BL;AD4BG;EACE;CC1BL;AD8BC;EACE;CC5BH;AD2BC;EAII;CC5BL;ADwBC;;EAQI;EACA;EACA;CC5BL;ADkBC;;EAcI;CC5BL;ADiCD;EACE;EACA;CC/BD;ADiCG;EACE;EACA;CC/BL;ADkCG;EACE;EACA;EACA;CChCL;ADmCG;EACE;EACA;EACA;CCjCL;ADoCG;EACE;EACA;CClCL;ADqCG;EACE;EACA;CCnCL;ADoCK;EACE;CClCP;ADoCK;EACE;CClCP;AD+CC;;EANA;UAAA;EACA;UAAA;EACA;EAME;UAAA;CC1CH;AD4CC;EAVA;UAAA;EACA;UAAA;EACA;EAUE;UAAA;CCxCH;AD0CC;;EACE;UAAA;EACA;UAAA;CCvCH;ADyCC;EACE;UAAA;EACA;UAAA;CCvCH;AD4CC;;EACE;UAAA;EACA;UAAA;CCzCH;AD2CC;EACE;UAAA;CCzCH;AD8CD;EACE;IACE;IACA;YAAA;IACA;YAAA;GC5CD;ED8CD;IACE;YAAA;IACA;YAAA;GC5CD;CACF;ADmCD;EACE;IACE;IACA;YAAA;IACA;YAAA;GC5CD;ED8CD;IACE;YAAA;IACA;YAAA;GC5CD;CACF;AD+CD;EACE;IACE;YAAA;IACA;YAAA;GC7CD;ED+CD;IACE;IACA;YAAA;IACA;YAAA;GC7CD;CACF;ADoCD;EACE;IACE;YAAA;IACA;YAAA;GC7CD;ED+CD;IACE;IACA;YAAA;IACA;YAAA;GC7CD;CACF;ADgDD;EACE;EACA;EACA;EACA;EACA;EAjOA;EACA;CCoLD;ADuCD;EAxNI;EACA;CCoLH;AD4CC;EACE;CC1CH;AD6CC;EACE;CC3CH;AD8CC;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CC5CH;AD+CC;EACE;EACA;EACA;EACA;EACA;CC7CH;ADgDC;EACE;EACA;EACA;EACA;EACA;CC9CH","file":"common.css","sourcesContent":["@prefixClass: rc-slider;\n\n@disabledColor: #ccc;\n@border-radius-base: 6px;\n@primary-color: #2db7f5;\n@tooltip-color: #fff;\n@tooltip-bg: tint(#666, 4%);\n@tooltip-arrow-width: 4px;\n@tooltip-distance: @tooltip-arrow-width+4;\n@tooltip-arrow-color: @tooltip-bg;\n@ease-out-quint : cubic-bezier(0.23, 1, 0.32, 1);\n@ease-in-quint : cubic-bezier(0.755, 0.05, 0.855, 0.06);\n\n.borderBox() {\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0); // remove tap highlight color for mobile safari\n\n * {\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0); // remove tap highlight color for mobile safari\n }\n}\n\n.@{prefixClass} {\n position: relative;\n height: 4px;\n width: 100%;\n border-radius: @border-radius-base;\n background-color: #e9e9e9;\n\n .borderBox();\n\n &-track {\n position: absolute;\n left: 0;\n height: 4px;\n border-radius: @border-radius-base;\n background-color: tint(@primary-color, 60%);\n z-index: 1;\n }\n\n &-handle {\n position: absolute;\n margin-left: -7px;\n margin-top: -5px;\n width: 14px;\n height: 14px;\n cursor: pointer;\n border-radius: 50%;\n border: solid 2px tint(@primary-color, 50%);\n background-color: #fff;\n z-index: 2;\n\n &:hover {\n border-color: tint(@primary-color, 20%);\n }\n &-active {\n &:active {\n border-color: tint(@primary-color, 20%);\n box-shadow: 0 0 5px tint(@primary-color, 20%);\n }\n }\n }\n\n &-mark {\n position: absolute;\n top: 10px;\n left: 0;\n width: 100%;\n font-size: 12px;\n z-index: 3;\n }\n\n &-mark-text {\n position: absolute;\n display: inline-block;\n vertical-align: middle;\n text-align: center;\n cursor: pointer;\n color: #999;\n\n &-active {\n color: #666;\n }\n }\n\n &-step {\n position: absolute;\n width: 100%;\n height: 4px;\n background: transparent;\n z-index: 1;\n }\n\n &-dot {\n position: absolute;\n bottom: -2px;\n margin-left: -4px;\n width: 8px;\n height: 8px;\n border: 2px solid #e9e9e9;\n background-color: #fff;\n cursor: pointer;\n border-radius: 50%;\n vertical-align: middle;\n &:first-child {\n margin-left: -4px;\n }\n &:last-child {\n margin-left: -4px;\n }\n &-active {\n border-color: tint(@primary-color, 50%);\n }\n }\n\n &-disabled {\n background-color: #e9e9e9;\n\n .@{prefixClass}-track {\n background-color: @disabledColor;\n }\n\n .@{prefixClass}-handle, .@{prefixClass}-dot {\n border-color: @disabledColor;\n background-color: #fff;\n cursor: not-allowed;\n }\n\n .@{prefixClass}-mark-text, .@{prefixClass}-dot {\n cursor: not-allowed!important;\n }\n }\n}\n\n.@{prefixClass}-vertical {\n width: 4px;\n height: 100%;\n .@{prefixClass} {\n &-track {\n bottom: 0;\n width: 4px;\n }\n\n &-handle {\n position: absolute;\n margin-left: -5px;\n margin-bottom: -7px;\n }\n\n &-mark {\n top: 0;\n left: 10px;\n height: 100%;\n }\n\n &-step {\n height: 100%;\n width: 4px;\n }\n\n &-dot {\n left: 2px;\n margin-bottom: -4px;\n &:first-child {\n margin-bottom: -4px;\n }\n &:last-child {\n margin-bottom: -4px;\n }\n }\n }\n}\n\n.motion-common() {\n animation-duration: .3s;\n animation-fill-mode: both;\n display: block !important;\n}\n\n.make-motion(@className, @keyframeName) {\n .@{className}-enter, .@{className}-appear {\n .motion-common();\n animation-play-state: paused;\n }\n .@{className}-leave {\n .motion-common();\n animation-play-state: paused;\n }\n .@{className}-enter.@{className}-enter-active, .@{className}-appear.@{className}-appear-active {\n animation-name: ~\"@{keyframeName}In\";\n animation-play-state: running;\n }\n .@{className}-leave.@{className}-leave-active {\n animation-name: ~\"@{keyframeName}Out\";\n animation-play-state: running;\n }\n}\n.zoom-motion(@className, @keyframeName) {\n .make-motion(@className, @keyframeName);\n .@{className}-enter, .@{className}-appear {\n transform: scale(0, 0); // need this by yiminghe\n animation-timing-function: @ease-out-quint;\n }\n .@{className}-leave {\n animation-timing-function: @ease-in-quint;\n }\n}\n.zoom-motion(rc-slider-tooltip-zoom-down, rcSliderTooltipZoomDown);\n\n@keyframes rcSliderTooltipZoomDownIn {\n 0% {\n opacity: 0;\n transform-origin: 50% 100%;\n transform: scale(0, 0);\n }\n 100% {\n transform-origin: 50% 100%;\n transform: scale(1, 1);\n }\n}\n\n@keyframes rcSliderTooltipZoomDownOut {\n 0% {\n transform-origin: 50% 100%;\n transform: scale(1, 1);\n }\n 100% {\n opacity: 0;\n transform-origin: 50% 100%;\n transform: scale(0, 0);\n }\n}\n\n.rc-tooltip {\n position: absolute;\n left: -9999px;\n top: -9999px;\n z-index: 4;\n visibility: visible;\n\n .borderBox();\n\n &-hidden {\n display: none;\n }\n\n &-placement-top {\n padding: @tooltip-arrow-width 0 @tooltip-distance 0;\n }\n\n &-inner {\n padding: 6px 2px;\n min-width: 24px;\n height: 24px;\n font-size: 12px;\n line-height: 1;\n color: @tooltip-color;\n text-align: center;\n text-decoration: none;\n background-color: @tooltip-bg;\n border-radius: @border-radius-base;\n box-shadow: 0 0 4px #d9d9d9;\n }\n\n &-arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n }\n\n &-placement-top &-arrow {\n bottom: @tooltip-distance - @tooltip-arrow-width;\n left: 50%;\n margin-left: -@tooltip-arrow-width;\n border-width: @tooltip-arrow-width @tooltip-arrow-width 0;\n border-top-color: @tooltip-arrow-color;\n }\n}\n\n\n/** WEBPACK FOOTER **\n ** ./assets/index.less\n **/",".rc-slider {\n position: relative;\n height: 4px;\n width: 100%;\n border-radius: 6px;\n background-color: #e9e9e9;\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n.rc-slider * {\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n.rc-slider-track {\n position: absolute;\n left: 0;\n height: 4px;\n border-radius: 6px;\n background-color: #abe2fb;\n z-index: 1;\n}\n.rc-slider-handle {\n position: absolute;\n margin-left: -7px;\n margin-top: -5px;\n width: 14px;\n height: 14px;\n cursor: pointer;\n border-radius: 50%;\n border: solid 2px #96dbfa;\n background-color: #fff;\n z-index: 2;\n}\n.rc-slider-handle:hover {\n border-color: #57c5f7;\n}\n.rc-slider-handle-active:active {\n border-color: #57c5f7;\n box-shadow: 0 0 5px #57c5f7;\n}\n.rc-slider-mark {\n position: absolute;\n top: 10px;\n left: 0;\n width: 100%;\n font-size: 12px;\n z-index: 3;\n}\n.rc-slider-mark-text {\n position: absolute;\n display: inline-block;\n vertical-align: middle;\n text-align: center;\n cursor: pointer;\n color: #999;\n}\n.rc-slider-mark-text-active {\n color: #666;\n}\n.rc-slider-step {\n position: absolute;\n width: 100%;\n height: 4px;\n background: transparent;\n z-index: 1;\n}\n.rc-slider-dot {\n position: absolute;\n bottom: -2px;\n margin-left: -4px;\n width: 8px;\n height: 8px;\n border: 2px solid #e9e9e9;\n background-color: #fff;\n cursor: pointer;\n border-radius: 50%;\n vertical-align: middle;\n}\n.rc-slider-dot:first-child {\n margin-left: -4px;\n}\n.rc-slider-dot:last-child {\n margin-left: -4px;\n}\n.rc-slider-dot-active {\n border-color: #96dbfa;\n}\n.rc-slider-disabled {\n background-color: #e9e9e9;\n}\n.rc-slider-disabled .rc-slider-track {\n background-color: #ccc;\n}\n.rc-slider-disabled .rc-slider-handle,\n.rc-slider-disabled .rc-slider-dot {\n border-color: #ccc;\n background-color: #fff;\n cursor: not-allowed;\n}\n.rc-slider-disabled .rc-slider-mark-text,\n.rc-slider-disabled .rc-slider-dot {\n cursor: not-allowed !important;\n}\n.rc-slider-vertical {\n width: 4px;\n height: 100%;\n}\n.rc-slider-vertical .rc-slider-track {\n bottom: 0;\n width: 4px;\n}\n.rc-slider-vertical .rc-slider-handle {\n position: absolute;\n margin-left: -5px;\n margin-bottom: -7px;\n}\n.rc-slider-vertical .rc-slider-mark {\n top: 0;\n left: 10px;\n height: 100%;\n}\n.rc-slider-vertical .rc-slider-step {\n height: 100%;\n width: 4px;\n}\n.rc-slider-vertical .rc-slider-dot {\n left: 2px;\n margin-bottom: -4px;\n}\n.rc-slider-vertical .rc-slider-dot:first-child {\n margin-bottom: -4px;\n}\n.rc-slider-vertical .rc-slider-dot:last-child {\n margin-bottom: -4px;\n}\n.rc-slider-tooltip-zoom-down-enter,\n.rc-slider-tooltip-zoom-down-appear {\n animation-duration: .3s;\n animation-fill-mode: both;\n display: block !important;\n animation-play-state: paused;\n}\n.rc-slider-tooltip-zoom-down-leave {\n animation-duration: .3s;\n animation-fill-mode: both;\n display: block !important;\n animation-play-state: paused;\n}\n.rc-slider-tooltip-zoom-down-enter.rc-slider-tooltip-zoom-down-enter-active,\n.rc-slider-tooltip-zoom-down-appear.rc-slider-tooltip-zoom-down-appear-active {\n animation-name: rcSliderTooltipZoomDownIn;\n animation-play-state: running;\n}\n.rc-slider-tooltip-zoom-down-leave.rc-slider-tooltip-zoom-down-leave-active {\n animation-name: rcSliderTooltipZoomDownOut;\n animation-play-state: running;\n}\n.rc-slider-tooltip-zoom-down-enter,\n.rc-slider-tooltip-zoom-down-appear {\n transform: scale(0, 0);\n animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1);\n}\n.rc-slider-tooltip-zoom-down-leave {\n animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);\n}\n@keyframes rcSliderTooltipZoomDownIn {\n 0% {\n opacity: 0;\n transform-origin: 50% 100%;\n transform: scale(0, 0);\n }\n 100% {\n transform-origin: 50% 100%;\n transform: scale(1, 1);\n }\n}\n@keyframes rcSliderTooltipZoomDownOut {\n 0% {\n transform-origin: 50% 100%;\n transform: scale(1, 1);\n }\n 100% {\n opacity: 0;\n transform-origin: 50% 100%;\n transform: scale(0, 0);\n }\n}\n.rc-tooltip {\n position: absolute;\n left: -9999px;\n top: -9999px;\n z-index: 4;\n visibility: visible;\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n.rc-tooltip * {\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n.rc-tooltip-hidden {\n display: none;\n}\n.rc-tooltip-placement-top {\n padding: 4px 0 8px 0;\n}\n.rc-tooltip-inner {\n padding: 6px 2px;\n min-width: 24px;\n height: 24px;\n font-size: 12px;\n line-height: 1;\n color: #fff;\n text-align: center;\n text-decoration: none;\n background-color: #6c6c6c;\n border-radius: 6px;\n box-shadow: 0 0 4px #d9d9d9;\n}\n.rc-tooltip-arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.rc-tooltip-placement-top .rc-tooltip-arrow {\n bottom: 4px;\n left: 50%;\n margin-left: -4px;\n border-width: 4px 4px 0;\n border-top-color: #6c6c6c;\n}\n\n\n\n/** WEBPACK FOOTER **\n ** index.less\n **/"],"sourceRoot":""} \ No newline at end of file diff --git a/examples/common.js b/examples/common.js index f7e8771..8b964dd 100644 --- a/examples/common.js +++ b/examples/common.js @@ -129,13 +129,14 @@ var ReactChildren = __webpack_require__(7); var ReactComponent = __webpack_require__(19); - var ReactClass = __webpack_require__(22); - var ReactDOMFactories = __webpack_require__(27); + var ReactPureComponent = __webpack_require__(22); + var ReactClass = __webpack_require__(23); + var ReactDOMFactories = __webpack_require__(28); var ReactElement = __webpack_require__(11); - var ReactPropTypes = __webpack_require__(32); - var ReactVersion = __webpack_require__(33); + var ReactPropTypes = __webpack_require__(34); + var ReactVersion = __webpack_require__(35); - var onlyChild = __webpack_require__(34); + var onlyChild = __webpack_require__(36); var warning = __webpack_require__(13); var createElement = ReactElement.createElement; @@ -143,7 +144,7 @@ var cloneElement = ReactElement.cloneElement; if (process.env.NODE_ENV !== 'production') { - var ReactElementValidator = __webpack_require__(29); + var ReactElementValidator = __webpack_require__(30); createElement = ReactElementValidator.createElement; createFactory = ReactElementValidator.createFactory; cloneElement = ReactElementValidator.cloneElement; @@ -173,6 +174,7 @@ }, Component: ReactComponent, + PureComponent: ReactPureComponent, createElement: createElement, cloneElement: cloneElement, @@ -206,7 +208,6 @@ /***/ function(module, exports) { // shim for using process in browser - var process = module.exports = {}; // cached from whatever global is present so that test runners that stub it @@ -218,21 +219,63 @@ var cachedClearTimeout; (function () { - try { - cachedSetTimeout = setTimeout; - } catch (e) { - cachedSetTimeout = function () { - throw new Error('setTimeout is not defined'); + try { + cachedSetTimeout = setTimeout; + } catch (e) { + cachedSetTimeout = function () { + throw new Error('setTimeout is not defined'); + } } - } - try { - cachedClearTimeout = clearTimeout; - } catch (e) { - cachedClearTimeout = function () { - throw new Error('clearTimeout is not defined'); + try { + cachedClearTimeout = clearTimeout; + } catch (e) { + cachedClearTimeout = function () { + throw new Error('clearTimeout is not defined'); + } } - } } ()) + function runTimeout(fun) { + if (cachedSetTimeout === setTimeout) { + //normal enviroments in sane situations + return setTimeout(fun, 0); + } + try { + // when when somebody has screwed with setTimeout but no I.E. maddness + return cachedSetTimeout(fun, 0); + } catch(e){ + try { + // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally + return cachedSetTimeout.call(null, fun, 0); + } catch(e){ + // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error + return cachedSetTimeout.call(this, fun, 0); + } + } + + + } + function runClearTimeout(marker) { + if (cachedClearTimeout === clearTimeout) { + //normal enviroments in sane situations + return clearTimeout(marker); + } + try { + // when when somebody has screwed with setTimeout but no I.E. maddness + return cachedClearTimeout(marker); + } catch (e){ + try { + // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally + return cachedClearTimeout.call(null, marker); + } catch (e){ + // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error. + // Some versions of I.E. have different rules for clearTimeout vs setTimeout + return cachedClearTimeout.call(this, marker); + } + } + + + + } var queue = []; var draining = false; var currentQueue; @@ -257,7 +300,7 @@ if (draining) { return; } - var timeout = cachedSetTimeout(cleanUpNextTick); + var timeout = runTimeout(cleanUpNextTick); draining = true; var len = queue.length; @@ -274,7 +317,7 @@ } currentQueue = null; draining = false; - cachedClearTimeout(timeout); + runClearTimeout(timeout); } process.nextTick = function (fun) { @@ -286,7 +329,7 @@ } queue.push(new Item(fun, args)); if (queue.length === 1 && !draining) { - cachedSetTimeout(drainQueue, 0); + runTimeout(drainQueue); } }; @@ -940,6 +983,7 @@ // This can be replaced with a WeakMap once they are implemented in // commonly used development environments. element._store = {}; + var shadowChildren = Array.isArray(props.children) ? props.children.slice(0) : props.children; // To make comparing ReactElements easier for testing purposes, we make // the validation flag non-enumerable (where possible, which should @@ -959,6 +1003,12 @@ writable: false, value: self }); + Object.defineProperty(element, '_shadowChildren', { + configurable: false, + enumerable: false, + writable: false, + value: shadowChildren + }); // Two elements created in two different places should be considered // equal for testing purposes and therefore we hide it from enumeration. Object.defineProperty(element, '_source', { @@ -970,6 +1020,7 @@ } else { element._store.validated = false; element._self = self; + element._shadowChildren = shadowChildren; element._source = source; } if (Object.freeze) { @@ -1470,7 +1521,14 @@ } } else { if (process.env.NODE_ENV !== 'production') { - process.env.NODE_ENV !== 'production' ? warning(didWarnAboutMaps, 'Using Maps as children is not yet fully supported. It is an ' + 'experimental feature that might be removed. Convert it to a ' + 'sequence / iterable of keyed ReactElements instead.') : void 0; + var mapsAsChildrenAddendum = ''; + if (ReactCurrentOwner.current) { + var mapsAsChildrenOwnerName = ReactCurrentOwner.current.getName(); + if (mapsAsChildrenOwnerName) { + mapsAsChildrenAddendum = ' Check the render method of `' + mapsAsChildrenOwnerName + '`.'; + } + } + process.env.NODE_ENV !== 'production' ? warning(didWarnAboutMaps, 'Using Maps as children is not yet fully supported. It is an ' + 'experimental feature that might be removed. Convert it to a ' + 'sequence / iterable of keyed ReactElements instead.%s', mapsAsChildrenAddendum) : void 0; didWarnAboutMaps = true; } // Iterator will provide entry [k,v] tuples rather than values. @@ -1895,6 +1953,53 @@ /***/ }, /* 22 */ +/***/ function(module, exports, __webpack_require__) { + + /** + * Copyright 2013-present, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + * + * @providesModule ReactPureComponent + */ + + 'use strict'; + + var _assign = __webpack_require__(6); + + var ReactComponent = __webpack_require__(19); + var ReactNoopUpdateQueue = __webpack_require__(20); + + var emptyObject = __webpack_require__(21); + + /** + * Base class helpers for the updating state of a component. + */ + function ReactPureComponent(props, context, updater) { + // Duplicated from ReactComponent. + this.props = props; + this.context = context; + this.refs = emptyObject; + // We initialize the default updater but the real one gets injected by the + // renderer. + this.updater = updater || ReactNoopUpdateQueue; + } + + function ComponentDummy() {} + ComponentDummy.prototype = ReactComponent.prototype; + ReactPureComponent.prototype = new ComponentDummy(); + ReactPureComponent.prototype.constructor = ReactPureComponent; + // Avoid an extra prototype jump for these methods. + _assign(ReactPureComponent.prototype, ReactComponent.prototype); + ReactPureComponent.prototype.isPureReactComponent = true; + + module.exports = ReactPureComponent; + +/***/ }, +/* 23 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -1915,14 +2020,14 @@ var ReactComponent = __webpack_require__(19); var ReactElement = __webpack_require__(11); - var ReactPropTypeLocations = __webpack_require__(23); - var ReactPropTypeLocationNames = __webpack_require__(25); + var ReactPropTypeLocations = __webpack_require__(24); + var ReactPropTypeLocationNames = __webpack_require__(26); var ReactNoopUpdateQueue = __webpack_require__(20); var emptyObject = __webpack_require__(21); var invariant = __webpack_require__(10); - var keyMirror = __webpack_require__(24); - var keyOf = __webpack_require__(26); + var keyMirror = __webpack_require__(25); + var keyOf = __webpack_require__(27); var warning = __webpack_require__(13); var MIXINS_KEY = keyOf({ mixins: null }); @@ -2284,6 +2389,13 @@ */ function mixSpecIntoComponent(Constructor, spec) { if (!spec) { + if (process.env.NODE_ENV !== 'production') { + var typeofSpec = typeof spec; + var isMixinValid = typeofSpec === 'object' && spec !== null; + + process.env.NODE_ENV !== 'production' ? warning(isMixinValid, '%s: You\'re attempting to include a mixin that is either null ' + 'or not an object. Check the mixins included by the component, ' + 'as well as any mixins they include themselves. ' + 'Expected object but got %s.', Constructor.displayName || 'ReactClass', spec === null ? null : typeofSpec) : void 0; + } + return; } @@ -2625,7 +2737,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 23 */ +/* 24 */ /***/ function(module, exports, __webpack_require__) { /** @@ -2641,7 +2753,7 @@ 'use strict'; - var keyMirror = __webpack_require__(24); + var keyMirror = __webpack_require__(25); var ReactPropTypeLocations = keyMirror({ prop: null, @@ -2652,7 +2764,7 @@ module.exports = ReactPropTypeLocations; /***/ }, -/* 24 */ +/* 25 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -2705,7 +2817,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 25 */ +/* 26 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -2735,7 +2847,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 26 */ +/* 27 */ /***/ function(module, exports) { "use strict"; @@ -2774,7 +2886,7 @@ module.exports = keyOf; /***/ }, -/* 27 */ +/* 28 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -2792,7 +2904,7 @@ var ReactElement = __webpack_require__(11); - var mapObject = __webpack_require__(28); + var mapObject = __webpack_require__(29); /** * Create a factory that creates HTML tag elements. @@ -2802,7 +2914,7 @@ */ function createDOMFactory(tag) { if (process.env.NODE_ENV !== 'production') { - var ReactElementValidator = __webpack_require__(29); + var ReactElementValidator = __webpack_require__(30); return ReactElementValidator.createFactory(tag); } return ReactElement.createFactory(tag); @@ -2956,7 +3068,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 28 */ +/* 29 */ /***/ function(module, exports) { /** @@ -3011,7 +3123,7 @@ module.exports = mapObject; /***/ }, -/* 29 */ +/* 30 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -3035,11 +3147,11 @@ 'use strict'; var ReactCurrentOwner = __webpack_require__(12); - var ReactComponentTreeDevtool = __webpack_require__(30); + var ReactComponentTreeDevtool = __webpack_require__(31); var ReactElement = __webpack_require__(11); - var ReactPropTypeLocations = __webpack_require__(23); + var ReactPropTypeLocations = __webpack_require__(24); - var checkReactTypeSpec = __webpack_require__(31); + var checkReactTypeSpec = __webpack_require__(32); var canDefineProperty = __webpack_require__(15); var getIteratorFn = __webpack_require__(17); @@ -3243,7 +3355,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 30 */ +/* 31 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -3467,7 +3579,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 31 */ +/* 32 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -3485,11 +3597,23 @@ var _prodInvariant = __webpack_require__(9); - var ReactPropTypeLocationNames = __webpack_require__(25); + var ReactPropTypeLocationNames = __webpack_require__(26); + var ReactPropTypesSecret = __webpack_require__(33); var invariant = __webpack_require__(10); var warning = __webpack_require__(13); + var ReactComponentTreeDevtool; + + if (typeof process !== 'undefined' && process.env && process.env.NODE_ENV === 'test') { + // Temporary hack. + // Inline requires don't work well with Jest: + // https://github.com/facebook/react/issues/7240 + // Remove the inline requires when we don't need them anymore: + // https://github.com/facebook/react/pull/7178 + ReactComponentTreeDevtool = __webpack_require__(31); + } + var loggedTypeFailures = {}; /** @@ -3515,7 +3639,7 @@ // This is intentionally an invariant that gets caught. It's the same // behavior as without this statement except with a better message. !(typeof typeSpecs[typeSpecName] === 'function') ? process.env.NODE_ENV !== 'production' ? invariant(false, '%s: %s type `%s` is invalid; it must be a function, usually from React.PropTypes.', componentName || 'React class', ReactPropTypeLocationNames[location], typeSpecName) : _prodInvariant('84', componentName || 'React class', ReactPropTypeLocationNames[location], typeSpecName) : void 0; - error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location); + error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret); } catch (ex) { error = ex; } @@ -3528,7 +3652,9 @@ var componentStackInfo = ''; if (process.env.NODE_ENV !== 'production') { - var ReactComponentTreeDevtool = __webpack_require__(30); + if (!ReactComponentTreeDevtool) { + ReactComponentTreeDevtool = __webpack_require__(31); + } if (debugID !== null) { componentStackInfo = ReactComponentTreeDevtool.getStackAddendumByID(debugID); } else if (element !== null) { @@ -3546,10 +3672,31 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 32 */ -/***/ function(module, exports, __webpack_require__) { +/* 33 */ +/***/ function(module, exports) { /** + * Copyright 2013-present, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + * + * @providesModule ReactPropTypesSecret + */ + + 'use strict'; + + var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED'; + + module.exports = ReactPropTypesSecret; + +/***/ }, +/* 34 */ +/***/ function(module, exports, __webpack_require__) { + + /* WEBPACK VAR INJECTION */(function(process) {/** * Copyright 2013-present, Facebook, Inc. * All rights reserved. * @@ -3563,10 +3710,12 @@ 'use strict'; var ReactElement = __webpack_require__(11); - var ReactPropTypeLocationNames = __webpack_require__(25); + var ReactPropTypeLocationNames = __webpack_require__(26); + var ReactPropTypesSecret = __webpack_require__(33); var emptyFunction = __webpack_require__(14); var getIteratorFn = __webpack_require__(17); + var warning = __webpack_require__(13); /** * Collection of methods that allow declaration and validation of props that are @@ -3656,9 +3805,21 @@ /*eslint-enable no-self-compare*/ function createChainableTypeChecker(validate) { - function checkType(isRequired, props, propName, componentName, location, propFullName) { + if (process.env.NODE_ENV !== 'production') { + var manualPropTypeCallCache = {}; + } + function checkType(isRequired, props, propName, componentName, location, propFullName, secret) { componentName = componentName || ANONYMOUS; propFullName = propFullName || propName; + if (process.env.NODE_ENV !== 'production') { + if (secret !== ReactPropTypesSecret && typeof console !== 'undefined') { + var cacheKey = componentName + ':' + propName; + if (!manualPropTypeCallCache[cacheKey]) { + process.env.NODE_ENV !== 'production' ? warning(false, 'You are manually calling a React.PropTypes validation ' + 'function for the `%s` prop on `%s`. This is deprecated ' + 'and will not work in the next major version. You may be ' + 'seeing this warning due to a third-party PropTypes library. ' + 'See https://fb.me/react-warning-dont-call-proptypes for details.', propFullName, componentName) : void 0; + manualPropTypeCallCache[cacheKey] = true; + } + } + } if (props[propName] == null) { var locationName = ReactPropTypeLocationNames[location]; if (isRequired) { @@ -3677,7 +3838,7 @@ } function createPrimitiveTypeChecker(expectedType) { - function validate(props, propName, componentName, location, propFullName) { + function validate(props, propName, componentName, location, propFullName, secret) { var propValue = props[propName]; var propType = getPropType(propValue); if (propType !== expectedType) { @@ -3710,7 +3871,7 @@ return new Error('Invalid ' + locationName + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.')); } for (var i = 0; i < propValue.length; i++) { - var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']'); + var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret); if (error instanceof Error) { return error; } @@ -3722,9 +3883,11 @@ function createElementTypeChecker() { function validate(props, propName, componentName, location, propFullName) { - if (!ReactElement.isValidElement(props[propName])) { + var propValue = props[propName]; + if (!ReactElement.isValidElement(propValue)) { var locationName = ReactPropTypeLocationNames[location]; - return new Error('Invalid ' + locationName + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a single ReactElement.')); + var propType = getPropType(propValue); + return new Error('Invalid ' + locationName + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.')); } return null; } @@ -3746,9 +3909,8 @@ function createEnumTypeChecker(expectedValues) { if (!Array.isArray(expectedValues)) { - return createChainableTypeChecker(function () { - return new Error('Invalid argument supplied to oneOf, expected an instance of array.'); - }); + process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOf, expected an instance of array.') : void 0; + return emptyFunction.thatReturnsNull; } function validate(props, propName, componentName, location, propFullName) { @@ -3779,7 +3941,7 @@ } for (var key in propValue) { if (propValue.hasOwnProperty(key)) { - var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key); + var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret); if (error instanceof Error) { return error; } @@ -3792,15 +3954,14 @@ function createUnionTypeChecker(arrayOfTypeCheckers) { if (!Array.isArray(arrayOfTypeCheckers)) { - return createChainableTypeChecker(function () { - return new Error('Invalid argument supplied to oneOfType, expected an instance of array.'); - }); + process.env.NODE_ENV !== 'production' ? warning(false, 'Invalid argument supplied to oneOfType, expected an instance of array.') : void 0; + return emptyFunction.thatReturnsNull; } function validate(props, propName, componentName, location, propFullName) { for (var i = 0; i < arrayOfTypeCheckers.length; i++) { var checker = arrayOfTypeCheckers[i]; - if (checker(props, propName, componentName, location, propFullName) == null) { + if (checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret) == null) { return null; } } @@ -3835,7 +3996,7 @@ if (!checker) { continue; } - var error = checker(propValue, key, componentName, location, propFullName + '.' + key); + var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret); if (error) { return error; } @@ -3952,9 +4113,10 @@ } module.exports = ReactPropTypes; + /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 33 */ +/* 35 */ /***/ function(module, exports) { /** @@ -3970,10 +4132,10 @@ 'use strict'; - module.exports = '15.2.1'; + module.exports = '15.3.0'; /***/ }, -/* 34 */ +/* 36 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -4017,16 +4179,16 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 35 */ +/* 37 */ /***/ function(module, exports, __webpack_require__) { 'use strict'; - module.exports = __webpack_require__(36); + module.exports = __webpack_require__(38); /***/ }, -/* 36 */ +/* 38 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -4044,21 +4206,21 @@ 'use strict'; - var ReactDOMComponentTree = __webpack_require__(37); - var ReactDefaultInjection = __webpack_require__(40); - var ReactMount = __webpack_require__(166); - var ReactReconciler = __webpack_require__(60); - var ReactUpdates = __webpack_require__(57); - var ReactVersion = __webpack_require__(33); + var ReactDOMComponentTree = __webpack_require__(39); + var ReactDefaultInjection = __webpack_require__(42); + var ReactMount = __webpack_require__(169); + var ReactReconciler = __webpack_require__(62); + var ReactUpdates = __webpack_require__(59); + var ReactVersion = __webpack_require__(35); - var findDOMNode = __webpack_require__(171); - var getHostComponentFromComposite = __webpack_require__(172); - var renderSubtreeIntoContainer = __webpack_require__(173); + var findDOMNode = __webpack_require__(174); + var getHostComponentFromComposite = __webpack_require__(175); + var renderSubtreeIntoContainer = __webpack_require__(176); var warning = __webpack_require__(13); ReactDefaultInjection.inject(); - var React = { + var ReactDOM = { findDOMNode: findDOMNode, render: ReactMount.render, unmountComponentAtNode: ReactMount.unmountComponentAtNode, @@ -4094,7 +4256,7 @@ } if (process.env.NODE_ENV !== 'production') { - var ExecutionEnvironment = __webpack_require__(50); + var ExecutionEnvironment = __webpack_require__(52); if (ExecutionEnvironment.canUseDOM && window.top === window.self) { // First check if devtools is not installed @@ -4129,11 +4291,11 @@ } } - module.exports = React; + module.exports = ReactDOM; /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 37 */ +/* 39 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -4151,8 +4313,8 @@ var _prodInvariant = __webpack_require__(9); - var DOMProperty = __webpack_require__(38); - var ReactDOMComponentFlags = __webpack_require__(39); + var DOMProperty = __webpack_require__(40); + var ReactDOMComponentFlags = __webpack_require__(41); var invariant = __webpack_require__(10); @@ -4327,7 +4489,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 38 */ +/* 40 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -4539,7 +4701,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 39 */ +/* 41 */ /***/ function(module, exports) { /** @@ -4562,7 +4724,7 @@ module.exports = ReactDOMComponentFlags; /***/ }, -/* 40 */ +/* 42 */ /***/ function(module, exports, __webpack_require__) { /** @@ -4578,24 +4740,24 @@ 'use strict'; - var BeforeInputEventPlugin = __webpack_require__(41); - var ChangeEventPlugin = __webpack_require__(56); - var DefaultEventPluginOrder = __webpack_require__(73); - var EnterLeaveEventPlugin = __webpack_require__(74); - var HTMLDOMPropertyConfig = __webpack_require__(79); - var ReactComponentBrowserEnvironment = __webpack_require__(80); - var ReactDOMComponent = __webpack_require__(94); - var ReactDOMComponentTree = __webpack_require__(37); - var ReactDOMEmptyComponent = __webpack_require__(137); - var ReactDOMTreeTraversal = __webpack_require__(138); - var ReactDOMTextComponent = __webpack_require__(139); - var ReactDefaultBatchingStrategy = __webpack_require__(140); - var ReactEventListener = __webpack_require__(141); - var ReactInjection = __webpack_require__(144); - var ReactReconcileTransaction = __webpack_require__(145); - var SVGDOMPropertyConfig = __webpack_require__(153); - var SelectEventPlugin = __webpack_require__(154); - var SimpleEventPlugin = __webpack_require__(155); + var BeforeInputEventPlugin = __webpack_require__(43); + var ChangeEventPlugin = __webpack_require__(58); + var DefaultEventPluginOrder = __webpack_require__(76); + var EnterLeaveEventPlugin = __webpack_require__(77); + var HTMLDOMPropertyConfig = __webpack_require__(82); + var ReactComponentBrowserEnvironment = __webpack_require__(83); + var ReactDOMComponent = __webpack_require__(97); + var ReactDOMComponentTree = __webpack_require__(39); + var ReactDOMEmptyComponent = __webpack_require__(140); + var ReactDOMTreeTraversal = __webpack_require__(141); + var ReactDOMTextComponent = __webpack_require__(142); + var ReactDefaultBatchingStrategy = __webpack_require__(143); + var ReactEventListener = __webpack_require__(144); + var ReactInjection = __webpack_require__(147); + var ReactReconcileTransaction = __webpack_require__(148); + var SVGDOMPropertyConfig = __webpack_require__(156); + var SelectEventPlugin = __webpack_require__(157); + var SimpleEventPlugin = __webpack_require__(158); var alreadyInjected = false; @@ -4651,7 +4813,7 @@ }; /***/ }, -/* 41 */ +/* 43 */ /***/ function(module, exports, __webpack_require__) { /** @@ -4667,14 +4829,14 @@ 'use strict'; - var EventConstants = __webpack_require__(42); - var EventPropagators = __webpack_require__(43); - var ExecutionEnvironment = __webpack_require__(50); - var FallbackCompositionState = __webpack_require__(51); - var SyntheticCompositionEvent = __webpack_require__(53); - var SyntheticInputEvent = __webpack_require__(55); + var EventConstants = __webpack_require__(44); + var EventPropagators = __webpack_require__(45); + var ExecutionEnvironment = __webpack_require__(52); + var FallbackCompositionState = __webpack_require__(53); + var SyntheticCompositionEvent = __webpack_require__(55); + var SyntheticInputEvent = __webpack_require__(57); - var keyOf = __webpack_require__(26); + var keyOf = __webpack_require__(27); var END_KEYCODES = [9, 13, 27, 32]; // Tab, Return, Esc, Space var START_KEYCODE = 229; @@ -5044,7 +5206,7 @@ module.exports = BeforeInputEventPlugin; /***/ }, -/* 42 */ +/* 44 */ /***/ function(module, exports, __webpack_require__) { /** @@ -5060,7 +5222,7 @@ 'use strict'; - var keyMirror = __webpack_require__(24); + var keyMirror = __webpack_require__(25); var PropagationPhases = keyMirror({ bubbled: null, captured: null }); @@ -5146,7 +5308,7 @@ module.exports = EventConstants; /***/ }, -/* 43 */ +/* 45 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -5162,12 +5324,12 @@ 'use strict'; - var EventConstants = __webpack_require__(42); - var EventPluginHub = __webpack_require__(44); - var EventPluginUtils = __webpack_require__(46); + var EventConstants = __webpack_require__(44); + var EventPluginHub = __webpack_require__(46); + var EventPluginUtils = __webpack_require__(48); - var accumulateInto = __webpack_require__(48); - var forEachAccumulated = __webpack_require__(49); + var accumulateInto = __webpack_require__(50); + var forEachAccumulated = __webpack_require__(51); var warning = __webpack_require__(13); var PropagationPhases = EventConstants.PropagationPhases; @@ -5289,7 +5451,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 44 */ +/* 46 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -5307,12 +5469,12 @@ var _prodInvariant = __webpack_require__(9); - var EventPluginRegistry = __webpack_require__(45); - var EventPluginUtils = __webpack_require__(46); - var ReactErrorUtils = __webpack_require__(47); + var EventPluginRegistry = __webpack_require__(47); + var EventPluginUtils = __webpack_require__(48); + var ReactErrorUtils = __webpack_require__(49); - var accumulateInto = __webpack_require__(48); - var forEachAccumulated = __webpack_require__(49); + var accumulateInto = __webpack_require__(50); + var forEachAccumulated = __webpack_require__(51); var invariant = __webpack_require__(10); /** @@ -5349,6 +5511,10 @@ return executeDispatchesAndRelease(e, false); }; + var getDictionaryKey = function (inst) { + return '.' + inst._rootNodeID; + }; + /** * This is a unified interface for event plugins to be installed and configured. * @@ -5392,7 +5558,7 @@ }, /** - * Stores `listener` at `listenerBank[registrationName][id]`. Is idempotent. + * Stores `listener` at `listenerBank[registrationName][key]`. Is idempotent. * * @param {object} inst The instance, which is the source of events. * @param {string} registrationName Name of listener (e.g. `onClick`). @@ -5401,8 +5567,9 @@ putListener: function (inst, registrationName, listener) { !(typeof listener === 'function') ? process.env.NODE_ENV !== 'production' ? invariant(false, 'Expected %s listener to be a function, instead got type %s', registrationName, typeof listener) : _prodInvariant('94', registrationName, typeof listener) : void 0; + var key = getDictionaryKey(inst); var bankForRegistrationName = listenerBank[registrationName] || (listenerBank[registrationName] = {}); - bankForRegistrationName[inst._rootNodeID] = listener; + bankForRegistrationName[key] = listener; var PluginModule = EventPluginRegistry.registrationNameModules[registrationName]; if (PluginModule && PluginModule.didPutListener) { @@ -5417,7 +5584,8 @@ */ getListener: function (inst, registrationName) { var bankForRegistrationName = listenerBank[registrationName]; - return bankForRegistrationName && bankForRegistrationName[inst._rootNodeID]; + var key = getDictionaryKey(inst); + return bankForRegistrationName && bankForRegistrationName[key]; }, /** @@ -5435,7 +5603,8 @@ var bankForRegistrationName = listenerBank[registrationName]; // TODO: This should never be null -- when is it? if (bankForRegistrationName) { - delete bankForRegistrationName[inst._rootNodeID]; + var key = getDictionaryKey(inst); + delete bankForRegistrationName[key]; } }, @@ -5445,12 +5614,13 @@ * @param {object} inst The instance, which is the source of events. */ deleteAllListeners: function (inst) { + var key = getDictionaryKey(inst); for (var registrationName in listenerBank) { if (!listenerBank.hasOwnProperty(registrationName)) { continue; } - if (!listenerBank[registrationName][inst._rootNodeID]) { + if (!listenerBank[registrationName][key]) { continue; } @@ -5459,7 +5629,7 @@ PluginModule.willDeleteListener(inst, registrationName); } - delete listenerBank[registrationName][inst._rootNodeID]; + delete listenerBank[registrationName][key]; } }, @@ -5536,7 +5706,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 45 */ +/* 47 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -5789,7 +5959,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 46 */ +/* 48 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -5807,8 +5977,8 @@ var _prodInvariant = __webpack_require__(9); - var EventConstants = __webpack_require__(42); - var ReactErrorUtils = __webpack_require__(47); + var EventConstants = __webpack_require__(44); + var ReactErrorUtils = __webpack_require__(49); var invariant = __webpack_require__(10); var warning = __webpack_require__(13); @@ -6024,7 +6194,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 47 */ +/* 49 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -6106,7 +6276,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 48 */ +/* 50 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -6170,7 +6340,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 49 */ +/* 51 */ /***/ function(module, exports) { /** @@ -6206,7 +6376,7 @@ module.exports = forEachAccumulated; /***/ }, -/* 50 */ +/* 52 */ /***/ function(module, exports) { /** @@ -6246,7 +6416,7 @@ module.exports = ExecutionEnvironment; /***/ }, -/* 51 */ +/* 53 */ /***/ function(module, exports, __webpack_require__) { /** @@ -6266,7 +6436,7 @@ var PooledClass = __webpack_require__(8); - var getTextContentAccessor = __webpack_require__(52); + var getTextContentAccessor = __webpack_require__(54); /** * This helper class stores information about text content of a target node, @@ -6346,7 +6516,7 @@ module.exports = FallbackCompositionState; /***/ }, -/* 52 */ +/* 54 */ /***/ function(module, exports, __webpack_require__) { /** @@ -6362,7 +6532,7 @@ 'use strict'; - var ExecutionEnvironment = __webpack_require__(50); + var ExecutionEnvironment = __webpack_require__(52); var contentKey = null; @@ -6384,7 +6554,7 @@ module.exports = getTextContentAccessor; /***/ }, -/* 53 */ +/* 55 */ /***/ function(module, exports, __webpack_require__) { /** @@ -6400,7 +6570,7 @@ 'use strict'; - var SyntheticEvent = __webpack_require__(54); + var SyntheticEvent = __webpack_require__(56); /** * @interface Event @@ -6425,7 +6595,7 @@ module.exports = SyntheticCompositionEvent; /***/ }, -/* 54 */ +/* 56 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -6691,7 +6861,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 55 */ +/* 57 */ /***/ function(module, exports, __webpack_require__) { /** @@ -6707,7 +6877,7 @@ 'use strict'; - var SyntheticEvent = __webpack_require__(54); + var SyntheticEvent = __webpack_require__(56); /** * @interface Event @@ -6733,7 +6903,7 @@ module.exports = SyntheticInputEvent; /***/ }, -/* 56 */ +/* 58 */ /***/ function(module, exports, __webpack_require__) { /** @@ -6749,18 +6919,18 @@ 'use strict'; - var EventConstants = __webpack_require__(42); - var EventPluginHub = __webpack_require__(44); - var EventPropagators = __webpack_require__(43); - var ExecutionEnvironment = __webpack_require__(50); - var ReactDOMComponentTree = __webpack_require__(37); - var ReactUpdates = __webpack_require__(57); - var SyntheticEvent = __webpack_require__(54); + var EventConstants = __webpack_require__(44); + var EventPluginHub = __webpack_require__(46); + var EventPropagators = __webpack_require__(45); + var ExecutionEnvironment = __webpack_require__(52); + var ReactDOMComponentTree = __webpack_require__(39); + var ReactUpdates = __webpack_require__(59); + var SyntheticEvent = __webpack_require__(56); - var getEventTarget = __webpack_require__(70); - var isEventSupported = __webpack_require__(71); - var isTextInputElement = __webpack_require__(72); - var keyOf = __webpack_require__(26); + var getEventTarget = __webpack_require__(73); + var isEventSupported = __webpack_require__(74); + var isTextInputElement = __webpack_require__(75); + var keyOf = __webpack_require__(27); var topLevelTypes = EventConstants.topLevelTypes; @@ -7063,7 +7233,7 @@ module.exports = ChangeEventPlugin; /***/ }, -/* 57 */ +/* 59 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -7082,11 +7252,11 @@ var _prodInvariant = __webpack_require__(9), _assign = __webpack_require__(6); - var CallbackQueue = __webpack_require__(58); + var CallbackQueue = __webpack_require__(60); var PooledClass = __webpack_require__(8); - var ReactFeatureFlags = __webpack_require__(59); - var ReactReconciler = __webpack_require__(60); - var Transaction = __webpack_require__(69); + var ReactFeatureFlags = __webpack_require__(61); + var ReactReconciler = __webpack_require__(62); + var Transaction = __webpack_require__(72); var invariant = __webpack_require__(10); @@ -7320,7 +7490,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 58 */ +/* 60 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -7432,7 +7602,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 59 */ +/* 61 */ /***/ function(module, exports) { /** @@ -7459,7 +7629,7 @@ module.exports = ReactFeatureFlags; /***/ }, -/* 60 */ +/* 62 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -7475,12 +7645,10 @@ 'use strict'; - var _prodInvariant = __webpack_require__(9); + var ReactRef = __webpack_require__(63); + var ReactInstrumentation = __webpack_require__(65); - var ReactRef = __webpack_require__(61); - var ReactInstrumentation = __webpack_require__(63); - - var invariant = __webpack_require__(10); + var warning = __webpack_require__(13); /** * Helper to call ReactRef.attachRefs with this composite component, split out @@ -7617,7 +7785,7 @@ if (internalInstance._updateBatchNumber !== updateBatchNumber) { // The component's enqueued batch number should always be the current // batch or the following one. - !(internalInstance._updateBatchNumber == null || internalInstance._updateBatchNumber === updateBatchNumber + 1) ? process.env.NODE_ENV !== 'production' ? invariant(false, 'performUpdateIfNecessary: Unexpected batch number (current %s, pending %s)', updateBatchNumber, internalInstance._updateBatchNumber) : _prodInvariant('121', updateBatchNumber, internalInstance._updateBatchNumber) : void 0; + process.env.NODE_ENV !== 'production' ? warning(internalInstance._updateBatchNumber == null || internalInstance._updateBatchNumber === updateBatchNumber + 1, 'performUpdateIfNecessary: Unexpected batch number (current %s, ' + 'pending %s)', updateBatchNumber, internalInstance._updateBatchNumber) : void 0; return; } if (process.env.NODE_ENV !== 'production') { @@ -7641,7 +7809,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 61 */ +/* 63 */ /***/ function(module, exports, __webpack_require__) { /** @@ -7657,7 +7825,7 @@ 'use strict'; - var ReactOwner = __webpack_require__(62); + var ReactOwner = __webpack_require__(64); var ReactRef = {}; @@ -7707,7 +7875,9 @@ return( // This has a few false positives w/r/t empty components. - prevEmpty || nextEmpty || nextElement._owner !== prevElement._owner || nextElement.ref !== prevElement.ref + prevEmpty || nextEmpty || nextElement.ref !== prevElement.ref || + // If owner changes but we have an unchanged function ref, don't update refs + typeof nextElement.ref === 'string' && nextElement._owner !== prevElement._owner ); }; @@ -7724,7 +7894,7 @@ module.exports = ReactRef; /***/ }, -/* 62 */ +/* 64 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -7824,7 +7994,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 63 */ +/* 65 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -7843,7 +8013,7 @@ var debugTool = null; if (process.env.NODE_ENV !== 'production') { - var ReactDebugTool = __webpack_require__(64); + var ReactDebugTool = __webpack_require__(66); debugTool = ReactDebugTool; } @@ -7851,7 +8021,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 64 */ +/* 66 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -7867,12 +8037,13 @@ 'use strict'; - var ReactInvalidSetStateWarningDevTool = __webpack_require__(65); - var ReactHostOperationHistoryDevtool = __webpack_require__(66); - var ReactComponentTreeDevtool = __webpack_require__(30); - var ExecutionEnvironment = __webpack_require__(50); + var ReactInvalidSetStateWarningDevTool = __webpack_require__(67); + var ReactHostOperationHistoryDevtool = __webpack_require__(68); + var ReactComponentTreeDevtool = __webpack_require__(31); + var ReactChildrenMutationWarningDevtool = __webpack_require__(69); + var ExecutionEnvironment = __webpack_require__(52); - var performanceNow = __webpack_require__(67); + var performanceNow = __webpack_require__(70); var warning = __webpack_require__(13); var eventHandlers = []; @@ -7902,6 +8073,8 @@ var currentTimerNestedFlushDuration = null; var currentTimerType = null; + var lifeCycleTimerHasWarned = false; + function clearHistory() { ReactComponentTreeDevtool.purgeUnmountedComponents(); ReactHostOperationHistoryDevtool.clearHistory(); @@ -7959,7 +8132,10 @@ if (currentFlushNesting === 0) { return; } - process.env.NODE_ENV !== 'production' ? warning(!currentTimerType, 'There is an internal error in the React performance measurement code. ' + 'Did not expect %s timer to start while %s timer is still in ' + 'progress for %s instance.', timerType, currentTimerType || 'no', debugID === currentTimerDebugID ? 'the same' : 'another') : void 0; + if (currentTimerType && !lifeCycleTimerHasWarned) { + process.env.NODE_ENV !== 'production' ? warning(false, 'There is an internal error in the React performance measurement code. ' + 'Did not expect %s timer to start while %s timer is still in ' + 'progress for %s instance.', timerType, currentTimerType || 'no', debugID === currentTimerDebugID ? 'the same' : 'another') : void 0; + lifeCycleTimerHasWarned = true; + } currentTimerStartTime = performanceNow(); currentTimerNestedFlushDuration = 0; currentTimerDebugID = debugID; @@ -7970,7 +8146,10 @@ if (currentFlushNesting === 0) { return; } - process.env.NODE_ENV !== 'production' ? warning(currentTimerType === timerType, 'There is an internal error in the React performance measurement code. ' + 'We did not expect %s timer to stop while %s timer is still in ' + 'progress for %s instance. Please report this as a bug in React.', timerType, currentTimerType || 'no', debugID === currentTimerDebugID ? 'the same' : 'another') : void 0; + if (currentTimerType !== timerType && !lifeCycleTimerHasWarned) { + process.env.NODE_ENV !== 'production' ? warning(false, 'There is an internal error in the React performance measurement code. ' + 'We did not expect %s timer to stop while %s timer is still in ' + 'progress for %s instance. Please report this as a bug in React.', timerType, currentTimerType || 'no', debugID === currentTimerDebugID ? 'the same' : 'another') : void 0; + lifeCycleTimerHasWarned = true; + } if (isProfiling) { currentFlushMeasurements.push({ timerType: timerType, @@ -8096,6 +8275,14 @@ checkDebugID(debugID); emitEvent('onHostOperation', debugID, type, payload); }, + onComponentHasMounted: function (debugID) { + checkDebugID(debugID); + emitEvent('onComponentHasMounted', debugID); + }, + onComponentHasUpdated: function (debugID) { + checkDebugID(debugID); + emitEvent('onComponentHasUpdated', debugID); + }, onSetState: function () { emitEvent('onSetState'); }, @@ -8151,6 +8338,7 @@ ReactDebugTool.addDevtool(ReactInvalidSetStateWarningDevTool); ReactDebugTool.addDevtool(ReactComponentTreeDevtool); + ReactDebugTool.addDevtool(ReactChildrenMutationWarningDevtool); var url = ExecutionEnvironment.canUseDOM && window.location.href || ''; if (/[?&]react_perf\b/.test(url)) { ReactDebugTool.beginProfiling(); @@ -8160,7 +8348,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 65 */ +/* 67 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -8202,7 +8390,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 66 */ +/* 68 */ /***/ function(module, exports) { /** @@ -8244,7 +8432,75 @@ module.exports = ReactHostOperationHistoryDevtool; /***/ }, -/* 67 */ +/* 69 */ +/***/ function(module, exports, __webpack_require__) { + + /* WEBPACK VAR INJECTION */(function(process) {/** + * Copyright 2013-present, Facebook, Inc. + * All rights reserved. + * + * This source code is licensed under the BSD-style license found in the + * LICENSE file in the root directory of this source tree. An additional grant + * of patent rights can be found in the PATENTS file in the same directory. + * + * @providesModule ReactChildrenMutationWarningDevtool + */ + + 'use strict'; + + var ReactComponentTreeDevtool = __webpack_require__(31); + + var warning = __webpack_require__(13); + + var elements = {}; + + function handleElement(debugID, element) { + if (element == null) { + return; + } + if (element._shadowChildren === undefined) { + return; + } + if (element._shadowChildren === element.props.children) { + return; + } + var isMutated = false; + if (Array.isArray(element._shadowChildren)) { + if (element._shadowChildren.length === element.props.children.length) { + for (var i = 0; i < element._shadowChildren.length; i++) { + if (element._shadowChildren[i] !== element.props.children[i]) { + isMutated = true; + } + } + } else { + isMutated = true; + } + } + process.env.NODE_ENV !== 'production' ? warning(Array.isArray(element._shadowChildren) && !isMutated, 'Component\'s children should not be mutated.%s', ReactComponentTreeDevtool.getStackAddendumByID(debugID)) : void 0; + } + + var ReactDOMUnknownPropertyDevtool = { + onBeforeMountComponent: function (debugID, element) { + elements[debugID] = element; + }, + onBeforeUpdateComponent: function (debugID, element) { + elements[debugID] = element; + }, + onComponentHasMounted: function (debugID) { + handleElement(debugID, elements[debugID]); + delete elements[debugID]; + }, + onComponentHasUpdated: function (debugID) { + handleElement(debugID, elements[debugID]); + delete elements[debugID]; + } + }; + + module.exports = ReactDOMUnknownPropertyDevtool; + /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) + +/***/ }, +/* 70 */ /***/ function(module, exports, __webpack_require__) { 'use strict'; @@ -8260,7 +8516,7 @@ * @typechecks */ - var performance = __webpack_require__(68); + var performance = __webpack_require__(71); var performanceNow; @@ -8282,7 +8538,7 @@ module.exports = performanceNow; /***/ }, -/* 68 */ +/* 71 */ /***/ function(module, exports, __webpack_require__) { /** @@ -8298,7 +8554,7 @@ 'use strict'; - var ExecutionEnvironment = __webpack_require__(50); + var ExecutionEnvironment = __webpack_require__(52); var performance; @@ -8309,7 +8565,7 @@ module.exports = performance || {}; /***/ }, -/* 69 */ +/* 72 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -8548,7 +8804,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 70 */ +/* 73 */ /***/ function(module, exports) { /** @@ -8588,7 +8844,7 @@ module.exports = getEventTarget; /***/ }, -/* 71 */ +/* 74 */ /***/ function(module, exports, __webpack_require__) { /** @@ -8604,7 +8860,7 @@ 'use strict'; - var ExecutionEnvironment = __webpack_require__(50); + var ExecutionEnvironment = __webpack_require__(52); var useHasFeature; if (ExecutionEnvironment.canUseDOM) { @@ -8653,7 +8909,7 @@ module.exports = isEventSupported; /***/ }, -/* 72 */ +/* 75 */ /***/ function(module, exports) { /** @@ -8709,7 +8965,7 @@ module.exports = isTextInputElement; /***/ }, -/* 73 */ +/* 76 */ /***/ function(module, exports, __webpack_require__) { /** @@ -8725,7 +8981,7 @@ 'use strict'; - var keyOf = __webpack_require__(26); + var keyOf = __webpack_require__(27); /** * Module that is injectable into `EventPluginHub`, that specifies a @@ -8741,7 +8997,7 @@ module.exports = DefaultEventPluginOrder; /***/ }, -/* 74 */ +/* 77 */ /***/ function(module, exports, __webpack_require__) { /** @@ -8757,12 +9013,12 @@ 'use strict'; - var EventConstants = __webpack_require__(42); - var EventPropagators = __webpack_require__(43); - var ReactDOMComponentTree = __webpack_require__(37); - var SyntheticMouseEvent = __webpack_require__(75); + var EventConstants = __webpack_require__(44); + var EventPropagators = __webpack_require__(45); + var ReactDOMComponentTree = __webpack_require__(39); + var SyntheticMouseEvent = __webpack_require__(78); - var keyOf = __webpack_require__(26); + var keyOf = __webpack_require__(27); var topLevelTypes = EventConstants.topLevelTypes; @@ -8851,7 +9107,7 @@ module.exports = EnterLeaveEventPlugin; /***/ }, -/* 75 */ +/* 78 */ /***/ function(module, exports, __webpack_require__) { /** @@ -8867,10 +9123,10 @@ 'use strict'; - var SyntheticUIEvent = __webpack_require__(76); - var ViewportMetrics = __webpack_require__(77); + var SyntheticUIEvent = __webpack_require__(79); + var ViewportMetrics = __webpack_require__(80); - var getEventModifierState = __webpack_require__(78); + var getEventModifierState = __webpack_require__(81); /** * @interface MouseEvent @@ -8928,7 +9184,7 @@ module.exports = SyntheticMouseEvent; /***/ }, -/* 76 */ +/* 79 */ /***/ function(module, exports, __webpack_require__) { /** @@ -8944,9 +9200,9 @@ 'use strict'; - var SyntheticEvent = __webpack_require__(54); + var SyntheticEvent = __webpack_require__(56); - var getEventTarget = __webpack_require__(70); + var getEventTarget = __webpack_require__(73); /** * @interface UIEvent @@ -8992,7 +9248,7 @@ module.exports = SyntheticUIEvent; /***/ }, -/* 77 */ +/* 80 */ /***/ function(module, exports) { /** @@ -9024,7 +9280,7 @@ module.exports = ViewportMetrics; /***/ }, -/* 78 */ +/* 81 */ /***/ function(module, exports) { /** @@ -9072,7 +9328,7 @@ module.exports = getEventModifierState; /***/ }, -/* 79 */ +/* 82 */ /***/ function(module, exports, __webpack_require__) { /** @@ -9088,7 +9344,7 @@ 'use strict'; - var DOMProperty = __webpack_require__(38); + var DOMProperty = __webpack_require__(40); var MUST_USE_PROPERTY = DOMProperty.injection.MUST_USE_PROPERTY; var HAS_BOOLEAN_VALUE = DOMProperty.injection.HAS_BOOLEAN_VALUE; @@ -9194,6 +9450,7 @@ profile: 0, radioGroup: 0, readOnly: HAS_BOOLEAN_VALUE, + referrerPolicy: 0, rel: 0, required: HAS_BOOLEAN_VALUE, reversed: HAS_BOOLEAN_VALUE, @@ -9285,7 +9542,7 @@ module.exports = HTMLDOMPropertyConfig; /***/ }, -/* 80 */ +/* 83 */ /***/ function(module, exports, __webpack_require__) { /** @@ -9301,8 +9558,8 @@ 'use strict'; - var DOMChildrenOperations = __webpack_require__(81); - var ReactDOMIDOperations = __webpack_require__(93); + var DOMChildrenOperations = __webpack_require__(84); + var ReactDOMIDOperations = __webpack_require__(96); /** * Abstracts away all functionality of the reconciler that requires knowledge of @@ -9329,7 +9586,7 @@ module.exports = ReactComponentBrowserEnvironment; /***/ }, -/* 81 */ +/* 84 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -9345,15 +9602,15 @@ 'use strict'; - var DOMLazyTree = __webpack_require__(82); - var Danger = __webpack_require__(88); - var ReactMultiChildUpdateTypes = __webpack_require__(92); - var ReactDOMComponentTree = __webpack_require__(37); - var ReactInstrumentation = __webpack_require__(63); + var DOMLazyTree = __webpack_require__(85); + var Danger = __webpack_require__(91); + var ReactMultiChildUpdateTypes = __webpack_require__(95); + var ReactDOMComponentTree = __webpack_require__(39); + var ReactInstrumentation = __webpack_require__(65); - var createMicrosoftUnsafeLocalFunction = __webpack_require__(85); - var setInnerHTML = __webpack_require__(84); - var setTextContent = __webpack_require__(86); + var createMicrosoftUnsafeLocalFunction = __webpack_require__(88); + var setInnerHTML = __webpack_require__(87); + var setTextContent = __webpack_require__(89); function getNodeAfter(parentNode, node) { // Special case for text components, which return [open, close] comments @@ -9529,7 +9786,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 82 */ +/* 85 */ /***/ function(module, exports, __webpack_require__) { /** @@ -9545,11 +9802,11 @@ 'use strict'; - var DOMNamespaces = __webpack_require__(83); - var setInnerHTML = __webpack_require__(84); + var DOMNamespaces = __webpack_require__(86); + var setInnerHTML = __webpack_require__(87); - var createMicrosoftUnsafeLocalFunction = __webpack_require__(85); - var setTextContent = __webpack_require__(86); + var createMicrosoftUnsafeLocalFunction = __webpack_require__(88); + var setTextContent = __webpack_require__(89); var ELEMENT_NODE_TYPE = 1; var DOCUMENT_FRAGMENT_NODE_TYPE = 11; @@ -9652,7 +9909,7 @@ module.exports = DOMLazyTree; /***/ }, -/* 83 */ +/* 86 */ /***/ function(module, exports) { /** @@ -9677,7 +9934,7 @@ module.exports = DOMNamespaces; /***/ }, -/* 84 */ +/* 87 */ /***/ function(module, exports, __webpack_require__) { /** @@ -9693,13 +9950,13 @@ 'use strict'; - var ExecutionEnvironment = __webpack_require__(50); - var DOMNamespaces = __webpack_require__(83); + var ExecutionEnvironment = __webpack_require__(52); + var DOMNamespaces = __webpack_require__(86); var WHITESPACE_TEST = /^[ \r\n\t\f]/; var NONVISIBLE_TEST = /<(!--|link|noscript|meta|script|style)[ \r\n\t\f\/>]/; - var createMicrosoftUnsafeLocalFunction = __webpack_require__(85); + var createMicrosoftUnsafeLocalFunction = __webpack_require__(88); // SVG temp container for IE lacking innerHTML var reusableSVGContainer; @@ -9780,7 +10037,7 @@ module.exports = setInnerHTML; /***/ }, -/* 85 */ +/* 88 */ /***/ function(module, exports) { /** @@ -9817,7 +10074,7 @@ module.exports = createMicrosoftUnsafeLocalFunction; /***/ }, -/* 86 */ +/* 89 */ /***/ function(module, exports, __webpack_require__) { /** @@ -9833,9 +10090,9 @@ 'use strict'; - var ExecutionEnvironment = __webpack_require__(50); - var escapeTextContentForBrowser = __webpack_require__(87); - var setInnerHTML = __webpack_require__(84); + var ExecutionEnvironment = __webpack_require__(52); + var escapeTextContentForBrowser = __webpack_require__(90); + var setInnerHTML = __webpack_require__(87); /** * Set the textContent property of a node, ensuring that whitespace is preserved @@ -9870,7 +10127,7 @@ module.exports = setTextContent; /***/ }, -/* 87 */ +/* 90 */ /***/ function(module, exports) { /** @@ -9997,7 +10254,7 @@ module.exports = escapeTextContentForBrowser; /***/ }, -/* 88 */ +/* 91 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -10015,10 +10272,10 @@ var _prodInvariant = __webpack_require__(9); - var DOMLazyTree = __webpack_require__(82); - var ExecutionEnvironment = __webpack_require__(50); + var DOMLazyTree = __webpack_require__(85); + var ExecutionEnvironment = __webpack_require__(52); - var createNodesFromMarkup = __webpack_require__(89); + var createNodesFromMarkup = __webpack_require__(92); var emptyFunction = __webpack_require__(14); var invariant = __webpack_require__(10); @@ -10051,7 +10308,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 89 */ +/* 92 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {'use strict'; @@ -10069,10 +10326,10 @@ /*eslint-disable fb-www/unsafe-html*/ - var ExecutionEnvironment = __webpack_require__(50); + var ExecutionEnvironment = __webpack_require__(52); - var createArrayFromMixed = __webpack_require__(90); - var getMarkupWrap = __webpack_require__(91); + var createArrayFromMixed = __webpack_require__(93); + var getMarkupWrap = __webpack_require__(94); var invariant = __webpack_require__(10); /** @@ -10140,7 +10397,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 90 */ +/* 93 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {'use strict'; @@ -10272,7 +10529,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 91 */ +/* 94 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {'use strict'; @@ -10289,7 +10546,7 @@ /*eslint-disable fb-www/unsafe-html */ - var ExecutionEnvironment = __webpack_require__(50); + var ExecutionEnvironment = __webpack_require__(52); var invariant = __webpack_require__(10); @@ -10372,7 +10629,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 92 */ +/* 95 */ /***/ function(module, exports, __webpack_require__) { /** @@ -10388,7 +10645,7 @@ 'use strict'; - var keyMirror = __webpack_require__(24); + var keyMirror = __webpack_require__(25); /** * When a component's children are updated, a series of update configuration @@ -10409,7 +10666,7 @@ module.exports = ReactMultiChildUpdateTypes; /***/ }, -/* 93 */ +/* 96 */ /***/ function(module, exports, __webpack_require__) { /** @@ -10425,8 +10682,8 @@ 'use strict'; - var DOMChildrenOperations = __webpack_require__(81); - var ReactDOMComponentTree = __webpack_require__(37); + var DOMChildrenOperations = __webpack_require__(84); + var ReactDOMComponentTree = __webpack_require__(39); /** * Operations used to process updates to DOM nodes. @@ -10448,7 +10705,7 @@ module.exports = ReactDOMIDOperations; /***/ }, -/* 94 */ +/* 97 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -10469,35 +10726,35 @@ var _prodInvariant = __webpack_require__(9), _assign = __webpack_require__(6); - var AutoFocusUtils = __webpack_require__(95); - var CSSPropertyOperations = __webpack_require__(97); - var DOMLazyTree = __webpack_require__(82); - var DOMNamespaces = __webpack_require__(83); - var DOMProperty = __webpack_require__(38); - var DOMPropertyOperations = __webpack_require__(105); - var EventConstants = __webpack_require__(42); - var EventPluginHub = __webpack_require__(44); - var EventPluginRegistry = __webpack_require__(45); - var ReactBrowserEventEmitter = __webpack_require__(111); - var ReactComponentBrowserEnvironment = __webpack_require__(80); - var ReactDOMButton = __webpack_require__(114); - var ReactDOMComponentFlags = __webpack_require__(39); - var ReactDOMComponentTree = __webpack_require__(37); - var ReactDOMInput = __webpack_require__(116); - var ReactDOMOption = __webpack_require__(118); - var ReactDOMSelect = __webpack_require__(119); - var ReactDOMTextarea = __webpack_require__(120); - var ReactInstrumentation = __webpack_require__(63); - var ReactMultiChild = __webpack_require__(121); - var ReactServerRenderingTransaction = __webpack_require__(132); + var AutoFocusUtils = __webpack_require__(98); + var CSSPropertyOperations = __webpack_require__(100); + var DOMLazyTree = __webpack_require__(85); + var DOMNamespaces = __webpack_require__(86); + var DOMProperty = __webpack_require__(40); + var DOMPropertyOperations = __webpack_require__(108); + var EventConstants = __webpack_require__(44); + var EventPluginHub = __webpack_require__(46); + var EventPluginRegistry = __webpack_require__(47); + var ReactBrowserEventEmitter = __webpack_require__(114); + var ReactComponentBrowserEnvironment = __webpack_require__(83); + var ReactDOMButton = __webpack_require__(117); + var ReactDOMComponentFlags = __webpack_require__(41); + var ReactDOMComponentTree = __webpack_require__(39); + var ReactDOMInput = __webpack_require__(119); + var ReactDOMOption = __webpack_require__(121); + var ReactDOMSelect = __webpack_require__(122); + var ReactDOMTextarea = __webpack_require__(123); + var ReactInstrumentation = __webpack_require__(65); + var ReactMultiChild = __webpack_require__(124); + var ReactServerRenderingTransaction = __webpack_require__(136); var emptyFunction = __webpack_require__(14); - var escapeTextContentForBrowser = __webpack_require__(87); + var escapeTextContentForBrowser = __webpack_require__(90); var invariant = __webpack_require__(10); - var isEventSupported = __webpack_require__(71); - var keyOf = __webpack_require__(26); - var shallowEqual = __webpack_require__(135); - var validateDOMNesting = __webpack_require__(136); + var isEventSupported = __webpack_require__(74); + var keyOf = __webpack_require__(27); + var shallowEqual = __webpack_require__(131); + var validateDOMNesting = __webpack_require__(139); var warning = __webpack_require__(13); var Flags = ReactDOMComponentFlags; @@ -10864,6 +11121,8 @@ * @return {string} The computed markup. */ mountComponent: function (transaction, hostParent, hostContainerInfo, context) { + var _this = this; + this._rootNodeID = globalIdCounter++; this._domID = hostContainerInfo._idCounter++; this._hostParent = hostParent; @@ -11019,6 +11278,15 @@ break; } + if (process.env.NODE_ENV !== 'production') { + if (this._debugID) { + var callback = function () { + return ReactInstrumentation.debugTool.onComponentHasMounted(_this._debugID); + }; + transaction.getReactMountReady().enqueue(callback, this); + } + } + return mountImage; }, @@ -11187,6 +11455,8 @@ * @overridable */ updateComponent: function (transaction, prevElement, nextElement, context) { + var _this2 = this; + var lastProps = prevElement.props; var nextProps = this._currentElement.props; @@ -11224,6 +11494,15 @@ // reconciliation transaction.getReactMountReady().enqueue(postUpdateSelectWrapper, this); } + + if (process.env.NODE_ENV !== 'production') { + if (this._debugID) { + var callback = function () { + return ReactInstrumentation.debugTool.onComponentHasUpdated(_this2._debugID); + }; + transaction.getReactMountReady().enqueue(callback, this); + } + } }, /** @@ -11457,7 +11736,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 95 */ +/* 98 */ /***/ function(module, exports, __webpack_require__) { /** @@ -11473,9 +11752,9 @@ 'use strict'; - var ReactDOMComponentTree = __webpack_require__(37); + var ReactDOMComponentTree = __webpack_require__(39); - var focusNode = __webpack_require__(96); + var focusNode = __webpack_require__(99); var AutoFocusUtils = { focusDOMComponent: function () { @@ -11486,7 +11765,7 @@ module.exports = AutoFocusUtils; /***/ }, -/* 96 */ +/* 99 */ /***/ function(module, exports) { /** @@ -11517,7 +11796,7 @@ module.exports = focusNode; /***/ }, -/* 97 */ +/* 100 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -11533,14 +11812,14 @@ 'use strict'; - var CSSProperty = __webpack_require__(98); - var ExecutionEnvironment = __webpack_require__(50); - var ReactInstrumentation = __webpack_require__(63); + var CSSProperty = __webpack_require__(101); + var ExecutionEnvironment = __webpack_require__(52); + var ReactInstrumentation = __webpack_require__(65); - var camelizeStyleName = __webpack_require__(99); - var dangerousStyleValue = __webpack_require__(101); - var hyphenateStyleName = __webpack_require__(102); - var memoizeStringOnly = __webpack_require__(104); + var camelizeStyleName = __webpack_require__(102); + var dangerousStyleValue = __webpack_require__(104); + var hyphenateStyleName = __webpack_require__(105); + var memoizeStringOnly = __webpack_require__(107); var warning = __webpack_require__(13); var processStyleName = memoizeStringOnly(function (styleName) { @@ -11728,7 +12007,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 98 */ +/* 101 */ /***/ function(module, exports) { /** @@ -11881,7 +12160,7 @@ module.exports = CSSProperty; /***/ }, -/* 99 */ +/* 102 */ /***/ function(module, exports, __webpack_require__) { /** @@ -11897,7 +12176,7 @@ 'use strict'; - var camelize = __webpack_require__(100); + var camelize = __webpack_require__(103); var msPattern = /^-ms-/; @@ -11925,7 +12204,7 @@ module.exports = camelizeStyleName; /***/ }, -/* 100 */ +/* 103 */ /***/ function(module, exports) { "use strict"; @@ -11961,7 +12240,7 @@ module.exports = camelize; /***/ }, -/* 101 */ +/* 104 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -11977,7 +12256,7 @@ 'use strict'; - var CSSProperty = __webpack_require__(98); + var CSSProperty = __webpack_require__(101); var warning = __webpack_require__(13); var isUnitlessNumber = CSSProperty.isUnitlessNumber; @@ -12046,7 +12325,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 102 */ +/* 105 */ /***/ function(module, exports, __webpack_require__) { /** @@ -12062,7 +12341,7 @@ 'use strict'; - var hyphenate = __webpack_require__(103); + var hyphenate = __webpack_require__(106); var msPattern = /^ms-/; @@ -12089,7 +12368,7 @@ module.exports = hyphenateStyleName; /***/ }, -/* 103 */ +/* 106 */ /***/ function(module, exports) { 'use strict'; @@ -12126,7 +12405,7 @@ module.exports = hyphenate; /***/ }, -/* 104 */ +/* 107 */ /***/ function(module, exports) { /** @@ -12160,7 +12439,7 @@ module.exports = memoizeStringOnly; /***/ }, -/* 105 */ +/* 108 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -12176,12 +12455,12 @@ 'use strict'; - var DOMProperty = __webpack_require__(38); - var ReactDOMComponentTree = __webpack_require__(37); - var ReactDOMInstrumentation = __webpack_require__(106); - var ReactInstrumentation = __webpack_require__(63); + var DOMProperty = __webpack_require__(40); + var ReactDOMComponentTree = __webpack_require__(39); + var ReactDOMInstrumentation = __webpack_require__(109); + var ReactInstrumentation = __webpack_require__(65); - var quoteAttributeValueForBrowser = __webpack_require__(110); + var quoteAttributeValueForBrowser = __webpack_require__(113); var warning = __webpack_require__(13); var VALID_ATTRIBUTE_NAME_REGEX = new RegExp('^[' + DOMProperty.ATTRIBUTE_NAME_START_CHAR + '][' + DOMProperty.ATTRIBUTE_NAME_CHAR + ']*$'); @@ -12394,7 +12673,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 106 */ +/* 109 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -12413,7 +12692,7 @@ var debugTool = null; if (process.env.NODE_ENV !== 'production') { - var ReactDOMDebugTool = __webpack_require__(107); + var ReactDOMDebugTool = __webpack_require__(110); debugTool = ReactDOMDebugTool; } @@ -12421,7 +12700,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 107 */ +/* 110 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -12437,9 +12716,9 @@ 'use strict'; - var ReactDOMNullInputValuePropDevtool = __webpack_require__(108); - var ReactDOMUnknownPropertyDevtool = __webpack_require__(109); - var ReactDebugTool = __webpack_require__(64); + var ReactDOMNullInputValuePropDevtool = __webpack_require__(111); + var ReactDOMUnknownPropertyDevtool = __webpack_require__(112); + var ReactDebugTool = __webpack_require__(66); var warning = __webpack_require__(13); @@ -12494,7 +12773,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 108 */ +/* 111 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -12510,7 +12789,7 @@ 'use strict'; - var ReactComponentTreeDevtool = __webpack_require__(30); + var ReactComponentTreeDevtool = __webpack_require__(31); var warning = __webpack_require__(13); @@ -12543,7 +12822,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 109 */ +/* 112 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/** @@ -12559,9 +12838,9 @@ 'use strict'; - var DOMProperty = __webpack_require__(38); - var EventPluginRegistry = __webpack_require__(45); - var ReactComponentTreeDevtool = __webpack_require__(30); + var DOMProperty = __webpack_require__(40); + var EventPluginRegistry = __webpack_require__(47); + var ReactComponentTreeDevtool = __webpack_require__(31); var warning = __webpack_require__(13); @@ -12661,7 +12940,7 @@ /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5))) /***/ }, -/* 110 */ +/* 113 */ /***/ function(module, exports, __webpack_require__) { /** @@ -12677,7 +12956,7 @@ 'use strict'; - var escapeTextContentForBrowser = __webpack_require__(87); + var escapeTextContentForBrowser = __webpack_require__(90); /** * Escapes attribute value to prevent scripting attacks. @@ -12692,7 +12971,7 @@ module.exports = quoteAttributeValueForBrowser; /***/ }, -/* 111 */ +/* 114 */ /***/ function(module, exports, __webpack_require__) { /** @@ -12710,13 +12989,13 @@ var _assign = __webpack_require__(6); - var EventConstants = __webpack_require__(42); - var EventPluginRegistry = __webpack_require__(45); - var ReactEventEmitterMixin = __webpack_require__(112); - var ViewportMetrics = __webpack_require__(77); + var EventConstants = __webpack_require__(44); + var EventPluginRegistry = __webpack_require__(47); + var ReactEventEmitterMixin = __webpack_require__(115); + var ViewportMetrics = __webpack_require__(80); - var getVendorPrefixedEventName = __webpack_require__(113); - var isEventSupported = __webpack_require__(71); + var getVendorPrefixedEventName = __webpack_require__(116); + var isEventSupported = __webpack_require__(74); /** * Summary of `ReactBrowserEventEmitter` event handling: @@ -13014,7 +13293,7 @@ module.exports = ReactBrowserEventEmitter; /***/ }, -/* 112 */ +/* 115 */ /***/ function(module, exports, __webpack_require__) { /** @@ -13030,7 +13309,7 @@ 'use strict'; - var EventPluginHub = __webpack_require__(44); + var EventPluginHub = __webpack_require__(46); function runEventQueueInBatch(events) { EventPluginHub.enqueueEvents(events); @@ -13052,7 +13331,7 @@ module.exports = ReactEventEmitterMixin; /***/ }, -/* 113 */ +/* 116 */ /***/ function(module, exports, __webpack_require__) { /** @@ -13068,7 +13347,7 @@ 'use strict'; - var ExecutionEnvironment = __webpack_require__(50); + var ExecutionEnvironment = __webpack_require__(52); /** * Generate a mapping of standard vendor prefixes using the defined style property and event name. @@ -13158,7 +13437,7 @@ module.exports = getVendorPrefixedEventName; /***/ }, -/* 114 */ +/* 117 */ /***/ function(module, exports, __webpack_require__) { /** @@ -13174,7 +13453,7 @@ 'use strict'; - var DisabledInputUtils = __webpack_require__(115); + var DisabledInputUtils = __webpack_require__(118); /** * Implements a