sample-piral 0.14.8-beta.3509 → 0.14.8-beta.3510

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.
@@ -1812,8 +1812,10 @@ __webpack_require__.r(__webpack_exports__);
1812
1812
  /* harmony import */ var _createInstance__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./createInstance */ "../../framework/piral-core/esm/createInstance.js");
1813
1813
  /* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./components */ "../../framework/piral-core/esm/components/ResponsiveLayout.js");
1814
1814
  /* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./components */ "../../framework/piral-core/esm/components/Mediator.js");
1815
- /* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components */ "../../framework/piral-core/esm/components/PiralView.js");
1816
- /* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./components */ "../../framework/piral-core/esm/components/PortalRenderer.js");
1815
+ /* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./components */ "../../framework/piral-core/esm/components/PiralView.js");
1816
+ /* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./components */ "../../framework/piral-core/esm/components/PortalRenderer.js");
1817
+ /* harmony import */ var _RootListener__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./RootListener */ "../../framework/piral-core/esm/RootListener.js");
1818
+
1817
1819
 
1818
1820
 
1819
1821
 
@@ -1846,7 +1848,7 @@ var Piral = function Piral(_ref) {
1846
1848
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components__WEBPACK_IMPORTED_MODULE_4__.Mediator, {
1847
1849
  options: instance.options,
1848
1850
  key: instance.id
1849
- }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components__WEBPACK_IMPORTED_MODULE_5__.PiralView, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components__WEBPACK_IMPORTED_MODULE_6__.PortalRenderer, {
1851
+ }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_RootListener__WEBPACK_IMPORTED_MODULE_5__.RootListener, null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components__WEBPACK_IMPORTED_MODULE_6__.PiralView, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(_components__WEBPACK_IMPORTED_MODULE_7__.PortalRenderer, {
1850
1852
  id: "root"
1851
1853
  }), children));
1852
1854
  };
@@ -1854,6 +1856,65 @@ Piral.displayName = 'Piral';
1854
1856
 
1855
1857
  /***/ }),
1856
1858
 
1859
+ /***/ "../../framework/piral-core/esm/RootListener.js":
1860
+ /*!******************************************************!*\
1861
+ !*** ../../framework/piral-core/esm/RootListener.js ***!
1862
+ \******************************************************/
1863
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
1864
+
1865
+ "use strict";
1866
+ __webpack_require__.r(__webpack_exports__);
1867
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1868
+ /* harmony export */ "RootListener": () => (/* binding */ RootListener)
1869
+ /* harmony export */ });
1870
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "../../../node_modules/react/index.js");
1871
+ /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! . */ "../../framework/piral-core/esm/hooks/globalState.js");
1872
+ /* harmony import */ var _modules__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./modules */ "../../framework/piral-core/esm/modules/element.js");
1873
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
1874
+
1875
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
1876
+
1877
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
1878
+
1879
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
1880
+
1881
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
1882
+
1883
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
1884
+
1885
+
1886
+
1887
+
1888
+ var RootListener = function RootListener() {
1889
+ var context = (0,___WEBPACK_IMPORTED_MODULE_1__.useGlobalStateContext)();
1890
+ react__WEBPACK_IMPORTED_MODULE_0__.useEffect(function () {
1891
+ if (typeof document !== 'undefined') {
1892
+ var handler = function handler(ev) {
1893
+ ev.stopPropagation();
1894
+ var _ev$detail = ev.detail,
1895
+ target = _ev$detail.target,
1896
+ props = _ev$detail.props;
1897
+
1898
+ var _renderElement = (0,_modules__WEBPACK_IMPORTED_MODULE_2__.renderElement)(context, target, props),
1899
+ _renderElement2 = _slicedToArray(_renderElement, 2),
1900
+ dispose = _renderElement2[0],
1901
+ update = _renderElement2[1];
1902
+
1903
+ target.dispose = dispose;
1904
+ target.update = update;
1905
+ };
1906
+
1907
+ document.body.addEventListener('render-html', handler, false);
1908
+ return function () {
1909
+ document.body.removeEventListener('render-html', handler, false);
1910
+ };
1911
+ }
1912
+ }, [context]);
1913
+ return null;
1914
+ };
1915
+
1916
+ /***/ }),
1917
+
1857
1918
  /***/ "../../framework/piral-core/esm/actions/app.js":
