@alicloud/alfa-react 1.4.40 → 1.5.0-alpha.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.
@@ -6,10 +6,12 @@ import _regeneratorRuntime from "@babel/runtime/regenerator";
6
6
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
7
7
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
8
8
  import React, { useRef, useEffect, useState, useMemo } from 'react';
9
+ import { createEventBus } from '@alicloud/alfa-core';
9
10
  import Loading from './components/Loading';
10
11
  import { normalizeName } from './utils';
11
12
  import { countRegister } from './utils/counter';
12
13
  import { version as loaderVersion } from './version';
14
+ var eventBus = createEventBus();
13
15
  var resolvePath = function resolvePath() {
14
16
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
15
17
  args[_key] = arguments[_key];
@@ -77,6 +79,7 @@ export default function createApplication(loader) {
77
79
  noCache = props.noCache,
78
80
  syncHistory = props.syncHistory,
79
81
  basename = props.basename;
82
+ var handleExternalLink = customProps.handleExternalLink;
80
83
  var _useState = useState(null),
81
84
  _useState2 = _slicedToArray(_useState, 2),
82
85
  appInstance = _useState2[0],
@@ -309,6 +312,15 @@ export default function createApplication(loader) {
309
312
  // if (isOsContext()) App.destroy();
310
313
  };
311
314
  }, [memoOptions]);
315
+ useEffect(function () {
316
+ var _handleExternalLink = function _handleExternalLink(href) {
317
+ handleExternalLink === null || handleExternalLink === void 0 ? void 0 : handleExternalLink(href);
318
+ };
319
+ eventBus.on("".concat(normalizeName(name), ":external-router"), _handleExternalLink);
320
+ return function () {
321
+ eventBus.removeListener("".concat(normalizeName(name), ":external-router"), _handleExternalLink);
322
+ };
323
+ }, [handleExternalLink, name]);
312
324
  if (appInstance) {
313
325
  appInstance.update(customProps);
314
326
  }
package/es/version.js CHANGED
@@ -1 +1 @@
1
- export var version = '1.4.40';
1
+ export var version = '1.5.0-alpha.0';
@@ -12,6 +12,7 @@ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers
12
12
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
13
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
14
14
  var _react = _interopRequireWildcard(require("react"));
15
+ var _alfaCore = require("@alicloud/alfa-core");
15
16
  var _Loading = _interopRequireDefault(require("./components/Loading"));
16
17
  var _utils = require("./utils");
17
18
  var _counter = require("./utils/counter");
@@ -20,6 +21,7 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
20
21
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
21
22
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
22
23
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
24
+ var eventBus = (0, _alfaCore.createEventBus)();
23
25
  var resolvePath = function resolvePath() {
24
26
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
25
27
  args[_key] = arguments[_key];
@@ -87,6 +89,7 @@ function createApplication(loader) {
87
89
  noCache = props.noCache,
88
90
  syncHistory = props.syncHistory,
89
91
  basename = props.basename;
92
+ var handleExternalLink = customProps.handleExternalLink;
90
93
  var _useState = (0, _react.useState)(null),
91
94
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
92
95
  appInstance = _useState2[0],
@@ -319,6 +322,15 @@ function createApplication(loader) {
319
322
  // if (isOsContext()) App.destroy();
320
323
  };
321
324
  }, [memoOptions]);
325
+ (0, _react.useEffect)(function () {
326
+ var _handleExternalLink = function _handleExternalLink(href) {
327
+ handleExternalLink === null || handleExternalLink === void 0 ? void 0 : handleExternalLink(href);
328
+ };
329
+ eventBus.on("".concat((0, _utils.normalizeName)(name), ":external-router"), _handleExternalLink);
330
+ return function () {
331
+ eventBus.removeListener("".concat((0, _utils.normalizeName)(name), ":external-router"), _handleExternalLink);
332
+ };
333
+ }, [handleExternalLink, name]);
322
334
  if (appInstance) {
323
335
  appInstance.update(customProps);
324
336
  }
package/lib/version.js CHANGED
@@ -4,5 +4,5 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.version = void 0;
7
- var version = '1.4.40';
7
+ var version = '1.5.0-alpha.0';
8
8
  exports.version = version;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alicloud/alfa-react",
3
- "version": "1.4.40",
3
+ "version": "1.5.0-alpha.0",
4
4
  "description": "Alfa Framework (React Version)",
5
5
  "main": "lib/index.js",
6
6
  "module": "es/index.js",
@@ -9,6 +9,6 @@ export interface SkeletonParagraphProps {
9
9
  }
10
10
  declare class Paragraph extends React.Component<SkeletonParagraphProps, {}> {
11
11
  private getWidth;
12
- render(): React.JSX.Element;
12
+ render(): JSX.Element;
13
13
  }
