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