@sisense/sdk-ui 1.27.1 → 1.29.0

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 (99) hide show
  1. package/dist/ai.cjs +50 -50
  2. package/dist/ai.js +968 -904
  3. package/dist/analytics-composer.cjs +49 -49
  4. package/dist/analytics-composer.js +374 -374
  5. package/dist/{derive-chart-family-H_RlUbXY.js → derive-chart-family-Cy3hlluo.js} +15339 -15478
  6. package/dist/{derive-chart-family-DDkQybGb.cjs → derive-chart-family-DWCXp57c.cjs} +103 -103
  7. package/dist/index.cjs +253 -120
  8. package/dist/index.js +11042 -8996
  9. package/dist/packages/sdk-ui/src/ai/api/chat-rest-api.d.ts +5 -3
  10. package/dist/packages/sdk-ui/src/ai/api/hooks.d.ts +3 -2
  11. package/dist/packages/sdk-ui/src/ai/api/types.d.ts +12 -2
  12. package/dist/packages/sdk-ui/src/ai/chart/chart-insights.d.ts +2 -2
  13. package/dist/packages/sdk-ui/src/ai/chart/nlq-chart-widget.d.ts +9 -1
  14. package/dist/packages/sdk-ui/src/ai/{get-nlg-query-result.d.ts → get-nlg-insights.d.ts} +21 -6
  15. package/dist/packages/sdk-ui/src/ai/index.d.ts +4 -3
  16. package/dist/packages/sdk-ui/src/ai/messages/insights-message.d.ts +2 -2
  17. package/dist/packages/sdk-ui/src/ai/{use-get-nlg-query-result.d.ts → use-get-nlg-insights.d.ts} +17 -10
  18. package/dist/packages/sdk-ui/src/ai/use-get-nlq-result.d.ts +74 -0
  19. package/dist/packages/sdk-ui/src/ai/use-get-query-recommendations.d.ts +11 -3
  20. package/dist/packages/sdk-ui/src/analytics-composer/common/stringify-props.d.ts +1 -1
  21. package/dist/packages/sdk-ui/src/analytics-composer/common/utils.d.ts +17 -1
  22. package/dist/packages/sdk-ui/src/analytics-composer/types.d.ts +30 -1
  23. package/dist/packages/sdk-ui/src/area-chart.d.ts +1 -1
  24. package/dist/packages/sdk-ui/src/areamap-chart.d.ts +1 -1
  25. package/dist/packages/sdk-ui/src/boxplot-utils.d.ts +3 -2
  26. package/dist/packages/sdk-ui/src/chart-data-options/types.d.ts +1 -1
  27. package/dist/packages/sdk-ui/src/chart-options-processor/subtype-to-design-options.d.ts +1 -1
  28. package/dist/packages/sdk-ui/src/chart-options-processor/translations/axis-section.d.ts +5 -2
  29. package/dist/packages/sdk-ui/src/chart-options-processor/translations/design-options.d.ts +1 -0
  30. package/dist/packages/sdk-ui/src/chart-options-processor/translations/value-label-section.d.ts +3 -1
  31. package/dist/packages/sdk-ui/src/common/components/button.d.ts +10 -0
  32. package/dist/packages/sdk-ui/src/common/components/popover.d.ts +23 -0
  33. package/dist/packages/sdk-ui/src/common/components/radio.d.ts +8 -0
  34. package/dist/packages/sdk-ui/src/common/hooks/use-combined-menu.d.ts +3 -4
  35. package/dist/packages/sdk-ui/src/const.d.ts +1 -0
  36. package/dist/packages/sdk-ui/src/dashboard/components/dashboard-container.d.ts +1 -1
  37. package/dist/packages/sdk-ui/src/dashboard/types.d.ts +6 -0
  38. package/dist/packages/sdk-ui/src/filters/components/cascading-filter-tile/cascading-filter-tile.d.ts +2 -2
  39. package/dist/packages/sdk-ui/src/filters/components/criteria-filter-tile/criteria-filter-tile.d.ts +1 -1
  40. package/dist/packages/sdk-ui/src/filters/components/custom-filter-tile.d.ts +1 -1
  41. package/dist/packages/sdk-ui/src/filters/components/date-filter/date-range-filter-tile/date-range-filter-tile.d.ts +1 -1
  42. package/dist/packages/sdk-ui/src/filters/components/date-filter/relative-date-filter-tile/relative-date-filter-tile.d.ts +1 -1
  43. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/common/index.d.ts +4 -0
  44. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/common/input.d.ts +5 -0
  45. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/common/search-input.d.ts +8 -0
  46. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/common/select/base.d.ts +14 -0
  47. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/common/select/index.d.ts +3 -0
  48. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/common/select/multi-select-item.d.ts +7 -0
  49. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/common/select/searchable-multi-select.d.ts +12 -0
  50. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/common/select/searchable-single-select.d.ts +12 -0
  51. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/common/select/single-select-item.d.ts +7 -0
  52. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/common/select/single-select.d.ts +12 -0
  53. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/common/select/types.d.ts +7 -0
  54. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/common/select/utils.d.ts +4 -0
  55. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/common/selectable-section.d.ts +11 -0
  56. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/filter-editor-popover.d.ts +12 -0
  57. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/filter-editor.d.ts +8 -0
  58. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/multi-select-control.d.ts +7 -0
  59. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/sections/include-all-section.d.ts +9 -0
  60. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/sections/members-section.d.ts +11 -0
  61. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/sections/text-condition-section.d.ts +11 -0
  62. package/dist/packages/sdk-ui/src/filters/components/filter-editor-popover/utils.d.ts +5 -0
  63. package/dist/packages/sdk-ui/src/filters/components/filter-tile-container.d.ts +42 -0
  64. package/dist/packages/sdk-ui/src/filters/components/filter-tile.d.ts +19 -35
  65. package/dist/packages/sdk-ui/src/filters/components/filters-panel/filters-panel.d.ts +2 -0
  66. package/dist/packages/sdk-ui/src/filters/components/filters-panel/index.d.ts +0 -1
  67. package/dist/packages/sdk-ui/src/filters/components/icons/arrow-down-icon.d.ts +1 -1
  68. package/dist/packages/sdk-ui/src/filters/components/icons/check-icon.d.ts +2 -0
  69. package/dist/packages/sdk-ui/src/filters/components/icons/index.d.ts +1 -0
  70. package/dist/packages/sdk-ui/src/filters/components/icons/search-icon.d.ts +1 -1
  71. package/dist/packages/sdk-ui/src/filters/components/index.d.ts +7 -0
  72. package/dist/packages/sdk-ui/src/filters/components/member-filter-tile/index.d.ts +1 -1
  73. package/dist/packages/sdk-ui/src/filters/components/member-filter-tile/member-filter-tile.d.ts +3 -3
  74. package/dist/packages/sdk-ui/src/filters/components/member-filter-tile/members-reducer.d.ts +7 -0
  75. package/dist/packages/sdk-ui/src/filters/components/unsupported-filter-tile.d.ts +1 -1
  76. package/dist/packages/sdk-ui/src/filters/helpers.d.ts +1 -122
  77. package/dist/packages/sdk-ui/src/filters/hooks/index.d.ts +1 -0
  78. package/dist/packages/sdk-ui/src/filters/hooks/use-get-filter-members.d.ts +77 -0
  79. package/dist/packages/sdk-ui/src/filters/index.d.ts +2 -7
  80. package/dist/packages/sdk-ui/src/index.d.ts +1 -1
  81. package/dist/packages/sdk-ui/src/models/widget/widget-model-translator.d.ts +9 -1
  82. package/dist/packages/sdk-ui/src/pivot-table/formatters/header-cell-formatters/header-cell-totals-formatter.d.ts +4 -0
  83. package/dist/packages/sdk-ui/src/props.d.ts +15 -15
  84. package/dist/packages/sdk-ui/src/query/date-formats/apply-date-format.d.ts +1 -1
  85. package/dist/packages/sdk-ui/src/translation/resources/en.d.ts +29 -0
  86. package/dist/packages/sdk-ui/src/translation/resources/index.d.ts +58 -0
  87. package/dist/packages/sdk-ui/src/types.d.ts +27 -2
  88. package/dist/packages/sdk-ui/src/utils/filter-relations.d.ts +30 -72
  89. package/dist/packages/sdk-ui/src/widget-by-id/dashboard-widget.d.ts +1 -1
  90. package/dist/packages/sdk-ui/src/widget-by-id/translate-widget-data-options.d.ts +1 -2
  91. package/dist/packages/sdk-ui/src/widget-by-id/types.d.ts +14 -0
  92. package/dist/packages/sdk-ui/src/widget-by-id/utils.d.ts +2 -57
  93. package/dist/useQuery-CRu7WcYd.cjs +916 -0
  94. package/dist/{useQuery-DOgANgSI.js → useQuery-CdtycPOg.js} +17043 -16999
  95. package/dist/{widget-composer-ldmqMCC4.cjs → widget-composer-DyY3yi_b.cjs} +10 -8
  96. package/dist/{widget-composer-NNyD6tF2.js → widget-composer-G4mPX-JO.js} +168 -143
  97. package/package.json +7 -7
  98. package/dist/packages/sdk-ui/src/filters/components/filters-panel/filters-panel-tile.d.ts +0 -24
  99. package/dist/useQuery-KI9icU5_.cjs +0 -915