1858
1919
  /*!*****************************************************!*\
1859
1920
  !*** ../../framework/piral-core/esm/actions/app.js ***!
@@ -2428,7 +2489,8 @@ function ExtensionSlot(props) {
2428
2489
  _props$render = props.render,
2429
2490
  render = _props$render === void 0 ? _utils__WEBPACK_IMPORTED_MODULE_1__.defaultRender : _props$render,
2430
2491
  empty = props.empty,
2431
- params = props.params;
2492
+ params = props.params,
2493
+ children = props.children;
2432
2494
  var extensions = (0,_hooks__WEBPACK_IMPORTED_MODULE_2__.useGlobalState)(function (s) {
2433
2495
  return s.registry.extensions[name] || _utils__WEBPACK_IMPORTED_MODULE_3__.none;
2434
2496
  });
@@ -2439,6 +2501,7 @@ function ExtensionSlot(props) {
2439
2501
  defaults = _ref$defaults === void 0 ? {} : _ref$defaults;
2440
2502
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(Component, {
2441
2503
  key: "".concat((reference === null || reference === void 0 ? void 0 : reference.displayName) || '_').concat(i),
2504
+ children: children,
2442
2505
  params: Object.assign(Object.assign({}, defaults), params || {})
2443
2506
  });
2444
2507
  }));
@@ -3222,7 +3285,7 @@ function createInstance() {
3222
3285
  var createApi = apiFactory(context, usedPlugins);
3223
3286
  var root = createApi({
3224
3287
  name: 'root',
3225
- version: "0.14.8-beta.3509" || 0,
3288
+ version: "0.14.8-beta.3510" || 0,
3226
3289
  spec: ''
3227
3290
  });
3228
3291
  var options = (0,_helpers__WEBPACK_IMPORTED_MODULE_6__.createPiletOptions)({
@@ -3638,6 +3701,7 @@ __webpack_require__.r(__webpack_exports__);
3638
3701
  /* harmony export */ "noop": () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_6__.noop),
3639
3702
  /* harmony export */ "prependItem": () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_6__.prependItem),
3640
3703
  /* harmony export */ "prependItems": () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_6__.prependItems),
3704
+ /* harmony export */ "reactifyContent": () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_6__.reactifyContent),
3641
3705
  /* harmony export */ "removeIndicator": () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_6__.removeIndicator),
3642
3706
  /* harmony export */ "removeNested": () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_6__.removeNested),
3643
3707
  /* harmony export */ "renderInDom": () => (/* reexport safe */ _utils__WEBPACK_IMPORTED_MODULE_6__.renderInDom),
@@ -3684,27 +3748,227 @@ __webpack_require__.r(__webpack_exports__);
3684
3748
  "use strict";
3685
3749
  __webpack_require__.r(__webpack_exports__);
3686
3750
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3687
- /* harmony export */ "createCoreApi": () => (/* binding */ createCoreApi),
3688
3751
  /* harmony export */ "createExtenders": () => (/* binding */ createExtenders),
3689
3752
  /* harmony export */ "defaultApiFactory": () => (/* binding */ defaultApiFactory)
3690
3753
  /* harmony export */ });
3691
- /* harmony import */ var piral_base__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! piral-base */ "../../framework/piral-base/esm/utils.js");
3692
- /* harmony import */ var piral_base__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! piral-base */ "../../framework/piral-base/esm/api.js");
3693
- /* harmony import */ var _state__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../state */ "../../framework/piral-core/esm/state/withApi.js");
3694
- /* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../components */ "../../framework/piral-core/esm/components/ExtensionSlot.js");
3695
- /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils */ "../../framework/piral-core/esm/utils/helpers.js");
3696
- /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils */ "../../framework/piral-core/esm/utils/foreign.js");
3697
- /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils */ "../../framework/piral-core/esm/utils/data.js");
3698
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
3699
-
3754
+ /* harmony import */ var piral_base__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! piral-base */ "../../framework/piral-base/esm/utils.js");
3755
+ /* harmony import */ var piral_base__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! piral-base */ "../../framework/piral-base/esm/api.js");
3756
+ /* harmony import */ var _core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./core */ "../../framework/piral-core/esm/modules/core.js");
3700
3757
  function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
3701
3758
 
3702
3759
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3703
3760
 
3761
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
3762
+
3704
3763
  function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
3705
3764
 
3706
3765
  function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
3707
3766
 
