Skip to content
Permalink
Browse files

restore misremoved modules, add es6 compilation, less underscore (#8)

  • Loading branch information
kacperj committed Oct 13, 2019
1 parent 504c195 commit 07054a089a5e851ec73494cb2c259532a97fb357
@@ -106,7 +106,7 @@ class EditorVM extends LightVM {

public updateHeight() {
const windowHeight = $(window).height();
const navbarsHeight = $(".navbar-inverse:eq(0)").height() + $(".navbar-inverse:eq(1)").height();
const navbarsHeight = $(".navbar-inverse:eq(0)").height();
const contentHeight = windowHeight - navbarsHeight;
$("#editor-workspace-container").height(contentHeight + "px");
}
@@ -329,8 +329,7 @@ class EditorVM extends LightVM {
}

public saveGameBookProject() {
let content;
content = gameBookProjectRepository.getProjectContent(this.editorContext.gameBookId);
const content = gameBookProjectRepository.getProjectContent(this.editorContext.gameBookId);
return projectUpdater.queueUpdate(this.editorContext.gameBookId, content);
}

@@ -1,15 +1,15 @@
import _ = require("underscore");
import { VisEdgeModel } from "./edgeModel";

class EdgeFactory {
public createArrowEdge(data: VisEdgeModel): VisEdgeModel {
return _.extend(data, {
public createArrowEdge(data: VisEdgeModel): any {
return {
...data,
arrows: {
to: true
},
width: 3,
length: 100
});
};
}
}

@@ -23,10 +23,6 @@ import { Kov, React } from "../../core/reactMock";
<Kov data-bind=" if: segment.type === 'text'">
<div data-bind="html: segment.html" class="markdown-segment"></div>
</Kov>
<Kov data-bind=" if: segment.type === 'image'">
<img data-bind="attr: { src: $root.actualViewModel().data.ServiceUrl() + '/' + segment.data.imageSrc }, style: { height: segment.data.height + 'px', width: segment.data.width + 'px' }"
class="img-responsive image-segment" />
</Kov>
</div>
</Kov>
</div>
@@ -1,4 +1,3 @@
import config = require("config");
import { GameBook } from "../../models/gamebook/gameBook";
import { NavigationSegmentModel, SegmentType } from "../../models/gamebook/segments/segmentModel";
import loader = require("../../src/loader");
@@ -8,13 +7,11 @@ import AuthenticationBaseVM = require("../authenticationBaseVM");

class HtmlExportVM extends AuthenticationBaseVM {
public Project: KnockoutObservable<any>;
public ServiceUrl: KnockoutObservable<string>;

constructor() {
super();

this.Project = this.ko.observable();
this.ServiceUrl = this.ko.observable(config.serviceUrl);
}

public OnNavigated(navigationData) {
@@ -44,9 +44,7 @@ class MyProjectsVM extends AuthenticationBaseVM {
loader.show();

projectService.myProjects().then((projects) => {
const projectsVM = _.map(projects, (project) => {
return this.mapToProjectVm(project);
});
const projectsVM = projects.map(this.mapToProjectVm);
this.Games(projectsVM);
}).always(() => {
return loader.hide();
@@ -169,7 +167,7 @@ class MyProjectsVM extends AuthenticationBaseVM {
this.navigate("/" + gameBookId + "/" + page.guid);
}

private mapToProjectVm(gameBookProject) {
private mapToProjectVm = (gameBookProject) => {
return {
Id: this.ko.observable(gameBookProject.id),
Title: this.ko.observable(gameBookProject.title),
@@ -102,7 +102,7 @@ class NavigationEditorSegmentVM extends CommonEditorSegmentVM {
public updatePages() {
const pages = gameBookProjectRepository.getAllPages(this.editorContext.gameBookId);

const pagesVM = _.map(pages, (page) => {
const pagesVM = pages.map((page) => {
return {
PageName: this.ko.observable(page.name),
PageGuid: this.ko.observable(page.guid)
@@ -226,6 +226,154 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re

}(jQuery);

/* ========================================================================
* Bootstrap: dropdown.js v3.1.1
* http://getbootstrap.com/javascript/#dropdowns
* ========================================================================
* Copyright 2011-2014 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* ======================================================================== */


+function ($) {
'use strict';

// DROPDOWN CLASS DEFINITION
// =========================

var backdrop = '.dropdown-backdrop'
var toggle = '[data-toggle=dropdown]'
var Dropdown = function (element) {
$(element).on('click.bs.dropdown', this.toggle)
}

Dropdown.prototype.toggle = function (e) {
var $this = $(this)

if ($this.is('.disabled, :disabled')) return

var $parent = getParent($this)
var isActive = $parent.hasClass('open')

clearMenus()

if (!isActive) {
if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) {
// if mobile we use a backdrop because click events don't delegate
$('<div class="dropdown-backdrop"/>').insertAfter($(this)).on('click', clearMenus)
}

var relatedTarget = { relatedTarget: this }
$parent.trigger(e = $.Event('show.bs.dropdown', relatedTarget))

if (e.isDefaultPrevented()) return

$parent
.toggleClass('open')
.trigger('shown.bs.dropdown', relatedTarget)

$this.focus()
}

return false
}

Dropdown.prototype.keydown = function (e) {
if (!/(38|40|27)/.test(e.keyCode)) return

var $this = $(this)

e.preventDefault()
e.stopPropagation()

if ($this.is('.disabled, :disabled')) return

var $parent = getParent($this)
var isActive = $parent.hasClass('open')

if (!isActive || (isActive && e.keyCode == 27)) {
if (e.which == 27) $parent.find(toggle).focus()
return $this.click()
}

var desc = ' li:not(.divider):visible a'
var $items = $parent.find('[role=menu]' + desc + ', [role=listbox]' + desc)

if (!$items.length) return

var index = $items.index($items.filter(':focus'))

if (e.keyCode == 38 && index > 0) index-- // up
if (e.keyCode == 40 && index < $items.length - 1) index++ // down
if (!~index) index = 0

$items.eq(index).focus()
}

function clearMenus(e) {
$(backdrop).remove()
$(toggle).each(function () {
var $parent = getParent($(this))
var relatedTarget = { relatedTarget: this }
if (!$parent.hasClass('open')) return
$parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget))
if (e.isDefaultPrevented()) return
$parent.removeClass('open').trigger('hidden.bs.dropdown', relatedTarget)
})
}

function getParent($this) {
var selector = $this.attr('data-target')

if (!selector) {
selector = $this.attr('href')
selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
}

var $parent = selector && $(selector)

return $parent && $parent.length ? $parent : $this.parent()
}


// DROPDOWN PLUGIN DEFINITION
// ==========================

var old = $.fn.dropdown

$.fn.dropdown = function (option) {
return this.each(function () {
var $this = $(this)
var data = $this.data('bs.dropdown')

if (!data) $this.data('bs.dropdown', (data = new Dropdown(this)))
if (typeof option == 'string') data[option].call($this)
})
}

$.fn.dropdown.Constructor = Dropdown


// DROPDOWN NO CONFLICT
// ====================

$.fn.dropdown.noConflict = function () {
$.fn.dropdown = old
return this
}


// APPLY TO STANDARD DROPDOWN ELEMENTS
// ===================================

$(document)
.on('click.bs.dropdown.data-api', clearMenus)
.on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
.on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle)
.on('keydown.bs.dropdown.data-api', toggle + ', [role=menu], [role=listbox]', Dropdown.prototype.keydown)

}(jQuery);

/* ========================================================================
* Bootstrap: modal.js v3.1.1
* http://getbootstrap.com/javascript/#modals

0 comments on commit 07054a0

Please sign in to comment.
You can’t perform that action at this time.