@@ -1,4 +1,6 @@
1
- "use strict";var k=Object.defineProperty;var C=Object.getOwnPropertySymbols;var B=Object.prototype.hasOwnProperty,R=Object.prototype.propertyIsEnumerable;var w=(e,t,r)=>t in e?k(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,f=(e,t)=>{for(var r in t||(t={}))B.call(t,r)&&w(e,r,t[r]);if(C)for(var r of C(t))R.call(t,r)&&w(e,r,t[r]);return e};const o=require("./derive-chart-family-DDkQybGb.cjs");class I extends o.DimensionalElement{constructor(t,r){var a;super((a=t.jaql.title)!==null&&a!==void 0?a:"",r),this.expression=t.jaql.dim||t.jaql.formula,this.metadataItem=t,t.jaql.agg?this.aggregation=t.jaql.agg:delete this.aggregation,t.jaql.formula?this.formula=t.jaql.formula:delete this.formula,t.jaql.sort?this.sortType=o.getSortType(t.jaql.sort):delete this.sortType,this.skipValidation=!0}get id(){return this.expression}jaql(){return this.metadataItem}}const Y={text:o.MetadataTypes.TextAttribute,numeric:o.MetadataTypes.NumericAttribute,datetime:o.MetadataTypes.DateLevel};function W(e){var t;return new I(e,(t=Y[e.jaql.datatype])!==null&&t!==void 0?t:"numeric")}const z={jaql:{datasource:{title:""},metadata:[]},queryTitle:"",chartRecommendations:{}},K={model:"",metadata:[],chart:{},queryTitle:""},U=e=>"widgetProps"in e,$=e=>"dashboardOid"in e&&"widgetOid"in e;function J(e){return e.replace(/\s+/g,"-").replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function V(e){return e.charAt(0).toUpperCase()+e.slice(1)}function X(e){const t=/\[(.+?)\s\(Calendar\)\]/;return e.replace(t,"[$1]").trim()}function H(e){if(e)if(e.metadata){if(!e.model)throw new o.TranslatableError("errors.missingModelTitle")}else throw new o.TranslatableError("errors.missingMetadata");else throw new o.TranslatableError("errors.emptyModel");return e}function Z(e){return!e||!e.jaql.datasource.title||!e.jaql.metadata.length}function h(e){return e&&e.replace(new RegExp("(?<!\\\\)'","g"),"\\'")}function q(e){if(![...o.ALL_CHART_TYPES,"pivot","pivot2"].includes(e))throw new o.TranslatableError("errors.chartTypeNotSupported",{chartType:e})}const G={react:{baseChartTmpl:`import { {{componentString}} } from '@sisense/sdk-ui';
1
+ "use strict";var B=Object.defineProperty;var C=Object.getOwnPropertySymbols;var R=Object.prototype.hasOwnProperty,Y=Object.prototype.propertyIsEnumerable;var D=(e,t,r)=>t in e?B(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,y=(e,t)=>{for(var r in t||(t={}))R.call(t,r)&&D(e,r,t[r]);if(C)for(var r of C(t))Y.call(t,r)&&D(e,r,t[r]);return e};const o=require("./derive-chart-family-DWCXp57c.cjs");class W extends o.DimensionalElement{constructor(t,r){var a;super((a=t.jaql.title)!==null&&a!==void 0?a:"",r),this.expression=t.jaql.dim||t.jaql.formula,this.metadataItem=t,t.jaql.agg?this.aggregation=t.jaql.agg:delete this.aggregation,t.jaql.formula?this.formula=t.jaql.formula:delete this.formula,t.jaql.sort?this.sortType=o.getSortType(t.jaql.sort):delete this.sortType,this.skipValidation=!0}get id(){return this.expression}jaql(){return this.metadataItem}}const z={text:o.MetadataTypes.TextAttribute,numeric:o.MetadataTypes.NumericAttribute,datetime:o.MetadataTypes.DateLevel};function Q(e){var t;return new W(e,(t=z[e.jaql.datatype])!==null&&t!==void 0?t:"numeric")}const K={jaql:{datasource:{title:""},metadata:[]},widgetProps:void 0,queryTitle:"",chartRecommendations:{}},U={model:"",metadata:[],chart:{},queryTitle:""},J=e=>"widgetProps"in e,L=e=>"dashboardOid"in e&&"widgetOid"in e;function V(e){return e.replace(/\s+/g,"-").replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}function X(e){return e.charAt(0).toUpperCase()+e.slice(1)}function H(e){const t=/\[(.+?)\s\(Calendar\)\]/;return e.replace(t,"[$1]").trim()}function Z(e){if(e)if(e.metadata){if(!e.model)throw new o.TranslatableError("errors.missingModelTitle")}else throw new o.TranslatableError("errors.missingMetadata");else throw new o.TranslatableError("errors.emptyModel");return e}function G(e){return!e||!e.jaql.datasource.title||!e.jaql.metadata.length}function $(e){if(![...o.ALL_CHART_TYPES,"pivot","pivot2"].includes(e))throw new o.TranslatableError("errors.chartTypeNotSupported",{chartType:e})}function ee(e){return"widgetType"in e&&e.widgetType==="pivot"}function x(e){const t="measures"in e&&m(e.measures)||"values"in e&&m(e.values);return ee(e)?"values"in e.dataOptions&&m(e.dataOptions.values):"chartType"in e?e.chartType==="scatter"?"x"in e.dataOptions&&"y"in e.dataOptions&&(e.dataOptions.x!==void 0||e.dataOptions.y!==void 0):e.chartType==="scattermap"?"geo"in e.dataOptions&&m(e.dataOptions.geo):"value"in e.dataOptions&&m(e.dataOptions.value):t}function m(e){return Array.isArray(e)&&e.length>0}function te(e){const t=e.split(`
2
+ `);for(let r=0;r<t.length-1;r++)if(t[r].trim()===""){const a=t[r+1].trim();if(a.startsWith("import *")||a.startsWith("import {")){t.splice(r,1);break}}return t.join(`
3
+ `)}const re={react:{baseChartTmpl:`import { {{componentString}} } from '@sisense/sdk-ui';
2
4
  {{extraImportsString}}
3
5
  import * as DM from './{{dataSourceString}}'; // generated with @sisense/sdk-cli
4
6
 
@@ -286,13 +288,13 @@ const { data, isLoading, isError, error } = useExecuteQuery(queryProps);
286
288
  <div v-else-if="isError">Error: {{error.message}}</div>
287
289
  <div v-else-if="data">Total Rows: {{data.rows.length}}</div>
288
290
  </div>
289
- </template>`,executePivotQueryTmpl:"Not implemented yet",pivotTableWidgetTmpl:"Not implemented yet"}},Q=(e,t)=>G[t][e].replace(/{{(.*?)Tmpl}}/g,(a,s)=>Q(`${s}Tmpl`,t)),L=(e,t)=>e.replace(/{{(.*?)}}/g,(r,a)=>a in t?t[a]:(console.warn(`Placeholder ${a} not found in data`),r)),E=(e,t,r="react")=>{const a=Q(e,r);return L(a,t)},y=`
290
- `,b="UNKNOWN",ee=(e,t)=>{let r="";return r+=`measureFactory.customFormula(
291
- `,r+=" ".repeat(t),r+=` '${h(e.title)}',
291
+ </template>`,executePivotQueryTmpl:"Not implemented yet",pivotTableWidgetTmpl:"Not implemented yet"}},q=(e,t)=>re[t][e].replace(/{{(.*?)Tmpl}}/g,(a,s)=>q(`${s}Tmpl`,t)),j=(e,t)=>e.replace(/{{(.*?)}}/g,(r,a)=>a in t?t[a]:(console.warn(`Placeholder ${a} not found in data`),r)),E=(e,t,r="react")=>{const a=q(e,r);return te(j(a,t))},h=`
292
+ `,O="UNKNOWN",ae=(e,t)=>{let r="";return r+=`measureFactory.customFormula(
293
+ `,r+=" ".repeat(t),r+=` '${o.escapeSingleQuotes(e.title)}',
292
294
  `,r+=" ".repeat(t),r+=` '${e.formula}',
293
295
  `,r+=" ".repeat(t),r+=` {
294
- `,Object.entries(e.context).forEach(([a,s])=>{const i=o.normalizeAttributeName(s.table||b,s.column||b,void 0,"DM");r+=" ".repeat(t),r+=` '${a.slice(1,-1)}': ${i},
296
+ `,Object.entries(e.context).forEach(([a,s])=>{const i=o.normalizeAttributeName(s.table||O,s.column||O,void 0,"DM");r+=" ".repeat(t),r+=` '${a.slice(1,-1)}': ${i},
295
297
  `}),r+=" ".repeat(t),r+=` }
296
- `,r+=" ".repeat(t),r+=")",r},te=(e,t)=>{const{level:r,table:a,column:s,agg:i,sort:n,title:d}=e;let l;return a&&s&&(l=o.normalizeAttributeName(a,s,r,"DM")),i&&a&&s&&d&&(l=`measureFactory.${o.DimensionalBaseMeasure.aggregationFromJAQL(i)}(${l}, '${h(d)}')`),n&&(l=`{column: ${l}, sortType: '${o.getSortType(n)}'}`),l?`${" ".repeat(t)}${l}`:b},re=(e,t)=>{const r=e.jaql().jaql;return"formula"in r?ee(r,t):y+te(r,t)},c=(e,t=0,r=!1)=>{if(!e)return"";if(typeof e=="string")return`'${h(e)}'`;if(e instanceof I)return re(e,t);let a="";return Array.isArray(e)?a+=`[${e.map(s=>c(s,t+2))}${e.length?y+" ".repeat(t+2):""}]`:(a+=`{${y}`,Object.entries(e).forEach(([s,i])=>{r&&(s=`'${h(s)}'`),a+=" ".repeat(t+2),Array.isArray(i)?a+=`${s}: [${i.map(n=>c(n,t+4,r))}${i.length?y+" ".repeat(t+2):""}]`:typeof i=="object"?a+=`${s}: ${c(i,t+2,r)}`:["number","boolean","undefined",null].includes(typeof i)?a+=`${s}: ${i}`:a+=`${s}: '${h(i)}'`,a+=`,${y}`}),a+=" ".repeat(t),a+="}"),a};function ae(e){return c(e,2)}function x(e){if(!e)throw new o.TranslatableError("errors.undefinedDataSource");let t;return typeof e=="object"&&"title"in e?t=e.title:t=e,J(t)}function O(e){const t=["measureFactory"];return Array.isArray(e)&&e.length>0&&t.push("filterFactory"),`import { ${t.join(", ")} } from '@sisense/sdk-data';`}const D=`
297
- `,ie=(e,t)=>{if(e.composeCode)return`${D}${" ".repeat(t)}${e.composeCode}`;const r=e.jaql().jaql;return`${D}${" ".repeat(t)}filterFactory.customFilter(${c(r,t,!0)})`},se=(e,t=0)=>{if(!e)return"";let r="";return r+=`[${e.map(a=>ie(a,t+2))}${e.length?`
298
- `+" ".repeat(t+2):""}]`,r},j=e=>{if(!e)return"";if(Array.isArray(e))return se(e,2);throw new o.TranslatableError("errors.filterRelationsNotSupported")},oe=["executeQueryByWidgetIdTmpl","widgetByIdTmpl"],ne="chartWidgetTmpl",le="pivotTableWidgetTmpl",de=e=>e,ue=(e,t,r)=>{const a={titleString:e.title,dataSourceString:x(e.dataSource),chartTypeString:de(e.chartType),dataOptionsString:ae(e.dataOptions),filtersString:j(e.filters),componentString:"ChartWidget",extraImportsString:O(e.filters||[])};return E(r,a,t)},ce=(e,t,r)=>{const a={titleString:e.title,dataSourceString:x(e.dataSource),dataOptionsString:c(e.dataOptions),componentString:"PivotTableWidget",extraImportsString:O(e.filters||[])};return E(r,a,t)},pe=({dashboardOid:e,widgetOid:t,uiFramework:r="react",chartType:a="table",includeChart:s=!0})=>{q(a);const i={dashboardOid:e,widgetOid:t},n=oe[Number(s)];return E(n,i,r)},me=({widgetProps:e,uiFramework:t="react"})=>{if(o.isChartWidgetProps(e))return q(e.chartType),ue(e,t,ne);if(o.isPivotTableWidgetProps(e))return ce(e,t,le);throw new o.TranslatableError("errors.otherWidgetTypesNotSupported")},ge=e=>({dataOptions:{columns:e.map(W)}}),fe=Object.freeze({convolution:{enabled:!0,selectedConvolutionType:"bySlicesCount",independentSlicesCount:7},lineWidth:{width:"bold"},markers:{enabled:!1},legend:{enabled:!1},yAxis:{gridLines:!1},xAxis:{gridLines:!1}}),M=Object.freeze({line:"line/spline",pie:"pie/donut",bar:"bar/stacked",column:"column/stackedcolumn"}),ye=(e,t)=>{const{axesMapping:r={},chartFamily:a}=t,s=e.reduce((n,d)=>(n[d.jaql.title]=d,n),{}),i=Object.entries(r).reduce((n,d)=>{const[l,m]=d;return n[`${l}`]=Array.isArray(m)?m.map(g=>{var S,T;const u=s[g.name];if(!u)return{column:{type:"",name:g.name}};const p=W(u);if(u.panel==="measures")return{column:p,sortType:"sortNone"};if(o.isDatetime(p.type)){const v=(T=(S=u.format)==null?void 0:S.mask)==null?void 0:T[u.jaql.level];if(v)return{column:p,dateFormat:v}}return p}):m,n},{});switch(a){case"cartesian":return f({category:[],value:[],breakBy:[]},i);case"categorical":return f({category:[],value:[]},i);case"scatter":return Object.keys(i).forEach(n=>{i[`${n}`]=i[`${n}`][0]}),i;case"scattermap":return Object.keys(i).forEach(n=>{n!=="geo"&&(i[`${n}`]=i[`${n}`][0])}),i;case"table":return Object.keys(i).length===0?ge(e).dataOptions:i;case"boxplot":case"areamap":case"indicator":default:return i}},P=(e,t)=>{var r,a,s,i;return t==="x"?(a=(r=e.axesMapping.category)!=null?r:e.axesMapping.x)==null?void 0:a.map(n=>n.name).join(", "):(i=(s=e.axesMapping.value)!=null?s:e.axesMapping.y)==null?void 0:i.map(n=>n.name).join(", ")},he=(e,t,r=!0)=>{const a=ye(e,t);let s;return r&&t.chartType in M?s=o.merge(o.merge(fe,{subtype:M[t.chartType]}),{legend:{enabled:!0,position:"right"},yAxis:{title:{enabled:!0,text:P(t,"y")}},xAxis:{title:{enabled:!0,text:P(t,"x")}}}):s=o.getDefaultStyleOptions(),{dataOptions:a,chartStyleOptions:s}},Se=e=>"chartType"in e?e:{chartType:"table",chartFamily:"table",axesMapping:{}},Te=e=>e.map(t=>o.createFilterFromJaql(t.jaql)),ve=e=>e.reduce((t,r)=>{if((r.panel==="scope"||r.jaql.filter)&&t.metadataFilters.push(o.cloneDeep(r)),r.panel!=="scope"){const a=o.cloneDeep(r);delete a.jaql.filter,t.metadataColumns.push(a)}return t},{metadataColumns:[],metadataFilters:[]}),Ee=(e,t)=>{if(!Z(e))try{const{useCustomizedStyleOptions:r=!1}=t||{},{jaql:a,chartRecommendations:s,queryTitle:i}=e,{metadata:n,datasource:{title:d,id:l,type:m="elasticube"}}=a,g=Se(s),u=g.chartType.toLowerCase(),p={cornerRadius:"Small",header:{renderToolbar:()=>null}},{metadataColumns:S,metadataFilters:T}=ve(n),v=Te(T),{dataOptions:F,chartStyleOptions:_}=he(S,g,r),N=f(f({},_),p);return{widgetType:"chart",id:i,title:i,chartType:u,dataSource:{title:d,id:l,type:m},dataOptions:F,filters:v,styleOptions:N}}catch(r){console.error(r);return}},A=(e,t)=>Ee(e,t),be=e=>$(e)?pe(e):me(e),xe=Object.freeze(Object.defineProperty({__proto__:null,toWidgetCode:be,toWidgetProps:A},Symbol.toStringTag,{value:"Module"}));exports.EMPTY_EXPANDED_QUERY_MODEL=z;exports.EMPTY_SIMPLE_QUERY_MODEL=K;exports.capitalizeFirstLetter=V;exports.generateCode=E;exports.isByIdWidgetCodeParams=$;exports.isClientSideWidgetCodeParams=U;exports.populatePlaceholders=L;exports.sanitizeDimensionId=X;exports.stringifyDataSource=x;exports.stringifyExtraImports=O;exports.stringifyFilters=j;exports.stringifyProps=c;exports.toWidgetProps=A;exports.validateQueryModel=H;exports.widgetComposer=xe;
298
+ `,r+=" ".repeat(t),r+=")",r},ie=(e,t)=>{const{level:r,table:a,column:s,agg:i,sort:n,title:d}=e;let l;return a&&s&&(l=o.normalizeAttributeName(a,s,r,"DM")),i&&a&&s&&d&&(l=`measureFactory.${o.DimensionalBaseMeasure.aggregationFromJAQL(i)}(${l}, '${o.escapeSingleQuotes(d)}')`),n&&(l=`{column: ${l}, sortType: '${o.getSortType(n)}'}`),l?`${" ".repeat(t)}${l}`:O},se=(e,t)=>{const r=e.jaql().jaql;return"formula"in r?ae(r,t):h+ie(r,t)},c=(e,t=0,r=!1)=>{if(!e)return"";if(typeof e=="string")return`'${o.escapeSingleQuotes(e)}'`;if(e instanceof W)return se(e,t);if(e instanceof o.DimensionalElement)return e.composeCode||"";let a="";return Array.isArray(e)?a+=`[${e.map(s=>c(s,t+2))}${e.length?h+" ".repeat(t+2):""}]`:(a+=`{${h}`,Object.entries(e).forEach(([s,i])=>{r&&(s=`'${o.escapeSingleQuotes(s)}'`),a+=" ".repeat(t+2),Array.isArray(i)?a+=`${s}: [${i.map(n=>c(n,t+4,r))}${i.length?h+" ".repeat(t+2):""}]`:typeof i=="object"?a+=`${s}: ${c(i,t+2,r)}`:["number","boolean","undefined",null].includes(typeof i)?a+=`${s}: ${i}`:a+=`${s}: '${o.escapeSingleQuotes(i)}'`,a+=`,${h}`}),a+=" ".repeat(t),a+="}"),a};function oe(e){return c(e,2)}function b(e){if(!e)throw new o.TranslatableError("errors.undefinedDataSource");let t;return typeof e=="object"&&"title"in e?t=e.title:t=e,V(t)}function w(e,t=!0){const r=[];return t&&r.push("measureFactory"),m(e)&&r.push("filterFactory"),r.length>0?`import { ${r.join(", ")} } from '@sisense/sdk-data';`:""}const M=`
299
+ `,ne=(e,t)=>{if(e.composeCode)return`${M}${" ".repeat(t)}${e.composeCode}`;const r=e.jaql().jaql;return`${M}${" ".repeat(t)}filterFactory.customFilter(${c(r,t,!0)})`},le=(e,t=0)=>{if(!e)return"";let r="";return r+=`[${e.map(a=>ne(a,t+2))}${e.length?`
300
+ `+" ".repeat(t+2):""}]`,r},A=e=>{if(!e)return"";if(Array.isArray(e))return le(e,2);throw new o.TranslatableError("errors.filterRelationsNotSupported")},de=["executeQueryByWidgetIdTmpl","widgetByIdTmpl"],ue="chartWidgetTmpl",ce="pivotTableWidgetTmpl",pe=e=>e,me=(e,t,r)=>{const a=x(e),s={titleString:e.title,dataSourceString:b(e.dataSource),chartTypeString:pe(e.chartType),dataOptionsString:oe(e.dataOptions),filtersString:A(e.filters),componentString:"ChartWidget",extraImportsString:w(e.filters||[],a)};return E(r,s,t)},ge=(e,t,r)=>{const a=x(e),s={titleString:e.title,dataSourceString:b(e.dataSource),dataOptionsString:c(e.dataOptions),componentString:"PivotTableWidget",extraImportsString:w(e.filters||[],a)};return E(r,s,t)},fe=({dashboardOid:e,widgetOid:t,uiFramework:r="react",chartType:a="table",includeChart:s=!0})=>{$(a);const i={dashboardOid:e,widgetOid:t},n=de[Number(s)];return E(n,i,r)},ye=({widgetProps:e,uiFramework:t="react"})=>{if(o.isChartWidgetProps(e))return $(e.chartType),me(e,t,ue);if(o.isPivotTableWidgetProps(e))return ge(e,t,ce);throw new o.TranslatableError("errors.otherWidgetTypesNotSupported")},he=e=>({dataOptions:{columns:e.map(Q)}}),Se=Object.freeze({convolution:{enabled:!0,selectedConvolutionType:"bySlicesCount",independentSlicesCount:7},lineWidth:{width:"bold"},markers:{enabled:!1},legend:{enabled:!1},yAxis:{gridLines:!1},xAxis:{gridLines:!1}}),P=Object.freeze({line:"line/spline",pie:"pie/donut",bar:"bar/stacked",column:"column/stackedcolumn"}),Te=(e,t)=>{const{axesMapping:r={},chartFamily:a}=t,s=e.reduce((n,d)=>(n[d.jaql.title]=d,n),{}),i=Object.entries(r).reduce((n,d)=>{const[l,g]=d;return n[`${l}`]=Array.isArray(g)?g.map(f=>{var S,T;const u=s[f.name];if(!u)return{column:{type:"",name:f.name}};const p=Q(u);if(u.panel==="measures")return{column:p,sortType:"sortNone"};if(o.isDatetime(p.type)){const v=(T=(S=u.format)==null?void 0:S.mask)==null?void 0:T[u.jaql.level];if(v)return{column:p,dateFormat:v}}return p}):g,n},{});switch(a){case"cartesian":return y({category:[],value:[],breakBy:[]},i);case"categorical":return y({category:[],value:[]},i);case"scatter":return Object.keys(i).forEach(n=>{i[`${n}`]=i[`${n}`][0]}),i;case"scattermap":return Object.keys(i).forEach(n=>{n!=="geo"&&(i[`${n}`]=i[`${n}`][0])}),i;case"table":return Object.keys(i).length===0?he(e).dataOptions:i;case"boxplot":case"areamap":case"indicator":default:return i}},I=(e,t)=>{var r,a,s,i;return t==="x"?(a=(r=e.axesMapping.category)!=null?r:e.axesMapping.x)==null?void 0:a.map(n=>n.name).join(", "):(i=(s=e.axesMapping.value)!=null?s:e.axesMapping.y)==null?void 0:i.map(n=>n.name).join(", ")},ve=(e,t,r=!0)=>{const a=Te(e,t);let s;return r&&t.chartType in P?s=o.merge(o.merge(Se,{subtype:P[t.chartType]}),{legend:{enabled:!0,position:"right"},yAxis:{title:{enabled:!0,text:I(t,"y")}},xAxis:{title:{enabled:!0,text:I(t,"x")}}}):s=o.getDefaultStyleOptions(),{dataOptions:a,chartStyleOptions:s}},Ee=e=>"chartType"in e?e:{chartType:"table",chartFamily:"table",axesMapping:{}},Oe=e=>e.map(t=>o.createFilterFromJaql(t.jaql)),xe=e=>e.reduce((t,r)=>{if((r.panel==="scope"||r.jaql.filter)&&t.metadataFilters.push(o.cloneDeep(r)),r.panel!=="scope"){const a=o.cloneDeep(r);delete a.jaql.filter,t.metadataColumns.push(a)}return t},{metadataColumns:[],metadataFilters:[]}),be=(e,t)=>{if(!G(e))try{const{useCustomizedStyleOptions:r=!1}=t||{},{jaql:a,chartRecommendations:s,queryTitle:i}=e,{metadata:n,datasource:{title:d,id:l,type:g="elasticube"}}=a,f=Ee(s),u=f.chartType.toLowerCase(),p={cornerRadius:"Small",header:{renderToolbar:()=>null}},{metadataColumns:S,metadataFilters:T}=xe(n),v=Oe(T),{dataOptions:_,chartStyleOptions:k}=ve(S,f,r),N=y(y({},k),p);return{widgetType:"chart",id:i,title:i,chartType:u,dataSource:{title:d,id:l,type:g},dataOptions:_,filters:v,styleOptions:N}}catch(r){console.error(r);return}},F=(e,t)=>be(e,t),we=e=>L(e)?fe(e):ye(e),Ce=Object.freeze(Object.defineProperty({__proto__:null,toWidgetCode:we,toWidgetProps:F},Symbol.toStringTag,{value:"Module"}));exports.EMPTY_EXPANDED_QUERY_MODEL=K;exports.EMPTY_SIMPLE_QUERY_MODEL=U;exports.capitalizeFirstLetter=X;exports.checkIfMeasuresExist=x;exports.generateCode=E;exports.isByIdWidgetCodeParams=L;exports.isClientSideWidgetCodeParams=J;exports.populatePlaceholders=j;exports.sanitizeDimensionId=H;exports.stringifyDataSource=b;exports.stringifyExtraImports=w;exports.stringifyFilters=A;exports.stringifyProps=c;exports.toWidgetProps=F;exports.validateQueryModel=Z;exports.widgetComposer=Ce;
@@ -1,19 +1,19 @@
1
- var _ = Object.defineProperty;
2
- var E = Object.getOwnPropertySymbols;
3
- var R = Object.prototype.hasOwnProperty, K = Object.prototype.propertyIsEnumerable;
4
- var w = (e, t, r) => t in e ? _(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, f = (e, t) => {
1
+ var Y = Object.defineProperty;
2
+ var w = Object.getOwnPropertySymbols;
3
+ var U = Object.prototype.hasOwnProperty, z = Object.prototype.propertyIsEnumerable;
4
+ var C = (e, t, r) => t in e ? Y(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, y = (e, t) => {
5
5
  for (var r in t || (t = {}))
6
- R.call(t, r) && w(e, r, t[r]);
7
- if (E)
8
- for (var r of E(t))
9
- K.call(t, r) && w(e, r, t[r]);
6
+ U.call(t, r) && C(e, r, t[r]);
7
+ if (w)
8
+ for (var r of w(t))
9
+ z.call(t, r) && C(e, r, t[r]);
10
10
  return e;
11
11
  };
12
- import { d2 as U, h as I, M as x, T as u, d3 as Y, d4 as W, a9 as z, ag as J, ae as V, m as C, d5 as H, J as X, B as Z, aT as D } from "./derive-chart-family-H_RlUbXY.js";
13
- class Q extends U {
12
+ import { cF as q, q as P, M as x, T as u, cG as J, cH as S, cI as L, ad as V, Y as H, af as G, p as D, cJ as X, P as Z, F as ee, aT as M } from "./derive-chart-family-Cy3hlluo.js";
13
+ class Q extends q {
14
14
  constructor(t, r) {
15
15
  var a;
16
- super((a = t.jaql.title) !== null && a !== void 0 ? a : "", r), this.expression = t.jaql.dim || t.jaql.formula, this.metadataItem = t, t.jaql.agg ? this.aggregation = t.jaql.agg : delete this.aggregation, t.jaql.formula ? this.formula = t.jaql.formula : delete this.formula, t.jaql.sort ? this.sortType = I(t.jaql.sort) : delete this.sortType, this.skipValidation = !0;
16
+ super((a = t.jaql.title) !== null && a !== void 0 ? a : "", r), this.expression = t.jaql.dim || t.jaql.formula, this.metadataItem = t, t.jaql.agg ? this.aggregation = t.jaql.agg : delete this.aggregation, t.jaql.formula ? this.formula = t.jaql.formula : delete this.formula, t.jaql.sort ? this.sortType = P(t.jaql.sort) : delete this.sortType, this.skipValidation = !0;
17
17
  }
18
18
  get id() {
19
19
  return this.expression;
@@ -22,36 +22,37 @@ class Q extends U {
22
22
  return this.metadataItem;
23
23
  }
24
24
  }
25
- const G = {
25
+ const te = {
26
26
  text: x.TextAttribute,
27
27
  numeric: x.NumericAttribute,
28
28
  datetime: x.DateLevel
29
29
  };
30
- function P(e) {
30
+ function j(e) {
31
31
  var t;
32
- return new Q(e, (t = G[e.jaql.datatype]) !== null && t !== void 0 ? t : "numeric");
32
+ return new Q(e, (t = te[e.jaql.datatype]) !== null && t !== void 0 ? t : "numeric");
33
33
  }
34
- const We = {
34
+ const je = {
35
35
  jaql: { datasource: { title: "" }, metadata: [] },
36
+ widgetProps: void 0,
36
37
  queryTitle: "",
37
38
  chartRecommendations: {}
38
- }, Qe = {
39
+ }, Ae = {
39
40
  model: "",
40
41
  metadata: [],
41
42
  chart: {},
42
43
  queryTitle: ""
43
- }, Pe = (e) => "widgetProps" in e, ee = (e) => "dashboardOid" in e && "widgetOid" in e;
44
- function te(e) {
44
+ }, Fe = (e) => "widgetProps" in e, re = (e) => "dashboardOid" in e && "widgetOid" in e;
45
+ function ae(e) {
45
46
  return e.replace(/\s+/g, "-").replace(/([a-z])([A-Z])/g, "$1-$2").toLowerCase();
46
47
  }
47
- function Le(e) {
48
+ function ke(e) {
48
49
  return e.charAt(0).toUpperCase() + e.slice(1);
49
50
  }
50
- function je(e) {
51
+ function Ne(e) {
51
52
  const t = /\[(.+?)\s\(Calendar\)\]/;
52
53
  return e.replace(t, "[$1]").trim();
53
54
  }
54
- function Ae(e) {
55
+ function Be(e) {
55
56
  if (e)
56
57
  if (e.metadata) {
57
58
  if (!e.model)
@@ -62,17 +63,38 @@ function Ae(e) {
62
63
  throw new u("errors.emptyModel");
63
64
  return e;
64
65
  }
65
- function re(e) {
66
+ function ie(e) {
66
67
  return !e || !e.jaql.datasource.title || !e.jaql.metadata.length;
67
68
  }
68
- function h(e) {
69
- return e && e.replace(new RegExp("(?<!\\\\)'", "g"), "\\'");
70
- }
71
- function L(e) {
72
- if (![...Y, "pivot", "pivot2"].includes(e))
69
+ function A(e) {
70
+ if (![...J, "pivot", "pivot2"].includes(e))
73
71
  throw new u("errors.chartTypeNotSupported", { chartType: e });
74
72
  }
75
- const ae = {
73
+ function se(e) {
74
+ return "widgetType" in e && e.widgetType === "pivot";
75
+ }
76
+ function F(e) {
77
+ const t = "measures" in e && m(e.measures) || "values" in e && m(e.values);
78
+ return se(e) ? "values" in e.dataOptions && m(e.dataOptions.values) : "chartType" in e ? e.chartType === "scatter" ? "x" in e.dataOptions && "y" in e.dataOptions && (e.dataOptions.x !== void 0 || e.dataOptions.y !== void 0) : e.chartType === "scattermap" ? "geo" in e.dataOptions && m(e.dataOptions.geo) : "value" in e.dataOptions && m(e.dataOptions.value) : t;
79
+ }
80
+ function m(e) {
81
+ return Array.isArray(e) && e.length > 0;
82
+ }
83
+ function oe(e) {
84
+ const t = e.split(`
85
+ `);
86
+ for (let r = 0; r < t.length - 1; r++)
87
+ if (t[r].trim() === "") {
88
+ const a = t[r + 1].trim();
89
+ if (a.startsWith("import *") || a.startsWith("import {")) {
90
+ t.splice(r, 1);
91
+ break;
92
+ }
93
+ }
94
+ return t.join(`
95
+ `);
96
+ }
97
+ const ne = {
76
98
  react: {
77
99
  baseChartTmpl: `import { {{componentString}} } from '@sisense/sdk-ui';
78
100
  {{extraImportsString}}
@@ -391,23 +413,23 @@ const { data, isLoading, isError, error } = useExecuteQuery(queryProps);
391
413
  executePivotQueryTmpl: "Not implemented yet",
392
414
  pivotTableWidgetTmpl: "Not implemented yet"
393
415
  }
394
- }, j = (e, t) => ae[t][e].replace(
416
+ }, k = (e, t) => ne[t][e].replace(
395
417
  /{{(.*?)Tmpl}}/g,
396
- (a, s) => j(`${s}Tmpl`, t)
397
- ), ie = (e, t) => e.replace(/{{(.*?)}}/g, (r, a) => a in t ? t[a] : (console.warn(`Placeholder ${a} not found in data`), r)), b = (e, t, r = "react") => {
398
- const a = j(e, r);
399
- return ie(a, t);
400
- }, y = `
401
- `, O = "UNKNOWN", se = (e, t) => {
418
+ (a, s) => k(`${s}Tmpl`, t)
419
+ ), le = (e, t) => e.replace(/{{(.*?)}}/g, (r, a) => a in t ? t[a] : (console.warn(`Placeholder ${a} not found in data`), r)), b = (e, t, r = "react") => {
420
+ const a = k(e, r);
421
+ return oe(le(a, t));
422
+ }, h = `
423
+ `, E = "UNKNOWN", de = (e, t) => {
402
424
  let r = "";
403
425
  return r += `measureFactory.customFormula(
404
- `, r += " ".repeat(t), r += ` '${h(e.title)}',
426
+ `, r += " ".repeat(t), r += ` '${S(e.title)}',
405
427
  `, r += " ".repeat(t), r += ` '${e.formula}',
406
428
  `, r += " ".repeat(t), r += ` {
407
429
  `, Object.entries(e.context).forEach(([a, s]) => {
408
- const i = W(
409
- s.table || O,
410
- s.column || O,
430
+ const i = L(
431
+ s.table || E,
432
+ s.column || E,
411
433
  void 0,
412
434
  "DM"
413
435
  );
@@ -415,104 +437,106 @@ const { data, isLoading, isError, error } = useExecuteQuery(queryProps);
415
437
  `;
416
438
  }), r += " ".repeat(t), r += ` }
417
439
  `, r += " ".repeat(t), r += ")", r;
418
- }, oe = (e, t) => {
440
+ }, ue = (e, t) => {
419
441
  const { level: r, table: a, column: s, agg: i, sort: o, title: l } = e;
420
442
  let n;
421
- return a && s && (n = W(a, s, r, "DM")), i && a && s && l && (n = `measureFactory.${z.aggregationFromJAQL(
443
+ return a && s && (n = L(a, s, r, "DM")), i && a && s && l && (n = `measureFactory.${V.aggregationFromJAQL(
422
444
  i
423
- )}(${n}, '${h(l)}')`), o && (n = `{column: ${n}, sortType: '${I(o)}'}`), n ? `${" ".repeat(t)}${n}` : O;
424
- }, ne = (e, t) => {
445
+ )}(${n}, '${S(l)}')`), o && (n = `{column: ${n}, sortType: '${P(o)}'}`), n ? `${" ".repeat(t)}${n}` : E;
446
+ }, ce = (e, t) => {
425
447
  const r = e.jaql().jaql;
426
- return "formula" in r ? se(r, t) : y + oe(r, t);
448
+ return "formula" in r ? de(r, t) : h + ue(r, t);
427
449
  }, p = (e, t = 0, r = !1) => {
428
450
  if (!e)
429
451
  return "";
430
452
  if (typeof e == "string")
431
- return `'${h(e)}'`;
453
+ return `'${S(e)}'`;
432
454
  if (e instanceof Q)
433
- return ne(e, t);
455
+ return ce(e, t);
456
+ if (e instanceof q)
457
+ return e.composeCode || "";
434
458
  let a = "";
435
- return Array.isArray(e) ? a += `[${e.map((s) => p(s, t + 2))}${e.length ? y + " ".repeat(t + 2) : ""}]` : (a += `{${y}`, Object.entries(e).forEach(([s, i]) => {
436
- r && (s = `'${h(s)}'`), a += " ".repeat(t + 2), Array.isArray(i) ? a += `${s}: [${i.map((o) => p(o, t + 4, r))}${i.length ? y + " ".repeat(t + 2) : ""}]` : typeof i == "object" ? a += `${s}: ${p(i, t + 2, r)}` : ["number", "boolean", "undefined", null].includes(typeof i) ? a += `${s}: ${i}` : a += `${s}: '${h(i)}'`, a += `,${y}`;
459
+ return Array.isArray(e) ? a += `[${e.map((s) => p(s, t + 2))}${e.length ? h + " ".repeat(t + 2) : ""}]` : (a += `{${h}`, Object.entries(e).forEach(([s, i]) => {
460
+ r && (s = `'${S(s)}'`), a += " ".repeat(t + 2), Array.isArray(i) ? a += `${s}: [${i.map((o) => p(o, t + 4, r))}${i.length ? h + " ".repeat(t + 2) : ""}]` : typeof i == "object" ? a += `${s}: ${p(i, t + 2, r)}` : ["number", "boolean", "undefined", null].includes(typeof i) ? a += `${s}: ${i}` : a += `${s}: '${S(i)}'`, a += `,${h}`;
437
461
  }), a += " ".repeat(t), a += "}"), a;
438
462
  };
439
- function le(e) {
463
+ function me(e) {
440
464
  return p(e, 2);
441
465
  }
442
- function A(e) {
466
+ function N(e) {
443
467
  if (!e)
444
468
  throw new u("errors.undefinedDataSource");
445
469
  let t;
446
- return typeof e == "object" && "title" in e ? t = e.title : t = e, te(t);
470
+ return typeof e == "object" && "title" in e ? t = e.title : t = e, ae(t);
447
471
  }
448
- function F(e) {
449
- const t = ["measureFactory"];
450
- return Array.isArray(e) && e.length > 0 && t.push("filterFactory"), `import { ${t.join(", ")} } from '@sisense/sdk-data';`;
472
+ function B(e, t = !0) {
473
+ const r = [];
474
+ return t && r.push("measureFactory"), m(e) && r.push("filterFactory"), r.length > 0 ? `import { ${r.join(", ")} } from '@sisense/sdk-data';` : "";
451
475
  }
452
- const M = `
453
- `, de = (e, t) => {
476
+ const I = `
477
+ `, pe = (e, t) => {
454
478
  if (e.composeCode)
455
- return `${M}${" ".repeat(t)}${e.composeCode}`;
479
+ return `${I}${" ".repeat(t)}${e.composeCode}`;
456
480
  const r = e.jaql().jaql;
457
- return `${M}${" ".repeat(t)}filterFactory.customFilter(${p(
481
+ return `${I}${" ".repeat(t)}filterFactory.customFilter(${p(
458
482
  r,
459
483
  t,
460
484
  !0
461
485
  )})`;
462
- }, ue = (e, t = 0) => {
486
+ }, ge = (e, t = 0) => {
463
487
  if (!e)
464
488
  return "";
465
489
  let r = "";
466
- return r += `[${e.map((a) => de(a, t + 2))}${e.length ? `
490
+ return r += `[${e.map((a) => pe(a, t + 2))}${e.length ? `
467
491
  ` + " ".repeat(t + 2) : ""}]`, r;
468
- }, ce = (e) => {
492
+ }, fe = (e) => {
469
493
  if (!e)
470
494
  return "";
471
495
  if (Array.isArray(e))
472
- return ue(e, 2);
496
+ return ge(e, 2);
473
497
  throw new u("errors.filterRelationsNotSupported");
474
- }, pe = ["executeQueryByWidgetIdTmpl", "widgetByIdTmpl"], me = "chartWidgetTmpl", ge = "pivotTableWidgetTmpl", fe = (e) => e, ye = (e, t, r) => {
475
- const a = {
498
+ }, ye = ["executeQueryByWidgetIdTmpl", "widgetByIdTmpl"], he = "chartWidgetTmpl", Se = "pivotTableWidgetTmpl", Te = (e) => e, ve = (e, t, r) => {
499
+ const a = F(e), s = {
476
500
  titleString: e.title,
477
- dataSourceString: A(e.dataSource),
478
- chartTypeString: fe(e.chartType),
479
- dataOptionsString: le(e.dataOptions),
480
- filtersString: ce(e.filters),
501
+ dataSourceString: N(e.dataSource),
502
+ chartTypeString: Te(e.chartType),
503
+ dataOptionsString: me(e.dataOptions),
504
+ filtersString: fe(e.filters),
481
505
  componentString: "ChartWidget",
482
- extraImportsString: F(e.filters || [])
506
+ extraImportsString: B(e.filters || [], a)
483
507
  };
484
- return b(r, a, t);
485
- }, he = (e, t, r) => {
486
- const a = {
508
+ return b(r, s, t);
509
+ }, Oe = (e, t, r) => {
510
+ const a = F(e), s = {
487
511
  titleString: e.title,
488
- dataSourceString: A(e.dataSource),
512
+ dataSourceString: N(e.dataSource),
489
513
  dataOptionsString: p(e.dataOptions),
490
514
  componentString: "PivotTableWidget",
491
- extraImportsString: F(e.filters || [])
515
+ extraImportsString: B(e.filters || [], a)
492
516
  };
493
- return b(r, a, t);
494
- }, Se = ({
517
+ return b(r, s, t);
518
+ }, xe = ({
495
519
  dashboardOid: e,
496
520
  widgetOid: t,
497
521
  uiFramework: r = "react",
498
522
  chartType: a = "table",
499
523
  includeChart: s = !0
500
524
  }) => {
501
- L(a);
502
- const i = { dashboardOid: e, widgetOid: t }, o = pe[Number(s)];
525
+ A(a);
526
+ const i = { dashboardOid: e, widgetOid: t }, o = ye[Number(s)];
503
527
  return b(o, i, r);
504
- }, Te = ({
528
+ }, Ee = ({
505
529
  widgetProps: e,
506
530
  uiFramework: t = "react"
507
531
  }) => {
508
- if (J(e))
509
- return L(e.chartType), ye(e, t, me);
510
- if (V(e))
511
- return he(e, t, ge);
532
+ if (H(e))
533
+ return A(e.chartType), ve(e, t, he);
534
+ if (G(e))
535
+ return Oe(e, t, Se);
512
536
  throw new u("errors.otherWidgetTypesNotSupported");
513
- }, ve = (e) => ({
514
- dataOptions: { columns: e.map(P) }
515
- }), xe = Object.freeze({
537
+ }, be = (e) => ({
538
+ dataOptions: { columns: e.map(j) }
539
+ }), we = Object.freeze({
516
540
  convolution: {
517
541
  enabled: !0,
518
542
  selectedConvolutionType: "bySlicesCount",
@@ -531,45 +555,45 @@ const M = `
531
555
  xAxis: {
532
556
  gridLines: !1
533
557
  }
534
- }), $ = Object.freeze({
558
+ }), W = Object.freeze({
535
559
  line: "line/spline",
536
560
  pie: "pie/donut",
537
561
  bar: "bar/stacked",
538
562
  column: "column/stackedcolumn"
539
- }), Oe = (e, t) => {
563
+ }), Ce = (e, t) => {
540
564
  const { axesMapping: r = {}, chartFamily: a } = t, s = e.reduce((o, l) => (o[l.jaql.title] = l, o), {}), i = Object.entries(r).reduce((o, l) => {
541
- const [n, m] = l;
542
- return o[`${n}`] = Array.isArray(m) ? m.map((g) => {
543
- var S, T;
544
- const d = s[g.name];
565
+ const [n, g] = l;
566
+ return o[`${n}`] = Array.isArray(g) ? g.map((f) => {
567
+ var T, v;
568
+ const d = s[f.name];
545
569
  if (!d)
546
- return { column: { type: "", name: g.name } };
547
- const c = P(d);
570
+ return { column: { type: "", name: f.name } };
571
+ const c = j(d);
548
572
  if (d.panel === "measures")
549
573
  return {
550
574
  column: c,
551
575
  sortType: "sortNone"
552
576
  };
553
- if (X(c.type)) {
554
- const v = (T = (S = d.format) == null ? void 0 : S.mask) == null ? void 0 : T[d.jaql.level];
555
- if (v)
577
+ if (Z(c.type)) {
578
+ const O = (v = (T = d.format) == null ? void 0 : T.mask) == null ? void 0 : v[d.jaql.level];
579
+ if (O)
556
580
  return {
557
581
  column: c,
558
- dateFormat: v
582
+ dateFormat: O
559
583
  };
560
584
  }
561
585
  return c;
562
- }) : m, o;
586
+ }) : g, o;
563
587
  }, {});
564
588
  switch (a) {
565
589
  case "cartesian":
566
- return f({
590
+ return y({
567
591
  category: [],
568
592
  value: [],
569
593
  breakBy: []
570
594
  }, i);
571
595
  case "categorical":
572
- return f({
596
+ return y({
573
597
  category: [],
574
598
  value: []
575
599
  }, i);
@@ -582,22 +606,22 @@ const M = `
582
606
  o !== "geo" && (i[`${o}`] = i[`${o}`][0]);
583
607
  }), i;
584
608
  case "table":
585
- return Object.keys(i).length === 0 ? ve(e).dataOptions : i;
609
+ return Object.keys(i).length === 0 ? be(e).dataOptions : i;
586
610
  case "boxplot":
587
611
  case "areamap":
588
612
  case "indicator":
589
613
  default:
590
614
  return i;
591
615
  }
592
- }, q = (e, t) => {
616
+ }, $ = (e, t) => {
593
617
  var r, a, s, i;
594
618
  return t === "x" ? (a = (r = e.axesMapping.category) != null ? r : e.axesMapping.x) == null ? void 0 : a.map((o) => o.name).join(", ") : (i = (s = e.axesMapping.value) != null ? s : e.axesMapping.y) == null ? void 0 : i.map((o) => o.name).join(", ");
595
- }, be = (e, t, r = !0) => {
596
- const a = Oe(e, t);
619
+ }, De = (e, t, r = !0) => {
620
+ const a = Ce(e, t);
597
621
  let s;
598
- return r && t.chartType in $ ? s = C(
599
- C(xe, {
600
- subtype: $[t.chartType]
622
+ return r && t.chartType in W ? s = D(
623
+ D(we, {
624
+ subtype: W[t.chartType]
601
625
  }),
602
626
  {
603
627
  legend: {
@@ -607,50 +631,50 @@ const M = `
607
631
  yAxis: {
608
632
  title: {
609
633
  enabled: !0,
610
- text: q(t, "y")
634
+ text: $(t, "y")
611
635
  }
612
636
  },
613
637
  xAxis: {
614
638
  title: {
615
639
  enabled: !0,
616
- text: q(t, "x")
640
+ text: $(t, "x")
617
641
  }
618
642
  }
619
643
  }
620
- ) : s = H(), {
644
+ ) : s = X(), {
621
645
  dataOptions: a,
622
646
  chartStyleOptions: s
623
647
  };
624
- }, Ee = (e) => "chartType" in e ? e : {
648
+ }, Me = (e) => "chartType" in e ? e : {
625
649
  chartType: "table",
626
650
  chartFamily: "table",
627
651
  axesMapping: {}
628
- }, we = (e) => e.map((t) => Z(t.jaql)), Ce = (e) => e.reduce(
652
+ }, Ie = (e) => e.map((t) => ee(t.jaql)), We = (e) => e.reduce(
629
653
  (t, r) => {
630
- if ((r.panel === "scope" || r.jaql.filter) && t.metadataFilters.push(D(r)), r.panel !== "scope") {
631
- const a = D(r);
654
+ if ((r.panel === "scope" || r.jaql.filter) && t.metadataFilters.push(M(r)), r.panel !== "scope") {
655
+ const a = M(r);
632
656
  delete a.jaql.filter, t.metadataColumns.push(a);
633
657
  }
634
658
  return t;
635
659
  },
636
660
  { metadataColumns: [], metadataFilters: [] }
637
- ), De = (e, t) => {
638
- if (!re(e))
661
+ ), $e = (e, t) => {
662
+ if (!ie(e))
639
663
  try {
640
664
  const { useCustomizedStyleOptions: r = !1 } = t || {}, { jaql: a, chartRecommendations: s, queryTitle: i } = e, {
641
665
  metadata: o,
642
- datasource: { title: l, id: n, type: m = "elasticube" }
643
- } = a, g = Ee(s), d = g.chartType.toLowerCase(), c = {
666
+ datasource: { title: l, id: n, type: g = "elasticube" }
667
+ } = a, f = Me(s), d = f.chartType.toLowerCase(), c = {
644
668
  cornerRadius: "Small",
645
669
  header: {
646
670
  // remove info button and render empty toolbar instead
647
671
  renderToolbar: () => null
648
672
  }
649
- }, { metadataColumns: S, metadataFilters: T } = Ce(o), v = we(T), { dataOptions: k, chartStyleOptions: B } = be(
650
- S,
651
- g,
673
+ }, { metadataColumns: T, metadataFilters: v } = We(o), O = Ie(v), { dataOptions: _, chartStyleOptions: R } = De(
674
+ T,
675
+ f,
652
676
  r
653
- ), N = f(f({}, B), c);
677
+ ), K = y(y({}, R), c);
654
678
  return {
655
679
  widgetType: "chart",
656
680
  id: i,
@@ -659,35 +683,36 @@ const M = `
659
683
  dataSource: {
660
684
  title: l,
661
685
  id: n,
662
- type: m
686
+ type: g
663
687
  },
664
- dataOptions: k,
665
- filters: v,
666
- styleOptions: N
688
+ dataOptions: _,
689
+ filters: O,
690
+ styleOptions: K
667
691
  };
668
692
  } catch (r) {
669
693
  console.error(r);
670
694
  return;
671
695
  }
672
- }, Me = (e, t) => De(e, t), $e = (e) => ee(e) ? Se(e) : Te(e), Fe = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
696
+ }, qe = (e, t) => $e(e, t), Pe = (e) => re(e) ? xe(e) : Ee(e), _e = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
673
697
  __proto__: null,
674
- toWidgetCode: $e,
675
- toWidgetProps: Me
698
+ toWidgetCode: Pe,
699
+ toWidgetProps: qe
676
700
  }, Symbol.toStringTag, { value: "Module" }));
677
701
  export {
678
- Qe as E,
679
- A as a,
702
+ Ae as E,
703
+ N as a,
680
704
  p as b,
681
- Le as c,
682
- ce as d,
683
- F as e,
684
- We as f,
705
+ ke as c,
706
+ fe as d,
707
+ B as e,
708
+ F as f,
685
709
  b as g,
686
- ee as h,
687
- Pe as i,
688
- ie as p,
689
- je as s,
690
- Me as t,
691
- Ae as v,
692
- Fe as w
710
+ je as h,
711
+ Fe as i,
712
+ re as j,
713
+ le as p,
714
+ Ne as s,
715
+ qe as t,
716
+ Be as v,
717
+ _e as w
693
718
  };
package/package.json CHANGED
@@ -11,7 +11,7 @@
11
11
  "Sisense",
12
12
  "Compose SDK"
13
13
  ],
14
- "version": "1.27.1",
14
+ "version": "1.29.0",
15
15
  "type": "module",
16
16
  "exports": {
17
17
  ".": {
@@ -53,12 +53,12 @@
53
53
  "@emotion/styled": "^11.10.5",
54
54
  "@mui/material": "^5.16.7",
55
55
  "@mui/system": "^5.16.7",
56
- "@sisense/sdk-common": "^1.27.1",
57
- "@sisense/sdk-data": "^1.27.1",
58
- "@sisense/sdk-pivot-client": "^1.27.1",
59
- "@sisense/sdk-query-client": "^1.27.1",
60
- "@sisense/sdk-rest-client": "^1.27.1",
61
- "@sisense/sdk-tracking": "^1.27.1",
56
+ "@sisense/sdk-common": "^1.29.0",
57
+ "@sisense/sdk-data": "^1.29.0",
58
+ "@sisense/sdk-pivot-client": "^1.29.0",
59
+ "@sisense/sdk-query-client": "^1.29.0",
60
+ "@sisense/sdk-rest-client": "^1.29.0",
61
+ "@sisense/sdk-tracking": "^1.29.0",
62
62
  "@sisense/sisense-charts": "5.1.1",
63
63
  "@tanstack/react-query": "4.36.1",
64
64
  "classnames": "^2.3.2",