3767
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
3768
+
3769
+
3770
+
3771
+ function createExtenders(context, apis) {
3772
+ var creators = [_core__WEBPACK_IMPORTED_MODULE_0__.createCoreApi].concat(_toConsumableArray(apis.filter(piral_base__WEBPACK_IMPORTED_MODULE_1__.isfunc)));
3773
+ return creators.map(function (c) {
3774
+ var ctx = c(context);
3775
+
3776
+ if ((0,piral_base__WEBPACK_IMPORTED_MODULE_1__.isfunc)(ctx)) {
3777
+ return ctx;
3778
+ } else {
3779
+ return function () {
3780
+ return Object.assign({}, ctx);
3781
+ };
3782
+ }
3783
+ });
3784
+ }
3785
+ function defaultApiFactory(context, apis) {
3786
+ var extenders = createExtenders(context, apis);
3787
+ return function (target) {
3788
+ var api = (0,piral_base__WEBPACK_IMPORTED_MODULE_2__.initializeApi)(target, context);
3789
+ context.apis[target.name] = api;
3790
+ return (0,piral_base__WEBPACK_IMPORTED_MODULE_2__.mergeApis)(api, extenders, target);
3791
+ };
3792
+ }
3793
+
3794
+ /***/ }),
3795
+
3796
+ /***/ "../../framework/piral-core/esm/modules/core.js":
3797
+ /*!******************************************************!*\
3798
+ !*** ../../framework/piral-core/esm/modules/core.js ***!
3799
+ \******************************************************/
3800
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
3801
+
3802
+ "use strict";
3803
+ __webpack_require__.r(__webpack_exports__);
3804
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3805
+ /* harmony export */ "createCoreApi": () => (/* binding */ createCoreApi)
3806
+ /* harmony export */ });
3807
+ /* harmony import */ var _element__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./element */ "../../framework/piral-core/esm/modules/element.js");
3808
+ /* harmony import */ var _state__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../state */ "../../framework/piral-core/esm/state/withApi.js");
3809
+ /* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../components */ "../../framework/piral-core/esm/components/ExtensionSlot.js");
3810
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils */ "../../framework/piral-core/esm/utils/data.js");
3811
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
3812
+
3813
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
3814
+
3815
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
3816
+
3817
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
3818
+
3819
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
3820
+
3821
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
3822
+
3823
+
3824
+
3825
+
3826
+
3827
+ function createCoreApi(context) {
3828
+ return function (api, meta) {
3829
+ var pilet = meta.name;
3830
+ return {
3831
+ getData: function getData(name) {
3832
+ return context.readDataValue(name);
3833
+ },
3834
+ setData: function setData(name, value, options) {
3835
+ var _createDataOptions = (0,_utils__WEBPACK_IMPORTED_MODULE_0__.createDataOptions)(options),
3836
+ _createDataOptions$ta = _createDataOptions.target,
3837
+ target = _createDataOptions$ta === void 0 ? 'memory' : _createDataOptions$ta,
3838
+ expires = _createDataOptions.expires;
3839
+
3840
+ var expiration = (0,_utils__WEBPACK_IMPORTED_MODULE_0__.getDataExpiration)(expires);
3841
+ return context.tryWriteDataItem(name, value, pilet, target, expiration);
3842
+ },
3843
+ registerPage: function registerPage(route, arg, meta) {
3844
+ context.registerPage(route, {
3845
+ pilet: pilet,
3846
+ meta: meta,
3847
+ component: (0,_state__WEBPACK_IMPORTED_MODULE_1__.withApi)(context, arg, api, 'page')
3848
+ });
3849
+ return function () {
3850
+ return api.unregisterPage(route);
3851
+ };
3852
+ },
3853
+ unregisterPage: function unregisterPage(route) {
3854
+ context.unregisterPage(route);
3855
+ },
3856
+ registerExtension: function registerExtension(name, arg, defaults) {
3857
+ context.registerExtension(name, {
3858
+ pilet: pilet,
3859
+ component: (0,_state__WEBPACK_IMPORTED_MODULE_1__.withApi)(context, arg, api, 'extension'),
3860
+ reference: arg,
3861
+ defaults: defaults
3862
+ });
3863
+ return function () {
3864
+ return api.unregisterExtension(name, arg);
3865
+ };
3866
+ },
3867
+ unregisterExtension: function unregisterExtension(name, arg) {
3868
+ context.unregisterExtension(name, arg);
3869
+ },
3870
+ renderHtmlExtension: function renderHtmlExtension(element, props) {
3871
+ var _renderElement = (0,_element__WEBPACK_IMPORTED_MODULE_2__.renderElement)(context, element, props),
3872
+ _renderElement2 = _slicedToArray(_renderElement, 1),
3873
+ dispose = _renderElement2[0];
3874
+
3875
+ return dispose;
3876
+ },
3877
+ Extension: _components__WEBPACK_IMPORTED_MODULE_3__.ExtensionSlot
3878
+ };
3879
+ };
3880
+ }
3881
+
3882
+ /***/ }),
3883
+
3884
+ /***/ "../../framework/piral-core/esm/modules/dependencies.js":
3885
+ /*!**************************************************************!*\
3886
+ !*** ../../framework/piral-core/esm/modules/dependencies.js ***!
3887
+ \**************************************************************/
3888
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
3889
+
3890
+ "use strict";
3891
+ __webpack_require__.r(__webpack_exports__);
3892
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3893
+ /* harmony export */ "globalDependencies": () => (/* binding */ globalDependencies),
3894
+ /* harmony export */ "defaultDependencySelector": () => (/* binding */ defaultDependencySelector),
3895
+ /* harmony export */ "defaultModuleRequester": () => (/* binding */ defaultModuleRequester)
3896
+ /* harmony export */ });
3897
+ /* harmony import */ var piral_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! piral-base */ "../../framework/piral-base/esm/utils.js");
3898
+ /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! tslib */ "../../../node_modules/tslib/tslib.es6.js");
3899
+
3900
+
3901
+ /**
3902
+ * The global dependencies, which represent the dependencies
3903
+ * shared from the app shell itself.
3904
+ */
3905
+
3906
+ var globalDependencies = {};
3907
+
3908
+ if (true) {
3909
+ var fillDependencies = __webpack_require__(/*! ../../dependencies.codegen */ "../../framework/piral-core/dependencies.codegen");
3910
+
3911
+ if ((0,piral_base__WEBPACK_IMPORTED_MODULE_0__.isfunc)(fillDependencies)) {
3912
+ fillDependencies(globalDependencies);
3913
+ } else {
3914
+ // fall back to the default list if the codegen is invalid / not supported
3915
+ (0,tslib__WEBPACK_IMPORTED_MODULE_1__.__assign)(globalDependencies, {
3916
+ react: __webpack_require__(/*! react */ "../../../node_modules/react/index.js"),
3917
+ 'react-dom': __webpack_require__(/*! react-dom */ "../../../node_modules/react-dom/index.js"),
3918
+ 'react-router': __webpack_require__(/*! react-router */ "../../../node_modules/react-router/esm/react-router.js"),
3919
+ 'react-router-dom': __webpack_require__(/*! react-router-dom */ "../../../node_modules/react-router-dom/esm/react-router-dom.js"),
3920
+ history: __webpack_require__(/*! history */ "../../../node_modules/history/esm/history.js"),
3921
+ tslib: __webpack_require__(/*! tslib */ "../../../node_modules/tslib/tslib.es6.js"),
3922
+ 'path-to-regexp': __webpack_require__(/*! path-to-regexp */ "../../../node_modules/path-to-regexp/index.js"),
3923
+ '@libre/atom': __webpack_require__(/*! @libre/atom */ "../../../node_modules/@libre/atom/dist/index.esm.js"),
3924
+ '@dbeining/react-atom': __webpack_require__(/*! @dbeining/react-atom */ "../../../node_modules/@dbeining/react-atom/dist/react-atom.js")
3925
+ });
3926
+ }
3927
+ } else {}
3928
+ /**
3929
+ * The default dependency selector, which just returns the provided
3930
+ * dependencies.
3931
+ */
3932
+
3933
+
3934
+ function defaultDependencySelector(dependencies) {
3935
+ return dependencies;
3936
+ }
3937
+ /**
3938
+ * The default pilet requester, which just returns an empty array.
3939
+ * Use your own code to connect to the feed service.
3940
+ *
3941
+ * @example
3942
+ ```js
3943
+ return fetch('https://feed.piral.cloud/api/v1/pilet/sample')
3944
+ .then(res => res.json())
3945
+ .then(res => res.items);
3946
+ ```
3947
+ */
3948
+
3949
+ function defaultModuleRequester() {
3950
+ return Promise.resolve([]);
3951
+ }
3952
+
3953
+ /***/ }),
3954
+
3955
+ /***/ "../../framework/piral-core/esm/modules/element.js":
3956
+ /*!*********************************************************!*\
3957
+ !*** ../../framework/piral-core/esm/modules/element.js ***!
3958
+ \*********************************************************/
3959
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
3960
+
3961
+ "use strict";
3962
+ __webpack_require__.r(__webpack_exports__);
3963
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3964
+ /* harmony export */ "renderElement": () => (/* binding */ renderElement)
3965
+ /* harmony export */ });
3966
+ /* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../components */ "../../framework/piral-core/esm/components/ExtensionSlot.js");
3967
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils */ "../../framework/piral-core/esm/utils/helpers.js");
3968
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils */ "../../framework/piral-core/esm/utils/extension.js");
3969
+ /* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils */ "../../framework/piral-core/esm/utils/foreign.js");
3970
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
3971
+
3708
3972
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
3709
3973
 
