1
0
Fork 0
mirror of https://github.com/documize/community.git synced 2025-07-24 15:49:44 +02:00

upgraded Ember and integrated Bootstrap 4

Upgraded to Ember JS 2.16.x release. This upgrade uses the new JavaScript modules API syntax.

Integrated Bootstrap 4 Beta 2 via package.json and associated popper.js library. Overridden Bootstrap styles using bootstrap.scss -- this file selectively imports the modules we need.
This commit is contained in:
Harvey Kandola 2017-11-16 13:28:05 +00:00
parent 0f04be4ea1
commit b31ab712c1
229 changed files with 1610 additions and 3181 deletions

View file

@ -9,10 +9,12 @@
//
// https://documize.com
import Ember from 'ember';
import { inject as service } from '@ember/service';
export default Ember.Component.extend({
store: Ember.inject.service(),
import Component from '@ember/component';
export default Component.extend({
store: service(),
didReceiveAttrs() {
let p = this.get('store').createRecord('page');

View file

@ -9,14 +9,14 @@
//
// https://documize.com
import Ember from 'ember';
import { debounce } from '@ember/runloop';
import { computed, set } from '@ember/object';
import Component from '@ember/component';
import { inject as service } from '@ember/service';
import TooltipMixin from '../../mixins/tooltip';
const {
inject: { service }
} = Ember;
export default Ember.Component.extend(TooltipMixin, {
export default Component.extend(TooltipMixin, {
link: service(),
linkName: '',
keywords: '',
@ -31,21 +31,21 @@ export default Ember.Component.extend(TooltipMixin, {
{ label: 'Attachment', selected: false },
{ label: 'Search', selected: false }
],
contentLinkerButtonId: Ember.computed('page', function () {
contentLinkerButtonId: computed('page', function () {
let page = this.get('page');
return `content-linker-button-${page.id}`;
}),
showSections: Ember.computed('tabs.@each.selected', function () {
showSections: computed('tabs.@each.selected', function () {
return this.get('tabs').findBy('label', 'Section').selected;
}),
showAttachments: Ember.computed('tabs.@each.selected', function () {
showAttachments: computed('tabs.@each.selected', function () {
return this.get('tabs').findBy('label', 'Attachment').selected;
}),
showSearch: Ember.computed('tabs.@each.selected', function () {
showSearch: computed('tabs.@each.selected', function () {
return this.get('tabs').findBy('label', 'Search').selected;
}),
hasMatches: Ember.computed('matches', function () {
hasMatches: computed('matches', function () {
let m = this.get('matches');
return m.documents.length || m.pages.length || m.attachments.length;
}),
@ -75,7 +75,7 @@ export default Ember.Component.extend(TooltipMixin, {
},
onKeywordChange: function () {
Ember.run.debounce(this, this.fetch, 750);
debounce(this, this.fetch, 750);
}.observes('keywords'),
fetch() {
@ -100,23 +100,23 @@ export default Ember.Component.extend(TooltipMixin, {
this.set('selection', i);
candidates.pages.forEach(c => {
Ember.set(c, 'selected', c.id === i.id);
set(c, 'selected', c.id === i.id);
});
candidates.attachments.forEach(c => {
Ember.set(c, 'selected', c.id === i.id);
set(c, 'selected', c.id === i.id);
});
matches.documents.forEach(c => {
Ember.set(c, 'selected', c.id === i.id);
set(c, 'selected', c.id === i.id);
});
matches.pages.forEach(c => {
Ember.set(c, 'selected', c.id === i.id);
set(c, 'selected', c.id === i.id);
});
matches.attachments.forEach(c => {
Ember.set(c, 'selected', c.id === i.id);
set(c, 'selected', c.id === i.id);
});
},

View file

@ -9,10 +9,12 @@
//
// https://documize.com
import Ember from 'ember';
import { inject as service } from '@ember/service';
export default Ember.Component.extend({
documentService: Ember.inject.service('document'),
import Component from '@ember/component';
export default Component.extend({
documentService: service('document'),
didReceiveAttrs() {
this._super(...arguments);

View file

@ -9,21 +9,25 @@
//
// https://documize.com
import Ember from 'ember';
import { computed } from '@ember/object';
import { notEmpty } from '@ember/object/computed';
import { inject as service } from '@ember/service';
import Component from '@ember/component';
import NotifierMixin from '../../mixins/notifier';
import TooltipMixin from '../../mixins/tooltip';
import DropdownMixin from '../../mixins/dropdown';
export default Ember.Component.extend(NotifierMixin, TooltipMixin, DropdownMixin, {
documentService: Ember.inject.service('document'),
appMeta: Ember.inject.service(),
export default Component.extend(NotifierMixin, TooltipMixin, DropdownMixin, {
documentService: service('document'),
appMeta: service(),
dropdown: null,
hasAttachments: Ember.computed.notEmpty('files'),
hasAttachments: notEmpty('files'),
deleteAttachment: {
id: "",
name: "",
},
canShow: Ember.computed('permissions', 'files', function() {
canShow: computed('permissions', 'files', function() {
return this.get('files.length') > 0 || this.get('permissions.documentEdit');
}),

View file

@ -9,9 +9,9 @@
//
// https://documize.com
import Ember from 'ember';
import Component from '@ember/component';
export default Ember.Component.extend({
export default Component.extend({
didReceiveAttrs() {
this.set('editorType', 'section/' + this.get('page.contentType') + '/type-editor');
},

View file

@ -9,21 +9,21 @@
//
// https://documize.com
import Ember from 'ember';
import { empty } from '@ember/object/computed';
import { schedule } from '@ember/runloop';
import { inject as service } from '@ember/service';
import Component from '@ember/component';
import NotifierMixin from '../../mixins/notifier';
import TooltipMixin from '../../mixins/tooltip';
const {
computed,
} = Ember;
export default Ember.Component.extend(NotifierMixin, TooltipMixin, {
documentService: Ember.inject.service('document'),
export default Component.extend(NotifierMixin, TooltipMixin, {
documentService: service('document'),
editMode: false,
docName: '',
docExcerpt: '',
hasNameError: computed.empty('docName'),
hasExcerptError: computed.empty('docExcerpt'),
hasNameError: empty('docName'),
hasExcerptError: empty('docExcerpt'),
keyUp(e) {
if (e.keyCode === 27) { // escape key
@ -37,7 +37,7 @@ export default Ember.Component.extend(NotifierMixin, TooltipMixin, {
this.set('docExcerpt', this.get('document.excerpt'));
this.set('editMode', true);
Ember.run.schedule('afterRender', () => {
schedule('afterRender', () => {
$('#document-name').select();
});
},

View file

@ -9,11 +9,13 @@
//
// https://documize.com
import Ember from 'ember';
import { computed, set } from '@ember/object';
export default Ember.Component.extend({
import Component from '@ember/component';
export default Component.extend({
revision: null,
hasDiff: Ember.computed('diff', function () {
hasDiff: computed('diff', function () {
return this.get('diff').length > 0;
}),
@ -21,8 +23,8 @@ export default Ember.Component.extend({
let revisions = this.get('revisions');
revisions.forEach((r) => {
Ember.set(r, 'deleted', r.revisions === 0);
Ember.set(r, 'label', `${r.created} - ${r.firstname} ${r.lastname} - ${r.title}`);
set(r, 'deleted', r.revisions === 0);
set(r, 'label', `${r.created} - ${r.firstname} ${r.lastname} - ${r.title}`);
});
if (revisions.length > 0 && is.null(this.get('revision'))) {

View file

@ -9,12 +9,14 @@
//
// https://documize.com
import Ember from 'ember';
import { computed } from '@ember/object';
import Component from '@ember/component';
import tocUtil from '../../utils/toc';
import NotifierMixin from '../../mixins/notifier';
import TooltipMixin from '../../mixins/tooltip';
export default Ember.Component.extend(NotifierMixin, TooltipMixin, {
export default Component.extend(NotifierMixin, TooltipMixin, {
document: {},
folder: {},
pages: [],
@ -26,7 +28,7 @@ export default Ember.Component.extend(NotifierMixin, TooltipMixin, {
indentDisabled: true,
outdentDisabled: true
},
emptyState: Ember.computed('pages', function () {
emptyState: computed('pages', function () {
return this.get('pages.length') === 0;
}),

View file

@ -9,13 +9,15 @@
//
// https://documize.com
import Ember from 'ember';
import { inject as service } from '@ember/service';
import Component from '@ember/component';
import NotifierMixin from '../../mixins/notifier';
import TooltipMixin from '../../mixins/tooltip';
export default Ember.Component.extend(NotifierMixin, TooltipMixin, {
documentService: Ember.inject.service('document'),
sectionService: Ember.inject.service('section'),
export default Component.extend(NotifierMixin, TooltipMixin, {
documentService: service('document'),
sectionService: service('section'),
editMode: false,
didReceiveAttrs() {

View file

@ -9,11 +9,11 @@
//
// https://documize.com
import Ember from 'ember';
import Component from '@ember/component';
import NotifierMixin from '../../mixins/notifier';
import TooltipMixin from '../../mixins/tooltip';
export default Ember.Component.extend(NotifierMixin, TooltipMixin, {
export default Component.extend(NotifierMixin, TooltipMixin, {
tab: 'index',
didRender() {

View file

@ -9,12 +9,14 @@
//
// https://documize.com
import Ember from 'ember';
import { inject as service } from '@ember/service';
import Component from '@ember/component';
import NotifierMixin from '../../mixins/notifier';
import TooltipMixin from '../../mixins/tooltip';
export default Ember.Component.extend(NotifierMixin, TooltipMixin, {
sectionService: Ember.inject.service('section'),
export default Component.extend(NotifierMixin, TooltipMixin, {
sectionService: service('section'),
viewMode: true,
editMode: false,

View file

@ -9,18 +9,20 @@
//
// https://documize.com
import Ember from 'ember';
import { inject as service } from '@ember/service';
import Component from '@ember/component';
import TooltipMixin from '../../mixins/tooltip';
import NotifierMixin from '../../mixins/notifier';
export default Ember.Component.extend(TooltipMixin, NotifierMixin, {
documentService: Ember.inject.service('document'),
sectionService: Ember.inject.service('section'),
sessionService: Ember.inject.service('session'),
appMeta: Ember.inject.service(),
userService: Ember.inject.service('user'),
localStorage: Ember.inject.service(),
pinned: Ember.inject.service(),
export default Component.extend(TooltipMixin, NotifierMixin, {
documentService: service('document'),
sectionService: service('section'),
sessionService: service('session'),
appMeta: service(),
userService: service('user'),
localStorage: service(),
pinned: service(),
menuOpen: false,
pinState : {
isPinned: false,

View file

@ -9,22 +9,22 @@
//
// https://documize.com
import Ember from 'ember';
import { notEmpty, empty } from '@ember/object/computed';
import { schedule } from '@ember/runloop';
import { inject as service } from '@ember/service';
import Component from '@ember/component';
import NotifierMixin from '../../mixins/notifier';
import TooltipMixin from '../../mixins/tooltip';
const {
computed,
} = Ember;
export default Ember.Component.extend(NotifierMixin, TooltipMixin, {
documentService: Ember.inject.service('document'),
sectionService: Ember.inject.service('section'),
appMeta: Ember.inject.service(),
link: Ember.inject.service(),
hasPages: computed.notEmpty('pages'),
export default Component.extend(NotifierMixin, TooltipMixin, {
documentService: service('document'),
sectionService: service('section'),
appMeta: service(),
link: service(),
hasPages: notEmpty('pages'),
newSectionName: 'Section',
newSectionNameMissing: computed.empty('newSectionName'),
newSectionNameMissing: empty('newSectionName'),
newSectionLocation: '',
beforePage: '',
toEdit: '',
@ -33,7 +33,7 @@ export default Ember.Component.extend(NotifierMixin, TooltipMixin, {
this._super(...arguments);
this.loadBlocks();
Ember.run.schedule('afterRender', () => {
schedule('afterRender', () => {
let jumpTo = "#page-" + this.get('pageId');
if (!$(jumpTo).inView()) {
$(jumpTo).velocity("scroll", { duration: 250, offset: -100 });
@ -98,7 +98,7 @@ export default Ember.Component.extend(NotifierMixin, TooltipMixin, {
},
setupAddWizard() {
Ember.run.schedule('afterRender', () => {
schedule('afterRender', () => {
$('.start-section:not(.start-section-empty-state)').off('.hoverIntent');
$('.start-section:not(.start-section-empty-state)').hoverIntent({interval: 100, over: function() {

View file

@ -9,9 +9,9 @@
//
// https://documize.com
import Ember from 'ember';
import Component from '@ember/component';
export default Ember.Component.extend({
export default Component.extend({
page: {},
tagName: "li",
classNames: ["item"],

View file

@ -9,15 +9,13 @@
//
// https://documize.com
import Ember from 'ember';
import Component from '@ember/component';
import { computed } from '@ember/object';
import { inject as service } from '@ember/service';
import TooltipMixin from '../../mixins/tooltip';
const {
computed,
inject: { service }
} = Ember;
export default Ember.Component.extend(TooltipMixin, {
export default Component.extend(TooltipMixin, {
documentService: service('document'),
deleteChildren: false,
menuOpen: false,

View file

@ -9,23 +9,26 @@
//
// https://documize.com
import Ember from 'ember';
import { computed } from '@ember/object';
import { inject as service } from '@ember/service';
import Component from '@ember/component';
import TooltipMixin from '../../mixins/tooltip';
import NotifierMixin from '../../mixins/notifier';
export default Ember.Component.extend(TooltipMixin, NotifierMixin, {
documentService: Ember.inject.service('document'),
categoryService: Ember.inject.service('category'),
sessionService: Ember.inject.service('session'),
export default Component.extend(TooltipMixin, NotifierMixin, {
documentService: service('document'),
categoryService: service('category'),
sessionService: service('session'),
newCategory: '',
categories: [],
hasCategories: Ember.computed('categories', function() {
hasCategories: computed('categories', function() {
return this.get('categories').length > 0;
}),
canSelectCategory: Ember.computed('categories', function() {
canSelectCategory: computed('categories', function() {
return (this.get('categories').length > 0 && this.get('permissions.documentEdit'));
}),
canAddCategory: Ember.computed('categories', function() {
canAddCategory: computed('categories', function() {
return this.get('permissions.spaceOwner') || this.get('permissions.spaceManage');
}),

View file

@ -9,15 +9,13 @@
//
// https://documize.com
import Ember from 'ember';
import Component from '@ember/component';
import { computed } from '@ember/object';
import { inject as service } from '@ember/service';
import TooltipMixin from '../../mixins/tooltip';
const {
computed,
inject: { service }
} = Ember;
export default Ember.Component.extend(TooltipMixin, {
export default Component.extend(TooltipMixin, {
documentService: service('document'),
expanded: false,
deleteChildren: false,

View file

@ -9,15 +9,17 @@
//
// https://documize.com
import Ember from 'ember';
import { computed } from '@ember/object';
export default Ember.Component.extend({
import Component from '@ember/component';
export default Component.extend({
documentTags: [],
tagz: [],
newTag: "",
maxTags: 3,
canAdd: false,
emptyState: Ember.computed('tagz', function() {
emptyState: computed('tagz', function() {
return (this.get('tagz').length === 0 && !this.get('permissions.documentEdit'));
}),