@pega/lists-core 9.0.0-build.6.11 → 9.0.0-build.6.12
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/lib/src/core/features/uIFeatures/beforeRender/columnReOrder.d.ts.map +1 -1
- package/lib/src/core/features/uIFeatures/beforeRender/columnReOrder.js +2 -3
- package/lib/src/core/features/uIFeatures/beforeRender/columnReOrder.js.map +1 -1
- package/lib/src/core/features/uIFeatures/index.d.ts.map +1 -1
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"columnReOrder.d.ts","sourceRoot":"","sources":["../../../../../../src/core/features/uIFeatures/beforeRender/columnReOrder.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"columnReOrder.d.ts","sourceRoot":"","sources":["../../../../../../src/core/features/uIFeatures/beforeRender/columnReOrder.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AA8OrE;;;;;;GAMG;+BAIuB,cAAc,wBAAwB;AAHhE,wBAcE"}
|
|
@@ -83,9 +83,8 @@ const columnReOrder = ([{ getView, getState, dispatch }]) => {
|
|
|
83
83
|
document.body.appendChild(emptyImg);
|
|
84
84
|
if (e.dataTransfer) {
|
|
85
85
|
e.dataTransfer.setDragImage(emptyImg, 0, 0);
|
|
86
|
-
|
|
87
|
-
e.dataTransfer.
|
|
88
|
-
e.dataTransfer.dropEffect = 'none';
|
|
86
|
+
e.dataTransfer.effectAllowed = 'move';
|
|
87
|
+
e.dataTransfer.setData('text/plain', sourceElem?.dataset.colId || '');
|
|
89
88
|
}
|
|
90
89
|
document.addEventListener('dragover', documentDragOver);
|
|
91
90
|
fieldDragHelper.virtualizeOffsetLeft = virtualizeEle.getBoundingClientRect().left;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"columnReOrder.js","sourceRoot":"","sources":["../../../../../../src/core/features/uIFeatures/beforeRender/columnReOrder.ts"],"names":[],"mappings":"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","sourcesContent":["import { actionColumnDragDrop } from '../../../actions/actions';\nimport {\n rowActionColumnMeta,\n rowDragDropColumnMeta,\n rowSelectColumnMeta\n} from '../../../constants';\nimport type RsStore from '../../../RsStore';\nimport { withMemoization } from '../../../utils/util';\nimport type { BeforeRenderFeatureProps } from '../../featureFactory';\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport type { State } from '../../../../../types/State.types';\n\ntype FieldDragHelper = {\n mouseX: number;\n mouseY: number;\n dragLineNode: HTMLElement;\n dragProxyNode: HTMLElement;\n sourceElemIndex: number;\n dragProxyOffset: number;\n virtualizeOffsetLeft: number;\n dropTarget: string;\n};\n\nconst ColIdSelector = '[data-col-id]';\nconst SomeNegativeBigOffset = `${Number.MIN_SAFE_INTEGER}px`;\n\n// Todo: comeback and see if there is any other way to just have no drag image\nconst emptyImg = document.createElement('img');\nemptyImg.src = 'data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==';\n\nfunction createElement(type: string, className: string): HTMLElement {\n const domNode = document.createElement(type);\n domNode.classList.add(className);\n return domNode;\n}\n\nconst columnReOrder = ([{ getView, getState, dispatch }]: [\n featureProps: BeforeRenderFeatureProps\n]): RsStore['fieldReorderProps'] => {\n if (!getView().meta.reorderFields) {\n return null;\n }\n const { columnWidths, freezeColumns = [] } = getState();\n let fieldDragHelper: FieldDragHelper = {} as FieldDragHelper;\n const allPositions = (() => {\n const allWidths: {\n width: number;\n order: number;\n offset?: number;\n id: string;\n }[] = getView()\n .columns!.filter(column => !column.hidden) // Take all visible columns\n .map(column => ({\n width: (columnWidths?.[column.field.id] ?? column.field.width)!,\n order: column.style?.order,\n id: column.field.id\n }));\n // Bail out when AllWidths/Visible columns is empty\n if (allWidths.length === 0) {\n return {\n allWidths,\n freezeColumnsWidth: 0\n };\n }\n\n allWidths.sort((a, b) => a.order - b.order);\n\n let previousColOffset = 0;\n allWidths.forEach(column => {\n column.offset = previousColOffset;\n previousColOffset += column.width;\n });\n allWidths.push({\n width: 0,\n order: allWidths[allWidths.length - 1].order + 1,\n offset: allWidths[allWidths.length - 1].offset! + allWidths[allWidths.length - 1].width,\n id: 'last$'\n });\n const visibleFreezeColumns = getView().columns!.filter(col => col.frozen && !col.hidden);\n const freezeColumnsWidth = allWidths[visibleFreezeColumns.length]?.offset;\n return {\n allWidths,\n freezeColumnsWidth\n };\n })();\n\n const { allWidths, freezeColumnsWidth } = allPositions;\n\n // https://bugzilla.mozilla.org/show_bug.cgi?id=505521\n // This DragOver on document is the hack for the above bug as clientX is not proper in firefox\n const documentDragOver = (e: DragEvent) => {\n fieldDragHelper.mouseX = e.clientX;\n fieldDragHelper.mouseY = e.clientY;\n };\n\n const onDragStart = (e: DragEvent) => {\n fieldDragHelper = {} as FieldDragHelper;\n const domContainer = getView().getDomContainer();\n const scrollNode = getView().getScrollNode();\n const virtualizeEle = getView()\n .getVirtualizeElement('rootVirtualiser')\n ?.getParentContainer?.()!;\n fieldDragHelper.dragLineNode = createElement('div', 'table-drag-line');\n fieldDragHelper.dragProxyNode = createElement('div', 'table-drag-proxy');\n const container = domContainer?.getElementsByClassName('container')[0]!;\n const Header = domContainer?.getElementsByClassName('sticky-header')[0]!;\n container.appendChild(fieldDragHelper.dragProxyNode);\n virtualizeEle.appendChild(fieldDragHelper.dragLineNode);\n fieldDragHelper.dragLineNode.style.height = `${\n // eslint-disable-next-line no-unsafe-optional-chaining\n scrollNode?.clientHeight! + Header.clientHeight\n }px`;\n\n const sourceElem = (e.target as HTMLElement).closest(ColIdSelector) as HTMLElement;\n fieldDragHelper.sourceElemIndex = allWidths.findIndex(xCol => {\n return `${xCol.id}` === sourceElem.dataset.colId;\n });\n\n if (!sourceElem) return;\n\n document.body.appendChild(emptyImg);\n if (e.dataTransfer) {\n e.dataTransfer.setDragImage(emptyImg, 0, 0);\n // e.dataTransfer.setDragImage(new Image(0, 0), 0, 0);\n e.dataTransfer.effectAllowed = 'none';\n e.dataTransfer.dropEffect = 'none';\n }\n document.addEventListener('dragover', documentDragOver);\n\n fieldDragHelper.virtualizeOffsetLeft = virtualizeEle.getBoundingClientRect().left;\n fieldDragHelper.dragProxyOffset =\n sourceElem.offsetLeft -\n (virtualizeEle.scrollLeft + fieldDragHelper.mouseX - fieldDragHelper.virtualizeOffsetLeft);\n fieldDragHelper.dragProxyNode.style.width = sourceElem.style.width;\n fieldDragHelper.dragProxyNode.style.marginLeft = `${fieldDragHelper.dragProxyOffset}px`;\n fieldDragHelper.dragProxyNode.style.left = SomeNegativeBigOffset;\n fieldDragHelper.dragLineNode.style.left = SomeNegativeBigOffset;\n fieldDragHelper.dragProxyNode.style.display = 'block';\n fieldDragHelper.dragLineNode.style.display = 'block';\n\n return false; // required for browser allowing image drag out of container\n };\n\n const onDrag = (e: DragEvent) => {\n e.preventDefault();\n const virtualizeEle = getView()\n .getVirtualizeElement('rootVirtualiser')\n ?.getParentContainer?.()!;\n const distanceFromFreezeB =\n fieldDragHelper.mouseX - fieldDragHelper.virtualizeOffsetLeft - freezeColumnsWidth!;\n // is our cursor pointer near to freeze columBoundary?\n if (\n freezeColumnsWidth !== 0 &&\n distanceFromFreezeB < 100 &&\n distanceFromFreezeB > 0 &&\n virtualizeEle.scrollLeft > 0\n ) {\n // is something there to scroll?\n if (distanceFromFreezeB > 50) {\n virtualizeEle.scrollLeft -= 1;\n } else {\n virtualizeEle.scrollLeft -= 3;\n }\n fieldDragHelper.dragProxyNode.style.left = `${\n fieldDragHelper.mouseX - fieldDragHelper.virtualizeOffsetLeft\n }px`;\n fieldDragHelper.dropTarget = allWidths[freezeColumns.length].id;\n fieldDragHelper.dragLineNode.style.left = SomeNegativeBigOffset;\n return false;\n }\n\n fieldDragHelper.dragProxyNode.style.left = `${\n fieldDragHelper.mouseX - fieldDragHelper.virtualizeOffsetLeft\n }px`;\n let currentDragLeftOffset = parseInt(\n // @ts-expect-error parseInt expects string.\n virtualizeEle.scrollLeft + fieldDragHelper.mouseX - fieldDragHelper.virtualizeOffsetLeft,\n 10\n );\n\n if (distanceFromFreezeB < 0) {\n // if we are in freezeZone do not consider scrollLeft for targetColLine calc\n currentDragLeftOffset -= virtualizeEle.scrollLeft;\n }\n\n let xColIndex = allWidths.findIndex(xCol => {\n return currentDragLeftOffset < xCol.offset! + xCol.width / 2;\n });\n\n if (xColIndex === -1) {\n xColIndex = allWidths.length - 1;\n }\n fieldDragHelper.dragLineNode.style.left = `${allWidths[xColIndex].offset}px`;\n\n if (distanceFromFreezeB < 0) {\n // if we are in freezeZone consider scrollLeft for dragLine calculation\n fieldDragHelper.dragLineNode.style.left = `${\n allWidths[xColIndex].offset! + virtualizeEle.scrollLeft\n }px`;\n }\n\n if (xColIndex <= fieldDragHelper.sourceElemIndex) {\n fieldDragHelper.dropTarget = allWidths[xColIndex].id;\n } else {\n fieldDragHelper.dropTarget = allWidths[xColIndex - 1].id;\n }\n\n // Edge Case to not show dragLine when the col is under frozen area\n if (\n distanceFromFreezeB > 0 &&\n allWidths[xColIndex].offset! < virtualizeEle.scrollLeft + freezeColumnsWidth!\n ) {\n fieldDragHelper.dragLineNode.style.left = SomeNegativeBigOffset;\n }\n\n return false;\n };\n\n const onDragEnd = (e: DragEvent) => {\n e.preventDefault();\n fieldDragHelper.dragProxyNode.style.display = 'none';\n fieldDragHelper.dragLineNode.style.display = 'none';\n const sourceElem: HTMLElement | null = (e.target as HTMLElement).closest(ColIdSelector);\n if (\n rowSelectColumnMeta.field.id !== fieldDragHelper.dropTarget &&\n rowDragDropColumnMeta.field.id !== fieldDragHelper.dropTarget &&\n rowActionColumnMeta.field.id !== fieldDragHelper.dropTarget &&\n sourceElem &&\n `${sourceElem.dataset.colId}` !== `${fieldDragHelper.dropTarget}`\n ) {\n dispatch(actionColumnDragDrop(sourceElem.dataset.colId!, fieldDragHelper.dropTarget));\n }\n document.body.removeChild(emptyImg);\n fieldDragHelper.dragLineNode.remove();\n fieldDragHelper.dragProxyNode.remove();\n document.removeEventListener('dragover', documentDragOver);\n fieldDragHelper = {} as FieldDragHelper;\n return false;\n };\n\n return {\n onDragStart,\n onDrag,\n onDragEnd\n };\n};\n\n/**\n * Sets the column {@link RsStore. getFieldReorderProps reorder} props (onDragStart, onDrag, onDragEnd). This feature is executed when any of the following state slices are changed:\n * - {@link State.columnWidths}\n * - {@link State.freezeColumns}\n * - {@link State.colOrder}\n * - {@link State.hiddenColumns}\n */\nexport default () => {\n const memoizedColReOrder = withMemoization(columnReOrder);\n\n return function execute(featureProps: BeforeRenderFeatureProps) {\n const state = featureProps.getState();\n featureProps\n .getRsStore()\n .setFieldReorderProps(\n memoizedColReOrder(\n [featureProps],\n [state.columnWidths, state.freezeColumns, state.colOrder, state.hiddenColumns]\n )\n );\n };\n};\n"]}
|
|
1
|
+
{"version":3,"file":"columnReOrder.js","sourceRoot":"","sources":["../../../../../../src/core/features/uIFeatures/beforeRender/columnReOrder.ts"],"names":[],"mappings":"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","sourcesContent":["import { actionColumnDragDrop } from '../../../actions/actions';\nimport {\n rowActionColumnMeta,\n rowDragDropColumnMeta,\n rowSelectColumnMeta\n} from '../../../constants';\nimport type RsStore from '../../../RsStore';\nimport { withMemoization } from '../../../utils/util';\nimport type { BeforeRenderFeatureProps } from '../../featureFactory';\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nimport type { State } from '../../../../../types/State.types';\n\ntype FieldDragHelper = {\n mouseX: number;\n mouseY: number;\n dragLineNode: HTMLElement;\n dragProxyNode: HTMLElement;\n sourceElemIndex: number;\n dragProxyOffset: number;\n virtualizeOffsetLeft: number;\n dropTarget: string;\n};\n\nconst ColIdSelector = '[data-col-id]';\nconst SomeNegativeBigOffset = `${Number.MIN_SAFE_INTEGER}px`;\n\n// Todo: comeback and see if there is any other way to just have no drag image\nconst emptyImg = document.createElement('img');\nemptyImg.src = 'data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==';\n\nfunction createElement(type: string, className: string): HTMLElement {\n const domNode = document.createElement(type);\n domNode.classList.add(className);\n return domNode;\n}\n\nconst columnReOrder = ([{ getView, getState, dispatch }]: [\n featureProps: BeforeRenderFeatureProps\n]): RsStore['fieldReorderProps'] => {\n if (!getView().meta.reorderFields) {\n return null;\n }\n const { columnWidths, freezeColumns = [] } = getState();\n let fieldDragHelper: FieldDragHelper = {} as FieldDragHelper;\n const allPositions = (() => {\n const allWidths: {\n width: number;\n order: number;\n offset?: number;\n id: string;\n }[] = getView()\n .columns!.filter(column => !column.hidden) // Take all visible columns\n .map(column => ({\n width: (columnWidths?.[column.field.id] ?? column.field.width)!,\n order: column.style?.order,\n id: column.field.id\n }));\n // Bail out when AllWidths/Visible columns is empty\n if (allWidths.length === 0) {\n return {\n allWidths,\n freezeColumnsWidth: 0\n };\n }\n\n allWidths.sort((a, b) => a.order - b.order);\n\n let previousColOffset = 0;\n allWidths.forEach(column => {\n column.offset = previousColOffset;\n previousColOffset += column.width;\n });\n allWidths.push({\n width: 0,\n order: allWidths[allWidths.length - 1].order + 1,\n offset: allWidths[allWidths.length - 1].offset! + allWidths[allWidths.length - 1].width,\n id: 'last$'\n });\n const visibleFreezeColumns = getView().columns!.filter(col => col.frozen && !col.hidden);\n const freezeColumnsWidth = allWidths[visibleFreezeColumns.length]?.offset;\n return {\n allWidths,\n freezeColumnsWidth\n };\n })();\n\n const { allWidths, freezeColumnsWidth } = allPositions;\n\n // https://bugzilla.mozilla.org/show_bug.cgi?id=505521\n // This DragOver on document is the hack for the above bug as clientX is not proper in firefox\n const documentDragOver = (e: DragEvent) => {\n fieldDragHelper.mouseX = e.clientX;\n fieldDragHelper.mouseY = e.clientY;\n };\n\n const onDragStart = (e: DragEvent) => {\n fieldDragHelper = {} as FieldDragHelper;\n const domContainer = getView().getDomContainer();\n const scrollNode = getView().getScrollNode();\n const virtualizeEle = getView()\n .getVirtualizeElement('rootVirtualiser')\n ?.getParentContainer?.()!;\n fieldDragHelper.dragLineNode = createElement('div', 'table-drag-line');\n fieldDragHelper.dragProxyNode = createElement('div', 'table-drag-proxy');\n const container = domContainer?.getElementsByClassName('container')[0]!;\n const Header = domContainer?.getElementsByClassName('sticky-header')[0]!;\n container.appendChild(fieldDragHelper.dragProxyNode);\n virtualizeEle.appendChild(fieldDragHelper.dragLineNode);\n fieldDragHelper.dragLineNode.style.height = `${\n // eslint-disable-next-line no-unsafe-optional-chaining\n scrollNode?.clientHeight! + Header.clientHeight\n }px`;\n\n const sourceElem = (e.target as HTMLElement).closest(ColIdSelector) as HTMLElement;\n fieldDragHelper.sourceElemIndex = allWidths.findIndex(xCol => {\n return `${xCol.id}` === sourceElem.dataset.colId;\n });\n\n if (!sourceElem) return;\n\n document.body.appendChild(emptyImg);\n if (e.dataTransfer) {\n e.dataTransfer.setDragImage(emptyImg, 0, 0);\n e.dataTransfer.effectAllowed = 'move';\n e.dataTransfer.setData('text/plain', sourceElem?.dataset.colId || '');\n }\n document.addEventListener('dragover', documentDragOver);\n\n fieldDragHelper.virtualizeOffsetLeft = virtualizeEle.getBoundingClientRect().left;\n fieldDragHelper.dragProxyOffset =\n sourceElem.offsetLeft -\n (virtualizeEle.scrollLeft + fieldDragHelper.mouseX - fieldDragHelper.virtualizeOffsetLeft);\n fieldDragHelper.dragProxyNode.style.width = sourceElem.style.width;\n fieldDragHelper.dragProxyNode.style.marginLeft = `${fieldDragHelper.dragProxyOffset}px`;\n fieldDragHelper.dragProxyNode.style.left = SomeNegativeBigOffset;\n fieldDragHelper.dragLineNode.style.left = SomeNegativeBigOffset;\n fieldDragHelper.dragProxyNode.style.display = 'block';\n fieldDragHelper.dragLineNode.style.display = 'block';\n\n return false; // required for browser allowing image drag out of container\n };\n\n const onDrag = (e: DragEvent) => {\n e.preventDefault();\n const virtualizeEle = getView()\n .getVirtualizeElement('rootVirtualiser')\n ?.getParentContainer?.()!;\n const distanceFromFreezeB =\n fieldDragHelper.mouseX - fieldDragHelper.virtualizeOffsetLeft - freezeColumnsWidth!;\n // is our cursor pointer near to freeze columBoundary?\n if (\n freezeColumnsWidth !== 0 &&\n distanceFromFreezeB < 100 &&\n distanceFromFreezeB > 0 &&\n virtualizeEle.scrollLeft > 0\n ) {\n // is something there to scroll?\n if (distanceFromFreezeB > 50) {\n virtualizeEle.scrollLeft -= 1;\n } else {\n virtualizeEle.scrollLeft -= 3;\n }\n fieldDragHelper.dragProxyNode.style.left = `${\n fieldDragHelper.mouseX - fieldDragHelper.virtualizeOffsetLeft\n }px`;\n fieldDragHelper.dropTarget = allWidths[freezeColumns.length].id;\n fieldDragHelper.dragLineNode.style.left = SomeNegativeBigOffset;\n return false;\n }\n\n fieldDragHelper.dragProxyNode.style.left = `${\n fieldDragHelper.mouseX - fieldDragHelper.virtualizeOffsetLeft\n }px`;\n let currentDragLeftOffset = parseInt(\n // @ts-expect-error parseInt expects string.\n virtualizeEle.scrollLeft + fieldDragHelper.mouseX - fieldDragHelper.virtualizeOffsetLeft,\n 10\n );\n\n if (distanceFromFreezeB < 0) {\n // if we are in freezeZone do not consider scrollLeft for targetColLine calc\n currentDragLeftOffset -= virtualizeEle.scrollLeft;\n }\n\n let xColIndex = allWidths.findIndex(xCol => {\n return currentDragLeftOffset < xCol.offset! + xCol.width / 2;\n });\n\n if (xColIndex === -1) {\n xColIndex = allWidths.length - 1;\n }\n fieldDragHelper.dragLineNode.style.left = `${allWidths[xColIndex].offset}px`;\n\n if (distanceFromFreezeB < 0) {\n // if we are in freezeZone consider scrollLeft for dragLine calculation\n fieldDragHelper.dragLineNode.style.left = `${\n allWidths[xColIndex].offset! + virtualizeEle.scrollLeft\n }px`;\n }\n\n if (xColIndex <= fieldDragHelper.sourceElemIndex) {\n fieldDragHelper.dropTarget = allWidths[xColIndex].id;\n } else {\n fieldDragHelper.dropTarget = allWidths[xColIndex - 1].id;\n }\n\n // Edge Case to not show dragLine when the col is under frozen area\n if (\n distanceFromFreezeB > 0 &&\n allWidths[xColIndex].offset! < virtualizeEle.scrollLeft + freezeColumnsWidth!\n ) {\n fieldDragHelper.dragLineNode.style.left = SomeNegativeBigOffset;\n }\n\n return false;\n };\n\n const onDragEnd = (e: DragEvent) => {\n e.preventDefault();\n fieldDragHelper.dragProxyNode.style.display = 'none';\n fieldDragHelper.dragLineNode.style.display = 'none';\n const sourceElem: HTMLElement | null = (e.target as HTMLElement).closest(ColIdSelector);\n if (\n rowSelectColumnMeta.field.id !== fieldDragHelper.dropTarget &&\n rowDragDropColumnMeta.field.id !== fieldDragHelper.dropTarget &&\n rowActionColumnMeta.field.id !== fieldDragHelper.dropTarget &&\n sourceElem &&\n `${sourceElem.dataset.colId}` !== `${fieldDragHelper.dropTarget}`\n ) {\n dispatch(actionColumnDragDrop(sourceElem.dataset.colId!, fieldDragHelper.dropTarget));\n }\n document.body.removeChild(emptyImg);\n fieldDragHelper.dragLineNode.remove();\n fieldDragHelper.dragProxyNode.remove();\n document.removeEventListener('dragover', documentDragOver);\n fieldDragHelper = {} as FieldDragHelper;\n return false;\n };\n\n return {\n onDragStart,\n onDrag,\n onDragEnd\n };\n};\n\n/**\n * Sets the column {@link RsStore. getFieldReorderProps reorder} props (onDragStart, onDrag, onDragEnd). This feature is executed when any of the following state slices are changed:\n * - {@link State.columnWidths}\n * - {@link State.freezeColumns}\n * - {@link State.colOrder}\n * - {@link State.hiddenColumns}\n */\nexport default () => {\n const memoizedColReOrder = withMemoization(columnReOrder);\n\n return function execute(featureProps: BeforeRenderFeatureProps) {\n const state = featureProps.getState();\n featureProps\n .getRsStore()\n .setFieldReorderProps(\n memoizedColReOrder(\n [featureProps],\n [state.columnWidths, state.freezeColumns, state.colOrder, state.hiddenColumns]\n )\n );\n };\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/core/features/uIFeatures/index.ts"],"names":[],"mappings":"AAuCA,OAAO,WAAW,MAAM,4BAA4B,CAAC;;;4EALb,kEACpB;6BAnBf,kEAAsC;6BAyE4+D,kEAAsC;uBAbzjE,kEAEK;;0BAxD2C,kEAChB;;uBAQoB,kEACpC;6BAyDgV,kEAAsC;;4BA/DhY,kEACF;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/core/features/uIFeatures/index.ts"],"names":[],"mappings":"AAuCA,OAAO,WAAW,MAAM,4BAA4B,CAAC;;;4EALb,kEACpB;6BAnBf,kEAAsC;6BAyE4+D,kEAAsC;uBAbzjE,kEAEK;;0BAxD2C,kEAChB;;uBAQoB,kEACpC;6BAyDgV,kEAAsC;;4BA/DhY,kEACF;8BA8D67L,kEAAsC;kCA7Bj+L,kEACQ;6BA1C8B,kEAC1C;2BASyC,kEAChB;2EA2D28C,kEAAsC;yCAzDvgD,kEAAsC;+BAyD+8G,kEAAsC;4BArD/gH,kEACR;kCAoD00L,kEAAsC;;;gCAlEv2L,kEAChB;kCALmD,kEAC1C;4BAoDT,kEAEM;qBAe8zC,kEAAsC;kCApEz1C,kEAAsC;sCAQpB,kEAChB;0EA2D0oO,kEAAsC;wEAAh1H,kEAAsC;wCA3C15G,kEAEQ;4BA+BJ,kEAEI;6BAtEiD,kEAC5B;sEAwBF,kEACR;2BAoDe,kEAAsC;4BAjE/B,kEACtB;;uCAgEo0B,kEAAsC;;;0BAA6qC,sDAA0B;iCAAywD,sDAA0B;yCA5D52H,sDAA0B;;;AAa1B,wBA8CE"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pega/lists-core",
|
|
3
|
-
"version": "9.0.0-build.6.
|
|
3
|
+
"version": "9.0.0-build.6.12",
|
|
4
4
|
"description": "Core headless UI library that the users can use to write their own UI and create repeating structures like table, gallery, timeline etc.",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE",
|
|
6
6
|
"author": "Pegasystems",
|
|
@@ -14,9 +14,9 @@
|
|
|
14
14
|
"build": "tsc -b tsconfig.build.json"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@pega/cosmos-react-condition-builder": "9.0.0-build.6.
|
|
18
|
-
"@pega/cosmos-react-core": "9.0.0-build.6.
|
|
19
|
-
"@pega/cosmos-react-work": "9.0.0-build.6.
|
|
17
|
+
"@pega/cosmos-react-condition-builder": "9.0.0-build.6.12",
|
|
18
|
+
"@pega/cosmos-react-core": "9.0.0-build.6.12",
|
|
19
|
+
"@pega/cosmos-react-work": "9.0.0-build.6.12",
|
|
20
20
|
"@types/lodash.get": "^4.4.9",
|
|
21
21
|
"@types/uuid": "^9.0.0",
|
|
22
22
|
"dayjs": "^1.11.13",
|