Socket
Socket
Sign inDemoInstall

@atlaskit/analytics-next

Package Overview
Dependencies
Maintainers
1
Versions
118
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@atlaskit/analytics-next - npm Package Compare versions

Comparing version 6.2.0 to 6.3.0

dist/cjs/useCallbackWithAnalytics.d.ts

8

CHANGELOG.md
# @atlaskit/analytics-next
## 6.3.0
### Minor Changes
- [minor][2252a7a999](https://bitbucket.org/atlassian/atlaskit-mk-2/commits/2252a7a999):
Bug fix for using the hook with nested contexts, performance improvements, new `useAnalyticsEventsCallback` hook to provide a performance enhanced-abstraction for firing events with a callback.
## 6.2.0

@@ -4,0 +12,0 @@

10

dist/cjs/AnalyticsContext.d.ts

@@ -10,9 +10,16 @@ import React, { Component } from 'react';

}
declare class AnalyticsContext extends Component<Props> {
interface State {
getAtlaskitAnalyticsContext: () => any[];
getAtlaskitAnalyticsEventHandlers: () => any[];
}
declare class AnalyticsContext extends Component<Props, State> {
static contextTypes: {
getAtlaskitAnalyticsContext: PropTypes.Requireable<any>;
getAtlaskitAnalyticsEventHandlers: PropTypes.Requireable<any>;
};
static childContextTypes: {
getAtlaskitAnalyticsContext: PropTypes.Requireable<any>;
getAtlaskitAnalyticsEventHandlers: PropTypes.Requireable<any>;
};
constructor(props: Props);
getChildContext: () => {

@@ -22,4 +29,5 @@ getAtlaskitAnalyticsContext: () => any[];

getAnalyticsContext: () => any[];
getAnalyticsEventHandlers: () => any;
render(): JSX.Element;
}
export default AnalyticsContext;

22

dist/cjs/AnalyticsContext.js

@@ -9,7 +9,8 @@ "use strict";

getAtlaskitAnalyticsContext: prop_types_1.default.func,
getAtlaskitAnalyticsEventHandlers: prop_types_1.default.func,
};
var AnalyticsContext = /** @class */ (function (_super) {
tslib_1.__extends(AnalyticsContext, _super);
function AnalyticsContext() {
var _this = _super !== null && _super.apply(this, arguments) || this;
function AnalyticsContext(props) {
var _this = _super.call(this, props) || this;
_this.getChildContext = function () { return ({

@@ -26,11 +27,18 @@ getAtlaskitAnalyticsContext: _this.getAnalyticsContext,

};
_this.getAnalyticsEventHandlers = function () {
var getAtlaskitAnalyticsEventHandlers = _this.context.getAtlaskitAnalyticsEventHandlers;
var ancestorHandlers = (typeof getAtlaskitAnalyticsEventHandlers === 'function' &&
getAtlaskitAnalyticsEventHandlers()) ||
[];
return ancestorHandlers;
};
_this.state = {
getAtlaskitAnalyticsContext: _this.getAnalyticsContext,
getAtlaskitAnalyticsEventHandlers: _this.getAnalyticsEventHandlers,
};
return _this;
}
AnalyticsContext.prototype.render = function () {
var _a = this.context.getAtlaskitAnalyticsEventHandlers, getAtlaskitAnalyticsEventHandlers = _a === void 0 ? function () { return []; } : _a;
var children = this.props.children;
return (react_1.default.createElement(AnalyticsReactContext_1.AnalyticsReactContext.Provider, { value: {
getAtlaskitAnalyticsContext: this.getAnalyticsContext,
getAtlaskitAnalyticsEventHandlers: getAtlaskitAnalyticsEventHandlers,
} }, react_1.Children.only(children)));
return (react_1.default.createElement(AnalyticsReactContext_1.AnalyticsReactContext.Provider, { value: this.state }, react_1.Children.only(children)));
};

@@ -37,0 +45,0 @@ AnalyticsContext.contextTypes = ContextTypes;

@@ -10,4 +10,5 @@ export { CreateUIAnalyticsEvent } from './types';

export { AnalyticsReactContext, AnalyticsReactContextInterface, } from './AnalyticsReactContext';
export { useAnalyticsEvents_experimental, UseAnalyticsEventsHook, } from './useAnalyticsEvents';
export { useAnalyticsEvents, UseAnalyticsEventsHook, } from './useAnalyticsEvents';
export { useCallbackWithAnalytics, UseCallbackWithAnalyticsHook, } from './useCallbackWithAnalytics';
export { default as createAndFireEvent } from './createAndFireEvent';
export { default as cleanProps } from './cleanProps';

@@ -27,3 +27,5 @@ "use strict";

var useAnalyticsEvents_1 = require("./useAnalyticsEvents");
exports.useAnalyticsEvents_experimental = useAnalyticsEvents_1.useAnalyticsEvents_experimental;
exports.useAnalyticsEvents = useAnalyticsEvents_1.useAnalyticsEvents;
var useCallbackWithAnalytics_1 = require("./useCallbackWithAnalytics");
exports.useCallbackWithAnalytics = useCallbackWithAnalytics_1.useCallbackWithAnalytics;
// Helper functions

@@ -30,0 +32,0 @@ var createAndFireEvent_1 = require("./createAndFireEvent");

@@ -5,2 +5,2 @@ import { CreateUIAnalyticsEvent } from './types';

};
export declare function useAnalyticsEvents_experimental(): UseAnalyticsEventsHook;
export declare function useAnalyticsEvents(): UseAnalyticsEventsHook;

@@ -7,5 +7,11 @@ "use strict";

var UIAnalyticsEvent_1 = tslib_1.__importDefault(require("./UIAnalyticsEvent"));
function useAnalyticsEvents_experimental() {
function useAnalyticsEvents() {
var _a = react_1.useContext(AnalyticsReactContext_1.AnalyticsReactContext), getAtlaskitAnalyticsEventHandlers = _a.getAtlaskitAnalyticsEventHandlers, getAtlaskitAnalyticsContext = _a.getAtlaskitAnalyticsContext;
var createAnalyticsEvent = function (payload) {
if ((getAtlaskitAnalyticsEventHandlers === null ||
getAtlaskitAnalyticsContext === null) &&
process.env.NODE_ENV !== 'production') {
/* eslint-disable-next-line no-console */
console.warn("No compatible AnalyticsListener is listening to this event fire. Use of this hook requires the firing component/hook to be wrapped in an AnalyticsListener from @atlaskit/analytics-next@^6.3.0 or above.");
}
var createAnalyticsEvent = react_1.useCallback(function (payload) {
return new UIAnalyticsEvent_1.default({

@@ -16,9 +22,3 @@ context: getAtlaskitAnalyticsContext(),

});
};
react_1.useEffect(function () {
if (process.env.NODE_ENV !== 'production') {
// eslint-disable-next-line no-console
console.warn("The useAnalyticsEvents_experimental hook should be used with caution.\n It's consumers must be wrapped with the updated AnalyticsListener and AnalyticsContext components from the latest release of @atlaskit/analytics-next.");
}
}, []);
}, [getAtlaskitAnalyticsEventHandlers, getAtlaskitAnalyticsContext]);
return {

@@ -28,3 +28,3 @@ createAnalyticsEvent: createAnalyticsEvent,

}
exports.useAnalyticsEvents_experimental = useAnalyticsEvents_experimental;
exports.useAnalyticsEvents = useAnalyticsEvents;
//# sourceMappingURL=useAnalyticsEvents.js.map

@@ -12,3 +12,3 @@ "use strict";

if (createEventMap === void 0) { createEventMap = {}; }
var createAnalyticsEvent = useAnalyticsEvents_1.useAnalyticsEvents_experimental().createAnalyticsEvent;
var createAnalyticsEvent = useAnalyticsEvents_1.useAnalyticsEvents().createAnalyticsEvent;
var mapCreateEventsToProps = function (changedPropNames, props) {

@@ -15,0 +15,0 @@ return changedPropNames.reduce(function (modified, propCallbackName) {

{
"name": "@atlaskit/analytics-next",
"version": "6.2.0",
"version": "6.3.0",
"sideEffects": false
}

@@ -15,3 +15,3 @@ "use strict";

var patchedEventProps = usePatchedProps_1.usePatchedProps(createEventMap, props).patchedEventProps;
var createAnalyticsEvent = useAnalyticsEvents_1.useAnalyticsEvents_experimental().createAnalyticsEvent;
var createAnalyticsEvent = useAnalyticsEvents_1.useAnalyticsEvents().createAnalyticsEvent;
return (react_1.default.createElement(WrappedComponent, tslib_1.__assign({}, props, patchedEventProps, { createAnalyticsEvent: createAnalyticsEvent, ref: ref })));

@@ -18,0 +18,0 @@ });

@@ -10,9 +10,16 @@ import React, { Component } from 'react';

}
declare class AnalyticsContext extends Component<Props> {
interface State {
getAtlaskitAnalyticsContext: () => any[];
getAtlaskitAnalyticsEventHandlers: () => any[];
}
declare class AnalyticsContext extends Component<Props, State> {
static contextTypes: {
getAtlaskitAnalyticsContext: PropTypes.Requireable<any>;
getAtlaskitAnalyticsEventHandlers: PropTypes.Requireable<any>;
};
static childContextTypes: {
getAtlaskitAnalyticsContext: PropTypes.Requireable<any>;
getAtlaskitAnalyticsEventHandlers: PropTypes.Requireable<any>;
};
constructor(props: Props);
getChildContext: () => {

@@ -22,4 +29,5 @@ getAtlaskitAnalyticsContext: () => any[];

getAnalyticsContext: () => any[];
getAnalyticsEventHandlers: () => any;
render(): JSX.Element;
}
export default AnalyticsContext;

@@ -7,7 +7,8 @@ import { __extends, __read, __spread } from "tslib";

getAtlaskitAnalyticsContext: PropTypes.func,
getAtlaskitAnalyticsEventHandlers: PropTypes.func,
};
var AnalyticsContext = /** @class */ (function (_super) {
__extends(AnalyticsContext, _super);
function AnalyticsContext() {
var _this = _super !== null && _super.apply(this, arguments) || this;
function AnalyticsContext(props) {
var _this = _super.call(this, props) || this;
_this.getChildContext = function () { return ({

@@ -24,11 +25,18 @@ getAtlaskitAnalyticsContext: _this.getAnalyticsContext,

};
_this.getAnalyticsEventHandlers = function () {
var getAtlaskitAnalyticsEventHandlers = _this.context.getAtlaskitAnalyticsEventHandlers;
var ancestorHandlers = (typeof getAtlaskitAnalyticsEventHandlers === 'function' &&
getAtlaskitAnalyticsEventHandlers()) ||
[];
return ancestorHandlers;
};
_this.state = {
getAtlaskitAnalyticsContext: _this.getAnalyticsContext,
getAtlaskitAnalyticsEventHandlers: _this.getAnalyticsEventHandlers,
};
return _this;
}
AnalyticsContext.prototype.render = function () {
var _a = this.context.getAtlaskitAnalyticsEventHandlers, getAtlaskitAnalyticsEventHandlers = _a === void 0 ? function () { return []; } : _a;
var children = this.props.children;
return (React.createElement(AnalyticsReactContext.Provider, { value: {
getAtlaskitAnalyticsContext: this.getAnalyticsContext,
getAtlaskitAnalyticsEventHandlers: getAtlaskitAnalyticsEventHandlers,
} }, Children.only(children)));
return (React.createElement(AnalyticsReactContext.Provider, { value: this.state }, Children.only(children)));
};

@@ -35,0 +43,0 @@ AnalyticsContext.contextTypes = ContextTypes;

@@ -10,4 +10,5 @@ export { CreateUIAnalyticsEvent } from './types';

export { AnalyticsReactContext, AnalyticsReactContextInterface, } from './AnalyticsReactContext';
export { useAnalyticsEvents_experimental, UseAnalyticsEventsHook, } from './useAnalyticsEvents';
export { useAnalyticsEvents, UseAnalyticsEventsHook, } from './useAnalyticsEvents';
export { useCallbackWithAnalytics, UseCallbackWithAnalyticsHook, } from './useCallbackWithAnalytics';
export { default as createAndFireEvent } from './createAndFireEvent';
export { default as cleanProps } from './cleanProps';

@@ -16,3 +16,4 @@ // Analytics event classes

// Hook for creating and firing analytics events
export { useAnalyticsEvents_experimental, } from './useAnalyticsEvents';
export { useAnalyticsEvents, } from './useAnalyticsEvents';
export { useCallbackWithAnalytics, } from './useCallbackWithAnalytics';
// Helper functions

@@ -19,0 +20,0 @@ export { default as createAndFireEvent } from './createAndFireEvent';

@@ -5,2 +5,2 @@ import { CreateUIAnalyticsEvent } from './types';

};
export declare function useAnalyticsEvents_experimental(): UseAnalyticsEventsHook;
export declare function useAnalyticsEvents(): UseAnalyticsEventsHook;

@@ -1,7 +0,13 @@

import { useContext, useEffect } from 'react';
import { useContext, useCallback } from 'react';
import { AnalyticsReactContext } from './AnalyticsReactContext';
import UIAnalyticsEvent from './UIAnalyticsEvent';
export function useAnalyticsEvents_experimental() {
export function useAnalyticsEvents() {
var _a = useContext(AnalyticsReactContext), getAtlaskitAnalyticsEventHandlers = _a.getAtlaskitAnalyticsEventHandlers, getAtlaskitAnalyticsContext = _a.getAtlaskitAnalyticsContext;
var createAnalyticsEvent = function (payload) {
if ((getAtlaskitAnalyticsEventHandlers === null ||
getAtlaskitAnalyticsContext === null) &&
process.env.NODE_ENV !== 'production') {
/* eslint-disable-next-line no-console */
console.warn("No compatible AnalyticsListener is listening to this event fire. Use of this hook requires the firing component/hook to be wrapped in an AnalyticsListener from @atlaskit/analytics-next@^6.3.0 or above.");
}
var createAnalyticsEvent = useCallback(function (payload) {
return new UIAnalyticsEvent({

@@ -12,9 +18,3 @@ context: getAtlaskitAnalyticsContext(),

});
};
useEffect(function () {
if (process.env.NODE_ENV !== 'production') {
// eslint-disable-next-line no-console
console.warn("The useAnalyticsEvents_experimental hook should be used with caution.\n It's consumers must be wrapped with the updated AnalyticsListener and AnalyticsContext components from the latest release of @atlaskit/analytics-next.");
}
}, []);
}, [getAtlaskitAnalyticsEventHandlers, getAtlaskitAnalyticsContext]);
return {

@@ -21,0 +21,0 @@ createAnalyticsEvent: createAnalyticsEvent,

@@ -7,6 +7,6 @@ /**

import { useState } from 'react';
import { useAnalyticsEvents_experimental } from './useAnalyticsEvents';
import { useAnalyticsEvents } from './useAnalyticsEvents';
export function usePatchedProps(createEventMap, wrappedComponentProps) {
if (createEventMap === void 0) { createEventMap = {}; }
var createAnalyticsEvent = useAnalyticsEvents_experimental().createAnalyticsEvent;
var createAnalyticsEvent = useAnalyticsEvents().createAnalyticsEvent;
var mapCreateEventsToProps = function (changedPropNames, props) {

@@ -13,0 +13,0 @@ return changedPropNames.reduce(function (modified, propCallbackName) {

{
"name": "@atlaskit/analytics-next",
"version": "6.2.0",
"version": "6.3.0",
"sideEffects": false
}

@@ -9,7 +9,7 @@ import { __assign } from "tslib";

import { usePatchedProps } from './usePatchedProps';
import { useAnalyticsEvents_experimental } from './useAnalyticsEvents';
import { useAnalyticsEvents } from './useAnalyticsEvents';
var withAnalyticsHook = function (createEventMap) { return function (WrappedComponent) {
var WithAnalyticsHook = React.forwardRef(function (props, ref) {
var patchedEventProps = usePatchedProps(createEventMap, props).patchedEventProps;
var createAnalyticsEvent = useAnalyticsEvents_experimental().createAnalyticsEvent;
var createAnalyticsEvent = useAnalyticsEvents().createAnalyticsEvent;
return (React.createElement(WrappedComponent, __assign({}, props, patchedEventProps, { createAnalyticsEvent: createAnalyticsEvent, ref: ref })));

@@ -16,0 +16,0 @@ });

{
"name": "@atlaskit/analytics-next",
"version": "6.2.0",
"version": "6.3.0",
"description": "The 🆕 Atlaskit component analytics framework",

@@ -5,0 +5,0 @@ "license": "Apache-2.0",

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc