@odoo/o-spreadsheet 19.1.0-alpha.1 → 19.1.0-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/o-spreadsheet.cjs.js +130 -2912
- package/dist/o-spreadsheet.d.ts +13 -34
- package/dist/o-spreadsheet.esm.js +130 -2912
- package/dist/o-spreadsheet.iife.js +130 -2912
- package/dist/o-spreadsheet.iife.min.js +349 -2880
- package/dist/o_spreadsheet.xml +17 -13
- package/package.json +19 -7
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* This file is generated by o-spreadsheet build tools. Do not edit it.
|
|
4
4
|
* @see https://github.com/odoo/o-spreadsheet
|
|
5
|
-
* @version 19.1.0-alpha.
|
|
6
|
-
* @date 2025-09-
|
|
7
|
-
* @hash
|
|
5
|
+
* @version 19.1.0-alpha.3
|
|
6
|
+
* @date 2025-09-23T12:37:52.238Z
|
|
7
|
+
* @hash ce2b07a
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
'use strict';
|
|
@@ -589,7 +589,6 @@ var DIRECTION;
|
|
|
589
589
|
const CANVAS_SHIFT = 0.5;
|
|
590
590
|
// Colors
|
|
591
591
|
const HIGHLIGHT_COLOR = "#017E84";
|
|
592
|
-
const BACKGROUND_GRAY_COLOR = "#f5f5f5";
|
|
593
592
|
const BACKGROUND_HEADER_COLOR = "#F8F9FA";
|
|
594
593
|
const BACKGROUND_HEADER_SELECTED_COLOR = "#E8EAED";
|
|
595
594
|
const BACKGROUND_HEADER_ACTIVE_COLOR = "#595959";
|
|
@@ -599,15 +598,10 @@ const SELECTION_BORDER_COLOR = "#3266ca";
|
|
|
599
598
|
const HEADER_BORDER_COLOR = "#C0C0C0";
|
|
600
599
|
const CELL_BORDER_COLOR = "#E2E3E3";
|
|
601
600
|
const BACKGROUND_CHART_COLOR = "#FFFFFF";
|
|
602
|
-
const DISABLED_TEXT_COLOR = "#CACACA";
|
|
603
601
|
const DEFAULT_COLOR_SCALE_MIDPOINT_COLOR = 0xb6d7a8;
|
|
604
602
|
const LINK_COLOR = HIGHLIGHT_COLOR;
|
|
605
603
|
const FILTERS_COLOR = "#188038";
|
|
606
|
-
const SEPARATOR_COLOR = "#E0E2E4";
|
|
607
|
-
const ICONS_COLOR = "#4A4F59";
|
|
608
|
-
const HEADER_GROUPING_BACKGROUND_COLOR = "#F5F5F5";
|
|
609
604
|
const HEADER_GROUPING_BORDER_COLOR = "#999";
|
|
610
|
-
const GRID_BORDER_COLOR = "#E2E3E3";
|
|
611
605
|
const FROZEN_PANE_HEADER_BORDER_COLOR = "#BCBCBC";
|
|
612
606
|
const FROZEN_PANE_BORDER_COLOR = "#DADFE8";
|
|
613
607
|
const COMPOSER_ASSISTANT_COLOR = "#9B359B";
|
|
@@ -619,30 +613,9 @@ const CHART_WATERFALL_SUBTOTAL_COLOR = "#AAAAAA";
|
|
|
619
613
|
const GRAY_900 = "#111827";
|
|
620
614
|
const GRAY_300 = "#D8DADD";
|
|
621
615
|
const GRAY_200 = "#E7E9ED";
|
|
622
|
-
const GRAY_100 = "#F9FAFB";
|
|
623
616
|
const TEXT_BODY = "#374151";
|
|
624
617
|
const TEXT_BODY_MUTED = TEXT_BODY + "C2";
|
|
625
|
-
const TEXT_HEADING = "#111827";
|
|
626
|
-
const PRIMARY_BUTTON_BG = "#714B67";
|
|
627
|
-
const PRIMARY_BUTTON_HOVER_BG = "#624159";
|
|
628
|
-
const PRIMARY_BUTTON_ACTIVE_BG = "#f1edf0";
|
|
629
|
-
const BUTTON_BG = GRAY_200;
|
|
630
|
-
const BUTTON_HOVER_BG = GRAY_300;
|
|
631
|
-
const BUTTON_HOVER_TEXT_COLOR = "#111827";
|
|
632
|
-
const BUTTON_ACTIVE_BG = "#e6f2f3";
|
|
633
|
-
const BUTTON_ACTIVE_TEXT_COLOR = "#111827";
|
|
634
618
|
const ACTION_COLOR = HIGHLIGHT_COLOR;
|
|
635
|
-
const ACTION_COLOR_HOVER = "#01585c";
|
|
636
|
-
const ALERT_WARNING_BG = "#FBEBCC";
|
|
637
|
-
const ALERT_WARNING_BORDER = "#F8E2B3";
|
|
638
|
-
const ALERT_WARNING_TEXT_COLOR = "#946D23";
|
|
639
|
-
const ALERT_DANGER_BG = "#D44C591A";
|
|
640
|
-
const ALERT_DANGER_BORDER = "#C34A41";
|
|
641
|
-
const ALERT_DANGER_TEXT_COLOR = "#C34A41";
|
|
642
|
-
const ALERT_INFO_BG = "#CDEDF1";
|
|
643
|
-
const ALERT_INFO_BORDER = "#98DBE2";
|
|
644
|
-
const ALERT_INFO_TEXT_COLOR = "#09414A";
|
|
645
|
-
const BADGE_SELECTED_COLOR = "#E6F2F3";
|
|
646
619
|
const CHART_PADDING = 20;
|
|
647
620
|
const CHART_PADDING_BOTTOM = 10;
|
|
648
621
|
const CHART_PADDING_TOP = 15;
|
|
@@ -740,9 +713,7 @@ const MIN_COL_WIDTH = 5;
|
|
|
740
713
|
const HEADER_HEIGHT = 26;
|
|
741
714
|
const HEADER_WIDTH = 48;
|
|
742
715
|
const DESKTOP_TOPBAR_TOOLBAR_HEIGHT = 34;
|
|
743
|
-
const MOBILE_TOPBAR_TOOLBAR_HEIGHT = 44;
|
|
744
716
|
const DESKTOP_BOTTOMBAR_HEIGHT = 36;
|
|
745
|
-
const MOBILE_BOTTOMBAR_HEIGHT = 44;
|
|
746
717
|
const DEFAULT_CELL_WIDTH = 96;
|
|
747
718
|
const DEFAULT_CELL_HEIGHT = 23;
|
|
748
719
|
const SCROLLBAR_WIDTH = 15;
|
|
@@ -750,7 +721,6 @@ const AUTOFILL_EDGE_LENGTH = 8;
|
|
|
750
721
|
const ICON_EDGE_LENGTH = 18;
|
|
751
722
|
const MIN_CF_ICON_MARGIN = 4;
|
|
752
723
|
const MIN_CELL_TEXT_MARGIN = 4;
|
|
753
|
-
const CF_ICON_EDGE_LENGTH = 15;
|
|
754
724
|
const PADDING_AUTORESIZE_VERTICAL = 3;
|
|
755
725
|
const PADDING_AUTORESIZE_HORIZONTAL = MIN_CELL_TEXT_MARGIN;
|
|
756
726
|
const GROUP_LAYER_WIDTH = 21;
|
|
@@ -765,11 +735,6 @@ const MOBILE_WIDTH_BREAKPOINT = 768;
|
|
|
765
735
|
const MENU_WIDTH = 250;
|
|
766
736
|
const MENU_VERTICAL_PADDING = 6;
|
|
767
737
|
const DESKTOP_MENU_ITEM_HEIGHT = 26;
|
|
768
|
-
const MOBILE_MENU_ITEM_HEIGHT = 35;
|
|
769
|
-
const MENU_ITEM_PADDING_HORIZONTAL = 11;
|
|
770
|
-
const MENU_ITEM_PADDING_VERTICAL = 4;
|
|
771
|
-
const MENU_SEPARATOR_BORDER_WIDTH = 1;
|
|
772
|
-
const MENU_SEPARATOR_PADDING = 5;
|
|
773
738
|
// Style
|
|
774
739
|
const DEFAULT_STYLE = {
|
|
775
740
|
align: "left",
|
|
@@ -823,23 +788,6 @@ const FORBIDDEN_SHEETNAME_CHARS = ["'", "*", "?", "/", "\\", "[", "]"];
|
|
|
823
788
|
const FORBIDDEN_SHEETNAME_CHARS_IN_EXCEL_REGEX = /'|\*|\?|\/|\\|\[|\]/;
|
|
824
789
|
// Cells
|
|
825
790
|
const FORMULA_REF_IDENTIFIER = "|";
|
|
826
|
-
// Components
|
|
827
|
-
var ComponentsImportance;
|
|
828
|
-
(function (ComponentsImportance) {
|
|
829
|
-
ComponentsImportance[ComponentsImportance["Grid"] = 0] = "Grid";
|
|
830
|
-
ComponentsImportance[ComponentsImportance["Highlight"] = 5] = "Highlight";
|
|
831
|
-
ComponentsImportance[ComponentsImportance["HeaderGroupingButton"] = 6] = "HeaderGroupingButton";
|
|
832
|
-
ComponentsImportance[ComponentsImportance["Figure"] = 10] = "Figure";
|
|
833
|
-
ComponentsImportance[ComponentsImportance["ScrollBar"] = 15] = "ScrollBar";
|
|
834
|
-
ComponentsImportance[ComponentsImportance["GridPopover"] = 19] = "GridPopover";
|
|
835
|
-
ComponentsImportance[ComponentsImportance["GridComposer"] = 20] = "GridComposer";
|
|
836
|
-
ComponentsImportance[ComponentsImportance["IconPicker"] = 25] = "IconPicker";
|
|
837
|
-
ComponentsImportance[ComponentsImportance["TopBarComposer"] = 30] = "TopBarComposer";
|
|
838
|
-
ComponentsImportance[ComponentsImportance["Popover"] = 35] = "Popover";
|
|
839
|
-
ComponentsImportance[ComponentsImportance["FigureAnchor"] = 1000] = "FigureAnchor";
|
|
840
|
-
ComponentsImportance[ComponentsImportance["FigureSnapLine"] = 1001] = "FigureSnapLine";
|
|
841
|
-
ComponentsImportance[ComponentsImportance["FigureTooltip"] = 1002] = "FigureTooltip";
|
|
842
|
-
})(ComponentsImportance || (ComponentsImportance = {}));
|
|
843
791
|
let DEFAULT_SHEETVIEW_SIZE = 0;
|
|
844
792
|
function getDefaultSheetViewSize() {
|
|
845
793
|
return DEFAULT_SHEETVIEW_SIZE;
|
|
@@ -1369,8 +1317,19 @@ function memoize(func) {
|
|
|
1369
1317
|
},
|
|
1370
1318
|
}[funcName];
|
|
1371
1319
|
}
|
|
1320
|
+
/**
|
|
1321
|
+
* Removes the specified indexes from the array.
|
|
1322
|
+
* Sparse (empty) elements are transformed to undefined (unless their index is explicitly removed).
|
|
1323
|
+
*/
|
|
1372
1324
|
function removeIndexesFromArray(array, indexes) {
|
|
1373
|
-
|
|
1325
|
+
const toRemove = new Set(indexes);
|
|
1326
|
+
const newArray = [];
|
|
1327
|
+
for (let i = 0; i < array.length; i++) {
|
|
1328
|
+
if (!toRemove.has(i)) {
|
|
1329
|
+
newArray.push(array[i]);
|
|
1330
|
+
}
|
|
1331
|
+
}
|
|
1332
|
+
return newArray;
|
|
1374
1333
|
}
|
|
1375
1334
|
function insertItemsAtIndex(array, items, index) {
|
|
1376
1335
|
const newArray = [...array];
|
|
@@ -10666,153 +10625,6 @@ class ComposerFocusStore extends SpreadsheetStore {
|
|
|
10666
10625
|
}
|
|
10667
10626
|
}
|
|
10668
10627
|
|
|
10669
|
-
/**
|
|
10670
|
-
* This file is largely inspired by owl 1.
|
|
10671
|
-
* `css` tag has been removed from owl 2 without workaround to manage css.
|
|
10672
|
-
* So, the solution was to import the behavior of owl 1 directly in our
|
|
10673
|
-
* codebase, with one difference: the css is added to the sheet as soon as the
|
|
10674
|
-
* css tag is executed. In owl 1, the css was added as soon as a Component was
|
|
10675
|
-
* created for the first time.
|
|
10676
|
-
*/
|
|
10677
|
-
const STYLESHEETS = {};
|
|
10678
|
-
let nextId = 0;
|
|
10679
|
-
/**
|
|
10680
|
-
* CSS tag helper for defining inline stylesheets. With this, one can simply define
|
|
10681
|
-
* an inline stylesheet with just the following code:
|
|
10682
|
-
* ```js
|
|
10683
|
-
* css`.component-a { color: red; }`;
|
|
10684
|
-
* ```
|
|
10685
|
-
*/
|
|
10686
|
-
function css(strings, ...args) {
|
|
10687
|
-
const name = `__sheet__${nextId++}`;
|
|
10688
|
-
const value = String.raw(strings, ...args);
|
|
10689
|
-
registerSheet(name, value);
|
|
10690
|
-
activateSheet(name);
|
|
10691
|
-
return name;
|
|
10692
|
-
}
|
|
10693
|
-
function processSheet(str) {
|
|
10694
|
-
const tokens = str.split(/(\{|\}|;)/).map((s) => s.trim());
|
|
10695
|
-
const selectorStack = [];
|
|
10696
|
-
const parts = [];
|
|
10697
|
-
let rules = [];
|
|
10698
|
-
function generateSelector(stackIndex, parentSelector) {
|
|
10699
|
-
const parts = [];
|
|
10700
|
-
for (const selector of selectorStack[stackIndex]) {
|
|
10701
|
-
let part = (parentSelector && parentSelector + " " + selector) || selector;
|
|
10702
|
-
if (part.includes("&")) {
|
|
10703
|
-
part = selector.replace(/&/g, parentSelector || "");
|
|
10704
|
-
}
|
|
10705
|
-
if (stackIndex < selectorStack.length - 1) {
|
|
10706
|
-
part = generateSelector(stackIndex + 1, part);
|
|
10707
|
-
}
|
|
10708
|
-
parts.push(part);
|
|
10709
|
-
}
|
|
10710
|
-
return parts.join(", ");
|
|
10711
|
-
}
|
|
10712
|
-
function generateRules() {
|
|
10713
|
-
if (rules.length) {
|
|
10714
|
-
parts.push(generateSelector(0) + " {");
|
|
10715
|
-
parts.push(...rules);
|
|
10716
|
-
parts.push("}");
|
|
10717
|
-
rules = [];
|
|
10718
|
-
}
|
|
10719
|
-
}
|
|
10720
|
-
while (tokens.length) {
|
|
10721
|
-
const token = tokens.shift();
|
|
10722
|
-
if (token === "}") {
|
|
10723
|
-
generateRules();
|
|
10724
|
-
selectorStack.pop();
|
|
10725
|
-
}
|
|
10726
|
-
else {
|
|
10727
|
-
if (tokens[0] === "{") {
|
|
10728
|
-
generateRules();
|
|
10729
|
-
selectorStack.push(token.split(/\s*,\s*/));
|
|
10730
|
-
tokens.shift();
|
|
10731
|
-
}
|
|
10732
|
-
if (tokens[0] === ";") {
|
|
10733
|
-
rules.push(" " + token + ";");
|
|
10734
|
-
}
|
|
10735
|
-
}
|
|
10736
|
-
}
|
|
10737
|
-
return parts.join("\n");
|
|
10738
|
-
}
|
|
10739
|
-
function registerSheet(id, css) {
|
|
10740
|
-
const sheet = document.createElement("style");
|
|
10741
|
-
sheet.textContent = processSheet(css);
|
|
10742
|
-
STYLESHEETS[id] = sheet;
|
|
10743
|
-
}
|
|
10744
|
-
function activateSheet(id) {
|
|
10745
|
-
const sheet = STYLESHEETS[id];
|
|
10746
|
-
sheet.setAttribute("component", id);
|
|
10747
|
-
document.head.appendChild(sheet);
|
|
10748
|
-
}
|
|
10749
|
-
function getTextDecoration({ strikethrough, underline, }) {
|
|
10750
|
-
if (!strikethrough && !underline) {
|
|
10751
|
-
return "none";
|
|
10752
|
-
}
|
|
10753
|
-
return `${strikethrough ? "line-through" : ""} ${underline ? "underline" : ""}`;
|
|
10754
|
-
}
|
|
10755
|
-
/**
|
|
10756
|
-
* Convert the cell style to CSS properties.
|
|
10757
|
-
*/
|
|
10758
|
-
function cellStyleToCss(style) {
|
|
10759
|
-
const attributes = cellTextStyleToCss(style);
|
|
10760
|
-
if (!style)
|
|
10761
|
-
return attributes;
|
|
10762
|
-
if (style.fillColor) {
|
|
10763
|
-
attributes["background"] = style.fillColor;
|
|
10764
|
-
}
|
|
10765
|
-
return attributes;
|
|
10766
|
-
}
|
|
10767
|
-
/**
|
|
10768
|
-
* Convert the cell text style to CSS properties.
|
|
10769
|
-
*/
|
|
10770
|
-
function cellTextStyleToCss(style) {
|
|
10771
|
-
const attributes = {};
|
|
10772
|
-
if (!style)
|
|
10773
|
-
return attributes;
|
|
10774
|
-
if (style.bold) {
|
|
10775
|
-
attributes["font-weight"] = "bold";
|
|
10776
|
-
}
|
|
10777
|
-
if (style.italic) {
|
|
10778
|
-
attributes["font-style"] = "italic";
|
|
10779
|
-
}
|
|
10780
|
-
if (style.fontSize) {
|
|
10781
|
-
attributes["font-size"] = `${style.fontSize}px`;
|
|
10782
|
-
}
|
|
10783
|
-
if (style.strikethrough || style.underline) {
|
|
10784
|
-
let decoration = style.strikethrough ? "line-through" : "";
|
|
10785
|
-
decoration = style.underline ? decoration + " underline" : decoration;
|
|
10786
|
-
attributes["text-decoration"] = decoration;
|
|
10787
|
-
}
|
|
10788
|
-
if (style.textColor) {
|
|
10789
|
-
attributes["color"] = style.textColor;
|
|
10790
|
-
}
|
|
10791
|
-
return attributes;
|
|
10792
|
-
}
|
|
10793
|
-
/**
|
|
10794
|
-
* Transform CSS properties into a CSS string.
|
|
10795
|
-
*/
|
|
10796
|
-
function cssPropertiesToCss(attributes) {
|
|
10797
|
-
let styleStr = "";
|
|
10798
|
-
for (const attName in attributes) {
|
|
10799
|
-
if (!attributes[attName]) {
|
|
10800
|
-
continue;
|
|
10801
|
-
}
|
|
10802
|
-
styleStr += `${attName}:${attributes[attName]}; `;
|
|
10803
|
-
}
|
|
10804
|
-
return styleStr;
|
|
10805
|
-
}
|
|
10806
|
-
function getElementMargins(el) {
|
|
10807
|
-
const style = window.getComputedStyle(el);
|
|
10808
|
-
return {
|
|
10809
|
-
top: parseInt(style.marginTop, 10) || 0,
|
|
10810
|
-
bottom: parseInt(style.marginBottom, 10) || 0,
|
|
10811
|
-
left: parseInt(style.marginLeft, 10) || 0,
|
|
10812
|
-
right: parseInt(style.marginRight, 10) || 0,
|
|
10813
|
-
};
|
|
10814
|
-
}
|
|
10815
|
-
|
|
10816
10628
|
const chartJsExtensionRegistry = new Registry();
|
|
10817
10629
|
function areChartJSExtensionsLoaded() {
|
|
10818
10630
|
return !!window.Chart.registry.plugins.get("chartShowValuesPlugin");
|
|
@@ -16085,8 +15897,9 @@ function interactiveSort(env, sheetId, anchor, zone, sortDirection, sortOptions)
|
|
|
16085
15897
|
}
|
|
16086
15898
|
|
|
16087
15899
|
function sortMatrix(matrix, locale, ...criteria) {
|
|
16088
|
-
for (
|
|
16089
|
-
|
|
15900
|
+
for (let i = 0; i < criteria.length; i++) {
|
|
15901
|
+
const param = i % 2 === 0 ? "sort_column" : "is_ascending";
|
|
15902
|
+
assert(criteria[i] !== undefined, _t("Value for parameter %s is missing in [[FUNCTION_NAME]].", param));
|
|
16090
15903
|
}
|
|
16091
15904
|
const sortingOrders = [];
|
|
16092
15905
|
const sortColumns = [];
|
|
@@ -24034,15 +23847,6 @@ function getNextNonEmptyBar(bars, startIndex) {
|
|
|
24034
23847
|
return bars.find((bar, i) => i > startIndex && bar.height !== 0);
|
|
24035
23848
|
}
|
|
24036
23849
|
|
|
24037
|
-
css /* scss */ `
|
|
24038
|
-
.o-spreadsheet {
|
|
24039
|
-
.o-chart-custom-tooltip {
|
|
24040
|
-
font-size: 12px;
|
|
24041
|
-
background-color: #fff;
|
|
24042
|
-
z-index: ${ComponentsImportance.FigureTooltip};
|
|
24043
|
-
}
|
|
24044
|
-
}
|
|
24045
|
-
`;
|
|
24046
23850
|
chartJsExtensionRegistry.add("chartShowValuesPlugin", {
|
|
24047
23851
|
register: (Chart) => Chart.register(chartShowValuesPlugin),
|
|
24048
23852
|
unregister: (Chart) => Chart.unregister(chartShowValuesPlugin),
|
|
@@ -26761,7 +26565,7 @@ function getRadarChartScales(definition, args) {
|
|
|
26761
26565
|
},
|
|
26762
26566
|
pointLabels: {
|
|
26763
26567
|
color: chartFontColor(definition.background),
|
|
26764
|
-
callback: truncateLabel,
|
|
26568
|
+
callback: (label) => truncateLabel(label),
|
|
26765
26569
|
},
|
|
26766
26570
|
suggestedMin: minValue < 0 ? minValue - 1 : 0,
|
|
26767
26571
|
},
|
|
@@ -27782,13 +27586,6 @@ const zoomWindowPlugin = {
|
|
|
27782
27586
|
},
|
|
27783
27587
|
};
|
|
27784
27588
|
|
|
27785
|
-
css /* scss */ `
|
|
27786
|
-
.o-spreadsheet {
|
|
27787
|
-
.o-master-chart-container {
|
|
27788
|
-
height: ${MASTER_CHART_HEIGHT}px;
|
|
27789
|
-
}
|
|
27790
|
-
}
|
|
27791
|
-
`;
|
|
27792
27589
|
chartJsExtensionRegistry.add("zoomWindowPlugin", {
|
|
27793
27590
|
register: (Chart) => Chart.register(zoomWindowPlugin),
|
|
27794
27591
|
unregister: (Chart) => Chart.unregister(zoomWindowPlugin),
|
|
@@ -31599,6 +31396,81 @@ function getCarouselItemTitle(getters, item) {
|
|
|
31599
31396
|
return matchedChart.displayName;
|
|
31600
31397
|
}
|
|
31601
31398
|
|
|
31399
|
+
/**
|
|
31400
|
+
* This file is largely inspired by owl 1.
|
|
31401
|
+
* `css` tag has been removed from owl 2 without workaround to manage css.
|
|
31402
|
+
* So, the solution was to import the behavior of owl 1 directly in our
|
|
31403
|
+
* codebase, with one difference: the css is added to the sheet as soon as the
|
|
31404
|
+
* css tag is executed. In owl 1, the css was added as soon as a Component was
|
|
31405
|
+
* created for the first time.
|
|
31406
|
+
*/
|
|
31407
|
+
function getTextDecoration({ strikethrough, underline, }) {
|
|
31408
|
+
if (!strikethrough && !underline) {
|
|
31409
|
+
return "none";
|
|
31410
|
+
}
|
|
31411
|
+
return `${strikethrough ? "line-through" : ""} ${underline ? "underline" : ""}`;
|
|
31412
|
+
}
|
|
31413
|
+
/**
|
|
31414
|
+
* Convert the cell style to CSS properties.
|
|
31415
|
+
*/
|
|
31416
|
+
function cellStyleToCss(style) {
|
|
31417
|
+
const attributes = cellTextStyleToCss(style);
|
|
31418
|
+
if (!style)
|
|
31419
|
+
return attributes;
|
|
31420
|
+
if (style.fillColor) {
|
|
31421
|
+
attributes["background"] = style.fillColor;
|
|
31422
|
+
}
|
|
31423
|
+
return attributes;
|
|
31424
|
+
}
|
|
31425
|
+
/**
|
|
31426
|
+
* Convert the cell text style to CSS properties.
|
|
31427
|
+
*/
|
|
31428
|
+
function cellTextStyleToCss(style) {
|
|
31429
|
+
const attributes = {};
|
|
31430
|
+
if (!style)
|
|
31431
|
+
return attributes;
|
|
31432
|
+
if (style.bold) {
|
|
31433
|
+
attributes["font-weight"] = "bold";
|
|
31434
|
+
}
|
|
31435
|
+
if (style.italic) {
|
|
31436
|
+
attributes["font-style"] = "italic";
|
|
31437
|
+
}
|
|
31438
|
+
if (style.fontSize) {
|
|
31439
|
+
attributes["font-size"] = `${style.fontSize}px`;
|
|
31440
|
+
}
|
|
31441
|
+
if (style.strikethrough || style.underline) {
|
|
31442
|
+
let decoration = style.strikethrough ? "line-through" : "";
|
|
31443
|
+
decoration = style.underline ? decoration + " underline" : decoration;
|
|
31444
|
+
attributes["text-decoration"] = decoration;
|
|
31445
|
+
}
|
|
31446
|
+
if (style.textColor) {
|
|
31447
|
+
attributes["color"] = style.textColor;
|
|
31448
|
+
}
|
|
31449
|
+
return attributes;
|
|
31450
|
+
}
|
|
31451
|
+
/**
|
|
31452
|
+
* Transform CSS properties into a CSS string.
|
|
31453
|
+
*/
|
|
31454
|
+
function cssPropertiesToCss(attributes) {
|
|
31455
|
+
let styleStr = "";
|
|
31456
|
+
for (const attName in attributes) {
|
|
31457
|
+
if (!attributes[attName]) {
|
|
31458
|
+
continue;
|
|
31459
|
+
}
|
|
31460
|
+
styleStr += `${attName}:${attributes[attName]}; `;
|
|
31461
|
+
}
|
|
31462
|
+
return styleStr;
|
|
31463
|
+
}
|
|
31464
|
+
function getElementMargins(el) {
|
|
31465
|
+
const style = window.getComputedStyle(el);
|
|
31466
|
+
return {
|
|
31467
|
+
top: parseInt(style.marginTop, 10) || 0,
|
|
31468
|
+
bottom: parseInt(style.marginBottom, 10) || 0,
|
|
31469
|
+
left: parseInt(style.marginLeft, 10) || 0,
|
|
31470
|
+
right: parseInt(style.marginRight, 10) || 0,
|
|
31471
|
+
};
|
|
31472
|
+
}
|
|
31473
|
+
|
|
31602
31474
|
/**
|
|
31603
31475
|
* Repeatedly calls a callback function with a time delay between calls.
|
|
31604
31476
|
*/
|
|
@@ -31653,59 +31525,6 @@ function useTimeOut() {
|
|
|
31653
31525
|
};
|
|
31654
31526
|
}
|
|
31655
31527
|
|
|
31656
|
-
//------------------------------------------------------------------------------
|
|
31657
|
-
// Context Menu Component
|
|
31658
|
-
//------------------------------------------------------------------------------
|
|
31659
|
-
css /* scss */ `
|
|
31660
|
-
.o-menu {
|
|
31661
|
-
background-color: white;
|
|
31662
|
-
user-select: none;
|
|
31663
|
-
|
|
31664
|
-
.o-menu-item {
|
|
31665
|
-
height: ${DESKTOP_MENU_ITEM_HEIGHT}px;
|
|
31666
|
-
padding: ${MENU_ITEM_PADDING_VERTICAL}px ${MENU_ITEM_PADDING_HORIZONTAL}px;
|
|
31667
|
-
cursor: pointer;
|
|
31668
|
-
user-select: none;
|
|
31669
|
-
|
|
31670
|
-
.o-menu-item-name {
|
|
31671
|
-
min-width: 40%;
|
|
31672
|
-
}
|
|
31673
|
-
|
|
31674
|
-
.o-menu-item-icon {
|
|
31675
|
-
display: inline-block;
|
|
31676
|
-
margin: 0px 8px 0px 0px;
|
|
31677
|
-
width: ${DESKTOP_MENU_ITEM_HEIGHT - 2 * MENU_ITEM_PADDING_VERTICAL}px;
|
|
31678
|
-
line-height: ${DESKTOP_MENU_ITEM_HEIGHT - 2 * MENU_ITEM_PADDING_VERTICAL}px;
|
|
31679
|
-
}
|
|
31680
|
-
|
|
31681
|
-
&:not(.disabled) {
|
|
31682
|
-
&:hover,
|
|
31683
|
-
&.o-menu-item-active {
|
|
31684
|
-
background-color: ${BUTTON_ACTIVE_BG};
|
|
31685
|
-
color: ${BUTTON_ACTIVE_TEXT_COLOR};
|
|
31686
|
-
}
|
|
31687
|
-
.o-menu-item-description {
|
|
31688
|
-
color: grey;
|
|
31689
|
-
}
|
|
31690
|
-
.o-menu-item-icon {
|
|
31691
|
-
.o-icon {
|
|
31692
|
-
color: ${ICONS_COLOR};
|
|
31693
|
-
}
|
|
31694
|
-
}
|
|
31695
|
-
}
|
|
31696
|
-
&.disabled {
|
|
31697
|
-
color: ${DISABLED_TEXT_COLOR};
|
|
31698
|
-
cursor: not-allowed;
|
|
31699
|
-
}
|
|
31700
|
-
}
|
|
31701
|
-
}
|
|
31702
|
-
|
|
31703
|
-
.o-spreadsheet-mobile {
|
|
31704
|
-
.o-menu-item {
|
|
31705
|
-
height: ${MOBILE_MENU_ITEM_HEIGHT}px;
|
|
31706
|
-
}
|
|
31707
|
-
}
|
|
31708
|
-
`;
|
|
31709
31528
|
class Menu extends owl.Component {
|
|
31710
31529
|
static template = "o-spreadsheet-Menu";
|
|
31711
31530
|
static props = {
|
|
@@ -31882,16 +31701,6 @@ function usePopoverContainer() {
|
|
|
31882
31701
|
return container;
|
|
31883
31702
|
}
|
|
31884
31703
|
|
|
31885
|
-
css /* scss */ `
|
|
31886
|
-
.o-popover {
|
|
31887
|
-
position: absolute;
|
|
31888
|
-
z-index: ${ComponentsImportance.Popover};
|
|
31889
|
-
overflow: auto;
|
|
31890
|
-
box-shadow: 1px 2px 5px 2px rgb(51 51 51 / 15%);
|
|
31891
|
-
width: fit-content;
|
|
31892
|
-
height: fit-content;
|
|
31893
|
-
}
|
|
31894
|
-
`;
|
|
31895
31704
|
class Popover extends owl.Component {
|
|
31896
31705
|
static template = "o-spreadsheet-Popover";
|
|
31897
31706
|
static props = {
|
|
@@ -31914,7 +31723,6 @@ class Popover extends owl.Component {
|
|
|
31914
31723
|
onMouseWheel: () => { },
|
|
31915
31724
|
onPopoverMoved: () => { },
|
|
31916
31725
|
onPopoverHidden: () => { },
|
|
31917
|
-
zIndex: ComponentsImportance.Popover,
|
|
31918
31726
|
};
|
|
31919
31727
|
popoverRef = owl.useRef("popover");
|
|
31920
31728
|
popoverContentRef = owl.useRef("popoverContent");
|
|
@@ -31935,11 +31743,6 @@ class Popover extends owl.Component {
|
|
|
31935
31743
|
// the element in rendered, so we can still set its position
|
|
31936
31744
|
owl.useEffect(this.computePopoverPosition.bind(this));
|
|
31937
31745
|
}
|
|
31938
|
-
get popoverStyle() {
|
|
31939
|
-
return cssPropertiesToCss({
|
|
31940
|
-
"z-index": `${this.props.zIndex}`,
|
|
31941
|
-
});
|
|
31942
|
-
}
|
|
31943
31746
|
computePopoverPosition() {
|
|
31944
31747
|
if (!this.containerRect)
|
|
31945
31748
|
throw new Error("Popover container is not defined");
|
|
@@ -32130,12 +31933,6 @@ class TopRightPopoverContext extends PopoverPositionContext {
|
|
|
32130
31933
|
//------------------------------------------------------------------------------
|
|
32131
31934
|
// Context MenuPopover Component
|
|
32132
31935
|
//------------------------------------------------------------------------------
|
|
32133
|
-
css /* scss */ `
|
|
32134
|
-
.o-menu-wrapper {
|
|
32135
|
-
padding: ${MENU_VERTICAL_PADDING}px 0px;
|
|
32136
|
-
background-color: white;
|
|
32137
|
-
}
|
|
32138
|
-
`;
|
|
32139
31936
|
const TIMEOUT_DELAY = 250;
|
|
32140
31937
|
class MenuPopover extends owl.Component {
|
|
32141
31938
|
static template = "o-spreadsheet-Menu-Popover";
|
|
@@ -32440,13 +32237,13 @@ class CarouselFigure extends owl.Component {
|
|
|
32440
32237
|
}
|
|
32441
32238
|
get headerStyle() {
|
|
32442
32239
|
const cssProperties = {};
|
|
32443
|
-
if (this.selectedCarouselItem?.type === "
|
|
32444
|
-
cssProperties["background-color"] = "#ffffff";
|
|
32445
|
-
}
|
|
32446
|
-
else if (this.selectedCarouselItem?.type === "chart") {
|
|
32240
|
+
if (this.selectedCarouselItem?.type === "chart") {
|
|
32447
32241
|
const chart = this.env.model.getters.getChartRuntime(this.selectedCarouselItem.chartId);
|
|
32448
32242
|
cssProperties["background-color"] = chart.background;
|
|
32449
32243
|
}
|
|
32244
|
+
else {
|
|
32245
|
+
cssProperties["background-color"] = "#ffffff";
|
|
32246
|
+
}
|
|
32450
32247
|
return cssPropertiesToCss(cssProperties);
|
|
32451
32248
|
}
|
|
32452
32249
|
get title() {
|
|
@@ -32576,79 +32373,6 @@ figureRegistry.add("carousel", {
|
|
|
32576
32373
|
const ANCHOR_SIZE = 8;
|
|
32577
32374
|
const BORDER_WIDTH = 1;
|
|
32578
32375
|
const ACTIVE_BORDER_WIDTH = 2;
|
|
32579
|
-
css /*SCSS*/ `
|
|
32580
|
-
div.o-figure {
|
|
32581
|
-
position: absolute;
|
|
32582
|
-
width: 100%;
|
|
32583
|
-
height: 100%;
|
|
32584
|
-
user-select: none;
|
|
32585
|
-
|
|
32586
|
-
&:focus {
|
|
32587
|
-
outline: none;
|
|
32588
|
-
}
|
|
32589
|
-
}
|
|
32590
|
-
|
|
32591
|
-
div.o-figure-border {
|
|
32592
|
-
z-index: 1;
|
|
32593
|
-
}
|
|
32594
|
-
|
|
32595
|
-
.o-figure-wrapper {
|
|
32596
|
-
position: absolute;
|
|
32597
|
-
box-sizing: content-box;
|
|
32598
|
-
pointer-events: auto;
|
|
32599
|
-
|
|
32600
|
-
.o-fig-anchor {
|
|
32601
|
-
z-index: ${ComponentsImportance.FigureAnchor};
|
|
32602
|
-
position: absolute;
|
|
32603
|
-
width: ${ANCHOR_SIZE}px;
|
|
32604
|
-
height: ${ANCHOR_SIZE}px;
|
|
32605
|
-
background-color: #1a73e8;
|
|
32606
|
-
outline: ${BORDER_WIDTH}px solid white;
|
|
32607
|
-
|
|
32608
|
-
&.o-top {
|
|
32609
|
-
cursor: n-resize;
|
|
32610
|
-
}
|
|
32611
|
-
&.o-topRight {
|
|
32612
|
-
cursor: ne-resize;
|
|
32613
|
-
}
|
|
32614
|
-
&.o-right {
|
|
32615
|
-
cursor: e-resize;
|
|
32616
|
-
}
|
|
32617
|
-
&.o-bottomRight {
|
|
32618
|
-
cursor: se-resize;
|
|
32619
|
-
}
|
|
32620
|
-
&.o-bottom {
|
|
32621
|
-
cursor: s-resize;
|
|
32622
|
-
}
|
|
32623
|
-
&.o-bottomLeft {
|
|
32624
|
-
cursor: sw-resize;
|
|
32625
|
-
}
|
|
32626
|
-
&.o-left {
|
|
32627
|
-
cursor: w-resize;
|
|
32628
|
-
}
|
|
32629
|
-
&.o-topLeft {
|
|
32630
|
-
cursor: nw-resize;
|
|
32631
|
-
}
|
|
32632
|
-
}
|
|
32633
|
-
|
|
32634
|
-
.o-figure-menu {
|
|
32635
|
-
right: 0px;
|
|
32636
|
-
top: 0px;
|
|
32637
|
-
display: none;
|
|
32638
|
-
}
|
|
32639
|
-
|
|
32640
|
-
.o-figure-menu-item {
|
|
32641
|
-
cursor: pointer;
|
|
32642
|
-
}
|
|
32643
|
-
|
|
32644
|
-
.o-figure.active:focus,
|
|
32645
|
-
.o-figure:hover {
|
|
32646
|
-
.o-figure-menu {
|
|
32647
|
-
display: flex;
|
|
32648
|
-
}
|
|
32649
|
-
}
|
|
32650
|
-
}
|
|
32651
|
-
`;
|
|
32652
32376
|
class FigureComponent extends owl.Component {
|
|
32653
32377
|
static template = "o-spreadsheet-FigureComponent";
|
|
32654
32378
|
static props = {
|
|
@@ -32693,7 +32417,6 @@ class FigureComponent extends owl.Component {
|
|
|
32693
32417
|
top: `${y}px`,
|
|
32694
32418
|
width: `${width}px`,
|
|
32695
32419
|
height: `${height}px`,
|
|
32696
|
-
"z-index": String(ComponentsImportance.Figure + (this.isSelected ? 1 : 0)),
|
|
32697
32420
|
});
|
|
32698
32421
|
}
|
|
32699
32422
|
getResizerPosition(resizer) {
|
|
@@ -32972,21 +32695,6 @@ class CellPopoverStore extends SpreadsheetStore {
|
|
|
32972
32695
|
}
|
|
32973
32696
|
|
|
32974
32697
|
const ERROR_TOOLTIP_MAX_HEIGHT = 80;
|
|
32975
|
-
const ERROR_TOOLTIP_WIDTH = 180;
|
|
32976
|
-
css /* scss */ `
|
|
32977
|
-
.o-error-tooltip {
|
|
32978
|
-
font-size: 13px;
|
|
32979
|
-
background-color: white;
|
|
32980
|
-
border-left: 3px solid red;
|
|
32981
|
-
padding: 10px;
|
|
32982
|
-
width: ${ERROR_TOOLTIP_WIDTH}px;
|
|
32983
|
-
overflow-wrap: break-word;
|
|
32984
|
-
|
|
32985
|
-
.o-error-tooltip-message {
|
|
32986
|
-
overflow: hidden;
|
|
32987
|
-
}
|
|
32988
|
-
}
|
|
32989
|
-
`;
|
|
32990
32698
|
class ErrorToolTip extends owl.Component {
|
|
32991
32699
|
static maxSize = { maxHeight: ERROR_TOOLTIP_MAX_HEIGHT };
|
|
32992
32700
|
static template = "o-spreadsheet-ErrorToolTip";
|
|
@@ -33087,34 +32795,6 @@ class Collapse extends owl.Component {
|
|
|
33087
32795
|
}
|
|
33088
32796
|
}
|
|
33089
32797
|
|
|
33090
|
-
css /* scss */ `
|
|
33091
|
-
.o_side_panel_collapsible_title {
|
|
33092
|
-
font-size: 16px;
|
|
33093
|
-
cursor: pointer;
|
|
33094
|
-
padding: 6px 0px 6px 6px !important;
|
|
33095
|
-
|
|
33096
|
-
.collapsor-arrow {
|
|
33097
|
-
transform: rotate(-90deg);
|
|
33098
|
-
display: inline-block;
|
|
33099
|
-
transform-origin: 8px 11px;
|
|
33100
|
-
transition: transform 0.2s ease-in-out;
|
|
33101
|
-
|
|
33102
|
-
.o-icon {
|
|
33103
|
-
width: 16px;
|
|
33104
|
-
height: 22px;
|
|
33105
|
-
}
|
|
33106
|
-
}
|
|
33107
|
-
.collapsor:not(.collapsed) .collapsor-arrow {
|
|
33108
|
-
transform: rotate(0);
|
|
33109
|
-
}
|
|
33110
|
-
|
|
33111
|
-
.collapsor {
|
|
33112
|
-
width: 100%;
|
|
33113
|
-
transition-delay: 0.35s;
|
|
33114
|
-
transition-property: all;
|
|
33115
|
-
}
|
|
33116
|
-
}
|
|
33117
|
-
`;
|
|
33118
32798
|
class SidePanelCollapsible extends owl.Component {
|
|
33119
32799
|
static template = "o-spreadsheet-SidePanelCollapsible";
|
|
33120
32800
|
static props = {
|
|
@@ -33751,27 +33431,6 @@ function updateSelectionWithArrowKeys(ev, selection) {
|
|
|
33751
33431
|
}
|
|
33752
33432
|
}
|
|
33753
33433
|
|
|
33754
|
-
css /* scss */ `
|
|
33755
|
-
.o-autocomplete-dropdown {
|
|
33756
|
-
pointer-events: auto;
|
|
33757
|
-
cursor: pointer;
|
|
33758
|
-
background-color: #fff;
|
|
33759
|
-
max-width: 400px;
|
|
33760
|
-
z-index: 1;
|
|
33761
|
-
|
|
33762
|
-
.o-autocomplete-value-focus {
|
|
33763
|
-
background-color: #f2f2f2;
|
|
33764
|
-
}
|
|
33765
|
-
|
|
33766
|
-
& > div {
|
|
33767
|
-
padding: 1px 5px 5px 5px;
|
|
33768
|
-
.o-autocomplete-description {
|
|
33769
|
-
padding-left: 5px;
|
|
33770
|
-
font-size: 11px;
|
|
33771
|
-
}
|
|
33772
|
-
}
|
|
33773
|
-
}
|
|
33774
|
-
`;
|
|
33775
33434
|
class TextValueProvider extends owl.Component {
|
|
33776
33435
|
static template = "o-spreadsheet-TextValueProvider";
|
|
33777
33436
|
static props = {
|
|
@@ -34073,36 +33732,6 @@ class FunctionDescriptionProvider extends owl.Component {
|
|
|
34073
33732
|
}
|
|
34074
33733
|
|
|
34075
33734
|
const BUBBLE_ARROW_SIZE = 7;
|
|
34076
|
-
css /* scss */ `
|
|
34077
|
-
.o-spreadsheet {
|
|
34078
|
-
.o-speech-bubble {
|
|
34079
|
-
background-color: white;
|
|
34080
|
-
box-sizing: border-box;
|
|
34081
|
-
box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
|
|
34082
|
-
border: 1px solid #ccc;
|
|
34083
|
-
z-index: ${ComponentsImportance.Popover};
|
|
34084
|
-
|
|
34085
|
-
&::after {
|
|
34086
|
-
content: "";
|
|
34087
|
-
position: absolute;
|
|
34088
|
-
top: 100%;
|
|
34089
|
-
left: 50%;
|
|
34090
|
-
background-color: white;
|
|
34091
|
-
height: ${BUBBLE_ARROW_SIZE}px;
|
|
34092
|
-
width: ${BUBBLE_ARROW_SIZE}px;
|
|
34093
|
-
transform-origin: top left;
|
|
34094
|
-
transform: translate(0, -67%) rotate(45deg);
|
|
34095
|
-
border-right: 1px solid #ccc;
|
|
34096
|
-
border-bottom: 1px solid #ccc;
|
|
34097
|
-
box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
|
|
34098
|
-
}
|
|
34099
|
-
}
|
|
34100
|
-
|
|
34101
|
-
.o-speech-content {
|
|
34102
|
-
max-width: 300px;
|
|
34103
|
-
}
|
|
34104
|
-
}
|
|
34105
|
-
`;
|
|
34106
33735
|
class SpeechBubble extends owl.Component {
|
|
34107
33736
|
static template = "o-spreadsheet-SpeechBubble";
|
|
34108
33737
|
static props = { content: String, anchorRect: Object };
|
|
@@ -34131,85 +33760,6 @@ const CLOSE_ICON_RADIUS = 9;
|
|
|
34131
33760
|
const selectionIndicatorClass = "selector-flag";
|
|
34132
33761
|
const highlightParenthesisClass = "highlight-parenthesis-flag";
|
|
34133
33762
|
const highlightClass = "highlight-flag";
|
|
34134
|
-
const selectionIndicatorColor = "#a9a9a9";
|
|
34135
|
-
const selectionIndicator = "␣";
|
|
34136
|
-
css /* scss */ `
|
|
34137
|
-
.o-composer-container {
|
|
34138
|
-
.o-composer {
|
|
34139
|
-
overflow-y: auto;
|
|
34140
|
-
overflow-x: hidden;
|
|
34141
|
-
word-break: break-all;
|
|
34142
|
-
padding-right: 2px;
|
|
34143
|
-
|
|
34144
|
-
caret-color: black;
|
|
34145
|
-
padding-left: 3px;
|
|
34146
|
-
padding-right: 3px;
|
|
34147
|
-
outline: none;
|
|
34148
|
-
|
|
34149
|
-
tab-size: 4;
|
|
34150
|
-
|
|
34151
|
-
p {
|
|
34152
|
-
margin-bottom: 0px;
|
|
34153
|
-
|
|
34154
|
-
span {
|
|
34155
|
-
white-space: pre-wrap;
|
|
34156
|
-
/* On some browsers (chromium ?) it is somehow possible to hover two of the composer's spans at the same time, leading to
|
|
34157
|
-
* flickering with a succession of onmouseenter/onmouseleave events. A small invisible padding seems to prevent the issue.*/
|
|
34158
|
-
padding-left: 0.01px;
|
|
34159
|
-
|
|
34160
|
-
&.${selectionIndicatorClass}:after {
|
|
34161
|
-
content: "${selectionIndicator}";
|
|
34162
|
-
color: ${selectionIndicatorColor};
|
|
34163
|
-
}
|
|
34164
|
-
|
|
34165
|
-
&.${highlightParenthesisClass}:not(.${highlightClass}) {
|
|
34166
|
-
border-radius: 5px;
|
|
34167
|
-
background-color: lightgray;
|
|
34168
|
-
padding: 1.5px 0px 1.5px 0px;
|
|
34169
|
-
}
|
|
34170
|
-
|
|
34171
|
-
&.${highlightClass} {
|
|
34172
|
-
background-color: #e6edf3;
|
|
34173
|
-
}
|
|
34174
|
-
}
|
|
34175
|
-
}
|
|
34176
|
-
}
|
|
34177
|
-
.o-composer[placeholder]:empty:not(:focus):not(.active)::before {
|
|
34178
|
-
content: attr(placeholder);
|
|
34179
|
-
color: #bdbdbd;
|
|
34180
|
-
position: relative;
|
|
34181
|
-
top: 0%;
|
|
34182
|
-
pointer-events: none;
|
|
34183
|
-
}
|
|
34184
|
-
|
|
34185
|
-
.fa-stack {
|
|
34186
|
-
/* reset stack size which is doubled by default */
|
|
34187
|
-
width: ${CLOSE_ICON_RADIUS * 2}px;
|
|
34188
|
-
height: ${CLOSE_ICON_RADIUS * 2}px;
|
|
34189
|
-
line-height: ${CLOSE_ICON_RADIUS * 2}px;
|
|
34190
|
-
}
|
|
34191
|
-
|
|
34192
|
-
.force-open-assistant {
|
|
34193
|
-
left: -1px;
|
|
34194
|
-
top: -1px;
|
|
34195
|
-
|
|
34196
|
-
.fa-question-circle {
|
|
34197
|
-
color: ${PRIMARY_BUTTON_BG};
|
|
34198
|
-
}
|
|
34199
|
-
}
|
|
34200
|
-
|
|
34201
|
-
.o-composer-assistant {
|
|
34202
|
-
margin-top: 1px;
|
|
34203
|
-
|
|
34204
|
-
.o-semi-bold {
|
|
34205
|
-
/* FIXME: to remove in favor of Bootstrap
|
|
34206
|
-
* 'fw-semibold' when we upgrade to Bootstrap 5.2
|
|
34207
|
-
*/
|
|
34208
|
-
font-weight: 600 !important;
|
|
34209
|
-
}
|
|
34210
|
-
}
|
|
34211
|
-
}
|
|
34212
|
-
`;
|
|
34213
33763
|
class Composer extends owl.Component {
|
|
34214
33764
|
static template = "o-spreadsheet-Composer";
|
|
34215
33765
|
static props = {
|
|
@@ -35882,30 +35432,6 @@ class StandaloneComposerStore extends AbstractComposerStore {
|
|
|
35882
35432
|
}
|
|
35883
35433
|
}
|
|
35884
35434
|
|
|
35885
|
-
css /* scss */ `
|
|
35886
|
-
.o-spreadsheet {
|
|
35887
|
-
.o-standalone-composer {
|
|
35888
|
-
min-height: 24px;
|
|
35889
|
-
|
|
35890
|
-
border-bottom: 1px solid;
|
|
35891
|
-
border-color: ${GRAY_300};
|
|
35892
|
-
|
|
35893
|
-
&.active {
|
|
35894
|
-
border-color: ${ACTION_COLOR};
|
|
35895
|
-
}
|
|
35896
|
-
|
|
35897
|
-
&.o-invalid {
|
|
35898
|
-
border-bottom: 2px solid red;
|
|
35899
|
-
}
|
|
35900
|
-
|
|
35901
|
-
/* As the standalone composer is potentially very small (eg. in a side panel), we remove the scrollbar display */
|
|
35902
|
-
scrollbar-width: none; /* Firefox */
|
|
35903
|
-
&::-webkit-scrollbar {
|
|
35904
|
-
display: none;
|
|
35905
|
-
}
|
|
35906
|
-
}
|
|
35907
|
-
}
|
|
35908
|
-
`;
|
|
35909
35435
|
class StandaloneComposer extends owl.Component {
|
|
35910
35436
|
static template = "o-spreadsheet-StandaloneComposer";
|
|
35911
35437
|
static props = {
|
|
@@ -35973,17 +35499,6 @@ class StandaloneComposer extends owl.Component {
|
|
|
35973
35499
|
}
|
|
35974
35500
|
}
|
|
35975
35501
|
|
|
35976
|
-
css /* scss */ `
|
|
35977
|
-
.o-dv-input {
|
|
35978
|
-
&.o-invalid {
|
|
35979
|
-
background-color: #ffdddd;
|
|
35980
|
-
}
|
|
35981
|
-
.error-icon {
|
|
35982
|
-
right: 7px;
|
|
35983
|
-
top: 7px;
|
|
35984
|
-
}
|
|
35985
|
-
}
|
|
35986
|
-
`;
|
|
35987
35502
|
class CriterionInput extends owl.Component {
|
|
35988
35503
|
static template = "o-spreadsheet-CriterionInput";
|
|
35989
35504
|
static props = {
|
|
@@ -36151,8 +35666,6 @@ function startDnd(onPointerMove, onPointerUp) {
|
|
|
36151
35666
|
return removeListeners;
|
|
36152
35667
|
}
|
|
36153
35668
|
|
|
36154
|
-
const LINE_VERTICAL_PADDING = 1;
|
|
36155
|
-
const PICKER_PADDING = 8;
|
|
36156
35669
|
const ITEM_BORDER_WIDTH = 1;
|
|
36157
35670
|
const ITEM_EDGE_LENGTH = 18;
|
|
36158
35671
|
const ITEMS_PER_LINE = 10;
|
|
@@ -36161,170 +35674,6 @@ const ITEM_GAP = 2;
|
|
|
36161
35674
|
const CONTENT_WIDTH = ITEMS_PER_LINE * (ITEM_EDGE_LENGTH + 2 * ITEM_BORDER_WIDTH) + (ITEMS_PER_LINE - 1) * ITEM_GAP;
|
|
36162
35675
|
const INNER_GRADIENT_WIDTH = CONTENT_WIDTH - 2 * ITEM_BORDER_WIDTH;
|
|
36163
35676
|
const INNER_GRADIENT_HEIGHT = CONTENT_WIDTH - 30 - 2 * ITEM_BORDER_WIDTH;
|
|
36164
|
-
const CONTAINER_WIDTH = CONTENT_WIDTH + 2 * PICKER_PADDING;
|
|
36165
|
-
css /* scss */ `
|
|
36166
|
-
.o-color-picker {
|
|
36167
|
-
padding: ${PICKER_PADDING}px 0;
|
|
36168
|
-
/* FIXME: this is useless, overiden by the popover container */
|
|
36169
|
-
box-shadow: 1px 2px 5px 2px rgba(51, 51, 51, 0.15);
|
|
36170
|
-
background-color: white;
|
|
36171
|
-
line-height: 1.2;
|
|
36172
|
-
overflow-y: auto;
|
|
36173
|
-
overflow-x: hidden;
|
|
36174
|
-
width: ${CONTAINER_WIDTH}px;
|
|
36175
|
-
|
|
36176
|
-
.o-color-picker-section-name {
|
|
36177
|
-
margin: 0px ${ITEM_BORDER_WIDTH}px;
|
|
36178
|
-
padding: 4px ${PICKER_PADDING}px;
|
|
36179
|
-
}
|
|
36180
|
-
.colors-grid {
|
|
36181
|
-
display: grid;
|
|
36182
|
-
padding: ${LINE_VERTICAL_PADDING}px ${PICKER_PADDING}px;
|
|
36183
|
-
grid-template-columns: repeat(${ITEMS_PER_LINE}, 1fr);
|
|
36184
|
-
grid-gap: ${ITEM_GAP}px;
|
|
36185
|
-
}
|
|
36186
|
-
.o-color-picker-toggler-button {
|
|
36187
|
-
display: flex;
|
|
36188
|
-
.o-color-picker-toggler-sign {
|
|
36189
|
-
display: flex;
|
|
36190
|
-
margin: auto auto;
|
|
36191
|
-
width: 55%;
|
|
36192
|
-
height: 55%;
|
|
36193
|
-
.o-icon {
|
|
36194
|
-
width: 100%;
|
|
36195
|
-
height: 100%;
|
|
36196
|
-
}
|
|
36197
|
-
}
|
|
36198
|
-
}
|
|
36199
|
-
.o-color-picker-line-item {
|
|
36200
|
-
width: ${ITEM_EDGE_LENGTH + 2 * ITEM_BORDER_WIDTH}px;
|
|
36201
|
-
height: ${ITEM_EDGE_LENGTH + 2 * ITEM_BORDER_WIDTH}px;
|
|
36202
|
-
margin: 0px;
|
|
36203
|
-
border-radius: 50px;
|
|
36204
|
-
border: ${ITEM_BORDER_WIDTH}px solid #666666;
|
|
36205
|
-
padding: 0px;
|
|
36206
|
-
font-size: 16px;
|
|
36207
|
-
background: white;
|
|
36208
|
-
&:hover {
|
|
36209
|
-
background-color: rgba(0, 0, 0, 0.08);
|
|
36210
|
-
outline: 1px solid gray;
|
|
36211
|
-
cursor: pointer;
|
|
36212
|
-
}
|
|
36213
|
-
}
|
|
36214
|
-
.o-buttons {
|
|
36215
|
-
padding: ${PICKER_PADDING}px;
|
|
36216
|
-
display: flex;
|
|
36217
|
-
.o-cancel {
|
|
36218
|
-
border: ${ITEM_BORDER_WIDTH}px solid #c0c0c0;
|
|
36219
|
-
width: 100%;
|
|
36220
|
-
padding: 5px;
|
|
36221
|
-
font-size: 14px;
|
|
36222
|
-
background: white;
|
|
36223
|
-
border-radius: 4px;
|
|
36224
|
-
&:hover:enabled {
|
|
36225
|
-
background-color: rgba(0, 0, 0, 0.08);
|
|
36226
|
-
}
|
|
36227
|
-
}
|
|
36228
|
-
}
|
|
36229
|
-
.o-add-button {
|
|
36230
|
-
border: ${ITEM_BORDER_WIDTH}px solid #c0c0c0;
|
|
36231
|
-
padding: 4px;
|
|
36232
|
-
background: white;
|
|
36233
|
-
border-radius: 4px;
|
|
36234
|
-
&:hover:enabled {
|
|
36235
|
-
background-color: rgba(0, 0, 0, 0.08);
|
|
36236
|
-
}
|
|
36237
|
-
}
|
|
36238
|
-
.o-separator {
|
|
36239
|
-
border-bottom: ${MENU_SEPARATOR_BORDER_WIDTH}px solid ${SEPARATOR_COLOR};
|
|
36240
|
-
margin-top: ${MENU_SEPARATOR_PADDING}px;
|
|
36241
|
-
margin-bottom: ${MENU_SEPARATOR_PADDING}px;
|
|
36242
|
-
}
|
|
36243
|
-
|
|
36244
|
-
.o-custom-selector {
|
|
36245
|
-
padding: ${PICKER_PADDING + 2}px ${PICKER_PADDING}px;
|
|
36246
|
-
position: relative;
|
|
36247
|
-
.o-gradient {
|
|
36248
|
-
margin-bottom: ${MAGNIFIER_EDGE / 2}px;
|
|
36249
|
-
border: ${ITEM_BORDER_WIDTH}px solid #c0c0c0;
|
|
36250
|
-
width: ${INNER_GRADIENT_WIDTH + 2 * ITEM_BORDER_WIDTH}px;
|
|
36251
|
-
height: ${INNER_GRADIENT_HEIGHT + 2 * ITEM_BORDER_WIDTH}px;
|
|
36252
|
-
position: relative;
|
|
36253
|
-
}
|
|
36254
|
-
|
|
36255
|
-
.magnifier {
|
|
36256
|
-
height: ${MAGNIFIER_EDGE}px;
|
|
36257
|
-
width: ${MAGNIFIER_EDGE}px;
|
|
36258
|
-
border-radius: 50%;
|
|
36259
|
-
border: 2px solid #fff;
|
|
36260
|
-
box-shadow: 0px 0px 3px #c0c0c0;
|
|
36261
|
-
position: absolute;
|
|
36262
|
-
z-index: 2;
|
|
36263
|
-
}
|
|
36264
|
-
.saturation {
|
|
36265
|
-
background: linear-gradient(to right, #fff 0%, transparent 100%);
|
|
36266
|
-
}
|
|
36267
|
-
.lightness {
|
|
36268
|
-
background: linear-gradient(to top, #000 0%, transparent 100%);
|
|
36269
|
-
}
|
|
36270
|
-
.o-hue-picker {
|
|
36271
|
-
border: ${ITEM_BORDER_WIDTH}px solid #c0c0c0;
|
|
36272
|
-
width: 100%;
|
|
36273
|
-
height: 12px;
|
|
36274
|
-
border-radius: 4px;
|
|
36275
|
-
background: linear-gradient(
|
|
36276
|
-
to right,
|
|
36277
|
-
hsl(0 100% 50%) 0%,
|
|
36278
|
-
hsl(0.2turn 100% 50%) 20%,
|
|
36279
|
-
hsl(0.3turn 100% 50%) 30%,
|
|
36280
|
-
hsl(0.4turn 100% 50%) 40%,
|
|
36281
|
-
hsl(0.5turn 100% 50%) 50%,
|
|
36282
|
-
hsl(0.6turn 100% 50%) 60%,
|
|
36283
|
-
hsl(0.7turn 100% 50%) 70%,
|
|
36284
|
-
hsl(0.8turn 100% 50%) 80%,
|
|
36285
|
-
hsl(0.9turn 100% 50%) 90%,
|
|
36286
|
-
hsl(1turn 100% 50%) 100%
|
|
36287
|
-
);
|
|
36288
|
-
position: relative;
|
|
36289
|
-
cursor: crosshair;
|
|
36290
|
-
}
|
|
36291
|
-
.o-hue-slider {
|
|
36292
|
-
margin-top: -3px;
|
|
36293
|
-
}
|
|
36294
|
-
.o-custom-input-preview {
|
|
36295
|
-
padding: 2px 0px;
|
|
36296
|
-
display: flex;
|
|
36297
|
-
input {
|
|
36298
|
-
width: 50%;
|
|
36299
|
-
border-radius: 4px;
|
|
36300
|
-
padding: 4px 23px 4px 10px;
|
|
36301
|
-
height: 24px;
|
|
36302
|
-
border: 1px solid #c0c0c0;
|
|
36303
|
-
margin-right: 2px;
|
|
36304
|
-
}
|
|
36305
|
-
.o-wrong-color {
|
|
36306
|
-
/* FIXME bootstrap class instead? */
|
|
36307
|
-
outline-color: red;
|
|
36308
|
-
border-color: red;
|
|
36309
|
-
&:focus {
|
|
36310
|
-
outline-style: solid;
|
|
36311
|
-
outline-width: 1px;
|
|
36312
|
-
}
|
|
36313
|
-
}
|
|
36314
|
-
}
|
|
36315
|
-
.o-custom-input-buttons {
|
|
36316
|
-
padding: 2px 0px;
|
|
36317
|
-
display: flex;
|
|
36318
|
-
justify-content: end;
|
|
36319
|
-
}
|
|
36320
|
-
.o-color-preview {
|
|
36321
|
-
border: 1px solid #c0c0c0;
|
|
36322
|
-
border-radius: 4px;
|
|
36323
|
-
width: 50%;
|
|
36324
|
-
}
|
|
36325
|
-
}
|
|
36326
|
-
}
|
|
36327
|
-
`;
|
|
36328
35677
|
class ColorPicker extends owl.Component {
|
|
36329
35678
|
static template = "o-spreadsheet-ColorPicker";
|
|
36330
35679
|
static props = {
|
|
@@ -36479,21 +35828,12 @@ class Section extends owl.Component {
|
|
|
36479
35828
|
};
|
|
36480
35829
|
}
|
|
36481
35830
|
|
|
36482
|
-
|
|
36483
|
-
|
|
36484
|
-
|
|
36485
|
-
|
|
36486
|
-
|
|
36487
|
-
|
|
36488
|
-
.o-round-color-picker-button {
|
|
36489
|
-
width: 20px;
|
|
36490
|
-
height: 20px;
|
|
36491
|
-
cursor: pointer;
|
|
36492
|
-
border: 1px solid ${GRAY_300};
|
|
36493
|
-
background-position: 1px 1px;
|
|
36494
|
-
background-image: url("data:image/svg+xml,${encodeURIComponent(TRANSPARENT_BACKGROUND_SVG)}");
|
|
36495
|
-
}
|
|
36496
|
-
`;
|
|
35831
|
+
// FIXME Encoding version used in css
|
|
35832
|
+
// const TRANSPARENT_BACKGROUND_SVG = /*xml*/ `
|
|
35833
|
+
// <svg xmlns="http://www.w3.org/2000/svg" width="10" height="10">
|
|
35834
|
+
// <path fill="#d9d9d9" d="M5 5h5v5H5zH0V0h5"/>
|
|
35835
|
+
// </svg>
|
|
35836
|
+
// `;
|
|
36497
35837
|
class RoundColorPicker extends owl.Component {
|
|
36498
35838
|
static template = "o-spreadsheet.RoundColorPicker";
|
|
36499
35839
|
static components = { Section, ColorPicker };
|
|
@@ -36530,12 +35870,6 @@ class RoundColorPicker extends owl.Component {
|
|
|
36530
35870
|
}
|
|
36531
35871
|
}
|
|
36532
35872
|
|
|
36533
|
-
css /* scss */ `
|
|
36534
|
-
.o-dv-list-item-delete {
|
|
36535
|
-
color: #666666;
|
|
36536
|
-
cursor: pointer;
|
|
36537
|
-
}
|
|
36538
|
-
`;
|
|
36539
35873
|
class ListCriterionForm extends CriterionForm {
|
|
36540
35874
|
static template = "o-spreadsheet-ListCriterionForm";
|
|
36541
35875
|
static components = { CriterionInput, RoundColorPicker };
|
|
@@ -37249,36 +36583,6 @@ class SelectionInputStore extends SpreadsheetStore {
|
|
|
37249
36583
|
}
|
|
37250
36584
|
}
|
|
37251
36585
|
|
|
37252
|
-
css /* scss */ `
|
|
37253
|
-
.o-selection {
|
|
37254
|
-
.o-selection-input {
|
|
37255
|
-
padding: 2px 0px;
|
|
37256
|
-
|
|
37257
|
-
input.o-invalid {
|
|
37258
|
-
background-color: ${ALERT_DANGER_BG};
|
|
37259
|
-
}
|
|
37260
|
-
.input-icon {
|
|
37261
|
-
right: 7px;
|
|
37262
|
-
top: 4px;
|
|
37263
|
-
}
|
|
37264
|
-
.o-drag-handle {
|
|
37265
|
-
cursor: move;
|
|
37266
|
-
}
|
|
37267
|
-
}
|
|
37268
|
-
.o-disabled-ranges {
|
|
37269
|
-
color: #888 !important;
|
|
37270
|
-
}
|
|
37271
|
-
.o-button {
|
|
37272
|
-
flex-grow: 0;
|
|
37273
|
-
}
|
|
37274
|
-
|
|
37275
|
-
/* Make the character a bit bigger
|
|
37276
|
-
compared to its neighbor INPUT box */
|
|
37277
|
-
.o-remove-selection {
|
|
37278
|
-
font-size: calc(100% + 4px);
|
|
37279
|
-
}
|
|
37280
|
-
}
|
|
37281
|
-
`;
|
|
37282
36586
|
/**
|
|
37283
36587
|
* This component can be used when the user needs to input some
|
|
37284
36588
|
* ranges. He can either input the ranges with the regular DOM `<input/>`
|
|
@@ -37777,44 +37081,6 @@ class FilterMenuCriterion extends owl.Component {
|
|
|
37777
37081
|
}
|
|
37778
37082
|
}
|
|
37779
37083
|
|
|
37780
|
-
const CHECK_SVG = /*xml*/ `
|
|
37781
|
-
<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'>
|
|
37782
|
-
<path fill='none' stroke='#FFF' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/>
|
|
37783
|
-
</svg>
|
|
37784
|
-
`;
|
|
37785
|
-
const CHECKBOX_WIDTH = 14;
|
|
37786
|
-
css /* scss */ `
|
|
37787
|
-
label.o-checkbox {
|
|
37788
|
-
input {
|
|
37789
|
-
appearance: none;
|
|
37790
|
-
-webkit-appearance: none;
|
|
37791
|
-
-moz-appearance: none;
|
|
37792
|
-
border-radius: 0;
|
|
37793
|
-
width: ${CHECKBOX_WIDTH}px;
|
|
37794
|
-
height: ${CHECKBOX_WIDTH}px;
|
|
37795
|
-
vertical-align: top;
|
|
37796
|
-
outline: none;
|
|
37797
|
-
border: 1px solid ${GRAY_300};
|
|
37798
|
-
cursor: pointer;
|
|
37799
|
-
|
|
37800
|
-
&:hover {
|
|
37801
|
-
border-color: ${ACTION_COLOR};
|
|
37802
|
-
}
|
|
37803
|
-
|
|
37804
|
-
&:checked {
|
|
37805
|
-
background: url("data:image/svg+xml,${encodeURIComponent(CHECK_SVG)}");
|
|
37806
|
-
background-color: ${ACTION_COLOR};
|
|
37807
|
-
border-color: ${ACTION_COLOR};
|
|
37808
|
-
}
|
|
37809
|
-
|
|
37810
|
-
&:focus {
|
|
37811
|
-
outline: none;
|
|
37812
|
-
box-shadow: 0 0 0 0.25rem rgba(113, 75, 103, 0.25);
|
|
37813
|
-
border-color: ${ACTION_COLOR};
|
|
37814
|
-
}
|
|
37815
|
-
}
|
|
37816
|
-
}
|
|
37817
|
-
`;
|
|
37818
37084
|
class Checkbox extends owl.Component {
|
|
37819
37085
|
static template = "o-spreadsheet.Checkbox";
|
|
37820
37086
|
static props = {
|
|
@@ -38022,60 +37288,6 @@ class FilterMenuValueList extends owl.Component {
|
|
|
38022
37288
|
}
|
|
38023
37289
|
}
|
|
38024
37290
|
|
|
38025
|
-
css /* scss */ `
|
|
38026
|
-
.o-filter-menu {
|
|
38027
|
-
width: 245px;
|
|
38028
|
-
padding: 8px 0;
|
|
38029
|
-
user-select: none;
|
|
38030
|
-
|
|
38031
|
-
.o-filter-menu-content {
|
|
38032
|
-
padding: 0 16px;
|
|
38033
|
-
}
|
|
38034
|
-
|
|
38035
|
-
.o-sort-item {
|
|
38036
|
-
padding-left: 34px;
|
|
38037
|
-
}
|
|
38038
|
-
|
|
38039
|
-
.o_side_panel_collapsible_title {
|
|
38040
|
-
font-size: inherit;
|
|
38041
|
-
padding: 0 0 4px 0 !important;
|
|
38042
|
-
font-weight: 400 !important;
|
|
38043
|
-
|
|
38044
|
-
.collapsor .o-icon {
|
|
38045
|
-
opacity: 0.8;
|
|
38046
|
-
}
|
|
38047
|
-
|
|
38048
|
-
.collapsor-arrow {
|
|
38049
|
-
transform-origin: 6px 8px;
|
|
38050
|
-
|
|
38051
|
-
.o-icon {
|
|
38052
|
-
width: 12px;
|
|
38053
|
-
height: 16px;
|
|
38054
|
-
}
|
|
38055
|
-
}
|
|
38056
|
-
}
|
|
38057
|
-
|
|
38058
|
-
.o-filter-menu-item {
|
|
38059
|
-
display: flex;
|
|
38060
|
-
cursor: pointer;
|
|
38061
|
-
user-select: none;
|
|
38062
|
-
line-height: 1;
|
|
38063
|
-
|
|
38064
|
-
&.selected,
|
|
38065
|
-
&:hover {
|
|
38066
|
-
background-color: ${BUTTON_ACTIVE_BG};
|
|
38067
|
-
}
|
|
38068
|
-
}
|
|
38069
|
-
|
|
38070
|
-
.o-filter-menu-buttons {
|
|
38071
|
-
margin-top: 9px;
|
|
38072
|
-
|
|
38073
|
-
.o-button {
|
|
38074
|
-
height: 26px;
|
|
38075
|
-
}
|
|
38076
|
-
}
|
|
38077
|
-
}
|
|
38078
|
-
`;
|
|
38079
37291
|
class FilterMenu extends owl.Component {
|
|
38080
37292
|
static template = "o-spreadsheet-FilterMenu";
|
|
38081
37293
|
static props = {
|
|
@@ -38199,55 +37411,6 @@ const FilterMenuPopoverBuilder = {
|
|
|
38199
37411
|
},
|
|
38200
37412
|
};
|
|
38201
37413
|
|
|
38202
|
-
const LINK_TOOLTIP_HEIGHT = 32;
|
|
38203
|
-
const LINK_TOOLTIP_WIDTH = 220;
|
|
38204
|
-
css /* scss */ `
|
|
38205
|
-
.o-link-tool {
|
|
38206
|
-
font-size: 13px;
|
|
38207
|
-
background-color: white;
|
|
38208
|
-
box-shadow: 0 1px 4px 3px rgba(60, 64, 67, 0.15);
|
|
38209
|
-
padding: 6px 12px;
|
|
38210
|
-
border-radius: 4px;
|
|
38211
|
-
display: flex;
|
|
38212
|
-
justify-content: space-between;
|
|
38213
|
-
height: ${LINK_TOOLTIP_HEIGHT}px;
|
|
38214
|
-
width: ${LINK_TOOLTIP_WIDTH}px;
|
|
38215
|
-
|
|
38216
|
-
img {
|
|
38217
|
-
margin-right: 3px;
|
|
38218
|
-
width: 16px;
|
|
38219
|
-
height: 16px;
|
|
38220
|
-
}
|
|
38221
|
-
|
|
38222
|
-
a.o-link {
|
|
38223
|
-
color: ${LINK_COLOR};
|
|
38224
|
-
text-decoration: none;
|
|
38225
|
-
flex-grow: 2;
|
|
38226
|
-
white-space: nowrap;
|
|
38227
|
-
overflow: hidden;
|
|
38228
|
-
text-overflow: ellipsis;
|
|
38229
|
-
}
|
|
38230
|
-
a.o-link:hover {
|
|
38231
|
-
text-decoration: none;
|
|
38232
|
-
color: #001d1f;
|
|
38233
|
-
cursor: pointer;
|
|
38234
|
-
}
|
|
38235
|
-
}
|
|
38236
|
-
.o-link-icon {
|
|
38237
|
-
float: right;
|
|
38238
|
-
padding-left: 5px;
|
|
38239
|
-
.o-icon {
|
|
38240
|
-
height: 16px;
|
|
38241
|
-
}
|
|
38242
|
-
}
|
|
38243
|
-
.o-link-icon .o-icon {
|
|
38244
|
-
height: 13px;
|
|
38245
|
-
}
|
|
38246
|
-
.o-link-icon:hover {
|
|
38247
|
-
cursor: pointer;
|
|
38248
|
-
color: #000;
|
|
38249
|
-
}
|
|
38250
|
-
`;
|
|
38251
37414
|
class LinkDisplay extends owl.Component {
|
|
38252
37415
|
static template = "o-spreadsheet-LinkDisplay";
|
|
38253
37416
|
static props = {
|
|
@@ -38478,54 +37641,6 @@ linkMenuRegistry.add("sheet", {
|
|
|
38478
37641
|
sequence: 10,
|
|
38479
37642
|
});
|
|
38480
37643
|
|
|
38481
|
-
const PADDING = 12;
|
|
38482
|
-
const LINK_EDITOR_WIDTH = 340 + 2 * PADDING;
|
|
38483
|
-
css /* scss */ `
|
|
38484
|
-
.o-link-editor {
|
|
38485
|
-
font-size: 13px;
|
|
38486
|
-
background-color: white;
|
|
38487
|
-
box-shadow: 0 1px 4px 3px rgba(60, 64, 67, 0.15);
|
|
38488
|
-
padding: ${PADDING}px;
|
|
38489
|
-
display: flex;
|
|
38490
|
-
flex-direction: column;
|
|
38491
|
-
border-radius: 4px;
|
|
38492
|
-
width: ${LINK_EDITOR_WIDTH}px;
|
|
38493
|
-
|
|
38494
|
-
.o-section {
|
|
38495
|
-
.o-section-title {
|
|
38496
|
-
font-weight: bold;
|
|
38497
|
-
margin-bottom: 5px;
|
|
38498
|
-
}
|
|
38499
|
-
}
|
|
38500
|
-
.o-buttons {
|
|
38501
|
-
padding-left: 16px;
|
|
38502
|
-
padding-top: 16px;
|
|
38503
|
-
text-align: right;
|
|
38504
|
-
}
|
|
38505
|
-
input.o-input {
|
|
38506
|
-
width: 100%;
|
|
38507
|
-
padding: 0 23px 4px 0;
|
|
38508
|
-
}
|
|
38509
|
-
.o-link-url {
|
|
38510
|
-
position: relative;
|
|
38511
|
-
flex-grow: 1;
|
|
38512
|
-
button {
|
|
38513
|
-
position: absolute;
|
|
38514
|
-
right: 0px;
|
|
38515
|
-
top: 0px;
|
|
38516
|
-
border: none;
|
|
38517
|
-
height: 20px;
|
|
38518
|
-
width: 20px;
|
|
38519
|
-
background-color: #fff;
|
|
38520
|
-
margin: 2px 3px 1px 0px;
|
|
38521
|
-
padding: 0px 1px 0px 0px;
|
|
38522
|
-
}
|
|
38523
|
-
button:hover {
|
|
38524
|
-
cursor: pointer;
|
|
38525
|
-
}
|
|
38526
|
-
}
|
|
38527
|
-
}
|
|
38528
|
-
`;
|
|
38529
37644
|
class LinkEditor extends owl.Component {
|
|
38530
37645
|
static template = "o-spreadsheet-LinkEditor";
|
|
38531
37646
|
static props = {
|
|
@@ -39253,29 +38368,6 @@ function buildTableStyle(name, templateName, primaryColor) {
|
|
|
39253
38368
|
};
|
|
39254
38369
|
}
|
|
39255
38370
|
|
|
39256
|
-
css /* scss */ `
|
|
39257
|
-
.o-spreadsheet {
|
|
39258
|
-
.o-icon {
|
|
39259
|
-
display: flex;
|
|
39260
|
-
align-items: center;
|
|
39261
|
-
justify-content: center;
|
|
39262
|
-
width: ${ICON_EDGE_LENGTH}px;
|
|
39263
|
-
height: ${ICON_EDGE_LENGTH}px;
|
|
39264
|
-
font-size: ${ICON_EDGE_LENGTH}px;
|
|
39265
|
-
vertical-align: middle;
|
|
39266
|
-
|
|
39267
|
-
.small-text {
|
|
39268
|
-
font: bold 9px sans-serif;
|
|
39269
|
-
}
|
|
39270
|
-
.heavy-text {
|
|
39271
|
-
font: bold 16px sans-serif;
|
|
39272
|
-
}
|
|
39273
|
-
}
|
|
39274
|
-
.fa-small {
|
|
39275
|
-
font-size: 14px;
|
|
39276
|
-
}
|
|
39277
|
-
}
|
|
39278
|
-
`;
|
|
39279
38371
|
// -----------------------------------------------------------------------------
|
|
39280
38372
|
// We need here the svg of the icons that we need to convert to images for the renderer
|
|
39281
38373
|
// -----------------------------------------------------------------------------
|
|
@@ -49149,37 +48241,6 @@ function adjustIndexWithinBounds(index, position, max) {
|
|
|
49149
48241
|
return index;
|
|
49150
48242
|
}
|
|
49151
48243
|
|
|
49152
|
-
// -----------------------------------------------------------------------------
|
|
49153
|
-
// Autofill
|
|
49154
|
-
// -----------------------------------------------------------------------------
|
|
49155
|
-
css /* scss */ `
|
|
49156
|
-
.o-autofill {
|
|
49157
|
-
position: absolute;
|
|
49158
|
-
height: ${AUTOFILL_EDGE_LENGTH}px;
|
|
49159
|
-
width: ${AUTOFILL_EDGE_LENGTH}px;
|
|
49160
|
-
border: 1px solid white;
|
|
49161
|
-
background-color: #1a73e8;
|
|
49162
|
-
}
|
|
49163
|
-
|
|
49164
|
-
.o-autofill-handler {
|
|
49165
|
-
position: absolute;
|
|
49166
|
-
height: ${AUTOFILL_EDGE_LENGTH}px;
|
|
49167
|
-
width: ${AUTOFILL_EDGE_LENGTH}px;
|
|
49168
|
-
&:hover {
|
|
49169
|
-
cursor: crosshair;
|
|
49170
|
-
}
|
|
49171
|
-
}
|
|
49172
|
-
|
|
49173
|
-
.o-autofill-nextvalue {
|
|
49174
|
-
position: absolute;
|
|
49175
|
-
background-color: #ffffff;
|
|
49176
|
-
border: 1px solid black;
|
|
49177
|
-
padding: 5px;
|
|
49178
|
-
font-size: 12px;
|
|
49179
|
-
pointer-events: none;
|
|
49180
|
-
white-space: nowrap;
|
|
49181
|
-
}
|
|
49182
|
-
`;
|
|
49183
48244
|
class Autofill extends owl.Component {
|
|
49184
48245
|
static template = "o-spreadsheet-Autofill";
|
|
49185
48246
|
static props = {
|
|
@@ -49264,16 +48325,6 @@ class TooltipComponent extends owl.Component {
|
|
|
49264
48325
|
`;
|
|
49265
48326
|
}
|
|
49266
48327
|
|
|
49267
|
-
css /* scss */ `
|
|
49268
|
-
.o-client-tag {
|
|
49269
|
-
position: absolute;
|
|
49270
|
-
border-top-left-radius: 4px;
|
|
49271
|
-
border-top-right-radius: 4px;
|
|
49272
|
-
font-size: ${DEFAULT_FONT_SIZE};
|
|
49273
|
-
color: white;
|
|
49274
|
-
pointer-events: none;
|
|
49275
|
-
}
|
|
49276
|
-
`;
|
|
49277
48328
|
class ClientTag extends owl.Component {
|
|
49278
48329
|
static template = "o-spreadsheet-ClientTag";
|
|
49279
48330
|
static props = {
|
|
@@ -49823,28 +48874,6 @@ class CellComposerStore extends AbstractComposerStore {
|
|
|
49823
48874
|
|
|
49824
48875
|
const COMPOSER_BORDER_WIDTH = 3 * 0.4 * window.devicePixelRatio || 1;
|
|
49825
48876
|
const GRID_CELL_REFERENCE_TOP_OFFSET = 28;
|
|
49826
|
-
css /* scss */ `
|
|
49827
|
-
div.o-grid-composer {
|
|
49828
|
-
z-index: ${ComponentsImportance.GridComposer};
|
|
49829
|
-
position: absolute;
|
|
49830
|
-
border: ${COMPOSER_BORDER_WIDTH}px solid ${SELECTION_BORDER_COLOR};
|
|
49831
|
-
font-family: ${DEFAULT_FONT};
|
|
49832
|
-
|
|
49833
|
-
display: flex;
|
|
49834
|
-
align-items: center;
|
|
49835
|
-
}
|
|
49836
|
-
|
|
49837
|
-
div.o-cell-reference {
|
|
49838
|
-
position: absolute;
|
|
49839
|
-
z-index: ${ComponentsImportance.GridComposer};
|
|
49840
|
-
background: ${SELECTION_BORDER_COLOR};
|
|
49841
|
-
color: white;
|
|
49842
|
-
font-size: 12px;
|
|
49843
|
-
line-height: 14px;
|
|
49844
|
-
padding: 6px 7px;
|
|
49845
|
-
border-radius: 4px;
|
|
49846
|
-
}
|
|
49847
|
-
`;
|
|
49848
48877
|
/**
|
|
49849
48878
|
* This component is a composer which positions itself on the grid at the anchor cell.
|
|
49850
48879
|
* It also applies the style of the cell to the composer input.
|
|
@@ -49970,6 +48999,7 @@ class GridComposer extends owl.Component {
|
|
|
49970
48999
|
return cssPropertiesToCss({
|
|
49971
49000
|
left: `${left - 1}px`,
|
|
49972
49001
|
top: `${top}px`,
|
|
49002
|
+
border: `${COMPOSER_BORDER_WIDTH}px solid ${SELECTION_BORDER_COLOR}`,
|
|
49973
49003
|
"min-width": `${minWidth}px`,
|
|
49974
49004
|
"min-height": `${minHeight}px`,
|
|
49975
49005
|
"max-width": `${maxWidth}px`,
|
|
@@ -50240,24 +49270,6 @@ function getAxis(getters, figureUI, dnd, axisType) {
|
|
|
50240
49270
|
return { position, axisType: axisType };
|
|
50241
49271
|
}
|
|
50242
49272
|
|
|
50243
|
-
css /*SCSS*/ `
|
|
50244
|
-
.o-figure-snap-line {
|
|
50245
|
-
position: relative;
|
|
50246
|
-
z-index: ${ComponentsImportance.FigureSnapLine};
|
|
50247
|
-
&.vertical {
|
|
50248
|
-
width: 0px;
|
|
50249
|
-
border-left: 1px dashed black;
|
|
50250
|
-
}
|
|
50251
|
-
&.horizontal {
|
|
50252
|
-
border-top: 1px dashed black;
|
|
50253
|
-
height: 0px;
|
|
50254
|
-
}
|
|
50255
|
-
}
|
|
50256
|
-
.o-figure-container {
|
|
50257
|
-
-webkit-user-select: none; /* safari */
|
|
50258
|
-
user-select: none;
|
|
50259
|
-
}
|
|
50260
|
-
`;
|
|
50261
49273
|
/**
|
|
50262
49274
|
* Each figure ⭐ is positioned inside a container `div` placed and sized
|
|
50263
49275
|
* according to the split pane the figure is part of, or a separate container for the figure
|
|
@@ -50689,38 +49701,6 @@ class FiguresContainer extends owl.Component {
|
|
|
50689
49701
|
}
|
|
50690
49702
|
}
|
|
50691
49703
|
|
|
50692
|
-
css /* scss */ `
|
|
50693
|
-
.o-validation {
|
|
50694
|
-
border-radius: 4px;
|
|
50695
|
-
border-width: 0 0 0 3px;
|
|
50696
|
-
border-style: solid;
|
|
50697
|
-
gap: 3px;
|
|
50698
|
-
|
|
50699
|
-
.o-icon {
|
|
50700
|
-
margin-right: 5px;
|
|
50701
|
-
height: 1.2em;
|
|
50702
|
-
width: 1.2em;
|
|
50703
|
-
}
|
|
50704
|
-
}
|
|
50705
|
-
|
|
50706
|
-
.o-validation-warning {
|
|
50707
|
-
border-color: ${ALERT_WARNING_BORDER};
|
|
50708
|
-
color: ${ALERT_WARNING_TEXT_COLOR};
|
|
50709
|
-
background-color: ${ALERT_WARNING_BG};
|
|
50710
|
-
}
|
|
50711
|
-
|
|
50712
|
-
.o-validation-error {
|
|
50713
|
-
border-color: ${ALERT_DANGER_BORDER};
|
|
50714
|
-
color: ${ALERT_DANGER_TEXT_COLOR};
|
|
50715
|
-
background-color: ${ALERT_DANGER_BG};
|
|
50716
|
-
}
|
|
50717
|
-
|
|
50718
|
-
.o-validation-info {
|
|
50719
|
-
border-color: ${ALERT_INFO_BORDER};
|
|
50720
|
-
color: ${ALERT_INFO_TEXT_COLOR};
|
|
50721
|
-
background-color: ${ALERT_INFO_BG};
|
|
50722
|
-
}
|
|
50723
|
-
`;
|
|
50724
49704
|
class ValidationMessages extends owl.Component {
|
|
50725
49705
|
static template = "o-spreadsheet-ValidationMessages";
|
|
50726
49706
|
static props = {
|
|
@@ -50742,20 +49722,6 @@ class ValidationMessages extends owl.Component {
|
|
|
50742
49722
|
}
|
|
50743
49723
|
}
|
|
50744
49724
|
|
|
50745
|
-
css /* scss */ `
|
|
50746
|
-
.o-grid-add-rows {
|
|
50747
|
-
input.o-input {
|
|
50748
|
-
width: 60px;
|
|
50749
|
-
height: 30px;
|
|
50750
|
-
}
|
|
50751
|
-
|
|
50752
|
-
.o-validation-error {
|
|
50753
|
-
display: inline-block !important;
|
|
50754
|
-
margin-top: 0;
|
|
50755
|
-
margin-left: 8px;
|
|
50756
|
-
}
|
|
50757
|
-
}
|
|
50758
|
-
`;
|
|
50759
49725
|
class GridAddRowsFooter extends owl.Component {
|
|
50760
49726
|
static template = "o-spreadsheet-GridAddRowsFooter";
|
|
50761
49727
|
static props = {
|
|
@@ -51000,14 +49966,6 @@ class HoveredIconStore extends SpreadsheetStore {
|
|
|
51000
49966
|
}
|
|
51001
49967
|
}
|
|
51002
49968
|
|
|
51003
|
-
const CURSOR_SVG = /*xml*/ `
|
|
51004
|
-
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="14" height="16"><path d="M6.5.4c1.3-.8 2.9-.1 3.8 1.4l2.9 5.1c.2.4.9 1.6-.4 2.3l-1.6.9 1.8 3.1c.2.4.1 1-.2 1.2l-1.6 1c-.3.1-.9 0-1.1-.4l-1.8-3.1-1.6 1c-.6.4-1.7 0-2.2-.8L0 4.3"/><path fill="#fff" d="M9.1 2a1.4 1.1 60 0 0-1.7-.6L5.5 2.5l.9 1.6-1 .6-.9-1.6-.6.4 1.8 3.1-1.3.7-1.8-3.1-1 .6 3.8 6.6 6.8-3.98M3.9 8.8 10.82 5l.795 1.4-6.81 3.96"/></svg>
|
|
51005
|
-
`;
|
|
51006
|
-
css /* scss */ `
|
|
51007
|
-
.o-paint-format-cursor {
|
|
51008
|
-
cursor: url("data:image/svg+xml,${encodeURIComponent(CURSOR_SVG)}"), auto;
|
|
51009
|
-
}
|
|
51010
|
-
`;
|
|
51011
49969
|
function useCellHovered(env, gridRef) {
|
|
51012
49970
|
const delayedHoveredCell = useStore(DelayedHoveredCellStore);
|
|
51013
49971
|
const hoveredTable = useStore(HoveredTableStore);
|
|
@@ -51253,7 +50211,6 @@ class GridPopover extends owl.Component {
|
|
|
51253
50211
|
};
|
|
51254
50212
|
static components = { Popover };
|
|
51255
50213
|
cellPopovers;
|
|
51256
|
-
zIndex = ComponentsImportance.GridPopover;
|
|
51257
50214
|
setup() {
|
|
51258
50215
|
this.cellPopovers = useStore(CellPopoverStore);
|
|
51259
50216
|
}
|
|
@@ -51572,58 +50529,6 @@ class AbstractResizer extends owl.Component {
|
|
|
51572
50529
|
this.props.onOpenContextMenu(type, ev.clientX, ev.clientY);
|
|
51573
50530
|
}
|
|
51574
50531
|
}
|
|
51575
|
-
css /* scss */ `
|
|
51576
|
-
.o-col-resizer {
|
|
51577
|
-
position: absolute;
|
|
51578
|
-
top: 0;
|
|
51579
|
-
left: ${HEADER_WIDTH}px;
|
|
51580
|
-
right: ${SCROLLBAR_WIDTH}px;
|
|
51581
|
-
height: ${HEADER_HEIGHT}px;
|
|
51582
|
-
width: calc(100% - ${HEADER_WIDTH + SCROLLBAR_WIDTH}px);
|
|
51583
|
-
&.o-dragging {
|
|
51584
|
-
cursor: grabbing;
|
|
51585
|
-
}
|
|
51586
|
-
&.o-grab {
|
|
51587
|
-
cursor: grab;
|
|
51588
|
-
}
|
|
51589
|
-
.dragging-col-line {
|
|
51590
|
-
top: ${HEADER_HEIGHT}px;
|
|
51591
|
-
position: absolute;
|
|
51592
|
-
width: 2px;
|
|
51593
|
-
height: 10000px;
|
|
51594
|
-
background-color: black;
|
|
51595
|
-
}
|
|
51596
|
-
.dragging-col-shadow {
|
|
51597
|
-
top: ${HEADER_HEIGHT}px;
|
|
51598
|
-
position: absolute;
|
|
51599
|
-
height: 10000px;
|
|
51600
|
-
background-color: black;
|
|
51601
|
-
opacity: 0.1;
|
|
51602
|
-
}
|
|
51603
|
-
.o-handle {
|
|
51604
|
-
position: absolute;
|
|
51605
|
-
height: ${HEADER_HEIGHT}px;
|
|
51606
|
-
width: 4px;
|
|
51607
|
-
cursor: e-resize;
|
|
51608
|
-
background-color: ${SELECTION_BORDER_COLOR};
|
|
51609
|
-
}
|
|
51610
|
-
.dragging-resizer {
|
|
51611
|
-
top: ${HEADER_HEIGHT}px;
|
|
51612
|
-
position: absolute;
|
|
51613
|
-
margin-left: 2px;
|
|
51614
|
-
width: 1px;
|
|
51615
|
-
height: 10000px;
|
|
51616
|
-
background-color: ${SELECTION_BORDER_COLOR};
|
|
51617
|
-
}
|
|
51618
|
-
.o-unhide {
|
|
51619
|
-
color: ${ICONS_COLOR};
|
|
51620
|
-
}
|
|
51621
|
-
.o-unhide:hover {
|
|
51622
|
-
z-index: ${ComponentsImportance.Grid + 1};
|
|
51623
|
-
background-color: lightgrey;
|
|
51624
|
-
}
|
|
51625
|
-
}
|
|
51626
|
-
`;
|
|
51627
50532
|
class ColResizer extends AbstractResizer {
|
|
51628
50533
|
static props = {
|
|
51629
50534
|
onOpenContextMenu: Function,
|
|
@@ -51766,57 +50671,6 @@ class ColResizer extends AbstractResizer {
|
|
|
51766
50671
|
return this.env.model.getters.getPaneDivisions(this.sheetId).xSplit > 0;
|
|
51767
50672
|
}
|
|
51768
50673
|
}
|
|
51769
|
-
css /* scss */ `
|
|
51770
|
-
.o-row-resizer {
|
|
51771
|
-
position: absolute;
|
|
51772
|
-
top: ${HEADER_HEIGHT}px;
|
|
51773
|
-
left: 0;
|
|
51774
|
-
bottom: ${SCROLLBAR_WIDTH}px;
|
|
51775
|
-
width: ${HEADER_WIDTH}px;
|
|
51776
|
-
&.o-dragging {
|
|
51777
|
-
cursor: grabbing;
|
|
51778
|
-
}
|
|
51779
|
-
&.o-grab {
|
|
51780
|
-
cursor: grab;
|
|
51781
|
-
}
|
|
51782
|
-
.dragging-row-line {
|
|
51783
|
-
left: ${HEADER_WIDTH}px;
|
|
51784
|
-
position: absolute;
|
|
51785
|
-
width: 10000px;
|
|
51786
|
-
height: 2px;
|
|
51787
|
-
background-color: black;
|
|
51788
|
-
}
|
|
51789
|
-
.dragging-row-shadow {
|
|
51790
|
-
left: ${HEADER_WIDTH}px;
|
|
51791
|
-
position: absolute;
|
|
51792
|
-
width: 10000px;
|
|
51793
|
-
background-color: black;
|
|
51794
|
-
opacity: 0.1;
|
|
51795
|
-
}
|
|
51796
|
-
.o-handle {
|
|
51797
|
-
position: absolute;
|
|
51798
|
-
height: 4px;
|
|
51799
|
-
width: ${HEADER_WIDTH}px;
|
|
51800
|
-
cursor: n-resize;
|
|
51801
|
-
background-color: ${SELECTION_BORDER_COLOR};
|
|
51802
|
-
}
|
|
51803
|
-
.dragging-resizer {
|
|
51804
|
-
left: ${HEADER_WIDTH}px;
|
|
51805
|
-
position: absolute;
|
|
51806
|
-
margin-top: 2px;
|
|
51807
|
-
width: 10000px;
|
|
51808
|
-
height: 1px;
|
|
51809
|
-
background-color: ${SELECTION_BORDER_COLOR};
|
|
51810
|
-
}
|
|
51811
|
-
.o-unhide {
|
|
51812
|
-
color: ${ICONS_COLOR};
|
|
51813
|
-
}
|
|
51814
|
-
.o-unhide:hover {
|
|
51815
|
-
z-index: ${ComponentsImportance.Grid + 1};
|
|
51816
|
-
background-color: lightgrey;
|
|
51817
|
-
}
|
|
51818
|
-
}
|
|
51819
|
-
`;
|
|
51820
50674
|
class RowResizer extends AbstractResizer {
|
|
51821
50675
|
static props = {
|
|
51822
50676
|
onOpenContextMenu: Function,
|
|
@@ -51957,18 +50811,6 @@ class RowResizer extends AbstractResizer {
|
|
|
51957
50811
|
return this.env.model.getters.getPaneDivisions(this.sheetId).ySplit > 0;
|
|
51958
50812
|
}
|
|
51959
50813
|
}
|
|
51960
|
-
css /* scss */ `
|
|
51961
|
-
.o-overlay {
|
|
51962
|
-
.all {
|
|
51963
|
-
position: absolute;
|
|
51964
|
-
top: 0;
|
|
51965
|
-
left: 0;
|
|
51966
|
-
right: 0;
|
|
51967
|
-
width: ${HEADER_WIDTH}px;
|
|
51968
|
-
height: ${HEADER_HEIGHT}px;
|
|
51969
|
-
}
|
|
51970
|
-
}
|
|
51971
|
-
`;
|
|
51972
50814
|
class HeadersOverlay extends owl.Component {
|
|
51973
50815
|
static props = {
|
|
51974
50816
|
onOpenContextMenu: Function,
|
|
@@ -52923,17 +51765,6 @@ function useWheelHandler(handler) {
|
|
|
52923
51765
|
return onMouseWheel;
|
|
52924
51766
|
}
|
|
52925
51767
|
|
|
52926
|
-
css /* scss */ `
|
|
52927
|
-
.o-border {
|
|
52928
|
-
position: absolute;
|
|
52929
|
-
&:hover {
|
|
52930
|
-
cursor: grab;
|
|
52931
|
-
}
|
|
52932
|
-
}
|
|
52933
|
-
.o-moving {
|
|
52934
|
-
cursor: grabbing;
|
|
52935
|
-
}
|
|
52936
|
-
`;
|
|
52937
51768
|
class Border extends owl.Component {
|
|
52938
51769
|
static template = "o-spreadsheet-Border";
|
|
52939
51770
|
static props = {
|
|
@@ -52972,32 +51803,6 @@ class Border extends owl.Component {
|
|
|
52972
51803
|
}
|
|
52973
51804
|
|
|
52974
51805
|
const MOBILE_HANDLER_WIDTH = 40;
|
|
52975
|
-
css /* scss */ `
|
|
52976
|
-
.o-corner {
|
|
52977
|
-
position: absolute;
|
|
52978
|
-
}
|
|
52979
|
-
|
|
52980
|
-
.o-corner-button {
|
|
52981
|
-
border: 1px solid white;
|
|
52982
|
-
height: ${AUTOFILL_EDGE_LENGTH}px;
|
|
52983
|
-
width: ${AUTOFILL_EDGE_LENGTH}px;
|
|
52984
|
-
}
|
|
52985
|
-
.o-corner-nw,
|
|
52986
|
-
.o-corner-se {
|
|
52987
|
-
&:hover {
|
|
52988
|
-
cursor: nwse-resize;
|
|
52989
|
-
}
|
|
52990
|
-
}
|
|
52991
|
-
.o-corner-ne,
|
|
52992
|
-
.o-corner-sw {
|
|
52993
|
-
&:hover {
|
|
52994
|
-
cursor: nesw-resize;
|
|
52995
|
-
}
|
|
52996
|
-
}
|
|
52997
|
-
.o-resizing {
|
|
52998
|
-
cursor: grabbing;
|
|
52999
|
-
}
|
|
53000
|
-
`;
|
|
53001
51806
|
class Corner extends owl.Component {
|
|
53002
51807
|
static template = "o-spreadsheet-Corner";
|
|
53003
51808
|
static props = {
|
|
@@ -53063,11 +51868,6 @@ function orientationToDir(or) {
|
|
|
53063
51868
|
return { dirX, dirY };
|
|
53064
51869
|
}
|
|
53065
51870
|
|
|
53066
|
-
css /*SCSS*/ `
|
|
53067
|
-
.o-highlight {
|
|
53068
|
-
z-index: ${ComponentsImportance.Highlight};
|
|
53069
|
-
}
|
|
53070
|
-
`;
|
|
53071
51871
|
class Highlight extends owl.Component {
|
|
53072
51872
|
static template = "o-spreadsheet-Highlight";
|
|
53073
51873
|
static props = {
|
|
@@ -53202,24 +52002,6 @@ let ScrollBar$1 = class ScrollBar {
|
|
|
53202
52002
|
}
|
|
53203
52003
|
};
|
|
53204
52004
|
|
|
53205
|
-
css /* scss */ `
|
|
53206
|
-
.o-scrollbar {
|
|
53207
|
-
position: absolute;
|
|
53208
|
-
overflow: auto;
|
|
53209
|
-
z-index: ${ComponentsImportance.ScrollBar};
|
|
53210
|
-
background-color: ${BACKGROUND_GRAY_COLOR};
|
|
53211
|
-
|
|
53212
|
-
&.corner {
|
|
53213
|
-
box-sizing: content-box;
|
|
53214
|
-
right: 0px;
|
|
53215
|
-
bottom: 0px;
|
|
53216
|
-
height: ${SCROLLBAR_WIDTH}px;
|
|
53217
|
-
width: ${SCROLLBAR_WIDTH}px;
|
|
53218
|
-
border-top: 1px solid #e2e3e3;
|
|
53219
|
-
border-left: 1px solid #e2e3e3;
|
|
53220
|
-
}
|
|
53221
|
-
}
|
|
53222
|
-
`;
|
|
53223
52005
|
class ScrollBar extends owl.Component {
|
|
53224
52006
|
static props = {
|
|
53225
52007
|
width: { type: Number, optional: true },
|
|
@@ -53382,24 +52164,6 @@ function useAutofocus({ refName }) {
|
|
|
53382
52164
|
}, () => [ref.el]);
|
|
53383
52165
|
}
|
|
53384
52166
|
|
|
53385
|
-
css /* scss */ `
|
|
53386
|
-
.o-spreadsheet {
|
|
53387
|
-
.os-input {
|
|
53388
|
-
border-width: 0 0 1px 0;
|
|
53389
|
-
border-color: transparent;
|
|
53390
|
-
outline: none;
|
|
53391
|
-
text-overflow: ellipsis;
|
|
53392
|
-
color: ${TEXT_BODY};
|
|
53393
|
-
}
|
|
53394
|
-
.os-input:hover,
|
|
53395
|
-
.os-input.o-input-border {
|
|
53396
|
-
border-color: ${GRAY_300};
|
|
53397
|
-
}
|
|
53398
|
-
.os-input:focus {
|
|
53399
|
-
border-color: ${ACTION_COLOR};
|
|
53400
|
-
}
|
|
53401
|
-
}
|
|
53402
|
-
`;
|
|
53403
52167
|
class TextInput extends owl.Component {
|
|
53404
52168
|
static template = "o-spreadsheet-TextInput";
|
|
53405
52169
|
static props = {
|
|
@@ -53481,21 +52245,6 @@ class TextInput extends owl.Component {
|
|
|
53481
52245
|
}
|
|
53482
52246
|
}
|
|
53483
52247
|
|
|
53484
|
-
css /* scss */ `
|
|
53485
|
-
.o-menu-item-button {
|
|
53486
|
-
display: flex;
|
|
53487
|
-
justify-content: center;
|
|
53488
|
-
align-items: center;
|
|
53489
|
-
margin: 2px 1px;
|
|
53490
|
-
padding: 0px 1px;
|
|
53491
|
-
border-radius: 2px;
|
|
53492
|
-
min-width: 22px;
|
|
53493
|
-
}
|
|
53494
|
-
.o-disabled {
|
|
53495
|
-
opacity: 0.6;
|
|
53496
|
-
cursor: default;
|
|
53497
|
-
}
|
|
53498
|
-
`;
|
|
53499
52248
|
class ActionButton extends owl.Component {
|
|
53500
52249
|
static template = "o-spreadsheet-ActionButton";
|
|
53501
52250
|
static props = {
|
|
@@ -53548,41 +52297,6 @@ class ActionButton extends owl.Component {
|
|
|
53548
52297
|
}
|
|
53549
52298
|
}
|
|
53550
52299
|
|
|
53551
|
-
css /* scss */ `
|
|
53552
|
-
.o-color-picker-widget {
|
|
53553
|
-
display: flex;
|
|
53554
|
-
position: relative;
|
|
53555
|
-
align-items: center;
|
|
53556
|
-
height: 30px;
|
|
53557
|
-
|
|
53558
|
-
.o-color-picker-button-style {
|
|
53559
|
-
display: flex;
|
|
53560
|
-
justify-content: center;
|
|
53561
|
-
align-items: center;
|
|
53562
|
-
margin: 2px;
|
|
53563
|
-
padding: 3px;
|
|
53564
|
-
border-radius: 2px;
|
|
53565
|
-
cursor: pointer;
|
|
53566
|
-
&:not([disabled]):hover {
|
|
53567
|
-
background-color: rgba(0, 0, 0, 0.08);
|
|
53568
|
-
}
|
|
53569
|
-
}
|
|
53570
|
-
|
|
53571
|
-
.o-color-picker-button {
|
|
53572
|
-
> span {
|
|
53573
|
-
border-bottom: 4px solid;
|
|
53574
|
-
height: 20px;
|
|
53575
|
-
margin-top: 2px;
|
|
53576
|
-
display: block;
|
|
53577
|
-
}
|
|
53578
|
-
|
|
53579
|
-
&[disabled] {
|
|
53580
|
-
pointer-events: none;
|
|
53581
|
-
opacity: 0.3;
|
|
53582
|
-
}
|
|
53583
|
-
}
|
|
53584
|
-
}
|
|
53585
|
-
`;
|
|
53586
52300
|
class ColorPickerWidget extends owl.Component {
|
|
53587
52301
|
static template = "o-spreadsheet-ColorPickerWidget";
|
|
53588
52302
|
static props = {
|
|
@@ -53615,26 +52329,6 @@ class ColorPickerWidget extends owl.Component {
|
|
|
53615
52329
|
}
|
|
53616
52330
|
}
|
|
53617
52331
|
|
|
53618
|
-
css /* scss */ `
|
|
53619
|
-
.o-font-size-editor {
|
|
53620
|
-
width: max-content !important;
|
|
53621
|
-
height: calc(100% - 4px);
|
|
53622
|
-
input.o-font-size {
|
|
53623
|
-
outline: none;
|
|
53624
|
-
height: 20px;
|
|
53625
|
-
width: 31px;
|
|
53626
|
-
text-align: center;
|
|
53627
|
-
}
|
|
53628
|
-
}
|
|
53629
|
-
.o-text-options > div {
|
|
53630
|
-
cursor: pointer;
|
|
53631
|
-
line-height: 26px;
|
|
53632
|
-
padding: 3px 12px;
|
|
53633
|
-
&:hover {
|
|
53634
|
-
background-color: rgba(0, 0, 0, 0.08);
|
|
53635
|
-
}
|
|
53636
|
-
}
|
|
53637
|
-
`;
|
|
53638
52332
|
class FontSizeEditor extends owl.Component {
|
|
53639
52333
|
static template = "o-spreadsheet-FontSizeEditor";
|
|
53640
52334
|
static props = {
|
|
@@ -53710,41 +52404,6 @@ class FontSizeEditor extends owl.Component {
|
|
|
53710
52404
|
}
|
|
53711
52405
|
}
|
|
53712
52406
|
|
|
53713
|
-
css /* scss */ `
|
|
53714
|
-
.o-chart-title-designer {
|
|
53715
|
-
.o-hoverable-button {
|
|
53716
|
-
height: 30px;
|
|
53717
|
-
}
|
|
53718
|
-
.o-dropdown-content .o-hoverable-button {
|
|
53719
|
-
height: fit-content;
|
|
53720
|
-
}
|
|
53721
|
-
|
|
53722
|
-
.o-divider {
|
|
53723
|
-
border-right: 1px solid ${GRAY_300};
|
|
53724
|
-
margin: 0px 4px;
|
|
53725
|
-
height: 14px;
|
|
53726
|
-
}
|
|
53727
|
-
|
|
53728
|
-
.o-menu-item-button.active {
|
|
53729
|
-
background-color: #e6f4ea;
|
|
53730
|
-
color: #188038;
|
|
53731
|
-
}
|
|
53732
|
-
|
|
53733
|
-
.o-dropdown-content {
|
|
53734
|
-
overflow-y: auto;
|
|
53735
|
-
overflow-x: hidden;
|
|
53736
|
-
padding: 2px;
|
|
53737
|
-
z-index: 100;
|
|
53738
|
-
box-shadow: 1px 2px 5px 2px rgba(51, 51, 51, 0.15);
|
|
53739
|
-
|
|
53740
|
-
.o-dropdown-line {
|
|
53741
|
-
> span {
|
|
53742
|
-
padding: 4px;
|
|
53743
|
-
}
|
|
53744
|
-
}
|
|
53745
|
-
}
|
|
53746
|
-
}
|
|
53747
|
-
`;
|
|
53748
52407
|
class TextStyler extends owl.Component {
|
|
53749
52408
|
static template = "o-spreadsheet.TextStyler";
|
|
53750
52409
|
static components = { ColorPickerWidget, ActionButton, FontSizeEditor };
|
|
@@ -54572,27 +53231,6 @@ class BarConfigPanel extends GenericChartConfigPanel {
|
|
|
54572
53231
|
}
|
|
54573
53232
|
}
|
|
54574
53233
|
|
|
54575
|
-
css /* scss */ `
|
|
54576
|
-
.o-badge-selection {
|
|
54577
|
-
gap: 1px;
|
|
54578
|
-
button.o-button {
|
|
54579
|
-
border-radius: 0;
|
|
54580
|
-
&.selected {
|
|
54581
|
-
color: ${GRAY_900};
|
|
54582
|
-
border-color: ${ACTION_COLOR};
|
|
54583
|
-
background: ${BADGE_SELECTED_COLOR};
|
|
54584
|
-
font-weight: 600;
|
|
54585
|
-
}
|
|
54586
|
-
|
|
54587
|
-
&:first-child {
|
|
54588
|
-
border-radius: 4px 0 0 4px;
|
|
54589
|
-
}
|
|
54590
|
-
&:last-child {
|
|
54591
|
-
border-radius: 0 4px 4px 0;
|
|
54592
|
-
}
|
|
54593
|
-
}
|
|
54594
|
-
}
|
|
54595
|
-
`;
|
|
54596
53234
|
class BadgeSelection extends owl.Component {
|
|
54597
53235
|
static template = "o-spreadsheet.BadgeSelection";
|
|
54598
53236
|
static props = {
|
|
@@ -54602,13 +53240,6 @@ class BadgeSelection extends owl.Component {
|
|
|
54602
53240
|
};
|
|
54603
53241
|
}
|
|
54604
53242
|
|
|
54605
|
-
css /* scss */ `
|
|
54606
|
-
.o-chart-title-designer {
|
|
54607
|
-
> span {
|
|
54608
|
-
height: 30px;
|
|
54609
|
-
}
|
|
54610
|
-
}
|
|
54611
|
-
`;
|
|
54612
53243
|
class ChartTitle extends owl.Component {
|
|
54613
53244
|
static template = "o-spreadsheet.ChartTitle";
|
|
54614
53245
|
static components = { Section, TextStyler };
|
|
@@ -54670,31 +53301,12 @@ class AxisDesignEditor extends owl.Component {
|
|
|
54670
53301
|
}
|
|
54671
53302
|
}
|
|
54672
53303
|
|
|
54673
|
-
|
|
54674
|
-
|
|
54675
|
-
|
|
54676
|
-
|
|
54677
|
-
|
|
54678
|
-
|
|
54679
|
-
.o-radio {
|
|
54680
|
-
input {
|
|
54681
|
-
appearance: none;
|
|
54682
|
-
-webkit-appearance: none;
|
|
54683
|
-
-moz-appearance: none;
|
|
54684
|
-
width: 14px;
|
|
54685
|
-
height: 14px;
|
|
54686
|
-
border: 1px solid ${GRAY_300};
|
|
54687
|
-
outline: none;
|
|
54688
|
-
border-radius: 8px;
|
|
54689
|
-
|
|
54690
|
-
&:checked {
|
|
54691
|
-
background: url("data:image/svg+xml,${encodeURIComponent(CIRCLE_SVG)}");
|
|
54692
|
-
background-color: ${ACTION_COLOR};
|
|
54693
|
-
border-color: ${ACTION_COLOR};
|
|
54694
|
-
}
|
|
54695
|
-
}
|
|
54696
|
-
}
|
|
54697
|
-
`;
|
|
53304
|
+
// FIXME Encoding version used in css
|
|
53305
|
+
// const CIRCLE_SVG = /*xml*/ `
|
|
53306
|
+
// <svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'>
|
|
53307
|
+
// <circle r="2" fill="#FFF"/>
|
|
53308
|
+
// </svg>
|
|
53309
|
+
// `;
|
|
54698
53310
|
class RadioSelection extends owl.Component {
|
|
54699
53311
|
static template = "o-spreadsheet.RadioSelection";
|
|
54700
53312
|
static props = {
|
|
@@ -55191,45 +53803,6 @@ class GaugeChartConfigPanel extends owl.Component {
|
|
|
55191
53803
|
}
|
|
55192
53804
|
}
|
|
55193
53805
|
|
|
55194
|
-
css /* scss */ `
|
|
55195
|
-
.o-gauge-color-set {
|
|
55196
|
-
table {
|
|
55197
|
-
table-layout: fixed;
|
|
55198
|
-
margin-top: 2%;
|
|
55199
|
-
display: table;
|
|
55200
|
-
text-align: left;
|
|
55201
|
-
font-size: 12px;
|
|
55202
|
-
line-height: 18px;
|
|
55203
|
-
width: 100%;
|
|
55204
|
-
font-size: 12px;
|
|
55205
|
-
}
|
|
55206
|
-
|
|
55207
|
-
td {
|
|
55208
|
-
height: 30px;
|
|
55209
|
-
padding: 6px 0;
|
|
55210
|
-
}
|
|
55211
|
-
th.o-gauge-color-set-colorPicker {
|
|
55212
|
-
width: 8%;
|
|
55213
|
-
}
|
|
55214
|
-
th.o-gauge-color-set-text {
|
|
55215
|
-
width: 25%;
|
|
55216
|
-
}
|
|
55217
|
-
th.o-gauge-color-set-operator {
|
|
55218
|
-
width: 10%;
|
|
55219
|
-
}
|
|
55220
|
-
th.o-gauge-color-set-value {
|
|
55221
|
-
width: 22%;
|
|
55222
|
-
}
|
|
55223
|
-
th.o-gauge-color-set-type {
|
|
55224
|
-
width: 30%;
|
|
55225
|
-
}
|
|
55226
|
-
input,
|
|
55227
|
-
select {
|
|
55228
|
-
width: 100%;
|
|
55229
|
-
height: 100%;
|
|
55230
|
-
}
|
|
55231
|
-
}
|
|
55232
|
-
`;
|
|
55233
53806
|
class GaugeChartDesignPanel extends owl.Component {
|
|
55234
53807
|
static template = "o-spreadsheet-GaugeChartDesignPanel";
|
|
55235
53808
|
static components = {
|
|
@@ -56035,40 +54608,6 @@ chartSidePanelComponentRegistry
|
|
|
56035
54608
|
design: TreeMapChartDesignPanel,
|
|
56036
54609
|
});
|
|
56037
54610
|
|
|
56038
|
-
css /* scss */ `
|
|
56039
|
-
.o-section .o-input.o-type-selector {
|
|
56040
|
-
height: 30px;
|
|
56041
|
-
padding-left: 35px;
|
|
56042
|
-
padding-top: 5px;
|
|
56043
|
-
}
|
|
56044
|
-
.o-type-selector-preview {
|
|
56045
|
-
left: 5px;
|
|
56046
|
-
top: 3px;
|
|
56047
|
-
.o-chart-preview {
|
|
56048
|
-
width: 24px;
|
|
56049
|
-
height: 24px;
|
|
56050
|
-
}
|
|
56051
|
-
}
|
|
56052
|
-
|
|
56053
|
-
.o-popover .o-chart-select-popover {
|
|
56054
|
-
background: #fff;
|
|
56055
|
-
.o-chart-type-item {
|
|
56056
|
-
cursor: pointer;
|
|
56057
|
-
padding: 3px 6px;
|
|
56058
|
-
margin: 1px 2px;
|
|
56059
|
-
&.selected,
|
|
56060
|
-
&:hover {
|
|
56061
|
-
border: 1px solid ${ACTION_COLOR};
|
|
56062
|
-
background: ${BADGE_SELECTED_COLOR};
|
|
56063
|
-
padding: 2px 5px;
|
|
56064
|
-
}
|
|
56065
|
-
.o-chart-preview {
|
|
56066
|
-
width: 48px;
|
|
56067
|
-
height: 48px;
|
|
56068
|
-
}
|
|
56069
|
-
}
|
|
56070
|
-
}
|
|
56071
|
-
`;
|
|
56072
54611
|
class ChartTypePicker extends owl.Component {
|
|
56073
54612
|
static template = "o-spreadsheet-ChartTypePicker";
|
|
56074
54613
|
static components = { Section, Popover };
|
|
@@ -56171,38 +54710,6 @@ class MainChartPanelStore extends SpreadsheetStore {
|
|
|
56171
54710
|
}
|
|
56172
54711
|
}
|
|
56173
54712
|
|
|
56174
|
-
css /* scss */ `
|
|
56175
|
-
.o-chart {
|
|
56176
|
-
.o-panel {
|
|
56177
|
-
display: flex;
|
|
56178
|
-
.o-panel-element {
|
|
56179
|
-
flex: 1 0 auto;
|
|
56180
|
-
padding: 8px 0px;
|
|
56181
|
-
text-align: center;
|
|
56182
|
-
cursor: pointer;
|
|
56183
|
-
border-right: 1px solid ${GRAY_300};
|
|
56184
|
-
|
|
56185
|
-
&.inactive {
|
|
56186
|
-
color: ${TEXT_BODY};
|
|
56187
|
-
background-color: ${GRAY_100};
|
|
56188
|
-
border-bottom: 1px solid ${GRAY_300};
|
|
56189
|
-
}
|
|
56190
|
-
|
|
56191
|
-
&:not(.inactive) {
|
|
56192
|
-
color: ${TEXT_HEADING};
|
|
56193
|
-
border-bottom: 1px solid #fff;
|
|
56194
|
-
}
|
|
56195
|
-
|
|
56196
|
-
.fa {
|
|
56197
|
-
margin-right: 4px;
|
|
56198
|
-
}
|
|
56199
|
-
}
|
|
56200
|
-
.o-panel-element:last-child {
|
|
56201
|
-
border-right: none;
|
|
56202
|
-
}
|
|
56203
|
-
}
|
|
56204
|
-
}
|
|
56205
|
-
`;
|
|
56206
54713
|
class ChartPanel extends owl.Component {
|
|
56207
54714
|
static template = "o-spreadsheet-ChartPanel";
|
|
56208
54715
|
static components = { Section, ChartTypePicker };
|
|
@@ -56291,26 +54798,6 @@ class ChartPanel extends owl.Component {
|
|
|
56291
54798
|
}
|
|
56292
54799
|
}
|
|
56293
54800
|
|
|
56294
|
-
css /* scss */ `
|
|
56295
|
-
.o-icon-picker {
|
|
56296
|
-
position: absolute;
|
|
56297
|
-
z-index: ${ComponentsImportance.IconPicker};
|
|
56298
|
-
box-shadow: 1px 2px 5px 2px rgba(51, 51, 51, 0.15);
|
|
56299
|
-
background-color: white;
|
|
56300
|
-
padding: 2px 1px;
|
|
56301
|
-
}
|
|
56302
|
-
.o-cf-icon-line {
|
|
56303
|
-
display: flex;
|
|
56304
|
-
padding: 0 6px;
|
|
56305
|
-
}
|
|
56306
|
-
.o-icon-picker-item {
|
|
56307
|
-
cursor: pointer;
|
|
56308
|
-
&:hover {
|
|
56309
|
-
background-color: ${BADGE_SELECTED_COLOR};
|
|
56310
|
-
outline: ${ACTION_COLOR} solid 1px;
|
|
56311
|
-
}
|
|
56312
|
-
}
|
|
56313
|
-
`;
|
|
56314
54801
|
class IconPicker extends owl.Component {
|
|
56315
54802
|
static template = "o-spreadsheet-IconPicker";
|
|
56316
54803
|
static props = {
|
|
@@ -56348,77 +54835,6 @@ function useHighlights(highlightProvider) {
|
|
|
56348
54835
|
}, () => [highlightProvider.highlights]);
|
|
56349
54836
|
}
|
|
56350
54837
|
|
|
56351
|
-
css /* scss */ `
|
|
56352
|
-
.o-cf-preview {
|
|
56353
|
-
&.o-cf-cursor-ptr {
|
|
56354
|
-
cursor: pointer;
|
|
56355
|
-
}
|
|
56356
|
-
|
|
56357
|
-
border-bottom: 1px solid ${GRAY_300};
|
|
56358
|
-
height: 80px;
|
|
56359
|
-
padding: 10px;
|
|
56360
|
-
position: relative;
|
|
56361
|
-
cursor: pointer;
|
|
56362
|
-
&:hover,
|
|
56363
|
-
&.o-cf-dragging {
|
|
56364
|
-
background-color: ${GRAY_200};
|
|
56365
|
-
}
|
|
56366
|
-
|
|
56367
|
-
&:not(:hover) .o-cf-delete-button {
|
|
56368
|
-
display: none;
|
|
56369
|
-
}
|
|
56370
|
-
.o-cf-preview-icon {
|
|
56371
|
-
border: 1px solid ${GRAY_300};
|
|
56372
|
-
background-color: #fff;
|
|
56373
|
-
position: absolute;
|
|
56374
|
-
height: 50px;
|
|
56375
|
-
width: 50px;
|
|
56376
|
-
.o-icon {
|
|
56377
|
-
width: ${CF_ICON_EDGE_LENGTH}px;
|
|
56378
|
-
height: ${CF_ICON_EDGE_LENGTH}px;
|
|
56379
|
-
}
|
|
56380
|
-
}
|
|
56381
|
-
.o-cf-preview-description {
|
|
56382
|
-
left: 65px;
|
|
56383
|
-
margin-bottom: auto;
|
|
56384
|
-
margin-right: 8px;
|
|
56385
|
-
margin-top: auto;
|
|
56386
|
-
position: relative;
|
|
56387
|
-
width: 142px;
|
|
56388
|
-
.o-cf-preview-description-rule {
|
|
56389
|
-
margin-bottom: 4px;
|
|
56390
|
-
max-height: 2.8em;
|
|
56391
|
-
line-height: 1.4em;
|
|
56392
|
-
}
|
|
56393
|
-
.o-cf-preview-range {
|
|
56394
|
-
font-size: 12px;
|
|
56395
|
-
}
|
|
56396
|
-
}
|
|
56397
|
-
.o-cf-delete {
|
|
56398
|
-
left: 90%;
|
|
56399
|
-
top: 39%;
|
|
56400
|
-
position: absolute;
|
|
56401
|
-
}
|
|
56402
|
-
&:not(:hover):not(.o-cf-dragging) .o-cf-drag-handle {
|
|
56403
|
-
display: none !important;
|
|
56404
|
-
}
|
|
56405
|
-
.o-cf-drag-handle {
|
|
56406
|
-
left: -8px;
|
|
56407
|
-
cursor: move;
|
|
56408
|
-
.o-icon {
|
|
56409
|
-
width: 6px;
|
|
56410
|
-
height: 30px;
|
|
56411
|
-
}
|
|
56412
|
-
}
|
|
56413
|
-
|
|
56414
|
-
.o-icon.arrow-down {
|
|
56415
|
-
color: #e06666;
|
|
56416
|
-
}
|
|
56417
|
-
.o-icon.arrow-up {
|
|
56418
|
-
color: #6aa84f;
|
|
56419
|
-
}
|
|
56420
|
-
}
|
|
56421
|
-
`;
|
|
56422
54838
|
class ConditionalFormatPreview extends owl.Component {
|
|
56423
54839
|
static template = "o-spreadsheet-ConditionalFormatPreview";
|
|
56424
54840
|
icons = ICONS;
|
|
@@ -56537,95 +54953,6 @@ class ConditionalFormatPreviewList extends owl.Component {
|
|
|
56537
54953
|
}
|
|
56538
54954
|
}
|
|
56539
54955
|
|
|
56540
|
-
css /* scss */ `
|
|
56541
|
-
.o-cf-ruleEditor {
|
|
56542
|
-
.o-cf-preview-display {
|
|
56543
|
-
border: 1px solid ${GRAY_300};
|
|
56544
|
-
padding: 10px;
|
|
56545
|
-
}
|
|
56546
|
-
|
|
56547
|
-
.o-cf-cell-is-rule {
|
|
56548
|
-
.o-divider {
|
|
56549
|
-
border-right: 1px solid ${GRAY_300};
|
|
56550
|
-
margin: 4px 6px;
|
|
56551
|
-
}
|
|
56552
|
-
}
|
|
56553
|
-
.o-cf-color-scale-editor {
|
|
56554
|
-
.o-threshold {
|
|
56555
|
-
.o-select-with-input {
|
|
56556
|
-
max-width: 150px;
|
|
56557
|
-
}
|
|
56558
|
-
.o-threshold-value {
|
|
56559
|
-
flex-grow: 1;
|
|
56560
|
-
flex-basis: 60%;
|
|
56561
|
-
min-width: 0px; /* input overflows in Firefox otherwise */
|
|
56562
|
-
}
|
|
56563
|
-
.o-threshold-value input:disabled {
|
|
56564
|
-
background-color: #edebed;
|
|
56565
|
-
}
|
|
56566
|
-
}
|
|
56567
|
-
}
|
|
56568
|
-
.o-cf-iconset-rule {
|
|
56569
|
-
.o-cf-clickable-icon {
|
|
56570
|
-
border: 1px solid ${GRAY_200};
|
|
56571
|
-
border-radius: 4px;
|
|
56572
|
-
cursor: pointer;
|
|
56573
|
-
&:hover {
|
|
56574
|
-
border-color: ${ACTION_COLOR};
|
|
56575
|
-
background-color: ${BADGE_SELECTED_COLOR};
|
|
56576
|
-
}
|
|
56577
|
-
.o-icon {
|
|
56578
|
-
width: ${CF_ICON_EDGE_LENGTH}px;
|
|
56579
|
-
height: ${CF_ICON_EDGE_LENGTH}px;
|
|
56580
|
-
}
|
|
56581
|
-
}
|
|
56582
|
-
.o-cf-iconsets {
|
|
56583
|
-
gap: 11px;
|
|
56584
|
-
.o-cf-iconset {
|
|
56585
|
-
padding: 7px 8px;
|
|
56586
|
-
width: 95px;
|
|
56587
|
-
.o-icon {
|
|
56588
|
-
margin: 0 3px;
|
|
56589
|
-
}
|
|
56590
|
-
svg {
|
|
56591
|
-
vertical-align: baseline;
|
|
56592
|
-
}
|
|
56593
|
-
}
|
|
56594
|
-
}
|
|
56595
|
-
.o-inflection {
|
|
56596
|
-
.o-cf-icon-button {
|
|
56597
|
-
padding: 4px 10px;
|
|
56598
|
-
}
|
|
56599
|
-
table {
|
|
56600
|
-
font-size: 13px;
|
|
56601
|
-
td {
|
|
56602
|
-
padding: 6px 0;
|
|
56603
|
-
}
|
|
56604
|
-
|
|
56605
|
-
th.o-cf-iconset-icons {
|
|
56606
|
-
width: 25px;
|
|
56607
|
-
}
|
|
56608
|
-
th.o-cf-iconset-text {
|
|
56609
|
-
width: 82px;
|
|
56610
|
-
}
|
|
56611
|
-
th.o-cf-iconset-operator {
|
|
56612
|
-
width: 20px;
|
|
56613
|
-
}
|
|
56614
|
-
.o-cf-iconset-type {
|
|
56615
|
-
min-width: 80px;
|
|
56616
|
-
}
|
|
56617
|
-
}
|
|
56618
|
-
}
|
|
56619
|
-
}
|
|
56620
|
-
|
|
56621
|
-
.o-icon.arrow-down {
|
|
56622
|
-
color: #e06666;
|
|
56623
|
-
}
|
|
56624
|
-
.o-icon.arrow-up {
|
|
56625
|
-
color: #6aa84f;
|
|
56626
|
-
}
|
|
56627
|
-
}
|
|
56628
|
-
`;
|
|
56629
54956
|
class ConditionalFormattingEditor extends owl.Component {
|
|
56630
54957
|
static template = "o-spreadsheet-ConditionalFormattingEditor";
|
|
56631
54958
|
static props = {
|
|
@@ -57155,25 +55482,6 @@ class ConditionalFormattingPanel extends owl.Component {
|
|
|
57155
55482
|
*/
|
|
57156
55483
|
const currenciesRegistry = new Registry();
|
|
57157
55484
|
|
|
57158
|
-
css /* scss */ `
|
|
57159
|
-
.o-custom-currency {
|
|
57160
|
-
.o-format-proposals {
|
|
57161
|
-
color: black;
|
|
57162
|
-
}
|
|
57163
|
-
|
|
57164
|
-
.o-format-examples {
|
|
57165
|
-
background: #f9fafb;
|
|
57166
|
-
padding: 8px;
|
|
57167
|
-
border-radius: 4px;
|
|
57168
|
-
border: 1px solid #d8dadd;
|
|
57169
|
-
color: #374151;
|
|
57170
|
-
}
|
|
57171
|
-
|
|
57172
|
-
table {
|
|
57173
|
-
table-layout: fixed;
|
|
57174
|
-
}
|
|
57175
|
-
}
|
|
57176
|
-
`;
|
|
57177
55485
|
class CustomCurrencyPanel extends owl.Component {
|
|
57178
55486
|
static template = "o-spreadsheet-CustomCurrencyPanel";
|
|
57179
55487
|
static components = { Section, Checkbox };
|
|
@@ -57406,31 +55714,6 @@ class DataValidationEditor extends owl.Component {
|
|
|
57406
55714
|
}
|
|
57407
55715
|
}
|
|
57408
55716
|
|
|
57409
|
-
css /* scss */ `
|
|
57410
|
-
.o-sidePanel {
|
|
57411
|
-
.o-dv-preview {
|
|
57412
|
-
height: 70px;
|
|
57413
|
-
cursor: pointer;
|
|
57414
|
-
border-bottom: 1px solid ${FIGURE_BORDER_COLOR};
|
|
57415
|
-
|
|
57416
|
-
.o-dv-container {
|
|
57417
|
-
min-width: 0; /* otherwise flex won't shrink correctly */
|
|
57418
|
-
}
|
|
57419
|
-
|
|
57420
|
-
.o-dv-preview-description {
|
|
57421
|
-
font-size: 13px;
|
|
57422
|
-
}
|
|
57423
|
-
|
|
57424
|
-
&:hover {
|
|
57425
|
-
background-color: rgba(0, 0, 0, 0.08);
|
|
57426
|
-
}
|
|
57427
|
-
|
|
57428
|
-
&:not(:hover) .o-dv-preview-delete {
|
|
57429
|
-
display: none !important;
|
|
57430
|
-
}
|
|
57431
|
-
}
|
|
57432
|
-
}
|
|
57433
|
-
`;
|
|
57434
55717
|
class DataValidationPreview extends owl.Component {
|
|
57435
55718
|
static template = "o-spreadsheet-DataValidationPreview";
|
|
57436
55719
|
static props = {
|
|
@@ -57879,38 +56162,6 @@ class FindAndReplaceStore extends SpreadsheetStore {
|
|
|
57879
56162
|
}
|
|
57880
56163
|
}
|
|
57881
56164
|
|
|
57882
|
-
css /* scss */ `
|
|
57883
|
-
.o-find-and-replace {
|
|
57884
|
-
outline: none;
|
|
57885
|
-
height: 100%;
|
|
57886
|
-
.o-input-search-container {
|
|
57887
|
-
display: flex;
|
|
57888
|
-
.o-input-with-count {
|
|
57889
|
-
flex-grow: 1;
|
|
57890
|
-
width: auto;
|
|
57891
|
-
}
|
|
57892
|
-
.o-input-without-count {
|
|
57893
|
-
width: 100%;
|
|
57894
|
-
}
|
|
57895
|
-
.o-input-count {
|
|
57896
|
-
width: fit-content;
|
|
57897
|
-
padding: 4px 0 4px 4px;
|
|
57898
|
-
white-space: nowrap;
|
|
57899
|
-
}
|
|
57900
|
-
}
|
|
57901
|
-
|
|
57902
|
-
.o-result-buttons {
|
|
57903
|
-
.o-button {
|
|
57904
|
-
height: 19px;
|
|
57905
|
-
width: 19px;
|
|
57906
|
-
.o-icon {
|
|
57907
|
-
height: 14px;
|
|
57908
|
-
width: 14px;
|
|
57909
|
-
}
|
|
57910
|
-
}
|
|
57911
|
-
}
|
|
57912
|
-
}
|
|
57913
|
-
`;
|
|
57914
56165
|
class FindAndReplacePanel extends owl.Component {
|
|
57915
56166
|
static template = "o-spreadsheet-FindAndReplacePanel";
|
|
57916
56167
|
static components = { SelectionInput, Section, Checkbox, ValidationMessages };
|
|
@@ -58021,22 +56272,6 @@ class FindAndReplacePanel extends owl.Component {
|
|
|
58021
56272
|
}
|
|
58022
56273
|
}
|
|
58023
56274
|
|
|
58024
|
-
css /* scss */ `
|
|
58025
|
-
.o-more-formats-panel {
|
|
58026
|
-
.format-preview {
|
|
58027
|
-
height: 49px;
|
|
58028
|
-
background-color: white;
|
|
58029
|
-
cursor: pointer;
|
|
58030
|
-
|
|
58031
|
-
&:hover {
|
|
58032
|
-
background-color: rgba(0, 0, 0, 0.08);
|
|
58033
|
-
}
|
|
58034
|
-
}
|
|
58035
|
-
.check-icon {
|
|
58036
|
-
width: 24px;
|
|
58037
|
-
}
|
|
58038
|
-
}
|
|
58039
|
-
`;
|
|
58040
56275
|
const DATE_FORMAT_ACTIONS = createActions([
|
|
58041
56276
|
formatNumberFullDateTime,
|
|
58042
56277
|
formatNumberISODate,
|
|
@@ -58194,21 +56429,6 @@ class PivotMeasureDisplayPanelStore extends SpreadsheetStore {
|
|
|
58194
56429
|
}
|
|
58195
56430
|
}
|
|
58196
56431
|
|
|
58197
|
-
css /* scss */ `
|
|
58198
|
-
.o-sidePanel {
|
|
58199
|
-
.o-pivot-measure-display-field,
|
|
58200
|
-
.o-pivot-measure-display-value {
|
|
58201
|
-
border: solid 1px ${GRAY_300};
|
|
58202
|
-
border-radius: 3px;
|
|
58203
|
-
}
|
|
58204
|
-
|
|
58205
|
-
.o-pivot-measure-display-description {
|
|
58206
|
-
white-space: pre-wrap;
|
|
58207
|
-
color: dimgray;
|
|
58208
|
-
border-left: 2px solid ${GRAY_300};
|
|
58209
|
-
}
|
|
58210
|
-
}
|
|
58211
|
-
`;
|
|
58212
56432
|
class PivotMeasureDisplayPanel extends owl.Component {
|
|
58213
56433
|
static template = "o-spreadsheet-PivotMeasureDisplayPanel";
|
|
58214
56434
|
static props = {
|
|
@@ -58267,11 +56487,6 @@ function getVisiblePivotCellPositions(getters, pivotId) {
|
|
|
58267
56487
|
return positions;
|
|
58268
56488
|
}
|
|
58269
56489
|
|
|
58270
|
-
css /* scss */ `
|
|
58271
|
-
.pivot-defer-update {
|
|
58272
|
-
min-height: 40px;
|
|
58273
|
-
}
|
|
58274
|
-
`;
|
|
58275
56490
|
class PivotDeferUpdate extends owl.Component {
|
|
58276
56491
|
static template = "o-spreadsheet-PivotDeferUpdate";
|
|
58277
56492
|
static props = {
|
|
@@ -58360,25 +56575,6 @@ function getHtmlContentFromPattern(pattern, value, highlightColor, className) {
|
|
|
58360
56575
|
return pendingHtmlContent.filter((content) => content.value);
|
|
58361
56576
|
}
|
|
58362
56577
|
|
|
58363
|
-
css /* scss */ `
|
|
58364
|
-
input.pivot-dimension-search-field:focus {
|
|
58365
|
-
outline: none;
|
|
58366
|
-
}
|
|
58367
|
-
.pivot-dimension-search-field-icon svg {
|
|
58368
|
-
width: 13px;
|
|
58369
|
-
height: 13px;
|
|
58370
|
-
}
|
|
58371
|
-
.pivot-dimension-search {
|
|
58372
|
-
background-color: white;
|
|
58373
|
-
}
|
|
58374
|
-
.add-dimension.o-button {
|
|
58375
|
-
padding: 2px 7px;
|
|
58376
|
-
font-weight: 400;
|
|
58377
|
-
font-size: 12px;
|
|
58378
|
-
flex-grow: 0;
|
|
58379
|
-
height: inherit;
|
|
58380
|
-
}
|
|
58381
|
-
`;
|
|
58382
56578
|
class AddDimensionButton extends owl.Component {
|
|
58383
56579
|
static template = "o-spreadsheet-AddDimensionButton";
|
|
58384
56580
|
static components = { Popover, TextValueProvider };
|
|
@@ -58472,35 +56668,6 @@ class AddDimensionButton extends owl.Component {
|
|
|
58472
56668
|
}
|
|
58473
56669
|
}
|
|
58474
56670
|
|
|
58475
|
-
// don't use bg-white since it's flipped to dark in dark mode and we don't support dark mode
|
|
58476
|
-
css /* scss */ `
|
|
58477
|
-
.pivot-dimension {
|
|
58478
|
-
background-color: white;
|
|
58479
|
-
border: 1px solid ${GRAY_300};
|
|
58480
|
-
border-radius: 4px;
|
|
58481
|
-
|
|
58482
|
-
select.o-input {
|
|
58483
|
-
height: inherit;
|
|
58484
|
-
}
|
|
58485
|
-
|
|
58486
|
-
select > option {
|
|
58487
|
-
background-color: white;
|
|
58488
|
-
}
|
|
58489
|
-
|
|
58490
|
-
.pivot-dim-operator-label {
|
|
58491
|
-
min-width: 120px;
|
|
58492
|
-
}
|
|
58493
|
-
|
|
58494
|
-
&.pivot-dimension-invalid {
|
|
58495
|
-
background-color: #ffdddd;
|
|
58496
|
-
border-color: red !important;
|
|
58497
|
-
select,
|
|
58498
|
-
input {
|
|
58499
|
-
background-color: #ffdddd;
|
|
58500
|
-
}
|
|
58501
|
-
}
|
|
58502
|
-
}
|
|
58503
|
-
`;
|
|
58504
56671
|
class PivotDimension extends owl.Component {
|
|
58505
56672
|
static template = "o-spreadsheet-PivotDimension";
|
|
58506
56673
|
static props = {
|
|
@@ -58652,19 +56819,6 @@ class PivotMeasureEditor extends owl.Component {
|
|
|
58652
56819
|
}
|
|
58653
56820
|
}
|
|
58654
56821
|
|
|
58655
|
-
css /* scss */ `
|
|
58656
|
-
.o-pivot-sort {
|
|
58657
|
-
.o-sort-card {
|
|
58658
|
-
width: fit-content;
|
|
58659
|
-
background-color: ${GRAY_100};
|
|
58660
|
-
border: 1px solid ${GRAY_300};
|
|
58661
|
-
|
|
58662
|
-
.o-sort-value {
|
|
58663
|
-
color: ${PRIMARY_BUTTON_BG};
|
|
58664
|
-
}
|
|
58665
|
-
}
|
|
58666
|
-
}
|
|
58667
|
-
`;
|
|
58668
56822
|
class PivotSortSection extends owl.Component {
|
|
58669
56823
|
static template = "o-spreadsheet-PivotSortSection";
|
|
58670
56824
|
static components = {
|
|
@@ -58710,11 +56864,6 @@ class PivotSortSection extends owl.Component {
|
|
|
58710
56864
|
}
|
|
58711
56865
|
}
|
|
58712
56866
|
|
|
58713
|
-
css /* scss */ `
|
|
58714
|
-
.add-calculated-measure {
|
|
58715
|
-
cursor: pointer;
|
|
58716
|
-
}
|
|
58717
|
-
`;
|
|
58718
56867
|
class PivotLayoutConfigurator extends owl.Component {
|
|
58719
56868
|
static template = "o-spreadsheet-PivotLayoutConfigurator";
|
|
58720
56869
|
static components = {
|
|
@@ -59529,11 +57678,6 @@ class PivotSidePanel extends owl.Component {
|
|
|
59529
57678
|
}
|
|
59530
57679
|
}
|
|
59531
57680
|
|
|
59532
|
-
css /* scss */ `
|
|
59533
|
-
.o-checkbox-selection {
|
|
59534
|
-
max-height: 300px;
|
|
59535
|
-
}
|
|
59536
|
-
`;
|
|
59537
57681
|
class RemoveDuplicatesPanel extends owl.Component {
|
|
59538
57682
|
static template = "o-spreadsheet-RemoveDuplicatesPanel";
|
|
59539
57683
|
static components = { ValidationMessages, Section, Checkbox };
|
|
@@ -59620,12 +57764,6 @@ class RemoveDuplicatesPanel extends owl.Component {
|
|
|
59620
57764
|
}
|
|
59621
57765
|
}
|
|
59622
57766
|
|
|
59623
|
-
css /* scss */ `
|
|
59624
|
-
.o-locale-preview {
|
|
59625
|
-
border: 1px solid ${GRAY_300};
|
|
59626
|
-
background-color: ${GRAY_100};
|
|
59627
|
-
}
|
|
59628
|
-
`;
|
|
59629
57767
|
class SettingsPanel extends owl.Component {
|
|
59630
57768
|
static template = "o-spreadsheet-SettingsPanel";
|
|
59631
57769
|
static components = { Section, ValidationMessages, BadgeSelection };
|
|
@@ -59899,34 +58037,6 @@ function drawTexts(ctx, tableStyle, colWidth, rowHeight) {
|
|
|
59899
58037
|
ctx.restore();
|
|
59900
58038
|
}
|
|
59901
58039
|
|
|
59902
|
-
css /* scss */ `
|
|
59903
|
-
.o-table-style-list-item {
|
|
59904
|
-
border: 1px solid transparent;
|
|
59905
|
-
border-radius: 4px;
|
|
59906
|
-
&.selected {
|
|
59907
|
-
border: 1px solid ${ACTION_COLOR};
|
|
59908
|
-
background: ${BADGE_SELECTED_COLOR};
|
|
59909
|
-
}
|
|
59910
|
-
|
|
59911
|
-
&:hover {
|
|
59912
|
-
background: #ddd;
|
|
59913
|
-
.o-table-style-edit-button {
|
|
59914
|
-
display: block !important;
|
|
59915
|
-
right: 0;
|
|
59916
|
-
top: 0;
|
|
59917
|
-
background: #fff;
|
|
59918
|
-
cursor: pointer;
|
|
59919
|
-
border: 1px solid #ddd;
|
|
59920
|
-
padding: 1px 1px 1px 2px;
|
|
59921
|
-
.o-icon {
|
|
59922
|
-
font-size: 12px;
|
|
59923
|
-
width: 12px;
|
|
59924
|
-
height: 12px;
|
|
59925
|
-
}
|
|
59926
|
-
}
|
|
59927
|
-
}
|
|
59928
|
-
}
|
|
59929
|
-
`;
|
|
59930
58040
|
class TableStylePreview extends owl.Component {
|
|
59931
58041
|
static template = "o-spreadsheet-TableStylePreview";
|
|
59932
58042
|
static components = { MenuPopover };
|
|
@@ -59987,52 +58097,6 @@ class TableStylePreview extends owl.Component {
|
|
|
59987
58097
|
}
|
|
59988
58098
|
}
|
|
59989
58099
|
|
|
59990
|
-
css /* scss */ `
|
|
59991
|
-
.o-table-style-popover {
|
|
59992
|
-
/* 7 tables preview + padding by line */
|
|
59993
|
-
width: calc((66px + 4px * 2) * 7 + 1.5rem * 2);
|
|
59994
|
-
background: #fff;
|
|
59995
|
-
font-size: 14px;
|
|
59996
|
-
user-select: none;
|
|
59997
|
-
|
|
59998
|
-
.o-notebook {
|
|
59999
|
-
border-bottom: 1px solid ${GRAY_300};
|
|
60000
|
-
|
|
60001
|
-
.o-notebook-tab {
|
|
60002
|
-
padding: 5px 15px;
|
|
60003
|
-
border: 1px solid ${GRAY_300};
|
|
60004
|
-
margin-bottom: -1px;
|
|
60005
|
-
margin-left: -1px;
|
|
60006
|
-
color: ${TEXT_BODY};
|
|
60007
|
-
cursor: pointer;
|
|
60008
|
-
transition: color 0.2s, border-color 0.2s;
|
|
60009
|
-
|
|
60010
|
-
&.selected {
|
|
60011
|
-
border-bottom-color: #fff;
|
|
60012
|
-
border-top-color: ${PRIMARY_BUTTON_BG};
|
|
60013
|
-
color: ${TEXT_HEADING};
|
|
60014
|
-
}
|
|
60015
|
-
}
|
|
60016
|
-
}
|
|
60017
|
-
|
|
60018
|
-
.o-table-style-list-item {
|
|
60019
|
-
padding: 3px;
|
|
60020
|
-
}
|
|
60021
|
-
|
|
60022
|
-
.o-table-style-popover-preview {
|
|
60023
|
-
width: 66px;
|
|
60024
|
-
height: 51px;
|
|
60025
|
-
}
|
|
60026
|
-
|
|
60027
|
-
.o-new-table-style {
|
|
60028
|
-
font-size: 36px;
|
|
60029
|
-
color: #666;
|
|
60030
|
-
&:hover {
|
|
60031
|
-
background: #f5f5f5;
|
|
60032
|
-
}
|
|
60033
|
-
}
|
|
60034
|
-
}
|
|
60035
|
-
`;
|
|
60036
58100
|
class TableStylesPopover extends owl.Component {
|
|
60037
58101
|
static template = "o-spreadsheet-TableStylesPopover";
|
|
60038
58102
|
static components = { Popover, TableStylePreview };
|
|
@@ -60072,31 +58136,6 @@ class TableStylesPopover extends owl.Component {
|
|
|
60072
58136
|
}
|
|
60073
58137
|
}
|
|
60074
58138
|
|
|
60075
|
-
css /* scss */ `
|
|
60076
|
-
.o-table-style-picker {
|
|
60077
|
-
border: 1px solid ${GRAY_300};
|
|
60078
|
-
border-radius: 3px;
|
|
60079
|
-
|
|
60080
|
-
.o-table-style-picker-arrow {
|
|
60081
|
-
border-left: 1px solid ${GRAY_300};
|
|
60082
|
-
|
|
60083
|
-
&:hover {
|
|
60084
|
-
background: #f5f5f5;
|
|
60085
|
-
cursor: pointer;
|
|
60086
|
-
}
|
|
60087
|
-
}
|
|
60088
|
-
|
|
60089
|
-
.o-table-style-list-item {
|
|
60090
|
-
padding: 5px 6px;
|
|
60091
|
-
margin: 5px 2px;
|
|
60092
|
-
|
|
60093
|
-
.o-table-style-picker-preview {
|
|
60094
|
-
width: 51px;
|
|
60095
|
-
height: 36px;
|
|
60096
|
-
}
|
|
60097
|
-
}
|
|
60098
|
-
}
|
|
60099
|
-
`;
|
|
60100
58139
|
class TableStylePicker extends owl.Component {
|
|
60101
58140
|
static template = "o-spreadsheet-TableStylePicker";
|
|
60102
58141
|
static components = { TableStylesPopover, TableStylePreview };
|
|
@@ -60140,19 +58179,6 @@ class TableStylePicker extends owl.Component {
|
|
|
60140
58179
|
}
|
|
60141
58180
|
}
|
|
60142
58181
|
|
|
60143
|
-
css /* scss */ `
|
|
60144
|
-
.o-table-panel {
|
|
60145
|
-
input.o-table-n-of-headers {
|
|
60146
|
-
width: 14px;
|
|
60147
|
-
text-align: center;
|
|
60148
|
-
}
|
|
60149
|
-
|
|
60150
|
-
.o-info-icon {
|
|
60151
|
-
width: 14px;
|
|
60152
|
-
height: 14px;
|
|
60153
|
-
}
|
|
60154
|
-
}
|
|
60155
|
-
`;
|
|
60156
58182
|
class TablePanel extends owl.Component {
|
|
60157
58183
|
static template = "o-spreadsheet-TablePanel";
|
|
60158
58184
|
static components = { TableStylePicker, SelectionInput, ValidationMessages, Checkbox, Section };
|
|
@@ -60304,19 +58330,6 @@ class TablePanel extends owl.Component {
|
|
|
60304
58330
|
}
|
|
60305
58331
|
}
|
|
60306
58332
|
|
|
60307
|
-
css /* scss */ `
|
|
60308
|
-
.o-table-style-editor-panel {
|
|
60309
|
-
.o-table-style-list-item {
|
|
60310
|
-
margin: 2px 7px;
|
|
60311
|
-
padding: 6px 9px;
|
|
60312
|
-
|
|
60313
|
-
.o-table-style-edit-template-preview {
|
|
60314
|
-
width: 71px;
|
|
60315
|
-
height: 51px;
|
|
60316
|
-
}
|
|
60317
|
-
}
|
|
60318
|
-
}
|
|
60319
|
-
`;
|
|
60320
58333
|
const DEFAULT_TABLE_STYLE_COLOR = "#3C78D8";
|
|
60321
58334
|
class TableStyleEditorPanel extends owl.Component {
|
|
60322
58335
|
static template = "o-spreadsheet-TableStyleEditorPanel";
|
|
@@ -60751,15 +58764,6 @@ class SidePanelStore extends SpreadsheetStore {
|
|
|
60751
58764
|
|
|
60752
58765
|
const SIZE = 3;
|
|
60753
58766
|
const COLOR = "#777";
|
|
60754
|
-
css /* scss */ `
|
|
60755
|
-
.o-table-resizer {
|
|
60756
|
-
width: ${SIZE * 2}px;
|
|
60757
|
-
height: ${SIZE * 2}px;
|
|
60758
|
-
border-bottom: ${SIZE}px solid ${COLOR};
|
|
60759
|
-
border-right: ${SIZE}px solid ${COLOR};
|
|
60760
|
-
cursor: nwse-resize;
|
|
60761
|
-
}
|
|
60762
|
-
`;
|
|
60763
58767
|
class TableResizer extends owl.Component {
|
|
60764
58768
|
static template = "o-spreadsheet-TableResizer";
|
|
60765
58769
|
static props = { table: Object };
|
|
@@ -61576,43 +59580,6 @@ class FullScreenChart extends owl.Component {
|
|
|
61576
59580
|
}
|
|
61577
59581
|
}
|
|
61578
59582
|
|
|
61579
|
-
css /* scss */ `
|
|
61580
|
-
.o_pivot_html_renderer {
|
|
61581
|
-
width: 100%;
|
|
61582
|
-
border-collapse: collapse;
|
|
61583
|
-
|
|
61584
|
-
&:hover {
|
|
61585
|
-
cursor: pointer;
|
|
61586
|
-
}
|
|
61587
|
-
|
|
61588
|
-
td,
|
|
61589
|
-
th {
|
|
61590
|
-
border: 1px solid #dee2e6;
|
|
61591
|
-
background-color: #fff;
|
|
61592
|
-
padding: 0.3rem;
|
|
61593
|
-
white-space: nowrap;
|
|
61594
|
-
|
|
61595
|
-
&:hover {
|
|
61596
|
-
filter: brightness(0.9);
|
|
61597
|
-
}
|
|
61598
|
-
}
|
|
61599
|
-
|
|
61600
|
-
td {
|
|
61601
|
-
text-align: right;
|
|
61602
|
-
}
|
|
61603
|
-
|
|
61604
|
-
th {
|
|
61605
|
-
background-color: #f5f5f5;
|
|
61606
|
-
font-weight: bold;
|
|
61607
|
-
color: black;
|
|
61608
|
-
}
|
|
61609
|
-
|
|
61610
|
-
.o_missing_value {
|
|
61611
|
-
color: #46646d;
|
|
61612
|
-
background: #e7f2f6;
|
|
61613
|
-
}
|
|
61614
|
-
}
|
|
61615
|
-
`;
|
|
61616
59583
|
class PivotHTMLRenderer extends owl.Component {
|
|
61617
59584
|
static template = "o_spreadsheet.PivotHTMLRenderer";
|
|
61618
59585
|
static components = { Checkbox };
|
|
@@ -74913,7 +72880,10 @@ class SortPlugin extends UIPlugin {
|
|
|
74913
72880
|
return "Success" /* CommandResult.Success */;
|
|
74914
72881
|
}
|
|
74915
72882
|
checkArrayFormulaInSortZone({ sheetId, zone }) {
|
|
74916
|
-
const arrayFormulaInZone = positions(zone).some(({ col, row }) =>
|
|
72883
|
+
const arrayFormulaInZone = positions(zone).some(({ col, row }) => {
|
|
72884
|
+
const originPosition = this.getters.getArrayFormulaSpreadingOn({ sheetId, col, row });
|
|
72885
|
+
return originPosition && !deepEquals(originPosition, { sheetId, col, row });
|
|
72886
|
+
});
|
|
74917
72887
|
return arrayFormulaInZone ? "SortZoneWithArrayFormulas" /* CommandResult.SortZoneWithArrayFormulas */ : "Success" /* CommandResult.Success */;
|
|
74918
72888
|
}
|
|
74919
72889
|
/**
|
|
@@ -77626,13 +75596,10 @@ class GridSelectionPlugin extends UIPlugin {
|
|
|
77626
75596
|
const deltaCol = isBasedBefore && isCol ? thickness : 0;
|
|
77627
75597
|
const deltaRow = isBasedBefore && !isCol ? thickness : 0;
|
|
77628
75598
|
const toRemove = isBasedBefore ? cmd.elements.map((el) => el + thickness) : cmd.elements;
|
|
77629
|
-
const originalSize =
|
|
77630
|
-
|
|
77631
|
-
|
|
77632
|
-
|
|
77633
|
-
const isDefaultCol = isCol && size === DEFAULT_CELL_WIDTH;
|
|
77634
|
-
return [element, isDefaultCol ? undefined : size];
|
|
77635
|
-
}));
|
|
75599
|
+
const originalSize = {};
|
|
75600
|
+
for (const element of toRemove) {
|
|
75601
|
+
originalSize[element] = this.getters.getHeaderSize(cmd.sheetId, cmd.dimension, element);
|
|
75602
|
+
}
|
|
77636
75603
|
const target = [
|
|
77637
75604
|
{
|
|
77638
75605
|
left: isCol ? start + deltaCol : 0,
|
|
@@ -77676,11 +75643,11 @@ class GridSelectionPlugin extends UIPlugin {
|
|
|
77676
75643
|
for (const element of toRemove) {
|
|
77677
75644
|
const size = originalSize[element];
|
|
77678
75645
|
const currentSize = this.getters.getHeaderSize(cmd.sheetId, cmd.dimension, currentIndex);
|
|
77679
|
-
if (size
|
|
75646
|
+
if (size !== currentSize) {
|
|
77680
75647
|
resizingGroups[size] ??= [];
|
|
77681
75648
|
resizingGroups[size].push(currentIndex);
|
|
77682
|
-
currentIndex += 1;
|
|
77683
75649
|
}
|
|
75650
|
+
currentIndex += 1;
|
|
77684
75651
|
}
|
|
77685
75652
|
for (const size in resizingGroups) {
|
|
77686
75653
|
this.dispatch("RESIZE_COLUMNS_ROWS", {
|
|
@@ -80599,11 +78566,6 @@ const RIPPLE_KEY_FRAMES = [
|
|
|
80599
78566
|
{ transform: "scale(0.8)", offset: 0.33 },
|
|
80600
78567
|
{ opacity: "0", transform: "scale(1)", offset: 1 },
|
|
80601
78568
|
];
|
|
80602
|
-
css /* scss */ `
|
|
80603
|
-
.o-ripple {
|
|
80604
|
-
z-index: 1;
|
|
80605
|
-
}
|
|
80606
|
-
`;
|
|
80607
78569
|
class RippleEffect extends owl.Component {
|
|
80608
78570
|
static template = "o-spreadsheet-RippleEffect";
|
|
80609
78571
|
static props = {
|
|
@@ -80775,59 +78737,6 @@ function interactiveRenameSheet(env, sheetId, name, errorCallback) {
|
|
|
80775
78737
|
}
|
|
80776
78738
|
}
|
|
80777
78739
|
|
|
80778
|
-
css /* scss */ `
|
|
80779
|
-
.o-sheet {
|
|
80780
|
-
padding: 0 15px;
|
|
80781
|
-
padding-right: 10px;
|
|
80782
|
-
height: ${DESKTOP_BOTTOMBAR_HEIGHT}px;
|
|
80783
|
-
border-left: 1px solid #c1c1c1;
|
|
80784
|
-
border-right: 1px solid #c1c1c1;
|
|
80785
|
-
margin-left: -1px;
|
|
80786
|
-
cursor: pointer;
|
|
80787
|
-
&:hover {
|
|
80788
|
-
background-color: rgba(0, 0, 0, 0.08);
|
|
80789
|
-
}
|
|
80790
|
-
|
|
80791
|
-
&.active {
|
|
80792
|
-
color: ${ACTION_COLOR};
|
|
80793
|
-
background-color: #ffffff;
|
|
80794
|
-
box-shadow: 0 1px 3px 1px rgba(60, 64, 67, 0.15);
|
|
80795
|
-
}
|
|
80796
|
-
|
|
80797
|
-
.o-sheet-icon {
|
|
80798
|
-
z-index: 1;
|
|
80799
|
-
|
|
80800
|
-
&:hover {
|
|
80801
|
-
background-color: rgba(0, 0, 0, 0.08);
|
|
80802
|
-
}
|
|
80803
|
-
}
|
|
80804
|
-
|
|
80805
|
-
.o-sheet-name {
|
|
80806
|
-
outline: none;
|
|
80807
|
-
padding: 2px 4px;
|
|
80808
|
-
|
|
80809
|
-
&.o-sheet-name-editable {
|
|
80810
|
-
border-radius: 2px;
|
|
80811
|
-
border: 2px solid mediumblue;
|
|
80812
|
-
/* negative margins so nothing moves when the border is added */
|
|
80813
|
-
margin-left: -2px;
|
|
80814
|
-
margin-right: -2px;
|
|
80815
|
-
}
|
|
80816
|
-
}
|
|
80817
|
-
|
|
80818
|
-
.o-sheet-color {
|
|
80819
|
-
bottom: 0;
|
|
80820
|
-
left: 0;
|
|
80821
|
-
height: 6px;
|
|
80822
|
-
z-index: 1;
|
|
80823
|
-
width: calc(100% - 1px);
|
|
80824
|
-
}
|
|
80825
|
-
}
|
|
80826
|
-
|
|
80827
|
-
.o-spreadshet-mobile .o-sheet {
|
|
80828
|
-
height: ${MOBILE_BOTTOMBAR_HEIGHT}px;
|
|
80829
|
-
}
|
|
80830
|
-
`;
|
|
80831
78740
|
class BottomBarSheet extends owl.Component {
|
|
80832
78741
|
static template = "o-spreadsheet-BottomBarSheet";
|
|
80833
78742
|
static props = {
|
|
@@ -81107,20 +79016,6 @@ class AggregateStatisticsStore extends SpreadsheetStore {
|
|
|
81107
79016
|
}
|
|
81108
79017
|
}
|
|
81109
79018
|
|
|
81110
|
-
// -----------------------------------------------------------------------------
|
|
81111
|
-
// SpreadSheet
|
|
81112
|
-
// -----------------------------------------------------------------------------
|
|
81113
|
-
css /* scss */ `
|
|
81114
|
-
.o-selection-statistic {
|
|
81115
|
-
margin-right: 20px;
|
|
81116
|
-
padding: 4px 4px 4px 8px;
|
|
81117
|
-
color: #333;
|
|
81118
|
-
cursor: pointer;
|
|
81119
|
-
&:hover {
|
|
81120
|
-
background-color: rgba(0, 0, 0, 0.08) !important;
|
|
81121
|
-
}
|
|
81122
|
-
}
|
|
81123
|
-
`;
|
|
81124
79019
|
class BottomBarStatistic extends owl.Component {
|
|
81125
79020
|
static template = "o-spreadsheet-BottomBarStatistic";
|
|
81126
79021
|
static props = {
|
|
@@ -81177,77 +79072,6 @@ class BottomBarStatistic extends owl.Component {
|
|
|
81177
79072
|
// SpreadSheet
|
|
81178
79073
|
// -----------------------------------------------------------------------------
|
|
81179
79074
|
const MENU_MAX_HEIGHT = 250;
|
|
81180
|
-
css /* scss */ `
|
|
81181
|
-
.o-spreadsheet-bottom-bar {
|
|
81182
|
-
background-color: ${BACKGROUND_GRAY_COLOR};
|
|
81183
|
-
padding-left: ${HEADER_WIDTH}px;
|
|
81184
|
-
font-size: 15px;
|
|
81185
|
-
border-top: 1px solid lightgrey;
|
|
81186
|
-
|
|
81187
|
-
.o-sheet-item {
|
|
81188
|
-
cursor: pointer;
|
|
81189
|
-
&:hover {
|
|
81190
|
-
background-color: rgba(0, 0, 0, 0.08);
|
|
81191
|
-
}
|
|
81192
|
-
}
|
|
81193
|
-
|
|
81194
|
-
.o-all-sheets {
|
|
81195
|
-
max-width: 70%;
|
|
81196
|
-
.o-bottom-bar-fade-out {
|
|
81197
|
-
background-image: linear-gradient(-90deg, #cfcfcf, transparent 1%);
|
|
81198
|
-
}
|
|
81199
|
-
|
|
81200
|
-
.o-bottom-bar-fade-in {
|
|
81201
|
-
z-index: 1;
|
|
81202
|
-
background-image: linear-gradient(90deg, #cfcfcf, transparent 1%);
|
|
81203
|
-
}
|
|
81204
|
-
|
|
81205
|
-
.o-sheet-list {
|
|
81206
|
-
overflow-y: hidden;
|
|
81207
|
-
overflow-x: auto;
|
|
81208
|
-
|
|
81209
|
-
&::-webkit-scrollbar {
|
|
81210
|
-
display: none; /* Chrome */
|
|
81211
|
-
}
|
|
81212
|
-
-ms-overflow-style: none; /* IE and Edge */
|
|
81213
|
-
scrollbar-width: none; /* Firefox */
|
|
81214
|
-
}
|
|
81215
|
-
}
|
|
81216
|
-
|
|
81217
|
-
.o-bottom-bar-arrows {
|
|
81218
|
-
.o-bottom-bar-arrow {
|
|
81219
|
-
cursor: pointer;
|
|
81220
|
-
&:hover:not([class*="o-disabled"]) {
|
|
81221
|
-
.o-icon {
|
|
81222
|
-
opacity: 0.9;
|
|
81223
|
-
}
|
|
81224
|
-
}
|
|
81225
|
-
|
|
81226
|
-
.o-icon {
|
|
81227
|
-
height: 18px;
|
|
81228
|
-
width: 18px;
|
|
81229
|
-
font-size: 18px;
|
|
81230
|
-
}
|
|
81231
|
-
}
|
|
81232
|
-
}
|
|
81233
|
-
}
|
|
81234
|
-
|
|
81235
|
-
.o-spreadsheet-mobile .o-spreadsheet-bottom-bar {
|
|
81236
|
-
padding-left: 0;
|
|
81237
|
-
|
|
81238
|
-
.add-sheet-container {
|
|
81239
|
-
order: 2;
|
|
81240
|
-
}
|
|
81241
|
-
|
|
81242
|
-
.o-add-sheet {
|
|
81243
|
-
margin-left: 0.5rem;
|
|
81244
|
-
}
|
|
81245
|
-
|
|
81246
|
-
.o-all-sheets {
|
|
81247
|
-
max-width: none;
|
|
81248
|
-
}
|
|
81249
|
-
}
|
|
81250
|
-
`;
|
|
81251
79075
|
class BottomBar extends owl.Component {
|
|
81252
79076
|
static template = "o-spreadsheet-BottomBar";
|
|
81253
79077
|
static props = { onClick: Function };
|
|
@@ -81503,12 +79327,6 @@ class ClickableCellsStore extends SpreadsheetStore {
|
|
|
81503
79327
|
}
|
|
81504
79328
|
}
|
|
81505
79329
|
|
|
81506
|
-
css /* scss */ `
|
|
81507
|
-
.o-dashboard-clickable-cell {
|
|
81508
|
-
position: absolute;
|
|
81509
|
-
cursor: pointer;
|
|
81510
|
-
}
|
|
81511
|
-
`;
|
|
81512
79330
|
class SpreadsheetDashboard extends owl.Component {
|
|
81513
79331
|
static template = "o-spreadsheet-SpreadsheetDashboard";
|
|
81514
79332
|
static props = { getGridSize: Function };
|
|
@@ -81600,27 +79418,6 @@ class SpreadsheetDashboard extends owl.Component {
|
|
|
81600
79418
|
}
|
|
81601
79419
|
}
|
|
81602
79420
|
|
|
81603
|
-
css /* scss */ `
|
|
81604
|
-
.o-header-group {
|
|
81605
|
-
.o-header-group-header {
|
|
81606
|
-
z-index: ${ComponentsImportance.HeaderGroupingButton};
|
|
81607
|
-
.o-group-fold-button {
|
|
81608
|
-
cursor: pointer;
|
|
81609
|
-
width: 15px;
|
|
81610
|
-
height: 15px;
|
|
81611
|
-
border: 1px solid ${HEADER_GROUPING_BORDER_COLOR};
|
|
81612
|
-
.o-icon {
|
|
81613
|
-
width: 7px;
|
|
81614
|
-
height: 7px;
|
|
81615
|
-
}
|
|
81616
|
-
|
|
81617
|
-
&:hover {
|
|
81618
|
-
border-color: #777;
|
|
81619
|
-
}
|
|
81620
|
-
}
|
|
81621
|
-
}
|
|
81622
|
-
}
|
|
81623
|
-
`;
|
|
81624
79421
|
class AbstractHeaderGroup extends owl.Component {
|
|
81625
79422
|
static template = "o-spreadsheet-HeaderGroup";
|
|
81626
79423
|
static props = {
|
|
@@ -81771,27 +79568,6 @@ class ColGroup extends AbstractHeaderGroup {
|
|
|
81771
79568
|
}
|
|
81772
79569
|
}
|
|
81773
79570
|
|
|
81774
|
-
css /* scss */ `
|
|
81775
|
-
.o-header-group-frozen-pane-border {
|
|
81776
|
-
&.o-group-rows {
|
|
81777
|
-
margin-top: -1px;
|
|
81778
|
-
border-bottom: 3px solid ${FROZEN_PANE_HEADER_BORDER_COLOR};
|
|
81779
|
-
}
|
|
81780
|
-
&.o-group-columns {
|
|
81781
|
-
margin-left: -1px;
|
|
81782
|
-
border-right: 3px solid ${FROZEN_PANE_HEADER_BORDER_COLOR};
|
|
81783
|
-
}
|
|
81784
|
-
}
|
|
81785
|
-
|
|
81786
|
-
.o-header-group-main-pane {
|
|
81787
|
-
&.o-group-rows {
|
|
81788
|
-
margin-top: -2px; /* Counteract o-header-group-frozen-pane-border offset */
|
|
81789
|
-
}
|
|
81790
|
-
&.o-group-columns {
|
|
81791
|
-
margin-left: -2px;
|
|
81792
|
-
}
|
|
81793
|
-
}
|
|
81794
|
-
`;
|
|
81795
79571
|
class HeaderGroupContainer extends owl.Component {
|
|
81796
79572
|
static template = "o-spreadsheet-HeaderGroupContainer";
|
|
81797
79573
|
static props = {
|
|
@@ -81870,121 +79646,6 @@ function useScreenWidth() {
|
|
|
81870
79646
|
};
|
|
81871
79647
|
}
|
|
81872
79648
|
|
|
81873
|
-
css /* scss */ `
|
|
81874
|
-
.o-sidePanel {
|
|
81875
|
-
display: flex;
|
|
81876
|
-
flex-direction: column;
|
|
81877
|
-
overflow-x: hidden;
|
|
81878
|
-
background-color: white;
|
|
81879
|
-
border: solid ${GRAY_300};
|
|
81880
|
-
border-width: 1px 0 0 1px;
|
|
81881
|
-
user-select: none;
|
|
81882
|
-
color: ${TEXT_BODY};
|
|
81883
|
-
|
|
81884
|
-
&.collapsed {
|
|
81885
|
-
padding: 8px;
|
|
81886
|
-
cursor: pointer;
|
|
81887
|
-
|
|
81888
|
-
.o-sidePanelTitle {
|
|
81889
|
-
writing-mode: vertical-rl;
|
|
81890
|
-
text-orientation: mixed;
|
|
81891
|
-
}
|
|
81892
|
-
}
|
|
81893
|
-
|
|
81894
|
-
.o-sidePanelTitle {
|
|
81895
|
-
line-height: 20px;
|
|
81896
|
-
font-size: 16px;
|
|
81897
|
-
}
|
|
81898
|
-
|
|
81899
|
-
.o-sidePanelHeader {
|
|
81900
|
-
padding: 8px;
|
|
81901
|
-
border-bottom: 1px solid ${GRAY_300};
|
|
81902
|
-
}
|
|
81903
|
-
|
|
81904
|
-
.o-sidePanelAction {
|
|
81905
|
-
padding: 5px 10px;
|
|
81906
|
-
cursor: pointer;
|
|
81907
|
-
|
|
81908
|
-
&.active {
|
|
81909
|
-
background-color: ${BUTTON_ACTIVE_BG};
|
|
81910
|
-
}
|
|
81911
|
-
|
|
81912
|
-
&:hover {
|
|
81913
|
-
background-color: ${BUTTON_HOVER_BG};
|
|
81914
|
-
}
|
|
81915
|
-
}
|
|
81916
|
-
.o-sidePanelBody-container {
|
|
81917
|
-
/* This overwrites the min-height: auto; of flex. Without this, a flex div cannot be smaller than its children */
|
|
81918
|
-
min-height: 0;
|
|
81919
|
-
}
|
|
81920
|
-
.o-sidePanelBody {
|
|
81921
|
-
overflow: auto;
|
|
81922
|
-
width: 100%;
|
|
81923
|
-
height: 100%;
|
|
81924
|
-
|
|
81925
|
-
.o-section {
|
|
81926
|
-
padding: 16px;
|
|
81927
|
-
|
|
81928
|
-
.o-section-title {
|
|
81929
|
-
font-weight: 500;
|
|
81930
|
-
margin-bottom: 5px;
|
|
81931
|
-
}
|
|
81932
|
-
|
|
81933
|
-
.o-section-subtitle {
|
|
81934
|
-
font-weight: 500;
|
|
81935
|
-
font-size: 13px;
|
|
81936
|
-
line-height: 14px;
|
|
81937
|
-
margin: 8px 0 4px 0;
|
|
81938
|
-
}
|
|
81939
|
-
|
|
81940
|
-
.o-subsection-left {
|
|
81941
|
-
display: inline-block;
|
|
81942
|
-
width: 47%;
|
|
81943
|
-
margin-right: 3%;
|
|
81944
|
-
}
|
|
81945
|
-
|
|
81946
|
-
.o-subsection-right {
|
|
81947
|
-
display: inline-block;
|
|
81948
|
-
width: 47%;
|
|
81949
|
-
margin-left: 3%;
|
|
81950
|
-
}
|
|
81951
|
-
}
|
|
81952
|
-
|
|
81953
|
-
.o-sidePanel-composer {
|
|
81954
|
-
color: ${TEXT_BODY};
|
|
81955
|
-
}
|
|
81956
|
-
}
|
|
81957
|
-
|
|
81958
|
-
.o-sidePanelButtons {
|
|
81959
|
-
display: flex;
|
|
81960
|
-
gap: 8px;
|
|
81961
|
-
}
|
|
81962
|
-
|
|
81963
|
-
.o-invalid {
|
|
81964
|
-
border-width: 2px;
|
|
81965
|
-
border-color: red;
|
|
81966
|
-
}
|
|
81967
|
-
|
|
81968
|
-
.o-sidePanel-handle-container {
|
|
81969
|
-
width: 8px;
|
|
81970
|
-
position: fixed;
|
|
81971
|
-
top: 50%;
|
|
81972
|
-
z-index: 1;
|
|
81973
|
-
}
|
|
81974
|
-
.o-sidePanel-handle {
|
|
81975
|
-
cursor: col-resize;
|
|
81976
|
-
color: #a9a9a9;
|
|
81977
|
-
.o-icon {
|
|
81978
|
-
height: 25px;
|
|
81979
|
-
margin-left: -5px;
|
|
81980
|
-
}
|
|
81981
|
-
}
|
|
81982
|
-
}
|
|
81983
|
-
|
|
81984
|
-
.o-fw-bold {
|
|
81985
|
-
font-weight: 500;
|
|
81986
|
-
}
|
|
81987
|
-
`;
|
|
81988
79649
|
class SidePanel extends owl.Component {
|
|
81989
79650
|
static template = "o-spreadsheet-SidePanel";
|
|
81990
79651
|
static props = {
|
|
@@ -82159,11 +79820,6 @@ class RibbonMenu extends owl.Component {
|
|
|
82159
79820
|
}
|
|
82160
79821
|
}
|
|
82161
79822
|
|
|
82162
|
-
css `
|
|
82163
|
-
.o-small-composer {
|
|
82164
|
-
z-index: ${ComponentsImportance.TopBarComposer};
|
|
82165
|
-
}
|
|
82166
|
-
`;
|
|
82167
79823
|
class SmallBottomBar extends owl.Component {
|
|
82168
79824
|
static components = { Composer, BottomBar, Ripple, RibbonMenu };
|
|
82169
79825
|
static template = "o-spreadsheet-SmallBottomBar";
|
|
@@ -82251,36 +79907,12 @@ class SmallBottomBar extends owl.Component {
|
|
|
82251
79907
|
|
|
82252
79908
|
const COMPOSER_MAX_HEIGHT = 300;
|
|
82253
79909
|
/* svg free of use from https://uxwing.com/formula-fx-icon/ */
|
|
82254
|
-
|
|
82255
|
-
|
|
82256
|
-
|
|
82257
|
-
|
|
82258
|
-
|
|
82259
|
-
|
|
82260
|
-
.o-topbar-composer-container {
|
|
82261
|
-
height: ${DESKTOP_TOPBAR_TOOLBAR_HEIGHT}px;
|
|
82262
|
-
}
|
|
82263
|
-
|
|
82264
|
-
.o-topbar-composer {
|
|
82265
|
-
height: fit-content;
|
|
82266
|
-
margin-top: -1px;
|
|
82267
|
-
margin-bottom: -1px;
|
|
82268
|
-
border: 1px solid;
|
|
82269
|
-
font-family: ${DEFAULT_FONT};
|
|
82270
|
-
|
|
82271
|
-
/* In readonly we always show the fx icon if the composer is empty, not matter the focus */
|
|
82272
|
-
.o-composer:empty:not(:focus):not(.active)::before,
|
|
82273
|
-
&.o-topbar-composer-readonly .o-composer:empty::before {
|
|
82274
|
-
content: url("data:image/svg+xml,${encodeURIComponent(FX_SVG)}");
|
|
82275
|
-
position: relative;
|
|
82276
|
-
top: 20%;
|
|
82277
|
-
}
|
|
82278
|
-
}
|
|
82279
|
-
|
|
82280
|
-
.user-select-text {
|
|
82281
|
-
user-select: text;
|
|
82282
|
-
}
|
|
82283
|
-
`;
|
|
79910
|
+
// FIXME This svg is hardcoded in the css file. We should find a better way to handle it.
|
|
79911
|
+
// const FX_SVG = /*xml*/ `
|
|
79912
|
+
// <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 121.8 122.9' width='16' height='16' focusable='false'>
|
|
79913
|
+
// <path d='m28 34-4 5v2h10l-6 40c-4 22-6 28-7 30-2 2-3 3-5 3-3 0-7-2-9-4H4c-2 2-4 4-4 7s4 6 8 6 9-2 15-8c8-7 13-17 18-39l7-35 13-1 3-6H49c4-23 7-27 11-27 2 0 5 2 8 6h4c1-1 4-4 4-7 0-2-3-6-9-6-5 0-13 4-20 10-6 7-9 14-11 24h-8zm41 16c4-5 7-7 8-7s2 1 5 9l3 12c-7 11-12 17-16 17l-3-1-2-1c-3 0-6 3-6 7s3 7 7 7c6 0 12-6 22-23l3 10c3 9 6 13 10 13 5 0 11-4 18-15l-3-4c-4 6-7 8-8 8-2 0-4-3-6-10l-5-15 8-10 6-4 3 1 3 2c2 0 6-3 6-7s-2-7-6-7c-6 0-11 5-21 20l-2-6c-3-9-5-14-9-14-5 0-12 6-18 15l3 3z' fill='#BDBDBD'/>
|
|
79914
|
+
// </svg>
|
|
79915
|
+
// `;
|
|
82284
79916
|
class TopBarComposer extends owl.Component {
|
|
82285
79917
|
static template = "o-spreadsheet-TopBarComposer";
|
|
82286
79918
|
static props = {};
|
|
@@ -82316,18 +79948,6 @@ class TopBarComposer extends owl.Component {
|
|
|
82316
79948
|
style.height = this.focus === "inactive" ? `${DESKTOP_TOPBAR_TOOLBAR_HEIGHT}px` : "fit-content";
|
|
82317
79949
|
return cssPropertiesToCss(style);
|
|
82318
79950
|
}
|
|
82319
|
-
get containerStyle() {
|
|
82320
|
-
if (this.focus === "inactive") {
|
|
82321
|
-
return cssPropertiesToCss({
|
|
82322
|
-
"border-color": SEPARATOR_COLOR,
|
|
82323
|
-
"border-right": "none",
|
|
82324
|
-
});
|
|
82325
|
-
}
|
|
82326
|
-
return cssPropertiesToCss({
|
|
82327
|
-
"border-color": SELECTION_BORDER_COLOR,
|
|
82328
|
-
"z-index": String(ComponentsImportance.TopBarComposer),
|
|
82329
|
-
});
|
|
82330
|
-
}
|
|
82331
79951
|
onFocus(selection) {
|
|
82332
79952
|
this.composerFocusStore.focusComposer(this.composerInterface, { selection });
|
|
82333
79953
|
}
|
|
@@ -82417,79 +80037,6 @@ const BORDER_POSITIONS = [
|
|
|
82417
80037
|
// -----------------------------------------------------------------------------
|
|
82418
80038
|
// Border Editor
|
|
82419
80039
|
// -----------------------------------------------------------------------------
|
|
82420
|
-
css /* scss */ `
|
|
82421
|
-
.o-border-selector {
|
|
82422
|
-
padding: 4px;
|
|
82423
|
-
background-color: white;
|
|
82424
|
-
|
|
82425
|
-
.o-divider {
|
|
82426
|
-
border-right: 1px solid ${GRAY_300};
|
|
82427
|
-
margin: 0 6px;
|
|
82428
|
-
}
|
|
82429
|
-
|
|
82430
|
-
.o-border-selector-section {
|
|
82431
|
-
.o-dropdown-line {
|
|
82432
|
-
height: 30px;
|
|
82433
|
-
margin: 1px;
|
|
82434
|
-
.o-line-item {
|
|
82435
|
-
padding: 4px;
|
|
82436
|
-
width: 26px;
|
|
82437
|
-
height: 26px;
|
|
82438
|
-
&.active {
|
|
82439
|
-
background-color: ${BUTTON_ACTIVE_BG};
|
|
82440
|
-
}
|
|
82441
|
-
}
|
|
82442
|
-
}
|
|
82443
|
-
.o-border-style-tool {
|
|
82444
|
-
padding: 0px 3px;
|
|
82445
|
-
margin: 2px;
|
|
82446
|
-
height: 25px;
|
|
82447
|
-
}
|
|
82448
|
-
}
|
|
82449
|
-
}
|
|
82450
|
-
|
|
82451
|
-
.o-border-style-dropdown {
|
|
82452
|
-
background: #ffffff;
|
|
82453
|
-
padding: 4px;
|
|
82454
|
-
.o-dropdown-line {
|
|
82455
|
-
}
|
|
82456
|
-
.o-style-preview {
|
|
82457
|
-
margin: 7px 5px 7px 5px;
|
|
82458
|
-
width: 60px;
|
|
82459
|
-
height: 5px;
|
|
82460
|
-
}
|
|
82461
|
-
.o-style-thin {
|
|
82462
|
-
border-bottom: 1px solid #000000;
|
|
82463
|
-
}
|
|
82464
|
-
.o-style-medium {
|
|
82465
|
-
border-bottom: 2px solid #000000;
|
|
82466
|
-
}
|
|
82467
|
-
.o-style-thick {
|
|
82468
|
-
border-bottom: 3px solid #000000;
|
|
82469
|
-
}
|
|
82470
|
-
.o-style-dashed {
|
|
82471
|
-
border-bottom: 1px dashed #000000;
|
|
82472
|
-
}
|
|
82473
|
-
.o-style-dotted {
|
|
82474
|
-
border-bottom: 1px dotted #000000;
|
|
82475
|
-
}
|
|
82476
|
-
.o-dropdown-border-type {
|
|
82477
|
-
cursor: pointer;
|
|
82478
|
-
&:not(.o-disabled):not(.active):hover {
|
|
82479
|
-
background-color: ${BUTTON_HOVER_BG};
|
|
82480
|
-
}
|
|
82481
|
-
}
|
|
82482
|
-
.o-dropdown-border-check {
|
|
82483
|
-
width: 20px;
|
|
82484
|
-
font-size: 12px;
|
|
82485
|
-
}
|
|
82486
|
-
.o-border-picker-button {
|
|
82487
|
-
padding: 0px !important;
|
|
82488
|
-
margin: 5px 0px 0px 0px !important;
|
|
82489
|
-
height: 25px !important;
|
|
82490
|
-
}
|
|
82491
|
-
}
|
|
82492
|
-
`;
|
|
82493
80040
|
class BorderEditor extends owl.Component {
|
|
82494
80041
|
static template = "o-spreadsheet-BorderEditor";
|
|
82495
80042
|
static props = {
|
|
@@ -83040,90 +80587,6 @@ topBarToolBarRegistry
|
|
|
83040
80587
|
// -----------------------------------------------------------------------------
|
|
83041
80588
|
// TopBar
|
|
83042
80589
|
// -----------------------------------------------------------------------------
|
|
83043
|
-
css /* scss */ `
|
|
83044
|
-
.o-topbar-divider {
|
|
83045
|
-
border-right: 1px solid ${SEPARATOR_COLOR};
|
|
83046
|
-
width: 0;
|
|
83047
|
-
margin: 0 6px;
|
|
83048
|
-
height: 30px;
|
|
83049
|
-
}
|
|
83050
|
-
|
|
83051
|
-
.o-toolbar-button {
|
|
83052
|
-
height: 30px;
|
|
83053
|
-
}
|
|
83054
|
-
|
|
83055
|
-
.o-spreadsheet-topbar {
|
|
83056
|
-
line-height: 1.2;
|
|
83057
|
-
font-size: 14px;
|
|
83058
|
-
font-weight: 500;
|
|
83059
|
-
background-color: #fff;
|
|
83060
|
-
|
|
83061
|
-
.o-topbar-top {
|
|
83062
|
-
border-bottom: 1px solid ${SEPARATOR_COLOR};
|
|
83063
|
-
padding: 2px 10px;
|
|
83064
|
-
|
|
83065
|
-
/* Menus */
|
|
83066
|
-
.o-topbar-topleft {
|
|
83067
|
-
.o-topbar-menu {
|
|
83068
|
-
padding: 4px 6px;
|
|
83069
|
-
margin: 0 2px;
|
|
83070
|
-
|
|
83071
|
-
&.active {
|
|
83072
|
-
background-color: ${BUTTON_ACTIVE_BG};
|
|
83073
|
-
color: ${BUTTON_ACTIVE_TEXT_COLOR};
|
|
83074
|
-
}
|
|
83075
|
-
}
|
|
83076
|
-
}
|
|
83077
|
-
}
|
|
83078
|
-
|
|
83079
|
-
.irregularity-map {
|
|
83080
|
-
border-top: 1px solid ${SEPARATOR_COLOR};
|
|
83081
|
-
height: ${DESKTOP_TOPBAR_TOOLBAR_HEIGHT}px;
|
|
83082
|
-
|
|
83083
|
-
.alert-info {
|
|
83084
|
-
border-left: 3px solid ${ALERT_INFO_BORDER};
|
|
83085
|
-
}
|
|
83086
|
-
}
|
|
83087
|
-
|
|
83088
|
-
.o-topbar-composer {
|
|
83089
|
-
flex-grow: 1;
|
|
83090
|
-
}
|
|
83091
|
-
|
|
83092
|
-
/* Toolbar */
|
|
83093
|
-
.o-topbar-toolbar {
|
|
83094
|
-
height: ${DESKTOP_TOPBAR_TOOLBAR_HEIGHT}px;
|
|
83095
|
-
|
|
83096
|
-
.o-readonly-toolbar {
|
|
83097
|
-
background-color: ${BACKGROUND_HEADER_COLOR};
|
|
83098
|
-
padding-left: 18px;
|
|
83099
|
-
padding-right: 18px;
|
|
83100
|
-
}
|
|
83101
|
-
|
|
83102
|
-
/* Toolbar */
|
|
83103
|
-
.o-toolbar-tools {
|
|
83104
|
-
cursor: default;
|
|
83105
|
-
}
|
|
83106
|
-
}
|
|
83107
|
-
}
|
|
83108
|
-
|
|
83109
|
-
.o-spreadsheet-mobile {
|
|
83110
|
-
.o-topbar-toolbar {
|
|
83111
|
-
height: ${MOBILE_TOPBAR_TOOLBAR_HEIGHT}px;
|
|
83112
|
-
}
|
|
83113
|
-
.o-topbar-divider {
|
|
83114
|
-
border-width: 2px;
|
|
83115
|
-
border-radius: 4px;
|
|
83116
|
-
}
|
|
83117
|
-
|
|
83118
|
-
.o-toolbar-button {
|
|
83119
|
-
height: 35px;
|
|
83120
|
-
width: 31px;
|
|
83121
|
-
.o-toolbar-button.o-mobile-disabled * {
|
|
83122
|
-
color: ${DISABLED_TEXT_COLOR};
|
|
83123
|
-
cursor: not-allowed;
|
|
83124
|
-
}
|
|
83125
|
-
}
|
|
83126
|
-
`;
|
|
83127
80590
|
class TopBar extends owl.Component {
|
|
83128
80591
|
static template = "o-spreadsheet-TopBar";
|
|
83129
80592
|
static props = {
|
|
@@ -83397,251 +80860,6 @@ class WebClipboardWrapper {
|
|
|
83397
80860
|
}
|
|
83398
80861
|
}
|
|
83399
80862
|
|
|
83400
|
-
// -----------------------------------------------------------------------------
|
|
83401
|
-
// SpreadSheet
|
|
83402
|
-
// -----------------------------------------------------------------------------
|
|
83403
|
-
const CARET_DOWN_SVG = /*xml*/ `
|
|
83404
|
-
<svg xmlns='http://www.w3.org/2000/svg' width='7' height='4' viewBox='0 0 7 4'>
|
|
83405
|
-
<polygon fill='%23374151' points='3.5 4 7 0 0 0'/>
|
|
83406
|
-
</svg>
|
|
83407
|
-
`;
|
|
83408
|
-
css /* scss */ `
|
|
83409
|
-
.o-spreadsheet {
|
|
83410
|
-
position: relative;
|
|
83411
|
-
display: grid;
|
|
83412
|
-
font-size: 14px;
|
|
83413
|
-
|
|
83414
|
-
.text-muted {
|
|
83415
|
-
color: ${TEXT_BODY_MUTED} !important;
|
|
83416
|
-
}
|
|
83417
|
-
.o-disabled {
|
|
83418
|
-
opacity: 0.4;
|
|
83419
|
-
cursor: default;
|
|
83420
|
-
pointer-events: none;
|
|
83421
|
-
}
|
|
83422
|
-
|
|
83423
|
-
&,
|
|
83424
|
-
*,
|
|
83425
|
-
*:before,
|
|
83426
|
-
*:after {
|
|
83427
|
-
/* rtl not supported ATM */
|
|
83428
|
-
direction: ltr;
|
|
83429
|
-
}
|
|
83430
|
-
.o-separator {
|
|
83431
|
-
border-bottom: ${MENU_SEPARATOR_BORDER_WIDTH}px solid ${SEPARATOR_COLOR};
|
|
83432
|
-
margin-top: ${MENU_SEPARATOR_PADDING}px;
|
|
83433
|
-
margin-bottom: ${MENU_SEPARATOR_PADDING}px;
|
|
83434
|
-
}
|
|
83435
|
-
.o-hoverable-button {
|
|
83436
|
-
border-radius: 2px;
|
|
83437
|
-
cursor: pointer;
|
|
83438
|
-
.o-icon {
|
|
83439
|
-
color: ${TEXT_BODY};
|
|
83440
|
-
}
|
|
83441
|
-
&:not(.o-disabled):not(.active):hover {
|
|
83442
|
-
background-color: ${BUTTON_HOVER_BG};
|
|
83443
|
-
color: ${BUTTON_HOVER_TEXT_COLOR};
|
|
83444
|
-
.o-icon {
|
|
83445
|
-
color: ${BUTTON_HOVER_TEXT_COLOR};
|
|
83446
|
-
}
|
|
83447
|
-
}
|
|
83448
|
-
&.active {
|
|
83449
|
-
background-color: ${BUTTON_ACTIVE_BG};
|
|
83450
|
-
color: ${BUTTON_ACTIVE_TEXT_COLOR};
|
|
83451
|
-
.o-icon {
|
|
83452
|
-
color: ${BUTTON_ACTIVE_TEXT_COLOR};
|
|
83453
|
-
}
|
|
83454
|
-
}
|
|
83455
|
-
}
|
|
83456
|
-
|
|
83457
|
-
.o-grid-container {
|
|
83458
|
-
display: grid;
|
|
83459
|
-
background-color: ${HEADER_GROUPING_BACKGROUND_COLOR};
|
|
83460
|
-
|
|
83461
|
-
.o-top-left {
|
|
83462
|
-
border: 1px solid ${GRID_BORDER_COLOR};
|
|
83463
|
-
margin-bottom: -1px;
|
|
83464
|
-
margin-right: -1px;
|
|
83465
|
-
}
|
|
83466
|
-
|
|
83467
|
-
.o-column-groups {
|
|
83468
|
-
grid-column-start: 2;
|
|
83469
|
-
border-top: 1px solid ${GRID_BORDER_COLOR};
|
|
83470
|
-
}
|
|
83471
|
-
|
|
83472
|
-
.o-row-groups {
|
|
83473
|
-
grid-row-start: 2;
|
|
83474
|
-
}
|
|
83475
|
-
|
|
83476
|
-
.o-group-grid {
|
|
83477
|
-
border-top: 1px solid ${GRID_BORDER_COLOR};
|
|
83478
|
-
border-left: 1px solid ${GRID_BORDER_COLOR};
|
|
83479
|
-
}
|
|
83480
|
-
}
|
|
83481
|
-
|
|
83482
|
-
.o-input {
|
|
83483
|
-
min-width: 0px;
|
|
83484
|
-
padding: 1px 0;
|
|
83485
|
-
width: 100%;
|
|
83486
|
-
outline: none;
|
|
83487
|
-
border-color: ${GRAY_300};
|
|
83488
|
-
color: ${GRAY_900};
|
|
83489
|
-
|
|
83490
|
-
&::placeholder {
|
|
83491
|
-
opacity: 0.5;
|
|
83492
|
-
}
|
|
83493
|
-
&:focus {
|
|
83494
|
-
border-color: ${ACTION_COLOR};
|
|
83495
|
-
}
|
|
83496
|
-
}
|
|
83497
|
-
|
|
83498
|
-
select.o-input {
|
|
83499
|
-
cursor: pointer;
|
|
83500
|
-
border-width: 0 0 1px 0;
|
|
83501
|
-
padding: 1px 6px 1px 0px;
|
|
83502
|
-
|
|
83503
|
-
appearance: none;
|
|
83504
|
-
-webkit-appearance: none;
|
|
83505
|
-
-moz-appearance: none;
|
|
83506
|
-
background: transparent url("data:image/svg+xml,${encodeURIComponent(CARET_DOWN_SVG)}")
|
|
83507
|
-
no-repeat right center;
|
|
83508
|
-
text-overflow: ellipsis;
|
|
83509
|
-
|
|
83510
|
-
&:disabled {
|
|
83511
|
-
color: ${DISABLED_TEXT_COLOR};
|
|
83512
|
-
opacity: 0.4;
|
|
83513
|
-
cursor: default;
|
|
83514
|
-
}
|
|
83515
|
-
}
|
|
83516
|
-
|
|
83517
|
-
.o-input[type="text"] {
|
|
83518
|
-
border-width: 0 0 1px 0;
|
|
83519
|
-
}
|
|
83520
|
-
|
|
83521
|
-
.o-input[type="number"],
|
|
83522
|
-
.o-number-input {
|
|
83523
|
-
border-width: 0 0 1px 0;
|
|
83524
|
-
/* Remove number input arrows */
|
|
83525
|
-
appearance: textfield;
|
|
83526
|
-
&::-webkit-outer-spin-button,
|
|
83527
|
-
&::-webkit-inner-spin-button {
|
|
83528
|
-
-webkit-appearance: none;
|
|
83529
|
-
margin: 0;
|
|
83530
|
-
}
|
|
83531
|
-
}
|
|
83532
|
-
}
|
|
83533
|
-
|
|
83534
|
-
.o-two-columns {
|
|
83535
|
-
grid-column: 1 / 3;
|
|
83536
|
-
}
|
|
83537
|
-
|
|
83538
|
-
.o-text-icon {
|
|
83539
|
-
vertical-align: middle;
|
|
83540
|
-
}
|
|
83541
|
-
`;
|
|
83542
|
-
// -----------------------------------------------------------------------------
|
|
83543
|
-
// GRID STYLE
|
|
83544
|
-
// -----------------------------------------------------------------------------
|
|
83545
|
-
css /* scss */ `
|
|
83546
|
-
.o-grid {
|
|
83547
|
-
position: relative;
|
|
83548
|
-
overflow: hidden;
|
|
83549
|
-
background-color: ${BACKGROUND_GRAY_COLOR};
|
|
83550
|
-
&:focus {
|
|
83551
|
-
outline: none;
|
|
83552
|
-
}
|
|
83553
|
-
|
|
83554
|
-
> canvas {
|
|
83555
|
-
box-sizing: content-box;
|
|
83556
|
-
border-bottom: 1px solid #e2e3e3;
|
|
83557
|
-
border-right: 1px solid #e2e3e3;
|
|
83558
|
-
}
|
|
83559
|
-
|
|
83560
|
-
.o-grid-overlay {
|
|
83561
|
-
position: absolute;
|
|
83562
|
-
outline: none;
|
|
83563
|
-
}
|
|
83564
|
-
}
|
|
83565
|
-
|
|
83566
|
-
.o-button {
|
|
83567
|
-
border: 1px solid;
|
|
83568
|
-
border-radius: 4px;
|
|
83569
|
-
font-weight: 500;
|
|
83570
|
-
font-size: 14px;
|
|
83571
|
-
height: 32px;
|
|
83572
|
-
line-height: 16px;
|
|
83573
|
-
flex-grow: 1;
|
|
83574
|
-
background-color: ${BUTTON_BG};
|
|
83575
|
-
border: 1px solid ${GRAY_200};
|
|
83576
|
-
color: ${TEXT_BODY};
|
|
83577
|
-
|
|
83578
|
-
&:disabled {
|
|
83579
|
-
color: ${DISABLED_TEXT_COLOR};
|
|
83580
|
-
}
|
|
83581
|
-
|
|
83582
|
-
&.primary {
|
|
83583
|
-
background-color: ${PRIMARY_BUTTON_BG};
|
|
83584
|
-
border-color: ${PRIMARY_BUTTON_BG};
|
|
83585
|
-
color: #fff;
|
|
83586
|
-
&:hover:enabled {
|
|
83587
|
-
color: #fff;
|
|
83588
|
-
background-color: ${PRIMARY_BUTTON_HOVER_BG};
|
|
83589
|
-
}
|
|
83590
|
-
&:active:enabled {
|
|
83591
|
-
background-color: ${PRIMARY_BUTTON_ACTIVE_BG};
|
|
83592
|
-
color: ${PRIMARY_BUTTON_BG};
|
|
83593
|
-
}
|
|
83594
|
-
&.o-disabled,
|
|
83595
|
-
&:disabled {
|
|
83596
|
-
opacity: 0.5;
|
|
83597
|
-
}
|
|
83598
|
-
}
|
|
83599
|
-
|
|
83600
|
-
&:hover:enabled {
|
|
83601
|
-
color: ${BUTTON_HOVER_TEXT_COLOR};
|
|
83602
|
-
background-color: ${BUTTON_HOVER_BG};
|
|
83603
|
-
}
|
|
83604
|
-
&:active:enabled {
|
|
83605
|
-
color: ${BUTTON_ACTIVE_TEXT_COLOR};
|
|
83606
|
-
background-color: ${BUTTON_ACTIVE_BG};
|
|
83607
|
-
}
|
|
83608
|
-
|
|
83609
|
-
&.o-disabled,
|
|
83610
|
-
&:disabled {
|
|
83611
|
-
opacity: 0.8;
|
|
83612
|
-
}
|
|
83613
|
-
|
|
83614
|
-
&.o-button-danger:hover {
|
|
83615
|
-
color: #ffffff;
|
|
83616
|
-
background: ${ALERT_DANGER_BORDER};
|
|
83617
|
-
}
|
|
83618
|
-
}
|
|
83619
|
-
|
|
83620
|
-
.o-button-link {
|
|
83621
|
-
cursor: pointer;
|
|
83622
|
-
text-decoration: none;
|
|
83623
|
-
color: ${ACTION_COLOR};
|
|
83624
|
-
font-weight: 500;
|
|
83625
|
-
&:hover,
|
|
83626
|
-
&:active {
|
|
83627
|
-
color: ${ACTION_COLOR_HOVER};
|
|
83628
|
-
}
|
|
83629
|
-
}
|
|
83630
|
-
|
|
83631
|
-
.o-button-icon {
|
|
83632
|
-
cursor: pointer;
|
|
83633
|
-
color: ${TEXT_BODY_MUTED};
|
|
83634
|
-
font-weight: 500;
|
|
83635
|
-
&:hover,
|
|
83636
|
-
&:active {
|
|
83637
|
-
color: ${TEXT_BODY};
|
|
83638
|
-
}
|
|
83639
|
-
}
|
|
83640
|
-
|
|
83641
|
-
.o-spreadsheet-bottombar-wrapper {
|
|
83642
|
-
z-index: ${ComponentsImportance.ScrollBar + 1};
|
|
83643
|
-
}
|
|
83644
|
-
`;
|
|
83645
80863
|
class Spreadsheet extends owl.Component {
|
|
83646
80864
|
static template = "o-spreadsheet-Spreadsheet";
|
|
83647
80865
|
static props = {
|
|
@@ -88520,6 +85738,6 @@ exports.tokenColors = tokenColors;
|
|
|
88520
85738
|
exports.tokenize = tokenize;
|
|
88521
85739
|
|
|
88522
85740
|
|
|
88523
|
-
__info__.version = "19.1.0-alpha.
|
|
88524
|
-
__info__.date = "2025-09-
|
|
88525
|
-
__info__.hash = "
|
|
85741
|
+
__info__.version = "19.1.0-alpha.3";
|
|
85742
|
+
__info__.date = "2025-09-23T12:37:52.238Z";
|
|
85743
|
+
__info__.hash = "ce2b07a";
|