diff --git a/client/methods/updateMessage.js b/client/methods/updateMessage.js index 86e40640ce8..ddcdae14c49 100644 --- a/client/methods/updateMessage.js +++ b/client/methods/updateMessage.js @@ -1,5 +1,6 @@ import { Meteor } from 'meteor/meteor'; import { Tracker } from 'meteor/tracker'; +import { TimeSync } from 'meteor/mizzao:timesync'; import _ from 'underscore'; import moment from 'moment'; import toastr from 'toastr'; diff --git a/client/startup/startup.js b/client/startup/startup.js index 9ee7fd2527c..cf2c1eea246 100644 --- a/client/startup/startup.js +++ b/client/startup/startup.js @@ -2,6 +2,7 @@ import { Meteor } from 'meteor/meteor'; import { Tracker } from 'meteor/tracker'; import { Session } from 'meteor/session'; +import { TimeSync } from 'meteor/mizzao:timesync'; import toastr from 'toastr'; import hljs from 'highlight.js'; import 'highlight.js/styles/github.css'; diff --git a/packages/meteor-timesync/client/index.js b/packages/meteor-timesync/client/index.js new file mode 100644 index 00000000000..b9a53fb0ddf --- /dev/null +++ b/packages/meteor-timesync/client/index.js @@ -0,0 +1,6 @@ +import { TimeSync, SyncInternals } from './timesync-client'; + +export { + TimeSync, + SyncInternals, +}; diff --git a/packages/meteor-timesync/client/timesync-client.js b/packages/meteor-timesync/client/timesync-client.js index ff7eb584525..026e332c559 100644 --- a/packages/meteor-timesync/client/timesync-client.js +++ b/packages/meteor-timesync/client/timesync-client.js @@ -1,8 +1,11 @@ -/* eslint-disable */ +import { Meteor } from 'meteor/meteor'; +import { Deps } from 'meteor/deps'; +import { HTTP } from 'meteor/http'; + //IE8 doesn't have Date.now() Date.now = Date.now || function() { return +new Date; }; -TimeSync = { +export const TimeSync = { loggingEnabled: true }; @@ -15,7 +18,7 @@ function log(/* arguments */) { var defaultInterval = 1000; // Internal values, exported for testing -SyncInternals = { +export const SyncInternals = { offset: undefined, roundTripTime: undefined, offsetDep: new Deps.Dependency(), diff --git a/packages/meteor-timesync/package.js b/packages/meteor-timesync/package.js index 446d4e6e5ba..175327300c9 100644 --- a/packages/meteor-timesync/package.js +++ b/packages/meteor-timesync/package.js @@ -6,31 +6,33 @@ Package.describe({ }); Package.onUse(function (api) { - api.use([ - 'check', - 'tracker', - 'http' - ], 'client'); - - api.use('webapp', 'server'); + api.use([ + 'check', + 'tracker', + 'http', + ], 'client'); - // Our files - api.addFiles('server/timesync-server.js', 'server'); - api.addFiles('client/timesync-client.js', 'client'); + api.use([ + 'webapp', + ], 'server'); - api.export('TimeSync', 'client'); - api.export('SyncInternals', 'client', {testOnly: true} ); + api.use([ + 'ecmascript', + ]); + api.mainModule('client/index.js', 'client'); + api.mainModule('server/index.js', 'server'); }); Package.onTest(function (api) { - api.use([ - 'tinytest', - 'test-helpers' - ]); + api.use([ + 'ecmascript', + 'tinytest', + 'test-helpers' + ]); - api.use(['tracker'], 'client'); + api.use(['tracker'], 'client'); - api.use('mizzao:timesync'); + api.use('mizzao:timesync'); - api.addFiles('tests/client.js', 'client'); + api.addFiles('tests/client.js', 'client'); }); diff --git a/packages/meteor-timesync/server/index.js b/packages/meteor-timesync/server/index.js new file mode 100644 index 00000000000..ab8e57008da --- /dev/null +++ b/packages/meteor-timesync/server/index.js @@ -0,0 +1 @@ +import './timesync-server'; \ No newline at end of file diff --git a/packages/meteor-timesync/server/timesync-server.js b/packages/meteor-timesync/server/timesync-server.js index 70d11c7d7e9..d8d694618fa 100644 --- a/packages/meteor-timesync/server/timesync-server.js +++ b/packages/meteor-timesync/server/timesync-server.js @@ -1,4 +1,4 @@ -/* eslint-disable */ +import { WebApp } from 'meteor/webapp'; // Use rawConnectHandlers so we get a response as quickly as possible // https://github.com/meteor/meteor/blob/devel/packages/webapp/webapp_server.js diff --git a/packages/rocketchat-lib/client/methods/sendMessage.js b/packages/rocketchat-lib/client/methods/sendMessage.js index a6147fbc54a..de8a3814411 100644 --- a/packages/rocketchat-lib/client/methods/sendMessage.js +++ b/packages/rocketchat-lib/client/methods/sendMessage.js @@ -1,4 +1,5 @@ import { Meteor } from 'meteor/meteor'; +import { TimeSync } from 'meteor/mizzao:timesync'; import s from 'underscore.string'; Meteor.methods({ diff --git a/packages/rocketchat-lib/package.js b/packages/rocketchat-lib/package.js index a1d90238e41..86d5176eb92 100644 --- a/packages/rocketchat-lib/package.js +++ b/packages/rocketchat-lib/package.js @@ -29,6 +29,7 @@ Package.onUse(function(api) { api.use('rocketchat:version'); api.use('rocketchat:logger'); api.use('rocketchat:mailer'); + api.use('mizzao:timesync'); api.use('rocketchat:custom-oauth'); api.use('rocketchat:authorization', { unordered: true }); api.use('rocketchat:push-notifications', { unordered: true }); diff --git a/packages/rocketchat-livechat/.app/client/methods/sendMessageExternal.js b/packages/rocketchat-livechat/.app/client/methods/sendMessageExternal.js index 93fed539c92..29723d521ee 100644 --- a/packages/rocketchat-livechat/.app/client/methods/sendMessageExternal.js +++ b/packages/rocketchat-livechat/.app/client/methods/sendMessageExternal.js @@ -1,4 +1,5 @@ import { Meteor } from 'meteor/meteor'; +import { TimeSync } from 'meteor/mizzao:timesync'; import visitor from '../../imports/client/visitor'; import s from 'underscore.string'; diff --git a/packages/rocketchat-otr/client/rocketchat.otr.room.js b/packages/rocketchat-otr/client/rocketchat.otr.room.js index 59047f74646..85a36a4bd90 100644 --- a/packages/rocketchat-otr/client/rocketchat.otr.room.js +++ b/packages/rocketchat-otr/client/rocketchat.otr.room.js @@ -5,6 +5,7 @@ import { EJSON } from 'meteor/ejson'; import { Tracker } from 'meteor/tracker'; import { FlowRouter } from 'meteor/kadira:flow-router'; import { TAPi18n } from 'meteor/tap:i18n'; +import { TimeSync } from 'meteor/mizzao:timesync'; import _ from 'underscore'; import toastr from 'toastr'; /* globals crypto */