@folklore/ads 0.0.25 → 0.0.27

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.
Files changed (3) hide show
  1. package/dist/cjs.js +22 -13
  2. package/dist/es.js +22 -13
  3. package/package.json +3 -3
package/dist/cjs.js CHANGED
@@ -636,7 +636,8 @@ const propTypes$2 = {
636
636
  resizeDebounceDelay: PropTypes__default["default"].number,
637
637
  refreshOnResize: PropTypes__default["default"].bool,
638
638
  slots: adSlots,
639
- viewports: adViewports
639
+ viewports: adViewports,
640
+ trackingDisabled: PropTypes__default["default"].bool
640
641
  };
641
642
  const defaultProps$2 = {
642
643
  defaultSlotPath: null,
@@ -646,7 +647,8 @@ const defaultProps$2 = {
646
647
  resizeDebounceDelay: 500,
647
648
  refreshOnResize: false,
648
649
  slots: slots,
649
- viewports: viewports
650
+ viewports: viewports,
651
+ trackingDisabled: false
650
652
  };
651
653
  function AdsProvider(_ref) {
652
654
  let {
@@ -658,7 +660,8 @@ function AdsProvider(_ref) {
658
660
  resizeDebounceDelay,
659
661
  refreshOnResize,
660
662
  viewports,
661
- slots
663
+ slots,
664
+ trackingDisabled
662
665
  } = _ref;
663
666
  const [ready, setReady] = React.useState(false);
664
667
  const adsRef = React.useRef(null);
@@ -718,8 +721,9 @@ function AdsProvider(_ref) {
718
721
  ...slotsPath
719
722
  } : {
720
723
  ...slotsPath
721
- }
722
- }), [ready, ads, viewports, slots, slotsPath, defaultSlotPath]);
724
+ },
725
+ trackingDisabled
726
+ }), [ready, ads, viewports, slots, slotsPath, defaultSlotPath, trackingDisabled]);
723
727
  return /*#__PURE__*/jsxRuntime.jsx(AdsContext.Provider, {
724
728
  value: value,
725
729
  children: children
@@ -761,7 +765,7 @@ function AdsTargetingProvider(_ref) {
761
765
  AdsTargetingProvider.propTypes = propTypes$1;
762
766
  AdsTargetingProvider.defaultProps = defaultProps$1;
763
767
 
764
- function useTrackAd() {
768
+ function useAdsTracking() {
765
769
  const tracking$1 = tracking.useTracking() || null;
766
770
  const trackEvent = React.useCallback((action, slot, renderEvent) => {
767
771
  if (tracking$1 !== null && typeof tracking$1.trackAd !== 'undefined') {
@@ -780,19 +784,20 @@ function useAd(path, size) {
780
784
  alwaysRender = false,
781
785
  onRender = null,
782
786
  disabled = false,
783
- trackEvents = true,
787
+ trackingDisabled = false,
784
788
  rootMargin = '300px'
785
789
  } = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
786
790
  const {
787
791
  ads: adsManager,
788
- ready: adsReady
792
+ ready: adsReady,
793
+ trackingDisabled: globalTrackingDisabled = false
789
794
  } = useAdsContext();
790
- const trackAd = useTrackAd();
795
+ const trackAd = useAdsTracking();
791
796
  const track = React.useCallback(function () {
792
- if (trackEvents) {
797
+ if (!trackingDisabled && !globalTrackingDisabled) {
793
798
  trackAd(...arguments);
794
799
  }
795
- }, [trackEvents, trackAd]);
800
+ }, [trackingDisabled, globalTrackingDisabled, trackAd]);
796
801
 
797
802
  // Check for visibility
798
803
  const {
@@ -931,6 +936,7 @@ const propTypes = {
931
936
  refreshInterval: PropTypes__default["default"].number,
932
937
  alwaysRender: PropTypes__default["default"].bool,
933
938
  disabled: PropTypes__default["default"].bool,
939
+ trackingDisabled: PropTypes__default["default"].bool,
934
940
  shouldKeepSize: PropTypes__default["default"].bool,
935
941
  withoutStyle: PropTypes__default["default"].bool,
936
942
  withoutMinimumSize: PropTypes__default["default"].bool,
@@ -948,6 +954,7 @@ const defaultProps = {
948
954
  refreshInterval: null,
949
955
  alwaysRender: true,
950
956
  disabled: false,
957
+ trackingDisabled: false,
951
958
  shouldKeepSize: false,
952
959
  withoutStyle: false,
953
960
  withoutMinimumSize: false,
@@ -967,6 +974,7 @@ function Ad(_ref) {
967
974
  refreshInterval,
968
975
  alwaysRender,
969
976
  disabled,
977
+ trackingDisabled,
970
978
  shouldKeepSize,
971
979
  withoutStyle,
972
980
  withoutMinimumSize,
@@ -1056,7 +1064,8 @@ function Ad(_ref) {
1056
1064
  refreshInterval: finalAdTargeting.refreshInterval,
1057
1065
  alwaysRender,
1058
1066
  onRender: onAdRender,
1059
- disabled
1067
+ disabled,
1068
+ trackingDisabled
1060
1069
  });
1061
1070
  if (slotRef !== null && isFunction__default["default"](slotRef)) {
1062
1071
  slotRef(slotObject);
@@ -1135,5 +1144,5 @@ exports.slots = slots;
1135
1144
  exports.useAd = useAd;
1136
1145
  exports.useAdsContext = useAdsContext;
1137
1146
  exports.useAdsTargeting = useAdsTargeting;
1138
- exports.useAdsTracking = useTrackAd;
1147
+ exports.useAdsTracking = useAdsTracking;
1139
1148
  exports.viewports = viewports;
package/dist/es.js CHANGED
@@ -618,7 +618,8 @@ const propTypes$2 = {
618
618
  resizeDebounceDelay: PropTypes.number,
619
619
  refreshOnResize: PropTypes.bool,
620
620
  slots: adSlots,
621
- viewports: adViewports
621
+ viewports: adViewports,
622
+ trackingDisabled: PropTypes.bool
622
623
  };
623
624
  const defaultProps$2 = {
624
625
  defaultSlotPath: null,
@@ -628,7 +629,8 @@ const defaultProps$2 = {
628
629
  resizeDebounceDelay: 500,
629
630
  refreshOnResize: false,
630
631
  slots: slots,
631
- viewports: viewports
632
+ viewports: viewports,
633
+ trackingDisabled: false
632
634
  };
633
635
  function AdsProvider(_ref) {
634
636
  let {
@@ -640,7 +642,8 @@ function AdsProvider(_ref) {
640
642
  resizeDebounceDelay,
641
643
  refreshOnResize,
642
644
  viewports,
643
- slots
645
+ slots,
646
+ trackingDisabled
644
647
  } = _ref;
645
648
  const [ready, setReady] = useState(false);
646
649
  const adsRef = useRef(null);
@@ -700,8 +703,9 @@ function AdsProvider(_ref) {
700
703
  ...slotsPath
701
704
  } : {
702
705
  ...slotsPath
703
- }
704
- }), [ready, ads, viewports, slots, slotsPath, defaultSlotPath]);
706
+ },
707
+ trackingDisabled
708
+ }), [ready, ads, viewports, slots, slotsPath, defaultSlotPath, trackingDisabled]);
705
709
  return /*#__PURE__*/jsx(AdsContext.Provider, {
706
710
  value: value,
707
711
  children: children
@@ -743,7 +747,7 @@ function AdsTargetingProvider(_ref) {
743
747
  AdsTargetingProvider.propTypes = propTypes$1;
744
748
  AdsTargetingProvider.defaultProps = defaultProps$1;
745
749
 
746
- function useTrackAd() {
750
+ function useAdsTracking() {
747
751
  const tracking = useTracking() || null;
748
752
  const trackEvent = useCallback((action, slot, renderEvent) => {
749
753
  if (tracking !== null && typeof tracking.trackAd !== 'undefined') {
@@ -762,19 +766,20 @@ function useAd(path, size) {
762
766
  alwaysRender = false,
763
767
  onRender = null,
764
768
  disabled = false,
765
- trackEvents = true,
769
+ trackingDisabled = false,
766
770
  rootMargin = '300px'
767
771
  } = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
768
772
  const {
769
773
  ads: adsManager,
770
- ready: adsReady
774
+ ready: adsReady,
775
+ trackingDisabled: globalTrackingDisabled = false
771
776
  } = useAdsContext();
772
- const trackAd = useTrackAd();
777
+ const trackAd = useAdsTracking();
773
778
  const track = useCallback(function () {
774
- if (trackEvents) {
779
+ if (!trackingDisabled && !globalTrackingDisabled) {
775
780
  trackAd(...arguments);
776
781
  }
777
- }, [trackEvents, trackAd]);
782
+ }, [trackingDisabled, globalTrackingDisabled, trackAd]);
778
783
 
779
784
  // Check for visibility
780
785
  const {
@@ -913,6 +918,7 @@ const propTypes = {
913
918
  refreshInterval: PropTypes.number,
914
919
  alwaysRender: PropTypes.bool,
915
920
  disabled: PropTypes.bool,
921
+ trackingDisabled: PropTypes.bool,
916
922
  shouldKeepSize: PropTypes.bool,
917
923
  withoutStyle: PropTypes.bool,
918
924
  withoutMinimumSize: PropTypes.bool,
@@ -930,6 +936,7 @@ const defaultProps = {
930
936
  refreshInterval: null,
931
937
  alwaysRender: true,
932
938
  disabled: false,
939
+ trackingDisabled: false,
933
940
  shouldKeepSize: false,
934
941
  withoutStyle: false,
935
942
  withoutMinimumSize: false,
@@ -949,6 +956,7 @@ function Ad(_ref) {
949
956
  refreshInterval,
950
957
  alwaysRender,
951
958
  disabled,
959
+ trackingDisabled,
952
960
  shouldKeepSize,
953
961
  withoutStyle,
954
962
  withoutMinimumSize,
@@ -1038,7 +1046,8 @@ function Ad(_ref) {
1038
1046
  refreshInterval: finalAdTargeting.refreshInterval,
1039
1047
  alwaysRender,
1040
1048
  onRender: onAdRender,
1041
- disabled
1049
+ disabled,
1050
+ trackingDisabled
1042
1051
  });
1043
1052
  if (slotRef !== null && isFunction(slotRef)) {
1044
1053
  slotRef(slotObject);
@@ -1100,4 +1109,4 @@ function Ad(_ref) {
1100
1109
  Ad.propTypes = propTypes;
1101
1110
  Ad.defaultProps = defaultProps;
1102
1111
 
1103
- export { Ad, AdSlot, AdsManager, AdsProvider, AdsTargetingProvider, propTypes$3 as PropTypes, buildSizeMappingFromSizes, buildSizeMappingFromViewports, getAdSizes, getMinimumAdSize, getSizeMappingFromSlot, getSortedViewports, sizeFitsInViewport, slots, useAd, useAdsContext, useAdsTargeting, useTrackAd as useAdsTracking, viewports };
1112
+ export { Ad, AdSlot, AdsManager, AdsProvider, AdsTargetingProvider, propTypes$3 as PropTypes, buildSizeMappingFromSizes, buildSizeMappingFromViewports, getAdSizes, getMinimumAdSize, getSizeMappingFromSlot, getSortedViewports, sizeFitsInViewport, slots, useAd, useAdsContext, useAdsTargeting, useAdsTracking, viewports };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@folklore/ads",
3
- "version": "0.0.25",
3
+ "version": "0.0.27",
4
4
  "description": "Ads library",
5
5
  "keywords": [
6
6
  "javascript",
@@ -50,10 +50,10 @@
50
50
  "publishConfig": {
51
51
  "access": "public"
52
52
  },
53
- "gitHead": "8ca870e7a04ded6520bb09927ba6c60b0cd80883",
53
+ "gitHead": "ee61fcb16d9b0001aabfdf9c241723a9e0bff6b5",
54
54
  "dependencies": {
55
55
  "@folklore/hooks": "^0.0.43",
56
- "@folklore/tracking": "^0.0.18",
56
+ "@folklore/tracking": "^0.0.20",
57
57
  "classnames": "^2.5.1",
58
58
  "debug": "^4.3.4",
59
59
  "lodash": "^4.17.21",