offscreen.js 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", { value: true });
  3. exports.isInOffscreenGroup = exports.createOffscreenGroup = void 0;
  4. var tslib_1 = require("tslib");
  5. var g_1 = require("@antv/g");
  6. var Group_1 = require("../shapes/Group");
  7. var visibility_1 = require("./visibility");
  8. var OffscreenGroup = /** @class */ (function (_super) {
  9. tslib_1.__extends(OffscreenGroup, _super);
  10. function OffscreenGroup() {
  11. var args = [];
  12. for (var _i = 0; _i < arguments.length; _i++) {
  13. args[_i] = arguments[_i];
  14. }
  15. var _this = _super.apply(this, tslib_1.__spreadArray([], tslib_1.__read(args), false)) || this;
  16. _this.addEventListener(g_1.ElementEvent.INSERTED, function () {
  17. (0, visibility_1.hide)(_this);
  18. });
  19. return _this;
  20. }
  21. return OffscreenGroup;
  22. }(Group_1.Group));
  23. function createOffscreenGroup(container) {
  24. var group = container.appendChild(new OffscreenGroup({
  25. class: 'offscreen',
  26. }));
  27. (0, visibility_1.hide)(group);
  28. return group;
  29. }
  30. exports.createOffscreenGroup = createOffscreenGroup;
  31. function isInOffscreenGroup(group) {
  32. var ancestor = group;
  33. while (ancestor) {
  34. if (ancestor.className === 'offscreen') {
  35. return true;
  36. }
  37. ancestor = ancestor.parent;
  38. }
  39. return false;
  40. }
  41. exports.isInOffscreenGroup = isInOffscreenGroup;
  42. //# sourceMappingURL=offscreen.js.map