3710
3974
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -3746,8 +4010,6 @@ function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.g
3746
4010
 
3747
4011
 
3748
4012
 
3749
-
3750
-
3751
4013
  if (typeof window !== 'undefined' && 'customElements' in window) {
3752
4014
  var PiralExtension = /*#__PURE__*/function (_HTMLElement) {
3753
4015
  _inherits(PiralExtension, _HTMLElement);
@@ -3765,7 +4027,8 @@ if (typeof window !== 'undefined' && 'customElements' in window) {
3765
4027
  _this.props = {
3766
4028
  name: _this.getAttribute('name'),
3767
4029
  params: (0,_utils__WEBPACK_IMPORTED_MODULE_0__.tryParseJson)(_this.getAttribute('params')),
3768
- empty: undefined
4030
+ empty: undefined,
4031
+ children: (0,_utils__WEBPACK_IMPORTED_MODULE_1__.reactifyContent)(_this.childNodes)
3769
4032
  };
3770
4033
  return _this;
3771
4034
  }
@@ -3843,8 +4106,8 @@ if (typeof window !== 'undefined' && 'customElements' in window) {
3843
4106
  customElements.define('piral-extension', PiralExtension);
3844
4107
  }
3845
4108
 
3846
- function render(context, element, props) {
3847
- var _renderInDom = (0,_utils__WEBPACK_IMPORTED_MODULE_1__.renderInDom)(context, element, _components__WEBPACK_IMPORTED_MODULE_2__.ExtensionSlot, props),
4109
+ function renderElement(context, element, props) {
4110
+ var _renderInDom = (0,_utils__WEBPACK_IMPORTED_MODULE_2__.renderInDom)(context, element, _components__WEBPACK_IMPORTED_MODULE_3__.ExtensionSlot, props),
3848
4111
  _renderInDom2 = _slicedToArray(_renderInDom, 2),
3849
4112
  id = _renderInDom2[0],
3850
4113
  portal = _renderInDom2[1];
@@ -3861,7 +4124,7 @@ function render(context, element, props) {
3861
4124
  };
3862
4125
 
3863
4126
  var update = function update(newProps) {
3864
- var _changeDomPortal = (0,_utils__WEBPACK_IMPORTED_MODULE_1__.changeDomPortal)(id, portal, context, element, _components__WEBPACK_IMPORTED_MODULE_2__.ExtensionSlot, newProps);
4127
+ var _changeDomPortal = (0,_utils__WEBPACK_IMPORTED_MODULE_2__.changeDomPortal)(id, portal, context, element, _components__WEBPACK_IMPORTED_MODULE_3__.ExtensionSlot, newProps);
3865
4128
 
3866
4129
  var _changeDomPortal2 = _slicedToArray(_changeDomPortal, 2);
3867
4130
 
@@ -3873,169 +4136,6 @@ function render(context, element, props) {
3873
4136
  return [dispose, update];
3874
4137
  }
3875
4138
 
3876
- function createCoreApi(context) {
3877
- if (typeof document !== 'undefined') {
3878
- document.body.addEventListener('render-html', function (ev) {
3879
- ev.stopPropagation();
3880
- var container = ev.detail.target;
3881
-
3882
- var _render = render(context, container, ev.detail.props),
3883
- _render2 = _slicedToArray(_render, 2),
3884
- dispose = _render2[0],
3885
- update = _render2[1];
3886
-
3887
- container.dispose = dispose;
3888
- container.update = update;
3889
- }, false);
3890
- }
3891
-
3892
- return function (api, target) {
3893
- var pilet = target.name;
3894
- return {
3895
- getData: function getData(name) {
3896
- return context.readDataValue(name);
3897
- },
3898
- setData: function setData(name, value, options) {
3899
- var _createDataOptions = (0,_utils__WEBPACK_IMPORTED_MODULE_3__.createDataOptions)(options),
3900
- _createDataOptions$ta = _createDataOptions.target,
3901
- target = _createDataOptions$ta === void 0 ? 'memory' : _createDataOptions$ta,
3902
- expires = _createDataOptions.expires;
3903
-
3904
- var expiration = (0,_utils__WEBPACK_IMPORTED_MODULE_3__.getDataExpiration)(expires);
3905
- return context.tryWriteDataItem(name, value, pilet, target, expiration);
3906
- },
3907
- registerPage: function registerPage(route, arg, meta) {
3908
- context.registerPage(route, {
3909
- pilet: pilet,
3910
- meta: meta,
3911
- component: (0,_state__WEBPACK_IMPORTED_MODULE_4__.withApi)(context, arg, api, 'page')
3912
- });
3913
- return function () {
3914
- return api.unregisterPage(route);
3915
- };
3916
- },
3917
- unregisterPage: function unregisterPage(route) {
3918
- context.unregisterPage(route);
3919
- },
3920
- registerExtension: function registerExtension(name, arg, defaults) {
3921
- context.registerExtension(name, {
3922
- pilet: pilet,
3923
- component: (0,_state__WEBPACK_IMPORTED_MODULE_4__.withApi)(context, arg, api, 'extension'),
3924
- reference: arg,
3925
- defaults: defaults
3926
- });
3927
- return function () {
3928
- return api.unregisterExtension(name, arg);
3929
- };
3930
- },
3931
- unregisterExtension: function unregisterExtension(name, arg) {
3932
- context.unregisterExtension(name, arg);
3933
- },
3934
- renderHtmlExtension: function renderHtmlExtension(element, props) {
3935
- var _render3 = render(context, element, props),
3936
- _render4 = _slicedToArray(_render3, 1),
3937
- dispose = _render4[0];
3938
-
3939
- return dispose;
3940
- },
3941
- Extension: _components__WEBPACK_IMPORTED_MODULE_2__.ExtensionSlot
3942
- };
3943
- };
3944
- }
3945
- function createExtenders(context, apis) {
3946
- var creators = [createCoreApi].concat(_toConsumableArray(apis.filter(piral_base__WEBPACK_IMPORTED_MODULE_5__.isfunc)));
3947
- return creators.map(function (c) {
3948
- var ctx = c(context);
3949
-
3950
- if ((0,piral_base__WEBPACK_IMPORTED_MODULE_5__.isfunc)(ctx)) {
3951
- return ctx;
3952
- } else {
3953
- return function () {
3954
- return Object.assign({}, ctx);
3955
- };
3956
- }
3957
- });
3958
- }
3959
- function defaultApiFactory(context, apis) {
3960
- var extenders = createExtenders(context, apis);
3961
- return function (target) {
3962
- var api = (0,piral_base__WEBPACK_IMPORTED_MODULE_6__.initializeApi)(target, context);
3963
- context.apis[target.name] = api;
3964
- return (0,piral_base__WEBPACK_IMPORTED_MODULE_6__.mergeApis)(api, extenders, target);
3965
- };
3966
- }
3967
-
3968
- /***/ }),
3969
-
3970
- /***/ "../../framework/piral-core/esm/modules/dependencies.js":
3971
- /*!**************************************************************!*\
3972
- !*** ../../framework/piral-core/esm/modules/dependencies.js ***!
3973
- \**************************************************************/
3974
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
3975
-
3976
- "use strict";
3977
- __webpack_require__.r(__webpack_exports__);
3978
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3979
- /* harmony export */ "globalDependencies": () => (/* binding */ globalDependencies),
3980
- /* harmony export */ "defaultDependencySelector": () => (/* binding */ defaultDependencySelector),
3981
- /* harmony export */ "defaultModuleRequester": () => (/* binding */ defaultModuleRequester)
3982
- /* harmony export */ });
3983
- /* harmony import */ var piral_base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! piral-base */ "../../framework/piral-base/esm/utils.js");
3984
- /* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! tslib */ "../../../node_modules/tslib/tslib.es6.js");
3985
-
3986
-
3987
- /**
3988
- * The global dependencies, which represent the dependencies
3989
- * shared from the app shell itself.
3990
- */
3991
-
3992
- var globalDependencies = {};
3993
-
3994
- if (true) {
3995
- var fillDependencies = __webpack_require__(/*! ../../dependencies.codegen */ "../../framework/piral-core/dependencies.codegen");
3996
-
3997
- if ((0,piral_base__WEBPACK_IMPORTED_MODULE_0__.isfunc)(fillDependencies)) {
3998
- fillDependencies(globalDependencies);
3999
- } else {
4000
- // fall back to the default list if the codegen is invalid / not supported
4001
- (0,tslib__WEBPACK_IMPORTED_MODULE_1__.__assign)(globalDependencies, {
4002
- react: __webpack_require__(/*! react */ "../../../node_modules/react/index.js"),
4003
- 'react-dom': __webpack_require__(/*! react-dom */ "../../../node_modules/react-dom/index.js"),
4004
- 'react-router': __webpack_require__(/*! react-router */ "../../../node_modules/react-router/esm/react-router.js"),
4005
- 'react-router-dom': __webpack_require__(/*! react-router-dom */ "../../../node_modules/react-router-dom/esm/react-router-dom.js"),
4006
- history: __webpack_require__(/*! history */ "../../../node_modules/history/esm/history.js"),
4007
- tslib: __webpack_require__(/*! tslib */ "../../../node_modules/tslib/tslib.es6.js"),
4008
- 'path-to-regexp': __webpack_require__(/*! path-to-regexp */ "../../../node_modules/path-to-regexp/index.js"),
4009
- '@libre/atom': __webpack_require__(/*! @libre/atom */ "../../../node_modules/@libre/atom/dist/index.esm.js"),
4010
- '@dbeining/react-atom': __webpack_require__(/*! @dbeining/react-atom */ "../../../node_modules/@dbeining/react-atom/dist/react-atom.js")
4011
- });
4012
- }
4013
- } else {}
4014
- /**
4015
- * The default dependency selector, which just returns the provided
4016
- * dependencies.
4017
- */
4018
-
4019
-
4020
- function defaultDependencySelector(dependencies) {
4021
- return dependencies;
4022
- }
4023
- /**
4024
- * The default pilet requester, which just returns an empty array.
4025
- * Use your own code to connect to the feed service.
4026
- *
4027
- * @example
4028
- ```js
4029
- return fetch('https://feed.piral.cloud/api/v1/pilet/sample')
4030
- .then(res => res.json())
4031
- .then(res => res.items);
4032
- ```
4033
- */
4034
-
4035
- function defaultModuleRequester() {
4036
- return Promise.resolve([]);
4037
- }
4038
-
4039
4139
  /***/ }),
4040
4140
 
4041
4141
  /***/ "../../framework/piral-core/esm/state/createActions.js":
@@ -4558,15 +4658,79 @@ function getDataExpiration(expires) {
4558
4658
  "use strict";
4559
4659
  __webpack_require__.r(__webpack_exports__);
4560
4660
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4561
- /* harmony export */ "toExtension": () => (/* binding */ toExtension)
4661
+ /* harmony export */ "toExtension": () => (/* binding */ toExtension),
4662
+ /* harmony export */ "reactifyContent": () => (/* binding */ reactifyContent)
4562
4663
  /* harmony export */ });
4563
4664
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "../../../node_modules/react/index.js");
4665
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
4666
+
4667
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4668
+
4669
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
4670
+
4671
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
4672
+
4673
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
4674
+
4675
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
4676
+
4677
+
4678
+
4679
+ function removeAll(nodes) {
4680
+ nodes.forEach(function (node) {
4681
+ return node.remove();
4682
+ });
4683
+ }
4684
+
4685
+ var SlotCarrier = function SlotCarrier(_ref) {
4686
+ var nodes = _ref.nodes;
4687
+ var host = react__WEBPACK_IMPORTED_MODULE_0__.useRef();
4688
+ react__WEBPACK_IMPORTED_MODULE_0__.useEffect(function () {
4689
+ var _a2;
4690
+
4691
+ var _a;
4692
+
4693
+ (_a = host.current) === null || _a === void 0 ? void 0 : (_a2 = _a).append.apply(_a2, _toConsumableArray(nodes));
4694
+ return function () {
4695
+ return removeAll(nodes);
4696
+ };
4697
+ }, [nodes]);
4698
+
4699
+ if (nodes.length) {
4700
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement("slot", {
4701
+ ref: host
4702
+ });
4703
+ }
4704
+
4705
+ return null;
4706
+ };
4707
+ /**
4708
+ * Transforms the given component to an extension component.
4709
+ * @param Component The component to transform.
4710
+ * @returns The extension component (receiving its props via params).
4711
+ */
4712
+
4564
4713
 
