brew-js-react 0.1.10 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/brew-js-react.js +301 -183
- package/dist/brew-js-react.js.map +1 -1
- package/dist/brew-js-react.min.js +1 -1
- package/dist/brew-js-react.min.js.map +1 -1
- package/hooks.d.ts +14 -0
- package/hooks.js +61 -6
- package/i18n.d.ts +15 -1
- package/i18n.js +28 -18
- package/include/zeta-dom/domLock.js +1 -0
- package/package.json +3 -3
- package/view.d.ts +6 -0
- package/view.js +47 -17
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brew-js-react.min.js","mappings":"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","sources":["webpack://brew-js-react/webpack/universalModuleDefinition","webpack://brew-js-react/external umd \"jQuery\"","webpack://brew-js-react/external umd \"waterpipe\"","webpack://brew-js-react/external umd \"zeta-dom-react\"","webpack://brew-js-react/external umd {\"commonjs\":\"brew-js\",\"commonjs2\":\"brew-js\",\"amd\":\"brew-js\",\"root\":\"brew\"}","webpack://brew-js-react/external umd {\"commonjs\":\"react\",\"commonjs2\":\"react\",\"amd\":\"react\",\"root\":\"React\"}","webpack://brew-js-react/external umd {\"commonjs\":\"react-dom\",\"commonjs2\":\"react-dom\",\"amd\":\"react-dom\",\"root\":\"ReactDOM\"}","webpack://brew-js-react/external umd {\"commonjs\":\"zeta-dom\",\"commonjs2\":\"zeta-dom\",\"amd\":\"zeta-dom\",\"root\":\"zeta\"}","webpack://brew-js-react/./src/include/external/jquery.js","webpack://brew-js-react/./src/include/external/waterpipe.js","webpack://brew-js-react/webpack/bootstrap","webpack://brew-js-react/webpack/runtime/define property getters","webpack://brew-js-react/webpack/runtime/hasOwnProperty shorthand","webpack://brew-js-react/webpack/runtime/make namespace object","webpack://brew-js-react/./tmp/brew-js/app.js","webpack://brew-js-react/./src/include/brew-js/app.js","webpack://brew-js-react/./tmp/zeta-dom/util.js","webpack://brew-js-react/./tmp/zeta-dom/domUtil.js","webpack://brew-js-react/./tmp/zeta-dom/dom.js","webpack://brew-js-react/./src/include/zeta-dom/dom.js","webpack://brew-js-react/./tmp/brew-js/domAction.js","webpack://brew-js-react/./src/dialog.js","webpack://brew-js-react/./tmp/brew-js/defaults.js","webpack://brew-js-react/./src/include/brew-js/defaults.js","webpack://brew-js-react/./src/app.js","webpack://brew-js-react/./src/hooks.js","webpack://brew-js-react/./src/i18n.js","webpack://brew-js-react/./src/mixins/StaticAttributeMixin.js","webpack://brew-js-react/./src/mixins/Mixin.js","webpack://brew-js-react/./src/mixins/StatefulMixin.js","webpack://brew-js-react/./src/mixins/ClassNameMixin.js","webpack://brew-js-react/./src/mixins/AnimateMixin.js","webpack://brew-js-react/./src/mixins/AnimateSequenceItemMixin.js","webpack://brew-js-react/./src/mixins/AnimateSequenceMixin.js","webpack://brew-js-react/./tmp/zeta-dom/events.js","webpack://brew-js-react/./src/mixins/ErrorHandlerMixin.js","webpack://brew-js-react/./src/mixins/FlyoutToggleMixin.js","webpack://brew-js-react/./src/mixins/FlyoutMixin.js","webpack://brew-js-react/./src/mixins/FocusStateMixin.js","webpack://brew-js-react/./src/mixins/LoadingStateMixin.js","webpack://brew-js-react/./src/mixins/ScrollableMixin.js","webpack://brew-js-react/./src/mixin.js","webpack://brew-js-react/./tmp/brew-js/anim.js","webpack://brew-js-react/./src/view.js","webpack://brew-js-react/./src/index.js","webpack://brew-js-react/./src/entry.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"brew-js\"), require(\"react\"), require(\"react-dom\"), require(\"zeta-dom\"), require(\"zeta-dom-react\"), require(\"waterpipe\"), require(\"jQuery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"brew-js-react\", [\"brew-js\", \"react\", \"react-dom\", \"zeta-dom\", \"zeta-dom-react\", \"waterpipe\", \"jQuery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"brew-js-react\"] = factory(require(\"brew-js\"), require(\"react\"), require(\"react-dom\"), require(\"zeta-dom\"), require(\"zeta-dom-react\"), require(\"waterpipe\"), require(\"jQuery\"));\n\telse\n\t\troot[\"brew-js-react\"] = factory(root[\"brew\"], root[\"React\"], root[\"ReactDOM\"], root[\"zeta\"], root[\"zeta-dom-react\"], root[\"waterpipe\"], root[\"jQuery\"]);\n})(self, function(__WEBPACK_EXTERNAL_MODULE__80__, __WEBPACK_EXTERNAL_MODULE__359__, __WEBPACK_EXTERNAL_MODULE__318__, __WEBPACK_EXTERNAL_MODULE__654__, __WEBPACK_EXTERNAL_MODULE__103__, __WEBPACK_EXTERNAL_MODULE__28__, __WEBPACK_EXTERNAL_MODULE__145__) {\nreturn ","module.exports = __WEBPACK_EXTERNAL_MODULE__145__;","module.exports = __WEBPACK_EXTERNAL_MODULE__28__;","module.exports = __WEBPACK_EXTERNAL_MODULE__103__;","module.exports = __WEBPACK_EXTERNAL_MODULE__80__;","module.exports = __WEBPACK_EXTERNAL_MODULE__359__;","module.exports = __WEBPACK_EXTERNAL_MODULE__318__;","module.exports = __WEBPACK_EXTERNAL_MODULE__654__;","/// <reference types=\"jq-scrollable\" />\r\n// @ts-nocheck\r\n\r\n/** @type {JQueryStatic} */\r\nconst jQuery = window.jQuery || require('jquery');\r\nmodule.exports = jQuery;\r\n","// @ts-nocheck\r\n\r\n/** @type {Waterpipe} */\r\nconst waterpipe = window.waterpipe || require('waterpipe');\r\nmodule.exports = waterpipe;\r\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import lib from \"brew-js\";const _defaultExport = lib; export default _defaultExport;const { install, addExtension, addDetect } = lib; export { install, addExtension, addDetect };","import brew from \"brew-js/app\";\r\nexport * from \"brew-js/app\";\r\nexport default brew;\r\n","import lib from \"zeta-dom\";const { noop, either, is, isUndefinedOrNull, isArray, isFunction, isThenable, isPlainObject, isArrayLike, makeArray, extend, each, map, grep, splice, any, single, kv, pick, exclude, mapGet, mapRemove, arrRemove, setAdd, equal, combineFn, executeOnce, createPrivateStore, setTimeout, setTimeoutOnce, setInterval, setIntervalSafe, setImmediate, setImmediateOnce, throwNotFunction, errorWithCode, keys, values, hasOwnProperty, getOwnPropertyDescriptors, define, definePrototype, defineOwnProperty, defineGetterProperty, defineHiddenProperty, defineAliasProperty, defineObservableProperty, watch, watchOnce, watchable, inherit, deepFreeze, iequal, randomId, repeat, camel, hyphenate, ucfirst, lcfirst, trim, matchWord, htmlDecode, resolve, reject, always, resolveAll, catchAsync, setPromiseTimeout } = lib.util; export { noop, either, is, isUndefinedOrNull, isArray, isFunction, isThenable, isPlainObject, isArrayLike, makeArray, extend, each, map, grep, splice, any, single, kv, pick, exclude, mapGet, mapRemove, arrRemove, setAdd, equal, combineFn, executeOnce, createPrivateStore, setTimeout, setTimeoutOnce, setInterval, setIntervalSafe, setImmediate, setImmediateOnce, throwNotFunction, errorWithCode, keys, values, hasOwnProperty, getOwnPropertyDescriptors, define, definePrototype, defineOwnProperty, defineGetterProperty, defineHiddenProperty, defineAliasProperty, defineObservableProperty, watch, watchOnce, watchable, inherit, deepFreeze, iequal, randomId, repeat, camel, hyphenate, ucfirst, lcfirst, trim, matchWord, htmlDecode, resolve, reject, always, resolveAll, catchAsync, setPromiseTimeout };","import lib from \"zeta-dom\";const { domReady, tagName, isVisible, matchSelector, comparePosition, connected, containsOrEquals, acceptNode, combineNodeFilters, iterateNode, iterateNodeToArray, getCommonAncestor, parentsAndSelf, selectIncludeSelf, selectClosestRelative, createNodeIterator, createTreeWalker, bind, bindUntil, dispatchDOMMouseEvent, removeNode, getClass, setClass, getScrollOffset, getScrollParent, getContentRect, scrollBy, scrollIntoView, makeSelection, getRect, getRects, toPlainRect, rectEquals, rectCovers, rectIntersects, pointInRect, mergeRect, elementFromPoint } = lib.util; export { domReady, tagName, isVisible, matchSelector, comparePosition, connected, containsOrEquals, acceptNode, combineNodeFilters, iterateNode, iterateNodeToArray, getCommonAncestor, parentsAndSelf, selectIncludeSelf, selectClosestRelative, createNodeIterator, createTreeWalker, bind, bindUntil, dispatchDOMMouseEvent, removeNode, getClass, setClass, getScrollOffset, getScrollParent, getContentRect, scrollBy, scrollIntoView, makeSelection, getRect, getRects, toPlainRect, rectEquals, rectCovers, rectIntersects, pointInRect, mergeRect, elementFromPoint };","import lib from \"zeta-dom\";const _defaultExport = lib.dom; export default _defaultExport;const { textInputAllowed, beginDrag, beginPinchZoom, getShortcut, setShortcut, focusable, focused, setModal, releaseModal, retainFocus, releaseFocus, iterateFocusPath, focus } = lib.dom; export { textInputAllowed, beginDrag, beginPinchZoom, getShortcut, setShortcut, focusable, focused, setModal, releaseModal, retainFocus, releaseFocus, iterateFocusPath, focus };","import dom from \"zeta-dom/dom\";\r\nexport * from \"zeta-dom/dom\";\r\nexport default dom;\r\n","import lib from \"brew-js\";const { addAsyncAction, closeFlyout, openFlyout } = lib; export { addAsyncAction, closeFlyout, openFlyout };","import React, { useEffect, useState } from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\nimport { always, either, extend, noop } from \"./include/zeta-dom/util.js\";\r\nimport { containsOrEquals, removeNode } from \"./include/zeta-dom/domUtil.js\";\r\nimport dom from \"./include/zeta-dom/dom.js\";\r\nimport { closeFlyout, openFlyout } from \"./include/brew-js/domAction.js\";\r\n\r\n/**\r\n * @param {Partial<import(\"./dialog\").DialogOptions<any>>} props\r\n */\r\nexport function createDialog(props) {\r\n var root = document.createElement('div');\r\n var closing = false;\r\n var promise;\r\n\r\n function closeDialog(value) {\r\n if (!closing) {\r\n closing = true;\r\n closeFlyout(root, value).then(function () {\r\n closing = false;\r\n removeNode(root);\r\n (props.onClose || noop)(root);\r\n if (props.onRender) {\r\n ReactDOM.unmountComponentAtNode(root);\r\n }\r\n });\r\n }\r\n }\r\n\r\n return {\r\n root: root,\r\n close: closeDialog,\r\n open: function () {\r\n if (promise) {\r\n return promise;\r\n }\r\n root.className = props.className || '';\r\n document.body.appendChild(root);\r\n dom.retainFocus(dom.activeElement, root);\r\n if (props.modal) {\r\n root.setAttribute('is-modal', '');\r\n dom.setModal(root);\r\n }\r\n if (props.onRender) {\r\n ReactDOM.render(React.createElement(props.onRender, extend({ closeDialog }, props)), root);\r\n }\r\n\r\n promise = openFlyout(root);\r\n always(promise, function () {\r\n promise = null;\r\n });\r\n promise.then(props.onCommit);\r\n (props.onOpen || noop)(root);\r\n return promise;\r\n }\r\n };\r\n}\r\n\r\n/**\r\n * @param {import(\"./dialog\").DialogProps} props\r\n */\r\nexport function Dialog(props) {\r\n const _props = useState(props)[0];\r\n const dialog = useState(function () {\r\n return createDialog(_props);\r\n })[0];\r\n extend(_props, props);\r\n\r\n useEffect(function () {\r\n var opened = containsOrEquals(dom.root, dialog.root);\r\n if (either(opened, _props.isOpen)) {\r\n if (!opened) {\r\n dialog.open();\r\n } else {\r\n dialog.close();\r\n }\r\n }\r\n }, [_props.isOpen])\r\n useEffect(function () {\r\n return dialog.close;\r\n }, [dialog]);\r\n return ReactDOM.createPortal(props.children, dialog.root);\r\n}\r\n","import lib from \"brew-js\";const _defaultExport = lib.defaults; export default _defaultExport;","import defaults from \"brew-js/defaults\";\r\nexport default defaults;\r\n","import { install } from \"./include/brew-js/app.js\";\r\nimport defaults from \"./include/brew-js/defaults.js\";\r\n\r\n/** @type {Brew.AppInstance<Brew.WithRouter & Brew.WithI18n>} */\r\nexport var app;\r\n\r\ninstall('react', function (app_) {\r\n // @ts-ignore: type inference issue\r\n app = app_;\r\n});\r\n\r\ndefaults.react = true;\r\n","import { useEffect, useState } from \"react\";\r\nimport { extend, kv } from \"./include/zeta-dom/util.js\";\r\nimport { app } from \"./app.js\";\r\n\r\nexport function useAppReady() {\r\n const sReady = useState(false);\r\n const ready = sReady[0], setReady = sReady[1];\r\n useEffect(function () {\r\n app.ready.then(function () {\r\n setReady(true);\r\n });\r\n }, []);\r\n return ready;\r\n}\r\n\r\nexport function useRouteParam(name, defaultValue) {\r\n const sValue = useState(app.route[name]);\r\n const value = sValue[0], setValue = sValue[1];\r\n useEffect(function () {\r\n var current = app.route[name];\r\n // route parameter might be changed after state initialization and before useEffect hook is called\r\n setValue(current);\r\n return app.route.watch(name, setValue);\r\n }, [name, defaultValue]);\r\n if (!value && defaultValue !== undefined) {\r\n app.navigate(app.route.getPath(extend({}, app.route, kv(name, defaultValue))), true);\r\n }\r\n return value || '';\r\n}\r\n","import { useObservableProperty } from \"zeta-dom-react\";\r\nimport waterpipe from \"./include/external/waterpipe.js\"\r\nimport { extend, makeArray, single } from \"./include/zeta-dom/util.js\";\r\nimport { app } from \"./app.js\";\r\n\r\nconst empty = Object.create(null);\r\nconst toPrimitive = typeof Symbol === 'function' && Symbol.toPrimitive;\r\n\r\nfunction TString(toString) {\r\n this.toString = toString;\r\n}\r\n\r\nif (toPrimitive) {\r\n TString.prototype[toPrimitive] = function () {\r\n return this.toString();\r\n };\r\n}\r\n\r\nfunction createCallback(translate) {\r\n var callback = function (key, data) {\r\n return translate(key, data, true);\r\n };\r\n return extend(callback, {\r\n html: function (id, data) {\r\n return { __html: translate(id, data) };\r\n },\r\n lazy: function (id, data) {\r\n return new TString(translate.bind(0, id, data, true));\r\n }\r\n });\r\n}\r\n\r\nexport function useLanguage() {\r\n return useObservableProperty(app, 'language');\r\n}\r\n\r\nexport function makeTranslation(resources, defaultLang) {\r\n const re = new RegExp('^(' + Object.keys(resources[defaultLang]).join('|') + ')\\\\.');\r\n const cache = {};\r\n\r\n function getTranslation(prefix, name, data, noEncode) {\r\n var str = ((resources[app.language] || empty)[prefix] || empty)[name] || ((resources[defaultLang] || empty)[prefix] || empty)[name] || '';\r\n if (str && (!noEncode || data !== undefined)) {\r\n return waterpipe(str, data, { noEncode });\r\n }\r\n return str;\r\n }\r\n\r\n function translate(key, data, noEncode) {\r\n var prefix = re.test(key) ? RegExp.$1 : '';\r\n var name = prefix ? key.slice(RegExp.lastMatch.length) : key;\r\n return getTranslation(prefix, name, data, noEncode) || key;\r\n }\r\n\r\n function useTranslation() {\r\n var prefix = makeArray(arguments);\r\n var language = useLanguage();\r\n var t = translate;\r\n if (prefix[0]) {\r\n var key = prefix.join(' ');\r\n t = cache[key] || (cache[key] = createCallback(function (key, data, noEncode) {\r\n return single(prefix, function (v) {\r\n return getTranslation(v, key, data, noEncode);\r\n }) || key;\r\n }));\r\n }\r\n return { language, t };\r\n }\r\n\r\n return {\r\n translate: createCallback(translate),\r\n useTranslation\r\n };\r\n}\r\n","import { definePrototype, extend } from \"../include/zeta-dom/util.js\";\r\nimport Mixin from \"./Mixin.js\";\r\n\r\nexport default function StaticAttributeMixin(attributes) {\r\n Mixin.call(this);\r\n this.attributes = attributes || {};\r\n}\r\n\r\ndefinePrototype(StaticAttributeMixin, Mixin, {\r\n getCustomAttributes: function () {\r\n return extend({}, this.attributes);\r\n }\r\n});\r\n","import { classNames } from \"zeta-dom-react\";\r\nimport { combineFn, define, definePrototype, each, extend, makeArray, noop, watchable } from \"../include/zeta-dom/util.js\";\r\nimport StaticAttributeMixin from \"./StaticAttributeMixin.js\";\r\n\r\nexport default function Mixin() {\r\n}\r\n\r\ndefinePrototype(Mixin, {\r\n next: function () {\r\n },\r\n getRef: function () {\r\n return noop;\r\n },\r\n getClassNames: function () {\r\n return [];\r\n },\r\n getCustomAttributes: function () {\r\n return {};\r\n }\r\n});\r\nwatchable(Mixin.prototype);\r\n\r\ndefine(Mixin, {\r\n get scrollableTarget() {\r\n return new StaticAttributeMixin({ 'scrollable-target': '' });\r\n },\r\n use: function () {\r\n const args = makeArray(arguments);\r\n const ref = args[0];\r\n const props = {};\r\n const mixins = args.filter(function (v) {\r\n return v instanceof Mixin;\r\n });\r\n const refs = mixins.map(function (v) {\r\n return v.getRef();\r\n });\r\n if (ref && !(ref instanceof Mixin)) {\r\n if (typeof ref !== 'function') {\r\n refs.push(function (v) {\r\n ref.current = v;\r\n });\r\n } else {\r\n refs.push(ref);\r\n }\r\n args.shift();\r\n } else if (!ref) {\r\n args.shift();\r\n }\r\n each(mixins, function (i, v) {\r\n extend(props, v.getCustomAttributes());\r\n });\r\n extend(props, {\r\n ref: combineFn(refs),\r\n className: classNames.apply(null, args)\r\n });\r\n each(mixins, function (i, v) {\r\n v.next();\r\n });\r\n return props;\r\n }\r\n});\r\n","import { createPrivateStore, definePrototype, inherit, randomId, values } from \"../include/zeta-dom/util.js\";\r\nimport Mixin from \"./Mixin.js\";\r\n\r\nconst _ = createPrivateStore();\r\n\r\nfunction MixinRefImpl(mixin) {\r\n this.mixin = mixin;\r\n}\r\n\r\ndefinePrototype(MixinRefImpl, {\r\n getMixin: function () {\r\n return this.mixin;\r\n }\r\n});\r\n\r\nexport default function StatefulMixin() {\r\n Mixin.call(this);\r\n _(this, {\r\n states: {},\r\n prefix: '',\r\n counter: 0\r\n });\r\n}\r\n\r\ndefinePrototype(StatefulMixin, Mixin, {\r\n get ref() {\r\n const self = this;\r\n const state = self.state;\r\n self.next();\r\n return state.ref || (state.ref = new MixinRefImpl(self.clone()));\r\n },\r\n get state() {\r\n const obj = _(this);\r\n const key = obj.prefix + obj.counter;\r\n return obj.states[key] || (obj.states[key] = this.initState());\r\n },\r\n reset: function () {\r\n _(this).counter = 0;\r\n return this;\r\n },\r\n next: function () {\r\n _(this).counter++;\r\n return this;\r\n },\r\n getRef: function () {\r\n const self = this;\r\n const state = self.state;\r\n return function (current) {\r\n if (current && current !== state.element) {\r\n state.element = current;\r\n self.initElement(current, state);\r\n }\r\n };\r\n },\r\n elements: function () {\r\n return values(_(this).states).map(function (v) {\r\n return v.element;\r\n }).filter(function (v) {\r\n return v;\r\n });\r\n },\r\n initState: function () {\r\n return { element: null };\r\n },\r\n initElement: function (element, state) {\r\n },\r\n clone: function () {\r\n const clone = inherit(Object.getPrototypeOf(this));\r\n _(clone, {\r\n states: _(this).states,\r\n prefix: randomId() + '.',\r\n counter: 0\r\n });\r\n return clone;\r\n }\r\n});\r\n","import { definePrototype, each, equal, extend } from \"../include/zeta-dom/util.js\";\r\nimport { containsOrEquals } from \"../include/zeta-dom/domUtil.js\";\r\nimport dom from \"../include/zeta-dom/dom.js\";\r\nimport StatefulMixin from \"./StatefulMixin.js\";\r\n\r\nconst ClassNameMixinSuper = StatefulMixin.prototype;\r\n\r\nfunction checkState(self, element, state, isAsync) {\r\n var classNames = state.classNames;\r\n var prev = extend({}, classNames);\r\n each(self.classNames, function (i, v) {\r\n classNames[v] = element.classList.contains(v);\r\n });\r\n if (!equal(prev, classNames)) {\r\n var cb = self.onClassNameUpdated.bind(self, element, prev, extend({}, classNames));\r\n if (isAsync) {\r\n setImmediate(cb);\r\n } else {\r\n cb();\r\n }\r\n }\r\n}\r\n\r\nexport default function ClassNameMixin(classNames) {\r\n StatefulMixin.call(this);\r\n this.classNames = classNames || [];\r\n}\r\n\r\ndefinePrototype(ClassNameMixin, StatefulMixin, {\r\n getClassNames: function () {\r\n return [this.state.classNames];\r\n },\r\n getRef: function () {\r\n var self = this;\r\n var element = self.state.element;\r\n if (element && containsOrEquals(root, element)) {\r\n checkState(self, element, self.state, true);\r\n }\r\n return ClassNameMixinSuper.getRef.call(this);\r\n },\r\n initState: function () {\r\n return {\r\n element: null,\r\n classNames: {}\r\n };\r\n },\r\n initElement: function (element, state) {\r\n var self = this;\r\n dom.watchAttributes(element, ['class'], function (nodes) {\r\n if (nodes.includes(element)) {\r\n checkState(self, element, state);\r\n }\r\n });\r\n },\r\n clone: function () {\r\n return extend(ClassNameMixinSuper.clone.call(this), { classNames: this.classNames });\r\n },\r\n onClassNameUpdated: function (element, prevState, state) {\r\n }\r\n});\r\n","import { definePrototype, extend, makeArray } from \"../include/zeta-dom/util.js\";\r\nimport ClassNameMixin from \"./ClassNameMixin.js\";\r\n\r\nconst AnimateMixinSuper = ClassNameMixin.prototype;\r\n\r\nexport default function AnimateMixin() {\r\n ClassNameMixin.call(this, ['tweening-in', 'tweening-out']);\r\n}\r\n\r\ndefinePrototype(AnimateMixin, ClassNameMixin, {\r\n next: function () {\r\n var self = this;\r\n self.effects = undefined;\r\n self.trigger = undefined;\r\n return AnimateMixinSuper.next.call(self);\r\n },\r\n with: function (props) {\r\n var self = this;\r\n self.effects = props.effects;\r\n self.trigger = props.trigger;\r\n return self;\r\n },\r\n withEffects: function () {\r\n this.effects = makeArray(arguments);\r\n return this;\r\n },\r\n getCustomAttributes: function () {\r\n var self = this;\r\n return extend({}, AnimateMixinSuper.getCustomAttributes.call(self), {\r\n 'animate-in': (self.effects || []).join(' '),\r\n 'animate-on': self.trigger || 'show'\r\n });\r\n }\r\n});\r\n","import { definePrototype } from \"../include/zeta-dom/util.js\";\r\nimport ClassNameMixin from \"./ClassNameMixin.js\";\r\n\r\nconst AnimateSequenceItemMixinSuper = ClassNameMixin.prototype;\r\n\r\nexport default function AnimateSequenceItemMixin(className) {\r\n ClassNameMixin.call(this, ['tweening-in', 'tweening-out']);\r\n this.className = className;\r\n}\r\n\r\ndefinePrototype(AnimateSequenceItemMixin, ClassNameMixin, {\r\n getClassNames: function () {\r\n return [this.className].concat(AnimateSequenceItemMixinSuper.getClassNames.call(this));\r\n }\r\n});\r\n","import { definePrototype, extend } from \"../include/zeta-dom/util.js\";\r\nimport AnimateMixin from \"./AnimateMixin.js\";\r\nimport AnimateSequenceItemMixin from \"./AnimateSequenceItemMixin.js\";\r\n\r\nconst AnimateSequenceMixinSuper = AnimateMixin.prototype;\r\nvar animateSequenceMixinCounter = 0;\r\n\r\nexport default function AnimateSequenceMixin() {\r\n var self = this;\r\n AnimateMixin.call(self);\r\n self.className = 'brew-anim-' + (++animateSequenceMixinCounter);\r\n self.item = new AnimateSequenceItemMixin(self.className);\r\n}\r\n\r\ndefinePrototype(AnimateSequenceMixin, AnimateMixin, {\r\n reset: function () {\r\n this.item.reset();\r\n return AnimateSequenceMixinSuper.reset.call(this);\r\n },\r\n getCustomAttributes: function () {\r\n return extend({}, AnimateSequenceMixinSuper.getCustomAttributes.call(this), {\r\n 'animate-sequence': '.' + this.className\r\n });\r\n },\r\n clone: function () {\r\n return extend(AnimateSequenceMixinSuper.clone.call(this), {\r\n item: this.item.ref.getMixin()\r\n });\r\n }\r\n});\r\n","import lib from \"zeta-dom\";const { EventContainer: ZetaEventContainer } = lib; export { ZetaEventContainer };","import dom from \"../include/zeta-dom/dom.js\";\r\nimport { ZetaEventContainer } from \"../include/zeta-dom/events.js\";\r\nimport { definePrototype, is, isFunction } from \"../include/zeta-dom/util.js\";\r\nimport StatefulMixin from \"./StatefulMixin.js\";\r\n\r\nconst ErrorHandlerMixinSuper = StatefulMixin.prototype;\r\nconst emitter = new ZetaEventContainer();\r\n\r\nfunction isErrorMatched(filter, error) {\r\n if (isFunction(filter)) {\r\n return is(error, filter);\r\n }\r\n return error && error.code === filter;\r\n}\r\n\r\nexport default function ErrorHandlerMixin() {\r\n StatefulMixin.call(this);\r\n}\r\n\r\ndefinePrototype(ErrorHandlerMixin, StatefulMixin, {\r\n catch: function (filter, callback) {\r\n if (!callback) {\r\n callback = filter;\r\n filter = null;\r\n }\r\n return emitter.add(this, filter ? 'error' : 'default', function (e) {\r\n if (!filter || isErrorMatched(filter, e.error)) {\r\n return callback(e.error);\r\n }\r\n });\r\n },\r\n initElement: function (element, state) {\r\n var self = this;\r\n ErrorHandlerMixinSuper.initElement.call(self, element, state);\r\n dom.on(element, 'error', function (e) {\r\n var data = { error: e.error };\r\n return emitter.emit('error', self, data) || emitter.emit('default', self, data);\r\n });\r\n }\r\n});\r\n","import { definePrototype, extend } from \"../include/zeta-dom/util.js\";\r\nimport ClassNameMixin from \"./ClassNameMixin.js\";\r\n\r\nconst FlyoutToggleMixinSuper = ClassNameMixin.prototype;\r\n\r\nexport default function FlyoutToggleMixin(mixin) {\r\n ClassNameMixin.call(this, ['target-opened']);\r\n this.flyoutMixin = mixin;\r\n}\r\n\r\ndefinePrototype(FlyoutToggleMixin, ClassNameMixin, {\r\n getCustomAttributes: function () {\r\n var element = this.flyoutMixin.elements()[0];\r\n return extend({}, FlyoutToggleMixinSuper.getCustomAttributes.call(this), {\r\n 'toggle': element && ('#' + element.id)\r\n });\r\n },\r\n clone: function () {\r\n return extend(FlyoutToggleMixinSuper.clone.call(this), { flyoutMixin: this.flyoutMixin });\r\n }\r\n});\r\n","import { defineAliasProperty, definePrototype, each, extend, makeArray } from \"../include/zeta-dom/util.js\";\r\nimport { app } from \"../app.js\";\r\nimport ClassNameMixin from \"./ClassNameMixin.js\";\r\nimport FlyoutToggleMixin from \"./FlyoutToggleMixin.js\";\r\n\r\nconst FlyoutMixinSuper = ClassNameMixin.prototype;\r\nvar flyoutMixinCounter = 0;\r\n\r\nexport default function FlyoutMixin() {\r\n var self = this;\r\n ClassNameMixin.call(self, ['open', 'closing', 'tweening-in', 'tweening-out']);\r\n self.modal = false;\r\n self.isFlyoutOpened = false;\r\n self.animating = false;\r\n self.visible = false;\r\n self.toggle = new FlyoutToggleMixin(self);\r\n}\r\n\r\ndefinePrototype(FlyoutMixin, ClassNameMixin, {\r\n reset: function () {\r\n this.toggle.reset();\r\n return FlyoutMixinSuper.reset.call(this);\r\n },\r\n next: function () {\r\n this.effects = undefined;\r\n return FlyoutMixinSuper.next.call(this);\r\n },\r\n withEffects: function () {\r\n this.effects = makeArray(arguments);\r\n return this;\r\n },\r\n getCustomAttributes: function () {\r\n var self = this;\r\n return extend({}, FlyoutMixinSuper.getCustomAttributes.call(self), {\r\n 'is-flyout': '',\r\n 'swipe-dismiss': self.swipeToDismiss\r\n }, self.modal && {\r\n 'is-modal': ''\r\n }, self.effects && {\r\n 'animate-on': 'open',\r\n 'animate-in': self.effects.join(' '),\r\n 'animate-out': ''\r\n });\r\n },\r\n onOpen: function (callback) {\r\n return this.onToggleState(function (opened) {\r\n if (opened) {\r\n return callback();\r\n }\r\n });\r\n },\r\n onToggleState: function (callback) {\r\n return this.watch('isFlyoutOpened', callback);\r\n },\r\n onVisibilityChanged: function (callback) {\r\n return this.watch('visible', callback);\r\n },\r\n initElement: function (element, state) {\r\n var self = this;\r\n FlyoutMixinSuper.initElement.call(self, element, state);\r\n if (!element.id) {\r\n element.id = 'flyout-' + (++flyoutMixinCounter);\r\n }\r\n app.on(element, {\r\n animationstart: function () {\r\n self.animating = true;\r\n },\r\n animationcomplete: function () {\r\n self.animating = false;\r\n },\r\n }, true);\r\n setImmediate(function () {\r\n each(self.toggle.elements(), function (i, v) {\r\n v.setAttribute('toggle', '#' + element.id);\r\n });\r\n });\r\n },\r\n clone: function () {\r\n var self = this;\r\n var mixin = extend(FlyoutMixinSuper.clone.call(self), {\r\n toggle: self.toggle.ref.getMixin()\r\n });\r\n defineAliasProperty(mixin, 'isFlyoutOpened', self);\r\n defineAliasProperty(mixin, 'modal', self);\r\n return mixin;\r\n },\r\n onClassNameUpdated: function (element, prevState, state) {\r\n var self = this;\r\n self.visible = state.open;\r\n self.isFlyoutOpened = state.open && !state.closing && !state['tweening-out'];\r\n }\r\n});\r\n","import { definePrototype } from \"../include/zeta-dom/util.js\";\r\nimport { setClass } from \"../include/zeta-dom/domUtil.js\";\r\nimport dom from \"../include/zeta-dom/dom.js\";\r\nimport StatefulMixin from \"./StatefulMixin.js\";\r\n\r\nconst FocusStateMixinSuper = StatefulMixin.prototype;\r\n\r\nexport default function FocusStateMixin() {\r\n StatefulMixin.call(this);\r\n}\r\n\r\ndefinePrototype(FocusStateMixin, StatefulMixin, {\r\n initElement: function (element, state) {\r\n FocusStateMixinSuper.initElement.call(this, element, state);\r\n dom.on(element, {\r\n focusin: function () {\r\n state.focused = true;\r\n setClass(element, 'focused', true);\r\n },\r\n focusout: function () {\r\n state.focused = false;\r\n setClass(element, 'focused', false);\r\n }\r\n });\r\n },\r\n getClassNames: function () {\r\n return [{ focused: !!this.state.focused }];\r\n }\r\n});\r\n","import { definePrototype } from \"../include/zeta-dom/util.js\";\r\nimport { setClass } from \"../include/zeta-dom/domUtil.js\";\r\nimport dom from \"../include/zeta-dom/dom.js\";\r\nimport StatefulMixin from \"./StatefulMixin.js\";\r\n\r\nconst LoadingStateMixinSuper = StatefulMixin.prototype;\r\n\r\nexport default function LoadingStateMixin() {\r\n StatefulMixin.call(this);\r\n}\r\n\r\ndefinePrototype(LoadingStateMixin, StatefulMixin, {\r\n initElement: function (element, state) {\r\n LoadingStateMixinSuper.initElement.call(this, element, state);\r\n dom.on(element, {\r\n asyncStart: function () {\r\n state.loading = true;\r\n setClass(element, 'loading', true);\r\n },\r\n asyncEnd: function () {\r\n state.loading = false;\r\n setClass(element, 'loading', false);\r\n },\r\n cancelled: function () {\r\n state.loading = false;\r\n setClass(element, 'loading', false);\r\n }\r\n });\r\n },\r\n getClassNames: function () {\r\n return [{ loading: !!this.state.loading }];\r\n }\r\n});\r\n","import $ from \"../include/external/jquery.js\";\r\nimport { defineAliasProperty, defineHiddenProperty, definePrototype, each, extend, makeArray } from \"../include/zeta-dom/util.js\";\r\nimport { app } from \"../app.js\";\r\nimport Mixin from \"./Mixin.js\";\r\nimport ClassNameMixin from \"./ClassNameMixin.js\";\r\n\r\nconst ScrollableMixinSuper = ClassNameMixin.prototype;\r\n\r\nexport default function ScrollableMixin() {\r\n var self = this;\r\n ClassNameMixin.call(self, ['scrollable-x', 'scrollable-x-l', 'scrollable-x-r', 'scrollable-y', 'scrollable-y-d', 'scrollable-y-u']);\r\n self.target = Mixin.scrollableTarget;\r\n self.pageIndex = 0;\r\n self.scrolling = false;\r\n}\r\n\r\ndefinePrototype(ScrollableMixin, ClassNameMixin, {\r\n withOptions: function (options) {\r\n this.options = options;\r\n return this;\r\n },\r\n getCustomAttributes: function () {\r\n var options = this.options || {};\r\n return extend({}, ScrollableMixinSuper.getCustomAttributes.call(this), {\r\n 'scrollable': [options.direction || 'both', options.handle || 'auto'].join(' '),\r\n }, options.paged && {\r\n 'var': '{ pageIndex: 0 }',\r\n 'scroller-snap-page': options.paged,\r\n 'scroller-page': options.pagedItemSelector,\r\n 'scroller-state': 'pageIndex'\r\n });\r\n },\r\n onPageIndexChanged: function (callback) {\r\n return this.watch('pageIndex', callback);\r\n },\r\n initElement: function (element, state) {\r\n var self = this;\r\n app.on(element, {\r\n statechange: function (e) {\r\n if ('pageIndex' in e.newValues) {\r\n extend(self, { pageIndex: e.newValues.pageIndex });\r\n }\r\n },\r\n scrollStart: function() {\r\n self.scrolling = true;\r\n },\r\n scrollStop: function() {\r\n self.scrolling = false;\r\n }\r\n }, true);\r\n },\r\n clone: function () {\r\n var mixin = ScrollableMixinSuper.clone.call(this);\r\n defineAliasProperty(mixin, 'pageIndex', this);\r\n return mixin;\r\n }\r\n});\r\n\r\neach('destroy enable disable setOptions refresh scrollPadding stop scrollLeft scrollTop scrollBy scrollTo scrollByPage scrollToPage scrollToElement', function (i, v) {\r\n defineHiddenProperty(ScrollableMixin.prototype, v, function () {\r\n var obj = $(this.elements());\r\n return obj.scrollable.apply(obj, [v].concat(makeArray(arguments)));\r\n });\r\n});\r\n","import { useState } from \"react\";\r\nimport { extend } from \"./include/zeta-dom/util.js\";\r\nimport Mixin from \"./mixins/Mixin.js\";\r\nimport AnimateMixin from \"./mixins/AnimateMixin.js\";\r\nimport AnimateSequenceItemMixin from \"./mixins/AnimateSequenceItemMixin.js\";\r\nimport AnimateSequenceMixin from \"./mixins/AnimateSequenceMixin.js\";\r\nimport ClassNameMixin from \"./mixins/ClassNameMixin.js\";\r\nimport ErrorHandlerMixin from \"./mixins/ErrorHandlerMixin.js\";\r\nimport FlyoutMixin from \"./mixins/FlyoutMixin.js\";\r\nimport FlyoutToggleMixin from \"./mixins/FlyoutToggleMixin.js\";\r\nimport FocusStateMixin from \"./mixins/FocusStateMixin.js\";\r\nimport LoadingStateMixin from \"./mixins/LoadingStateMixin.js\";\r\nimport StatefulMixin from \"./mixins/StatefulMixin.js\";\r\nimport ScrollableMixin from \"./mixins/ScrollableMixin.js\";\r\n\r\nfunction extendSelf(options) {\r\n extend(this, options);\r\n}\r\n\r\nfunction createUseFunction(ctor) {\r\n return function () {\r\n var mixin = useMixin(ctor);\r\n (mixin.withOptions || extendSelf).apply(mixin, arguments);\r\n return mixin;\r\n };\r\n}\r\n\r\nexport const useAnimateMixin = createUseFunction(AnimateMixin);\r\nexport const useAnimateSequenceMixin = createUseFunction(AnimateSequenceMixin);\r\nexport const useErrorHandlerMixin = createUseFunction(ErrorHandlerMixin);\r\nexport const useFlyoutMixin = createUseFunction(FlyoutMixin);\r\nexport const useFocusStateMixin = createUseFunction(FocusStateMixin);\r\nexport const useLoadingStateMixin = createUseFunction(LoadingStateMixin);\r\nexport const useScrollableMixin = createUseFunction(ScrollableMixin);\r\n\r\nexport function useMixin(ctor) {\r\n return useState(function () {\r\n return new ctor();\r\n })[0].reset();\r\n}\r\n\r\nexport function useMixinRef(mixin) {\r\n return mixin && mixin.getMixin().reset();\r\n}\r\n\r\nexport {\r\n Mixin,\r\n AnimateMixin,\r\n AnimateSequenceItemMixin,\r\n AnimateSequenceMixin,\r\n ClassNameMixin,\r\n ErrorHandlerMixin,\r\n FlyoutMixin,\r\n FlyoutToggleMixin,\r\n FocusStateMixin,\r\n LoadingStateMixin,\r\n StatefulMixin,\r\n ScrollableMixin\r\n}\r\n","import lib from \"brew-js\";const { animateIn, animateOut, addAnimateIn, addAnimateOut } = lib; export { animateIn, animateOut, addAnimateIn, addAnimateOut };","import React from \"react\";\r\nimport { useAsync } from \"zeta-dom-react\";\r\nimport { any, definePrototype, each, exclude, extend, isFunction, keys, makeArray, noop, pick, randomId, setImmediate } from \"./include/zeta-dom/util.js\";\r\nimport { animateIn, animateOut } from \"./include/brew-js/anim.js\";\r\nimport { app } from \"./app.js\";\r\n\r\nconst routeMap = new Map();\r\nconst usedParams = {};\r\n\r\nlet stateId;\r\n\r\nfunction ViewContainer() {\r\n /** @type {any} */\r\n var self = this;\r\n React.Component.apply(self, arguments);\r\n self.mounted = false;\r\n if (!stateId) {\r\n stateId = history.state;\r\n app.on('navigate', function () {\r\n stateId = history.state;\r\n });\r\n }\r\n self.componentWillUnmount = app.on('navigate', function () {\r\n if (self.mounted && self.getViewComponent()) {\r\n self.forceUpdate();\r\n }\r\n });\r\n}\r\n\r\ndefinePrototype(ViewContainer, React.Component, {\r\n componentDidMount: function () {\r\n this.mounted = true;\r\n },\r\n render: function () {\r\n /** @type {any} */\r\n var self = this;\r\n var V = self.getViewComponent();\r\n if (V && V !== self.currentViewComponent) {\r\n self.currentViewComponent = V;\r\n if (self.currentView && self.currentElement) {\r\n self.prevView = self.currentView;\r\n self.prevElement = self.currentElement;\r\n self.currentElement = undefined;\r\n animateOut(self.prevElement, 'show').then(function () {\r\n self.prevElement = undefined;\r\n self.prevView = undefined;\r\n self.forceUpdate();\r\n });\r\n }\r\n self.currentView = React.createElement(V, {\r\n key: routeMap.get(V).id,\r\n rootProps: self.props.rootProps,\r\n onComponentLoaded: function (element) {\r\n self.currentElement = element;\r\n setImmediate(function () {\r\n return animateIn(element, 'show');\r\n });\r\n }\r\n });\r\n }\r\n return React.createElement(React.Fragment, null, self.prevView, self.currentView);\r\n },\r\n getViewComponent: function () {\r\n var props = this.props;\r\n return any(props.views, isViewMatched) || (history.state === stateId && void redirectTo(props.defaultView));\r\n }\r\n});\r\n\r\nexport function isViewMatched(view) {\r\n var params = routeMap.get(view);\r\n return !!params && false === any(params.matchers, function (v, i) {\r\n var value = app.route[i] || '';\r\n return isFunction(v) ? !v(value) : (v || '') !== value;\r\n });\r\n}\r\n\r\nexport function registerView(factory, routeParams) {\r\n var Component = function (props) {\r\n var Component = useAsync(factory)[0];\r\n return React.createElement('div', extend({}, props.rootProps, {\r\n ref: function (element) {\r\n if (element && Component) {\r\n (props.onComponentLoaded || noop)(element);\r\n }\r\n },\r\n children: Component && React.createElement(Component.default)\r\n }));\r\n };\r\n routeParams = extend({}, routeParams);\r\n each(routeParams, function (i, v) {\r\n usedParams[i] = true;\r\n if (v instanceof RegExp) {\r\n routeParams[i] = v.test.bind(v);\r\n }\r\n });\r\n routeMap.set(Component, {\r\n id: randomId(),\r\n matchCount: keys(routeParams).length,\r\n matchers: routeParams,\r\n params: pick(routeParams, function (v) {\r\n return typeof v === 'string';\r\n })\r\n });\r\n return Component;\r\n}\r\n\r\nexport function renderView() {\r\n var views = makeArray(arguments);\r\n var rootProps = isFunction(views[0]) ? {} : views.shift();\r\n var defaultView = views[0];\r\n views.sort(function (a, b) {\r\n return (routeMap.get(b) || {}).matchCount - (routeMap.get(a) || {}).matchCount;\r\n });\r\n return React.createElement(ViewContainer, { rootProps, views, defaultView });\r\n}\r\n\r\nexport function linkTo(view, params) {\r\n var viewParams = (routeMap.get(view) || {}).params;\r\n var newParams = {};\r\n for (var i in app.route) {\r\n if (viewParams && i in viewParams) {\r\n newParams[i] = viewParams[i];\r\n } else if (params && i in params) {\r\n newParams[i] = params[i];\r\n } else if (!usedParams[i]) {\r\n newParams[i] = app.route[i];\r\n }\r\n }\r\n return app.route.getPath(newParams);\r\n}\r\n\r\nexport function navigateTo(view, params) {\r\n return app.navigate(linkTo(view, params));\r\n}\r\n\r\nexport function redirectTo(view, params) {\r\n return app.navigate(linkTo(view, params), true);\r\n}\r\n","import brew from \"./include/brew-js/app.js\";\r\nexport default brew;\r\n\r\nexport * from \"./dialog.js\";\r\nexport * from \"./hooks.js\";\r\nexport * from \"./i18n.js\";\r\nexport * from \"./mixin.js\";\r\nexport * from \"./view.js\";\r\n","import * as all from \"./index.js\";\r\nexport default all;\r\n"],"names":["root","factory","exports","module","require","define","amd","self","__WEBPACK_EXTERNAL_MODULE__80__","__WEBPACK_EXTERNAL_MODULE__359__","__WEBPACK_EXTERNAL_MODULE__318__","__WEBPACK_EXTERNAL_MODULE__654__","__WEBPACK_EXTERNAL_MODULE__103__","__WEBPACK_EXTERNAL_MODULE__28__","__WEBPACK_EXTERNAL_MODULE__145__","jQuery","window","waterpipe","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","d","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","r","Symbol","toStringTag","value","lib","install","noop","either","is","isFunction","isUndefinedOrNull","isArray","makeArray","isThenable","isPlainObject","isArrayLike","extend","each","any","map","grep","splice","single","kv","pick","equal","exclude","mapGet","mapRemove","arrRemove","setAdd","combineFn","createPrivateStore","executeOnce","setImmediate","setTimeout","setTimeoutOnce","setInterval","setIntervalSafe","keys","setImmediateOnce","throwNotFunction","errorWithCode","values","getOwnPropertyDescriptors","definePrototype","defineHiddenProperty","defineOwnProperty","defineGetterProperty","defineAliasProperty","watchable","defineObservableProperty","watch","watchOnce","inherit","randomId","deepFreeze","iequal","always","repeat","camel","hyphenate","ucfirst","lcfirst","trim","matchWord","htmlDecode","resolve","reject","resolveAll","catchAsync","setPromiseTimeout","containsOrEquals","domReady","tagName","isVisible","matchSelector","comparePosition","connected","removeNode","acceptNode","combineNodeFilters","iterateNode","iterateNodeToArray","getCommonAncestor","parentsAndSelf","selectIncludeSelf","selectClosestRelative","createNodeIterator","createTreeWalker","bind","bindUntil","dispatchDOMMouseEvent","setClass","getClass","getScrollOffset","getScrollParent","getContentRect","scrollBy","scrollIntoView","makeSelection","getRect","getRects","toPlainRect","rectEquals","rectCovers","rectIntersects","pointInRect","mergeRect","elementFromPoint","textInputAllowed","beginDrag","beginPinchZoom","getShortcut","setShortcut","focusable","focused","setModal","releaseModal","retainFocus","releaseFocus","iterateFocusPath","focus","closeFlyout","openFlyout","createDialog","props","promise","document","createElement","closing","closeDialog","then","onClose","onRender","ReactDOM","close","open","className","body","appendChild","dom","modal","setAttribute","React","onCommit","onOpen","Dialog","_props","useState","dialog","useEffect","opened","isOpen","children","app","useAppReady","sReady","ready","setReady","useRouteParam","name","defaultValue","sValue","setValue","current","app_","defaults","empty","create","toPrimitive","TString","toString","this","createCallback","translate","data","html","id","__html","lazy","useLanguage","useObservableProperty","makeTranslation","resources","defaultLang","re","RegExp","join","cache","getTranslation","prefix","noEncode","str","test","$1","slice","lastMatch","length","useTranslation","arguments","language","t","v","StaticAttributeMixin","attributes","Mixin","getCustomAttributes","next","getRef","getClassNames","scrollableTarget","use","args","ref","mixins","filter","refs","shift","push","i","classNames","_","MixinRefImpl","mixin","StatefulMixin","states","counter","getMixin","state","clone","initState","reset","element","initElement","elements","getPrototypeOf","ClassNameMixinSuper","checkState","isAsync","prev","classList","contains","cb","onClassNameUpdated","ClassNameMixin","nodes","includes","prevState","AnimateMixinSuper","AnimateMixin","effects","trigger","with","withEffects","AnimateSequenceItemMixinSuper","AnimateSequenceItemMixin","concat","AnimateSequenceMixinSuper","animateSequenceMixinCounter","AnimateSequenceMixin","item","ZetaEventContainer","ErrorHandlerMixinSuper","emitter","ErrorHandlerMixin","catch","callback","add","e","error","code","isErrorMatched","emit","FlyoutToggleMixinSuper","FlyoutToggleMixin","flyoutMixin","FlyoutMixinSuper","flyoutMixinCounter","FlyoutMixin","isFlyoutOpened","animating","visible","toggle","swipeToDismiss","onToggleState","onVisibilityChanged","animationstart","animationcomplete","FocusStateMixinSuper","FocusStateMixin","focusin","focusout","LoadingStateMixinSuper","LoadingStateMixin","asyncStart","loading","asyncEnd","cancelled","ScrollableMixinSuper","ScrollableMixin","target","pageIndex","scrolling","extendSelf","options","createUseFunction","ctor","useMixin","withOptions","apply","direction","handle","paged","pagedItemSelector","onPageIndexChanged","statechange","newValues","scrollStart","scrollStop","$","scrollable","useAnimateMixin","useAnimateSequenceMixin","useErrorHandlerMixin","useFlyoutMixin","useFocusStateMixin","useLoadingStateMixin","useScrollableMixin","useMixinRef","stateId","animateIn","animateOut","routeMap","Map","usedParams","ViewContainer","mounted","history","componentWillUnmount","getViewComponent","forceUpdate","isViewMatched","view","params","matchers","registerView","routeParams","Component","useAsync","rootProps","onComponentLoaded","set","matchCount","renderView","views","defaultView","sort","a","b","linkTo","viewParams","newParams","navigateTo","redirectTo","componentDidMount","render","V","currentViewComponent","currentView","currentElement","prevView","prevElement"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"brew-js-react.min.js","mappings":"CAAA,SAA2CA,EAAMC,GAC1B,iBAAZC,SAA0C,iBAAXC,OACxCA,OAAOD,QAAUD,EAAQG,QAAQ,WAAYA,QAAQ,SAAUA,QAAQ,aAAcA,QAAQ,YAAaA,QAAQ,kBAAmBA,QAAQ,aAAcA,QAAQ,WAC1I,mBAAXC,QAAyBA,OAAOC,IAC9CD,OAAO,gBAAiB,CAAC,UAAW,QAAS,YAAa,WAAY,iBAAkB,YAAa,UAAWJ,GACtF,iBAAZC,QACdA,QAAQ,iBAAmBD,EAAQG,QAAQ,WAAYA,QAAQ,SAAUA,QAAQ,aAAcA,QAAQ,YAAaA,QAAQ,kBAAmBA,QAAQ,aAAcA,QAAQ,WAE7KJ,EAAK,iBAAmBC,EAAQD,EAAW,KAAGA,EAAY,MAAGA,EAAe,SAAGA,EAAW,KAAGA,EAAK,kBAAmBA,EAAgB,UAAGA,EAAa,QARvJ,CASGO,MAAM,SAASC,EAAiCC,EAAkCC,EAAkCC,EAAkCC,EAAkCC,EAAiCC,GAC5N,M,kCCVAX,EAAOD,QAAUY,G,oBCAjBX,EAAOD,QAAUW,G,qBCAjBV,EAAOD,QAAUU,G,oBCAjBT,EAAOD,QAAUM,G,qBCAjBL,EAAOD,QAAUO,G,qBCAjBN,EAAOD,QAAUQ,G,qBCAjBP,EAAOD,QAAUS,G,cCIjB,IAAMI,EAASC,OAAOD,QAAUX,EAAQ,KACxCD,EAAOD,QAAUa,G,aCFjB,IAAME,EAAYD,OAAOC,WAAab,EAAQ,IAC9CD,EAAOD,QAAUe,ICHbC,EAA2B,GAG/B,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBE,IAAjBD,EACH,OAAOA,EAAanB,QAGrB,IAAIC,EAASe,EAAyBE,GAAY,CAGjDlB,QAAS,IAOV,OAHAqB,EAAoBH,GAAUjB,EAAQA,EAAOD,QAASiB,GAG/ChB,EAAOD,QCpBfiB,EAAoBK,EAAI,CAACtB,EAASuB,KACjC,IAAI,IAAIC,KAAOD,EACXN,EAAoBQ,EAAEF,EAAYC,KAASP,EAAoBQ,EAAEzB,EAASwB,IAC5EE,OAAOC,eAAe3B,EAASwB,EAAK,CAAEI,YAAY,EAAMC,IAAKN,EAAWC,MCJ3EP,EAAoBQ,EAAI,CAACK,EAAKC,IAAUL,OAAOM,UAAUC,eAAeC,KAAKJ,EAAKC,GCClFd,EAAoBkB,EAAKnC,IACH,oBAAXoC,QAA0BA,OAAOC,aAC1CX,OAAOC,eAAe3B,EAASoC,OAAOC,YAAa,CAAEC,MAAO,WAE7DZ,OAAOC,eAAe3B,EAAS,aAAc,CAAEsC,OAAO,K,w4BCLD,QAALC,EAAmC,IAAQC,EAAqCD,EAAAA,QAAAA,EAAAA,aAAAA,EAAAA,UCEjI,U,+BCF2B,EAAoyBA,EAAAA,KAA5xBE,EAAR,EAAQA,KAAYC,GAApB,EAAcC,KAAd,EAAoBD,QAAQE,EAA5B,EAA4BA,GAAgCC,GAA5D,EAAgCC,kBAAhC,EAAmDC,QAAnD,EAA4DF,YAAoDG,GAAhH,EAAwEC,WAAxE,EAAoFC,cAApF,EAAmGC,YAAnG,EAAgHH,WAAWI,EAA3H,EAA2HA,OAAQC,EAAnI,EAAmIA,KAAyBC,GAA5J,EAAyIC,IAAzI,EAA8IC,KAA9I,EAAoJC,OAApJ,EAA4JH,KAAKI,EAAjK,EAAiKA,OAAQC,EAAzK,EAAyKA,GAAIC,EAA7K,EAA6KA,KAAqDC,GAAlO,EAAmLC,QAAnL,EAA4LC,OAA5L,EAAoMC,UAApM,EAA+MC,UAA/M,EAA0NC,OAA1N,EAAkOL,OAAOM,EAAzO,EAAyOA,UAAwBC,GAAjQ,EAAoPC,YAApP,EAAiQD,oBAA8EE,GAA/U,EAAqRC,WAArR,EAAiSC,eAAjS,EAAiTC,YAAjT,EAA8TC,gBAA9T,EAA+UJ,cAAiEK,GAAhZ,EAA6VC,iBAA7V,EAA+WC,iBAA/W,EAAiYC,cAAjY,EAAgZH,MAAMI,EAAtZ,EAAsZA,OAAmD5E,GAAzc,EAA8Z8B,eAA9Z,EAA8a+C,0BAA9a,EAAyc7E,QAAQ8E,EAAjd,EAAidA,gBAAoCC,GAArf,EAAkeC,kBAAle,EAAqfD,sBAAsBE,EAA3gB,EAA2gBA,qBAAsBC,EAAjiB,EAAiiBA,oBAAiEC,GAAlmB,EAAsjBC,yBAAtjB,EAAglBC,MAAhlB,EAAulBC,UAAvlB,EAAkmBH,WAAWI,EAA7mB,EAA6mBA,QAA6BC,GAA1oB,EAAsnBC,WAAtnB,EAAkoBC,OAAloB,EAA0oBF,UAAoGG,GAA9uB,EAAopBC,OAAppB,EAA4pBC,MAA5pB,EAAmqBC,UAAnqB,EAA8qBC,QAA9qB,EAAurBC,QAAvrB,EAAgsBC,KAAhsB,EAAssBC,UAAtsB,EAAitBC,WAAjtB,EAA6tBC,QAA7tB,EAAsuBC,OAAtuB,EAA8uBV,QCA9uB,GDAA,EAAsvBW,WAAtvB,EAAkwBC,WAAlwB,EAA8wBC,kBCA/NpE,EAAAA,MAA9dqE,GAAjF,EAAQC,SAAR,EAAkBC,QAAlB,EAA2BC,UAA3B,EAAsCC,cAAtC,EAAqDC,gBAArD,EAAsEC,UAAtE,EAAiFN,kBAA8OO,GAA/T,EAAmGC,WAAnG,EAA+GC,mBAA/G,EAAmIC,YAAnI,EAAgJC,mBAAhJ,EAAoKC,kBAApK,EAAuLC,eAAvL,EAAuMC,kBAAvM,EAA0NC,sBAA1N,EAAiPC,mBAAjP,EAAqQC,iBAArQ,EAAuRC,KAAvR,EAA6RC,UAA7R,EAAwSC,sBAAxS,EAA+Tb,YAAsBc,GAArV,EAA2UC,SAA3U,EAAqVD,UAArV,EAA+VE,gBAA/V,EAAgXC,gBAAhX,EAAiYC,eAAjY,EAAiZC,SAAjZ,EAA2ZC,eAA3Z,EAA2aC,cAA3a,EAA0bC,QAA1b,EAAmcC,SAAnc,EAA6cC,YAA7c,EAA0dC,WAA1d,EAAseC,WAAte,EAAkfC,eAAlf,EAAkgBC,YAAlgB,EAA+gBC,UAA/gB,EAA0hBC,iBCA1f,QAAT1G,EAAAA,IAAuC,MAAkLA,EAAAA,IAAlL,EAAQ2G,iBAAR,EAA0BC,UAA1B,EAAqCC,eAArC,EAAqDC,YAArD,EAAkEC,YAAlE,EAA+EC,UAA/E,EAA0FC,QAA1F,EAAmGC,SAAnG,EAA6GC,aAA7G,EAA2HC,YAA3H,EAAwIC,aAAxI,EAAsJC,iBAAtJ,EAAwKC,MCEjQ,UCF8EvH,EAAAA,eAApD,IAAwBwH,EAA4BxH,EAAAA,YAAfyH,EAAezH,EAAAA,WCUvE,SAAS0H,EAAaC,GACzB,IAEIC,EAFArK,EAAOsK,SAASC,cAAc,OAC9BC,GAAU,EAGd,SAASC,EAAYjI,GACZgI,IACDA,GAAU,EACVP,EAAYjK,EAAMwC,GAAOkI,MAAK,WAC1BF,GAAU,EACVnD,EAAWrH,IACVoK,EAAMO,SAAWhI,GAAM3C,GACpBoK,EAAMQ,UACNC,EAAAA,uBAAgC7K,OAMhD,MAAO,CACHA,KAAMA,EACN8K,MAAOL,EACPM,KAAM,WACF,OAAIV,IAGJrK,EAAKgL,UAAYZ,EAAMY,WAAa,GACpCV,SAASW,KAAKC,YAAYlL,GAC1BmL,EAAAA,YAAgBA,EAAAA,cAAmBnL,GAC/BoK,EAAMgB,QACNpL,EAAKqL,aAAa,WAAY,IAC9BF,EAAAA,SAAanL,IAEboK,EAAMQ,UACNC,EAAAA,OAAgBS,EAAAA,cAAoBlB,EAAMQ,SAAUtH,EAAO,CAAEmH,YAAAA,GAAeL,IAASpK,GAGzFqK,EAAUH,EAAWlK,GACrBgG,EAAOqE,GAAS,WACZA,EAAU,QAEdA,EAAQK,KAAKN,EAAMmB,WAClBnB,EAAMoB,QAAU7I,GAAM3C,GAChBqK,KAQZ,SAASoB,EAAOrB,GACnB,IAAMsB,GAASC,EAAAA,EAAAA,UAASvB,GAAO,GACzBwB,GAASD,EAAAA,EAAAA,WAAS,WACpB,OAAOxB,EAAauB,MACrB,GAgBH,OAfApI,EAAOoI,EAAQtB,IAEfyB,EAAAA,EAAAA,YAAU,WACN,IAAIC,EAAShF,EAAiBqE,EAAAA,KAAUS,EAAO5L,MAC3C4C,EAAOkJ,EAAQJ,EAAOK,UACjBD,EAGDF,EAAOd,QAFPc,EAAOb,UAKhB,CAACW,EAAOK,UACXF,EAAAA,EAAAA,YAAU,WACN,OAAOD,EAAOd,QACf,CAACc,IACGf,EAAAA,aAAsBT,EAAM4B,SAAUJ,EAAO5L,M,aCjFO,MCC/D,EDDiDyC,EAAAA,SEI1C,IAAIwJ,EAEXvJ,EAAQ,SAAS,SAAUwJ,GAEvBD,EAAMC,KAGVC,EAAAA,OAAiB,ECXU,ICcvBC,EDduB,EAAgE3J,EAAAA,IAA9B4J,GAAlC,EAAQC,KAAR,EAAcC,OAAd,EAAsBC,WAAtB,EAAkCH,aEA3BI,IFAP,EAA+CC,aEAejK,EAAAA,WAA5CkK,GAA4ClK,EAAAA,WDSnFzC,ICTmFyC,EAAAA,aAAAA,EAAAA,cDS5E0I,EAAAA,MACPyB,GAAW,IAAIC,IACfC,GAAa,GACbC,GAAezB,EAAAA,cAAoB1J,OAAOoL,OAAO,CAAEC,QAAQ,KAIjE,SAASC,KAEL,IAAI3M,EAAO4M,KACX7B,EAAAA,UAAAA,MAAsB/K,EAAM6M,WAC5B7M,EAAK8M,SAAU,EACVjB,IACDA,EAAUkB,QAAQC,MAClBtB,EAAAA,GAAO,YAAY,WACfG,EAAUkB,QAAQC,UAG1BhN,EAAKiN,qBAAuBvB,EAAAA,GAAO,YAAY,WACvC1L,EAAK8M,SAAW9M,EAAKkN,oBACrBlN,EAAKmN,iBAiEV,SAASC,KACZ,OAAOrC,EAAAA,WAAiByB,IAGrB,SAASa,GAAcC,GAC1B,IAAIC,EAASlB,GAAS7K,IAAI8L,GAC1B,QAASC,IAAU,IAAUtK,EAAIsK,EAAOC,UAAU,SAAUC,EAAGC,GAC3D,IAAIzL,EAAQyJ,EAAAA,MAAUgC,IAAM,GAC5B,OAAOlL,EAAWiL,IAAMA,EAAExL,IAAUwL,GAAK,MAAQxL,KAIlD,SAAS0L,GAAajO,EAASkO,GAClC,IAAIC,EAAY,SAAUhE,GACtB,IAAImD,GAAQc,EAAAA,EAAAA,UAASpO,GACjBqO,GAAMC,EAAAA,EAAAA,UAIV,OAHIhB,EAAM,IAAMA,EAAM,GAAGiB,SACpBpE,EAAMqE,mBAAqB9L,GAAM2L,EAAII,SAEnCpD,EAAAA,cAAoB,MAAOhI,EAAO,GAAI8G,EAAMuE,UAAW,CAC1DL,IAAKA,EACLtC,SAAUuB,EAAM,IAAMjC,EAAAA,cAAoBiC,EAAM,GAAN,aAkBlD,OAfAY,EAAc7K,EAAO,GAAI6K,GACzB5K,EAAK4K,GAAa,SAAUF,EAAGD,GAC3BlB,GAAWmB,IAAK,EACZD,aAAaY,SACbT,EAAYF,GAAKD,EAAEa,KAAK7G,KAAKgG,OAGrCpB,GAASkC,IAAIV,EAAW,CACpBW,GAAIlJ,IACJmJ,WAAYnK,EAAKsJ,GAAac,OAC9BlB,SAAUI,EACVL,OAAQhK,EAAKqK,GAAa,SAAUH,GAChC,MAAoB,iBAANA,OAGfI,EAGJ,SAASc,KACZ,IAAIC,EAAQjM,EAAUkK,WAClBuB,EAAY5L,EAAWoM,EAAM,IAAM,GAAKA,EAAMC,QAC9CC,EAAcF,EAAM,GAIxB,OAHAA,EAAMG,MAAK,SAAUC,EAAGC,GACpB,OAAQ5C,GAAS7K,IAAIyN,IAAM,IAAIR,YAAcpC,GAAS7K,IAAIwN,IAAM,IAAIP,cAEjE1D,EAAAA,cAAoB4B,GAAe,CAAEyB,UAAAA,EAAWQ,MAAAA,EAAOE,YAAAA,IAG3D,SAASI,GAAO5B,EAAMC,GACzB,IAAI4B,GAAc9C,GAAS7K,IAAI8L,IAAS,IAAIC,OACxC6B,EAAY,GAChB,IAAK,IAAI1B,KAAKhC,EAAAA,MACNyD,GAAczB,KAAKyB,EACnBC,EAAU1B,GAAKyB,EAAWzB,GACnBH,GAAUG,KAAKH,EACtB6B,EAAU1B,GAAKH,EAAOG,GACdnB,GAAWmB,KACnB0B,EAAU1B,GAAKhC,EAAAA,MAAUgC,IAGjC,OAAOhC,EAAAA,MAAAA,QAAkB0D,GAGtB,SAASC,GAAW/B,EAAMC,GAC7B,OAAO7B,EAAAA,SAAawD,GAAO5B,EAAMC,IAG9B,SAAS+B,GAAWhC,EAAMC,GAC7B,OAAO7B,EAAAA,SAAawD,GAAO5B,EAAMC,IAAS,GApI9C3I,EAAgB+H,GAAe5B,EAAAA,UAAiB,CAC5CwE,kBAAmB,WACf3C,KAAKE,SAAU,GAEnB0C,kBAAmB,SAAUvB,GACzBrD,EAAAA,KAAS,QAASgC,KAAK6C,eAAiBhQ,GAAM,CAAEwO,MAAAA,IAAS,IAE7DyB,OAAQ,WAEJ,IACIxJ,EADAlG,EAAO4M,KAEP9C,EAAU,IAAI6F,SAAQ,SAAUC,GAChC1J,EAAU0J,KAEVC,EAAI7P,EAAKkN,mBACb,GAAI2C,GAAKA,IAAM7P,EAAK8P,qBAAsB,CACtC9P,EAAK8P,qBAAuBD,EACxB7P,EAAK+P,aAAe/P,EAAKgQ,iBACzBhQ,EAAKiQ,SAAWjQ,EAAK+P,YACrB/P,EAAKkQ,YAAclQ,EAAKgQ,eACxBhQ,EAAKgQ,oBAAiBjP,EACtBqL,GAAWpM,EAAKkQ,YAAa,QAAQ/F,MAAK,WACtCnK,EAAKkQ,iBAAcnP,EACnBf,EAAKiQ,cAAWlP,EAChBf,EAAKmN,kBAGb,IAAIgD,EAAgB,CAChBhP,IAAKkL,GAAS7K,IAAIqO,GAAGrB,GACrBvM,MAAO,IAEPqL,EAAOvC,EAAAA,cAAoByB,GAAa4D,SAAUD,EAClDpF,EAAAA,cAAoBsF,GAAoB,KACpCtF,EAAAA,cAAoB8E,EAAG,CACnBzB,UAAWpO,EAAK6J,MAAMuE,UACtBF,kBAAmB,SAAUoC,GACzBtQ,EAAKgQ,eAAiBM,EACtBtQ,EAAKyP,cAAgBa,EAAQb,cAC7BxL,GAAa,WAET,OADAiC,IACOgG,GAAUoE,EAAS,gBAI9CzL,EAAqBsL,EAAclO,MAAO,UAAU,WAChD,OAAOjC,EAAK+P,cAAgBzC,KAEhCtN,EAAK+P,YAAczC,OAEnBpH,IAGJ,OADA4F,EAAY9L,EAAKyP,eAAiBhQ,GAAMqK,GACjCiB,EAAAA,cAAoBA,EAAAA,SAAgB,KAAM/K,EAAKiQ,SAAUjQ,EAAK+P,cAEzE7C,iBAAkB,WACd,IAAIrD,EAAQ+C,KAAK/C,MACjB,OAAO5G,EAAI4G,EAAM+E,MAAOvB,KAAmBN,QAAQC,QAAUnB,QAAgByD,GAAWzF,EAAMiF,gBEpFtG,IAAMyB,GAAS,GAEf,SAASC,KACL,OAAOD,GAAOxD,QAAQC,SAAWuD,GAAOxD,QAAQC,OAAS,IAGtD,SAASyD,KACZ,IAAMC,GAAStF,EAAAA,EAAAA,WAAS,GAClBuF,EAAQD,EAAO,GAAIE,EAAWF,EAAO,GAM3C,OALApF,EAAAA,EAAAA,YAAU,WACNI,EAAAA,MAAAA,MAAe,WACXkF,GAAS,QAEd,IACID,EAGJ,SAASE,GAAcC,EAAMC,GAChC,IAAMC,EAAY5D,KACZ6D,EAAQvF,EAAAA,MACRwF,GAAS9F,EAAAA,EAAAA,UAAS6F,EAAMH,IACxB7O,EAAQiP,EAAO,GAAIC,EAAWD,EAAO,GAmB3C,OAlBA5F,EAAAA,EAAAA,YAAU,WACN,IAAI6C,EAAU8C,EAAMH,GAGpB,GADAK,EAAShD,GACL2C,KAAQG,EACR,OAAOA,EAAM9L,MAAM2L,GAAM,SAAU7O,GAC/BgC,GAAa,WACL+M,EAAUtE,QACVyE,EAASlP,SAKzBmP,QAAQnD,MAAM,mBAAqB6C,EAAO,qBAC3C,CAACA,EAAMC,IACL9O,QAA0BlB,IAAjBgQ,GACVrF,EAAAA,SAAauF,EAAMI,QAAQtO,EAAO,GAAIkO,EAAO3N,EAAGwN,EAAMC,MAAiB,GAEpE9O,GAAS,GAGb,SAASqP,GAAcnQ,EAAK4P,GAC/B,IAAMC,EAAY5D,KACZmE,EAAMf,KACNxD,GAAQ5B,EAAAA,EAAAA,UAASjK,KAAOoQ,EAAMA,EAAIpQ,GAAO4P,GAI/C,OAHIC,EAAUtE,SACV6E,EAAIpQ,GAAO6L,EAAM,IAEdA,EAGJ,SAASqD,GAAmBxG,GAC/B,IAAMmH,EAAY5D,KACZoE,GAAWpG,EAAAA,EAAAA,WAAS,WACtB,IAAMqG,EAAQ,GACd,MAAO,CACHC,SAAU,SAAUC,EAAUxQ,GAC1B,IAAIoQ,EAAMf,KACNxD,EAAQyE,EAAME,KAAcF,EAAME,GAAY,CAC9C1P,MAAOsP,EAAIpQ,IAAQoQ,EAAIpQ,GAAKc,MAC5BT,IAAK,WACD,OAAOwL,EAAM/K,OAEjBsM,IAAK,SAAUtM,GACX+K,EAAM/K,MAAQA,KAMtB,OAHI+O,EAAUtE,SACV6E,EAAIpQ,GAAO6L,GAERA,OAGhB,GACH,OAAOhD,EAAAA,EAAAA,eAAc4H,EAAAA,kBAAmB,CAAE3P,MAAOuP,GAAY3H,EAAM4B,U,aC7EjEoG,GAAQxQ,OAAOyQ,OAAO,MACtBC,GAAgC,mBAAXhQ,QAAyBA,OAAOgQ,YAE3D,SAASC,GAAQC,GACbrF,KAAKqF,SAAWA,EASpB,SAASC,GAAeC,GAKpB,OAAOpP,GAJQ,SAAU5B,EAAKiR,GAC1B,IAAIC,EAASF,EAAUhR,EAAKiR,GAAM,GAClC,YAAkBrR,IAAXsR,EAAuBA,EAASlR,IAEnB,CACpBmR,KAAM,SAAU9D,EAAI4D,GAChB,MAAO,CAAEG,OAAQJ,EAAU3D,EAAI4D,KAEnCI,KAAM,SAAUhE,EAAI4D,GAChB,OAAO,IAAIJ,GAAQG,EAAU1K,KAAK,EAAG+G,EAAI4D,GAAM,OAKpD,SAASK,KACZ,OAAOC,EAAAA,EAAAA,uBAAsBhH,EAAK,YAG/B,SAASiH,GAAgBC,EAAWC,GACvC,IAAMC,EAAK,IAAIzE,OAAO,KAAOhN,OAAOiD,KAAKsO,EAAUC,IAAcE,KAAK,KAAO,QACvEtB,EAAQ,GAEd,SAASuB,EAAeC,EAAQnC,EAAMsB,EAAMc,EAAUC,GAClD,IAAIC,IAAQR,EAAUO,IAAStB,IAAOoB,IAAWpB,IAAOf,GACxD,MAAmB,iBAARsC,GACHA,GAASF,QAAqBnS,IAATqR,EAGlBgB,EAFI1S,GAAU0S,EAAKhB,EAAM,CAAEc,SAAAA,IAIlCC,IAASN,EACFG,EAAeC,EAAQnC,EAAMsB,EAAMc,EAAUL,QADxD,EAWJ,SAASQ,IACL,IAAIJ,EAAStQ,EAAUkK,WACnB1L,EAAM8R,EAAOF,KAAK,KACtB,OAAOtB,EAAMtQ,KAASsQ,EAAMtQ,GAAO+Q,IAAe,SAAU/Q,EAAKiR,EAAMc,GACnE,IAAIC,EAAOzH,EAAAA,SACX,OAAOrI,EAAO4P,GAAQ,SAAUxF,GAC5B,OAAOuF,EAAevF,EAAGtM,EAAKiR,EAAMc,EAAUC,UAY1D,OADA1B,EAAM,IAAMS,IAvBZ,SAAmB/Q,EAAKiR,EAAMc,GAC1B,IAAID,EAASH,EAAGxE,KAAKnN,GAAOkN,OAAOiF,GAAK,GAExC,OAAON,EAAeC,EADXA,EAAS9R,EAAIoS,MAAMlF,OAAOmF,UAAU9E,QAAUvN,EACrBiR,EAAMc,EAAUxH,EAAAA,aAqBjD,CACHyG,UAAWV,EAAM,IACjBuB,eAAgBK,EAChBI,eAVJ,WACI,IAAIC,EAAWjB,KACXkB,EAAIN,EAAuBO,MAAM,EAAG/G,WACxC,MAAO,CAAE6G,SAAAA,EAAUC,KCvEZ,SAASE,GAAqBC,GACzCC,GAAMlS,KAAK+K,MACXA,KAAKkH,WAAaA,GAAc,GCDrB,SAASC,MFQpBhC,KACAC,GAAQrQ,UAAUoQ,IAAe,WAC7B,OAAOnF,KAAKqF,aCNpBrN,EAAgBiP,GAAsBE,GAAO,CACzCC,oBAAqB,WACjB,OAAOjR,EAAO,GAAI6J,KAAKkH,eCH/BlP,EAAgBmP,GAAO,CACnBE,KAAM,aAENC,OAAQ,WACJ,OAAO9R,GAEX+R,cAAe,WACX,MAAO,IAEXH,oBAAqB,WACjB,MAAO,MAGf/O,EAAU8O,GAAMpS,WAEhB7B,EAAOiU,GAAO,CACNK,uBACA,OAAO,IAAIP,GAAqB,CAAE,oBAAqB,MAE3DQ,IAAK,WACD,IAAMC,EAAO3R,EAAUkK,WACjBkB,EAAMuG,EAAK,GACXzK,EAAQ,GACR0K,EAASD,EAAKE,QAAO,SAAU/G,GACjC,OAAOA,aAAasG,MAElBU,EAAOF,EAAOrR,KAAI,SAAUuK,GAC9B,OAAOA,EAAEyG,YAwBb,OAtBInG,GAASA,aAAegG,GAShBhG,GACRuG,EAAKzF,SATc,mBAARd,EACP0G,EAAKC,MAAK,SAAUjH,GAChBM,EAAII,QAAUV,KAGlBgH,EAAKC,KAAK3G,GAEduG,EAAKzF,SAIT7L,EAAKuR,GAAQ,SAAU7G,EAAGD,GACtB1K,EAAO8G,EAAO4D,EAAEuG,0BAEpBjR,EAAO8G,EAAO,CACVkE,IAAKjK,EAAU2Q,GACfhK,UAAWkK,EAAAA,WAAAA,MAAiB,KAAML,KAEtCtR,EAAKuR,GAAQ,SAAU7G,EAAGD,GACtBA,EAAEwG,UAECpK,KCvDf,IAAM+K,GAAI7Q,IAEV,SAAS8Q,GAAaC,GAClBlI,KAAKkI,MAAQA,EASF,SAASC,KACpBhB,GAAMlS,KAAK+K,MACXgI,GAAEhI,KAAM,CACJ2D,OAAQ,GACR0C,OAAQ,GACR+B,QAAS,IAXjBpQ,EAAgBiQ,GAAc,CAC1BI,SAAU,WACN,OAAOrI,KAAKkI,SAapBlQ,EAAgBmQ,GAAehB,GAAO,CAC9BhG,UACA,IAAM/N,EAAO4M,KACPI,EAAQhN,EAAKgN,MAEnB,OADAhN,EAAKiU,OACEjH,EAAMe,MAAQf,EAAMe,IAAM,IAAI8G,GAAa7U,EAAKkV,WAEvDlI,YACA,IAAMvL,EAAMmT,GAAEhI,MACRzL,EAAMM,EAAIwR,OAASxR,EAAIuT,QAC7B,OAAOvT,EAAI8O,OAAOpP,KAASM,EAAI8O,OAAOpP,GAAOyL,KAAKuI,cAEtDC,MAAO,WAEH,OADAR,GAAEhI,MAAMoI,QAAU,EACXpI,MAEXqH,KAAM,WAEF,OADAW,GAAEhI,MAAMoI,UACDpI,MAEXsH,OAAQ,WACJ,IAAMlU,EAAO4M,KACPI,EAAQhN,EAAKgN,MACnB,OAAO,SAAUmB,GACTA,GAAWA,IAAYnB,EAAMsD,UAC7BtD,EAAMsD,QAAUnC,EAChBnO,EAAKqV,YAAYlH,EAASnB,MAItCsI,SAAU,WACN,OAAO5Q,EAAOkQ,GAAEhI,MAAM2D,QAAQrN,KAAI,SAAUuK,GACxC,OAAOA,EAAE6C,WACVkE,QAAO,SAAU/G,GAChB,OAAOA,MAGf0H,UAAW,WACP,MAAO,CAAE7E,QAAS,OAEtB+E,YAAa,SAAU/E,EAAStD,KAEhCkI,MAAO,WACH,IAAMA,EAAQ7P,EAAQhE,OAAOkU,eAAe3I,OAM5C,OALAgI,GAAEM,EAAO,CACL3E,OAAQqE,GAAEhI,MAAM2D,OAChB0C,OAAQ3N,IAAa,IACrB0P,QAAS,IAENE,KCpEf,IAAMM,GAAsBT,GAAcpT,UAE1C,SAAS8T,GAAWzV,EAAMsQ,EAAStD,EAAO0I,GACtC,IAAIf,EAAa3H,EAAM2H,WACnBgB,EAAO5S,EAAO,GAAI4R,GAItB,GAHA3R,EAAKhD,EAAK2U,YAAY,SAAUjH,EAAGD,GAC/BkH,EAAWlH,GAAK6C,EAAQsF,UAAUC,SAASpI,OAE1CjK,EAAMmS,EAAMhB,GAAa,CAC1B,IAAImB,EAAK9V,EAAK+V,mBAAmBtO,KAAKzH,EAAMsQ,EAASqF,EAAM5S,EAAO,GAAI4R,IAClEe,EACAzR,aAAa6R,GAEbA,KAKG,SAASE,GAAerB,GACnCI,GAAclT,KAAK+K,MACnBA,KAAK+H,WAAaA,GAAc,GAGpC/P,EAAgBoR,GAAgBjB,GAAe,CAC3CZ,cAAe,WACX,MAAO,CAACvH,KAAKI,MAAM2H,aAEvBT,OAAQ,WACJ,IAAIlU,EAAO4M,KACP0D,EAAUtQ,EAAKgN,MAAMsD,QAIzB,OAHIA,GAAW/J,EAAiB9G,KAAM6Q,IAClCmF,GAAWzV,EAAMsQ,EAAStQ,EAAKgN,OAAO,GAEnCwI,GAAoBtB,OAAOrS,KAAK+K,OAE3CuI,UAAW,WACP,MAAO,CACH7E,QAAS,KACTqE,WAAY,KAGpBU,YAAa,SAAU/E,EAAStD,GAC5B,IAAIhN,EAAO4M,KACXhC,EAAAA,gBAAoB0F,EAAS,CAAC,UAAU,SAAU2F,GAC1CA,EAAMC,SAAS5F,IACfmF,GAAWzV,EAAMsQ,EAAStD,OAItCkI,MAAO,WACH,OAAOnS,EAAOyS,GAAoBN,MAAMrT,KAAK+K,MAAO,CAAE+H,WAAY/H,KAAK+H,cAE3EoB,mBAAoB,SAAUzF,EAAS6F,EAAWnJ,OCtDtD,IAAMoJ,GAAoBJ,GAAerU,UAE1B,SAAS0U,KACpBL,GAAenU,KAAK+K,KAAM,CAAC,cAAe,iBAG9ChI,EAAgByR,GAAcL,GAAgB,CAC1C/B,KAAM,WACF,IAAIjU,EAAO4M,KAGX,OAFA5M,EAAKsW,aAAUvV,EACff,EAAKuW,aAAUxV,EACRqV,GAAkBnC,KAAKpS,KAAK7B,IAEvCwW,KAAM,SAAU3M,GACZ,IAAI7J,EAAO4M,KAGX,OAFA5M,EAAKsW,QAAUzM,EAAMyM,QACrBtW,EAAKuW,QAAU1M,EAAM0M,QACdvW,GAEXyW,YAAa,WAET,OADA7J,KAAK0J,QAAU3T,EAAUkK,WAClBD,MAEXoH,oBAAqB,WACjB,IAAIhU,EAAO4M,KACX,OAAO7J,EAAO,GAAIqT,GAAkBpC,oBAAoBnS,KAAK7B,GAAO,CAChE,cAAeA,EAAKsW,SAAW,IAAIvD,KAAK,KACxC,aAAc/S,EAAKuW,SAAW,YC3B1C,IAAMG,GAAgCV,GAAerU,UAEtC,SAASgV,GAAyBlM,GAC7CuL,GAAenU,KAAK+K,KAAM,CAAC,cAAe,iBAC1CA,KAAKnC,UAAYA,EAGrB7F,EAAgB+R,GAA0BX,GAAgB,CACtD7B,cAAe,WACX,MAAO,CAACvH,KAAKnC,WAAWmM,OAAOF,GAA8BvC,cAActS,KAAK+K,UCRxF,IAAMiK,GAA4BR,GAAa1U,UAC3CmV,GAA8B,EAEnB,SAASC,KACpB,IAAI/W,EAAO4M,KACXyJ,GAAaxU,KAAK7B,GAClBA,EAAKyK,UAAY,gBAAkBqM,GACnC9W,EAAKgX,KAAO,IAAIL,GAAyB3W,EAAKyK,WAGlD7F,EAAgBmS,GAAsBV,GAAc,CAChDjB,MAAO,WAEH,OADAxI,KAAKoK,KAAK5B,QACHyB,GAA0BzB,MAAMvT,KAAK+K,OAEhDoH,oBAAqB,WACjB,OAAOjR,EAAO,GAAI8T,GAA0B7C,oBAAoBnS,KAAK+K,MAAO,CACxE,mBAAoB,IAAMA,KAAKnC,aAGvCyK,MAAO,WACH,OAAOnS,EAAO8T,GAA0B3B,MAAMrT,KAAK+K,MAAO,CACtDoK,KAAMpK,KAAKoK,KAAKjJ,IAAIkH,gBC1BL,IAAwBgC,GAAuB/U,EAAAA,eCKpEgV,GAAyBnC,GAAcpT,UACvCwV,GAAU,IAAIF,GASL,SAASG,KACpBrC,GAAclT,KAAK+K,MAGvBhI,EAAgBwS,GAAmBrC,GAAe,CAC9CsC,MAAO,SAAU7C,EAAQ8C,GAKrB,OAJKA,IACDA,EAAW9C,EACXA,EAAS,MAEN2C,GAAQI,IAAI3K,KAAM4H,EAAS,QAAU,WAAW,SAAUgD,GAC7D,IAAKhD,GAlBjB,SAAwBA,EAAQvG,GAC5B,OAAIzL,EAAWgS,GACJjS,EAAG0L,EAAOuG,GAEdvG,GAASA,EAAMwJ,OAASjD,EAcRkD,CAAelD,EAAQgD,EAAEvJ,OACpC,OAAOqJ,EAASE,EAAEvJ,WAI9BoH,YAAa,SAAU/E,EAAStD,GAC5B,IAAIhN,EAAO4M,KACXsK,GAAuB7B,YAAYxT,KAAK7B,EAAMsQ,EAAStD,GACvDpC,EAAAA,GAAO0F,EAAS,SAAS,SAAUkH,GAC/B,IAAIpF,EAAO,CAAEnE,MAAOuJ,EAAEvJ,OACtB,OAAOkJ,GAAQQ,KAAK,QAAS3X,EAAMoS,IAAS+E,GAAQQ,KAAK,UAAW3X,EAAMoS,SCjCtF,IAAMwF,GAAyB5B,GAAerU,UAE/B,SAASkW,GAAkB/C,GACtCkB,GAAenU,KAAK+K,KAAM,CAAC,kBAC3BA,KAAKkL,YAAchD,EAGvBlQ,EAAgBiT,GAAmB7B,GAAgB,CAC/ChC,oBAAqB,WACjB,IAAI1D,EAAU1D,KAAKkL,YAAYxC,WAAW,GAC1C,OAAOvS,EAAO,GAAI6U,GAAuB5D,oBAAoBnS,KAAK+K,MAAO,CACrE,OAAU0D,GAAY,IAAMA,EAAQ9B,MAG5C0G,MAAO,WACH,OAAOnS,EAAO6U,GAAuB1C,MAAMrT,KAAK+K,MAAO,CAAEkL,YAAalL,KAAKkL,iBCbnF,IAAMC,GAAmB/B,GAAerU,UACpCqW,GAAqB,EAEV,SAASC,KACpB,IAAIjY,EAAO4M,KACXoJ,GAAenU,KAAK7B,EAAM,CAAC,OAAQ,UAAW,cAAe,iBAC7DA,EAAK6K,OAAQ,EACb7K,EAAKkY,gBAAiB,EACtBlY,EAAKmY,WAAY,EACjBnY,EAAKoY,SAAU,EACfpY,EAAKqY,OAAS,IAAIR,GAAkB7X,GAGxC4E,EAAgBqT,GAAajC,GAAgB,CACzCZ,MAAO,WAEH,OADAxI,KAAKyL,OAAOjD,QACL2C,GAAiB3C,MAAMvT,KAAK+K,OAEvCqH,KAAM,WAEF,OADArH,KAAK0J,aAAUvV,EACRgX,GAAiB9D,KAAKpS,KAAK+K,OAEtC6J,YAAa,WAET,OADA7J,KAAK0J,QAAU3T,EAAUkK,WAClBD,MAEXoH,oBAAqB,WACjB,IAAIhU,EAAO4M,KACX,OAAO7J,EAAO,GAAIgV,GAAiB/D,oBAAoBnS,KAAK7B,GAAO,CAC/D,YAAa,GACb,gBAAiBA,EAAKsY,gBACvBtY,EAAK6K,OAAS,CACb,WAAY,IACb7K,EAAKsW,SAAW,CACf,aAAc,OACd,aAActW,EAAKsW,QAAQvD,KAAK,KAChC,cAAe,MAGvB9H,OAAQ,SAAUqM,GACd,OAAO1K,KAAK2L,eAAc,SAAUhN,GAChC,GAAIA,EACA,OAAO+L,QAInBiB,cAAe,SAAUjB,GACrB,OAAO1K,KAAKzH,MAAM,iBAAkBmS,IAExCkB,oBAAqB,SAAUlB,GAC3B,OAAO1K,KAAKzH,MAAM,UAAWmS,IAEjCjC,YAAa,SAAU/E,EAAStD,GAC5B,IAAIhN,EAAO4M,KACXmL,GAAiB1C,YAAYxT,KAAK7B,EAAMsQ,EAAStD,GAC5CsD,EAAQ9B,KACT8B,EAAQ9B,GAAK,aAAewJ,IAEhCtM,EAAAA,GAAO4E,EAAS,CACZmI,eAAgB,WACZzY,EAAKmY,WAAY,GAErBO,kBAAmB,WACf1Y,EAAKmY,WAAY,KAEtB,GACHlU,cAAa,WACTjB,EAAKhD,EAAKqY,OAAO/C,YAAY,SAAU5H,EAAGD,GACtCA,EAAE3C,aAAa,SAAU,IAAMwF,EAAQ9B,WAInD0G,MAAO,WACH,IAAIlV,EAAO4M,KACPkI,EAAQ/R,EAAOgV,GAAiB7C,MAAMrT,KAAK7B,GAAO,CAClDqY,OAAQrY,EAAKqY,OAAOtK,IAAIkH,aAI5B,OAFAjQ,EAAoB8P,EAAO,iBAAkB9U,GAC7CgF,EAAoB8P,EAAO,QAAS9U,GAC7B8U,GAEXiB,mBAAoB,SAAUzF,EAAS6F,EAAWnJ,GACnCJ,KACNwL,QAAUpL,EAAMxC,KADVoC,KAENsL,eAAiBlL,EAAMxC,OAASwC,EAAM/C,UAAY+C,EAAM,mBCpFrE,IAAM2L,GAAuB5D,GAAcpT,UAE5B,SAASiX,KACpB7D,GAAclT,KAAK+K,MAGvBhI,EAAgBgU,GAAiB7D,GAAe,CAC5CM,YAAa,SAAU/E,EAAStD,GAC5B2L,GAAqBtD,YAAYxT,KAAK+K,KAAM0D,EAAStD,GACrDpC,EAAAA,GAAO0F,EAAS,CACZuI,QAAS,WACL7L,EAAM7D,SAAU,EAChBvB,EAAS0I,EAAS,WAAW,IAEjCwI,SAAU,WACN9L,EAAM7D,SAAU,EAChBvB,EAAS0I,EAAS,WAAW,OAIzC6D,cAAe,WACX,MAAO,CAAC,CAAEhL,UAAWyD,KAAKI,MAAM7D,aCrBxC,IAAM4P,GAAyBhE,GAAcpT,UAE9B,SAASqX,KACpBjE,GAAclT,KAAK+K,MAGvBhI,EAAgBoU,GAAmBjE,GAAe,CAC9CM,YAAa,SAAU/E,EAAStD,GAC5B+L,GAAuB1D,YAAYxT,KAAK+K,KAAM0D,EAAStD,GACvDpC,EAAAA,GAAO0F,EAAS,CACZ2I,WAAY,WACRjM,EAAMkM,SAAU,EAChBtR,EAAS0I,EAAS,WAAW,IAEjC6I,SAAU,WACNnM,EAAMkM,SAAU,EAChBtR,EAAS0I,EAAS,WAAW,IAEjC8I,UAAW,WACPpM,EAAMkM,SAAU,EAChBtR,EAAS0I,EAAS,WAAW,OAIzC6D,cAAe,WACX,MAAO,CAAC,CAAE+E,UAAWtM,KAAKI,MAAMkM,a,cCxBlCG,GAAuBrD,GAAerU,UAE7B,SAAS2X,KACpB,IAAItZ,EAAO4M,KACXoJ,GAAenU,KAAK7B,EAAM,CAAC,eAAgB,iBAAkB,iBAAkB,eAAgB,iBAAkB,mBACjHA,EAAKuZ,OAASxF,GAAMK,iBACpBpU,EAAKwZ,UAAY,EACjBxZ,EAAKyZ,WAAY,ECErB,SAASC,GAAWC,GAChB5W,EAAO6J,KAAM+M,GAGjB,SAASC,GAAkBC,GACvB,OAAO,WACH,IAAI/E,EAAQgF,GAASD,GAErB,OADC/E,EAAMiF,aAAeL,IAAY9F,MAAMkB,EAAOjI,WACxCiI,GDPflQ,EAAgB0U,GAAiBtD,GAAgB,CAC7C+D,YAAa,SAAUJ,GAEnB,OADA/M,KAAK+M,QAAUA,EACR/M,MAEXoH,oBAAqB,WACjB,IAAI2F,EAAU/M,KAAK+M,SAAW,GAC9B,OAAO5W,EAAO,GAAIsW,GAAqBrF,oBAAoBnS,KAAK+K,MAAO,CACnE,WAAc,CAAC+M,EAAQK,WAAa,OAAQL,EAAQM,QAAU,QAAQlH,KAAK,MAC5E4G,EAAQO,OAAS,CAChB,IAAO,mBACP,qBAAsBP,EAAQO,MAC9B,gBAAiBP,EAAQQ,kBACzB,iBAAkB,eAG1BC,mBAAoB,SAAU9C,GAC1B,OAAO1K,KAAKzH,MAAM,YAAamS,IAEnCjC,YAAa,SAAU/E,EAAStD,GAC5B,IAAIhN,EAAO4M,KACXlB,EAAAA,GAAO4E,EAAS,CACZ+J,YAAa,SAAU7C,GACf,cAAeA,EAAE8C,WACjBvX,EAAO/C,EAAM,CAAEwZ,UAAWhC,EAAE8C,UAAUd,aAG9Ce,YAAa,WACTva,EAAKyZ,WAAY,GAErBe,WAAY,WACRxa,EAAKyZ,WAAY,KAEtB,IAEPvE,MAAO,WACH,IAAIJ,EAAQuE,GAAqBnE,MAAMrT,KAAK+K,MAE5C,OADA5H,EAAoB8P,EAAO,YAAalI,MACjCkI,KAIf9R,EAAK,iJAAiJ,SAAU0K,EAAGD,GAC/J1I,EAAqBuU,GAAgB3X,UAAW8L,GAAG,WAC/C,IAAIhM,EAAMgZ,GAAE7N,KAAK0I,YACjB,OAAO7T,EAAIiZ,WAAW9G,MAAMnS,EAAK,CAACgM,GAAGmJ,OAAOjU,EAAUkK,mBClCvD,IAAM8N,GAAkBf,GAAkBvD,IACpCuE,GAA0BhB,GAAkB7C,IAC5C8D,GAAuBjB,GAAkBxC,IACzC0D,GAAiBlB,GAAkB3B,IACnC8C,GAAqBnB,GAAkBhB,IACvCoC,GAAuBpB,GAAkBZ,IACzCiC,GAAqBrB,GAAkBN,IAE7C,SAASQ,GAASD,GACrB,OAAOzO,EAAAA,EAAAA,WAAS,WACZ,OAAO,IAAIyO,KACZ,GAAGzE,QAGH,SAAS8F,GAAYpG,GACxB,OAAOA,GAASA,EAAMG,WAAWG,QCzCrC,WCAA,M","sources":["webpack://brew-js-react/webpack/universalModuleDefinition","webpack://brew-js-react/external umd \"jQuery\"","webpack://brew-js-react/external umd \"waterpipe\"","webpack://brew-js-react/external umd \"zeta-dom-react\"","webpack://brew-js-react/external umd {\"commonjs\":\"brew-js\",\"commonjs2\":\"brew-js\",\"amd\":\"brew-js\",\"root\":\"brew\"}","webpack://brew-js-react/external umd {\"commonjs\":\"react\",\"commonjs2\":\"react\",\"amd\":\"react\",\"root\":\"React\"}","webpack://brew-js-react/external umd {\"commonjs\":\"react-dom\",\"commonjs2\":\"react-dom\",\"amd\":\"react-dom\",\"root\":\"ReactDOM\"}","webpack://brew-js-react/external umd {\"commonjs\":\"zeta-dom\",\"commonjs2\":\"zeta-dom\",\"amd\":\"zeta-dom\",\"root\":\"zeta\"}","webpack://brew-js-react/./src/include/external/jquery.js","webpack://brew-js-react/./src/include/external/waterpipe.js","webpack://brew-js-react/webpack/bootstrap","webpack://brew-js-react/webpack/runtime/define property getters","webpack://brew-js-react/webpack/runtime/hasOwnProperty shorthand","webpack://brew-js-react/webpack/runtime/make namespace object","webpack://brew-js-react/./tmp/brew-js/app.js","webpack://brew-js-react/./src/include/brew-js/app.js","webpack://brew-js-react/./tmp/zeta-dom/util.js","webpack://brew-js-react/./tmp/zeta-dom/domUtil.js","webpack://brew-js-react/./tmp/zeta-dom/dom.js","webpack://brew-js-react/./src/include/zeta-dom/dom.js","webpack://brew-js-react/./tmp/brew-js/domAction.js","webpack://brew-js-react/./src/dialog.js","webpack://brew-js-react/./tmp/brew-js/defaults.js","webpack://brew-js-react/./src/include/brew-js/defaults.js","webpack://brew-js-react/./src/app.js","webpack://brew-js-react/./tmp/zeta-dom/domLock.js","webpack://brew-js-react/./src/view.js","webpack://brew-js-react/./tmp/brew-js/anim.js","webpack://brew-js-react/./src/hooks.js","webpack://brew-js-react/./src/i18n.js","webpack://brew-js-react/./src/mixins/StaticAttributeMixin.js","webpack://brew-js-react/./src/mixins/Mixin.js","webpack://brew-js-react/./src/mixins/StatefulMixin.js","webpack://brew-js-react/./src/mixins/ClassNameMixin.js","webpack://brew-js-react/./src/mixins/AnimateMixin.js","webpack://brew-js-react/./src/mixins/AnimateSequenceItemMixin.js","webpack://brew-js-react/./src/mixins/AnimateSequenceMixin.js","webpack://brew-js-react/./tmp/zeta-dom/events.js","webpack://brew-js-react/./src/mixins/ErrorHandlerMixin.js","webpack://brew-js-react/./src/mixins/FlyoutToggleMixin.js","webpack://brew-js-react/./src/mixins/FlyoutMixin.js","webpack://brew-js-react/./src/mixins/FocusStateMixin.js","webpack://brew-js-react/./src/mixins/LoadingStateMixin.js","webpack://brew-js-react/./src/mixins/ScrollableMixin.js","webpack://brew-js-react/./src/mixin.js","webpack://brew-js-react/./src/index.js","webpack://brew-js-react/./src/entry.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"brew-js\"), require(\"react\"), require(\"react-dom\"), require(\"zeta-dom\"), require(\"zeta-dom-react\"), require(\"waterpipe\"), require(\"jQuery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"brew-js-react\", [\"brew-js\", \"react\", \"react-dom\", \"zeta-dom\", \"zeta-dom-react\", \"waterpipe\", \"jQuery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"brew-js-react\"] = factory(require(\"brew-js\"), require(\"react\"), require(\"react-dom\"), require(\"zeta-dom\"), require(\"zeta-dom-react\"), require(\"waterpipe\"), require(\"jQuery\"));\n\telse\n\t\troot[\"brew-js-react\"] = factory(root[\"brew\"], root[\"React\"], root[\"ReactDOM\"], root[\"zeta\"], root[\"zeta-dom-react\"], root[\"waterpipe\"], root[\"jQuery\"]);\n})(self, function(__WEBPACK_EXTERNAL_MODULE__80__, __WEBPACK_EXTERNAL_MODULE__359__, __WEBPACK_EXTERNAL_MODULE__318__, __WEBPACK_EXTERNAL_MODULE__654__, __WEBPACK_EXTERNAL_MODULE__103__, __WEBPACK_EXTERNAL_MODULE__28__, __WEBPACK_EXTERNAL_MODULE__145__) {\nreturn ","module.exports = __WEBPACK_EXTERNAL_MODULE__145__;","module.exports = __WEBPACK_EXTERNAL_MODULE__28__;","module.exports = __WEBPACK_EXTERNAL_MODULE__103__;","module.exports = __WEBPACK_EXTERNAL_MODULE__80__;","module.exports = __WEBPACK_EXTERNAL_MODULE__359__;","module.exports = __WEBPACK_EXTERNAL_MODULE__318__;","module.exports = __WEBPACK_EXTERNAL_MODULE__654__;","/// <reference types=\"jq-scrollable\" />\r\n// @ts-nocheck\r\n\r\n/** @type {JQueryStatic} */\r\nconst jQuery = window.jQuery || require('jquery');\r\nmodule.exports = jQuery;\r\n","// @ts-nocheck\r\n\r\n/** @type {Waterpipe} */\r\nconst waterpipe = window.waterpipe || require('waterpipe');\r\nmodule.exports = waterpipe;\r\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import lib from \"brew-js\";const _defaultExport = lib; export default _defaultExport;const { install, addExtension, addDetect } = lib; export { install, addExtension, addDetect };","import brew from \"brew-js/app\";\r\nexport * from \"brew-js/app\";\r\nexport default brew;\r\n","import lib from \"zeta-dom\";const { noop, pipe, either, is, isUndefinedOrNull, isArray, isFunction, isThenable, isPlainObject, isArrayLike, makeArray, extend, each, map, grep, splice, any, single, kv, pick, exclude, mapGet, mapRemove, arrRemove, setAdd, equal, combineFn, executeOnce, createPrivateStore, setTimeout, setTimeoutOnce, setInterval, setIntervalSafe, setImmediate, setImmediateOnce, throwNotFunction, errorWithCode, keys, values, hasOwnProperty, getOwnPropertyDescriptors, define, definePrototype, defineOwnProperty, defineGetterProperty, defineHiddenProperty, defineAliasProperty, defineObservableProperty, watch, watchOnce, watchable, inherit, deepFreeze, iequal, randomId, repeat, camel, hyphenate, ucfirst, lcfirst, trim, matchWord, htmlDecode, resolve, reject, always, resolveAll, catchAsync, setPromiseTimeout } = lib.util; export { noop, pipe, either, is, isUndefinedOrNull, isArray, isFunction, isThenable, isPlainObject, isArrayLike, makeArray, extend, each, map, grep, splice, any, single, kv, pick, exclude, mapGet, mapRemove, arrRemove, setAdd, equal, combineFn, executeOnce, createPrivateStore, setTimeout, setTimeoutOnce, setInterval, setIntervalSafe, setImmediate, setImmediateOnce, throwNotFunction, errorWithCode, keys, values, hasOwnProperty, getOwnPropertyDescriptors, define, definePrototype, defineOwnProperty, defineGetterProperty, defineHiddenProperty, defineAliasProperty, defineObservableProperty, watch, watchOnce, watchable, inherit, deepFreeze, iequal, randomId, repeat, camel, hyphenate, ucfirst, lcfirst, trim, matchWord, htmlDecode, resolve, reject, always, resolveAll, catchAsync, setPromiseTimeout };","import lib from \"zeta-dom\";const { domReady, tagName, isVisible, matchSelector, comparePosition, connected, containsOrEquals, acceptNode, combineNodeFilters, iterateNode, iterateNodeToArray, getCommonAncestor, parentsAndSelf, selectIncludeSelf, selectClosestRelative, createNodeIterator, createTreeWalker, bind, bindUntil, dispatchDOMMouseEvent, removeNode, getClass, setClass, getScrollOffset, getScrollParent, getContentRect, scrollBy, scrollIntoView, makeSelection, getRect, getRects, toPlainRect, rectEquals, rectCovers, rectIntersects, pointInRect, mergeRect, elementFromPoint } = lib.util; export { domReady, tagName, isVisible, matchSelector, comparePosition, connected, containsOrEquals, acceptNode, combineNodeFilters, iterateNode, iterateNodeToArray, getCommonAncestor, parentsAndSelf, selectIncludeSelf, selectClosestRelative, createNodeIterator, createTreeWalker, bind, bindUntil, dispatchDOMMouseEvent, removeNode, getClass, setClass, getScrollOffset, getScrollParent, getContentRect, scrollBy, scrollIntoView, makeSelection, getRect, getRects, toPlainRect, rectEquals, rectCovers, rectIntersects, pointInRect, mergeRect, elementFromPoint };","import lib from \"zeta-dom\";const _defaultExport = lib.dom; export default _defaultExport;const { textInputAllowed, beginDrag, beginPinchZoom, getShortcut, setShortcut, focusable, focused, setModal, releaseModal, retainFocus, releaseFocus, iterateFocusPath, focus } = lib.dom; export { textInputAllowed, beginDrag, beginPinchZoom, getShortcut, setShortcut, focusable, focused, setModal, releaseModal, retainFocus, releaseFocus, iterateFocusPath, focus };","import dom from \"zeta-dom/dom\";\r\nexport * from \"zeta-dom/dom\";\r\nexport default dom;\r\n","import lib from \"brew-js\";const { addAsyncAction, closeFlyout, openFlyout } = lib; export { addAsyncAction, closeFlyout, openFlyout };","import React, { useEffect, useState } from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\nimport { always, either, extend, noop } from \"./include/zeta-dom/util.js\";\r\nimport { containsOrEquals, removeNode } from \"./include/zeta-dom/domUtil.js\";\r\nimport dom from \"./include/zeta-dom/dom.js\";\r\nimport { closeFlyout, openFlyout } from \"./include/brew-js/domAction.js\";\r\n\r\n/**\r\n * @param {Partial<import(\"./dialog\").DialogOptions<any>>} props\r\n */\r\nexport function createDialog(props) {\r\n var root = document.createElement('div');\r\n var closing = false;\r\n var promise;\r\n\r\n function closeDialog(value) {\r\n if (!closing) {\r\n closing = true;\r\n closeFlyout(root, value).then(function () {\r\n closing = false;\r\n removeNode(root);\r\n (props.onClose || noop)(root);\r\n if (props.onRender) {\r\n ReactDOM.unmountComponentAtNode(root);\r\n }\r\n });\r\n }\r\n }\r\n\r\n return {\r\n root: root,\r\n close: closeDialog,\r\n open: function () {\r\n if (promise) {\r\n return promise;\r\n }\r\n root.className = props.className || '';\r\n document.body.appendChild(root);\r\n dom.retainFocus(dom.activeElement, root);\r\n if (props.modal) {\r\n root.setAttribute('is-modal', '');\r\n dom.setModal(root);\r\n }\r\n if (props.onRender) {\r\n ReactDOM.render(React.createElement(props.onRender, extend({ closeDialog }, props)), root);\r\n }\r\n\r\n promise = openFlyout(root);\r\n always(promise, function () {\r\n promise = null;\r\n });\r\n promise.then(props.onCommit);\r\n (props.onOpen || noop)(root);\r\n return promise;\r\n }\r\n };\r\n}\r\n\r\n/**\r\n * @param {import(\"./dialog\").DialogProps} props\r\n */\r\nexport function Dialog(props) {\r\n const _props = useState(props)[0];\r\n const dialog = useState(function () {\r\n return createDialog(_props);\r\n })[0];\r\n extend(_props, props);\r\n\r\n useEffect(function () {\r\n var opened = containsOrEquals(dom.root, dialog.root);\r\n if (either(opened, _props.isOpen)) {\r\n if (!opened) {\r\n dialog.open();\r\n } else {\r\n dialog.close();\r\n }\r\n }\r\n }, [_props.isOpen])\r\n useEffect(function () {\r\n return dialog.close;\r\n }, [dialog]);\r\n return ReactDOM.createPortal(props.children, dialog.root);\r\n}\r\n","import lib from \"brew-js\";const _defaultExport = lib.defaults; export default _defaultExport;","import defaults from \"brew-js/defaults\";\r\nexport default defaults;\r\n","import { install } from \"./include/brew-js/app.js\";\r\nimport defaults from \"./include/brew-js/defaults.js\";\r\n\r\n/** @type {Brew.AppInstance<Brew.WithRouter & Brew.WithI18n>} */\r\nexport var app;\r\n\r\ninstall('react', function (app_) {\r\n // @ts-ignore: type inference issue\r\n app = app_;\r\n});\r\n\r\ndefaults.react = true;\r\n","import lib from \"zeta-dom\";const { lock, locked, cancelLock, notifyAsync, preventLeave } = lib.dom; export { lock, locked, cancelLock, notifyAsync, preventLeave };","import React, { useRef } from \"react\";\r\nimport { useAsync } from \"zeta-dom-react\";\r\nimport dom from \"./include/zeta-dom/dom.js\";\r\nimport { notifyAsync } from \"./include/zeta-dom/domLock.js\";\r\nimport { any, defineGetterProperty, definePrototype, each, extend, isFunction, keys, makeArray, noop, pick, randomId, setImmediate } from \"./include/zeta-dom/util.js\";\r\nimport { animateIn, animateOut } from \"./include/brew-js/anim.js\";\r\nimport { app } from \"./app.js\";\r\nimport { ViewStateContainer } from \"./hooks.js\";\r\n\r\nconst root = dom.root;\r\nconst routeMap = new Map();\r\nconst usedParams = {};\r\nconst StateContext = React.createContext(Object.freeze({ active: true }));\r\n\r\nlet stateId;\r\n\r\nfunction ViewContainer() {\r\n /** @type {any} */\r\n var self = this;\r\n React.Component.apply(self, arguments);\r\n self.mounted = false;\r\n if (!stateId) {\r\n stateId = history.state;\r\n app.on('navigate', function () {\r\n stateId = history.state;\r\n });\r\n }\r\n self.componentWillUnmount = app.on('navigate', function () {\r\n if (self.mounted && self.getViewComponent()) {\r\n self.forceUpdate();\r\n }\r\n });\r\n}\r\n\r\ndefinePrototype(ViewContainer, React.Component, {\r\n componentDidMount: function () {\r\n this.mounted = true;\r\n },\r\n componentDidCatch: function (error) {\r\n dom.emit('error', this.parentElement || root, { error }, true);\r\n },\r\n render: function () {\r\n /** @type {any} */\r\n var self = this;\r\n var resolve;\r\n var promise = new Promise(function (_resolve) {\r\n resolve = _resolve;\r\n });\r\n var V = self.getViewComponent();\r\n if (V && V !== self.currentViewComponent) {\r\n self.currentViewComponent = V;\r\n if (self.currentView && self.currentElement) {\r\n self.prevView = self.currentView;\r\n self.prevElement = self.currentElement;\r\n self.currentElement = undefined;\r\n animateOut(self.prevElement, 'show').then(function () {\r\n self.prevElement = undefined;\r\n self.prevView = undefined;\r\n self.forceUpdate();\r\n });\r\n }\r\n var providerProps = {\r\n key: routeMap.get(V).id,\r\n value: {}\r\n };\r\n var view = React.createElement(StateContext.Provider, providerProps,\r\n React.createElement(ViewStateContainer, null,\r\n React.createElement(V, {\r\n rootProps: self.props.rootProps,\r\n onComponentLoaded: function (element) {\r\n self.currentElement = element;\r\n self.parentElement = element.parentElement;\r\n setImmediate(function () {\r\n resolve();\r\n return animateIn(element, 'show');\r\n });\r\n }\r\n })));\r\n defineGetterProperty(providerProps.value, 'active', function () {\r\n return self.currentView === view;\r\n });\r\n self.currentView = view;\r\n } else {\r\n resolve();\r\n }\r\n notifyAsync(self.parentElement || root, promise);\r\n return React.createElement(React.Fragment, null, self.prevView, self.currentView);\r\n },\r\n getViewComponent: function () {\r\n var props = this.props;\r\n return any(props.views, isViewMatched) || (history.state === stateId && void redirectTo(props.defaultView));\r\n }\r\n});\r\n\r\nexport function useViewContainerState() {\r\n return React.useContext(StateContext);\r\n}\r\n\r\nexport function isViewMatched(view) {\r\n var params = routeMap.get(view);\r\n return !!params && false === any(params.matchers, function (v, i) {\r\n var value = app.route[i] || '';\r\n return isFunction(v) ? !v(value) : (v || '') !== value;\r\n });\r\n}\r\n\r\nexport function registerView(factory, routeParams) {\r\n var Component = function (props) {\r\n var state = useAsync(factory);\r\n var ref = useRef();\r\n if (state[0] || state[1].error) {\r\n (props.onComponentLoaded || noop)(ref.current);\r\n }\r\n return React.createElement('div', extend({}, props.rootProps, {\r\n ref: ref,\r\n children: state[0] && React.createElement(state[0].default)\r\n }));\r\n };\r\n routeParams = extend({}, routeParams);\r\n each(routeParams, function (i, v) {\r\n usedParams[i] = true;\r\n if (v instanceof RegExp) {\r\n routeParams[i] = v.test.bind(v);\r\n }\r\n });\r\n routeMap.set(Component, {\r\n id: randomId(),\r\n matchCount: keys(routeParams).length,\r\n matchers: routeParams,\r\n params: pick(routeParams, function (v) {\r\n return typeof v === 'string';\r\n })\r\n });\r\n return Component;\r\n}\r\n\r\nexport function renderView() {\r\n var views = makeArray(arguments);\r\n var rootProps = isFunction(views[0]) ? {} : views.shift();\r\n var defaultView = views[0];\r\n views.sort(function (a, b) {\r\n return (routeMap.get(b) || {}).matchCount - (routeMap.get(a) || {}).matchCount;\r\n });\r\n return React.createElement(ViewContainer, { rootProps, views, defaultView });\r\n}\r\n\r\nexport function linkTo(view, params) {\r\n var viewParams = (routeMap.get(view) || {}).params;\r\n var newParams = {};\r\n for (var i in app.route) {\r\n if (viewParams && i in viewParams) {\r\n newParams[i] = viewParams[i];\r\n } else if (params && i in params) {\r\n newParams[i] = params[i];\r\n } else if (!usedParams[i]) {\r\n newParams[i] = app.route[i];\r\n }\r\n }\r\n return app.route.getPath(newParams);\r\n}\r\n\r\nexport function navigateTo(view, params) {\r\n return app.navigate(linkTo(view, params));\r\n}\r\n\r\nexport function redirectTo(view, params) {\r\n return app.navigate(linkTo(view, params), true);\r\n}\r\n","import lib from \"brew-js\";const { animateIn, animateOut, addAnimateIn, addAnimateOut } = lib; export { animateIn, animateOut, addAnimateIn, addAnimateOut };","import { createElement, useEffect, useState } from \"react\";\r\nimport { ViewStateProvider } from \"zeta-dom-react\";\r\nimport { extend, kv, setImmediate } from \"./include/zeta-dom/util.js\";\r\nimport { app } from \"./app.js\";\r\nimport { useViewContainerState } from \"./view.js\";\r\n\r\nconst states = {};\r\n\r\nfunction getCurrentStates() {\r\n return states[history.state] || (states[history.state] = {});\r\n}\r\n\r\nexport function useAppReady() {\r\n const sReady = useState(false);\r\n const ready = sReady[0], setReady = sReady[1];\r\n useEffect(function () {\r\n app.ready.then(function () {\r\n setReady(true);\r\n });\r\n }, []);\r\n return ready;\r\n}\r\n\r\nexport function useRouteParam(name, defaultValue) {\r\n const container = useViewContainerState();\r\n const route = app.route;\r\n const sValue = useState(route[name]);\r\n const value = sValue[0], setValue = sValue[1];\r\n useEffect(function () {\r\n var current = route[name];\r\n // route parameter might be changed after state initialization and before useEffect hook is called\r\n setValue(current);\r\n if (name in route) {\r\n return route.watch(name, function (value) {\r\n setImmediate(function () {\r\n if (container.active) {\r\n setValue(value);\r\n }\r\n });\r\n });\r\n }\r\n console.error('Route parameter ' + name + ' does not exist');\r\n }, [name, defaultValue]);\r\n if (!value && defaultValue !== undefined) {\r\n app.navigate(route.getPath(extend({}, route, kv(name, defaultValue))), true);\r\n }\r\n return value || '';\r\n}\r\n\r\nexport function useRouteState(key, defaultValue) {\r\n const container = useViewContainerState();\r\n const cur = getCurrentStates();\r\n const state = useState(key in cur ? cur[key] : defaultValue);\r\n if (container.active) {\r\n cur[key] = state[0];\r\n }\r\n return state;\r\n}\r\n\r\nexport function ViewStateContainer(props) {\r\n const container = useViewContainerState();\r\n const provider = useState(function () {\r\n const cache = {};\r\n return {\r\n getState: function (uniqueId, key) {\r\n var cur = getCurrentStates();\r\n var state = cache[uniqueId] || (cache[uniqueId] = {\r\n value: cur[key] && cur[key].value,\r\n get: function () {\r\n return state.value;\r\n },\r\n set: function (value) {\r\n state.value = value;\r\n }\r\n });\r\n if (container.active) {\r\n cur[key] = state;\r\n }\r\n return state;\r\n }\r\n };\r\n })[0];\r\n return createElement(ViewStateProvider, { value: provider }, props.children);\r\n}\r\n","import { useObservableProperty } from \"zeta-dom-react\";\r\nimport waterpipe from \"./include/external/waterpipe.js\"\r\nimport { extend, makeArray, single } from \"./include/zeta-dom/util.js\";\r\nimport { app } from \"./app.js\";\r\n\r\nconst empty = Object.create(null);\r\nconst toPrimitive = typeof Symbol === 'function' && Symbol.toPrimitive;\r\n\r\nfunction TString(toString) {\r\n this.toString = toString;\r\n}\r\n\r\nif (toPrimitive) {\r\n TString.prototype[toPrimitive] = function () {\r\n return this.toString();\r\n };\r\n}\r\n\r\nfunction createCallback(translate) {\r\n var callback = function (key, data) {\r\n var result = translate(key, data, true);\r\n return result !== undefined ? result : key;\r\n };\r\n return extend(callback, {\r\n html: function (id, data) {\r\n return { __html: translate(id, data) };\r\n },\r\n lazy: function (id, data) {\r\n return new TString(translate.bind(0, id, data, true));\r\n }\r\n });\r\n}\r\n\r\nexport function useLanguage() {\r\n return useObservableProperty(app, 'language');\r\n}\r\n\r\nexport function makeTranslation(resources, defaultLang) {\r\n const re = new RegExp('^(' + Object.keys(resources[defaultLang]).join('|') + ')\\\\.');\r\n const cache = {};\r\n\r\n function getTranslation(prefix, name, data, noEncode, lang) {\r\n var str = ((resources[lang] || empty)[prefix] || empty)[name];\r\n if (typeof str === 'string') {\r\n if (str && (!noEncode || data !== undefined)) {\r\n return waterpipe(str, data, { noEncode });\r\n }\r\n return str;\r\n }\r\n if (lang !== defaultLang) {\r\n return getTranslation(prefix, name, data, noEncode, defaultLang);\r\n }\r\n }\r\n\r\n function translate(key, data, noEncode) {\r\n var prefix = re.test(key) ? RegExp.$1 : '';\r\n var name = prefix ? key.slice(RegExp.lastMatch.length) : key;\r\n return getTranslation(prefix, name, data, noEncode, app.language);\r\n }\r\n\r\n function getTranslationCallback() {\r\n var prefix = makeArray(arguments);\r\n var key = prefix.join(' ');\r\n return cache[key] || (cache[key] = createCallback(function (key, data, noEncode) {\r\n var lang = app.language;\r\n return single(prefix, function (v) {\r\n return getTranslation(v, key, data, noEncode, lang);\r\n });\r\n }));\r\n }\r\n\r\n function useTranslation() {\r\n var language = useLanguage();\r\n var t = getTranslationCallback.apply(0, arguments);\r\n return { language, t };\r\n }\r\n\r\n cache[''] = createCallback(translate);\r\n return {\r\n translate: cache[''],\r\n getTranslation: getTranslationCallback,\r\n useTranslation\r\n };\r\n}\r\n","import { definePrototype, extend } from \"../include/zeta-dom/util.js\";\r\nimport Mixin from \"./Mixin.js\";\r\n\r\nexport default function StaticAttributeMixin(attributes) {\r\n Mixin.call(this);\r\n this.attributes = attributes || {};\r\n}\r\n\r\ndefinePrototype(StaticAttributeMixin, Mixin, {\r\n getCustomAttributes: function () {\r\n return extend({}, this.attributes);\r\n }\r\n});\r\n","import { classNames } from \"zeta-dom-react\";\r\nimport { combineFn, define, definePrototype, each, extend, makeArray, noop, watchable } from \"../include/zeta-dom/util.js\";\r\nimport StaticAttributeMixin from \"./StaticAttributeMixin.js\";\r\n\r\nexport default function Mixin() {\r\n}\r\n\r\ndefinePrototype(Mixin, {\r\n next: function () {\r\n },\r\n getRef: function () {\r\n return noop;\r\n },\r\n getClassNames: function () {\r\n return [];\r\n },\r\n getCustomAttributes: function () {\r\n return {};\r\n }\r\n});\r\nwatchable(Mixin.prototype);\r\n\r\ndefine(Mixin, {\r\n get scrollableTarget() {\r\n return new StaticAttributeMixin({ 'scrollable-target': '' });\r\n },\r\n use: function () {\r\n const args = makeArray(arguments);\r\n const ref = args[0];\r\n const props = {};\r\n const mixins = args.filter(function (v) {\r\n return v instanceof Mixin;\r\n });\r\n const refs = mixins.map(function (v) {\r\n return v.getRef();\r\n });\r\n if (ref && !(ref instanceof Mixin)) {\r\n if (typeof ref !== 'function') {\r\n refs.push(function (v) {\r\n ref.current = v;\r\n });\r\n } else {\r\n refs.push(ref);\r\n }\r\n args.shift();\r\n } else if (!ref) {\r\n args.shift();\r\n }\r\n each(mixins, function (i, v) {\r\n extend(props, v.getCustomAttributes());\r\n });\r\n extend(props, {\r\n ref: combineFn(refs),\r\n className: classNames.apply(null, args)\r\n });\r\n each(mixins, function (i, v) {\r\n v.next();\r\n });\r\n return props;\r\n }\r\n});\r\n","import { createPrivateStore, definePrototype, inherit, randomId, values } from \"../include/zeta-dom/util.js\";\r\nimport Mixin from \"./Mixin.js\";\r\n\r\nconst _ = createPrivateStore();\r\n\r\nfunction MixinRefImpl(mixin) {\r\n this.mixin = mixin;\r\n}\r\n\r\ndefinePrototype(MixinRefImpl, {\r\n getMixin: function () {\r\n return this.mixin;\r\n }\r\n});\r\n\r\nexport default function StatefulMixin() {\r\n Mixin.call(this);\r\n _(this, {\r\n states: {},\r\n prefix: '',\r\n counter: 0\r\n });\r\n}\r\n\r\ndefinePrototype(StatefulMixin, Mixin, {\r\n get ref() {\r\n const self = this;\r\n const state = self.state;\r\n self.next();\r\n return state.ref || (state.ref = new MixinRefImpl(self.clone()));\r\n },\r\n get state() {\r\n const obj = _(this);\r\n const key = obj.prefix + obj.counter;\r\n return obj.states[key] || (obj.states[key] = this.initState());\r\n },\r\n reset: function () {\r\n _(this).counter = 0;\r\n return this;\r\n },\r\n next: function () {\r\n _(this).counter++;\r\n return this;\r\n },\r\n getRef: function () {\r\n const self = this;\r\n const state = self.state;\r\n return function (current) {\r\n if (current && current !== state.element) {\r\n state.element = current;\r\n self.initElement(current, state);\r\n }\r\n };\r\n },\r\n elements: function () {\r\n return values(_(this).states).map(function (v) {\r\n return v.element;\r\n }).filter(function (v) {\r\n return v;\r\n });\r\n },\r\n initState: function () {\r\n return { element: null };\r\n },\r\n initElement: function (element, state) {\r\n },\r\n clone: function () {\r\n const clone = inherit(Object.getPrototypeOf(this));\r\n _(clone, {\r\n states: _(this).states,\r\n prefix: randomId() + '.',\r\n counter: 0\r\n });\r\n return clone;\r\n }\r\n});\r\n","import { definePrototype, each, equal, extend } from \"../include/zeta-dom/util.js\";\r\nimport { containsOrEquals } from \"../include/zeta-dom/domUtil.js\";\r\nimport dom from \"../include/zeta-dom/dom.js\";\r\nimport StatefulMixin from \"./StatefulMixin.js\";\r\n\r\nconst ClassNameMixinSuper = StatefulMixin.prototype;\r\n\r\nfunction checkState(self, element, state, isAsync) {\r\n var classNames = state.classNames;\r\n var prev = extend({}, classNames);\r\n each(self.classNames, function (i, v) {\r\n classNames[v] = element.classList.contains(v);\r\n });\r\n if (!equal(prev, classNames)) {\r\n var cb = self.onClassNameUpdated.bind(self, element, prev, extend({}, classNames));\r\n if (isAsync) {\r\n setImmediate(cb);\r\n } else {\r\n cb();\r\n }\r\n }\r\n}\r\n\r\nexport default function ClassNameMixin(classNames) {\r\n StatefulMixin.call(this);\r\n this.classNames = classNames || [];\r\n}\r\n\r\ndefinePrototype(ClassNameMixin, StatefulMixin, {\r\n getClassNames: function () {\r\n return [this.state.classNames];\r\n },\r\n getRef: function () {\r\n var self = this;\r\n var element = self.state.element;\r\n if (element && containsOrEquals(root, element)) {\r\n checkState(self, element, self.state, true);\r\n }\r\n return ClassNameMixinSuper.getRef.call(this);\r\n },\r\n initState: function () {\r\n return {\r\n element: null,\r\n classNames: {}\r\n };\r\n },\r\n initElement: function (element, state) {\r\n var self = this;\r\n dom.watchAttributes(element, ['class'], function (nodes) {\r\n if (nodes.includes(element)) {\r\n checkState(self, element, state);\r\n }\r\n });\r\n },\r\n clone: function () {\r\n return extend(ClassNameMixinSuper.clone.call(this), { classNames: this.classNames });\r\n },\r\n onClassNameUpdated: function (element, prevState, state) {\r\n }\r\n});\r\n","import { definePrototype, extend, makeArray } from \"../include/zeta-dom/util.js\";\r\nimport ClassNameMixin from \"./ClassNameMixin.js\";\r\n\r\nconst AnimateMixinSuper = ClassNameMixin.prototype;\r\n\r\nexport default function AnimateMixin() {\r\n ClassNameMixin.call(this, ['tweening-in', 'tweening-out']);\r\n}\r\n\r\ndefinePrototype(AnimateMixin, ClassNameMixin, {\r\n next: function () {\r\n var self = this;\r\n self.effects = undefined;\r\n self.trigger = undefined;\r\n return AnimateMixinSuper.next.call(self);\r\n },\r\n with: function (props) {\r\n var self = this;\r\n self.effects = props.effects;\r\n self.trigger = props.trigger;\r\n return self;\r\n },\r\n withEffects: function () {\r\n this.effects = makeArray(arguments);\r\n return this;\r\n },\r\n getCustomAttributes: function () {\r\n var self = this;\r\n return extend({}, AnimateMixinSuper.getCustomAttributes.call(self), {\r\n 'animate-in': (self.effects || []).join(' '),\r\n 'animate-on': self.trigger || 'show'\r\n });\r\n }\r\n});\r\n","import { definePrototype } from \"../include/zeta-dom/util.js\";\r\nimport ClassNameMixin from \"./ClassNameMixin.js\";\r\n\r\nconst AnimateSequenceItemMixinSuper = ClassNameMixin.prototype;\r\n\r\nexport default function AnimateSequenceItemMixin(className) {\r\n ClassNameMixin.call(this, ['tweening-in', 'tweening-out']);\r\n this.className = className;\r\n}\r\n\r\ndefinePrototype(AnimateSequenceItemMixin, ClassNameMixin, {\r\n getClassNames: function () {\r\n return [this.className].concat(AnimateSequenceItemMixinSuper.getClassNames.call(this));\r\n }\r\n});\r\n","import { definePrototype, extend } from \"../include/zeta-dom/util.js\";\r\nimport AnimateMixin from \"./AnimateMixin.js\";\r\nimport AnimateSequenceItemMixin from \"./AnimateSequenceItemMixin.js\";\r\n\r\nconst AnimateSequenceMixinSuper = AnimateMixin.prototype;\r\nvar animateSequenceMixinCounter = 0;\r\n\r\nexport default function AnimateSequenceMixin() {\r\n var self = this;\r\n AnimateMixin.call(self);\r\n self.className = 'brew-anim-' + (++animateSequenceMixinCounter);\r\n self.item = new AnimateSequenceItemMixin(self.className);\r\n}\r\n\r\ndefinePrototype(AnimateSequenceMixin, AnimateMixin, {\r\n reset: function () {\r\n this.item.reset();\r\n return AnimateSequenceMixinSuper.reset.call(this);\r\n },\r\n getCustomAttributes: function () {\r\n return extend({}, AnimateSequenceMixinSuper.getCustomAttributes.call(this), {\r\n 'animate-sequence': '.' + this.className\r\n });\r\n },\r\n clone: function () {\r\n return extend(AnimateSequenceMixinSuper.clone.call(this), {\r\n item: this.item.ref.getMixin()\r\n });\r\n }\r\n});\r\n","import lib from \"zeta-dom\";const { EventContainer: ZetaEventContainer } = lib; export { ZetaEventContainer };","import dom from \"../include/zeta-dom/dom.js\";\r\nimport { ZetaEventContainer } from \"../include/zeta-dom/events.js\";\r\nimport { definePrototype, is, isFunction } from \"../include/zeta-dom/util.js\";\r\nimport StatefulMixin from \"./StatefulMixin.js\";\r\n\r\nconst ErrorHandlerMixinSuper = StatefulMixin.prototype;\r\nconst emitter = new ZetaEventContainer();\r\n\r\nfunction isErrorMatched(filter, error) {\r\n if (isFunction(filter)) {\r\n return is(error, filter);\r\n }\r\n return error && error.code === filter;\r\n}\r\n\r\nexport default function ErrorHandlerMixin() {\r\n StatefulMixin.call(this);\r\n}\r\n\r\ndefinePrototype(ErrorHandlerMixin, StatefulMixin, {\r\n catch: function (filter, callback) {\r\n if (!callback) {\r\n callback = filter;\r\n filter = null;\r\n }\r\n return emitter.add(this, filter ? 'error' : 'default', function (e) {\r\n if (!filter || isErrorMatched(filter, e.error)) {\r\n return callback(e.error);\r\n }\r\n });\r\n },\r\n initElement: function (element, state) {\r\n var self = this;\r\n ErrorHandlerMixinSuper.initElement.call(self, element, state);\r\n dom.on(element, 'error', function (e) {\r\n var data = { error: e.error };\r\n return emitter.emit('error', self, data) || emitter.emit('default', self, data);\r\n });\r\n }\r\n});\r\n","import { definePrototype, extend } from \"../include/zeta-dom/util.js\";\r\nimport ClassNameMixin from \"./ClassNameMixin.js\";\r\n\r\nconst FlyoutToggleMixinSuper = ClassNameMixin.prototype;\r\n\r\nexport default function FlyoutToggleMixin(mixin) {\r\n ClassNameMixin.call(this, ['target-opened']);\r\n this.flyoutMixin = mixin;\r\n}\r\n\r\ndefinePrototype(FlyoutToggleMixin, ClassNameMixin, {\r\n getCustomAttributes: function () {\r\n var element = this.flyoutMixin.elements()[0];\r\n return extend({}, FlyoutToggleMixinSuper.getCustomAttributes.call(this), {\r\n 'toggle': element && ('#' + element.id)\r\n });\r\n },\r\n clone: function () {\r\n return extend(FlyoutToggleMixinSuper.clone.call(this), { flyoutMixin: this.flyoutMixin });\r\n }\r\n});\r\n","import { defineAliasProperty, definePrototype, each, extend, makeArray } from \"../include/zeta-dom/util.js\";\r\nimport { app } from \"../app.js\";\r\nimport ClassNameMixin from \"./ClassNameMixin.js\";\r\nimport FlyoutToggleMixin from \"./FlyoutToggleMixin.js\";\r\n\r\nconst FlyoutMixinSuper = ClassNameMixin.prototype;\r\nvar flyoutMixinCounter = 0;\r\n\r\nexport default function FlyoutMixin() {\r\n var self = this;\r\n ClassNameMixin.call(self, ['open', 'closing', 'tweening-in', 'tweening-out']);\r\n self.modal = false;\r\n self.isFlyoutOpened = false;\r\n self.animating = false;\r\n self.visible = false;\r\n self.toggle = new FlyoutToggleMixin(self);\r\n}\r\n\r\ndefinePrototype(FlyoutMixin, ClassNameMixin, {\r\n reset: function () {\r\n this.toggle.reset();\r\n return FlyoutMixinSuper.reset.call(this);\r\n },\r\n next: function () {\r\n this.effects = undefined;\r\n return FlyoutMixinSuper.next.call(this);\r\n },\r\n withEffects: function () {\r\n this.effects = makeArray(arguments);\r\n return this;\r\n },\r\n getCustomAttributes: function () {\r\n var self = this;\r\n return extend({}, FlyoutMixinSuper.getCustomAttributes.call(self), {\r\n 'is-flyout': '',\r\n 'swipe-dismiss': self.swipeToDismiss\r\n }, self.modal && {\r\n 'is-modal': ''\r\n }, self.effects && {\r\n 'animate-on': 'open',\r\n 'animate-in': self.effects.join(' '),\r\n 'animate-out': ''\r\n });\r\n },\r\n onOpen: function (callback) {\r\n return this.onToggleState(function (opened) {\r\n if (opened) {\r\n return callback();\r\n }\r\n });\r\n },\r\n onToggleState: function (callback) {\r\n return this.watch('isFlyoutOpened', callback);\r\n },\r\n onVisibilityChanged: function (callback) {\r\n return this.watch('visible', callback);\r\n },\r\n initElement: function (element, state) {\r\n var self = this;\r\n FlyoutMixinSuper.initElement.call(self, element, state);\r\n if (!element.id) {\r\n element.id = 'flyout-' + (++flyoutMixinCounter);\r\n }\r\n app.on(element, {\r\n animationstart: function () {\r\n self.animating = true;\r\n },\r\n animationcomplete: function () {\r\n self.animating = false;\r\n },\r\n }, true);\r\n setImmediate(function () {\r\n each(self.toggle.elements(), function (i, v) {\r\n v.setAttribute('toggle', '#' + element.id);\r\n });\r\n });\r\n },\r\n clone: function () {\r\n var self = this;\r\n var mixin = extend(FlyoutMixinSuper.clone.call(self), {\r\n toggle: self.toggle.ref.getMixin()\r\n });\r\n defineAliasProperty(mixin, 'isFlyoutOpened', self);\r\n defineAliasProperty(mixin, 'modal', self);\r\n return mixin;\r\n },\r\n onClassNameUpdated: function (element, prevState, state) {\r\n var self = this;\r\n self.visible = state.open;\r\n self.isFlyoutOpened = state.open && !state.closing && !state['tweening-out'];\r\n }\r\n});\r\n","import { definePrototype } from \"../include/zeta-dom/util.js\";\r\nimport { setClass } from \"../include/zeta-dom/domUtil.js\";\r\nimport dom from \"../include/zeta-dom/dom.js\";\r\nimport StatefulMixin from \"./StatefulMixin.js\";\r\n\r\nconst FocusStateMixinSuper = StatefulMixin.prototype;\r\n\r\nexport default function FocusStateMixin() {\r\n StatefulMixin.call(this);\r\n}\r\n\r\ndefinePrototype(FocusStateMixin, StatefulMixin, {\r\n initElement: function (element, state) {\r\n FocusStateMixinSuper.initElement.call(this, element, state);\r\n dom.on(element, {\r\n focusin: function () {\r\n state.focused = true;\r\n setClass(element, 'focused', true);\r\n },\r\n focusout: function () {\r\n state.focused = false;\r\n setClass(element, 'focused', false);\r\n }\r\n });\r\n },\r\n getClassNames: function () {\r\n return [{ focused: !!this.state.focused }];\r\n }\r\n});\r\n","import { definePrototype } from \"../include/zeta-dom/util.js\";\r\nimport { setClass } from \"../include/zeta-dom/domUtil.js\";\r\nimport dom from \"../include/zeta-dom/dom.js\";\r\nimport StatefulMixin from \"./StatefulMixin.js\";\r\n\r\nconst LoadingStateMixinSuper = StatefulMixin.prototype;\r\n\r\nexport default function LoadingStateMixin() {\r\n StatefulMixin.call(this);\r\n}\r\n\r\ndefinePrototype(LoadingStateMixin, StatefulMixin, {\r\n initElement: function (element, state) {\r\n LoadingStateMixinSuper.initElement.call(this, element, state);\r\n dom.on(element, {\r\n asyncStart: function () {\r\n state.loading = true;\r\n setClass(element, 'loading', true);\r\n },\r\n asyncEnd: function () {\r\n state.loading = false;\r\n setClass(element, 'loading', false);\r\n },\r\n cancelled: function () {\r\n state.loading = false;\r\n setClass(element, 'loading', false);\r\n }\r\n });\r\n },\r\n getClassNames: function () {\r\n return [{ loading: !!this.state.loading }];\r\n }\r\n});\r\n","import $ from \"../include/external/jquery.js\";\r\nimport { defineAliasProperty, defineHiddenProperty, definePrototype, each, extend, makeArray } from \"../include/zeta-dom/util.js\";\r\nimport { app } from \"../app.js\";\r\nimport Mixin from \"./Mixin.js\";\r\nimport ClassNameMixin from \"./ClassNameMixin.js\";\r\n\r\nconst ScrollableMixinSuper = ClassNameMixin.prototype;\r\n\r\nexport default function ScrollableMixin() {\r\n var self = this;\r\n ClassNameMixin.call(self, ['scrollable-x', 'scrollable-x-l', 'scrollable-x-r', 'scrollable-y', 'scrollable-y-d', 'scrollable-y-u']);\r\n self.target = Mixin.scrollableTarget;\r\n self.pageIndex = 0;\r\n self.scrolling = false;\r\n}\r\n\r\ndefinePrototype(ScrollableMixin, ClassNameMixin, {\r\n withOptions: function (options) {\r\n this.options = options;\r\n return this;\r\n },\r\n getCustomAttributes: function () {\r\n var options = this.options || {};\r\n return extend({}, ScrollableMixinSuper.getCustomAttributes.call(this), {\r\n 'scrollable': [options.direction || 'both', options.handle || 'auto'].join(' '),\r\n }, options.paged && {\r\n 'var': '{ pageIndex: 0 }',\r\n 'scroller-snap-page': options.paged,\r\n 'scroller-page': options.pagedItemSelector,\r\n 'scroller-state': 'pageIndex'\r\n });\r\n },\r\n onPageIndexChanged: function (callback) {\r\n return this.watch('pageIndex', callback);\r\n },\r\n initElement: function (element, state) {\r\n var self = this;\r\n app.on(element, {\r\n statechange: function (e) {\r\n if ('pageIndex' in e.newValues) {\r\n extend(self, { pageIndex: e.newValues.pageIndex });\r\n }\r\n },\r\n scrollStart: function() {\r\n self.scrolling = true;\r\n },\r\n scrollStop: function() {\r\n self.scrolling = false;\r\n }\r\n }, true);\r\n },\r\n clone: function () {\r\n var mixin = ScrollableMixinSuper.clone.call(this);\r\n defineAliasProperty(mixin, 'pageIndex', this);\r\n return mixin;\r\n }\r\n});\r\n\r\neach('destroy enable disable setOptions refresh scrollPadding stop scrollLeft scrollTop scrollBy scrollTo scrollByPage scrollToPage scrollToElement', function (i, v) {\r\n defineHiddenProperty(ScrollableMixin.prototype, v, function () {\r\n var obj = $(this.elements());\r\n return obj.scrollable.apply(obj, [v].concat(makeArray(arguments)));\r\n });\r\n});\r\n","import { useState } from \"react\";\r\nimport { extend } from \"./include/zeta-dom/util.js\";\r\nimport Mixin from \"./mixins/Mixin.js\";\r\nimport AnimateMixin from \"./mixins/AnimateMixin.js\";\r\nimport AnimateSequenceItemMixin from \"./mixins/AnimateSequenceItemMixin.js\";\r\nimport AnimateSequenceMixin from \"./mixins/AnimateSequenceMixin.js\";\r\nimport ClassNameMixin from \"./mixins/ClassNameMixin.js\";\r\nimport ErrorHandlerMixin from \"./mixins/ErrorHandlerMixin.js\";\r\nimport FlyoutMixin from \"./mixins/FlyoutMixin.js\";\r\nimport FlyoutToggleMixin from \"./mixins/FlyoutToggleMixin.js\";\r\nimport FocusStateMixin from \"./mixins/FocusStateMixin.js\";\r\nimport LoadingStateMixin from \"./mixins/LoadingStateMixin.js\";\r\nimport StatefulMixin from \"./mixins/StatefulMixin.js\";\r\nimport ScrollableMixin from \"./mixins/ScrollableMixin.js\";\r\n\r\nfunction extendSelf(options) {\r\n extend(this, options);\r\n}\r\n\r\nfunction createUseFunction(ctor) {\r\n return function () {\r\n var mixin = useMixin(ctor);\r\n (mixin.withOptions || extendSelf).apply(mixin, arguments);\r\n return mixin;\r\n };\r\n}\r\n\r\nexport const useAnimateMixin = createUseFunction(AnimateMixin);\r\nexport const useAnimateSequenceMixin = createUseFunction(AnimateSequenceMixin);\r\nexport const useErrorHandlerMixin = createUseFunction(ErrorHandlerMixin);\r\nexport const useFlyoutMixin = createUseFunction(FlyoutMixin);\r\nexport const useFocusStateMixin = createUseFunction(FocusStateMixin);\r\nexport const useLoadingStateMixin = createUseFunction(LoadingStateMixin);\r\nexport const useScrollableMixin = createUseFunction(ScrollableMixin);\r\n\r\nexport function useMixin(ctor) {\r\n return useState(function () {\r\n return new ctor();\r\n })[0].reset();\r\n}\r\n\r\nexport function useMixinRef(mixin) {\r\n return mixin && mixin.getMixin().reset();\r\n}\r\n\r\nexport {\r\n Mixin,\r\n AnimateMixin,\r\n AnimateSequenceItemMixin,\r\n AnimateSequenceMixin,\r\n ClassNameMixin,\r\n ErrorHandlerMixin,\r\n FlyoutMixin,\r\n FlyoutToggleMixin,\r\n FocusStateMixin,\r\n LoadingStateMixin,\r\n StatefulMixin,\r\n ScrollableMixin\r\n}\r\n","import brew from \"./include/brew-js/app.js\";\r\nexport default brew;\r\n\r\nexport * from \"./dialog.js\";\r\nexport * from \"./hooks.js\";\r\nexport * from \"./i18n.js\";\r\nexport * from \"./mixin.js\";\r\nexport * from \"./view.js\";\r\n","import * as all from \"./index.js\";\r\nexport default all;\r\n"],"names":["root","factory","exports","module","require","define","amd","self","__WEBPACK_EXTERNAL_MODULE__80__","__WEBPACK_EXTERNAL_MODULE__359__","__WEBPACK_EXTERNAL_MODULE__318__","__WEBPACK_EXTERNAL_MODULE__654__","__WEBPACK_EXTERNAL_MODULE__103__","__WEBPACK_EXTERNAL_MODULE__28__","__WEBPACK_EXTERNAL_MODULE__145__","jQuery","window","waterpipe","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","d","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","r","Symbol","toStringTag","value","lib","install","noop","either","pipe","is","isFunction","isUndefinedOrNull","isArray","makeArray","isThenable","isPlainObject","isArrayLike","extend","each","any","map","grep","splice","single","kv","pick","equal","exclude","mapGet","mapRemove","arrRemove","setAdd","combineFn","createPrivateStore","executeOnce","setImmediate","setTimeout","setTimeoutOnce","setInterval","setIntervalSafe","keys","setImmediateOnce","throwNotFunction","errorWithCode","values","getOwnPropertyDescriptors","definePrototype","defineGetterProperty","defineOwnProperty","defineHiddenProperty","defineAliasProperty","watchable","defineObservableProperty","watch","watchOnce","inherit","randomId","deepFreeze","iequal","always","repeat","camel","hyphenate","ucfirst","lcfirst","trim","matchWord","htmlDecode","resolve","reject","resolveAll","catchAsync","setPromiseTimeout","containsOrEquals","domReady","tagName","isVisible","matchSelector","comparePosition","connected","removeNode","acceptNode","combineNodeFilters","iterateNode","iterateNodeToArray","getCommonAncestor","parentsAndSelf","selectIncludeSelf","selectClosestRelative","createNodeIterator","createTreeWalker","bind","bindUntil","dispatchDOMMouseEvent","setClass","getClass","getScrollOffset","getScrollParent","getContentRect","scrollBy","scrollIntoView","makeSelection","getRect","getRects","toPlainRect","rectEquals","rectCovers","rectIntersects","pointInRect","mergeRect","elementFromPoint","textInputAllowed","beginDrag","beginPinchZoom","getShortcut","setShortcut","focusable","focused","setModal","releaseModal","retainFocus","releaseFocus","iterateFocusPath","focus","closeFlyout","openFlyout","createDialog","props","promise","document","createElement","closing","closeDialog","then","onClose","onRender","ReactDOM","close","open","className","body","appendChild","dom","modal","setAttribute","React","onCommit","onOpen","Dialog","_props","useState","dialog","useEffect","opened","isOpen","children","app","app_","defaults","stateId","notifyAsync","lock","locked","cancelLock","animateIn","preventLeave","animateOut","routeMap","Map","usedParams","StateContext","freeze","active","ViewContainer","this","arguments","mounted","history","state","componentWillUnmount","getViewComponent","forceUpdate","useViewContainerState","isViewMatched","view","params","matchers","v","i","registerView","routeParams","Component","useAsync","ref","useRef","error","onComponentLoaded","current","rootProps","RegExp","test","set","id","matchCount","length","renderView","views","shift","defaultView","sort","a","b","linkTo","viewParams","newParams","navigateTo","redirectTo","componentDidMount","componentDidCatch","parentElement","render","Promise","_resolve","V","currentViewComponent","currentView","currentElement","prevView","prevElement","providerProps","Provider","ViewStateContainer","element","states","getCurrentStates","useAppReady","sReady","ready","setReady","useRouteParam","name","defaultValue","container","route","sValue","setValue","console","getPath","useRouteState","cur","provider","cache","getState","uniqueId","ViewStateProvider","empty","create","toPrimitive","TString","toString","createCallback","translate","data","result","html","__html","lazy","useLanguage","useObservableProperty","makeTranslation","resources","defaultLang","re","join","getTranslation","prefix","noEncode","lang","str","getTranslationCallback","$1","slice","lastMatch","useTranslation","language","t","apply","StaticAttributeMixin","attributes","Mixin","getCustomAttributes","next","getRef","getClassNames","scrollableTarget","use","args","mixins","filter","refs","push","classNames","_","MixinRefImpl","mixin","StatefulMixin","counter","getMixin","clone","initState","reset","initElement","elements","getPrototypeOf","ClassNameMixinSuper","checkState","isAsync","prev","classList","contains","cb","onClassNameUpdated","ClassNameMixin","nodes","includes","prevState","AnimateMixinSuper","AnimateMixin","effects","trigger","with","withEffects","AnimateSequenceItemMixinSuper","AnimateSequenceItemMixin","concat","AnimateSequenceMixinSuper","animateSequenceMixinCounter","AnimateSequenceMixin","item","ZetaEventContainer","ErrorHandlerMixinSuper","emitter","ErrorHandlerMixin","catch","callback","add","e","code","isErrorMatched","emit","FlyoutToggleMixinSuper","FlyoutToggleMixin","flyoutMixin","FlyoutMixinSuper","flyoutMixinCounter","FlyoutMixin","isFlyoutOpened","animating","visible","toggle","swipeToDismiss","onToggleState","onVisibilityChanged","animationstart","animationcomplete","FocusStateMixinSuper","FocusStateMixin","focusin","focusout","LoadingStateMixinSuper","LoadingStateMixin","asyncStart","loading","asyncEnd","cancelled","ScrollableMixinSuper","ScrollableMixin","target","pageIndex","scrolling","extendSelf","options","createUseFunction","ctor","useMixin","withOptions","direction","handle","paged","pagedItemSelector","onPageIndexChanged","statechange","newValues","scrollStart","scrollStop","$","scrollable","useAnimateMixin","useAnimateSequenceMixin","useErrorHandlerMixin","useFlyoutMixin","useFocusStateMixin","useLoadingStateMixin","useScrollableMixin","useMixinRef"],"sourceRoot":""}
|
package/hooks.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
export const ViewStateContainer: React.FC;
|
|
2
|
+
|
|
1
3
|
/**
|
|
2
4
|
* Returns if the app has completed initialization, and
|
|
3
5
|
* refresh the component when the app has changed its ready state.
|
|
@@ -12,3 +14,15 @@ export function useAppReady(): boolean;
|
|
|
12
14
|
* @param defaultValue When given, an empty value in current route state will cause a redirection which set the route parameter to such value.
|
|
13
15
|
*/
|
|
14
16
|
export function useRouteParam(name: string, defaultValue?: string): string;
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Returns a stateful value, and a function to update it.
|
|
20
|
+
* Same as {@link React.useState}, but the state is persisted in route history.
|
|
21
|
+
*/
|
|
22
|
+
export function useRouteState<T>(key: string | symbol, defaultValue: T): [T, React.Dispatch<React.SetStateAction<T>>];
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Returns a stateful value, and a function to update it.
|
|
26
|
+
* Same as {@link React.useState}, but the state is persisted in route history.
|
|
27
|
+
*/
|
|
28
|
+
export function useRouteState<T = undefined>(key: string | symbol): [T | undefined, React.Dispatch<React.SetStateAction<T | undefined>>];
|
package/hooks.js
CHANGED
|
@@ -1,6 +1,14 @@
|
|
|
1
|
-
import { useEffect, useState } from "react";
|
|
2
|
-
import {
|
|
1
|
+
import { createElement, useEffect, useState } from "react";
|
|
2
|
+
import { ViewStateProvider } from "zeta-dom-react";
|
|
3
|
+
import { extend, kv, setImmediate } from "./include/zeta-dom/util.js";
|
|
3
4
|
import { app } from "./app.js";
|
|
5
|
+
import { useViewContainerState } from "./view.js";
|
|
6
|
+
|
|
7
|
+
const states = {};
|
|
8
|
+
|
|
9
|
+
function getCurrentStates() {
|
|
10
|
+
return states[history.state] || (states[history.state] = {});
|
|
11
|
+
}
|
|
4
12
|
|
|
5
13
|
export function useAppReady() {
|
|
6
14
|
const sReady = useState(false);
|
|
@@ -14,16 +22,63 @@ export function useAppReady() {
|
|
|
14
22
|
}
|
|
15
23
|
|
|
16
24
|
export function useRouteParam(name, defaultValue) {
|
|
17
|
-
const
|
|
25
|
+
const container = useViewContainerState();
|
|
26
|
+
const route = app.route;
|
|
27
|
+
const sValue = useState(route[name]);
|
|
18
28
|
const value = sValue[0], setValue = sValue[1];
|
|
19
29
|
useEffect(function () {
|
|
20
|
-
var current =
|
|
30
|
+
var current = route[name];
|
|
21
31
|
// route parameter might be changed after state initialization and before useEffect hook is called
|
|
22
32
|
setValue(current);
|
|
23
|
-
|
|
33
|
+
if (name in route) {
|
|
34
|
+
return route.watch(name, function (value) {
|
|
35
|
+
setImmediate(function () {
|
|
36
|
+
if (container.active) {
|
|
37
|
+
setValue(value);
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
console.error('Route parameter ' + name + ' does not exist');
|
|
24
43
|
}, [name, defaultValue]);
|
|
25
44
|
if (!value && defaultValue !== undefined) {
|
|
26
|
-
app.navigate(
|
|
45
|
+
app.navigate(route.getPath(extend({}, route, kv(name, defaultValue))), true);
|
|
27
46
|
}
|
|
28
47
|
return value || '';
|
|
29
48
|
}
|
|
49
|
+
|
|
50
|
+
export function useRouteState(key, defaultValue) {
|
|
51
|
+
const container = useViewContainerState();
|
|
52
|
+
const cur = getCurrentStates();
|
|
53
|
+
const state = useState(key in cur ? cur[key] : defaultValue);
|
|
54
|
+
if (container.active) {
|
|
55
|
+
cur[key] = state[0];
|
|
56
|
+
}
|
|
57
|
+
return state;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
export function ViewStateContainer(props) {
|
|
61
|
+
const container = useViewContainerState();
|
|
62
|
+
const provider = useState(function () {
|
|
63
|
+
const cache = {};
|
|
64
|
+
return {
|
|
65
|
+
getState: function (uniqueId, key) {
|
|
66
|
+
var cur = getCurrentStates();
|
|
67
|
+
var state = cache[uniqueId] || (cache[uniqueId] = {
|
|
68
|
+
value: cur[key] && cur[key].value,
|
|
69
|
+
get: function () {
|
|
70
|
+
return state.value;
|
|
71
|
+
},
|
|
72
|
+
set: function (value) {
|
|
73
|
+
state.value = value;
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
if (container.active) {
|
|
77
|
+
cur[key] = state;
|
|
78
|
+
}
|
|
79
|
+
return state;
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
})[0];
|
|
83
|
+
return createElement(ViewStateProvider, { value: provider }, props.children);
|
|
84
|
+
}
|
package/i18n.d.ts
CHANGED
|
@@ -63,6 +63,19 @@ export function makeTranslation<T extends Zeta.Dictionary<object>, K extends key
|
|
|
63
63
|
type ResourceKey<T> = { [P in ResourcePrefix]: StringKeysOf<ResourceObject[P]> }[T];
|
|
64
64
|
type ResourceGlobalKey = { [P in ResourcePrefix]: `${P}.${StringKeysOf<ResourceObject[P]>}` }[ResourcePrefix];
|
|
65
65
|
|
|
66
|
+
interface GetTranslation {
|
|
67
|
+
/**
|
|
68
|
+
* Create translation callback which only looks up all prefixes.
|
|
69
|
+
* Translation key must include prefix.
|
|
70
|
+
*/
|
|
71
|
+
(): Translate<ResourceGlobalKey>;
|
|
72
|
+
/**
|
|
73
|
+
* Create translation callback which only looks up the given prefixes.
|
|
74
|
+
* Translation string will be looked up in prefixes of the specified order.
|
|
75
|
+
*/
|
|
76
|
+
<T extends readonly ResourcePrefix[]>(...args: T): Translate<ResourceKey<ArrayMember<T>>>;
|
|
77
|
+
}
|
|
78
|
+
|
|
66
79
|
interface UseTranslationHook {
|
|
67
80
|
/**
|
|
68
81
|
* Create translation callback which only looks up all prefixes.
|
|
@@ -77,6 +90,7 @@ export function makeTranslation<T extends Zeta.Dictionary<object>, K extends key
|
|
|
77
90
|
}
|
|
78
91
|
|
|
79
92
|
declare const translate: Translate<ResourceGlobalKey>;
|
|
93
|
+
declare const getTranslation: GetTranslation;
|
|
80
94
|
declare const useTranslation: UseTranslationHook;
|
|
81
|
-
return { translate, useTranslation };
|
|
95
|
+
return { translate, getTranslation, useTranslation };
|
|
82
96
|
}
|
package/i18n.js
CHANGED
|
@@ -18,7 +18,8 @@ if (toPrimitive) {
|
|
|
18
18
|
|
|
19
19
|
function createCallback(translate) {
|
|
20
20
|
var callback = function (key, data) {
|
|
21
|
-
|
|
21
|
+
var result = translate(key, data, true);
|
|
22
|
+
return result !== undefined ? result : key;
|
|
22
23
|
};
|
|
23
24
|
return extend(callback, {
|
|
24
25
|
html: function (id, data) {
|
|
@@ -38,37 +39,46 @@ export function makeTranslation(resources, defaultLang) {
|
|
|
38
39
|
const re = new RegExp('^(' + Object.keys(resources[defaultLang]).join('|') + ')\\.');
|
|
39
40
|
const cache = {};
|
|
40
41
|
|
|
41
|
-
function getTranslation(prefix, name, data, noEncode) {
|
|
42
|
-
var str = ((resources[
|
|
43
|
-
if (str
|
|
44
|
-
|
|
42
|
+
function getTranslation(prefix, name, data, noEncode, lang) {
|
|
43
|
+
var str = ((resources[lang] || empty)[prefix] || empty)[name];
|
|
44
|
+
if (typeof str === 'string') {
|
|
45
|
+
if (str && (!noEncode || data !== undefined)) {
|
|
46
|
+
return waterpipe(str, data, { noEncode });
|
|
47
|
+
}
|
|
48
|
+
return str;
|
|
49
|
+
}
|
|
50
|
+
if (lang !== defaultLang) {
|
|
51
|
+
return getTranslation(prefix, name, data, noEncode, defaultLang);
|
|
45
52
|
}
|
|
46
|
-
return str;
|
|
47
53
|
}
|
|
48
54
|
|
|
49
55
|
function translate(key, data, noEncode) {
|
|
50
56
|
var prefix = re.test(key) ? RegExp.$1 : '';
|
|
51
57
|
var name = prefix ? key.slice(RegExp.lastMatch.length) : key;
|
|
52
|
-
return getTranslation(prefix, name, data, noEncode)
|
|
58
|
+
return getTranslation(prefix, name, data, noEncode, app.language);
|
|
53
59
|
}
|
|
54
60
|
|
|
55
|
-
function
|
|
61
|
+
function getTranslationCallback() {
|
|
56
62
|
var prefix = makeArray(arguments);
|
|
63
|
+
var key = prefix.join(' ');
|
|
64
|
+
return cache[key] || (cache[key] = createCallback(function (key, data, noEncode) {
|
|
65
|
+
var lang = app.language;
|
|
66
|
+
return single(prefix, function (v) {
|
|
67
|
+
return getTranslation(v, key, data, noEncode, lang);
|
|
68
|
+
});
|
|
69
|
+
}));
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
function useTranslation() {
|
|
57
73
|
var language = useLanguage();
|
|
58
|
-
var t =
|
|
59
|
-
if (prefix[0]) {
|
|
60
|
-
var key = prefix.join(' ');
|
|
61
|
-
t = cache[key] || (cache[key] = createCallback(function (key, data, noEncode) {
|
|
62
|
-
return single(prefix, function (v) {
|
|
63
|
-
return getTranslation(v, key, data, noEncode);
|
|
64
|
-
}) || key;
|
|
65
|
-
}));
|
|
66
|
-
}
|
|
74
|
+
var t = getTranslationCallback.apply(0, arguments);
|
|
67
75
|
return { language, t };
|
|
68
76
|
}
|
|
69
77
|
|
|
78
|
+
cache[''] = createCallback(translate);
|
|
70
79
|
return {
|
|
71
|
-
translate:
|
|
80
|
+
translate: cache[''],
|
|
81
|
+
getTranslation: getTranslationCallback,
|
|
72
82
|
useTranslation
|
|
73
83
|
};
|
|
74
84
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "zeta-dom/domLock";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "brew-js-react",
|
|
3
|
-
"version": "0.1
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "index.js",
|
|
@@ -19,8 +19,8 @@
|
|
|
19
19
|
"dependencies": {
|
|
20
20
|
"brew-js": ">=0.3.2",
|
|
21
21
|
"waterpipe": "^2.5.0",
|
|
22
|
-
"zeta-dom": ">=0.
|
|
23
|
-
"zeta-dom-react": ">=0.
|
|
22
|
+
"zeta-dom": ">=0.2.3",
|
|
23
|
+
"zeta-dom-react": ">=0.2.1"
|
|
24
24
|
},
|
|
25
25
|
"peerDependencies": {
|
|
26
26
|
"react": ">=16.8.0",
|
package/view.d.ts
CHANGED
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
export type ViewComponentRootProps = React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>;
|
|
2
2
|
export type ViewComponent<P> = React.FC<P>;
|
|
3
3
|
|
|
4
|
+
export interface ViewContainerState {
|
|
5
|
+
readonly active: boolean;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export function useViewContainerState(): ViewContainerState;
|
|
9
|
+
|
|
4
10
|
/**
|
|
5
11
|
* Registers view component with specific route paramters.
|
|
6
12
|
* Route parameters will be matched against current route state by {@link renderView}.
|