apex-grid 3.1.0 → 3.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +101 -0
- package/README.md +201 -53
- package/components/cell.d.ts +14 -1
- package/components/cell.js +48 -6
- package/components/cell.js.map +1 -1
- package/components/filter-row.d.ts +3 -6
- package/components/filter-row.js +79 -109
- package/components/filter-row.js.map +1 -1
- package/components/grid.d.ts +416 -70
- package/components/grid.js +398 -11
- package/components/grid.js.map +1 -1
- package/components/group-header-row.d.ts +34 -0
- package/components/group-header-row.js +125 -0
- package/components/group-header-row.js.map +1 -0
- package/components/header-row.d.ts +13 -2
- package/components/header-row.js +33 -18
- package/components/header-row.js.map +1 -1
- package/components/header.d.ts +11 -0
- package/components/header.js +136 -6
- package/components/header.js.map +1 -1
- package/components/paginator.d.ts +6 -1
- package/components/paginator.js +17 -11
- package/components/paginator.js.map +1 -1
- package/components/row.d.ts +28 -0
- package/components/row.js +100 -3
- package/components/row.js.map +1 -1
- package/components/toolbar.d.ts +8 -1
- package/components/toolbar.js +25 -7
- package/components/toolbar.js.map +1 -1
- package/controllers/data-operation.js +1 -0
- package/controllers/data-operation.js.map +1 -1
- package/controllers/dom.d.ts +24 -6
- package/controllers/dom.js +62 -5
- package/controllers/dom.js.map +1 -1
- package/controllers/editing.d.ts +68 -1
- package/controllers/editing.js +129 -44
- package/controllers/editing.js.map +1 -1
- package/controllers/filter.d.ts +1 -1
- package/controllers/filter.js +16 -5
- package/controllers/filter.js.map +1 -1
- package/controllers/history.d.ts +86 -0
- package/controllers/history.js +118 -0
- package/controllers/history.js.map +1 -0
- package/controllers/navigation.d.ts +15 -0
- package/controllers/navigation.js +53 -0
- package/controllers/navigation.js.map +1 -1
- package/controllers/reorder.js +3 -1
- package/controllers/reorder.js.map +1 -1
- package/controllers/row-pin.d.ts +59 -0
- package/controllers/row-pin.js +75 -0
- package/controllers/row-pin.js.map +1 -0
- package/controllers/row-reorder.d.ts +161 -0
- package/controllers/row-reorder.js +332 -0
- package/controllers/row-reorder.js.map +1 -0
- package/controllers/sort.d.ts +1 -1
- package/controllers/sort.js +11 -3
- package/controllers/sort.js.map +1 -1
- package/controllers/state.d.ts +33 -0
- package/controllers/state.js +37 -2
- package/controllers/state.js.map +1 -1
- package/controllers/tree.d.ts +8 -0
- package/controllers/tree.js +0 -0
- package/controllers/tree.js.map +1 -1
- package/custom-elements.json +4415 -875
- package/docs/assets/hierarchy.js +1 -1
- package/docs/assets/highlight.css +28 -0
- package/docs/assets/navigation.js +1 -1
- package/docs/assets/search.js +1 -1
- package/docs/functions/custom.html +3 -0
- package/docs/functions/interpolate.html +4 -0
- package/docs/functions/localize.html +8 -0
- package/docs/functions/max.html +3 -0
- package/docs/functions/min.html +3 -0
- package/docs/functions/pattern.html +3 -0
- package/docs/functions/required.html +3 -0
- package/docs/hierarchy.html +1 -1
- package/docs/index.html +185 -55
- package/docs/interfaces/ApexCellValidationFailedEvent.html +13 -0
- package/docs/interfaces/ApexCellValueChangedEvent.html +1 -1
- package/docs/interfaces/ApexCellValueChangingEvent.html +2 -2
- package/docs/interfaces/ApexColumnGroupContext.html +6 -0
- package/docs/interfaces/ApexColumnMovedEvent.html +2 -2
- package/docs/interfaces/ApexColumnMovingEvent.html +1 -1
- package/docs/interfaces/ApexDetailContext.html +2 -2
- package/docs/interfaces/ApexGridEventMap.html +37 -9
- package/docs/interfaces/ApexHistoryChangedEvent.html +6 -0
- package/docs/interfaces/ApexPageChangedEvent.html +1 -1
- package/docs/interfaces/ApexRowMovingEvent.html +9 -0
- package/docs/interfaces/ApexRowPinningEvent.html +8 -0
- package/docs/interfaces/ApexStateChangedEvent.html +4 -0
- package/docs/interfaces/BaseApexCellContext.html +1 -1
- package/docs/interfaces/BaseApexEditorContext.html +1 -1
- package/docs/interfaces/BaseColumnConfiguration.html +42 -17
- package/docs/interfaces/CSVExportOptions.html +2 -2
- package/docs/interfaces/ColumnGroupConfiguration.html +12 -0
- package/docs/interfaces/ColumnLayoutState.html +2 -0
- package/docs/interfaces/ColumnSchema.html +22 -0
- package/docs/interfaces/DataPipelineConfiguration.html +2 -2
- package/docs/interfaces/EditingHistoryConfiguration.html +10 -0
- package/docs/interfaces/ExportFormat.html +2 -2
- package/docs/interfaces/ExportOptions.html +1 -1
- package/docs/interfaces/FilterStateSnapshot.html +4 -0
- package/docs/interfaces/GetStateOptions.html +4 -0
- package/docs/interfaces/GridCapabilities.html +8 -0
- package/docs/interfaces/GridEditingConfiguration.html +4 -2
- package/docs/interfaces/GridRowPinningConfiguration.html +5 -0
- package/docs/interfaces/GridRowReorderingConfiguration.html +22 -0
- package/docs/interfaces/GridSchema.html +19 -0
- package/docs/interfaces/GridState.html +41 -0
- package/docs/interfaces/GridTreeConfiguration.html +2 -2
- package/docs/interfaces/PaginationConfiguration.html +1 -1
- package/docs/interfaces/PaginationState.html +1 -1
- package/docs/interfaces/SetStateOptions.html +9 -0
- package/docs/interfaces/SetStateResult.html +11 -0
- package/docs/interfaces/SortStateSnapshot.html +2 -0
- package/docs/interfaces/ValidatorContext.html +8 -0
- package/docs/media/_tokens.scss +131 -44
- package/docs/media/package.json +1 -1
- package/docs/media/state-persistence.html +189 -0
- package/docs/modules.html +1 -1
- package/docs/types/DataPipelineParams.html +2 -2
- package/docs/types/EditMode.html +2 -2
- package/docs/types/GridLocaleKey.html +3 -0
- package/docs/types/GridLocaleText.html +5 -0
- package/docs/types/LocaleParams.html +2 -0
- package/docs/types/PaginationMode.html +1 -1
- package/docs/types/RowDropPosition.html +2 -0
- package/docs/types/RowPinPosition.html +2 -0
- package/docs/types/RowRef.html +3 -0
- package/docs/types/Validator.html +4 -0
- package/docs/variables/EN_LOCALE.html +9 -0
- package/docs/variables/esLocale.html +8 -0
- package/i18n/en.d.ts +151 -0
- package/i18n/en.js +125 -0
- package/i18n/en.js.map +1 -0
- package/i18n/es.d.ts +18 -0
- package/i18n/es.js +125 -0
- package/i18n/es.js.map +1 -0
- package/i18n/index.d.ts +3 -0
- package/i18n/index.js +4 -0
- package/i18n/index.js.map +1 -0
- package/i18n/localize.d.ts +23 -0
- package/i18n/localize.js +15 -0
- package/i18n/localize.js.map +1 -0
- package/index.d.ts +8 -2
- package/index.js +2 -0
- package/index.js.map +1 -1
- package/internal/feature-module.d.ts +46 -0
- package/internal/feature-module.js +11 -0
- package/internal/feature-module.js.map +1 -1
- package/internal/flip.js +1 -1
- package/internal/flip.js.map +1 -1
- package/internal/icons.d.ts +9 -7
- package/internal/icons.js +75 -35
- package/internal/icons.js.map +1 -1
- package/internal/index.d.ts +5 -3
- package/internal/index.js +2 -1
- package/internal/index.js.map +1 -1
- package/internal/state-schema.d.ts +85 -0
- package/internal/state-schema.js +27 -0
- package/internal/state-schema.js.map +1 -0
- package/internal/state-snapshot.d.ts +152 -0
- package/internal/state-snapshot.js +115 -0
- package/internal/state-snapshot.js.map +1 -0
- package/internal/tags.d.ts +1 -0
- package/internal/tags.js +1 -0
- package/internal/tags.js.map +1 -1
- package/internal/types.d.ts +162 -2
- package/internal/types.js.map +1 -1
- package/internal/utils.d.ts +12 -0
- package/internal/utils.js +17 -0
- package/internal/utils.js.map +1 -1
- package/internal/validators.d.ts +31 -0
- package/internal/validators.js +44 -0
- package/internal/validators.js.map +1 -0
- package/package.json +1 -1
- package/styles/_tokens.css.js +1 -1
- package/styles/_tokens.css.js.map +1 -1
- package/styles/body-cell/body-cell.css.js +1 -1
- package/styles/body-cell/body-cell.css.js.map +1 -1
- package/styles/body-row/body-row.css.js +1 -1
- package/styles/body-row/body-row.css.js.map +1 -1
- package/styles/filter-row/filter-row.css.js +1 -1
- package/styles/filter-row/filter-row.css.js.map +1 -1
- package/styles/grid/_grid.base.css.js +1 -1
- package/styles/grid/_grid.base.css.js.map +1 -1
- package/styles/grid/grid.css.js +1 -1
- package/styles/grid/grid.css.js.map +1 -1
- package/styles/group-header-row/group-header-row.css.d.ts +1 -0
- package/styles/group-header-row/group-header-row.css.js +3 -0
- package/styles/group-header-row/group-header-row.css.js.map +1 -0
- package/styles/header-cell/header-cell.css.js +1 -1
- package/styles/header-cell/header-cell.css.js.map +1 -1
- package/styles/header-row/header-row.base.css.js +1 -1
- package/styles/header-row/header-row.base.css.js.map +1 -1
- package/styles/paginator/paginator.css.js +1 -1
- package/styles/paginator/paginator.css.js.map +1 -1
- package/styles/toolbar/toolbar.css.js +1 -1
- package/styles/toolbar/toolbar.css.js.map +1 -1
- package/docs/classes/ApexGrid.html +0 -393
package/i18n/en.d.ts
ADDED
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Default English locale dictionary: the single source of truth for every
|
|
3
|
+
* built-in, user-facing string the community grid renders.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* Each key is a stable, dot-namespaced identifier. Values may contain
|
|
7
|
+
* `{placeholder}` tokens that {@link localize} interpolates at render time
|
|
8
|
+
* (for example `pagination.summary`). To translate or tweak the UI text,
|
|
9
|
+
* pass a (possibly partial) {@link GridLocaleText} map to
|
|
10
|
+
* {@link ApexGrid.localeText}; any key you omit falls back to the value here.
|
|
11
|
+
*
|
|
12
|
+
* A ready-made Spanish translation ships as `esLocale`.
|
|
13
|
+
*/
|
|
14
|
+
export declare const EN_LOCALE: {
|
|
15
|
+
readonly 'pagination.label': "Grid pagination";
|
|
16
|
+
readonly 'pagination.controls': "Pagination controls";
|
|
17
|
+
readonly 'pagination.rowsPerPage': "Rows per page";
|
|
18
|
+
readonly 'pagination.firstPage': "Go to first page";
|
|
19
|
+
readonly 'pagination.previousPage': "Go to previous page";
|
|
20
|
+
readonly 'pagination.nextPage': "Go to next page";
|
|
21
|
+
readonly 'pagination.lastPage': "Go to last page";
|
|
22
|
+
readonly 'pagination.summary': "{start}-{end} of {total}";
|
|
23
|
+
readonly 'pagination.summaryEmpty': "0 of 0";
|
|
24
|
+
readonly 'filter.operator.contains': "Contains";
|
|
25
|
+
readonly 'filter.operator.doesNotContain': "Does not contain";
|
|
26
|
+
readonly 'filter.operator.startsWith': "Starts with";
|
|
27
|
+
readonly 'filter.operator.endsWith': "Ends with";
|
|
28
|
+
readonly 'filter.operator.equals': "Equals";
|
|
29
|
+
readonly 'filter.operator.doesNotEqual': "Does not equal";
|
|
30
|
+
readonly 'filter.operator.greaterThan': "Greater than";
|
|
31
|
+
readonly 'filter.operator.lessThan': "Less than";
|
|
32
|
+
readonly 'filter.operator.greaterThanOrEqual': "Greater than or equal";
|
|
33
|
+
readonly 'filter.operator.lessThanOrEqual': "Less than or equal";
|
|
34
|
+
readonly 'filter.operator.empty': "Empty";
|
|
35
|
+
readonly 'filter.operator.notEmpty': "Not empty";
|
|
36
|
+
readonly 'filter.operator.all': "All";
|
|
37
|
+
readonly 'filter.operator.true': "True";
|
|
38
|
+
readonly 'filter.operator.false': "False";
|
|
39
|
+
readonly 'filter.filter': "Filter";
|
|
40
|
+
readonly 'filter.reset': "Reset";
|
|
41
|
+
readonly 'filter.close': "Close";
|
|
42
|
+
readonly 'filter.removeFilter': "Remove filter";
|
|
43
|
+
readonly 'filter.conditionList': "Filter condition";
|
|
44
|
+
readonly 'filter.changeCondition': "Change filter condition";
|
|
45
|
+
readonly 'filter.inputPlaceholder': "Add filter value";
|
|
46
|
+
readonly 'row.select': "Select row";
|
|
47
|
+
readonly 'row.expand': "Expand row";
|
|
48
|
+
readonly 'row.collapse': "Collapse row";
|
|
49
|
+
readonly 'row.detail': "Row detail";
|
|
50
|
+
readonly 'header.selectAll': "Select all rows";
|
|
51
|
+
readonly 'header.expandAll': "Expand all rows";
|
|
52
|
+
readonly 'header.collapseAll': "Collapse all rows";
|
|
53
|
+
readonly 'toolbar.label': "Grid toolbar";
|
|
54
|
+
readonly 'toolbar.searchPlaceholder': "Search…";
|
|
55
|
+
readonly 'toolbar.export': "Export";
|
|
56
|
+
readonly 'toolbar.exportOptions': "Export options";
|
|
57
|
+
readonly 'toolbar.createChart': "Create chart";
|
|
58
|
+
readonly 'toolbar.exportXlsx': "Export XLSX";
|
|
59
|
+
readonly 'toolbar.askAI': "Ask AI";
|
|
60
|
+
readonly 'setFilter.searchPlaceholder': "Search values…";
|
|
61
|
+
readonly 'setFilter.noValues': "No values";
|
|
62
|
+
readonly 'setFilter.selectAll': "(Select all)";
|
|
63
|
+
readonly 'setFilter.clearFilter': "Clear filter";
|
|
64
|
+
readonly 'setFilter.blanks': "(Blanks)";
|
|
65
|
+
readonly 'statusBar.selectRange': "Select a range of cells";
|
|
66
|
+
readonly 'statusBar.count': "Count";
|
|
67
|
+
readonly 'statusBar.sum': "Sum";
|
|
68
|
+
readonly 'statusBar.average': "Avg";
|
|
69
|
+
readonly 'statusBar.min': "Min";
|
|
70
|
+
readonly 'statusBar.max': "Max";
|
|
71
|
+
readonly 'toolPanel.noGrid': "No grid connected";
|
|
72
|
+
readonly 'toolPanel.columns': "Columns";
|
|
73
|
+
readonly 'toolPanel.searchPlaceholder': "Search columns…";
|
|
74
|
+
readonly 'toolPanel.pinColumn': "Pin column";
|
|
75
|
+
readonly 'toolPanel.moveUp': "Move up";
|
|
76
|
+
readonly 'toolPanel.moveDown': "Move down";
|
|
77
|
+
readonly 'toolPanel.groupByColumn': "Group by this column";
|
|
78
|
+
readonly 'toolPanel.pivotMode': "Pivot mode";
|
|
79
|
+
readonly 'toolPanel.rowGroups': "Row Groups";
|
|
80
|
+
readonly 'toolPanel.rowGroupsPivot': "Row Groups (pivot rows)";
|
|
81
|
+
readonly 'toolPanel.values': "Values";
|
|
82
|
+
readonly 'toolPanel.columnLabels': "Column Labels";
|
|
83
|
+
readonly 'toolPanel.dragColumns': "Drag columns here";
|
|
84
|
+
readonly 'toolPanel.removeChip': "Remove";
|
|
85
|
+
readonly 'contextMenu.sortAsc': "Sort ascending";
|
|
86
|
+
readonly 'contextMenu.sortDesc': "Sort descending";
|
|
87
|
+
readonly 'contextMenu.clearSort': "Clear sort";
|
|
88
|
+
readonly 'contextMenu.pinStart': "Pin to start";
|
|
89
|
+
readonly 'contextMenu.pinEnd': "Pin to end";
|
|
90
|
+
readonly 'contextMenu.unpin': "Unpin";
|
|
91
|
+
readonly 'contextMenu.hideColumn': "Hide column";
|
|
92
|
+
readonly 'contextMenu.copy': "Copy";
|
|
93
|
+
readonly 'chart.close': "Close";
|
|
94
|
+
readonly 'chart.placeholder': "Select cells, or group/pivot the grid, to chart it.";
|
|
95
|
+
readonly 'chart.chartRange': "Chart range";
|
|
96
|
+
readonly 'chart.countSeries': "Count";
|
|
97
|
+
readonly 'chart.type.column': "Column";
|
|
98
|
+
readonly 'chart.type.bar': "Bar";
|
|
99
|
+
readonly 'chart.type.line': "Line";
|
|
100
|
+
readonly 'chart.type.area': "Area";
|
|
101
|
+
readonly 'chart.type.pie': "Pie";
|
|
102
|
+
readonly 'chart.type.donut': "Donut";
|
|
103
|
+
readonly 'chart.type.scatter': "Scatter";
|
|
104
|
+
readonly 'chart.type.radar': "Radar";
|
|
105
|
+
readonly 'chart.type.combo': "Combo";
|
|
106
|
+
readonly 'chart.type.auto': "Auto";
|
|
107
|
+
readonly 'grouping.blank': "(blank)";
|
|
108
|
+
readonly 'grouping.expandGroup': "Expand group";
|
|
109
|
+
readonly 'grouping.collapseGroup': "Collapse group";
|
|
110
|
+
readonly 'grouping.announceExpanded': "Expanded group {label}";
|
|
111
|
+
readonly 'grouping.announceCollapsed': "Collapsed group {label}";
|
|
112
|
+
readonly 'pivot.blank': "(blank)";
|
|
113
|
+
readonly 'rangeSelection.copied': "Copied selection to the clipboard";
|
|
114
|
+
readonly 'rangeSelection.pasted': "Pasted {rows} × {cols} cells";
|
|
115
|
+
readonly 'ai.title': "Ask AI";
|
|
116
|
+
readonly 'ai.placeholder': "Ask the grid to sort, filter, group, or answer a question…";
|
|
117
|
+
readonly 'ai.modeControl': "Change the grid";
|
|
118
|
+
readonly 'ai.modeAsk': "Ask a question";
|
|
119
|
+
readonly 'ai.send': "Send";
|
|
120
|
+
readonly 'ai.cancel': "Cancel";
|
|
121
|
+
readonly 'ai.thinking': "Thinking…";
|
|
122
|
+
readonly 'ai.undo': "Undo";
|
|
123
|
+
readonly 'ai.applied': "Applied";
|
|
124
|
+
readonly 'ai.noChanges': "No changes were applied.";
|
|
125
|
+
readonly 'ai.warnings': "Notes";
|
|
126
|
+
readonly 'ai.answer': "Answer";
|
|
127
|
+
readonly 'ai.error': "Something went wrong.";
|
|
128
|
+
readonly 'ai.noAdapter': "No AI adapter configured. Set grid.aiAdapter to enable.";
|
|
129
|
+
readonly 'ai.close': "Close";
|
|
130
|
+
readonly 'formula.editorLabel': "Formula";
|
|
131
|
+
readonly 'formula.invalid': "Invalid formula";
|
|
132
|
+
readonly 'formula.error.ref': "Invalid cell reference";
|
|
133
|
+
readonly 'formula.error.name': "Unknown function";
|
|
134
|
+
readonly 'formula.error.div0': "Division by zero";
|
|
135
|
+
readonly 'formula.error.value': "Invalid value";
|
|
136
|
+
readonly 'formula.error.cycle': "Circular reference";
|
|
137
|
+
};
|
|
138
|
+
/**
|
|
139
|
+
* Union of every built-in locale key. Derived from {@link EN_LOCALE} so the key
|
|
140
|
+
* list and the default strings can never drift apart.
|
|
141
|
+
*/
|
|
142
|
+
export type GridLocaleKey = keyof typeof EN_LOCALE;
|
|
143
|
+
/**
|
|
144
|
+
* A (possibly partial) map of locale keys to translated strings.
|
|
145
|
+
*
|
|
146
|
+
* @remarks
|
|
147
|
+
* Assign to {@link ApexGrid.localeText} to override the built-in English text.
|
|
148
|
+
* Any key you leave out falls back to {@link EN_LOCALE}, so partial maps and
|
|
149
|
+
* incomplete community translations are both valid.
|
|
150
|
+
*/
|
|
151
|
+
export type GridLocaleText = Partial<Record<GridLocaleKey, string>>;
|
package/i18n/en.js
ADDED
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
export const EN_LOCALE = {
|
|
2
|
+
'pagination.label': 'Grid pagination',
|
|
3
|
+
'pagination.controls': 'Pagination controls',
|
|
4
|
+
'pagination.rowsPerPage': 'Rows per page',
|
|
5
|
+
'pagination.firstPage': 'Go to first page',
|
|
6
|
+
'pagination.previousPage': 'Go to previous page',
|
|
7
|
+
'pagination.nextPage': 'Go to next page',
|
|
8
|
+
'pagination.lastPage': 'Go to last page',
|
|
9
|
+
'pagination.summary': '{start}-{end} of {total}',
|
|
10
|
+
'pagination.summaryEmpty': '0 of 0',
|
|
11
|
+
'filter.operator.contains': 'Contains',
|
|
12
|
+
'filter.operator.doesNotContain': 'Does not contain',
|
|
13
|
+
'filter.operator.startsWith': 'Starts with',
|
|
14
|
+
'filter.operator.endsWith': 'Ends with',
|
|
15
|
+
'filter.operator.equals': 'Equals',
|
|
16
|
+
'filter.operator.doesNotEqual': 'Does not equal',
|
|
17
|
+
'filter.operator.greaterThan': 'Greater than',
|
|
18
|
+
'filter.operator.lessThan': 'Less than',
|
|
19
|
+
'filter.operator.greaterThanOrEqual': 'Greater than or equal',
|
|
20
|
+
'filter.operator.lessThanOrEqual': 'Less than or equal',
|
|
21
|
+
'filter.operator.empty': 'Empty',
|
|
22
|
+
'filter.operator.notEmpty': 'Not empty',
|
|
23
|
+
'filter.operator.all': 'All',
|
|
24
|
+
'filter.operator.true': 'True',
|
|
25
|
+
'filter.operator.false': 'False',
|
|
26
|
+
'filter.filter': 'Filter',
|
|
27
|
+
'filter.reset': 'Reset',
|
|
28
|
+
'filter.close': 'Close',
|
|
29
|
+
'filter.removeFilter': 'Remove filter',
|
|
30
|
+
'filter.conditionList': 'Filter condition',
|
|
31
|
+
'filter.changeCondition': 'Change filter condition',
|
|
32
|
+
'filter.inputPlaceholder': 'Add filter value',
|
|
33
|
+
'row.select': 'Select row',
|
|
34
|
+
'row.expand': 'Expand row',
|
|
35
|
+
'row.collapse': 'Collapse row',
|
|
36
|
+
'row.detail': 'Row detail',
|
|
37
|
+
'header.selectAll': 'Select all rows',
|
|
38
|
+
'header.expandAll': 'Expand all rows',
|
|
39
|
+
'header.collapseAll': 'Collapse all rows',
|
|
40
|
+
'toolbar.label': 'Grid toolbar',
|
|
41
|
+
'toolbar.searchPlaceholder': 'Search…',
|
|
42
|
+
'toolbar.export': 'Export',
|
|
43
|
+
'toolbar.exportOptions': 'Export options',
|
|
44
|
+
'toolbar.createChart': 'Create chart',
|
|
45
|
+
'toolbar.exportXlsx': 'Export XLSX',
|
|
46
|
+
'toolbar.askAI': 'Ask AI',
|
|
47
|
+
'setFilter.searchPlaceholder': 'Search values…',
|
|
48
|
+
'setFilter.noValues': 'No values',
|
|
49
|
+
'setFilter.selectAll': '(Select all)',
|
|
50
|
+
'setFilter.clearFilter': 'Clear filter',
|
|
51
|
+
'setFilter.blanks': '(Blanks)',
|
|
52
|
+
'statusBar.selectRange': 'Select a range of cells',
|
|
53
|
+
'statusBar.count': 'Count',
|
|
54
|
+
'statusBar.sum': 'Sum',
|
|
55
|
+
'statusBar.average': 'Avg',
|
|
56
|
+
'statusBar.min': 'Min',
|
|
57
|
+
'statusBar.max': 'Max',
|
|
58
|
+
'toolPanel.noGrid': 'No grid connected',
|
|
59
|
+
'toolPanel.columns': 'Columns',
|
|
60
|
+
'toolPanel.searchPlaceholder': 'Search columns…',
|
|
61
|
+
'toolPanel.pinColumn': 'Pin column',
|
|
62
|
+
'toolPanel.moveUp': 'Move up',
|
|
63
|
+
'toolPanel.moveDown': 'Move down',
|
|
64
|
+
'toolPanel.groupByColumn': 'Group by this column',
|
|
65
|
+
'toolPanel.pivotMode': 'Pivot mode',
|
|
66
|
+
'toolPanel.rowGroups': 'Row Groups',
|
|
67
|
+
'toolPanel.rowGroupsPivot': 'Row Groups (pivot rows)',
|
|
68
|
+
'toolPanel.values': 'Values',
|
|
69
|
+
'toolPanel.columnLabels': 'Column Labels',
|
|
70
|
+
'toolPanel.dragColumns': 'Drag columns here',
|
|
71
|
+
'toolPanel.removeChip': 'Remove',
|
|
72
|
+
'contextMenu.sortAsc': 'Sort ascending',
|
|
73
|
+
'contextMenu.sortDesc': 'Sort descending',
|
|
74
|
+
'contextMenu.clearSort': 'Clear sort',
|
|
75
|
+
'contextMenu.pinStart': 'Pin to start',
|
|
76
|
+
'contextMenu.pinEnd': 'Pin to end',
|
|
77
|
+
'contextMenu.unpin': 'Unpin',
|
|
78
|
+
'contextMenu.hideColumn': 'Hide column',
|
|
79
|
+
'contextMenu.copy': 'Copy',
|
|
80
|
+
'chart.close': 'Close',
|
|
81
|
+
'chart.placeholder': 'Select cells, or group/pivot the grid, to chart it.',
|
|
82
|
+
'chart.chartRange': 'Chart range',
|
|
83
|
+
'chart.countSeries': 'Count',
|
|
84
|
+
'chart.type.column': 'Column',
|
|
85
|
+
'chart.type.bar': 'Bar',
|
|
86
|
+
'chart.type.line': 'Line',
|
|
87
|
+
'chart.type.area': 'Area',
|
|
88
|
+
'chart.type.pie': 'Pie',
|
|
89
|
+
'chart.type.donut': 'Donut',
|
|
90
|
+
'chart.type.scatter': 'Scatter',
|
|
91
|
+
'chart.type.radar': 'Radar',
|
|
92
|
+
'chart.type.combo': 'Combo',
|
|
93
|
+
'chart.type.auto': 'Auto',
|
|
94
|
+
'grouping.blank': '(blank)',
|
|
95
|
+
'grouping.expandGroup': 'Expand group',
|
|
96
|
+
'grouping.collapseGroup': 'Collapse group',
|
|
97
|
+
'grouping.announceExpanded': 'Expanded group {label}',
|
|
98
|
+
'grouping.announceCollapsed': 'Collapsed group {label}',
|
|
99
|
+
'pivot.blank': '(blank)',
|
|
100
|
+
'rangeSelection.copied': 'Copied selection to the clipboard',
|
|
101
|
+
'rangeSelection.pasted': 'Pasted {rows} × {cols} cells',
|
|
102
|
+
'ai.title': 'Ask AI',
|
|
103
|
+
'ai.placeholder': 'Ask the grid to sort, filter, group, or answer a question…',
|
|
104
|
+
'ai.modeControl': 'Change the grid',
|
|
105
|
+
'ai.modeAsk': 'Ask a question',
|
|
106
|
+
'ai.send': 'Send',
|
|
107
|
+
'ai.cancel': 'Cancel',
|
|
108
|
+
'ai.thinking': 'Thinking…',
|
|
109
|
+
'ai.undo': 'Undo',
|
|
110
|
+
'ai.applied': 'Applied',
|
|
111
|
+
'ai.noChanges': 'No changes were applied.',
|
|
112
|
+
'ai.warnings': 'Notes',
|
|
113
|
+
'ai.answer': 'Answer',
|
|
114
|
+
'ai.error': 'Something went wrong.',
|
|
115
|
+
'ai.noAdapter': 'No AI adapter configured. Set grid.aiAdapter to enable.',
|
|
116
|
+
'ai.close': 'Close',
|
|
117
|
+
'formula.editorLabel': 'Formula',
|
|
118
|
+
'formula.invalid': 'Invalid formula',
|
|
119
|
+
'formula.error.ref': 'Invalid cell reference',
|
|
120
|
+
'formula.error.name': 'Unknown function',
|
|
121
|
+
'formula.error.div0': 'Division by zero',
|
|
122
|
+
'formula.error.value': 'Invalid value',
|
|
123
|
+
'formula.error.cycle': 'Circular reference',
|
|
124
|
+
};
|
|
125
|
+
//# sourceMappingURL=en.js.map
|
package/i18n/en.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"en.js","sourceRoot":"","sources":["../../src/i18n/en.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Default English locale dictionary: the single source of truth for every\n * built-in, user-facing string the community grid renders.\n *\n * @remarks\n * Each key is a stable, dot-namespaced identifier. Values may contain\n * `{placeholder}` tokens that {@link localize} interpolates at render time\n * (for example `pagination.summary`). To translate or tweak the UI text,\n * pass a (possibly partial) {@link GridLocaleText} map to\n * {@link ApexGrid.localeText}; any key you omit falls back to the value here.\n *\n * A ready-made Spanish translation ships as `esLocale`.\n */\nexport const EN_LOCALE = {\n // Pagination\n 'pagination.label': 'Grid pagination',\n 'pagination.controls': 'Pagination controls',\n 'pagination.rowsPerPage': 'Rows per page',\n 'pagination.firstPage': 'Go to first page',\n 'pagination.previousPage': 'Go to previous page',\n 'pagination.nextPage': 'Go to next page',\n 'pagination.lastPage': 'Go to last page',\n 'pagination.summary': '{start}-{end} of {total}',\n 'pagination.summaryEmpty': '0 of 0',\n\n // Filtering: operators\n 'filter.operator.contains': 'Contains',\n 'filter.operator.doesNotContain': 'Does not contain',\n 'filter.operator.startsWith': 'Starts with',\n 'filter.operator.endsWith': 'Ends with',\n 'filter.operator.equals': 'Equals',\n 'filter.operator.doesNotEqual': 'Does not equal',\n 'filter.operator.greaterThan': 'Greater than',\n 'filter.operator.lessThan': 'Less than',\n 'filter.operator.greaterThanOrEqual': 'Greater than or equal',\n 'filter.operator.lessThanOrEqual': 'Less than or equal',\n 'filter.operator.empty': 'Empty',\n 'filter.operator.notEmpty': 'Not empty',\n 'filter.operator.all': 'All',\n 'filter.operator.true': 'True',\n 'filter.operator.false': 'False',\n\n // Filtering: UI\n 'filter.filter': 'Filter',\n 'filter.reset': 'Reset',\n 'filter.close': 'Close',\n 'filter.removeFilter': 'Remove filter',\n 'filter.conditionList': 'Filter condition',\n 'filter.changeCondition': 'Change filter condition',\n 'filter.inputPlaceholder': 'Add filter value',\n\n // Rows: selection / expansion\n 'row.select': 'Select row',\n 'row.expand': 'Expand row',\n 'row.collapse': 'Collapse row',\n 'row.detail': 'Row detail',\n 'header.selectAll': 'Select all rows',\n 'header.expandAll': 'Expand all rows',\n 'header.collapseAll': 'Collapse all rows',\n\n // Toolbar\n 'toolbar.label': 'Grid toolbar',\n 'toolbar.searchPlaceholder': 'Search…',\n 'toolbar.export': 'Export',\n 'toolbar.exportOptions': 'Export options',\n 'toolbar.createChart': 'Create chart',\n 'toolbar.exportXlsx': 'Export XLSX',\n 'toolbar.askAI': 'Ask AI',\n\n // Enterprise: set filter\n 'setFilter.searchPlaceholder': 'Search values…',\n 'setFilter.noValues': 'No values',\n 'setFilter.selectAll': '(Select all)',\n 'setFilter.clearFilter': 'Clear filter',\n 'setFilter.blanks': '(Blanks)',\n\n // Enterprise: status bar\n 'statusBar.selectRange': 'Select a range of cells',\n 'statusBar.count': 'Count',\n 'statusBar.sum': 'Sum',\n 'statusBar.average': 'Avg',\n 'statusBar.min': 'Min',\n 'statusBar.max': 'Max',\n\n // Enterprise: tool panel\n 'toolPanel.noGrid': 'No grid connected',\n 'toolPanel.columns': 'Columns',\n 'toolPanel.searchPlaceholder': 'Search columns…',\n 'toolPanel.pinColumn': 'Pin column',\n 'toolPanel.moveUp': 'Move up',\n 'toolPanel.moveDown': 'Move down',\n 'toolPanel.groupByColumn': 'Group by this column',\n 'toolPanel.pivotMode': 'Pivot mode',\n 'toolPanel.rowGroups': 'Row Groups',\n 'toolPanel.rowGroupsPivot': 'Row Groups (pivot rows)',\n 'toolPanel.values': 'Values',\n 'toolPanel.columnLabels': 'Column Labels',\n 'toolPanel.dragColumns': 'Drag columns here',\n 'toolPanel.removeChip': 'Remove',\n\n // Enterprise: context menu\n 'contextMenu.sortAsc': 'Sort ascending',\n 'contextMenu.sortDesc': 'Sort descending',\n 'contextMenu.clearSort': 'Clear sort',\n 'contextMenu.pinStart': 'Pin to start',\n 'contextMenu.pinEnd': 'Pin to end',\n 'contextMenu.unpin': 'Unpin',\n 'contextMenu.hideColumn': 'Hide column',\n 'contextMenu.copy': 'Copy',\n\n // Enterprise: charts\n 'chart.close': 'Close',\n 'chart.placeholder': 'Select cells, or group/pivot the grid, to chart it.',\n 'chart.chartRange': 'Chart range',\n 'chart.countSeries': 'Count',\n 'chart.type.column': 'Column',\n 'chart.type.bar': 'Bar',\n 'chart.type.line': 'Line',\n 'chart.type.area': 'Area',\n 'chart.type.pie': 'Pie',\n 'chart.type.donut': 'Donut',\n 'chart.type.scatter': 'Scatter',\n 'chart.type.radar': 'Radar',\n 'chart.type.combo': 'Combo',\n 'chart.type.auto': 'Auto',\n\n // Enterprise: row grouping\n 'grouping.blank': '(blank)',\n 'grouping.expandGroup': 'Expand group',\n 'grouping.collapseGroup': 'Collapse group',\n 'grouping.announceExpanded': 'Expanded group {label}',\n 'grouping.announceCollapsed': 'Collapsed group {label}',\n\n // Enterprise: pivot\n 'pivot.blank': '(blank)',\n\n // Enterprise: range selection\n 'rangeSelection.copied': 'Copied selection to the clipboard',\n 'rangeSelection.pasted': 'Pasted {rows} × {cols} cells',\n\n // Enterprise: AI Toolkit\n 'ai.title': 'Ask AI',\n 'ai.placeholder': 'Ask the grid to sort, filter, group, or answer a question…',\n 'ai.modeControl': 'Change the grid',\n 'ai.modeAsk': 'Ask a question',\n 'ai.send': 'Send',\n 'ai.cancel': 'Cancel',\n 'ai.thinking': 'Thinking…',\n 'ai.undo': 'Undo',\n 'ai.applied': 'Applied',\n 'ai.noChanges': 'No changes were applied.',\n 'ai.warnings': 'Notes',\n 'ai.answer': 'Answer',\n 'ai.error': 'Something went wrong.',\n 'ai.noAdapter': 'No AI adapter configured. Set grid.aiAdapter to enable.',\n 'ai.close': 'Close',\n\n // Formulas (enterprise)\n 'formula.editorLabel': 'Formula',\n 'formula.invalid': 'Invalid formula',\n 'formula.error.ref': 'Invalid cell reference',\n 'formula.error.name': 'Unknown function',\n 'formula.error.div0': 'Division by zero',\n 'formula.error.value': 'Invalid value',\n 'formula.error.cycle': 'Circular reference',\n} as const;\n\n/**\n * Union of every built-in locale key. Derived from {@link EN_LOCALE} so the key\n * list and the default strings can never drift apart.\n */\nexport type GridLocaleKey = keyof typeof EN_LOCALE;\n\n/**\n * A (possibly partial) map of locale keys to translated strings.\n *\n * @remarks\n * Assign to {@link ApexGrid.localeText} to override the built-in English text.\n * Any key you leave out falls back to {@link EN_LOCALE}, so partial maps and\n * incomplete community translations are both valid.\n */\nexport type GridLocaleText = Partial<Record<GridLocaleKey, string>>;\n"]}
|
package/i18n/es.d.ts
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { GridLocaleText } from './en.js';
|
|
2
|
+
/**
|
|
3
|
+
* Spanish (Español) translation of the grid's built-in UI text.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* A ready-made {@link GridLocaleText} map covering every key in `EN_LOCALE`.
|
|
7
|
+
* Assign it to {@link ApexGrid.localeText} to render the grid in Spanish, or
|
|
8
|
+
* spread it to override individual strings:
|
|
9
|
+
*
|
|
10
|
+
* ```ts
|
|
11
|
+
* import { esLocale } from '@apexcharts/grid';
|
|
12
|
+
*
|
|
13
|
+
* grid.localeText = esLocale;
|
|
14
|
+
* // or, with a tweak:
|
|
15
|
+
* grid.localeText = { ...esLocale, 'toolbar.export': 'Descargar' };
|
|
16
|
+
* ```
|
|
17
|
+
*/
|
|
18
|
+
export declare const esLocale: GridLocaleText;
|
package/i18n/es.js
ADDED
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
export const esLocale = {
|
|
2
|
+
'pagination.label': 'Paginación de la tabla',
|
|
3
|
+
'pagination.controls': 'Controles de paginación',
|
|
4
|
+
'pagination.rowsPerPage': 'Filas por página',
|
|
5
|
+
'pagination.firstPage': 'Ir a la primera página',
|
|
6
|
+
'pagination.previousPage': 'Ir a la página anterior',
|
|
7
|
+
'pagination.nextPage': 'Ir a la página siguiente',
|
|
8
|
+
'pagination.lastPage': 'Ir a la última página',
|
|
9
|
+
'pagination.summary': '{start}-{end} de {total}',
|
|
10
|
+
'pagination.summaryEmpty': '0 de 0',
|
|
11
|
+
'filter.operator.contains': 'Contiene',
|
|
12
|
+
'filter.operator.doesNotContain': 'No contiene',
|
|
13
|
+
'filter.operator.startsWith': 'Empieza por',
|
|
14
|
+
'filter.operator.endsWith': 'Termina en',
|
|
15
|
+
'filter.operator.equals': 'Igual a',
|
|
16
|
+
'filter.operator.doesNotEqual': 'Distinto de',
|
|
17
|
+
'filter.operator.greaterThan': 'Mayor que',
|
|
18
|
+
'filter.operator.lessThan': 'Menor que',
|
|
19
|
+
'filter.operator.greaterThanOrEqual': 'Mayor o igual que',
|
|
20
|
+
'filter.operator.lessThanOrEqual': 'Menor o igual que',
|
|
21
|
+
'filter.operator.empty': 'Vacío',
|
|
22
|
+
'filter.operator.notEmpty': 'No vacío',
|
|
23
|
+
'filter.operator.all': 'Todos',
|
|
24
|
+
'filter.operator.true': 'Verdadero',
|
|
25
|
+
'filter.operator.false': 'Falso',
|
|
26
|
+
'filter.filter': 'Filtrar',
|
|
27
|
+
'filter.reset': 'Restablecer',
|
|
28
|
+
'filter.close': 'Cerrar',
|
|
29
|
+
'filter.removeFilter': 'Quitar filtro',
|
|
30
|
+
'filter.conditionList': 'Condición de filtro',
|
|
31
|
+
'filter.changeCondition': 'Cambiar condición de filtro',
|
|
32
|
+
'filter.inputPlaceholder': 'Añadir valor de filtro',
|
|
33
|
+
'row.select': 'Seleccionar fila',
|
|
34
|
+
'row.expand': 'Expandir fila',
|
|
35
|
+
'row.collapse': 'Contraer fila',
|
|
36
|
+
'row.detail': 'Detalle de la fila',
|
|
37
|
+
'header.selectAll': 'Seleccionar todas las filas',
|
|
38
|
+
'header.expandAll': 'Expandir todas las filas',
|
|
39
|
+
'header.collapseAll': 'Contraer todas las filas',
|
|
40
|
+
'toolbar.label': 'Barra de herramientas de la tabla',
|
|
41
|
+
'toolbar.searchPlaceholder': 'Buscar…',
|
|
42
|
+
'toolbar.export': 'Exportar',
|
|
43
|
+
'toolbar.exportOptions': 'Opciones de exportación',
|
|
44
|
+
'toolbar.createChart': 'Crear gráfico',
|
|
45
|
+
'toolbar.exportXlsx': 'Exportar XLSX',
|
|
46
|
+
'toolbar.askAI': 'Preguntar a la IA',
|
|
47
|
+
'setFilter.searchPlaceholder': 'Buscar valores…',
|
|
48
|
+
'setFilter.noValues': 'Sin valores',
|
|
49
|
+
'setFilter.selectAll': '(Seleccionar todo)',
|
|
50
|
+
'setFilter.clearFilter': 'Borrar filtro',
|
|
51
|
+
'setFilter.blanks': '(Vacíos)',
|
|
52
|
+
'statusBar.selectRange': 'Seleccione un rango de celdas',
|
|
53
|
+
'statusBar.count': 'Recuento',
|
|
54
|
+
'statusBar.sum': 'Suma',
|
|
55
|
+
'statusBar.average': 'Prom.',
|
|
56
|
+
'statusBar.min': 'Mín.',
|
|
57
|
+
'statusBar.max': 'Máx.',
|
|
58
|
+
'toolPanel.noGrid': 'Ninguna tabla conectada',
|
|
59
|
+
'toolPanel.columns': 'Columnas',
|
|
60
|
+
'toolPanel.searchPlaceholder': 'Buscar columnas…',
|
|
61
|
+
'toolPanel.pinColumn': 'Fijar columna',
|
|
62
|
+
'toolPanel.moveUp': 'Subir',
|
|
63
|
+
'toolPanel.moveDown': 'Bajar',
|
|
64
|
+
'toolPanel.groupByColumn': 'Agrupar por esta columna',
|
|
65
|
+
'toolPanel.pivotMode': 'Modo dinámico',
|
|
66
|
+
'toolPanel.rowGroups': 'Grupos de filas',
|
|
67
|
+
'toolPanel.rowGroupsPivot': 'Grupos de filas (filas dinámicas)',
|
|
68
|
+
'toolPanel.values': 'Valores',
|
|
69
|
+
'toolPanel.columnLabels': 'Etiquetas de columna',
|
|
70
|
+
'toolPanel.dragColumns': 'Arrastre columnas aquí',
|
|
71
|
+
'toolPanel.removeChip': 'Quitar',
|
|
72
|
+
'contextMenu.sortAsc': 'Ordenar ascendente',
|
|
73
|
+
'contextMenu.sortDesc': 'Ordenar descendente',
|
|
74
|
+
'contextMenu.clearSort': 'Quitar orden',
|
|
75
|
+
'contextMenu.pinStart': 'Fijar al inicio',
|
|
76
|
+
'contextMenu.pinEnd': 'Fijar al final',
|
|
77
|
+
'contextMenu.unpin': 'Desfijar',
|
|
78
|
+
'contextMenu.hideColumn': 'Ocultar columna',
|
|
79
|
+
'contextMenu.copy': 'Copiar',
|
|
80
|
+
'chart.close': 'Cerrar',
|
|
81
|
+
'chart.placeholder': 'Seleccione celdas, o agrupe/pivote la tabla, para graficarla.',
|
|
82
|
+
'chart.chartRange': 'Graficar rango',
|
|
83
|
+
'chart.countSeries': 'Recuento',
|
|
84
|
+
'chart.type.column': 'Columnas',
|
|
85
|
+
'chart.type.bar': 'Barras',
|
|
86
|
+
'chart.type.line': 'Líneas',
|
|
87
|
+
'chart.type.area': 'Área',
|
|
88
|
+
'chart.type.pie': 'Circular',
|
|
89
|
+
'chart.type.donut': 'Anillo',
|
|
90
|
+
'chart.type.scatter': 'Dispersión',
|
|
91
|
+
'chart.type.radar': 'Radar',
|
|
92
|
+
'chart.type.combo': 'Combinado',
|
|
93
|
+
'chart.type.auto': 'Automático',
|
|
94
|
+
'grouping.blank': '(vacío)',
|
|
95
|
+
'grouping.expandGroup': 'Expandir grupo',
|
|
96
|
+
'grouping.collapseGroup': 'Contraer grupo',
|
|
97
|
+
'grouping.announceExpanded': 'Grupo expandido {label}',
|
|
98
|
+
'grouping.announceCollapsed': 'Grupo contraído {label}',
|
|
99
|
+
'pivot.blank': '(vacío)',
|
|
100
|
+
'rangeSelection.copied': 'Selección copiada al portapapeles',
|
|
101
|
+
'rangeSelection.pasted': 'Pegadas {rows} × {cols} celdas',
|
|
102
|
+
'ai.title': 'Preguntar a la IA',
|
|
103
|
+
'ai.placeholder': 'Pide a la tabla ordenar, filtrar, agrupar o responder una pregunta…',
|
|
104
|
+
'ai.modeControl': 'Cambiar la tabla',
|
|
105
|
+
'ai.modeAsk': 'Hacer una pregunta',
|
|
106
|
+
'ai.send': 'Enviar',
|
|
107
|
+
'ai.cancel': 'Cancelar',
|
|
108
|
+
'ai.thinking': 'Pensando…',
|
|
109
|
+
'ai.undo': 'Deshacer',
|
|
110
|
+
'ai.applied': 'Aplicado',
|
|
111
|
+
'ai.noChanges': 'No se aplicaron cambios.',
|
|
112
|
+
'ai.warnings': 'Notas',
|
|
113
|
+
'ai.answer': 'Respuesta',
|
|
114
|
+
'ai.error': 'Algo salió mal.',
|
|
115
|
+
'ai.noAdapter': 'No hay adaptador de IA configurado. Asigne grid.aiAdapter para habilitarlo.',
|
|
116
|
+
'ai.close': 'Cerrar',
|
|
117
|
+
'formula.editorLabel': 'Fórmula',
|
|
118
|
+
'formula.invalid': 'Fórmula no válida',
|
|
119
|
+
'formula.error.ref': 'Referencia de celda no válida',
|
|
120
|
+
'formula.error.name': 'Función desconocida',
|
|
121
|
+
'formula.error.div0': 'División por cero',
|
|
122
|
+
'formula.error.value': 'Valor no válido',
|
|
123
|
+
'formula.error.cycle': 'Referencia circular',
|
|
124
|
+
};
|
|
125
|
+
//# sourceMappingURL=es.js.map
|
package/i18n/es.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"es.js","sourceRoot":"","sources":["../../src/i18n/es.ts"],"names":[],"mappings":"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","sourcesContent":["import type { GridLocaleText } from './en.js';\n\n/**\n * Spanish (Español) translation of the grid's built-in UI text.\n *\n * @remarks\n * A ready-made {@link GridLocaleText} map covering every key in `EN_LOCALE`.\n * Assign it to {@link ApexGrid.localeText} to render the grid in Spanish, or\n * spread it to override individual strings:\n *\n * ```ts\n * import { esLocale } from '@apexcharts/grid';\n *\n * grid.localeText = esLocale;\n * // or, with a tweak:\n * grid.localeText = { ...esLocale, 'toolbar.export': 'Descargar' };\n * ```\n */\nexport const esLocale: GridLocaleText = {\n // Paginación\n 'pagination.label': 'Paginación de la tabla',\n 'pagination.controls': 'Controles de paginación',\n 'pagination.rowsPerPage': 'Filas por página',\n 'pagination.firstPage': 'Ir a la primera página',\n 'pagination.previousPage': 'Ir a la página anterior',\n 'pagination.nextPage': 'Ir a la página siguiente',\n 'pagination.lastPage': 'Ir a la última página',\n 'pagination.summary': '{start}-{end} de {total}',\n 'pagination.summaryEmpty': '0 de 0',\n\n // Filtrado: operadores\n 'filter.operator.contains': 'Contiene',\n 'filter.operator.doesNotContain': 'No contiene',\n 'filter.operator.startsWith': 'Empieza por',\n 'filter.operator.endsWith': 'Termina en',\n 'filter.operator.equals': 'Igual a',\n 'filter.operator.doesNotEqual': 'Distinto de',\n 'filter.operator.greaterThan': 'Mayor que',\n 'filter.operator.lessThan': 'Menor que',\n 'filter.operator.greaterThanOrEqual': 'Mayor o igual que',\n 'filter.operator.lessThanOrEqual': 'Menor o igual que',\n 'filter.operator.empty': 'Vacío',\n 'filter.operator.notEmpty': 'No vacío',\n 'filter.operator.all': 'Todos',\n 'filter.operator.true': 'Verdadero',\n 'filter.operator.false': 'Falso',\n\n // Filtrado: interfaz\n 'filter.filter': 'Filtrar',\n 'filter.reset': 'Restablecer',\n 'filter.close': 'Cerrar',\n 'filter.removeFilter': 'Quitar filtro',\n 'filter.conditionList': 'Condición de filtro',\n 'filter.changeCondition': 'Cambiar condición de filtro',\n 'filter.inputPlaceholder': 'Añadir valor de filtro',\n\n // Filas: selección / expansión\n 'row.select': 'Seleccionar fila',\n 'row.expand': 'Expandir fila',\n 'row.collapse': 'Contraer fila',\n 'row.detail': 'Detalle de la fila',\n 'header.selectAll': 'Seleccionar todas las filas',\n 'header.expandAll': 'Expandir todas las filas',\n 'header.collapseAll': 'Contraer todas las filas',\n\n // Barra de herramientas\n 'toolbar.label': 'Barra de herramientas de la tabla',\n 'toolbar.searchPlaceholder': 'Buscar…',\n 'toolbar.export': 'Exportar',\n 'toolbar.exportOptions': 'Opciones de exportación',\n 'toolbar.createChart': 'Crear gráfico',\n 'toolbar.exportXlsx': 'Exportar XLSX',\n 'toolbar.askAI': 'Preguntar a la IA',\n\n // Enterprise: filtro de conjunto\n 'setFilter.searchPlaceholder': 'Buscar valores…',\n 'setFilter.noValues': 'Sin valores',\n 'setFilter.selectAll': '(Seleccionar todo)',\n 'setFilter.clearFilter': 'Borrar filtro',\n 'setFilter.blanks': '(Vacíos)',\n\n // Enterprise: barra de estado\n 'statusBar.selectRange': 'Seleccione un rango de celdas',\n 'statusBar.count': 'Recuento',\n 'statusBar.sum': 'Suma',\n 'statusBar.average': 'Prom.',\n 'statusBar.min': 'Mín.',\n 'statusBar.max': 'Máx.',\n\n // Enterprise: panel de herramientas\n 'toolPanel.noGrid': 'Ninguna tabla conectada',\n 'toolPanel.columns': 'Columnas',\n 'toolPanel.searchPlaceholder': 'Buscar columnas…',\n 'toolPanel.pinColumn': 'Fijar columna',\n 'toolPanel.moveUp': 'Subir',\n 'toolPanel.moveDown': 'Bajar',\n 'toolPanel.groupByColumn': 'Agrupar por esta columna',\n 'toolPanel.pivotMode': 'Modo dinámico',\n 'toolPanel.rowGroups': 'Grupos de filas',\n 'toolPanel.rowGroupsPivot': 'Grupos de filas (filas dinámicas)',\n 'toolPanel.values': 'Valores',\n 'toolPanel.columnLabels': 'Etiquetas de columna',\n 'toolPanel.dragColumns': 'Arrastre columnas aquí',\n 'toolPanel.removeChip': 'Quitar',\n\n // Enterprise: menú contextual\n 'contextMenu.sortAsc': 'Ordenar ascendente',\n 'contextMenu.sortDesc': 'Ordenar descendente',\n 'contextMenu.clearSort': 'Quitar orden',\n 'contextMenu.pinStart': 'Fijar al inicio',\n 'contextMenu.pinEnd': 'Fijar al final',\n 'contextMenu.unpin': 'Desfijar',\n 'contextMenu.hideColumn': 'Ocultar columna',\n 'contextMenu.copy': 'Copiar',\n\n // Enterprise: gráficos\n 'chart.close': 'Cerrar',\n 'chart.placeholder': 'Seleccione celdas, o agrupe/pivote la tabla, para graficarla.',\n 'chart.chartRange': 'Graficar rango',\n 'chart.countSeries': 'Recuento',\n 'chart.type.column': 'Columnas',\n 'chart.type.bar': 'Barras',\n 'chart.type.line': 'Líneas',\n 'chart.type.area': 'Área',\n 'chart.type.pie': 'Circular',\n 'chart.type.donut': 'Anillo',\n 'chart.type.scatter': 'Dispersión',\n 'chart.type.radar': 'Radar',\n 'chart.type.combo': 'Combinado',\n 'chart.type.auto': 'Automático',\n\n // Enterprise: agrupación de filas\n 'grouping.blank': '(vacío)',\n 'grouping.expandGroup': 'Expandir grupo',\n 'grouping.collapseGroup': 'Contraer grupo',\n 'grouping.announceExpanded': 'Grupo expandido {label}',\n 'grouping.announceCollapsed': 'Grupo contraído {label}',\n\n // Enterprise: tabla dinámica\n 'pivot.blank': '(vacío)',\n\n // Enterprise: selección de rango\n 'rangeSelection.copied': 'Selección copiada al portapapeles',\n 'rangeSelection.pasted': 'Pegadas {rows} × {cols} celdas',\n\n // Enterprise: kit de IA\n 'ai.title': 'Preguntar a la IA',\n 'ai.placeholder': 'Pide a la tabla ordenar, filtrar, agrupar o responder una pregunta…',\n 'ai.modeControl': 'Cambiar la tabla',\n 'ai.modeAsk': 'Hacer una pregunta',\n 'ai.send': 'Enviar',\n 'ai.cancel': 'Cancelar',\n 'ai.thinking': 'Pensando…',\n 'ai.undo': 'Deshacer',\n 'ai.applied': 'Aplicado',\n 'ai.noChanges': 'No se aplicaron cambios.',\n 'ai.warnings': 'Notas',\n 'ai.answer': 'Respuesta',\n 'ai.error': 'Algo salió mal.',\n 'ai.noAdapter': 'No hay adaptador de IA configurado. Asigne grid.aiAdapter para habilitarlo.',\n 'ai.close': 'Cerrar',\n\n // Fórmulas (enterprise)\n 'formula.editorLabel': 'Fórmula',\n 'formula.invalid': 'Fórmula no válida',\n 'formula.error.ref': 'Referencia de celda no válida',\n 'formula.error.name': 'Función desconocida',\n 'formula.error.div0': 'División por cero',\n 'formula.error.value': 'Valor no válido',\n 'formula.error.cycle': 'Referencia circular',\n};\n"]}
|
package/i18n/index.d.ts
ADDED
package/i18n/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/i18n/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA2C,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,WAAW,EAAqB,QAAQ,EAAE,MAAM,eAAe,CAAC","sourcesContent":["export { EN_LOCALE, type GridLocaleKey, type GridLocaleText } from './en.js';\nexport { esLocale } from './es.js';\nexport { interpolate, type LocaleParams, localize } from './localize.js';\n"]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { type GridLocaleKey, type GridLocaleText } from './en.js';
|
|
2
|
+
/**
|
|
3
|
+
* Values substituted into a localized string's `{placeholder}` tokens.
|
|
4
|
+
*/
|
|
5
|
+
export type LocaleParams = Record<string, string | number>;
|
|
6
|
+
/**
|
|
7
|
+
* Replaces `{name}` tokens in `template` with the matching value from `params`.
|
|
8
|
+
* Tokens with no matching param are left untouched, so a missing value shows
|
|
9
|
+
* the literal `{name}` rather than `undefined`.
|
|
10
|
+
*/
|
|
11
|
+
export declare function interpolate(template: string, params?: LocaleParams): string;
|
|
12
|
+
/**
|
|
13
|
+
* Resolves a locale key to its display string.
|
|
14
|
+
*
|
|
15
|
+
* @remarks
|
|
16
|
+
* Resolution order: a consumer override in `overrides`, then the built-in
|
|
17
|
+
* English default ({@link EN_LOCALE}), then the explicit `fallback`, then the
|
|
18
|
+
* key itself as a last resort. The `fallback` lets callers localize text whose
|
|
19
|
+
* key is not part of the built-in set (for example a custom filter operand's
|
|
20
|
+
* own `label`). Any `{placeholder}` tokens in the resolved string are
|
|
21
|
+
* interpolated from `params`.
|
|
22
|
+
*/
|
|
23
|
+
export declare function localize(overrides: GridLocaleText | undefined, key: GridLocaleKey, params?: LocaleParams, fallback?: string): string;
|
package/i18n/localize.js
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { EN_LOCALE } from './en.js';
|
|
2
|
+
const TOKEN = /\{(\w+)\}/g;
|
|
3
|
+
export function interpolate(template, params) {
|
|
4
|
+
if (!params)
|
|
5
|
+
return template;
|
|
6
|
+
return template.replace(TOKEN, (match, key) => {
|
|
7
|
+
const value = params[key];
|
|
8
|
+
return value === undefined ? match : String(value);
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
export function localize(overrides, key, params, fallback) {
|
|
12
|
+
const template = overrides?.[key] ?? EN_LOCALE[key] ?? fallback ?? key;
|
|
13
|
+
return interpolate(template, params);
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=localize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"localize.js","sourceRoot":"","sources":["../../src/i18n/localize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAA2C,MAAM,SAAS,CAAC;AAO7E,MAAM,KAAK,GAAG,YAAY,CAAC;AAO3B,MAAM,UAAU,WAAW,CAAC,QAAgB,EAAE,MAAqB;IACjE,IAAI,CAAC,MAAM;QAAE,OAAO,QAAQ,CAAC;IAC7B,OAAO,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,GAAW,EAAE,EAAE;QACpD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;AACL,CAAC;AAaD,MAAM,UAAU,QAAQ,CACtB,SAAqC,EACrC,GAAkB,EAClB,MAAqB,EACrB,QAAiB;IAEjB,MAAM,QAAQ,GAAG,SAAS,EAAE,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,IAAI,QAAQ,IAAI,GAAG,CAAC;IACvE,OAAO,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;AACvC,CAAC","sourcesContent":["import { EN_LOCALE, type GridLocaleKey, type GridLocaleText } from './en.js';\n\n/**\n * Values substituted into a localized string's `{placeholder}` tokens.\n */\nexport type LocaleParams = Record<string, string | number>;\n\nconst TOKEN = /\\{(\\w+)\\}/g;\n\n/**\n * Replaces `{name}` tokens in `template` with the matching value from `params`.\n * Tokens with no matching param are left untouched, so a missing value shows\n * the literal `{name}` rather than `undefined`.\n */\nexport function interpolate(template: string, params?: LocaleParams): string {\n if (!params) return template;\n return template.replace(TOKEN, (match, key: string) => {\n const value = params[key];\n return value === undefined ? match : String(value);\n });\n}\n\n/**\n * Resolves a locale key to its display string.\n *\n * @remarks\n * Resolution order: a consumer override in `overrides`, then the built-in\n * English default ({@link EN_LOCALE}), then the explicit `fallback`, then the\n * key itself as a last resort. The `fallback` lets callers localize text whose\n * key is not part of the built-in set (for example a custom filter operand's\n * own `label`). Any `{placeholder}` tokens in the resolved string are\n * interpolated from `params`.\n */\nexport function localize(\n overrides: GridLocaleText | undefined,\n key: GridLocaleKey,\n params?: LocaleParams,\n fallback?: string\n): string {\n const template = overrides?.[key] ?? EN_LOCALE[key] ?? fallback ?? key;\n return interpolate(template, params);\n}\n"]}
|
package/index.d.ts
CHANGED
|
@@ -1,7 +1,13 @@
|
|
|
1
|
-
export type { ApexCellValueChangedEvent, ApexCellValueChangingEvent, ApexColumnMovedEvent, ApexColumnMovingEvent, ApexColumnPinnedEvent, ApexColumnPinningEvent, ApexFilteredEvent, ApexFilteringEvent, ApexGridEventMap, ApexPageChangedEvent, ApexPageChangingEvent, ApexQuickFilterChangedEvent, ApexQuickFilterChangingEvent, ApexRowEditEndedEvent, ApexRowEditStartedEvent, ApexRowExpandedEvent, ApexRowExpandingEvent, ApexRowSelectedEvent, ApexRowSelectingEvent, ApexTreeRowExpandedEvent, ApexTreeRowExpandingEvent, ColumnDropPosition, } from './components/grid.js';
|
|
1
|
+
export type { ApexCellValidationFailedEvent, ApexCellValueChangedEvent, ApexCellValueChangingEvent, ApexColumnMovedEvent, ApexColumnMovingEvent, ApexColumnPinnedEvent, ApexColumnPinningEvent, ApexFilteredEvent, ApexFilteringEvent, ApexGridEventMap, ApexHistoryChangedEvent, ApexPageChangedEvent, ApexPageChangingEvent, ApexQuickFilterChangedEvent, ApexQuickFilterChangingEvent, ApexRowEditEndedEvent, ApexRowEditStartedEvent, ApexRowExpandedEvent, ApexRowExpandingEvent, ApexRowMovingEvent, ApexRowPinningEvent, ApexRowSelectedEvent, ApexRowSelectingEvent, ApexStateChangedEvent, ApexTreeRowExpandedEvent, ApexTreeRowExpandingEvent, ColumnDropPosition, } from './components/grid.js';
|
|
2
2
|
export { ApexGrid } from './components/grid.js';
|
|
3
|
+
export type { RowPinPosition } from './controllers/row-pin.js';
|
|
4
|
+
export type { RowDropPosition } from './controllers/row-reorder.js';
|
|
5
|
+
export { EN_LOCALE, esLocale, type GridLocaleKey, type GridLocaleText, interpolate, type LocaleParams, localize, } from './i18n/index.js';
|
|
3
6
|
export type { CSVExportOptions, ExportCellValue, ExportFormat, ExportOptions, ExportSource, } from './internal/export.js';
|
|
4
|
-
export type {
|
|
7
|
+
export type { ColumnSchema, GridCapabilities, GridSchema, } from './internal/state-schema.js';
|
|
8
|
+
export type { ColumnLayoutState, FilterStateSnapshot, GetStateOptions, GridState, RowRef, SetStateOptions, SetStateResult, SortStateSnapshot, } from './internal/state-snapshot.js';
|
|
9
|
+
export type { ApexCellContext, ApexColumnGroupContext, ApexDetailContext, ApexEditorContext, ApexHeaderContext, BaseApexCellContext, BaseApexEditorContext, BaseColumnConfiguration, BaseColumnSortConfiguration, BasePropertyType, ColumnConfiguration, ColumnFilterConfiguration, ColumnGroupConfiguration, ColumnSortConfiguration, DataPipelineConfiguration, DataPipelineHook, DataPipelineParams, DataType, EditingHistoryConfiguration, EditMode, EditTrigger, GridEditingConfiguration, GridExpansionConfiguration, GridRowPinningConfiguration, GridRowReorderingConfiguration, GridSelectionConfiguration, GridSortConfiguration, GridTreeConfiguration, Keys, PaginationConfiguration, PaginationMode, PaginationState, PinPosition, PropertyType, SelectionMode, Validator, ValidatorContext, } from './internal/types.js';
|
|
10
|
+
export { custom, max, min, pattern, required } from './internal/validators.js';
|
|
5
11
|
export { BooleanOperands } from './operations/filter/operands/boolean.js';
|
|
6
12
|
export { NumberOperands } from './operations/filter/operands/number.js';
|
|
7
13
|
export { StringOperands } from './operations/filter/operands/string.js';
|
package/index.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export { ApexGrid } from './components/grid.js';
|
|
2
|
+
export { EN_LOCALE, esLocale, interpolate, localize, } from './i18n/index.js';
|
|
3
|
+
export { custom, max, min, pattern, required } from './internal/validators.js';
|
|
2
4
|
export { BooleanOperands } from './operations/filter/operands/boolean.js';
|
|
3
5
|
export { NumberOperands } from './operations/filter/operands/number.js';
|
|
4
6
|
export { StringOperands } from './operations/filter/operands/string.js';
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA6BA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAGhD,OAAO,EACL,SAAS,EACT,QAAQ,EAGR,WAAW,EAEX,QAAQ,GACT,MAAM,iBAAiB,CAAC;AA8DzB,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAkBxE,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC","sourcesContent":["export type {\n ApexCellValidationFailedEvent,\n ApexCellValueChangedEvent,\n ApexCellValueChangingEvent,\n ApexColumnMovedEvent,\n ApexColumnMovingEvent,\n ApexColumnPinnedEvent,\n ApexColumnPinningEvent,\n ApexFilteredEvent,\n ApexFilteringEvent,\n ApexGridEventMap,\n ApexHistoryChangedEvent,\n ApexPageChangedEvent,\n ApexPageChangingEvent,\n ApexQuickFilterChangedEvent,\n ApexQuickFilterChangingEvent,\n ApexRowEditEndedEvent,\n ApexRowEditStartedEvent,\n ApexRowExpandedEvent,\n ApexRowExpandingEvent,\n ApexRowMovingEvent,\n ApexRowPinningEvent,\n ApexRowSelectedEvent,\n ApexRowSelectingEvent,\n ApexStateChangedEvent,\n ApexTreeRowExpandedEvent,\n ApexTreeRowExpandingEvent,\n ColumnDropPosition,\n} from './components/grid.js';\nexport { ApexGrid } from './components/grid.js';\nexport type { RowPinPosition } from './controllers/row-pin.js';\nexport type { RowDropPosition } from './controllers/row-reorder.js';\nexport {\n EN_LOCALE,\n esLocale,\n type GridLocaleKey,\n type GridLocaleText,\n interpolate,\n type LocaleParams,\n localize,\n} from './i18n/index.js';\nexport type {\n CSVExportOptions,\n ExportCellValue,\n ExportFormat,\n ExportOptions,\n ExportSource,\n} from './internal/export.js';\nexport type {\n ColumnSchema,\n GridCapabilities,\n GridSchema,\n} from './internal/state-schema.js';\nexport type {\n ColumnLayoutState,\n FilterStateSnapshot,\n GetStateOptions,\n GridState,\n RowRef,\n SetStateOptions,\n SetStateResult,\n SortStateSnapshot,\n} from './internal/state-snapshot.js';\nexport type {\n ApexCellContext,\n ApexColumnGroupContext,\n ApexDetailContext,\n ApexEditorContext,\n ApexHeaderContext,\n BaseApexCellContext,\n BaseApexEditorContext,\n BaseColumnConfiguration,\n BaseColumnSortConfiguration,\n BasePropertyType,\n ColumnConfiguration,\n ColumnFilterConfiguration,\n ColumnGroupConfiguration,\n ColumnSortConfiguration,\n DataPipelineConfiguration,\n DataPipelineHook,\n DataPipelineParams,\n DataType,\n EditingHistoryConfiguration,\n EditMode,\n EditTrigger,\n GridEditingConfiguration,\n GridExpansionConfiguration,\n GridRowPinningConfiguration,\n GridRowReorderingConfiguration,\n GridSelectionConfiguration,\n GridSortConfiguration,\n GridTreeConfiguration,\n Keys,\n PaginationConfiguration,\n PaginationMode,\n PaginationState,\n PinPosition,\n PropertyType,\n SelectionMode,\n Validator,\n ValidatorContext,\n} from './internal/types.js';\nexport { custom, max, min, pattern, required } from './internal/validators.js';\nexport { BooleanOperands } from './operations/filter/operands/boolean.js';\nexport { NumberOperands } from './operations/filter/operands/number.js';\nexport { StringOperands } from './operations/filter/operands/string.js';\nexport type {\n BaseFilterExpression,\n FilterCriteria,\n FilterExpression,\n FilterOperation,\n FilterOperationLogic,\n OperandKeys,\n} from './operations/filter/types.js';\nexport type {\n BaseSortComparer,\n BaseSortExpression,\n SortComparer,\n SortExpression,\n SortingDirection,\n SortState,\n} from './operations/sort/types.js';\nexport type { ApexGridSetupOptions } from './setup.js';\nexport { setup } from './setup.js';\n"]}
|