4565
4714
  function toExtension(Component) {
4566
4715
  return function (props) {
4567
4716
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(Component, Object.assign({}, props.params));
4568
4717
  };
4569
4718
  }
4719
+ /**
4720
+ * Reactifies the list of child nodes to a React Node by removing the
4721
+ * nodes from the DOM and carrying it in a React Node, where it would be
4722
+ * attached at a slot.
4723
+ * @param childNodes The child nodes to reactify.
4724
+ * @returns The React Node.
4725
+ */
4726
+
4727
+ function reactifyContent(childNodes) {
4728
+ var nodes = Array.prototype.filter.call(childNodes, Boolean);
4729
+ removeAll(nodes);
4730
+ return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0__.createElement(SlotCarrier, {
4731
+ nodes: nodes
4732
+ });
4733
+ }
4570
4734
 
4571
4735
  /***/ }),
4572
4736
 
@@ -4792,6 +4956,7 @@ __webpack_require__.r(__webpack_exports__);
4792
4956
  /* harmony export */ "createDataOptions": () => (/* reexport safe */ _data__WEBPACK_IMPORTED_MODULE_1__.createDataOptions),
4793
4957
  /* harmony export */ "createDataView": () => (/* reexport safe */ _data__WEBPACK_IMPORTED_MODULE_1__.createDataView),
