@weavix/tracker-components 0.1.5 → 0.1.6

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 (41) hide show
  1. package/build/cjs/components/MetaEntitiesSelect/MetaEntitiesSelect.d.ts +6 -2
  2. package/build/cjs/components/MetaEntitiesSelect/MetaEntitiesSelect.js +5 -0
  3. package/build/cjs/components/MetaEntitiesSelect/MetaEntitiesSelect.js.map +1 -1
  4. package/build/cjs/components/MetaEntitiesSelect/README.md +5 -0
  5. package/build/cjs/components/MetaEntitiesSelect/utils/getMetaEntityDisplay.js +8 -2
  6. package/build/cjs/components/MetaEntitiesSelect/utils/getMetaEntityDisplay.js.map +1 -1
  7. package/build/cjs/components/QueueSelect/QueueSelect.d.ts +1 -1
  8. package/build/cjs/components/QueueSelect/QueueSelect.js +5 -5
  9. package/build/cjs/components/QueueSelect/QueueSelect.js.map +1 -1
  10. package/build/cjs/components/QueueSelect/README.md +4 -6
  11. package/build/cjs/components/Select/MultiSelect.js.map +1 -1
  12. package/build/cjs/components/Select/hooks/useAutocomplete.d.ts +1 -1
  13. package/build/cjs/components/Select/hooks/useAutocomplete.js +23 -22
  14. package/build/cjs/components/Select/hooks/useAutocomplete.js.map +1 -1
  15. package/build/cjs/hooks/useUpdateEffect.d.ts +2 -0
  16. package/build/cjs/hooks/useUpdateEffect.js +26 -0
  17. package/build/cjs/hooks/useUpdateEffect.js.map +1 -0
  18. package/build/cjs/utils/cancellablePromise.d.ts +7 -0
  19. package/build/cjs/utils/cancellablePromise.js +27 -0
  20. package/build/cjs/utils/cancellablePromise.js.map +1 -0
  21. package/build/esm/components/MetaEntitiesSelect/MetaEntitiesSelect.d.ts +6 -2
  22. package/build/esm/components/MetaEntitiesSelect/MetaEntitiesSelect.js +4 -0
  23. package/build/esm/components/MetaEntitiesSelect/MetaEntitiesSelect.js.map +1 -1
  24. package/build/esm/components/MetaEntitiesSelect/README.md +5 -0
  25. package/build/esm/components/MetaEntitiesSelect/utils/getMetaEntityDisplay.js +7 -2
  26. package/build/esm/components/MetaEntitiesSelect/utils/getMetaEntityDisplay.js.map +1 -1
  27. package/build/esm/components/QueueSelect/QueueSelect.d.ts +1 -1
  28. package/build/esm/components/QueueSelect/QueueSelect.js +4 -4
  29. package/build/esm/components/QueueSelect/QueueSelect.js.map +1 -1
  30. package/build/esm/components/QueueSelect/README.md +4 -6
  31. package/build/esm/components/Select/MultiSelect.js.map +1 -1
  32. package/build/esm/components/Select/hooks/useAutocomplete.d.ts +1 -1
  33. package/build/esm/components/Select/hooks/useAutocomplete.js +23 -22
  34. package/build/esm/components/Select/hooks/useAutocomplete.js.map +1 -1
  35. package/build/esm/hooks/useUpdateEffect.d.ts +2 -0
  36. package/build/esm/hooks/useUpdateEffect.js +20 -0
  37. package/build/esm/hooks/useUpdateEffect.js.map +1 -0
  38. package/build/esm/utils/cancellablePromise.d.ts +7 -0
  39. package/build/esm/utils/cancellablePromise.js +20 -0
  40. package/build/esm/utils/cancellablePromise.js.map +1 -0
  41. package/package.json +3 -6
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useEffect","useMemo","useRef","useState","debounce","useUnmount","useAutocomplete","getData","searchDelay","arguments","length","undefined","useBoostedValues","_useState","_useState2","_slicedToArray","filteredItems","setFilteredItems","_useState3","_useState4","isLoading","setIsLoading","_useState5","_useState6","searchText","setSearchText","searchRequestRef","searchDebounced","search","current","then","items","error","isCancelled","console","cancel","resetFilteredItems","handleFilterChange","force","emitFilterChange"],"sources":["useAutocomplete.ts"],"sourcesContent":["import {useCallback, useEffect, useMemo, useRef, useState} from 'react';\n\nimport type {CancellablePromise} from '@gravity-ui/sdk';\nimport debounce from 'lodash/debounce';\nimport {useUnmount} from 'react-use';\n\nexport function useAutocomplete<T>(\n getData: (search: string) => CancellablePromise<T>,\n searchDelay = 300,\n useBoostedValues = false,\n) {\n const [filteredItems, setFilteredItems] = useState<T | undefined>();\n const [isLoading, setIsLoading] = useState(false);\n const [searchText, setSearchText] = useState('');\n const searchRequestRef = useRef<CancellablePromise<T[]>>();\n\n const searchDebounced = useMemo(\n () =>\n debounce((search: string) => {\n setSearchText(search);\n searchRequestRef.current = getData(search)\n .then((items) => {\n setFilteredItems(items);\n })\n .catch((error) => {\n if (!error.isCancelled) {\n console.error(error);\n }\n })\n .finally(() => {\n setIsLoading(false);\n }) as unknown as CancellablePromise<T[]>;\n }, searchDelay),\n [getData, searchDelay],\n );\n\n useEffect(() => {\n if (useBoostedValues) {\n setIsLoading(true);\n searchDebounced('');\n }\n }, [useBoostedValues, searchDebounced]);\n\n useUnmount(() => {\n if (searchRequestRef?.current && 'cancel' in searchRequestRef.current) {\n searchRequestRef.current.cancel();\n }\n\n searchDebounced?.cancel();\n });\n\n const resetFilteredItems = useCallback(() => {\n if (searchRequestRef.current && 'cancel' in searchRequestRef.current) {\n searchRequestRef.current.cancel();\n }\n\n searchDebounced.cancel();\n setFilteredItems(undefined);\n setIsLoading(false);\n }, [searchDebounced]);\n\n const handleFilterChange = useCallback(\n (search: string, force?: boolean) => {\n if (searchRequestRef.current && 'cancel' in searchRequestRef.current) {\n searchRequestRef.current.cancel();\n }\n\n searchDebounced.cancel();\n\n if (!search && !useBoostedValues && !force) {\n setSearchText('');\n resetFilteredItems();\n\n return;\n }\n\n setIsLoading(true);\n searchDebounced(search);\n },\n [resetFilteredItems, searchDebounced, useBoostedValues],\n );\n\n const emitFilterChange = useCallback(() => {\n handleFilterChange(searchText, true);\n }, [handleFilterChange, searchText]);\n\n return {\n filteredItems,\n resetFilteredItems,\n handleFilterChange,\n isLoading,\n searchText,\n emitFilterChange,\n };\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useEffect","useMemo","useRef","useState","debounce","useAutocomplete","getData","searchDelay","arguments","length","undefined","useBoostedValues","_useState","_useState2","_slicedToArray","filteredItems","setFilteredItems","_useState3","_useState4","isLoading","setIsLoading","_useState5","_useState6","searchText","setSearchText","searchRequestRef","searchDebounced","search","request","then","items","current","error","isCancelled","console","cancelSearch","cancel","resetFilteredItems","handleFilterChange","force","emitFilterChange"],"sources":["useAutocomplete.ts"],"sourcesContent":["import {useCallback, useEffect, useMemo, useRef, useState} from 'react';\n\nimport debounce from 'lodash/debounce';\n\nimport type {CancellablePromise} from '../../../utils/cancellablePromise';\n\nexport function useAutocomplete<T>(\n getData: (search: string) => CancellablePromise<T>,\n searchDelay = 300,\n useBoostedValues = false,\n) {\n const [filteredItems, setFilteredItems] = useState<T | undefined>();\n const [isLoading, setIsLoading] = useState(false);\n const [searchText, setSearchText] = useState('');\n const searchRequestRef = useRef<CancellablePromise<void>>();\n\n const searchDebounced = useMemo(\n () =>\n debounce((search: string) => {\n setSearchText(search);\n const request = getData(search)\n .then((items) => {\n if (searchRequestRef.current === request) {\n setFilteredItems(items);\n }\n })\n .catch((error) => {\n if (searchRequestRef.current === request && !error?.isCancelled) {\n console.error(error);\n }\n })\n .finally(() => {\n if (searchRequestRef.current === request) {\n setIsLoading(false);\n }\n });\n searchRequestRef.current = request;\n }, searchDelay),\n [getData, searchDelay],\n );\n\n const cancelSearch = useCallback(() => {\n const request = searchRequestRef.current;\n searchRequestRef.current = undefined;\n request?.cancel();\n searchDebounced.cancel();\n }, [searchDebounced]);\n\n useEffect(() => {\n setIsLoading(false);\n if (useBoostedValues) {\n setIsLoading(true);\n searchDebounced('');\n }\n // Also dispose the old debounce/request when getData or searchDelay changes.\n return cancelSearch;\n }, [useBoostedValues, searchDebounced, cancelSearch]);\n\n const resetFilteredItems = useCallback(() => {\n cancelSearch();\n setFilteredItems(undefined);\n setIsLoading(false);\n }, [cancelSearch]);\n\n const handleFilterChange = useCallback(\n (search: string, force?: boolean) => {\n cancelSearch();\n\n if (!search && !useBoostedValues && !force) {\n setSearchText('');\n resetFilteredItems();\n\n return;\n }\n\n setIsLoading(true);\n searchDebounced(search);\n },\n [cancelSearch, resetFilteredItems, searchDebounced, useBoostedValues],\n );\n\n const emitFilterChange = useCallback(() => {\n handleFilterChange(searchText, true);\n }, [handleFilterChange, searchText]);\n\n return {\n filteredItems,\n resetFilteredItems,\n handleFilterChange,\n isLoading,\n searchText,\n emitFilterChange,\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import type { DependencyList, EffectCallback } from 'react';
2
+ export declare function useUpdateEffect(effect: EffectCallback, deps: DependencyList): void;
@@ -0,0 +1,20 @@
1
+ import { useEffect, useRef } from 'react';
2
+ export function useUpdateEffect(effect, deps) {
3
+ var mounted = useRef(false);
4
+ useEffect(function () {
5
+ return function () {
6
+ // React StrictMode replays mount effects; skip both mount setups.
7
+ mounted.current = false;
8
+ };
9
+ }, []);
10
+ useEffect(function () {
11
+ if (mounted.current) {
12
+ return effect();
13
+ }
14
+ mounted.current = true;
15
+ return undefined;
16
+ // The caller controls when this effect runs, just as with useEffect.
17
+ // eslint-disable-next-line react-hooks/exhaustive-deps
18
+ }, deps);
19
+ }
20
+ // #sourceMappingURL=useUpdateEffect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useEffect","useRef","useUpdateEffect","effect","deps","mounted","current","undefined"],"sources":["useUpdateEffect.ts"],"sourcesContent":["import type {DependencyList, EffectCallback} from 'react';\nimport {useEffect, useRef} from 'react';\n\nexport function useUpdateEffect(effect: EffectCallback, deps: DependencyList) {\n const mounted = useRef(false);\n\n useEffect(\n () => () => {\n // React StrictMode replays mount effects; skip both mount setups.\n mounted.current = false;\n },\n [],\n );\n\n useEffect(() => {\n if (mounted.current) {\n return effect();\n }\n mounted.current = true;\n return undefined;\n // The caller controls when this effect runs, just as with useEffect.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, deps);\n}\n"],"mappings":"AACA,SAAQA,SAAS,EAAEC,MAAM,QAAO,OAAO;AAEvC,OAAO,SAASC,eAAeA,CAACC,MAAsB,EAAEC,IAAoB,EAAE;EAC1E,IAAMC,OAAO,GAAGJ,MAAM,CAAC,KAAK,CAAC;EAE7BD,SAAS,CACL;IAAA,OAAM,YAAM;MACR;MACAK,OAAO,CAACC,OAAO,GAAG,KAAK;IAC3B,CAAC;EAAA,GACD,EACJ,CAAC;EAEDN,SAAS,CAAC,YAAM;IACZ,IAAIK,OAAO,CAACC,OAAO,EAAE;MACjB,OAAOH,MAAM,CAAC,CAAC;IACnB;IACAE,OAAO,CAACC,OAAO,GAAG,IAAI;IACtB,OAAOC,SAAS;IAChB;IACA;EACJ,CAAC,EAAEH,IAAI,CAAC;AACZ","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ export interface CancellablePromise<T> extends Promise<T> {
2
+ cancel: () => void;
3
+ then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null): CancellablePromise<TResult1 | TResult2>;
4
+ catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | null): CancellablePromise<T | TResult>;
5
+ finally(onfinally?: (() => void) | null): CancellablePromise<T>;
6
+ }
7
+ export declare function cancellablePromise<T>(promise: Promise<T>, cancel?: () => void): CancellablePromise<T>;
@@ -0,0 +1,20 @@
1
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
2
+ import "core-js/modules/es.symbol.to-string-tag.js";
3
+ import "core-js/modules/es.json.to-string-tag.js";
4
+ import "core-js/modules/es.math.to-string-tag.js";
5
+ import "core-js/modules/es.object.to-string.js";
6
+ import "core-js/modules/es.promise.js";
7
+ import "core-js/modules/es.promise.finally.js";
8
+ // Structural contract: SDK promises remain assignable without their private fields.
9
+
10
+ export function cancellablePromise(promise) {
11
+ var cancel = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : function () {};
12
+ return _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, Symbol.toStringTag, 'CancellablePromise'), "cancel", cancel), "then", function then(onfulfilled, onrejected) {
13
+ return cancellablePromise(promise.then(onfulfilled, onrejected), cancel);
14
+ }), "catch", function _catch(onrejected) {
15
+ return cancellablePromise(promise["catch"](onrejected), cancel);
16
+ }), "finally", function _finally(onfinally) {
17
+ return cancellablePromise(promise["finally"](onfinally), cancel);
18
+ });
19
+ }
20
+ // #sourceMappingURL=cancellablePromise.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["cancellablePromise","promise","cancel","arguments","length","undefined","_defineProperty","Symbol","toStringTag","then","onfulfilled","onrejected","catch","finally","onfinally"],"sources":["cancellablePromise.ts"],"sourcesContent":["// Structural contract: SDK promises remain assignable without their private fields.\nexport interface CancellablePromise<T> extends Promise<T> {\n cancel: () => void;\n then<TResult1 = T, TResult2 = never>(\n onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | null,\n onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | null,\n ): CancellablePromise<TResult1 | TResult2>;\n catch<TResult = never>(\n onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | null,\n ): CancellablePromise<T | TResult>;\n finally(onfinally?: (() => void) | null): CancellablePromise<T>;\n}\n\nexport function cancellablePromise<T>(\n promise: Promise<T>,\n cancel: () => void = () => {},\n): CancellablePromise<T> {\n return {\n [Symbol.toStringTag]: 'CancellablePromise',\n cancel,\n then: (onfulfilled, onrejected) =>\n cancellablePromise(promise.then(onfulfilled, onrejected), cancel),\n catch: (onrejected) => cancellablePromise(promise.catch(onrejected), cancel),\n finally: (onfinally) => cancellablePromise(promise.finally(onfinally), cancel),\n };\n}\n"],"mappings":";;;;;;;AAAA;;AAaA,OAAO,SAASA,kBAAkBA,CAC9BC,OAAmB,EAEE;EAAA,IADrBC,MAAkB,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,YAAM,CAAC,CAAC;EAE7B,OAAAG,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,KACKC,MAAM,CAACC,WAAW,EAAG,oBAAoB,aAC1CN,MAAM,WACA,SAANO,IAAIA,CAAGC,WAAW,EAAEC,UAAU;IAAA,OAC1BX,kBAAkB,CAACC,OAAO,CAACQ,IAAI,CAACC,WAAW,EAAEC,UAAU,CAAC,EAAET,MAAM,CAAC;EAAA,aAC9D,SAAPU,MAAKA,CAAGD,UAAU;IAAA,OAAKX,kBAAkB,CAACC,OAAO,SAAM,CAACU,UAAU,CAAC,EAAET,MAAM,CAAC;EAAA,eACnE,SAATW,QAAOA,CAAGC,SAAS;IAAA,OAAKd,kBAAkB,CAACC,OAAO,WAAQ,CAACa,SAAS,CAAC,EAAEZ,MAAM,CAAC;EAAA;AAEtF","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@weavix/tracker-components",
3
- "version": "0.1.5",
3
+ "version": "0.1.6",
4
4
  "description": "Shared UI components for Yandex Tracker plugins",
5
5
  "main": "build/cjs/index.js",
6
6
  "module": "build/esm/index.js",
@@ -39,13 +39,10 @@
39
39
  "@babel/runtime": "^7.25.0",
40
40
  "@bem-react/classname": "^1.6.0",
41
41
  "@gravity-ui/illustrations": "^2.1.0",
42
- "@gravity-ui/sdk": "1.6.0",
43
- "@weavix/tracker-api-types": "0.0.3",
42
+ "@weavix/tracker-api-types": "0.0.6",
44
43
  "bem-cn-lite": "^4.1.0",
45
44
  "core-js": "^3.38.0",
46
- "lodash": "^4.17.22",
47
- "lodash-es": "^4.17.22",
48
- "react-use": "17.4.0"
45
+ "lodash": "^4.17.22"
49
46
  },
50
47
  "peerDependencies": {
51
48
  "@gravity-ui/icons": "^2.14.0",