@telia-ace/widget-ui 1.0.0
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/LICENSE.txt +6 -0
- package/README.md +3 -0
- package/lib/components/anchor-link.d.ts +4 -0
- package/lib/components/anchor-link.js +7 -0
- package/lib/components/button.d.ts +4 -0
- package/lib/components/button.js +64 -0
- package/lib/components/checkbox.d.ts +7 -0
- package/lib/components/checkbox.js +39 -0
- package/lib/components/drawer/drawer.d.ts +21 -0
- package/lib/components/drawer/drawer.js +150 -0
- package/lib/components/drawer/index.d.ts +3 -0
- package/lib/components/drawer/index.js +29 -0
- package/lib/components/dropdown/dropdown.d.ts +9 -0
- package/lib/components/dropdown/dropdown.js +155 -0
- package/lib/components/dropdown/index.d.ts +4 -0
- package/lib/components/dropdown/index.js +10 -0
- package/lib/components/dropdown/use-position.d.ts +5 -0
- package/lib/components/dropdown/use-position.js +57 -0
- package/lib/components/empty.d.ts +4 -0
- package/lib/components/empty.js +40 -0
- package/lib/components/grid.d.ts +7 -0
- package/lib/components/grid.js +64 -0
- package/lib/components/html.d.ts +12 -0
- package/lib/components/html.js +78 -0
- package/lib/components/icon.d.ts +7 -0
- package/lib/components/icon.js +35 -0
- package/lib/components/index.d.ts +58 -0
- package/lib/components/index.js +69 -0
- package/lib/components/input.d.ts +10 -0
- package/lib/components/input.js +94 -0
- package/lib/components/item-list.d.ts +10 -0
- package/lib/components/item-list.js +62 -0
- package/lib/components/item-tree.d.ts +13 -0
- package/lib/components/item-tree.js +55 -0
- package/lib/components/lightbox.d.ts +6 -0
- package/lib/components/lightbox.js +92 -0
- package/lib/components/link.d.ts +11 -0
- package/lib/components/link.js +99 -0
- package/lib/components/list.d.ts +9 -0
- package/lib/components/list.js +56 -0
- package/lib/components/modal/confirm.d.ts +12 -0
- package/lib/components/modal/confirm.js +61 -0
- package/lib/components/modal/index.d.ts +4 -0
- package/lib/components/modal/index.js +10 -0
- package/lib/components/modal/modal.d.ts +10 -0
- package/lib/components/modal/modal.js +127 -0
- package/lib/components/not-found.d.ts +9 -0
- package/lib/components/not-found.js +55 -0
- package/lib/components/overlay.d.ts +8 -0
- package/lib/components/overlay.js +73 -0
- package/lib/components/paragraph.d.ts +11 -0
- package/lib/components/paragraph.js +66 -0
- package/lib/components/portal.d.ts +7 -0
- package/lib/components/portal.js +61 -0
- package/lib/components/route-link.d.ts +11 -0
- package/lib/components/route-link.js +115 -0
- package/lib/components/symbol-badge.d.ts +15 -0
- package/lib/components/symbol-badge.js +197 -0
- package/lib/components/tab-stop.d.ts +18 -0
- package/lib/components/tab-stop.js +100 -0
- package/lib/components/text-link.d.ts +8 -0
- package/lib/components/text-link.js +62 -0
- package/lib/components/text.d.ts +4 -0
- package/lib/components/text.js +35 -0
- package/lib/components/timestamp.d.ts +13 -0
- package/lib/components/timestamp.js +39 -0
- package/lib/components/tooltip.d.ts +8 -0
- package/lib/components/tooltip.js +127 -0
- package/lib/components/transition-component.d.ts +30 -0
- package/lib/components/transition-component.js +77 -0
- package/lib/components/typography.d.ts +9 -0
- package/lib/components/typography.js +43 -0
- package/lib/components/widget-link.d.ts +10 -0
- package/lib/components/widget-link.js +116 -0
- package/lib/contexts/index.d.ts +9 -0
- package/lib/contexts/index.js +15 -0
- package/lib/create-react-component.d.ts +11 -0
- package/lib/create-react-component.js +18 -0
- package/lib/hooks/index.d.ts +27 -0
- package/lib/hooks/index.js +58 -0
- package/lib/hooks/use-action.d.ts +4 -0
- package/lib/hooks/use-action.js +21 -0
- package/lib/hooks/use-children.d.ts +4 -0
- package/lib/hooks/use-children.js +70 -0
- package/lib/hooks/use-columns.d.ts +2 -0
- package/lib/hooks/use-columns.js +6 -0
- package/lib/hooks/use-component-descriptor.d.ts +2 -0
- package/lib/hooks/use-component-descriptor.js +6 -0
- package/lib/hooks/use-component-node.d.ts +6 -0
- package/lib/hooks/use-component-node.js +37 -0
- package/lib/hooks/use-component-platform.d.ts +4 -0
- package/lib/hooks/use-component-platform.js +39 -0
- package/lib/hooks/use-component.d.ts +3 -0
- package/lib/hooks/use-component.js +57 -0
- package/lib/hooks/use-container.d.ts +2 -0
- package/lib/hooks/use-container.js +6 -0
- package/lib/hooks/use-context.d.ts +3 -0
- package/lib/hooks/use-context.js +50 -0
- package/lib/hooks/use-dispatch.d.ts +3 -0
- package/lib/hooks/use-dispatch.js +64 -0
- package/lib/hooks/use-event-listener.d.ts +2 -0
- package/lib/hooks/use-event-listener.js +21 -0
- package/lib/hooks/use-events.d.ts +3 -0
- package/lib/hooks/use-events.js +12 -0
- package/lib/hooks/use-is-mounted.d.ts +3 -0
- package/lib/hooks/use-is-mounted.js +14 -0
- package/lib/hooks/use-key-press.d.ts +2 -0
- package/lib/hooks/use-key-press.js +46 -0
- package/lib/hooks/use-layout.d.ts +3 -0
- package/lib/hooks/use-layout.js +50 -0
- package/lib/hooks/use-previous.d.ts +2 -0
- package/lib/hooks/use-previous.js +11 -0
- package/lib/hooks/use-properties.d.ts +6 -0
- package/lib/hooks/use-properties.js +9 -0
- package/lib/hooks/use-render-state.d.ts +4 -0
- package/lib/hooks/use-render-state.js +66 -0
- package/lib/hooks/use-route-data.d.ts +4 -0
- package/lib/hooks/use-route-data.js +54 -0
- package/lib/hooks/use-router.d.ts +3 -0
- package/lib/hooks/use-router.js +9 -0
- package/lib/hooks/use-scroll.d.ts +2 -0
- package/lib/hooks/use-scroll.js +71 -0
- package/lib/hooks/use-settings.d.ts +3 -0
- package/lib/hooks/use-settings.js +38 -0
- package/lib/hooks/use-toggle.d.ts +2 -0
- package/lib/hooks/use-toggle.js +28 -0
- package/lib/hooks/use-transition-end.d.ts +2 -0
- package/lib/hooks/use-transition-end.js +62 -0
- package/lib/hooks/use-unique-menu.d.ts +2 -0
- package/lib/hooks/use-unique-menu.js +15 -0
- package/lib/hooks/use-widget-event.d.ts +3 -0
- package/lib/hooks/use-widget-event.js +21 -0
- package/lib/index.d.ts +9 -0
- package/lib/index.js +92 -0
- package/lib/styles.d.ts +19 -0
- package/lib/styles.js +53 -0
- package/lib/utils/animations.d.ts +18 -0
- package/lib/utils/animations.js +104 -0
- package/lib/utils/browser.d.ts +12 -0
- package/lib/utils/browser.js +54 -0
- package/lib/utils/convert-to-string-attributes.d.ts +2 -0
- package/lib/utils/convert-to-string-attributes.js +23 -0
- package/lib/utils/create-empty-component.d.ts +4 -0
- package/lib/utils/create-empty-component.js +25 -0
- package/lib/utils/embedded-link-mapper.d.ts +4 -0
- package/lib/utils/embedded-link-mapper.js +62 -0
- package/lib/utils/filter-css-props.d.ts +8 -0
- package/lib/utils/filter-css-props.js +28 -0
- package/lib/utils/generic-hash-link.d.ts +8 -0
- package/lib/utils/generic-hash-link.js +70 -0
- package/lib/utils/heading-styles.d.ts +1 -0
- package/lib/utils/heading-styles.js +48 -0
- package/lib/utils/index.d.ts +12 -0
- package/lib/utils/index.js +28 -0
- package/lib/utils/process-html-string.d.ts +4 -0
- package/lib/utils/process-html-string.js +16 -0
- package/lib/utils/render-instructions.d.ts +8 -0
- package/lib/utils/render-instructions.js +19 -0
- package/lib-esm/components/anchor-link.d.ts +4 -0
- package/lib-esm/components/anchor-link.js +5 -0
- package/lib-esm/components/button.d.ts +4 -0
- package/lib-esm/components/button.js +36 -0
- package/lib-esm/components/checkbox.d.ts +7 -0
- package/lib-esm/components/checkbox.js +34 -0
- package/lib-esm/components/drawer/drawer.d.ts +21 -0
- package/lib-esm/components/drawer/drawer.js +121 -0
- package/lib-esm/components/drawer/index.d.ts +3 -0
- package/lib-esm/components/drawer/index.js +3 -0
- package/lib-esm/components/dropdown/dropdown.d.ts +9 -0
- package/lib-esm/components/dropdown/dropdown.js +127 -0
- package/lib-esm/components/dropdown/index.d.ts +4 -0
- package/lib-esm/components/dropdown/index.js +3 -0
- package/lib-esm/components/dropdown/use-position.d.ts +5 -0
- package/lib-esm/components/dropdown/use-position.js +53 -0
- package/lib-esm/components/empty.d.ts +4 -0
- package/lib-esm/components/empty.js +35 -0
- package/lib-esm/components/grid.d.ts +7 -0
- package/lib-esm/components/grid.js +36 -0
- package/lib-esm/components/html.d.ts +12 -0
- package/lib-esm/components/html.js +53 -0
- package/lib-esm/components/icon.d.ts +7 -0
- package/lib-esm/components/icon.js +30 -0
- package/lib-esm/components/index.d.ts +58 -0
- package/lib-esm/components/index.js +30 -0
- package/lib-esm/components/input.d.ts +10 -0
- package/lib-esm/components/input.js +69 -0
- package/lib-esm/components/item-list.d.ts +10 -0
- package/lib-esm/components/item-list.js +34 -0
- package/lib-esm/components/item-tree.d.ts +13 -0
- package/lib-esm/components/item-tree.js +50 -0
- package/lib-esm/components/lightbox.d.ts +6 -0
- package/lib-esm/components/lightbox.js +64 -0
- package/lib-esm/components/link.d.ts +11 -0
- package/lib-esm/components/link.js +71 -0
- package/lib-esm/components/list.d.ts +9 -0
- package/lib-esm/components/list.js +31 -0
- package/lib-esm/components/modal/confirm.d.ts +12 -0
- package/lib-esm/components/modal/confirm.js +33 -0
- package/lib-esm/components/modal/index.d.ts +4 -0
- package/lib-esm/components/modal/index.js +3 -0
- package/lib-esm/components/modal/modal.d.ts +10 -0
- package/lib-esm/components/modal/modal.js +99 -0
- package/lib-esm/components/not-found.d.ts +9 -0
- package/lib-esm/components/not-found.js +27 -0
- package/lib-esm/components/overlay.d.ts +8 -0
- package/lib-esm/components/overlay.js +45 -0
- package/lib-esm/components/paragraph.d.ts +11 -0
- package/lib-esm/components/paragraph.js +38 -0
- package/lib-esm/components/portal.d.ts +7 -0
- package/lib-esm/components/portal.js +36 -0
- package/lib-esm/components/route-link.d.ts +11 -0
- package/lib-esm/components/route-link.js +90 -0
- package/lib-esm/components/symbol-badge.d.ts +15 -0
- package/lib-esm/components/symbol-badge.js +192 -0
- package/lib-esm/components/tab-stop.d.ts +18 -0
- package/lib-esm/components/tab-stop.js +75 -0
- package/lib-esm/components/text-link.d.ts +8 -0
- package/lib-esm/components/text-link.js +34 -0
- package/lib-esm/components/text.d.ts +4 -0
- package/lib-esm/components/text.js +30 -0
- package/lib-esm/components/timestamp.d.ts +13 -0
- package/lib-esm/components/timestamp.js +33 -0
- package/lib-esm/components/tooltip.d.ts +8 -0
- package/lib-esm/components/tooltip.js +99 -0
- package/lib-esm/components/transition-component.d.ts +30 -0
- package/lib-esm/components/transition-component.js +72 -0
- package/lib-esm/components/typography.d.ts +9 -0
- package/lib-esm/components/typography.js +38 -0
- package/lib-esm/components/widget-link.d.ts +10 -0
- package/lib-esm/components/widget-link.js +88 -0
- package/lib-esm/contexts/index.d.ts +9 -0
- package/lib-esm/contexts/index.js +12 -0
- package/lib-esm/create-react-component.d.ts +11 -0
- package/lib-esm/create-react-component.js +16 -0
- package/lib-esm/hooks/index.d.ts +27 -0
- package/lib-esm/hooks/index.js +26 -0
- package/lib-esm/hooks/use-action.d.ts +4 -0
- package/lib-esm/hooks/use-action.js +14 -0
- package/lib-esm/hooks/use-children.d.ts +4 -0
- package/lib-esm/hooks/use-children.js +65 -0
- package/lib-esm/hooks/use-columns.d.ts +2 -0
- package/lib-esm/hooks/use-columns.js +4 -0
- package/lib-esm/hooks/use-component-descriptor.d.ts +2 -0
- package/lib-esm/hooks/use-component-descriptor.js +4 -0
- package/lib-esm/hooks/use-component-node.d.ts +6 -0
- package/lib-esm/hooks/use-component-node.js +35 -0
- package/lib-esm/hooks/use-component-platform.d.ts +4 -0
- package/lib-esm/hooks/use-component-platform.js +34 -0
- package/lib-esm/hooks/use-component.d.ts +3 -0
- package/lib-esm/hooks/use-component.js +52 -0
- package/lib-esm/hooks/use-container.d.ts +2 -0
- package/lib-esm/hooks/use-container.js +4 -0
- package/lib-esm/hooks/use-context.d.ts +3 -0
- package/lib-esm/hooks/use-context.js +45 -0
- package/lib-esm/hooks/use-dispatch.d.ts +3 -0
- package/lib-esm/hooks/use-dispatch.js +59 -0
- package/lib-esm/hooks/use-event-listener.d.ts +2 -0
- package/lib-esm/hooks/use-event-listener.js +19 -0
- package/lib-esm/hooks/use-events.d.ts +3 -0
- package/lib-esm/hooks/use-events.js +7 -0
- package/lib-esm/hooks/use-is-mounted.d.ts +3 -0
- package/lib-esm/hooks/use-is-mounted.js +12 -0
- package/lib-esm/hooks/use-key-press.d.ts +2 -0
- package/lib-esm/hooks/use-key-press.js +41 -0
- package/lib-esm/hooks/use-layout.d.ts +3 -0
- package/lib-esm/hooks/use-layout.js +45 -0
- package/lib-esm/hooks/use-previous.d.ts +2 -0
- package/lib-esm/hooks/use-previous.js +9 -0
- package/lib-esm/hooks/use-properties.d.ts +6 -0
- package/lib-esm/hooks/use-properties.js +7 -0
- package/lib-esm/hooks/use-render-state.d.ts +4 -0
- package/lib-esm/hooks/use-render-state.js +61 -0
- package/lib-esm/hooks/use-route-data.d.ts +4 -0
- package/lib-esm/hooks/use-route-data.js +49 -0
- package/lib-esm/hooks/use-router.d.ts +3 -0
- package/lib-esm/hooks/use-router.js +7 -0
- package/lib-esm/hooks/use-scroll.d.ts +2 -0
- package/lib-esm/hooks/use-scroll.js +66 -0
- package/lib-esm/hooks/use-settings.d.ts +3 -0
- package/lib-esm/hooks/use-settings.js +33 -0
- package/lib-esm/hooks/use-toggle.d.ts +2 -0
- package/lib-esm/hooks/use-toggle.js +26 -0
- package/lib-esm/hooks/use-transition-end.d.ts +2 -0
- package/lib-esm/hooks/use-transition-end.js +60 -0
- package/lib-esm/hooks/use-unique-menu.d.ts +2 -0
- package/lib-esm/hooks/use-unique-menu.js +10 -0
- package/lib-esm/hooks/use-widget-event.d.ts +3 -0
- package/lib-esm/hooks/use-widget-event.js +16 -0
- package/lib-esm/index.d.ts +9 -0
- package/lib-esm/index.js +7 -0
- package/lib-esm/styles.d.ts +19 -0
- package/lib-esm/styles.js +26 -0
- package/lib-esm/utils/animations.d.ts +18 -0
- package/lib-esm/utils/animations.js +101 -0
- package/lib-esm/utils/browser.d.ts +12 -0
- package/lib-esm/utils/browser.js +51 -0
- package/lib-esm/utils/convert-to-string-attributes.d.ts +2 -0
- package/lib-esm/utils/convert-to-string-attributes.js +21 -0
- package/lib-esm/utils/create-empty-component.d.ts +4 -0
- package/lib-esm/utils/create-empty-component.js +20 -0
- package/lib-esm/utils/embedded-link-mapper.d.ts +4 -0
- package/lib-esm/utils/embedded-link-mapper.js +57 -0
- package/lib-esm/utils/filter-css-props.d.ts +8 -0
- package/lib-esm/utils/filter-css-props.js +25 -0
- package/lib-esm/utils/generic-hash-link.d.ts +8 -0
- package/lib-esm/utils/generic-hash-link.js +63 -0
- package/lib-esm/utils/heading-styles.d.ts +1 -0
- package/lib-esm/utils/heading-styles.js +44 -0
- package/lib-esm/utils/index.d.ts +12 -0
- package/lib-esm/utils/index.js +10 -0
- package/lib-esm/utils/process-html-string.d.ts +4 -0
- package/lib-esm/utils/process-html-string.js +10 -0
- package/lib-esm/utils/render-instructions.d.ts +8 -0
- package/lib-esm/utils/render-instructions.js +12 -0
- package/package.json +47 -0
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
16
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
17
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
18
|
+
}
|
|
19
|
+
Object.defineProperty(o, k2, desc);
|
|
20
|
+
}) : (function(o, m, k, k2) {
|
|
21
|
+
if (k2 === undefined) k2 = k;
|
|
22
|
+
o[k2] = m[k];
|
|
23
|
+
}));
|
|
24
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
+
}) : function(o, v) {
|
|
27
|
+
o["default"] = v;
|
|
28
|
+
});
|
|
29
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
36
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
37
|
+
var t = {};
|
|
38
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
39
|
+
t[p] = s[p];
|
|
40
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
41
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
42
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
43
|
+
t[p[i]] = s[p[i]];
|
|
44
|
+
}
|
|
45
|
+
return t;
|
|
46
|
+
};
|
|
47
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
48
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
49
|
+
};
|
|
50
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
51
|
+
var widget_core_1 = require("@telia-ace/widget-core");
|
|
52
|
+
var widget_utilities_1 = require("@telia-ace/widget-utilities");
|
|
53
|
+
var platform_1 = require("@webprovisions/platform");
|
|
54
|
+
var react_1 = __importStar(require("react"));
|
|
55
|
+
var hooks_1 = require("../hooks");
|
|
56
|
+
var link_1 = __importDefault(require("./link"));
|
|
57
|
+
exports.default = (0, react_1.forwardRef)(function (_a, ref) {
|
|
58
|
+
var className = _a.className, children = _a.children, _b = _a.onClick, onClick = _b === void 0 ? function () { } : _b, widgetName = _a.widgetName, activationOptions = _a.activationOptions, other = __rest(_a, ["className", "children", "onClick", "widgetName", "activationOptions"]);
|
|
59
|
+
var container = (0, hooks_1.useContainer)();
|
|
60
|
+
var getWidget = function () {
|
|
61
|
+
var implementation = container.get('$widget').implementation;
|
|
62
|
+
return implementation.widgets.get(widgetName);
|
|
63
|
+
};
|
|
64
|
+
(0, react_1.useEffect)(function () {
|
|
65
|
+
var widget = getWidget();
|
|
66
|
+
widget === null || widget === void 0 ? void 0 : widget.activate(activationOptions).then(function () { return widget.invoke('attach'); });
|
|
67
|
+
return function () {
|
|
68
|
+
widget === null || widget === void 0 ? void 0 : widget.deactivate();
|
|
69
|
+
};
|
|
70
|
+
}, [widgetName]);
|
|
71
|
+
var openWidget = function (e) {
|
|
72
|
+
var widget = getWidget();
|
|
73
|
+
var target = e.currentTarget;
|
|
74
|
+
if (widget) {
|
|
75
|
+
var toggle = function () {
|
|
76
|
+
widget
|
|
77
|
+
.invoke('renderState')
|
|
78
|
+
.then(function (renderState) {
|
|
79
|
+
return renderState === widget_core_1.WidgetRenderState.open
|
|
80
|
+
? widget.invoke('close')
|
|
81
|
+
: widget.invoke('open');
|
|
82
|
+
})
|
|
83
|
+
.then(function () {
|
|
84
|
+
widget.events.subscribeOnce('widget:area-rendered', function (event, data) {
|
|
85
|
+
var widgetDOMElement = container.get('widgetDOMElement');
|
|
86
|
+
if (widgetDOMElement) {
|
|
87
|
+
widget.events.dispatch('widget:modal-opened', {
|
|
88
|
+
name: widget.name,
|
|
89
|
+
ref: target,
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
});
|
|
94
|
+
};
|
|
95
|
+
if (widget.state === platform_1.WidgetState.Deactivated) {
|
|
96
|
+
widget
|
|
97
|
+
.activate(activationOptions)
|
|
98
|
+
.then(function () { return widget.invoke('attach'); })
|
|
99
|
+
.then(toggle);
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
toggle();
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
};
|
|
106
|
+
var onEnter = function (e) {
|
|
107
|
+
if (e.key === 'Enter') {
|
|
108
|
+
e.preventDefault();
|
|
109
|
+
openWidget(e);
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
return (react_1.default.createElement(link_1.default, __assign({ className: (0, widget_utilities_1.appendClassNames)(className, 'humany-widget-link'), onKeyDown: onEnter, onClick: function (e) {
|
|
113
|
+
onClick(e);
|
|
114
|
+
openWidget(e);
|
|
115
|
+
} }, other, { ref: ref }), children));
|
|
116
|
+
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { ComponentDescriptor, ComponentNodeProperties } from '@telia-ace/widget-core';
|
|
3
|
+
import { RoutingService } from '@telia-ace/widget-routing';
|
|
4
|
+
import { Container } from '@webprovisions/platform';
|
|
5
|
+
export declare const ContainerContext: import("react").Context<Container>;
|
|
6
|
+
export declare const ColumnContext: import("react").Context<number>;
|
|
7
|
+
export declare const ComponentNodeContext: import("react").Context<ComponentDescriptor>;
|
|
8
|
+
export declare const ComponentPropertyContext: import("react").Context<ComponentNodeProperties>;
|
|
9
|
+
export declare const RoutingContext: import("react").Context<RoutingService | null>;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RoutingContext = exports.ComponentPropertyContext = exports.ComponentNodeContext = exports.ColumnContext = exports.ContainerContext = void 0;
|
|
4
|
+
var platform_1 = require("@webprovisions/platform");
|
|
5
|
+
var react_1 = require("react");
|
|
6
|
+
exports.ContainerContext = (0, react_1.createContext)(new platform_1.Container());
|
|
7
|
+
exports.ColumnContext = (0, react_1.createContext)(1);
|
|
8
|
+
exports.ComponentNodeContext = (0, react_1.createContext)({
|
|
9
|
+
id: '',
|
|
10
|
+
type: '',
|
|
11
|
+
name: '',
|
|
12
|
+
branch: '',
|
|
13
|
+
});
|
|
14
|
+
exports.ComponentPropertyContext = (0, react_1.createContext)({});
|
|
15
|
+
exports.RoutingContext = (0, react_1.createContext)(null);
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { ExtendComponentHandler, ExtendComponentOptions, ReactComponent } from '@telia-ace/widget-core';
|
|
2
|
+
import { Container } from '@webprovisions/platform';
|
|
3
|
+
/**
|
|
4
|
+
* Registers a React component on the component platform.
|
|
5
|
+
* @param container Container to register the component on.
|
|
6
|
+
* @param type Type name to resolve the component from configuration.
|
|
7
|
+
* @param reactComponent Promise resolving to the React component for rendering.
|
|
8
|
+
* @param fn Handler for controlling the component.
|
|
9
|
+
*/
|
|
10
|
+
declare const createReactComponent: (container: Container, type: string, reactComponent: ReactComponent, fn?: ExtendComponentHandler | undefined, options?: ExtendComponentOptions | undefined) => Promise<void>;
|
|
11
|
+
export default createReactComponent;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var widget_core_1 = require("@telia-ace/widget-core");
|
|
4
|
+
var react_1 = require("react");
|
|
5
|
+
/**
|
|
6
|
+
* Registers a React component on the component platform.
|
|
7
|
+
* @param container Container to register the component on.
|
|
8
|
+
* @param type Type name to resolve the component from configuration.
|
|
9
|
+
* @param reactComponent Promise resolving to the React component for rendering.
|
|
10
|
+
* @param fn Handler for controlling the component.
|
|
11
|
+
*/
|
|
12
|
+
var createReactComponent = function (container, type, reactComponent, fn, options) {
|
|
13
|
+
return container.getAsync('componentResolver').then(function (componentResolver) {
|
|
14
|
+
componentResolver.registerComponent(type, (0, react_1.lazy)(function () { return reactComponent; }));
|
|
15
|
+
return (0, widget_core_1.extendComponent)(container, type, fn || (function () { }), type, options);
|
|
16
|
+
});
|
|
17
|
+
};
|
|
18
|
+
exports.default = createReactComponent;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export { default as useAction } from './use-action';
|
|
2
|
+
export { default as useChildren } from './use-children';
|
|
3
|
+
export { default as useColumns } from './use-columns';
|
|
4
|
+
export { default as useComponent } from './use-component';
|
|
5
|
+
export { default as useComponentDescriptor } from './use-component-descriptor';
|
|
6
|
+
export { default as useComponentNode } from './use-component-node';
|
|
7
|
+
export { default as useComponentPlatform } from './use-component-platform';
|
|
8
|
+
export { default as useContainer } from './use-container';
|
|
9
|
+
export { default as useContext } from './use-context';
|
|
10
|
+
export { default as useDispatch } from './use-dispatch';
|
|
11
|
+
export type { DispatchAction } from './use-dispatch';
|
|
12
|
+
export { default as useEventListener } from './use-event-listener';
|
|
13
|
+
export { default as useEvents } from './use-events';
|
|
14
|
+
export { default as useIsMounted } from './use-is-mounted';
|
|
15
|
+
export { default as useKeyPress } from './use-key-press';
|
|
16
|
+
export { default as useLayout } from './use-layout';
|
|
17
|
+
export { default as usePrevious } from './use-previous';
|
|
18
|
+
export { default as useProperties } from './use-properties';
|
|
19
|
+
export { default as useRenderState } from './use-render-state';
|
|
20
|
+
export { default as useRouteData } from './use-route-data';
|
|
21
|
+
export { default as useRouter } from './use-router';
|
|
22
|
+
export { default as useScroll } from './use-scroll';
|
|
23
|
+
export { default as useSettings } from './use-settings';
|
|
24
|
+
export { default as useToggle } from './use-toggle';
|
|
25
|
+
export { default as useTransitionEnd } from './use-transition-end';
|
|
26
|
+
export { default as useUniqueMenu } from './use-unique-menu';
|
|
27
|
+
export { default as useWidgetEvent } from './use-widget-event';
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.useWidgetEvent = exports.useUniqueMenu = exports.useTransitionEnd = exports.useToggle = exports.useSettings = exports.useScroll = exports.useRouter = exports.useRouteData = exports.useRenderState = exports.useProperties = exports.usePrevious = exports.useLayout = exports.useKeyPress = exports.useIsMounted = exports.useEvents = exports.useEventListener = exports.useDispatch = exports.useContext = exports.useContainer = exports.useComponentPlatform = exports.useComponentNode = exports.useComponentDescriptor = exports.useComponent = exports.useColumns = exports.useChildren = exports.useAction = void 0;
|
|
7
|
+
var use_action_1 = require("./use-action");
|
|
8
|
+
Object.defineProperty(exports, "useAction", { enumerable: true, get: function () { return __importDefault(use_action_1).default; } });
|
|
9
|
+
var use_children_1 = require("./use-children");
|
|
10
|
+
Object.defineProperty(exports, "useChildren", { enumerable: true, get: function () { return __importDefault(use_children_1).default; } });
|
|
11
|
+
var use_columns_1 = require("./use-columns");
|
|
12
|
+
Object.defineProperty(exports, "useColumns", { enumerable: true, get: function () { return __importDefault(use_columns_1).default; } });
|
|
13
|
+
var use_component_1 = require("./use-component");
|
|
14
|
+
Object.defineProperty(exports, "useComponent", { enumerable: true, get: function () { return __importDefault(use_component_1).default; } });
|
|
15
|
+
var use_component_descriptor_1 = require("./use-component-descriptor");
|
|
16
|
+
Object.defineProperty(exports, "useComponentDescriptor", { enumerable: true, get: function () { return __importDefault(use_component_descriptor_1).default; } });
|
|
17
|
+
var use_component_node_1 = require("./use-component-node");
|
|
18
|
+
Object.defineProperty(exports, "useComponentNode", { enumerable: true, get: function () { return __importDefault(use_component_node_1).default; } });
|
|
19
|
+
var use_component_platform_1 = require("./use-component-platform");
|
|
20
|
+
Object.defineProperty(exports, "useComponentPlatform", { enumerable: true, get: function () { return __importDefault(use_component_platform_1).default; } });
|
|
21
|
+
var use_container_1 = require("./use-container");
|
|
22
|
+
Object.defineProperty(exports, "useContainer", { enumerable: true, get: function () { return __importDefault(use_container_1).default; } });
|
|
23
|
+
var use_context_1 = require("./use-context");
|
|
24
|
+
Object.defineProperty(exports, "useContext", { enumerable: true, get: function () { return __importDefault(use_context_1).default; } });
|
|
25
|
+
var use_dispatch_1 = require("./use-dispatch");
|
|
26
|
+
Object.defineProperty(exports, "useDispatch", { enumerable: true, get: function () { return __importDefault(use_dispatch_1).default; } });
|
|
27
|
+
var use_event_listener_1 = require("./use-event-listener");
|
|
28
|
+
Object.defineProperty(exports, "useEventListener", { enumerable: true, get: function () { return __importDefault(use_event_listener_1).default; } });
|
|
29
|
+
var use_events_1 = require("./use-events");
|
|
30
|
+
Object.defineProperty(exports, "useEvents", { enumerable: true, get: function () { return __importDefault(use_events_1).default; } });
|
|
31
|
+
var use_is_mounted_1 = require("./use-is-mounted");
|
|
32
|
+
Object.defineProperty(exports, "useIsMounted", { enumerable: true, get: function () { return __importDefault(use_is_mounted_1).default; } });
|
|
33
|
+
var use_key_press_1 = require("./use-key-press");
|
|
34
|
+
Object.defineProperty(exports, "useKeyPress", { enumerable: true, get: function () { return __importDefault(use_key_press_1).default; } });
|
|
35
|
+
var use_layout_1 = require("./use-layout");
|
|
36
|
+
Object.defineProperty(exports, "useLayout", { enumerable: true, get: function () { return __importDefault(use_layout_1).default; } });
|
|
37
|
+
var use_previous_1 = require("./use-previous");
|
|
38
|
+
Object.defineProperty(exports, "usePrevious", { enumerable: true, get: function () { return __importDefault(use_previous_1).default; } });
|
|
39
|
+
var use_properties_1 = require("./use-properties");
|
|
40
|
+
Object.defineProperty(exports, "useProperties", { enumerable: true, get: function () { return __importDefault(use_properties_1).default; } });
|
|
41
|
+
var use_render_state_1 = require("./use-render-state");
|
|
42
|
+
Object.defineProperty(exports, "useRenderState", { enumerable: true, get: function () { return __importDefault(use_render_state_1).default; } });
|
|
43
|
+
var use_route_data_1 = require("./use-route-data");
|
|
44
|
+
Object.defineProperty(exports, "useRouteData", { enumerable: true, get: function () { return __importDefault(use_route_data_1).default; } });
|
|
45
|
+
var use_router_1 = require("./use-router");
|
|
46
|
+
Object.defineProperty(exports, "useRouter", { enumerable: true, get: function () { return __importDefault(use_router_1).default; } });
|
|
47
|
+
var use_scroll_1 = require("./use-scroll");
|
|
48
|
+
Object.defineProperty(exports, "useScroll", { enumerable: true, get: function () { return __importDefault(use_scroll_1).default; } });
|
|
49
|
+
var use_settings_1 = require("./use-settings");
|
|
50
|
+
Object.defineProperty(exports, "useSettings", { enumerable: true, get: function () { return __importDefault(use_settings_1).default; } });
|
|
51
|
+
var use_toggle_1 = require("./use-toggle");
|
|
52
|
+
Object.defineProperty(exports, "useToggle", { enumerable: true, get: function () { return __importDefault(use_toggle_1).default; } });
|
|
53
|
+
var use_transition_end_1 = require("./use-transition-end");
|
|
54
|
+
Object.defineProperty(exports, "useTransitionEnd", { enumerable: true, get: function () { return __importDefault(use_transition_end_1).default; } });
|
|
55
|
+
var use_unique_menu_1 = require("./use-unique-menu");
|
|
56
|
+
Object.defineProperty(exports, "useUniqueMenu", { enumerable: true, get: function () { return __importDefault(use_unique_menu_1).default; } });
|
|
57
|
+
var use_widget_event_1 = require("./use-widget-event");
|
|
58
|
+
Object.defineProperty(exports, "useWidgetEvent", { enumerable: true, get: function () { return __importDefault(use_widget_event_1).default; } });
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.useAction = void 0;
|
|
7
|
+
var use_component_descriptor_1 = __importDefault(require("./use-component-descriptor"));
|
|
8
|
+
var use_container_1 = __importDefault(require("./use-container"));
|
|
9
|
+
var useAction = function (passedOrigin, passedContainer) {
|
|
10
|
+
var origin = (0, use_component_descriptor_1.default)().id;
|
|
11
|
+
var container = (0, use_container_1.default)();
|
|
12
|
+
return function (action, value) {
|
|
13
|
+
(passedContainer || container)
|
|
14
|
+
.getAsync('actionResolver')
|
|
15
|
+
.then(function (resolver) {
|
|
16
|
+
resolver.action(passedOrigin || origin, action, value);
|
|
17
|
+
});
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
exports.useAction = useAction;
|
|
21
|
+
exports.default = exports.useAction;
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
3
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
4
|
+
if (!m) return o;
|
|
5
|
+
var i = m.call(o), r, ar = [], e;
|
|
6
|
+
try {
|
|
7
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
8
|
+
}
|
|
9
|
+
catch (error) { e = { error: error }; }
|
|
10
|
+
finally {
|
|
11
|
+
try {
|
|
12
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
13
|
+
}
|
|
14
|
+
finally { if (e) throw e.error; }
|
|
15
|
+
}
|
|
16
|
+
return ar;
|
|
17
|
+
};
|
|
18
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
19
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
var widget_core_1 = require("@telia-ace/widget-core");
|
|
23
|
+
var react_1 = require("react");
|
|
24
|
+
var use_component_node_1 = __importDefault(require("./use-component-node"));
|
|
25
|
+
var use_component_platform_1 = __importDefault(require("./use-component-platform"));
|
|
26
|
+
var use_is_mounted_1 = __importDefault(require("./use-is-mounted"));
|
|
27
|
+
var useChildren = function () {
|
|
28
|
+
var node = (0, use_component_node_1.default)();
|
|
29
|
+
var components = (0, use_component_platform_1.default)();
|
|
30
|
+
var _a = __read((0, react_1.useState)([]), 2), children = _a[0], setChildren = _a[1];
|
|
31
|
+
var isMounted = (0, use_is_mounted_1.default)();
|
|
32
|
+
var updateChildren = (0, react_1.useCallback)(function (node) {
|
|
33
|
+
if (components && isMounted.current) {
|
|
34
|
+
var branch = components.getBranch(node);
|
|
35
|
+
var children_1 = node.getChildren(branch).map(function (child) { return (0, widget_core_1.asDescriptor)(child); });
|
|
36
|
+
setChildren(children_1);
|
|
37
|
+
}
|
|
38
|
+
}, [isMounted, components, setChildren]);
|
|
39
|
+
(0, react_1.useEffect)(function () {
|
|
40
|
+
if (node) {
|
|
41
|
+
updateChildren(node);
|
|
42
|
+
}
|
|
43
|
+
}, [node, components]);
|
|
44
|
+
(0, react_1.useEffect)(function () {
|
|
45
|
+
if (components) {
|
|
46
|
+
var _a = __read((0, widget_core_1.createEventSubscriber)(components.events), 2), subscribe = _a[0], unsubscribe_1 = _a[1];
|
|
47
|
+
subscribe('components:set-layout', function (event, data) {
|
|
48
|
+
if (node === data.node.parent || data.node.parent === components.nodes.root) {
|
|
49
|
+
updateChildren(data.node.parent);
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
subscribe('components:node-appended', function (event, data) {
|
|
53
|
+
if (node === data.node.parent || data.node.parent === components.nodes.root) {
|
|
54
|
+
updateChildren(data.node.parent);
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
subscribe('components:node-removed', function (event, _a) {
|
|
58
|
+
var parentNode = _a.parentNode;
|
|
59
|
+
if (parentNode === node || parentNode === components.nodes.root) {
|
|
60
|
+
updateChildren(parentNode);
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
return function () {
|
|
64
|
+
unsubscribe_1();
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
}, [node, components, updateChildren]);
|
|
68
|
+
return children;
|
|
69
|
+
};
|
|
70
|
+
exports.default = useChildren;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var react_1 = require("react");
|
|
4
|
+
var contexts_1 = require("../contexts");
|
|
5
|
+
var useColumns = function () { return (0, react_1.useContext)(contexts_1.ColumnContext); };
|
|
6
|
+
exports.default = useColumns;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var react_1 = require("react");
|
|
4
|
+
var contexts_1 = require("../contexts");
|
|
5
|
+
var useComponentDescriptor = function () { return (0, react_1.useContext)(contexts_1.ComponentNodeContext); };
|
|
6
|
+
exports.default = useComponentDescriptor;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
3
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
4
|
+
if (!m) return o;
|
|
5
|
+
var i = m.call(o), r, ar = [], e;
|
|
6
|
+
try {
|
|
7
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
8
|
+
}
|
|
9
|
+
catch (error) { e = { error: error }; }
|
|
10
|
+
finally {
|
|
11
|
+
try {
|
|
12
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
13
|
+
}
|
|
14
|
+
finally { if (e) throw e.error; }
|
|
15
|
+
}
|
|
16
|
+
return ar;
|
|
17
|
+
};
|
|
18
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
+
var react_1 = require("react");
|
|
20
|
+
var _1 = require(".");
|
|
21
|
+
var contexts_1 = require("../contexts");
|
|
22
|
+
/**
|
|
23
|
+
* Provides the `ComponentNode` for the current context.
|
|
24
|
+
*/
|
|
25
|
+
var useComponentNode = function (id) {
|
|
26
|
+
var descriptor = (0, react_1.useContext)(contexts_1.ComponentNodeContext);
|
|
27
|
+
var components = (0, _1.useComponentPlatform)();
|
|
28
|
+
var _a = __read((0, react_1.useState)(), 2), node = _a[0], setNode = _a[1];
|
|
29
|
+
(0, react_1.useEffect)(function () {
|
|
30
|
+
if ((id || descriptor.id) && components) {
|
|
31
|
+
var node_1 = components.nodes.get(id || descriptor.id);
|
|
32
|
+
setNode(node_1);
|
|
33
|
+
}
|
|
34
|
+
}, [id, descriptor.id, components]);
|
|
35
|
+
return node;
|
|
36
|
+
};
|
|
37
|
+
exports.default = useComponentNode;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
3
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
4
|
+
if (!m) return o;
|
|
5
|
+
var i = m.call(o), r, ar = [], e;
|
|
6
|
+
try {
|
|
7
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
8
|
+
}
|
|
9
|
+
catch (error) { e = { error: error }; }
|
|
10
|
+
finally {
|
|
11
|
+
try {
|
|
12
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
13
|
+
}
|
|
14
|
+
finally { if (e) throw e.error; }
|
|
15
|
+
}
|
|
16
|
+
return ar;
|
|
17
|
+
};
|
|
18
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
19
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
var widget_core_1 = require("@telia-ace/widget-core");
|
|
23
|
+
var react_1 = require("react");
|
|
24
|
+
var use_container_1 = __importDefault(require("./use-container"));
|
|
25
|
+
var use_is_mounted_1 = __importDefault(require("./use-is-mounted"));
|
|
26
|
+
var useComponentPlatform = function (passedContainer) {
|
|
27
|
+
var container = (0, use_container_1.default)();
|
|
28
|
+
var _a = __read((0, react_1.useState)(null), 2), componentPlatform = _a[0], setComponentPlatform = _a[1];
|
|
29
|
+
var isMounted = (0, use_is_mounted_1.default)();
|
|
30
|
+
(0, react_1.useEffect)(function () {
|
|
31
|
+
widget_core_1.ComponentPlatform.getInstance(passedContainer || container).then(function (platform) {
|
|
32
|
+
if (isMounted.current) {
|
|
33
|
+
setComponentPlatform(platform);
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
}, [isMounted]);
|
|
37
|
+
return componentPlatform;
|
|
38
|
+
};
|
|
39
|
+
exports.default = useComponentPlatform;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
3
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
4
|
+
if (!m) return o;
|
|
5
|
+
var i = m.call(o), r, ar = [], e;
|
|
6
|
+
try {
|
|
7
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
8
|
+
}
|
|
9
|
+
catch (error) { e = { error: error }; }
|
|
10
|
+
finally {
|
|
11
|
+
try {
|
|
12
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
13
|
+
}
|
|
14
|
+
finally { if (e) throw e.error; }
|
|
15
|
+
}
|
|
16
|
+
return ar;
|
|
17
|
+
};
|
|
18
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
19
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
var react_1 = require("react");
|
|
23
|
+
var use_component_descriptor_1 = __importDefault(require("./use-component-descriptor"));
|
|
24
|
+
var use_container_1 = __importDefault(require("./use-container"));
|
|
25
|
+
var use_is_mounted_1 = __importDefault(require("./use-is-mounted"));
|
|
26
|
+
var useComponent = function (passedType, passedContainer) {
|
|
27
|
+
var descriptor = (0, use_component_descriptor_1.default)();
|
|
28
|
+
var container = (0, use_container_1.default)();
|
|
29
|
+
var _a = __read((0, react_1.useState)(undefined), 2), component = _a[0], setComponent = _a[1];
|
|
30
|
+
var isMounted = (0, use_is_mounted_1.default)();
|
|
31
|
+
var type = passedType || descriptor.type || '';
|
|
32
|
+
(0, react_1.useEffect)(function () {
|
|
33
|
+
if (type) {
|
|
34
|
+
var unsubscribe_1;
|
|
35
|
+
(passedContainer || container)
|
|
36
|
+
.getAsync('componentResolver')
|
|
37
|
+
.then(function (resolver) {
|
|
38
|
+
if (isMounted.current) {
|
|
39
|
+
var component_1 = resolver.getComponent(type);
|
|
40
|
+
setComponent(component_1);
|
|
41
|
+
}
|
|
42
|
+
unsubscribe_1 = resolver.registerResolver(type, function (component) {
|
|
43
|
+
if (isMounted.current) {
|
|
44
|
+
setComponent(component);
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
return function () {
|
|
49
|
+
if (unsubscribe_1) {
|
|
50
|
+
unsubscribe_1();
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
}, [isMounted, type, passedContainer, container]);
|
|
55
|
+
return component;
|
|
56
|
+
};
|
|
57
|
+
exports.default = useComponent;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var react_1 = require("react");
|
|
4
|
+
var contexts_1 = require("../contexts");
|
|
5
|
+
var useContainer = function () { return (0, react_1.useContext)(contexts_1.ContainerContext); };
|
|
6
|
+
exports.default = useContainer;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
3
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
4
|
+
if (!m) return o;
|
|
5
|
+
var i = m.call(o), r, ar = [], e;
|
|
6
|
+
try {
|
|
7
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
8
|
+
}
|
|
9
|
+
catch (error) { e = { error: error }; }
|
|
10
|
+
finally {
|
|
11
|
+
try {
|
|
12
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
13
|
+
}
|
|
14
|
+
finally { if (e) throw e.error; }
|
|
15
|
+
}
|
|
16
|
+
return ar;
|
|
17
|
+
};
|
|
18
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
19
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
var react_1 = require("react");
|
|
23
|
+
var use_component_node_1 = __importDefault(require("./use-component-node"));
|
|
24
|
+
var use_component_platform_1 = __importDefault(require("./use-component-platform"));
|
|
25
|
+
var use_is_mounted_1 = __importDefault(require("./use-is-mounted"));
|
|
26
|
+
var useContext = function (id) {
|
|
27
|
+
var node = (0, use_component_node_1.default)(id);
|
|
28
|
+
var components = (0, use_component_platform_1.default)();
|
|
29
|
+
var _a = __read((0, react_1.useState)({}), 2), context = _a[0], setContext = _a[1];
|
|
30
|
+
var isMounted = (0, use_is_mounted_1.default)();
|
|
31
|
+
(0, react_1.useEffect)(function () {
|
|
32
|
+
if (node && isMounted.current) {
|
|
33
|
+
setContext(node.attributes.context);
|
|
34
|
+
}
|
|
35
|
+
}, [isMounted, node]);
|
|
36
|
+
(0, react_1.useEffect)(function () {
|
|
37
|
+
if (components) {
|
|
38
|
+
var unsubscribe_1 = components.events.subscribe('components:context-changed', function (event, data) {
|
|
39
|
+
if (node === data.node && isMounted.current) {
|
|
40
|
+
setContext(data.node.attributes.context);
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
return function () {
|
|
44
|
+
unsubscribe_1();
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
}, [isMounted, components]);
|
|
48
|
+
return context;
|
|
49
|
+
};
|
|
50
|
+
exports.default = useContext;
|