4794
4958
  /* harmony export */ "getDataExpiration": () => (/* reexport safe */ _data__WEBPACK_IMPORTED_MODULE_1__.getDataExpiration),
4959
+ /* harmony export */ "reactifyContent": () => (/* reexport safe */ _extension__WEBPACK_IMPORTED_MODULE_2__.reactifyContent),
4795
4960
  /* harmony export */ "toExtension": () => (/* reexport safe */ _extension__WEBPACK_IMPORTED_MODULE_2__.toExtension),
4796
4961
  /* harmony export */ "attachDomPortal": () => (/* reexport safe */ _foreign__WEBPACK_IMPORTED_MODULE_3__.attachDomPortal),
4797
4962
  /* harmony export */ "changeDomPortal": () => (/* reexport safe */ _foreign__WEBPACK_IMPORTED_MODULE_3__.changeDomPortal),
@@ -5487,6 +5652,7 @@ __webpack_require__.r(__webpack_exports__);
5487
5652
  /* harmony export */ "noop": () => (/* reexport safe */ piral_core__WEBPACK_IMPORTED_MODULE_0__.noop),
5488
5653
  /* harmony export */ "prependItem": () => (/* reexport safe */ piral_core__WEBPACK_IMPORTED_MODULE_0__.prependItem),