14
14
  export default Paragraph;
@@ -1,9 +1,9 @@
1
- import * as React from 'react';
1
+ /// <reference types="react" />
2
2
  export interface SkeletonTitleProps {
3
3
  prefixCls?: string;
4
4
  className?: string;
5
5
  style?: object;
6
6
  width?: number | string;
7
7
  }
8
- declare const Title: ({ prefixCls, className, width, style }: SkeletonTitleProps) => React.JSX.Element;
8
+ declare const Title: ({ prefixCls, className, width, style }: SkeletonTitleProps) => JSX.Element;
9
9
  export default Title;
@@ -1,4 +1,4 @@
1
1
  import React from 'react';
2
2
  export default function getLoading({ loading }: {
3
3
  loading?: boolean | React.ReactChild;
4
- }): React.JSX.Element | null;
4
+ }): JSX.Element | null;
@@ -1,20 +1,26 @@
1
- import React from 'react';
1
+ /// <reference types="react" />
2
2
  import { AlfaFactoryOption } from './types';
3
3
  interface IProps {
4
4
  /**
5
5
  * @deprecated
6
6
  */
7
- sandbox: Record<string, any>;
7
+ sandbox?: Record<string, any>;
8
+ /**
9
+ * 处理外跳链接
10
+ * @param url
11
+ * @returns
12
+ */
13
+ handleExternalLink?: (url: string) => void;
8
14
  syncHistory?: boolean;
9
15
  basename?: string;
10
16
  history?: any;
11
17
  path?: string;
12
18
  }
13
- declare function createAlfaApp<P = any>(option: AlfaFactoryOption): (() => null) | ((props: P & IProps) => React.JSX.Element);
19
+ declare function createAlfaApp<P = any>(option: AlfaFactoryOption): (() => null) | ((props: P & IProps) => JSX.Element);
14
20
  /**
15
21
  * create memorized app in react function component, just create App after first mounted
16
22
  * @param option
17
23
  * @returns
18
24
  */
19
- export declare function useAlfaApp<P = any>(option: AlfaFactoryOption): (() => null) | ((props: P & IProps) => React.JSX.Element);
25
+ export declare function useAlfaApp<P = any>(option: AlfaFactoryOption): (() => null) | ((props: P & IProps) => JSX.Element);
20
26
  export default createAlfaApp;
@@ -1,10 +1,10 @@
1
- import React from 'react';
1
+ /// <reference types="react" />
2
2
  import { AlfaFactoryOption } from './types';
3
- declare function createAlfaWidget<P = any>(option: AlfaFactoryOption): (() => null) | ((props: P & {}) => React.JSX.Element);
3
+ declare function createAlfaWidget<P = any>(option: AlfaFactoryOption): (() => null) | ((props: P & {}) => JSX.Element);
4
4
  /**
5
5
  * create memorized app in react function component, just create App after first mounted
6
6
  * @param option
7
7
  * @returns
8
8
  */
9
- export declare function useAlfaWidget<P = any>(option: AlfaFactoryOption): (() => null) | ((props: P & {}) => React.JSX.Element);
9
+ export declare function useAlfaWidget<P = any>(option: AlfaFactoryOption): (() => null) | ((props: P & {}) => JSX.Element);
10
10
  export default createAlfaWidget;
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ /// <reference types="react" />
2
2
  import { BaseLoader } from '@alicloud/alfa-core';
3
3
  import { AlfaFactoryOption } from './types';
4
4
  interface IProps<C = any> extends AlfaFactoryOption {
@@ -7,6 +7,7 @@ interface IProps<C = any> extends AlfaFactoryOption {
7
7
  path?: string;
8
8
  __injectHistory?: any;
9
9
  __innerStamp?: string;
10
+ handleExternalLink?: (href: string) => void;
10
11
  };
11
12
  syncHistory?: boolean;
12
13
  basename?: string;
@@ -16,5 +17,5 @@ interface IProps<C = any> extends AlfaFactoryOption {
16
17
  * @param loader alfa-core loader
17
18
  * @returns
18
19
  */
19
- export default function createApplication(loader: BaseLoader): <C = any>(props: IProps<C>) => React.JSX.Element;
20
+ export default function createApplication(loader: BaseLoader): <C = any>(props: IProps<C>) => JSX.Element;
20
21
  export {};
@@ -1 +1 @@
1
- export declare const version = "1.4.40";
1
+ export declare const version = "1.5.0-alpha.0";
package/types/widget.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- import React from 'react';
1
+ /// <reference types="react" />
2
2
  import { WidgetFactoryOption } from './types';
3
- export declare function createCWSWidget<T>(option: WidgetFactoryOption): (props: T) => React.JSX.Element;
3
+ export declare function createCWSWidget<T>(option: WidgetFactoryOption): (props: T) => JSX.Element;