@sme.up/ketchup 11.0.0-SNAPSHOT-20241021083542 → 11.0.0-SNAPSHOT-20241021084132

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.
@@ -0,0 +1 @@
1
+ {"version":3,"names":["KupCellProps","KupCellSubmitButtonPosition","dom","document","documentElement","treeOptionsNodeAdapter","options","currentValue","children","map","child","id","content","codice","value","testo","selected","_a","length","dataTreeOptionsChildrenAdapter","obj","k","tableOptionsAdapter","rows","row","cells","fields","Object","keys","optionsTreeComboAdapter","adapter","optionsAdapterMap","get","type","option","label","Map","bind","this","FCellOptions","props","mappedCell","cell","data","setProps","column","slotData","isEditable","mappedProps","assign","editable","generateColumn","generateRow","shape","FCellShapes","TEXT_FIELD","getLabelComponent","title","h","class","FCell","cellType","ketchup","getType","FCellTypes","RADIO","colname","t","p","coltitle","name","col","MULTI_AUTOCOMPLETE","MULTI_COMBOBOX","CMBandACPAdapter","showDropDownIcon","style","width","disabled","defaultProps","mapData","noDataProps","__rest","deepObjectsMerge","target","source","key","Array","isArray","fieldLabel","dataAdapterMap","BUTTON_LIST","MainBTNAdapter","STRING","MainITXAdapter","MainRADAdapter","AUTOCOMPLETE","MainCMBandACPAdapter","COMBOBOX","_fieldLabel","RADAdapter","_currentValue","_cell","_options","_b","icon","rawOptions","configCMandACP","kupCellCss","KupCellStyle0","KupCell","_KupCell_kupManager","set","kupManagerInstance","FCellPadding","NONE","right","addCssClasses","classes","cssClass","index","indexOf","refresh","getProps","descriptions","forceUpdate","removeCssClasses","replace","RegExp","didRenderInteractables","dragEnabled","dataCb","rootElement","multiple","__classPrivateFieldGet","interact","draggable","shadowRoot","querySelector","componentWrapperId","cursorChecker","callback","KupDragEffect","BADGE","language","translate","KupLanguageGeneric","EMPTY_OBJECT","submitClick","e","stopPropagation","kupCellSubmitClick","emit","comp","componentWillLoad","dates","register","debug","logLoad","theme","componentDidLoad","componentWillRender","logRender","componentDidRender","render","component","density","renderKup","sectionStyle","display","showSubmit","submitPosition","Host","setKupStyle","FButton","buttonType","CONFIRM","wrapperClass","onClick","disconnectedCallback","unregister"],"sources":["src/components/kup-cell/kup-cell-declarations.ts","src/f-components/f-cell-options.tsx/f-cell-options.tsx","src/components/kup-cell/kup-cell.scss?tag=kup-cell&encapsulation=shadow","src/components/kup-cell/kup-cell.tsx"],"sourcesContent":["import { KupDataCell, KupEventPayload } from '../../components';\nimport { KupDataCellOptions } from '../../managers/kup-data/kup-data-declarations';\n\n/**\n * Props of the kup-cell component.\n * Used to export every prop in an object.\n */\nexport enum KupCellProps {\n customStyle = 'Custom style of the component.',\n data = 'The data of the cell.',\n density = \"The density of the cell, defaults at 'dense' and can be also set to 'wide' or 'medium'.\",\n dragEnabled = 'When set to true, the component is draggable.',\n}\n\nexport enum KupCellSubmitButtonPosition {\n top = 'column-reverse',\n bottom = 'column',\n left = 'row-reverse',\n right = 'row',\n}\n\nexport interface KupCellSubmitClickEventPayload extends KupEventPayload {\n cell: KupDataCellOptions;\n}\n","import { FunctionalComponent, h, VNode } from '@stencil/core';\nimport { KupDom } from '../../managers/kup-manager/kup-manager-declarations';\nimport { GenericObject, KupDataColumn } from '../../components';\nimport { CMBandACPAdapter, RADAdapter } from '../../utils/cell-utils';\nimport {\n FCellOptionsProps,\n FCellProps,\n FCellShapes,\n FCellTypes,\n} from '../f-cell/f-cell-declarations';\nimport {\n DataAdapterFn,\n KupInputPanelCell,\n} from '../../components/kup-input-panel/kup-input-panel-declarations';\nimport {\n KupDataCell,\n KupDataCellOptions,\n KupDataRow,\n} from '../../managers/kup-data/kup-data-declarations';\nimport { FCell } from '../f-cell/f-cell';\n\nconst dom: KupDom = document.documentElement as KupDom;\n\nconst treeOptionsNodeAdapter = (\n options: any,\n currentValue: string\n): GenericObject[] => {\n return options.children.map((child) => ({\n id: child.content.codice,\n value: child.content.testo,\n selected: currentValue === child.content.codice,\n children: child.children?.length\n ? treeOptionsNodeAdapter(child, currentValue)\n : [],\n }));\n};\n\nconst dataTreeOptionsChildrenAdapter = (\n options: any,\n currentValue: string\n): GenericObject[] => {\n return options.children.map((child) => ({\n id: child.obj.k,\n value: child.value,\n selected: currentValue === child.obj.k,\n children: child.children?.length\n ? dataTreeOptionsChildrenAdapter(child, currentValue)\n : [],\n }));\n};\n\nconst tableOptionsAdapter = (\n options: any,\n currentValue: string\n): GenericObject[] => {\n return options.rows.map((row) => {\n const cells = row.fields || row.cells;\n const [id, value] = Object.keys(cells);\n\n return {\n id: cells[id].value,\n value: cells[value]?.value || cells[id].value,\n selected: currentValue === cells[id].value,\n };\n });\n};\n\nconst optionsTreeComboAdapter = (options: any, currentValue: string) => {\n const adapter = optionsAdapterMap.get(options.type);\n\n if (adapter) {\n return adapter(options, currentValue);\n } else {\n return options.map((option) => ({\n value: option.label,\n id: option.id,\n selected: currentValue === option.id,\n }));\n }\n};\n\nconst optionsAdapterMap = new Map<\n string,\n (options: any, currentValue: string) => GenericObject[]\n>([\n ['SmeupTreeNode', treeOptionsNodeAdapter.bind(this)],\n ['SmeupDataTree', dataTreeOptionsChildrenAdapter.bind(this)],\n ['SmeupTable', tableOptionsAdapter.bind(this)],\n ['SmeupDataTable', tableOptionsAdapter.bind(this)],\n]);\n\nexport const FCellOptions: FunctionalComponent<FCellOptionsProps> = (\n props: FCellOptionsProps\n) => {\n const mappedCell = props.cell\n ? {\n ...props.cell,\n data: setProps(props.cell, props.column),\n slotData: slotData(props.cell, props.column),\n isEditable: true,\n }\n : null;\n\n const mappedProps: FCellProps = {\n ...props,\n editable: true,\n cell: mappedCell as KupDataCell,\n column: generateColumn(mappedCell.data),\n row: generateRow(mappedCell.data),\n };\n\n if (props.cell.shape === FCellShapes.TEXT_FIELD) {\n mappedProps.cell.value = mappedProps.cell.data.value;\n }\n\n const label = getLabelComponent(mappedProps.cell, mappedProps.column.title);\n\n if (label) {\n return (\n <div class={{ 'input-panel__label_container': true }}>\n {label}\n <FCell {...mappedProps} />\n </div>\n );\n }\n return <FCell {...mappedProps}></FCell>;\n};\n\nconst getLabelComponent = (cell: KupDataCell, label: string) => {\n if (!label) {\n return null;\n }\n\n const cellType = dom.ketchup.data.cell.getType(cell, cell.shape);\n\n if (cellType === FCellTypes.RADIO) {\n return <span>{label}</span>;\n }\n\n return null;\n};\n\nconst generateColumn = (data: GenericObject): KupDataColumn => {\n const colname: string =\n data && data.obj && data.obj.t\n ? data.obj.t + ';' + data.obj.p\n : 'KUPCELL';\n const coltitle: string =\n data && data.obj && data.obj.t\n ? data.obj.t + ';' + data.obj.p\n : 'genericEmptyObject';\n return {\n name: colname,\n title: coltitle,\n };\n};\n\nconst generateRow = (data: GenericObject): KupDataRow => {\n const col: KupDataColumn = generateColumn(data);\n const row: KupDataRow = { cells: {} };\n row.cells[col.name] = data.cell;\n return row;\n};\n\nconst slotData = (cell: KupDataCellOptions, col: KupDataColumn) => {\n const cellType = dom.ketchup.data.cell.getType(cell, cell.shape);\n\n if (!cell.isEditable) {\n return null;\n }\n\n if (\n cellType === FCellTypes.MULTI_AUTOCOMPLETE ||\n cellType === FCellTypes.MULTI_COMBOBOX\n ) {\n return {\n ...CMBandACPAdapter(\n null,\n col.title,\n cell.options\n // cell,\n // col.name\n ),\n showDropDownIcon: true,\n class: '',\n style: { width: '100%' },\n disabled: !cell.isEditable,\n id: col.name,\n };\n }\n\n return null;\n};\n\nconst setProps = (cell: KupDataCellOptions, column: KupDataColumn) => {\n const defaultProps = {\n ...mapData(cell, column),\n disabled: !cell.isEditable,\n id: column.name,\n };\n\n const cellType = dom.ketchup.data.cell.getType(cell, cell.shape);\n const { data, ...noDataProps } = cell.data || {};\n return cellType !== FCellTypes.MULTI_AUTOCOMPLETE &&\n cellType !== FCellTypes.MULTI_COMBOBOX\n ? deepObjectsMerge(defaultProps, {\n ...cell.data,\n })\n : // Add and ovverride defaultProps of Chip host component except data\n {\n ...defaultProps,\n ...noDataProps,\n };\n};\n\nconst deepObjectsMerge = (target: GenericObject, source: GenericObject) => {\n for (const key in source) {\n if (\n source[key] instanceof Object &&\n !Array.isArray(source[key]) &&\n key in target\n ) {\n target[key] = deepObjectsMerge(target[key], source[key]);\n } else {\n target[key] = source[key];\n }\n }\n return target;\n};\n\nconst mapData = (cell: KupDataCellOptions, col: KupDataColumn) => {\n if (!cell) {\n return null;\n }\n\n const options = cell.options;\n const fieldLabel = col.title;\n const currentValue = cell.value;\n const cellType = dom.ketchup.data.cell.getType(cell, cell.shape);\n const dataAdapterMap = new Map<FCellTypes, DataAdapterFn>([\n [FCellTypes.BUTTON_LIST, MainBTNAdapter.bind(this)],\n [FCellTypes.STRING, MainITXAdapter.bind(this)],\n [FCellTypes.RADIO, MainRADAdapter.bind(this)],\n [FCellTypes.AUTOCOMPLETE, MainCMBandACPAdapter.bind(this)],\n [FCellTypes.COMBOBOX, MainCMBandACPAdapter.bind(this)],\n ]);\n\n const adapter = dataAdapterMap.get(cellType);\n\n return adapter\n ? adapter(options, fieldLabel, currentValue, cell, col.name)\n : null;\n};\n\nconst MainRADAdapter = (\n options: GenericObject,\n _fieldLabel: string,\n currentValue: string\n) => {\n return RADAdapter(currentValue, options);\n};\n\nconst MainITXAdapter = (\n options: GenericObject,\n _fieldLabel: string,\n _currentValue: string,\n _cell: KupDataCellOptions\n) => {\n if (options?.[0]) {\n return {\n value: options[0].label,\n };\n }\n};\n\nconst MainBTNAdapter = (\n _options: GenericObject,\n _fieldLabel: string,\n _currentValue: string,\n cell: KupDataCellOptions\n) => {\n return {\n data: cell.options?.length\n ? cell.options?.map((option) => ({\n icon: option.icon,\n value: option.value,\n }))\n : [],\n };\n};\n\nconst MainCMBandACPAdapter = (\n rawOptions: GenericObject,\n fieldLabel: string,\n currentValue: string\n) => {\n const configCMandACP = CMBandACPAdapter(currentValue, fieldLabel, []);\n\n configCMandACP.data['kup-list'].data = optionsTreeComboAdapter(\n rawOptions,\n currentValue\n );\n return configCMandACP;\n};\n","/**\n* @prop --kup-cell-background: Sets the background of the cell.\n* @prop --kup-cell-font-family: Sets the font family of the cell.\n* @prop --kup-cell-font-family-monospace: Sets the monospace font family of the cell (for numbers).\n* @prop --kup-cell-font-size: Sets the font size of the cell.\n* @prop --kup-cell-text-color: Sets the text color of the cell.\n*\n* NOTE: These variables are defined in the \"kup-theme.css\" file, because they must work even without the kup component (it's a functional component)\n*\n*/\n\n:host {\n display: block;\n height: 100%;\n width: 100%;\n}\n\n#kup-component {\n height: 100%;\n width: 100%;\n}\n","import {\n Component,\n Element,\n forceUpdate,\n h,\n Host,\n Event,\n EventEmitter,\n Method,\n Prop,\n} from '@stencil/core';\nimport {\n KupManager,\n kupManagerInstance,\n} from '../../managers/kup-manager/kup-manager';\nimport { GenericObject, KupComponent } from '../../types/GenericTypes';\nimport { getProps, setProps } from '../../utils/utils';\nimport { componentWrapperId } from '../../variables/GenericVariables';\nimport {\n KupCellProps,\n KupCellSubmitButtonPosition,\n KupCellSubmitClickEventPayload,\n} from './kup-cell-declarations';\nimport { FCell } from '../../f-components/f-cell/f-cell';\nimport {\n FCellOptionsProps,\n FCellPadding,\n FCellProps,\n} from '../../f-components/f-cell/f-cell-declarations';\nimport {\n KupDragDataTransferCallback,\n KupDragEffect,\n} from '../../managers/kup-interact/kup-interact-declarations';\nimport { KupLanguageGeneric } from '../../managers/kup-language/kup-language-declarations';\nimport {\n KupDataCell,\n KupDataCellOptions,\n KupDataColumn,\n KupDataRow,\n} from '../../managers/kup-data/kup-data-declarations';\nimport { FCellOptions } from '../../f-components/f-cell-options.tsx/f-cell-options';\nimport { FButton } from '../../f-components/f-button/f-button';\n\n@Component({\n tag: 'kup-cell',\n styleUrl: 'kup-cell.scss',\n shadow: true,\n})\nexport class KupCell {\n /**\n * References the root HTML element of the component (<kup-text-field>).\n */\n @Element() rootElement: HTMLElement;\n\n /*-------------------------------------------------*/\n /* P r o p s */\n /*-------------------------------------------------*/\n\n /**\n * Custom style of the component.\n * @default \"\"\n * @see https://smeup.github.io/ketchup/#/customization\n */\n @Prop() customStyle: string = '';\n /**\n * The data of the cell.\n * @default false\n */\n @Prop() data: KupDataCell = null;\n /**\n * The density of the cell, defaults at 'dense' and can be also set to 'wide' or 'medium'.\n */\n @Prop() density: FCellPadding = FCellPadding.NONE;\n /**\n * When set to true, the component is draggable.\n * @default false\n */\n @Prop() dragEnabled: boolean = false;\n\n /**\n * Show submit button\n */\n @Prop() showSubmit: boolean = false;\n\n /**\n * Submit button position, default is right\n */\n @Prop() submitPosition: KupCellSubmitButtonPosition =\n KupCellSubmitButtonPosition.right;\n\n /*-------------------------------------------------*/\n /* I n t e r n a l V a r i a b l e s */\n /*-------------------------------------------------*/\n\n /**\n * Instance of the KupManager class.\n */\n #kupManager: KupManager = kupManagerInstance();\n\n /*-------------------------------------------------*/\n /* P u b l i c M e t h o d s */\n /*-------------------------------------------------*/\n\n @Event({\n eventName: 'kup-cell-submit-click',\n composed: true,\n cancelable: false,\n bubbles: true,\n })\n kupCellSubmitClick: EventEmitter<KupCellSubmitClickEventPayload>;\n\n /**\n * Adds the given CSS classes to the cell's data.\n * @param {string[]} classes - Array of CSS classes.\n */\n @Method()\n async addCssClasses(classes?: string[]): Promise<void> {\n if (!this.data.cssClass) {\n this.data.cssClass = '';\n }\n if (classes) {\n for (let index = 0; index < classes.length; index++) {\n const cssClass = classes[index];\n if (this.data.cssClass.indexOf(cssClass) < 0) {\n this.data.cssClass += ` ${cssClass}`;\n }\n }\n }\n this.refresh();\n }\n /**\n * Used to retrieve component's props values.\n * @param {boolean} descriptions - When provided and true, the result will be the list of props with their description.\n * @returns {Promise<GenericObject>} List of props as object, each key will be a prop.\n */\n @Method()\n async getProps(descriptions?: boolean): Promise<GenericObject> {\n return getProps(this, KupCellProps, descriptions);\n }\n /**\n * This method is used to trigger a new render of the component.\n */\n @Method()\n async refresh(): Promise<void> {\n forceUpdate(this);\n }\n /**\n * Removes the given CSS classes from the cell's data.\n * @param {string[]} classes - Array of CSS classes.\n */\n @Method()\n async removeCssClasses(classes?: string[]): Promise<void> {\n if (!this.data.cssClass) {\n return;\n }\n if (classes) {\n for (let index = 0; index < classes.length; index++) {\n const cssClass = classes[index];\n if (this.data.cssClass.indexOf(cssClass) > 0) {\n this.data.cssClass = this.data.cssClass.replace(\n new RegExp(cssClass, 'g'),\n ''\n );\n }\n }\n }\n this.refresh();\n }\n /**\n * Sets the props to the component.\n * @param {GenericObject} props - Object containing props that will be set to the component.\n */\n @Method()\n async setProps(props: GenericObject): Promise<void> {\n setProps(this, KupCellProps, props);\n }\n\n /*-------------------------------------------------*/\n /* P r i v a t e M e t h o d s */\n /*-------------------------------------------------*/\n\n private didRenderInteractables() {\n if (this.dragEnabled) {\n const dataCb: KupDragDataTransferCallback = () => {\n return {\n cell: this.data,\n column: this.generateColumn(),\n id: this.rootElement.id,\n multiple: false,\n row: this.generateRow(),\n };\n };\n\n this.#kupManager.interact.draggable(\n this.rootElement.shadowRoot.querySelector(\n '#' + componentWrapperId\n ),\n {\n cursorChecker() {\n return null;\n },\n },\n {\n callback: dataCb,\n },\n KupDragEffect.BADGE\n );\n }\n }\n\n private generateColumn(): KupDataColumn {\n const colname: string =\n this.data && this.data.obj && this.data.obj.t\n ? this.data.obj.t + ';' + this.data.obj.p\n : 'KUPCELL';\n const coltitle: string =\n this.data && this.data.obj && this.data.obj.t\n ? this.data.obj.t + ';' + this.data.obj.p\n : this.#kupManager.language.translate(\n KupLanguageGeneric.EMPTY_OBJECT\n );\n return {\n name: colname,\n title: coltitle,\n };\n }\n\n private generateRow(): KupDataRow {\n const col: KupDataColumn = this.generateColumn();\n const row: KupDataRow = { cells: {} };\n row.cells[col.name] = this.data;\n return row;\n }\n\n private submitClick(e: MouseEvent): void {\n e.stopPropagation();\n this.kupCellSubmitClick.emit({\n comp: this,\n id: this.rootElement.id,\n cell: this.data as KupDataCellOptions,\n });\n }\n\n /*-------------------------------------------------*/\n /* L i f e c y c l e H o o k s */\n /*-------------------------------------------------*/\n\n componentWillLoad() {\n this.#kupManager.dates.register(this);\n this.#kupManager.debug.logLoad(this, false);\n this.#kupManager.language.register(this);\n this.#kupManager.theme.register(this);\n }\n\n componentDidLoad() {\n this.#kupManager.debug.logLoad(this, true);\n }\n\n componentWillRender() {\n this.#kupManager.debug.logRender(this, false);\n }\n\n componentDidRender() {\n this.didRenderInteractables();\n this.#kupManager.debug.logRender(this, true);\n }\n\n render() {\n const props: FCellOptionsProps = {\n cell: this.data as KupDataCellOptions,\n column: this.generateColumn(),\n component: this,\n density: this.density,\n editable: this.data.isEditable,\n renderKup: true,\n row: this.generateRow(),\n };\n\n const sectionStyle = {\n display: this.showSubmit ? 'flex' : 'block',\n 'flex-direction': this.showSubmit ? this.submitPosition : '',\n };\n return (\n <Host>\n <style>\n {this.#kupManager.theme.setKupStyle(\n this.rootElement as KupComponent\n )}\n </style>\n <div id={componentWrapperId} style={sectionStyle}>\n <FCellOptions {...props}></FCellOptions>\n {this.showSubmit ? (\n <FButton\n buttonType=\"submit\"\n label={this.#kupManager.language.translate(\n KupLanguageGeneric.CONFIRM\n )}\n wrapperClass=\"form__submit\"\n onClick={(e) => {\n this.submitClick(e);\n }}\n ></FButton>\n ) : null}\n </div>\n </Host>\n );\n }\n\n disconnectedCallback() {\n this.#kupManager.dates.unregister(this);\n this.#kupManager.language.unregister(this);\n this.#kupManager.theme.unregister(this);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,5 @@
1
+ import { KupEventPayload } from '../../components';
2
+ import { KupDataCellOptions } from '../../managers/kup-data/kup-data-declarations';
1
3
  /**
2
4
  * Props of the kup-cell component.
3
5
  * Used to export every prop in an object.
@@ -8,3 +10,12 @@ export declare enum KupCellProps {
8
10
  density = "The density of the cell, defaults at 'dense' and can be also set to 'wide' or 'medium'.",
9
11
  dragEnabled = "When set to true, the component is draggable."
10
12
  }
13
+ export declare enum KupCellSubmitButtonPosition {
14
+ top = "column-reverse",
15
+ bottom = "column",
16
+ left = "row-reverse",
17
+ right = "row"
18
+ }
19
+ export interface KupCellSubmitClickEventPayload extends KupEventPayload {
20
+ cell: KupDataCellOptions;
21
+ }
@@ -1,7 +1,10 @@
1
+ import { EventEmitter } from '../../stencil-public-runtime';
1
2
  import { GenericObject } from '../../types/GenericTypes';
3
+ import { KupCellSubmitButtonPosition, KupCellSubmitClickEventPayload } from './kup-cell-declarations';
2
4
  import { FCellPadding } from '../../f-components/f-cell/f-cell-declarations';
3
5
  import { KupDataCell } from '../../managers/kup-data/kup-data-declarations';
4
6
  export declare class KupCell {
7
+ #private;
5
8
  /**
6
9
  * References the root HTML element of the component (<kup-text-field>).
7
10
  */
@@ -27,9 +30,14 @@ export declare class KupCell {
27
30
  */
28
31
  dragEnabled: boolean;
29
32
  /**
30
- * Instance of the KupManager class.
33
+ * Show submit button
31
34
  */
32
- private kupManager;
35
+ showSubmit: boolean;
36
+ /**
37
+ * Submit button position, default is right
38
+ */
39
+ submitPosition: KupCellSubmitButtonPosition;
40
+ kupCellSubmitClick: EventEmitter<KupCellSubmitClickEventPayload>;
33
41
  /**
34
42
  * Adds the given CSS classes to the cell's data.
35
43
  * @param {string[]} classes - Array of CSS classes.
@@ -58,6 +66,7 @@ export declare class KupCell {
58
66
  private didRenderInteractables;
59
67
  private generateColumn;
60
68
  private generateRow;
69
+ private submitClick;
61
70
  componentWillLoad(): void;
62
71
  componentDidLoad(): void;
63
72
  componentWillRender(): void;
@@ -22,6 +22,7 @@ import { KupCalendarData, KupCalendarDateClickEventPayload, KupCalendarEventClic
22
22
  import { KupCardClickPayload, KupCardData, KupCardEventPayload, KupCardFamily } from "./components/kup-card/kup-card-declarations";
23
23
  import { KupCardListClickEventPayload, KupCardListData } from "./components/kup-card-list/kup-card-list-declarations";
24
24
  import { FCellPadding } from "./f-components/f-cell/f-cell-declarations";
25
+ import { KupCellSubmitButtonPosition, KupCellSubmitClickEventPayload } from "./components/kup-cell/kup-cell-declarations";
25
26
  import { ChartAspect, ChartAxis, ChartOfflineMode, ChartSerie, ChartTitle, ChartType, KupChartClickEvent, KupChartSort, KupChartTrendlines } from "./components/kup-chart/kup-chart-declarations";
26
27
  import { KupCheckboxEventPayload } from "./components/kup-checkbox/kup-checkbox-declarations";
27
28
  import { KupChipChangeEventPayload, KupChipEventPayload, KupChipNode } from "./components/kup-chip/kup-chip-declarations";
@@ -79,6 +80,7 @@ export { KupCalendarData, KupCalendarDateClickEventPayload, KupCalendarEventClic
79
80
  export { KupCardClickPayload, KupCardData, KupCardEventPayload, KupCardFamily } from "./components/kup-card/kup-card-declarations";
80
81
  export { KupCardListClickEventPayload, KupCardListData } from "./components/kup-card-list/kup-card-list-declarations";
81
82
  export { FCellPadding } from "./f-components/f-cell/f-cell-declarations";
83
+ export { KupCellSubmitButtonPosition, KupCellSubmitClickEventPayload } from "./components/kup-cell/kup-cell-declarations";
82
84
  export { ChartAspect, ChartAxis, ChartOfflineMode, ChartSerie, ChartTitle, ChartType, KupChartClickEvent, KupChartSort, KupChartTrendlines } from "./components/kup-chart/kup-chart-declarations";
83
85
  export { KupCheckboxEventPayload } from "./components/kup-checkbox/kup-checkbox-declarations";
84
86
  export { KupChipChangeEventPayload, KupChipEventPayload, KupChipNode } from "./components/kup-chip/kup-chip-declarations";
@@ -957,6 +959,14 @@ export namespace Components {
957
959
  * @param props - Object containing props that will be set to the component.
958
960
  */
959
961
  "setProps": (props: GenericObject) => Promise<void>;
962
+ /**
963
+ * Show submit button
964
+ */
965
+ "showSubmit": boolean;
966
+ /**
967
+ * Submit button position, default is right
968
+ */
969
+ "submitPosition": KupCellSubmitButtonPosition;
960
970
  }
961
971
  interface KupChart {
962
972
  /**
@@ -4506,6 +4516,10 @@ export interface KupCardListCustomEvent<T> extends CustomEvent<T> {
4506
4516
  detail: T;
4507
4517
  target: HTMLKupCardListElement;
4508
4518
  }
4519
+ export interface KupCellCustomEvent<T> extends CustomEvent<T> {
4520
+ detail: T;
4521
+ target: HTMLKupCellElement;
4522
+ }
4509
4523
  export interface KupChartCustomEvent<T> extends CustomEvent<T> {
4510
4524
  detail: T;
4511
4525
  target: HTMLKupChartElement;
@@ -4849,7 +4863,18 @@ declare global {
4849
4863
  prototype: HTMLKupCardListElement;
4850
4864
  new (): HTMLKupCardListElement;
4851
4865
  };
4866
+ interface HTMLKupCellElementEventMap {
4867
+ "kup-cell-submit-click": KupCellSubmitClickEventPayload;
4868
+ }
4852
4869
  interface HTMLKupCellElement extends Components.KupCell, HTMLStencilElement {
4870
+ addEventListener<K extends keyof HTMLKupCellElementEventMap>(type: K, listener: (this: HTMLKupCellElement, ev: KupCellCustomEvent<HTMLKupCellElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
4871
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
4872
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
4873
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
4874
+ removeEventListener<K extends keyof HTMLKupCellElementEventMap>(type: K, listener: (this: HTMLKupCellElement, ev: KupCellCustomEvent<HTMLKupCellElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
4875
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
4876
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
4877
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
4853
4878
  }
4854
4879
  var HTMLKupCellElement: {
4855
4880
  prototype: HTMLKupCellElement;
@@ -6519,6 +6544,15 @@ declare namespace LocalJSX {
6519
6544
  * @default false
6520
6545
  */
6521
6546
  "dragEnabled"?: boolean;
6547
+ "onKup-cell-submit-click"?: (event: KupCellCustomEvent<KupCellSubmitClickEventPayload>) => void;
6548
+ /**
6549
+ * Show submit button
6550
+ */
6551
+ "showSubmit"?: boolean;
6552
+ /**
6553
+ * Submit button position, default is right
6554
+ */
6555
+ "submitPosition"?: KupCellSubmitButtonPosition;
6522
6556
  }
6523
6557
  interface KupChart {
6524
6558
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sme.up/ketchup",
3
- "version": "11.0.0-SNAPSHOT-20241021083542",
3
+ "version": "11.0.0-SNAPSHOT-20241021084132",
4
4
  "keywords": [
5
5
  "smeup",
6
6
  "KetchUP",
@@ -1,2 +0,0 @@
1
- import{h as t,r as e,f as n,H as i,d as s}from"./p-d7c15b0e.js";import{a5 as o,F as a,ai as l,aj as c,k as r,f,g as p,s as h,R as u,h as d}from"./p-a670a42e.js";import{c as m}from"./p-635bb4b3.js";import{F as g}from"./p-68f82cb0.js";import"./p-029c7cbe.js";import"./p-5d03c077.js";import"./p-2b519589.js";import"./p-06fe42ee.js";import"./p-0d2bf291.js";import"./p-cc32b7a2.js";import"./p-e3062c19.js";var b;(function(t){t["customStyle"]="Custom style of the component.";t["data"]="The data of the cell.";t["density"]="The density of the cell, defaults at 'dense' and can be also set to 'wide' or 'medium'.";t["dragEnabled"]="When set to true, the component is draggable."})(b||(b={}));var y=undefined&&undefined.__rest||function(t,e){var n={};for(var i in t)if(Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0)n[i]=t[i];if(t!=null&&typeof Object.getOwnPropertySymbols==="function")for(var s=0,i=Object.getOwnPropertySymbols(t);s<i.length;s++){if(e.indexOf(i[s])<0&&Object.prototype.propertyIsEnumerable.call(t,i[s]))n[i[s]]=t[i[s]]}return n};const v=document.documentElement;const k=(t,e)=>t.children.map((t=>{var n;return{id:t.content.codice,value:t.content.testo,selected:e===t.content.codice,children:((n=t.children)===null||n===void 0?void 0:n.length)?k(t,e):[]}}));const x=(t,e)=>t.children.map((t=>{var n;return{id:t.obj.k,value:t.value,selected:e===t.obj.k,children:((n=t.children)===null||n===void 0?void 0:n.length)?x(t,e):[]}}));const j=(t,e)=>t.rows.map((t=>{var n;const i=t.fields||t.cells;const[s,o]=Object.keys(i);return{id:i[s].value,value:((n=i[o])===null||n===void 0?void 0:n.value)||i[s].value,selected:e===i[s].value}}));const w=(t,e)=>{const n=O.get(t.type);if(n){return n(t,e)}else{return t.map((t=>({value:t.label,id:t.id,selected:e===t.id})))}};const O=new Map([["SmeupTreeNode",k.bind(undefined)],["SmeupDataTree",x.bind(undefined)],["SmeupTable",j.bind(undefined)],["SmeupDataTable",j.bind(undefined)]]);const z=e=>{const n=e.cell?Object.assign(Object.assign({},e.cell),{data:R(e.cell,e.column),slotData:L(e.cell,e.column),isEditable:true}):null;const i=Object.assign(Object.assign({},e),{editable:true,cell:n,column:D(n.data),row:E(n.data)});if(e.cell.shape===a.TEXT_FIELD){i.cell.value=i.cell.data.value}const s=C(i.cell,i.column.title);if(s){return t("div",{class:{"input-panel__label_container":true}},s,t(g,Object.assign({},i)))}console.log("props",i);return t(g,Object.assign({},i))};const C=(e,n)=>{if(!n){return null}const i=v.ketchup.data.cell.getType(e,e.shape);if(i===o.RADIO){return t("span",null,n)}return null};const D=t=>{const e=t&&t.obj&&t.obj.t?t.obj.t+";"+t.obj.p:"KUPCELL";const n=t&&t.obj&&t.obj.t?t.obj.t+";"+t.obj.p:"genericEmptyObject";return{name:e,title:n}};const E=t=>{const e=D(t);const n={cells:{}};n.cells[e.name]=t.cell;return n};const L=(t,e)=>{const n=v.ketchup.data.cell.getType(t,t.shape);if(!t.isEditable){return null}if(n===o.MULTI_AUTOCOMPLETE||n===o.MULTI_COMBOBOX){return Object.assign(Object.assign({},l(null,e.title,t.options)),{showDropDownIcon:true,class:"",style:{width:"100%"},disabled:!t.isEditable,id:e.name})}return null};const R=(t,e)=>{const n=Object.assign(Object.assign({},P(t,e)),{disabled:!t.isEditable,id:e.name});const i=v.ketchup.data.cell.getType(t,t.shape);const s=t.data||{},a=y(s,["data"]);return i!==o.MULTI_AUTOCOMPLETE&&i!==o.MULTI_COMBOBOX?T(n,Object.assign({},t.data)):Object.assign(Object.assign({},n),a)};const T=(t,e)=>{for(const n in e){if(e[n]instanceof Object&&!Array.isArray(e[n])&&n in t){t[n]=T(t[n],e[n])}else{t[n]=e[n]}}return t};const P=(t,e)=>{if(!t){return null}const n=t.options;const i=e.title;const s=t.value;const a=v.ketchup.data.cell.getType(t,t.shape);const l=new Map([[o.BUTTON_LIST,K.bind(undefined)],[o.STRING,_.bind(undefined)],[o.RADIO,S.bind(undefined)],[o.AUTOCOMPLETE,W.bind(undefined)],[o.COMBOBOX,W.bind(undefined)]]);const c=l.get(a);return c?c(n,i,s,t,e.name):null};const S=(t,e,n)=>c(n,t);const _=(t,e,n,i)=>{if(t===null||t===void 0?void 0:t[0]){return{value:t[0].label}}};const K=(t,e,n,i)=>{var s,o;return{data:((s=i.options)===null||s===void 0?void 0:s.length)?(o=i.options)===null||o===void 0?void 0:o.map((t=>({icon:t.icon,value:t.value}))):[]}};const W=(t,e,n)=>{const i=l(n,e,[]);i.data["kup-list"].data=w(t,n);return i};const F=".kup-body-compact-01{font-family:var(--kup-font-family);font-size:var(--kup-body-compact-01-font-size, 14px);line-height:18px;font-weight:400;letter-spacing:0.16px}.kup-body-01{font-family:var(--kup-font-family);font-size:var(--kup-body-01-font-size, 14px);line-height:20px;font-weight:400;letter-spacing:0.16px}.kup-code-01{font-family:var(--kup-font-family-monospace);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-label-01{font-family:var(--kup-font-family);font-size:12px;line-height:16px;font-weight:400;letter-spacing:0.32px}.kup-caption-02{font-family:var(--kup-font-family);font-size:12px;line-height:15px;font-weight:500;letter-spacing:1px}.kup-caption-01{font-family:var(--kup-font-family);font-size:10px;line-height:13px;font-weight:400;letter-spacing:1px}.kup-small-label-01{font-family:var(--kup-font-family);font-size:6px;line-height:9px;font-weight:400;letter-spacing:1px}.kup-heading-compact-01{font-family:var(--kup-font-family);font-size:14px;line-height:18px;font-weight:600;letter-spacing:0.16px}.kup-heading-01{font-family:var(--kup-font-family);font-size:14px;line-height:20px;font-weight:600;letter-spacing:0.16px}.kup-heading-02{font-family:var(--kup-font-family);font-size:16px;line-height:24px;font-weight:500;letter-spacing:0}.kup-heading-03{font-family:var(--kup-font-family);font-size:20px;line-height:28px;font-weight:400;letter-spacing:0}.kup-heading-04{font-family:var(--kup-font-family);font-size:28px;line-height:36px;font-weight:400;letter-spacing:0}.kup-heading-05{font-family:var(--kup-font-family);font-size:32px;line-height:40px;font-weight:300;letter-spacing:0}.kup-heading-06{font-family:var(--kup-font-family);font-size:42px;line-height:50px;font-weight:300;letter-spacing:0}.kup-heading-07{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:300;letter-spacing:0}.kup-heading-08{font-family:var(--kup-font-family);font-size:54px;line-height:64px;font-weight:600;letter-spacing:0}:host{display:block;height:100%;width:100%}#kup-component{height:100%;width:100%}";const I=F;const M=class{constructor(t){e(this,t);this.kupManager=r();this.customStyle="";this.data=null;this.density=f.NONE;this.dragEnabled=false}async addCssClasses(t){if(!this.data.cssClass){this.data.cssClass=""}if(t){for(let e=0;e<t.length;e++){const n=t[e];if(this.data.cssClass.indexOf(n)<0){this.data.cssClass+=` ${n}`}}}this.refresh()}async getProps(t){return p(this,b,t)}async refresh(){n(this)}async removeCssClasses(t){if(!this.data.cssClass){return}if(t){for(let e=0;e<t.length;e++){const n=t[e];if(this.data.cssClass.indexOf(n)>0){this.data.cssClass=this.data.cssClass.replace(new RegExp(n,"g"),"")}}}this.refresh()}async setProps(t){h(this,b,t)}didRenderInteractables(){if(this.dragEnabled){const t=()=>({cell:this.data,column:this.generateColumn(),id:this.rootElement.id,multiple:false,row:this.generateRow()});this.kupManager.interact.draggable(this.rootElement.shadowRoot.querySelector("#"+m),{cursorChecker(){return null}},{callback:t},u.BADGE)}}generateColumn(){const t=this.data&&this.data.obj&&this.data.obj.t?this.data.obj.t+";"+this.data.obj.p:"KUPCELL";const e=this.data&&this.data.obj&&this.data.obj.t?this.data.obj.t+";"+this.data.obj.p:this.kupManager.language.translate(d.EMPTY_OBJECT);return{name:t,title:e}}generateRow(){const t=this.generateColumn();const e={cells:{}};e.cells[t.name]=this.data;return e}componentWillLoad(){this.kupManager.dates.register(this);this.kupManager.debug.logLoad(this,false);this.kupManager.language.register(this);this.kupManager.theme.register(this)}componentDidLoad(){this.kupManager.debug.logLoad(this,true)}componentWillRender(){this.kupManager.debug.logRender(this,false)}componentDidRender(){this.didRenderInteractables();this.kupManager.debug.logRender(this,true)}render(){const e={cell:this.data,column:this.generateColumn(),component:this,density:this.density,editable:this.data.isEditable,renderKup:true,row:this.generateRow()};return t(i,{key:"71041f26b08b203e0255d6dca4979403fc8cfd59"},t("style",{key:"d6cf8c97c3b7ce59bf14d71652047b00cd74e353"},this.kupManager.theme.setKupStyle(this.rootElement)),t("div",{key:"ecfe428a78f408cacda35db0da9a00c5008f11a7",id:m},t(z,Object.assign({key:"3939e4d024ef606d4919458e975b4e5d62229973"},e))))}disconnectedCallback(){this.kupManager.dates.unregister(this);this.kupManager.language.unregister(this);this.kupManager.theme.unregister(this)}get rootElement(){return s(this)}};M.style=I;export{M as kup_cell};
2
- //# sourceMappingURL=p-f0f42ad4.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["KupCellProps","dom","document","documentElement","treeOptionsNodeAdapter","options","currentValue","children","map","child","id","content","codice","value","testo","selected","_a","length","dataTreeOptionsChildrenAdapter","obj","k","tableOptionsAdapter","rows","row","cells","fields","Object","keys","optionsTreeComboAdapter","adapter","optionsAdapterMap","get","type","option","label","Map","bind","this","FCellOptions","props","mappedCell","cell","data","setProps","column","slotData","isEditable","mappedProps","assign","editable","generateColumn","generateRow","shape","FCellShapes","TEXT_FIELD","getLabelComponent","title","h","class","FCell","console","log","cellType","ketchup","getType","FCellTypes","RADIO","colname","t","p","coltitle","name","col","MULTI_AUTOCOMPLETE","MULTI_COMBOBOX","CMBandACPAdapter","showDropDownIcon","style","width","disabled","defaultProps","mapData","noDataProps","__rest","deepObjectsMerge","target","source","key","Array","isArray","fieldLabel","dataAdapterMap","BUTTON_LIST","MainBTNAdapter","STRING","MainITXAdapter","MainRADAdapter","AUTOCOMPLETE","MainCMBandACPAdapter","COMBOBOX","_fieldLabel","RADAdapter","_currentValue","_cell","_options","_b","icon","rawOptions","configCMandACP","kupCellCss","KupCellStyle0","KupCell","kupManager","kupManagerInstance","FCellPadding","NONE","addCssClasses","classes","cssClass","index","indexOf","refresh","getProps","descriptions","forceUpdate","removeCssClasses","replace","RegExp","didRenderInteractables","dragEnabled","dataCb","rootElement","multiple","interact","draggable","shadowRoot","querySelector","componentWrapperId","cursorChecker","callback","KupDragEffect","BADGE","language","translate","KupLanguageGeneric","EMPTY_OBJECT","componentWillLoad","dates","register","debug","logLoad","theme","componentDidLoad","componentWillRender","logRender","componentDidRender","render","component","density","renderKup","Host","setKupStyle","disconnectedCallback","unregister"],"sources":["src/components/kup-cell/kup-cell-declarations.ts","src/f-components/f-cell-options.tsx/f-cell-options.tsx","src/components/kup-cell/kup-cell.scss?tag=kup-cell&encapsulation=shadow","src/components/kup-cell/kup-cell.tsx"],"sourcesContent":["/**\n * Props of the kup-cell component.\n * Used to export every prop in an object.\n */\nexport enum KupCellProps {\n customStyle = 'Custom style of the component.',\n data = 'The data of the cell.',\n density = \"The density of the cell, defaults at 'dense' and can be also set to 'wide' or 'medium'.\",\n dragEnabled = 'When set to true, the component is draggable.',\n}\n","import { FunctionalComponent, h, VNode } from '@stencil/core';\nimport { KupDom } from '../../managers/kup-manager/kup-manager-declarations';\nimport { GenericObject, KupDataColumn } from '../../components';\nimport { CMBandACPAdapter, RADAdapter } from '../../utils/cell-utils';\nimport {\n FCellOptionsProps,\n FCellProps,\n FCellShapes,\n FCellTypes,\n} from '../f-cell/f-cell-declarations';\nimport {\n DataAdapterFn,\n KupInputPanelCell,\n} from '../../components/kup-input-panel/kup-input-panel-declarations';\nimport {\n KupDataCell,\n KupDataCellOptions,\n KupDataRow,\n} from '../../managers/kup-data/kup-data-declarations';\nimport { FCell } from '../f-cell/f-cell';\n\nconst dom: KupDom = document.documentElement as KupDom;\n\nconst treeOptionsNodeAdapter = (\n options: any,\n currentValue: string\n): GenericObject[] => {\n return options.children.map((child) => ({\n id: child.content.codice,\n value: child.content.testo,\n selected: currentValue === child.content.codice,\n children: child.children?.length\n ? treeOptionsNodeAdapter(child, currentValue)\n : [],\n }));\n};\n\nconst dataTreeOptionsChildrenAdapter = (\n options: any,\n currentValue: string\n): GenericObject[] => {\n return options.children.map((child) => ({\n id: child.obj.k,\n value: child.value,\n selected: currentValue === child.obj.k,\n children: child.children?.length\n ? dataTreeOptionsChildrenAdapter(child, currentValue)\n : [],\n }));\n};\n\nconst tableOptionsAdapter = (\n options: any,\n currentValue: string\n): GenericObject[] => {\n return options.rows.map((row) => {\n const cells = row.fields || row.cells;\n const [id, value] = Object.keys(cells);\n\n return {\n id: cells[id].value,\n value: cells[value]?.value || cells[id].value,\n selected: currentValue === cells[id].value,\n };\n });\n};\n\nconst optionsTreeComboAdapter = (options: any, currentValue: string) => {\n const adapter = optionsAdapterMap.get(options.type);\n\n if (adapter) {\n return adapter(options, currentValue);\n } else {\n return options.map((option) => ({\n value: option.label,\n id: option.id,\n selected: currentValue === option.id,\n }));\n }\n};\n\nconst optionsAdapterMap = new Map<\n string,\n (options: any, currentValue: string) => GenericObject[]\n>([\n ['SmeupTreeNode', treeOptionsNodeAdapter.bind(this)],\n ['SmeupDataTree', dataTreeOptionsChildrenAdapter.bind(this)],\n ['SmeupTable', tableOptionsAdapter.bind(this)],\n ['SmeupDataTable', tableOptionsAdapter.bind(this)],\n]);\n\nexport const FCellOptions: FunctionalComponent<FCellOptionsProps> = (\n props: FCellOptionsProps\n) => {\n const mappedCell = props.cell\n ? {\n ...props.cell,\n data: setProps(props.cell, props.column),\n slotData: slotData(props.cell, props.column),\n isEditable: true,\n }\n : null;\n\n const mappedProps: FCellProps = {\n ...props,\n editable: true,\n cell: mappedCell as KupDataCell,\n column: generateColumn(mappedCell.data),\n row: generateRow(mappedCell.data),\n };\n\n if (props.cell.shape === FCellShapes.TEXT_FIELD) {\n mappedProps.cell.value = mappedProps.cell.data.value;\n }\n\n const label = getLabelComponent(mappedProps.cell, mappedProps.column.title);\n\n if (label) {\n return (\n <div class={{ 'input-panel__label_container': true }}>\n {label}\n <FCell {...mappedProps} />\n </div>\n );\n }\n console.log('props', mappedProps);\n return <FCell {...mappedProps}></FCell>;\n};\n\nconst getLabelComponent = (cell: KupDataCell, label: string) => {\n if (!label) {\n return null;\n }\n\n const cellType = dom.ketchup.data.cell.getType(cell, cell.shape);\n\n if (cellType === FCellTypes.RADIO) {\n return <span>{label}</span>;\n }\n\n return null;\n};\n\nconst generateColumn = (data: GenericObject): KupDataColumn => {\n const colname: string =\n data && data.obj && data.obj.t\n ? data.obj.t + ';' + data.obj.p\n : 'KUPCELL';\n const coltitle: string =\n data && data.obj && data.obj.t\n ? data.obj.t + ';' + data.obj.p\n : 'genericEmptyObject';\n return {\n name: colname,\n title: coltitle,\n };\n};\n\nconst generateRow = (data: GenericObject): KupDataRow => {\n const col: KupDataColumn = generateColumn(data);\n const row: KupDataRow = { cells: {} };\n row.cells[col.name] = data.cell;\n return row;\n};\n\nconst slotData = (cell: KupDataCellOptions, col: KupDataColumn) => {\n const cellType = dom.ketchup.data.cell.getType(cell, cell.shape);\n\n if (!cell.isEditable) {\n return null;\n }\n\n if (\n cellType === FCellTypes.MULTI_AUTOCOMPLETE ||\n cellType === FCellTypes.MULTI_COMBOBOX\n ) {\n return {\n ...CMBandACPAdapter(\n null,\n col.title,\n cell.options\n // cell,\n // col.name\n ),\n showDropDownIcon: true,\n class: '',\n style: { width: '100%' },\n disabled: !cell.isEditable,\n id: col.name,\n };\n }\n\n return null;\n};\n\nconst setProps = (cell: KupDataCellOptions, column: KupDataColumn) => {\n const defaultProps = {\n ...mapData(cell, column),\n disabled: !cell.isEditable,\n id: column.name,\n };\n\n const cellType = dom.ketchup.data.cell.getType(cell, cell.shape);\n const { data, ...noDataProps } = cell.data || {};\n return cellType !== FCellTypes.MULTI_AUTOCOMPLETE &&\n cellType !== FCellTypes.MULTI_COMBOBOX\n ? deepObjectsMerge(defaultProps, {\n ...cell.data,\n })\n : // Add and ovverride defaultProps of Chip host component except data\n {\n ...defaultProps,\n ...noDataProps,\n };\n};\n\nconst deepObjectsMerge = (target: GenericObject, source: GenericObject) => {\n for (const key in source) {\n if (\n source[key] instanceof Object &&\n !Array.isArray(source[key]) &&\n key in target\n ) {\n target[key] = deepObjectsMerge(target[key], source[key]);\n } else {\n target[key] = source[key];\n }\n }\n return target;\n};\n\nconst mapData = (cell: KupDataCellOptions, col: KupDataColumn) => {\n if (!cell) {\n return null;\n }\n\n const options = cell.options;\n const fieldLabel = col.title;\n const currentValue = cell.value;\n const cellType = dom.ketchup.data.cell.getType(cell, cell.shape);\n const dataAdapterMap = new Map<FCellTypes, DataAdapterFn>([\n [FCellTypes.BUTTON_LIST, MainBTNAdapter.bind(this)],\n [FCellTypes.STRING, MainITXAdapter.bind(this)],\n [FCellTypes.RADIO, MainRADAdapter.bind(this)],\n [FCellTypes.AUTOCOMPLETE, MainCMBandACPAdapter.bind(this)],\n [FCellTypes.COMBOBOX, MainCMBandACPAdapter.bind(this)],\n ]);\n\n const adapter = dataAdapterMap.get(cellType);\n\n return adapter\n ? adapter(options, fieldLabel, currentValue, cell, col.name)\n : null;\n};\n\nconst MainRADAdapter = (\n options: GenericObject,\n _fieldLabel: string,\n currentValue: string\n) => {\n return RADAdapter(currentValue, options);\n};\n\nconst MainITXAdapter = (\n options: GenericObject,\n _fieldLabel: string,\n _currentValue: string,\n _cell: KupDataCellOptions\n) => {\n if (options?.[0]) {\n return {\n value: options[0].label,\n };\n }\n};\n\nconst MainBTNAdapter = (\n _options: GenericObject,\n _fieldLabel: string,\n _currentValue: string,\n cell: KupDataCellOptions\n) => {\n return {\n data: cell.options?.length\n ? cell.options?.map((option) => ({\n icon: option.icon,\n value: option.value,\n }))\n : [],\n };\n};\n\nconst MainCMBandACPAdapter = (\n rawOptions: GenericObject,\n fieldLabel: string,\n currentValue: string\n) => {\n const configCMandACP = CMBandACPAdapter(currentValue, fieldLabel, []);\n\n configCMandACP.data['kup-list'].data = optionsTreeComboAdapter(\n rawOptions,\n currentValue\n );\n return configCMandACP;\n};\n","/**\n* @prop --kup-cell-background: Sets the background of the cell.\n* @prop --kup-cell-font-family: Sets the font family of the cell.\n* @prop --kup-cell-font-family-monospace: Sets the monospace font family of the cell (for numbers).\n* @prop --kup-cell-font-size: Sets the font size of the cell.\n* @prop --kup-cell-text-color: Sets the text color of the cell.\n*\n* NOTE: These variables are defined in the \"kup-theme.css\" file, because they must work even without the kup component (it's a functional component)\n*\n*/\n\n:host {\n display: block;\n height: 100%;\n width: 100%;\n}\n\n#kup-component {\n height: 100%;\n width: 100%;\n}\n","import {\n Component,\n Element,\n forceUpdate,\n h,\n Host,\n Method,\n Prop,\n} from '@stencil/core';\nimport {\n KupManager,\n kupManagerInstance,\n} from '../../managers/kup-manager/kup-manager';\nimport { GenericObject, KupComponent } from '../../types/GenericTypes';\nimport { getProps, setProps } from '../../utils/utils';\nimport { componentWrapperId } from '../../variables/GenericVariables';\nimport { KupCellProps } from './kup-cell-declarations';\nimport { FCell } from '../../f-components/f-cell/f-cell';\nimport {\n FCellOptionsProps,\n FCellPadding,\n FCellProps,\n} from '../../f-components/f-cell/f-cell-declarations';\nimport {\n KupDragDataTransferCallback,\n KupDragEffect,\n} from '../../managers/kup-interact/kup-interact-declarations';\nimport { KupLanguageGeneric } from '../../managers/kup-language/kup-language-declarations';\nimport {\n KupDataCell,\n KupDataCellOptions,\n KupDataColumn,\n KupDataRow,\n} from '../../managers/kup-data/kup-data-declarations';\nimport { FCellOptions } from '../../f-components/f-cell-options.tsx/f-cell-options';\n\n@Component({\n tag: 'kup-cell',\n styleUrl: 'kup-cell.scss',\n shadow: true,\n})\nexport class KupCell {\n /**\n * References the root HTML element of the component (<kup-text-field>).\n */\n @Element() rootElement: HTMLElement;\n\n /*-------------------------------------------------*/\n /* P r o p s */\n /*-------------------------------------------------*/\n\n /**\n * Custom style of the component.\n * @default \"\"\n * @see https://smeup.github.io/ketchup/#/customization\n */\n @Prop() customStyle: string = '';\n /**\n * The data of the cell.\n * @default false\n */\n @Prop() data: KupDataCell = null;\n /**\n * The density of the cell, defaults at 'dense' and can be also set to 'wide' or 'medium'.\n */\n @Prop() density: FCellPadding = FCellPadding.NONE;\n /**\n * When set to true, the component is draggable.\n * @default false\n */\n @Prop() dragEnabled: boolean = false;\n\n /*-------------------------------------------------*/\n /* I n t e r n a l V a r i a b l e s */\n /*-------------------------------------------------*/\n\n /**\n * Instance of the KupManager class.\n */\n private kupManager: KupManager = kupManagerInstance();\n\n /*-------------------------------------------------*/\n /* P u b l i c M e t h o d s */\n /*-------------------------------------------------*/\n\n /**\n * Adds the given CSS classes to the cell's data.\n * @param {string[]} classes - Array of CSS classes.\n */\n @Method()\n async addCssClasses(classes?: string[]): Promise<void> {\n if (!this.data.cssClass) {\n this.data.cssClass = '';\n }\n if (classes) {\n for (let index = 0; index < classes.length; index++) {\n const cssClass = classes[index];\n if (this.data.cssClass.indexOf(cssClass) < 0) {\n this.data.cssClass += ` ${cssClass}`;\n }\n }\n }\n this.refresh();\n }\n /**\n * Used to retrieve component's props values.\n * @param {boolean} descriptions - When provided and true, the result will be the list of props with their description.\n * @returns {Promise<GenericObject>} List of props as object, each key will be a prop.\n */\n @Method()\n async getProps(descriptions?: boolean): Promise<GenericObject> {\n return getProps(this, KupCellProps, descriptions);\n }\n /**\n * This method is used to trigger a new render of the component.\n */\n @Method()\n async refresh(): Promise<void> {\n forceUpdate(this);\n }\n /**\n * Removes the given CSS classes from the cell's data.\n * @param {string[]} classes - Array of CSS classes.\n */\n @Method()\n async removeCssClasses(classes?: string[]): Promise<void> {\n if (!this.data.cssClass) {\n return;\n }\n if (classes) {\n for (let index = 0; index < classes.length; index++) {\n const cssClass = classes[index];\n if (this.data.cssClass.indexOf(cssClass) > 0) {\n this.data.cssClass = this.data.cssClass.replace(\n new RegExp(cssClass, 'g'),\n ''\n );\n }\n }\n }\n this.refresh();\n }\n /**\n * Sets the props to the component.\n * @param {GenericObject} props - Object containing props that will be set to the component.\n */\n @Method()\n async setProps(props: GenericObject): Promise<void> {\n setProps(this, KupCellProps, props);\n }\n\n /*-------------------------------------------------*/\n /* P r i v a t e M e t h o d s */\n /*-------------------------------------------------*/\n\n private didRenderInteractables() {\n if (this.dragEnabled) {\n const dataCb: KupDragDataTransferCallback = () => {\n return {\n cell: this.data,\n column: this.generateColumn(),\n id: this.rootElement.id,\n multiple: false,\n row: this.generateRow(),\n };\n };\n\n this.kupManager.interact.draggable(\n this.rootElement.shadowRoot.querySelector(\n '#' + componentWrapperId\n ),\n {\n cursorChecker() {\n return null;\n },\n },\n {\n callback: dataCb,\n },\n KupDragEffect.BADGE\n );\n }\n }\n\n private generateColumn(): KupDataColumn {\n const colname: string =\n this.data && this.data.obj && this.data.obj.t\n ? this.data.obj.t + ';' + this.data.obj.p\n : 'KUPCELL';\n const coltitle: string =\n this.data && this.data.obj && this.data.obj.t\n ? this.data.obj.t + ';' + this.data.obj.p\n : this.kupManager.language.translate(\n KupLanguageGeneric.EMPTY_OBJECT\n );\n return {\n name: colname,\n title: coltitle,\n };\n }\n\n private generateRow(): KupDataRow {\n const col: KupDataColumn = this.generateColumn();\n const row: KupDataRow = { cells: {} };\n row.cells[col.name] = this.data;\n return row;\n }\n\n /*-------------------------------------------------*/\n /* L i f e c y c l e H o o k s */\n /*-------------------------------------------------*/\n\n componentWillLoad() {\n this.kupManager.dates.register(this);\n this.kupManager.debug.logLoad(this, false);\n this.kupManager.language.register(this);\n this.kupManager.theme.register(this);\n }\n\n componentDidLoad() {\n this.kupManager.debug.logLoad(this, true);\n }\n\n componentWillRender() {\n this.kupManager.debug.logRender(this, false);\n }\n\n componentDidRender() {\n this.didRenderInteractables();\n this.kupManager.debug.logRender(this, true);\n }\n\n render() {\n const props: FCellOptionsProps = {\n cell: this.data as KupDataCellOptions,\n column: this.generateColumn(),\n component: this,\n density: this.density,\n editable: this.data.isEditable,\n renderKup: true,\n row: this.generateRow(),\n };\n return (\n <Host>\n <style>\n {this.kupManager.theme.setKupStyle(\n this.rootElement as KupComponent\n )}\n </style>\n <div id={componentWrapperId}>\n <FCellOptions {...props}></FCellOptions>\n </div>\n </Host>\n );\n }\n\n disconnectedCallback() {\n this.kupManager.dates.unregister(this);\n this.kupManager.language.unregister(this);\n this.kupManager.theme.unregister(this);\n }\n}\n"],"mappings":"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","ignoreList":[]}