{"version":3,"sources":["webpack:///../WCC.UI/App/pages/admin/community/pagePreview/page.js","webpack:///../WCC.UI/App/pages/admin/community/pagePreview/styles.scss?efcc","webpack:///../WCC.UI/App/viewmodels/disposable_es5.js","webpack:///../WCC.UI/App/pages/admin/community/pagePreview/styles.scss"],"names":["ViewModel","Base","call","this","master","ko","observable","WCC","getSetting","hasMaster","isNotNull","masterContent","mapNotNull","page","TextHelpers","decodeText","Content","default","content","type","pluck","isMaster","is","enums","CommunityPageType","Master","value","lastChangedOn","Date","loaded","extend","rateLimit","trackChanges","ready","currentPage","components","preload","prototype","Object","create","constructor","beforeInit","disposables","register","MutationObserver","_onMutation","bind","observer","observe","document","attributes","childList","subtree","disconnect","init","i","setInterval","componentsLoaded","_","$","all","node","attr","imagesLoaded","img","complete","noMutations","clearInterval","applyBindings","getElementById","api","__esModule","module","options","exports","locals","define","Disposables","__initialized","__initTasks","each","func","dispose","_register","field","push","_registerObservable","registerObservable","___CSS_LOADER_API_IMPORT___"],"mappings":"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","file":"108.43b32b55bcfb6a1985b1.js","sourcesContent":["import 'Content/Shared/sharedStyles.scss';\r\nimport 'Content/WCC/loggedUser.scss';\r\nimport { TextHelpers } from 'helpers/text';\r\n\r\nimport Base from 'viewmodels/disposable_es5';\r\nimport './styles.scss';\r\n\r\ncomponents.preload('master-viewer', 'content-box-viewer');\r\n\r\nexport default function ViewModel() {\r\n    Base.call(this);\r\n\r\n    this.master = ko.observable(WCC.getSetting('Master'));\r\n    this.hasMaster = this.master.isNotNull();\r\n    this.masterContent = this.master.mapNotNull(page => TextHelpers.decodeText(page.Content)).default('');\r\n    this.page = ko.observable(WCC.getSetting('Page'));\r\n    this.content = this.page.mapNotNull(page => TextHelpers.decodeText(page.Content)).default('');\r\n    this.type = this.page.pluck('PageType');\r\n    this.isMaster = this.type.is(enums.CommunityPageType.Master.value);\r\n\r\n    this.lastChangedOn = ko.observable(new Date());\r\n\r\n    this.loaded = ko.observable(false).extend({ rateLimit: 1000 });\r\n    this.trackChanges = WCC.getSetting('TrackChanges', false);\r\n\r\n    this.ready = ko.observable(false);\r\n\r\n    WCC.currentPage = this;\r\n}\r\n\r\nViewModel.prototype = Object.create(Base.prototype);\r\nViewModel.prototype.constructor = ViewModel;\r\n\r\nViewModel.prototype.beforeInit = function () {\r\n    Base.prototype.beforeInit.call(this);\r\n\r\n    if (this.trackChanges) {\r\n        this.disposables.register(new MutationObserver(this._onMutation.bind(this)),\r\n            function (observer) { observer.observe(document, { attributes: true, childList: true, subtree: true }) },\r\n            function (observer) { observer.disconnect() });\r\n    }\r\n}\r\n\r\nViewModel.prototype.init = function () {\r\n    if (this.trackChanges) {\r\n        var i = setInterval(function () {\r\n            var componentsLoaded = _($('[params]')).all(function (node) { return $(node).attr('component-ready') === 'true' }),\r\n                imagesLoaded = _($('img')).all(function (img) { return img.complete }),\r\n                noMutations = new Date() - this.lastChangedOn() > 2000;\r\n\r\n            var loaded = componentsLoaded && imagesLoaded && noMutations;\r\n\r\n            if (loaded) {\r\n                clearInterval(i);\r\n                this.loaded(true);\r\n            }\r\n        }.bind(this), 100);\r\n    }\r\n\r\n    ko.applyBindings(this, document.getElementById('workArea'));\r\n\r\n    this.ready(true);\r\n}\r\n\r\nViewModel.prototype._onMutation = function () {\r\n    this.lastChangedOn(new Date());\r\n}","var api = require(\"!../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n            var content = require(\"!!../../../../../node_modules/css-loader/dist/cjs.js!../../../../../node_modules/sass-loader/dist/cjs.js!./styles.scss\");\n\n            content = content.__esModule ? content.default : content;\n\n            if (typeof content === 'string') {\n              content = [[module.id, content, '']];\n            }\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nmodule.exports = content.locals || {};","define('viewmodels/disposable_es5', [\r\n    'managers/disposables'\r\n], function (Disposables) {\r\n    function ViewModel() {\r\n        this.__initialized = false;\r\n        this.__initTasks = [];\r\n\r\n        this.disposables = new Disposables();\r\n    }\r\n\r\n    ViewModel.prototype.beforeInit = function () {\r\n        _(this.__initTasks).each(function (func) { func() });\r\n        this.__initialized = true;\r\n    };\r\n\r\n    ViewModel.prototype.init = function () {};\r\n\r\n    ViewModel.prototype.dispose = function () {\r\n        this.disposables.dispose();\r\n    };\r\n\r\n    ViewModel.prototype._register = function (field) {\r\n        if (this.__initialized) {\r\n            this.disposables.register(field);\r\n        } else {\r\n            this.__initTasks.push(function () {\r\n                this.disposables.register(field);\r\n            }.bind(this));\r\n        }\r\n\r\n        return field;\r\n    };\r\n\r\n    ViewModel.prototype._registerObservable = function (field, init, dispose) {\r\n        if (this.__initialized) {\r\n            this.disposables.registerObservable(field, init, dispose);\r\n        } else {\r\n            this.__initTasks.push(function () {\r\n                this.disposables.registerObservable(field, init, dispose);\r\n            }.bind(this));\r\n        }\r\n\r\n        return field;\r\n    };\r\n\r\n    return ViewModel;\r\n});","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \"body{min-width:0}\", \"\"]);\n// Exports\nmodule.exports = exports;\n"],"sourceRoot":""}