@natoora-libs/core 0.2.0-vini-dev-1 → 0.2.1-dev-doug-1

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.
@@ -19,8 +19,40 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
19
19
  // src/hooks/index.ts
20
20
  var hooks_exports = {};
21
21
  __export(hooks_exports, {
22
- default: () => hooks_default
22
+ useDynamicScroll: () => useDynamicScroll
23
23
  });
24
24
  module.exports = __toCommonJS(hooks_exports);
25
- var hooks_default = "@natoora-libs/core/hooks";
25
+
26
+ // src/hooks/useDynamicScroll/useDynamicScroll.ts
27
+ var import_react = require("react");
28
+ var useDynamicScroll = ({
29
+ scrollRef,
30
+ scrollAmount = 300,
31
+ effectDependencies
32
+ }) => {
33
+ const [isScrollable, setIsScrollable] = (0, import_react.useState)(false);
34
+ const checkIfScrollNeeded = (0, import_react.useCallback)(() => {
35
+ if (scrollRef.current) {
36
+ const { scrollWidth, clientWidth } = scrollRef.current;
37
+ setIsScrollable(scrollWidth > clientWidth);
38
+ }
39
+ }, []);
40
+ const scroll = (direction) => {
41
+ if (scrollRef?.current) {
42
+ scrollRef.current.scrollLeft += direction === "left" ? -scrollAmount : scrollAmount;
43
+ }
44
+ };
45
+ (0, import_react.useEffect)(() => {
46
+ checkIfScrollNeeded();
47
+ window.addEventListener("resize", checkIfScrollNeeded);
48
+ return () => {
49
+ window.removeEventListener("resize", checkIfScrollNeeded);
50
+ };
51
+ }, [checkIfScrollNeeded, ...effectDependencies]);
52
+ return { isScrollable, scroll };
53
+ };
54
+ // Annotate the CommonJS export names for ESM import in node:
55
+ 0 && (module.exports = {
56
+ useDynamicScroll
57
+ });
26
58
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/hooks/index.ts"],"sourcesContent":["export default '@natoora-libs/core/hooks';\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAO,gBAAQ;","names":[]}
1
+ {"version":3,"sources":["../../src/hooks/index.ts","../../src/hooks/useDynamicScroll/useDynamicScroll.ts"],"sourcesContent":["export { useDynamicScroll } from './useDynamicScroll/useDynamicScroll';\n","import { RefObject, useCallback, useEffect, useState } from 'react';\n\ntype useDynamicScrollParams = {\n scrollRef: RefObject<HTMLDivElement | null>;\n scrollAmount?: number;\n effectDependencies: unknown[];\n};\n\nexport const useDynamicScroll = ({\n scrollRef,\n scrollAmount = 300,\n effectDependencies,\n}: useDynamicScrollParams) => {\n const [isScrollable, setIsScrollable] = useState(false);\n\n const checkIfScrollNeeded = useCallback(() => {\n if (scrollRef.current) {\n const { scrollWidth, clientWidth } = scrollRef.current;\n setIsScrollable(scrollWidth > clientWidth);\n }\n }, []);\n\n const scroll = (direction: 'left' | 'right') => {\n if (scrollRef?.current) {\n scrollRef.current.scrollLeft +=\n direction === 'left' ? -scrollAmount : scrollAmount;\n }\n };\n\n useEffect(() => {\n checkIfScrollNeeded();\n\n window.addEventListener('resize', checkIfScrollNeeded);\n\n return () => {\n window.removeEventListener('resize', checkIfScrollNeeded);\n };\n }, [checkIfScrollNeeded, ...effectDependencies]);\n\n return { isScrollable, scroll };\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,mBAA4D;AAQrD,IAAM,mBAAmB,CAAC;AAAA,EAC/B;AAAA,EACA,eAAe;AAAA,EACf;AACF,MAA8B;AAC5B,QAAM,CAAC,cAAc,eAAe,QAAI,uBAAS,KAAK;AAEtD,QAAM,0BAAsB,0BAAY,MAAM;AAC5C,QAAI,UAAU,SAAS;AACrB,YAAM,EAAE,aAAa,YAAY,IAAI,UAAU;AAC/C,sBAAgB,cAAc,WAAW;AAAA,IAC3C;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,QAAM,SAAS,CAAC,cAAgC;AAC9C,QAAI,WAAW,SAAS;AACtB,gBAAU,QAAQ,cAChB,cAAc,SAAS,CAAC,eAAe;AAAA,IAC3C;AAAA,EACF;AAEA,8BAAU,MAAM;AACd,wBAAoB;AAEpB,WAAO,iBAAiB,UAAU,mBAAmB;AAErD,WAAO,MAAM;AACX,aAAO,oBAAoB,UAAU,mBAAmB;AAAA,IAC1D;AAAA,EACF,GAAG,CAAC,qBAAqB,GAAG,kBAAkB,CAAC;AAE/C,SAAO,EAAE,cAAc,OAAO;AAChC;","names":[]}
@@ -1,3 +1,13 @@
1
- declare const _default: "@natoora-libs/core/hooks";
1
+ import { RefObject } from 'react';
2
2
 
3
- export { _default as default };
3
+ type useDynamicScrollParams = {
4
+ scrollRef: RefObject<HTMLDivElement | null>;
5
+ scrollAmount?: number;
6
+ effectDependencies: unknown[];
7
+ };
8
+ declare const useDynamicScroll: ({ scrollRef, scrollAmount, effectDependencies, }: useDynamicScrollParams) => {
9
+ isScrollable: boolean;
10
+ scroll: (direction: "left" | "right") => void;
11
+ };
12
+
13
+ export { useDynamicScroll };
@@ -1,3 +1,13 @@
1
- declare const _default: "@natoora-libs/core/hooks";
1
+ import { RefObject } from 'react';
2
2
 
3
- export { _default as default };
3
+ type useDynamicScrollParams = {
4
+ scrollRef: RefObject<HTMLDivElement | null>;
5
+ scrollAmount?: number;
6
+ effectDependencies: unknown[];
7
+ };
8
+ declare const useDynamicScroll: ({ scrollRef, scrollAmount, effectDependencies, }: useDynamicScrollParams) => {
9
+ isScrollable: boolean;
10
+ scroll: (direction: "left" | "right") => void;
11
+ };
12
+
13
+ export { useDynamicScroll };
@@ -1,8 +1,8 @@
1
+ import {
2
+ useDynamicScroll
3
+ } from "../chunk-IXEF6LYV.js";
1
4
  import "../chunk-5WRI5ZAA.js";
2
-
3
- // src/hooks/index.ts
4
- var hooks_default = "@natoora-libs/core/hooks";
5
5
  export {
6
- hooks_default as default
6
+ useDynamicScroll
7
7
  };
8
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/hooks/index.ts"],"sourcesContent":["export default '@natoora-libs/core/hooks';\n"],"mappings":";;;AAAA,IAAO,gBAAQ;","names":[]}
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,47 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+
19
+ // src/utils/index.ts
20
+ var utils_exports = {};
21
+ __export(utils_exports, {
22
+ getFlattenedFiltersIds: () => getFlattenedFiltersIds,
23
+ getFlattenedFiltersLabels: () => getFlattenedFiltersLabels
24
+ });
25
+ module.exports = __toCommonJS(utils_exports);
26
+
27
+ // src/utils/flattenTableFilters/flattenTableFilters.ts
28
+ var getFlattenedFiltersLabels = (filters, fieldName) => {
29
+ return filters.map((value) => {
30
+ if (typeof value === "object") {
31
+ return value[fieldName] ?? "";
32
+ }
33
+ return value;
34
+ });
35
+ };
36
+ var getFlattenedFiltersIds = (filters) => Object.fromEntries(
37
+ Object.entries(filters).map(([id, values]) => [
38
+ id,
39
+ values.map((value) => typeof value === "object" ? value.id : value)
40
+ ])
41
+ );
42
+ // Annotate the CommonJS export names for ESM import in node:
43
+ 0 && (module.exports = {
44
+ getFlattenedFiltersIds,
45
+ getFlattenedFiltersLabels
46
+ });
47
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/utils/index.ts","../../src/utils/flattenTableFilters/flattenTableFilters.ts"],"sourcesContent":["export {\n getFlattenedFiltersLabels,\n getFlattenedFiltersIds,\n type FlattenedFilterIds,\n} from './flattenTableFilters/flattenTableFilters';\n","import {\n HeaderFilterObject,\n HeaderFilters,\n} from '@/components/TableDesktop/TableDesktop';\n\nexport type FlattenedFilterIds = {\n [key: string]: (string | number)[];\n};\n\nexport const getFlattenedFiltersLabels = (\n filters: string[] | HeaderFilterObject[],\n fieldName: string,\n): (string | number)[] => {\n return filters.map((value: string | HeaderFilterObject) => {\n if (typeof value === 'object') {\n return value[fieldName] ?? '';\n }\n return value;\n });\n};\n\nexport const getFlattenedFiltersIds = (\n filters: HeaderFilters,\n): FlattenedFilterIds =>\n Object.fromEntries(\n Object.entries(filters).map(([id, values]) => [\n id,\n values.map((value) => (typeof value === 'object' ? value.id : value)),\n ]),\n );\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACSO,IAAM,4BAA4B,CACvC,SACA,cACwB;AACxB,SAAO,QAAQ,IAAI,CAAC,UAAuC;AACzD,QAAI,OAAO,UAAU,UAAU;AAC7B,aAAO,MAAM,SAAS,KAAK;AAAA,IAC7B;AACA,WAAO;AAAA,EACT,CAAC;AACH;AAEO,IAAM,yBAAyB,CACpC,YAEA,OAAO;AAAA,EACL,OAAO,QAAQ,OAAO,EAAE,IAAI,CAAC,CAAC,IAAI,MAAM,MAAM;AAAA,IAC5C;AAAA,IACA,OAAO,IAAI,CAAC,UAAW,OAAO,UAAU,WAAW,MAAM,KAAK,KAAM;AAAA,EACtE,CAAC;AACH;","names":[]}
@@ -0,0 +1,12 @@
1
+ import { c as HeaderFilterObject, a as HeaderFilters } from '../TableDesktop-aJHXhRuv.cjs';
2
+ import 'react/jsx-runtime';
3
+ import 'react';
4
+ import '@mui/material';
5
+
6
+ type FlattenedFilterIds = {
7
+ [key: string]: (string | number)[];
8
+ };
9
+ declare const getFlattenedFiltersLabels: (filters: string[] | HeaderFilterObject[], fieldName: string) => (string | number)[];
10
+ declare const getFlattenedFiltersIds: (filters: HeaderFilters) => FlattenedFilterIds;
11
+
12
+ export { type FlattenedFilterIds, getFlattenedFiltersIds, getFlattenedFiltersLabels };
@@ -0,0 +1,12 @@
1
+ import { c as HeaderFilterObject, a as HeaderFilters } from '../TableDesktop-aJHXhRuv.js';
2
+ import 'react/jsx-runtime';
3
+ import 'react';
4
+ import '@mui/material';
5
+
6
+ type FlattenedFilterIds = {
7
+ [key: string]: (string | number)[];
8
+ };
9
+ declare const getFlattenedFiltersLabels: (filters: string[] | HeaderFilterObject[], fieldName: string) => (string | number)[];
10
+ declare const getFlattenedFiltersIds: (filters: HeaderFilters) => FlattenedFilterIds;
11
+
12
+ export { type FlattenedFilterIds, getFlattenedFiltersIds, getFlattenedFiltersLabels };
@@ -0,0 +1,10 @@
1
+ import {
2
+ getFlattenedFiltersIds,
3
+ getFlattenedFiltersLabels
4
+ } from "../chunk-N3IUZVB7.js";
5
+ import "../chunk-5WRI5ZAA.js";
6
+ export {
7
+ getFlattenedFiltersIds,
8
+ getFlattenedFiltersLabels
9
+ };
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@natoora-libs/core",
3
- "version": "0.2.0-vini-dev-1",
3
+ "version": "0.2.1-dev-doug-1",
4
4
  "private": false,
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -27,6 +27,11 @@
27
27
  "types": "./dist/hooks/index.d.ts",
28
28
  "import": "./dist/hooks/index.js",
29
29
  "require": "./dist/hooks/index.cjs"
30
+ },
31
+ "./utils": {
32
+ "types": "./dist/utils/index.d.ts",
33
+ "import": "./dist/utils/index.js",
34
+ "require": "./dist/utils/index.cjs"
30
35
  }
31
36
  },
32
37
  "engines": {
@@ -47,7 +52,6 @@
47
52
  "test:coverage": "jest --coverage"
48
53
  },
49
54
  "dependencies": {
50
- "@natoora-libs/core": "link:.yalc/@natoora-libs/core",
51
55
  "classnames": "^2.3.2",
52
56
  "mdi-material-ui": "^7.9.3",
53
57
  "moment": "^2.29.4",