@teambit/lanes.hooks.use-lanes 0.0.108 → 0.0.110
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/dist/index.d.ts +1 -1
- package/dist/index.js.map +1 -1
- package/dist/lanes-provider.d.ts +4 -1
- package/dist/lanes-provider.js +8 -1
- package/dist/lanes-provider.js.map +1 -1
- package/dist/{preview-1674032735461.js → preview-1674098968766.js} +0 -0
- package/index.ts +1 -1
- package/lanes-provider.tsx +18 -3
- package/package-tar/teambit-lanes.hooks.use-lanes-0.0.110.tgz +0 -0
- package/package.json +4 -4
- package/package-tar/teambit-lanes.hooks.use-lanes-0.0.108.tgz +0 -0
package/dist/index.d.ts
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAAA,iDAAmF;AAA1E,6GAAA,YAAY,OAAA;AAAqB,gHAAA,eAAe,OAAA;AACzD,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAAA,iDAAmF;AAA1E,6GAAA,YAAY,OAAA;AAAqB,gHAAA,eAAe,OAAA;AACzD,mDAA4F;AAAnF,+GAAA,aAAa,OAAA;AACtB,yCAAuC;AAA9B,qGAAA,QAAQ,OAAA"}
|
package/dist/lanes-provider.d.ts
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
2
|
import { LanesModel } from '@teambit/lanes.ui.models.lanes-model';
|
|
3
|
+
import { Location } from '@teambit/base-react.navigation.link';
|
|
3
4
|
import { LaneId } from '@teambit/lane-id';
|
|
5
|
+
export declare type IgnoreDerivingFromUrl = (location?: Location) => boolean;
|
|
4
6
|
export declare type LanesProviderProps = {
|
|
5
7
|
children: ReactNode;
|
|
6
8
|
viewedLaneId?: LaneId;
|
|
7
9
|
targetLanes?: LanesModel;
|
|
10
|
+
ignoreDerivingFromUrl?: IgnoreDerivingFromUrl[];
|
|
8
11
|
};
|
|
9
|
-
export declare function LanesProvider({ children, viewedLaneId: viewedIdFromProps, targetLanes }: LanesProviderProps): JSX.Element;
|
|
12
|
+
export declare function LanesProvider({ children, viewedLaneId: viewedIdFromProps, targetLanes, ignoreDerivingFromUrl: ignoreDerivingFromUrlFromProps, }: LanesProviderProps): JSX.Element;
|
package/dist/lanes-provider.js
CHANGED
|
@@ -30,18 +30,25 @@ const lanes_ui_models_lanes_model_1 = require("@teambit/lanes.ui.models.lanes-mo
|
|
|
30
30
|
const ui_foundation_ui_react_router_use_query_1 = require("@teambit/ui-foundation.ui.react-router.use-query");
|
|
31
31
|
const base_react_navigation_link_1 = require("@teambit/base-react.navigation.link");
|
|
32
32
|
const lanes_context_1 = require("./lanes-context");
|
|
33
|
-
function LanesProvider({ children, viewedLaneId: viewedIdFromProps, targetLanes }) {
|
|
33
|
+
function LanesProvider({ children, viewedLaneId: viewedIdFromProps, targetLanes, ignoreDerivingFromUrl: ignoreDerivingFromUrlFromProps, }) {
|
|
34
34
|
const { lanesModel, loading } = (0, lanes_hooks_use_lanes_1.useLanes)(targetLanes);
|
|
35
35
|
const [lanesState, setLanesState] = (0, react_1.useState)(lanesModel);
|
|
36
36
|
const [viewedLaneId, setViewedLaneId] = (0, react_1.useState)(viewedIdFromProps);
|
|
37
37
|
const location = (0, base_react_navigation_link_1.useLocation)();
|
|
38
38
|
const query = (0, ui_foundation_ui_react_router_use_query_1.useQuery)();
|
|
39
|
+
const ignoreDerivingFromUrl = (0, react_1.useCallback)((_location) => {
|
|
40
|
+
if (ignoreDerivingFromUrlFromProps)
|
|
41
|
+
return ignoreDerivingFromUrlFromProps.some((fn) => fn(_location));
|
|
42
|
+
return false;
|
|
43
|
+
}, []);
|
|
39
44
|
(0, react_1.useEffect)(() => {
|
|
40
45
|
if (viewedIdFromProps)
|
|
41
46
|
setViewedLaneId(viewedIdFromProps);
|
|
42
47
|
}, [viewedIdFromProps === null || viewedIdFromProps === void 0 ? void 0 : viewedIdFromProps.toString()]);
|
|
43
48
|
(0, react_1.useEffect)(() => {
|
|
44
49
|
var _a, _b;
|
|
50
|
+
if (ignoreDerivingFromUrl(location))
|
|
51
|
+
return;
|
|
45
52
|
const onHomeRoute = (location === null || location === void 0 ? void 0 : location.pathname) === '/';
|
|
46
53
|
const viewedLaneIdFromUrl = ((location === null || location === void 0 ? void 0 : location.pathname) && lanes_ui_models_lanes_model_1.LanesModel.getLaneIdFromPathname(location === null || location === void 0 ? void 0 : location.pathname, query)) || undefined;
|
|
47
54
|
const viewedLaneIdToSet = viewedLaneIdFromUrl ||
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lanes-provider.js","sourceRoot":"","sources":["../lanes-provider.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+
|
|
1
|
+
{"version":3,"file":"lanes-provider.js","sourceRoot":"","sources":["../lanes-provider.tsx"],"names":[],"mappings":"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"}
|
|
File without changes
|
package/index.ts
CHANGED
package/lanes-provider.tsx
CHANGED
|
@@ -1,18 +1,26 @@
|
|
|
1
|
-
import React, { ReactNode, useState, useEffect } from 'react';
|
|
1
|
+
import React, { ReactNode, useState, useEffect, useCallback } from 'react';
|
|
2
2
|
import { useLanes } from '@teambit/lanes.hooks.use-lanes';
|
|
3
3
|
import { LanesModel } from '@teambit/lanes.ui.models.lanes-model';
|
|
4
4
|
import { useQuery } from '@teambit/ui-foundation.ui.react-router.use-query';
|
|
5
|
-
import { useLocation } from '@teambit/base-react.navigation.link';
|
|
5
|
+
import { useLocation, Location } from '@teambit/base-react.navigation.link';
|
|
6
6
|
import { LaneId } from '@teambit/lane-id';
|
|
7
7
|
import { LanesContext, LanesContextModel } from './lanes-context';
|
|
8
8
|
|
|
9
|
+
export type IgnoreDerivingFromUrl = (location?: Location) => boolean;
|
|
10
|
+
|
|
9
11
|
export type LanesProviderProps = {
|
|
10
12
|
children: ReactNode;
|
|
11
13
|
viewedLaneId?: LaneId;
|
|
12
14
|
targetLanes?: LanesModel;
|
|
15
|
+
ignoreDerivingFromUrl?: IgnoreDerivingFromUrl[];
|
|
13
16
|
};
|
|
14
17
|
|
|
15
|
-
export function LanesProvider({
|
|
18
|
+
export function LanesProvider({
|
|
19
|
+
children,
|
|
20
|
+
viewedLaneId: viewedIdFromProps,
|
|
21
|
+
targetLanes,
|
|
22
|
+
ignoreDerivingFromUrl: ignoreDerivingFromUrlFromProps,
|
|
23
|
+
}: LanesProviderProps) {
|
|
16
24
|
const { lanesModel, loading } = useLanes(targetLanes);
|
|
17
25
|
const [lanesState, setLanesState] = useState<LanesModel | undefined>(lanesModel);
|
|
18
26
|
const [viewedLaneId, setViewedLaneId] = useState<LaneId | undefined>(viewedIdFromProps);
|
|
@@ -20,11 +28,18 @@ export function LanesProvider({ children, viewedLaneId: viewedIdFromProps, targe
|
|
|
20
28
|
const location = useLocation();
|
|
21
29
|
const query = useQuery();
|
|
22
30
|
|
|
31
|
+
const ignoreDerivingFromUrl = useCallback((_location?: Location) => {
|
|
32
|
+
if (ignoreDerivingFromUrlFromProps) return ignoreDerivingFromUrlFromProps.some((fn) => fn(_location));
|
|
33
|
+
return false;
|
|
34
|
+
}, []);
|
|
35
|
+
|
|
23
36
|
useEffect(() => {
|
|
24
37
|
if (viewedIdFromProps) setViewedLaneId(viewedIdFromProps);
|
|
25
38
|
}, [viewedIdFromProps?.toString()]);
|
|
26
39
|
|
|
27
40
|
useEffect(() => {
|
|
41
|
+
if (ignoreDerivingFromUrl(location)) return;
|
|
42
|
+
|
|
28
43
|
const onHomeRoute = location?.pathname === '/';
|
|
29
44
|
const viewedLaneIdFromUrl =
|
|
30
45
|
(location?.pathname && LanesModel.getLaneIdFromPathname(location?.pathname, query)) || undefined;
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/lanes.hooks.use-lanes",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.110",
|
|
4
4
|
"homepage": "https://bit.dev/teambit/lanes/hooks/use-lanes",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.lanes",
|
|
8
8
|
"name": "hooks/use-lanes",
|
|
9
|
-
"version": "0.0.
|
|
9
|
+
"version": "0.0.110"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"core-js": "^3.0.0",
|
|
13
13
|
"@teambit/base-react.navigation.link": "2.0.27",
|
|
14
|
-
"@teambit/lane-id": "0.0.
|
|
15
|
-
"@teambit/lanes.ui.models.lanes-model": "0.0.
|
|
14
|
+
"@teambit/lane-id": "0.0.164",
|
|
15
|
+
"@teambit/lanes.ui.models.lanes-model": "0.0.72",
|
|
16
16
|
"@teambit/ui-foundation.ui.react-router.use-query": "0.0.496",
|
|
17
17
|
"@teambit/ui-foundation.ui.hooks.use-data-query": "0.0.500"
|
|
18
18
|
},
|
|
Binary file
|