typescript-windows
Version:
Typescript React components for draggable and resizable windows.
33 lines (29 loc) • 6.04 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.useWindow = void 0;
var useWindow = function useWindow(headerHeight, windowSizes, gridsHeight, gridsWidth, gridsGap, bounds, grids, id, breakpoint) {
var _windowSizes$id, _windowSizes$id2;
var size = {
w: gridsWidth * grids[breakpoint].w + gridsGap * (grids[breakpoint].w - 1),
h: headerHeight ? gridsHeight * grids[breakpoint].h + gridsGap * (grids[breakpoint].h - 1) - headerHeight : 0
};
var location = {
x: gridsWidth * grids[breakpoint].x + gridsGap * (grids[breakpoint].x + 1),
y: gridsHeight * grids[breakpoint].y + gridsGap * (grids[breakpoint].y + 1)
};
var limits = bounds && {
left: gridsWidth * bounds[breakpoint].left + gridsGap * (bounds[breakpoint].left + 1),
top: gridsHeight * bounds[breakpoint].top + gridsGap * (bounds[breakpoint].top + 1),
right: gridsWidth * bounds[breakpoint].right + gridsGap * bounds[breakpoint].right - (((_windowSizes$id = windowSizes[id]) === null || _windowSizes$id === void 0 ? void 0 : _windowSizes$id.w) || size.w),
bottom: gridsHeight * bounds[breakpoint].bottom + gridsGap * bounds[breakpoint].bottom - (((_windowSizes$id2 = windowSizes[id]) === null || _windowSizes$id2 === void 0 ? void 0 : _windowSizes$id2.h) + headerHeight || size.h + headerHeight)
};
return {
size: size,
location: location,
limits: limits
};
};
exports.useWindow = useWindow;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy91c2VXaW5kb3cudHMiXSwibmFtZXMiOlsidXNlV2luZG93IiwiaGVhZGVySGVpZ2h0Iiwid2luZG93U2l6ZXMiLCJncmlkc0hlaWdodCIsImdyaWRzV2lkdGgiLCJncmlkc0dhcCIsImJvdW5kcyIsImdyaWRzIiwiaWQiLCJicmVha3BvaW50Iiwic2l6ZSIsInciLCJoIiwibG9jYXRpb24iLCJ4IiwieSIsImxpbWl0cyIsImxlZnQiLCJ0b3AiLCJyaWdodCIsImJvdHRvbSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUVPLElBQU1BLFNBQVMsR0FBRyxTQUFaQSxTQUFZLENBQ3ZCQyxZQUR1QixFQUV2QkMsV0FGdUIsRUFHdkJDLFdBSHVCLEVBSXZCQyxVQUp1QixFQUt2QkMsUUFMdUIsRUFNdkJDLE1BTnVCLEVBT3ZCQyxLQVB1QixFQVF2QkMsRUFSdUIsRUFTdkJDLFVBVHVCLEVBVXBCO0FBQUE7O0FBQ0gsTUFBTUMsSUFBSSxHQUFHO0FBQ1hDLElBQUFBLENBQUMsRUFBRVAsVUFBVSxHQUFHRyxLQUFLLENBQUNFLFVBQUQsQ0FBTCxDQUFrQkUsQ0FBL0IsR0FBbUNOLFFBQVEsSUFBSUUsS0FBSyxDQUFDRSxVQUFELENBQUwsQ0FBa0JFLENBQWxCLEdBQXNCLENBQTFCLENBRG5DO0FBRVhDLElBQUFBLENBQUMsRUFBRVgsWUFBWSxHQUNYRSxXQUFXLEdBQUdJLEtBQUssQ0FBQ0UsVUFBRCxDQUFMLENBQWtCRyxDQUFoQyxHQUNBUCxRQUFRLElBQUlFLEtBQUssQ0FBQ0UsVUFBRCxDQUFMLENBQWtCRyxDQUFsQixHQUFzQixDQUExQixDQURSLEdBRUFYLFlBSFcsR0FJWDtBQU5PLEdBQWI7QUFTQSxNQUFNWSxRQUFRLEdBQUc7QUFDZkMsSUFBQUEsQ0FBQyxFQUFFVixVQUFVLEdBQUdHLEtBQUssQ0FBQ0UsVUFBRCxDQUFMLENBQWtCSyxDQUEvQixHQUFtQ1QsUUFBUSxJQUFJRSxLQUFLLENBQUNFLFVBQUQsQ0FBTCxDQUFrQkssQ0FBbEIsR0FBc0IsQ0FBMUIsQ0FEL0I7QUFFZkMsSUFBQUEsQ0FBQyxFQUFFWixXQUFXLEdBQUdJLEtBQUssQ0FBQ0UsVUFBRCxDQUFMLENBQWtCTSxDQUFoQyxHQUFvQ1YsUUFBUSxJQUFJRSxLQUFLLENBQUNFLFVBQUQsQ0FBTCxDQUFrQk0sQ0FBbEIsR0FBc0IsQ0FBMUI7QUFGaEMsR0FBakI7QUFLQSxNQUFNQyxNQUFNLEdBQUdWLE1BQU0sSUFBSTtBQUN2QlcsSUFBQUEsSUFBSSxFQUNGYixVQUFVLEdBQUdFLE1BQU0sQ0FBQ0csVUFBRCxDQUFOLENBQW1CUSxJQUFoQyxHQUNBWixRQUFRLElBQUlDLE1BQU0sQ0FBQ0csVUFBRCxDQUFOLENBQW1CUSxJQUFuQixHQUEwQixDQUE5QixDQUhhO0FBSXZCQyxJQUFBQSxHQUFHLEVBQ0RmLFdBQVcsR0FBR0csTUFBTSxDQUFDRyxVQUFELENBQU4sQ0FBbUJTLEdBQWpDLEdBQ0FiLFFBQVEsSUFBSUMsTUFBTSxDQUFDRyxVQUFELENBQU4sQ0FBbUJTLEdBQW5CLEdBQXlCLENBQTdCLENBTmE7QUFPdkJDLElBQUFBLEtBQUssRUFDSGYsVUFBVSxHQUFHRSxNQUFNLENBQUNHLFVBQUQsQ0FBTixDQUFtQlUsS0FBaEMsR0FDQWQsUUFBUSxHQUFHQyxNQUFNLENBQUNHLFVBQUQsQ0FBTixDQUFtQlUsS0FEOUIsSUFFQyxvQkFBQWpCLFdBQVcsQ0FBQ00sRUFBRCxDQUFYLG9FQUFpQkcsQ0FBakIsS0FBc0JELElBQUksQ0FBQ0MsQ0FGNUIsQ0FScUI7QUFXdkJTLElBQUFBLE1BQU0sRUFDSmpCLFdBQVcsR0FBR0csTUFBTSxDQUFDRyxVQUFELENBQU4sQ0FBbUJXLE1BQWpDLEdBQ0FmLFFBQVEsR0FBR0MsTUFBTSxDQUFDRyxVQUFELENBQU4sQ0FBbUJXLE1BRDlCLElBRUMscUJBQUFsQixXQUFXLENBQUNNLEVBQUQsQ0FBWCxzRUFBaUJJLENBQWpCLElBQXFCWCxZQUFyQixJQUFxQ1MsSUFBSSxDQUFDRSxDQUFMLEdBQVNYLFlBRi9DO0FBWnFCLEdBQXpCO0FBaUJBLFNBQU87QUFBRVMsSUFBQUEsSUFBSSxFQUFKQSxJQUFGO0FBQVFHLElBQUFBLFFBQVEsRUFBUkEsUUFBUjtBQUFrQkcsSUFBQUEsTUFBTSxFQUFOQTtBQUFsQixHQUFQO0FBQ0QsQ0EzQ00iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBHcmlkcywgQm91bmRzLCBTaXplcyB9IGZyb20gXCIuLi9jb21wb25lbnRzL2luZGV4LmRcIjtcclxuXHJcbmV4cG9ydCBjb25zdCB1c2VXaW5kb3cgPSAoXHJcbiAgaGVhZGVySGVpZ2h0OiBudW1iZXIsXHJcbiAgd2luZG93U2l6ZXM6IFNpemVzLFxyXG4gIGdyaWRzSGVpZ2h0OiBudW1iZXIsXHJcbiAgZ3JpZHNXaWR0aDogbnVtYmVyLFxyXG4gIGdyaWRzR2FwOiBudW1iZXIsXHJcbiAgYm91bmRzOiBCb3VuZHMgfCB1bmRlZmluZWQsXHJcbiAgZ3JpZHM6IEdyaWRzLFxyXG4gIGlkOiBzdHJpbmcsXHJcbiAgYnJlYWtwb2ludDogc3RyaW5nXHJcbikgPT4ge1xyXG4gIGNvbnN0IHNpemUgPSB7XHJcbiAgICB3OiBncmlkc1dpZHRoICogZ3JpZHNbYnJlYWtwb2ludF0udyArIGdyaWRzR2FwICogKGdyaWRzW2JyZWFrcG9pbnRdLncgLSAxKSxcclxuICAgIGg6IGhlYWRlckhlaWdodFxyXG4gICAgICA/IGdyaWRzSGVpZ2h0ICogZ3JpZHNbYnJlYWtwb2ludF0uaCArXHJcbiAgICAgICAgZ3JpZHNHYXAgKiAoZ3JpZHNbYnJlYWtwb2ludF0uaCAtIDEpIC1cclxuICAgICAgICBoZWFkZXJIZWlnaHRcclxuICAgICAgOiAwLFxyXG4gIH07XHJcblxyXG4gIGNvbnN0IGxvY2F0aW9uID0ge1xyXG4gICAgeDogZ3JpZHNXaWR0aCAqIGdyaWRzW2JyZWFrcG9pbnRdLnggKyBncmlkc0dhcCAqIChncmlkc1ticmVha3BvaW50XS54ICsgMSksXHJcbiAgICB5OiBncmlkc0hlaWdodCAqIGdyaWRzW2JyZWFrcG9pbnRdLnkgKyBncmlkc0dhcCAqIChncmlkc1ticmVha3BvaW50XS55ICsgMSksXHJcbiAgfTtcclxuXHJcbiAgY29uc3QgbGltaXRzID0gYm91bmRzICYmIHtcclxuICAgIGxlZnQ6XHJcbiAgICAgIGdyaWRzV2lkdGggKiBib3VuZHNbYnJlYWtwb2ludF0ubGVmdCArXHJcbiAgICAgIGdyaWRzR2FwICogKGJvdW5kc1ticmVha3BvaW50XS5sZWZ0ICsgMSksXHJcbiAgICB0b3A6XHJcbiAgICAgIGdyaWRzSGVpZ2h0ICogYm91bmRzW2JyZWFrcG9pbnRdLnRvcCArXHJcbiAgICAgIGdyaWRzR2FwICogKGJvdW5kc1ticmVha3BvaW50XS50b3AgKyAxKSxcclxuICAgIHJpZ2h0OlxyXG4gICAgICBncmlkc1dpZHRoICogYm91bmRzW2JyZWFrcG9pbnRdLnJpZ2h0ICtcclxuICAgICAgZ3JpZHNHYXAgKiBib3VuZHNbYnJlYWtwb2ludF0ucmlnaHQgLVxyXG4gICAgICAod2luZG93U2l6ZXNbaWRdPy53IHx8IHNpemUudyksXHJcbiAgICBib3R0b206XHJcbiAgICAgIGdyaWRzSGVpZ2h0ICogYm91bmRzW2JyZWFrcG9pbnRdLmJvdHRvbSArXHJcbiAgICAgIGdyaWRzR2FwICogYm91bmRzW2JyZWFrcG9pbnRdLmJvdHRvbSAtXHJcbiAgICAgICh3aW5kb3dTaXplc1tpZF0/LmggKyBoZWFkZXJIZWlnaHQgfHwgc2l6ZS5oICsgaGVhZGVySGVpZ2h0KSxcclxuICB9O1xyXG5cclxuICByZXR1cm4geyBzaXplLCBsb2NhdGlvbiwgbGltaXRzIH07XHJcbn07XHJcbiJdfQ==
;