5489
5654
  /* harmony export */ "prependItems": () => (/* reexport safe */ piral_core__WEBPACK_IMPORTED_MODULE_0__.prependItems),
5655
+ /* harmony export */ "reactifyContent": () => (/* reexport safe */ piral_core__WEBPACK_IMPORTED_MODULE_0__.reactifyContent),
5490
5656
  /* harmony export */ "removeIndicator": () => (/* reexport safe */ piral_core__WEBPACK_IMPORTED_MODULE_0__.removeIndicator),
5491
5657
  /* harmony export */ "removeNested": () => (/* reexport safe */ piral_core__WEBPACK_IMPORTED_MODULE_0__.removeNested),
5492
5658
  /* harmony export */ "renderInDom": () => (/* reexport safe */ piral_core__WEBPACK_IMPORTED_MODULE_0__.renderInDom),
@@ -9058,11 +9224,11 @@ function installPiralDebug(options) {
9058
9224
  debug: debugApiVersion,
9059
9225
  instance: {
9060
9226
  name: "sample-piral",
9061
- version: "0.14.8-beta.3509",
9227
+ version: "0.14.8-beta.3510",
9062
9228
  dependencies: "reactstrap,react,react-dom,react-router,react-router-dom,history,tslib,path-to-regexp,@libre/atom,@dbeining/react-atom"
9063
9229
  },
9064
9230
  build: {
9065
- date: "2022-01-19T08:52:54.958Z",
9231
+ date: "2022-01-20T00:44:37.424Z",
9066
9232
  cli: "0.14.7",
9067
9233
  compat: "0.14"
9068
9234
  },
@@ -80367,4 +80533,4 @@ var layout_1 = __webpack_require__(/*! ./layout */ "./src/layout.tsx");
80367
80533
 
80368
80534
  /******/ })()
80369
80535
  ;
80370
- //# sourceMappingURL=index.e6e3cd.js.map
80536
+ //# sourceMappingURL=index.473a9c.js.map