UNPKG

impress.me

Version:

Create impress.js presentations from markdown documents with style

25 lines (24 loc) 1.15 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.PositionStrategyFactory = void 0; const linear_position_strategy_1 = require("./linear-position.strategy"); const planet_position_strategy_1 = require("./planet-position.strategy"); const strategy_1 = require("../strategy"); const column_position_strategy_1 = require("./column-position.strategy"); const row_position_strategy_1 = require("./row-position.strategy"); class PositionStrategyFactory { create(config) { switch (config.strategy) { case strategy_1.Strategy.Linear: return new linear_position_strategy_1.LinearPositionStrategy(config); case strategy_1.Strategy.Column: return new column_position_strategy_1.ColumnPositionStrategy(config); case strategy_1.Strategy.Row: return new row_position_strategy_1.RowPositionStrategy(config); case strategy_1.Strategy.Planet: default: return new planet_position_strategy_1.PlanetPositionStrategy(config); } } } exports.PositionStrategyFactory = PositionStrategyFactory;