@spteck/react-controls-v2 2.6.1 → 2.6.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/README.md +64 -30
- package/dist/LocalizationProvider-BUBYkX-c.cjs +2 -0
- package/dist/{LocalizationProvider-D13keh6K.js → LocalizationProvider-DZ7gAJ1G.js} +205 -23
- package/dist/abstractions/index.d.ts +1 -0
- package/dist/components/BackgroundVideo/BackgroundVideo.d.ts +25 -0
- package/dist/components/BackgroundVideo/IBackgroundVideoProps.d.ts +9 -0
- package/dist/components/BackgroundVideo/index.d.ts +3 -0
- package/dist/components/Dropzone/mime-types.d.ts +1 -1
- package/dist/components/Hero/Hero.d.ts +7 -0
- package/dist/components/Hero/HeroItem.d.ts +13 -0
- package/dist/components/Hero/HeroOverlay.d.ts +10 -0
- package/dist/components/Hero/IHeroProps.d.ts +106 -0
- package/dist/components/Hero/index.d.ts +3 -0
- package/dist/components/Hero/layouts/HeroCarousel.d.ts +4 -0
- package/dist/components/Hero/layouts/HeroFeatured.d.ts +4 -0
- package/dist/components/Hero/layouts/HeroFilmstrip.d.ts +4 -0
- package/dist/components/Hero/layouts/HeroFullscreen.d.ts +4 -0
- package/dist/components/Hero/layouts/HeroGrid.d.ts +4 -0
- package/dist/components/Hero/layouts/HeroMosaic.d.ts +4 -0
- package/dist/components/Hero/layouts/HeroSplit.d.ts +4 -0
- package/dist/components/Hero/useHeroLayout.d.ts +12 -0
- package/dist/components/Hero/useHeroStyles.d.ts +26 -0
- package/dist/components/index.d.ts +3 -1
- package/dist/components/stackv2/IStackV2Props.d.ts +9 -1
- package/dist/components/videoPlayer/VideoPlayer.d.ts +2 -2
- package/dist/hooks/index.d.ts +2 -0
- package/dist/hooks/useAIAssistant.d.ts +3 -24
- package/dist/hooks/useAIAssistantParser.d.ts +3 -29
- package/dist/hooks/useAppToast.d.ts +4 -24
- package/dist/hooks/useBrandCenterFonts.d.ts +2 -30
- package/dist/hooks/useExportData.d.ts +25 -0
- package/dist/hooks/useFluentEmoji.d.ts +3 -7
- package/dist/hooks/useGraphAPI.d.ts +3 -19
- package/dist/hooks/useHeroRotation.d.ts +18 -0
- package/dist/hooks/useIndexedDB.d.ts +4 -11
- package/dist/hooks/useLocalizationStrings.d.ts +2 -12
- package/dist/hooks/useLogging.d.ts +3 -10
- package/dist/hooks/usePolling.d.ts +3 -5
- package/dist/hooks/useTimeZoneHelper.d.ts +3 -12
- package/dist/index.cjs +63 -56
- package/dist/index.d.ts +2 -2
- package/dist/index.js +4773 -3994
- package/dist/models/IExportData.d.ts +75 -0
- package/dist/models/IUseAIAssistant.d.ts +48 -0
- package/dist/models/IUseAIAssistantParser.d.ts +28 -0
- package/dist/models/IUseAppToast.d.ts +81 -0
- package/dist/models/IUseBrandCenterFonts.d.ts +30 -0
- package/dist/models/IUseFluentEmoji.d.ts +25 -0
- package/dist/models/IUseGraphAPI.d.ts +39 -0
- package/dist/models/IUseHeroRotation.d.ts +11 -0
- package/dist/models/IUseIndexedDB.d.ts +31 -0
- package/dist/models/IUseLocalizationStrings.d.ts +17 -0
- package/dist/models/IUseLogging.d.ts +40 -0
- package/dist/models/IUsePolling.d.ts +9 -0
- package/dist/models/IUseTimeZoneHelper.d.ts +50 -0
- package/dist/models/index.d.ts +15 -0
- package/dist/providers.cjs +1 -2
- package/dist/providers.js +2 -189
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/useExportDataUtils.d.ts +23 -0
- package/package.json +5 -2
- package/dist/LocalizationProvider-DEmAXWvz.cjs +0 -2
- package/dist/components/Stack/IStackProps.d.ts +0 -12
- package/dist/components/Stack/Stack.d.ts +0 -4
- package/dist/components/Stack/StackItem.d.ts +0 -12
- package/dist/components/Stack/index.d.ts +0 -5
- package/dist/components/Stack/useStackStyles.d.ts +0 -6
package/dist/providers.js
CHANGED
|
@@ -1,189 +1,2 @@
|
|
|
1
|
-
import { O as e, t,
|
|
2
|
-
|
|
3
|
-
var r = class {
|
|
4
|
-
componentName;
|
|
5
|
-
constructor(e = "ReactControlsUniversal") {
|
|
6
|
-
this.componentName = e;
|
|
7
|
-
}
|
|
8
|
-
log(t, n, r) {
|
|
9
|
-
let i = `[${this.componentName}]`;
|
|
10
|
-
switch (n) {
|
|
11
|
-
case e.Verbose:
|
|
12
|
-
console.debug(i, t, r);
|
|
13
|
-
break;
|
|
14
|
-
case e.Info:
|
|
15
|
-
console.info(i, t, r);
|
|
16
|
-
break;
|
|
17
|
-
case e.Warning:
|
|
18
|
-
console.warn(i, t, r);
|
|
19
|
-
break;
|
|
20
|
-
case e.Error:
|
|
21
|
-
console.error(i, t, r);
|
|
22
|
-
break;
|
|
23
|
-
default: console.log(i, t, r);
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
error(e, t, n) {
|
|
27
|
-
console.error(`[${this.componentName}]`, e, t, n);
|
|
28
|
-
}
|
|
29
|
-
warn(e, t) {
|
|
30
|
-
console.warn(`[${this.componentName}]`, e, t);
|
|
31
|
-
}
|
|
32
|
-
info(e, t) {
|
|
33
|
-
console.info(`[${this.componentName}]`, e, t);
|
|
34
|
-
}
|
|
35
|
-
verbose(e, t) {
|
|
36
|
-
console.debug(`[${this.componentName}]`, e, t);
|
|
37
|
-
}
|
|
38
|
-
}, i = class {
|
|
39
|
-
baseUrl;
|
|
40
|
-
accessToken;
|
|
41
|
-
getAccessToken;
|
|
42
|
-
constructor(e) {
|
|
43
|
-
this.baseUrl = e.baseUrl || "https://graph.microsoft.com/v1.0", this.accessToken = e.accessToken, this.getAccessToken = e.getAccessToken;
|
|
44
|
-
}
|
|
45
|
-
async getHeaders() {
|
|
46
|
-
let e = this.accessToken;
|
|
47
|
-
if (this.getAccessToken) try {
|
|
48
|
-
e = await this.getAccessToken(["User.Read"]);
|
|
49
|
-
} catch (e) {
|
|
50
|
-
console.error("Failed to get access token:", e);
|
|
51
|
-
}
|
|
52
|
-
return {
|
|
53
|
-
Authorization: e ? `Bearer ${e}` : "",
|
|
54
|
-
"Content-Type": "application/json"
|
|
55
|
-
};
|
|
56
|
-
}
|
|
57
|
-
buildUrl(e) {
|
|
58
|
-
let t = e.startsWith("/") ? e.slice(1) : e;
|
|
59
|
-
return `${this.baseUrl}/${t}`;
|
|
60
|
-
}
|
|
61
|
-
async get(e) {
|
|
62
|
-
let t = await this.getHeaders(), n = await fetch(this.buildUrl(e), {
|
|
63
|
-
method: "GET",
|
|
64
|
-
headers: t
|
|
65
|
-
});
|
|
66
|
-
if (!n.ok) throw Error(`Graph API error: ${n.status} ${n.statusText}`);
|
|
67
|
-
return n.json();
|
|
68
|
-
}
|
|
69
|
-
async post(e, t) {
|
|
70
|
-
let n = await this.getHeaders(), r = await fetch(this.buildUrl(e), {
|
|
71
|
-
method: "POST",
|
|
72
|
-
headers: n,
|
|
73
|
-
body: JSON.stringify(t)
|
|
74
|
-
});
|
|
75
|
-
if (!r.ok) throw Error(`Graph API error: ${r.status} ${r.statusText}`);
|
|
76
|
-
return r.json();
|
|
77
|
-
}
|
|
78
|
-
async patch(e, t) {
|
|
79
|
-
let n = await this.getHeaders(), r = await fetch(this.buildUrl(e), {
|
|
80
|
-
method: "PATCH",
|
|
81
|
-
headers: n,
|
|
82
|
-
body: JSON.stringify(t)
|
|
83
|
-
});
|
|
84
|
-
if (!r.ok) throw Error(`Graph API error: ${r.status} ${r.statusText}`);
|
|
85
|
-
return r.json();
|
|
86
|
-
}
|
|
87
|
-
async delete(e) {
|
|
88
|
-
let t = await this.getHeaders(), n = await fetch(this.buildUrl(e), {
|
|
89
|
-
method: "DELETE",
|
|
90
|
-
headers: t
|
|
91
|
-
});
|
|
92
|
-
if (!n.ok) throw Error(`Graph API error: ${n.status} ${n.statusText}`);
|
|
93
|
-
}
|
|
94
|
-
async getWithMetadata(e) {
|
|
95
|
-
let t = await this.getHeaders(), n = await fetch(this.buildUrl(e), {
|
|
96
|
-
method: "GET",
|
|
97
|
-
headers: t
|
|
98
|
-
});
|
|
99
|
-
if (!n.ok) throw Error(`Graph API error: ${n.status} ${n.statusText}`);
|
|
100
|
-
return n.json();
|
|
101
|
-
}
|
|
102
|
-
async getBlob(e) {
|
|
103
|
-
let t = this.accessToken;
|
|
104
|
-
if (this.getAccessToken) try {
|
|
105
|
-
t = await this.getAccessToken(["User.Read"]);
|
|
106
|
-
} catch (e) {
|
|
107
|
-
console.error("Failed to get access token:", e);
|
|
108
|
-
}
|
|
109
|
-
let n = { Authorization: t ? `Bearer ${t}` : "" }, r = await fetch(this.buildUrl(e), {
|
|
110
|
-
method: "GET",
|
|
111
|
-
headers: n
|
|
112
|
-
});
|
|
113
|
-
if (!r.ok) {
|
|
114
|
-
if (r.status === 404) return;
|
|
115
|
-
throw Error(`Graph API error: ${r.status} ${r.statusText}`);
|
|
116
|
-
}
|
|
117
|
-
return r.blob();
|
|
118
|
-
}
|
|
119
|
-
}, a = class {
|
|
120
|
-
prefix;
|
|
121
|
-
memoryFallback;
|
|
122
|
-
isLocalStorageAvailable;
|
|
123
|
-
constructor(e = "rcu_") {
|
|
124
|
-
this.prefix = e, this.memoryFallback = /* @__PURE__ */ new Map(), this.isLocalStorageAvailable = this.checkLocalStorageAvailability();
|
|
125
|
-
}
|
|
126
|
-
checkLocalStorageAvailability() {
|
|
127
|
-
try {
|
|
128
|
-
let e = "__localStorage_test__";
|
|
129
|
-
return localStorage.setItem(e, e), localStorage.removeItem(e), !0;
|
|
130
|
-
} catch {
|
|
131
|
-
return !1;
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
getKey(e) {
|
|
135
|
-
return `${this.prefix}${e}`;
|
|
136
|
-
}
|
|
137
|
-
async get(e) {
|
|
138
|
-
let t = this.getKey(e);
|
|
139
|
-
try {
|
|
140
|
-
let n = null;
|
|
141
|
-
if (n = this.isLocalStorageAvailable ? localStorage.getItem(t) : this.memoryFallback.get(t), !n) return;
|
|
142
|
-
let r = JSON.parse(n);
|
|
143
|
-
if (r.expiration && Date.now() > r.expiration) {
|
|
144
|
-
await this.remove(e);
|
|
145
|
-
return;
|
|
146
|
-
}
|
|
147
|
-
return r.value;
|
|
148
|
-
} catch (e) {
|
|
149
|
-
console.error("Error reading from storage:", e);
|
|
150
|
-
return;
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
async set(e, t, n) {
|
|
154
|
-
let r = this.getKey(e);
|
|
155
|
-
try {
|
|
156
|
-
let e = {
|
|
157
|
-
value: t,
|
|
158
|
-
expiration: n ? Date.now() + n * 60 * 1e3 : void 0
|
|
159
|
-
}, i = JSON.stringify(e);
|
|
160
|
-
this.isLocalStorageAvailable ? localStorage.setItem(r, i) : this.memoryFallback.set(r, i);
|
|
161
|
-
} catch (e) {
|
|
162
|
-
console.error("Error writing to storage:", e);
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
async remove(e) {
|
|
166
|
-
let t = this.getKey(e);
|
|
167
|
-
try {
|
|
168
|
-
this.isLocalStorageAvailable ? localStorage.removeItem(t) : this.memoryFallback.delete(t);
|
|
169
|
-
} catch (e) {
|
|
170
|
-
console.error("Error removing from storage:", e);
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
async clear() {
|
|
174
|
-
try {
|
|
175
|
-
this.isLocalStorageAvailable ? Object.keys(localStorage).forEach((e) => {
|
|
176
|
-
e.startsWith(this.prefix) && localStorage.removeItem(e);
|
|
177
|
-
}) : this.memoryFallback.clear();
|
|
178
|
-
} catch (e) {
|
|
179
|
-
console.error("Error clearing storage:", e);
|
|
180
|
-
}
|
|
181
|
-
}
|
|
182
|
-
async has(e) {
|
|
183
|
-
return await this.get(e) !== void 0;
|
|
184
|
-
}
|
|
185
|
-
};
|
|
186
|
-
//#endregion
|
|
187
|
-
export { r as ConsoleLoggingProvider, i as DefaultGraphClient, n as DefaultLocalizationProvider, a as LocalStorageProvider, t as LocalizationProvider };
|
|
188
|
-
|
|
189
|
-
//# sourceMappingURL=providers.js.map
|
|
1
|
+
import { O as e, T as t, k as n, t as r, w as i } from "./LocalizationProvider-DZ7gAJ1G.js";
|
|
2
|
+
export { n as ConsoleLoggingProvider, e as DefaultGraphClient, t as DefaultLocalizationProvider, i as LocalStorageProvider, r as LocalizationProvider };
|
package/dist/utils/index.d.ts
CHANGED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { IExcelHeaderStyle } from '../models/IExportData';
|
|
2
|
+
import * as XLSX from 'xlsx-js-style';
|
|
3
|
+
export type { IExcelHeaderStyle } from '../models/IExportData';
|
|
4
|
+
type CellStyle = NonNullable<XLSX.CellObject['s']>;
|
|
5
|
+
/**
|
|
6
|
+
* Builds a SheetJS cell style object for a header cell.
|
|
7
|
+
*/
|
|
8
|
+
export declare function buildHeaderCellStyle(style: IExcelHeaderStyle): CellStyle;
|
|
9
|
+
/**
|
|
10
|
+
* Applies header styles to the first row of a worksheet.
|
|
11
|
+
*/
|
|
12
|
+
export declare function applyHeaderStyles(ws: XLSX.WorkSheet, headers: string[], style: IExcelHeaderStyle): void;
|
|
13
|
+
/**
|
|
14
|
+
* Sets the `!cols` metadata on a worksheet so each column is auto-fitted
|
|
15
|
+
* to the widest value (header or data).
|
|
16
|
+
*/
|
|
17
|
+
export declare function autoFitColumns(ws: XLSX.WorkSheet, headers: string[], data: Record<string, unknown>[]): void;
|
|
18
|
+
/**
|
|
19
|
+
* Escapes a single CSV cell value, quoting it when it contains the delimiter,
|
|
20
|
+
* double-quotes, or newlines.
|
|
21
|
+
*/
|
|
22
|
+
export declare function escapeCsvCell(value: unknown, delimiter: string): string;
|
|
23
|
+
//# sourceMappingURL=useExportDataUtils.d.ts.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@spteck/react-controls-v2",
|
|
3
|
-
"version": "2.6.
|
|
3
|
+
"version": "2.6.3",
|
|
4
4
|
"description": "Framework-agnostic React controls for Vite, Next.js, and SPFx - based on Fluent UI 9",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "João Mendes",
|
|
@@ -85,6 +85,7 @@
|
|
|
85
85
|
"date-fns-tz": "3.2.0",
|
|
86
86
|
"dompurify": "^3.3.3",
|
|
87
87
|
"embla-carousel-react": "^8.5.1",
|
|
88
|
+
"file-saver": "^2.0.5",
|
|
88
89
|
"jotai": "^2.10.2",
|
|
89
90
|
"lodash": "^4.17.21",
|
|
90
91
|
"lodash-es": "^4.17.21",
|
|
@@ -98,11 +99,13 @@
|
|
|
98
99
|
"react-overflow-list": "^0.5.0",
|
|
99
100
|
"react-player": "^2.16.0",
|
|
100
101
|
"textarea-caret": "^3.1.0",
|
|
101
|
-
"uuid": "^11.1.0"
|
|
102
|
+
"uuid": "^11.1.0",
|
|
103
|
+
"xlsx-js-style": "^1.2.0"
|
|
102
104
|
},
|
|
103
105
|
"devDependencies": {
|
|
104
106
|
"@rolldown/plugin-babel": "^0.2.0",
|
|
105
107
|
"@types/dompurify": "^3.0.5",
|
|
108
|
+
"@types/file-saver": "^2.0.7",
|
|
106
109
|
"@types/lodash": "^4.17.13",
|
|
107
110
|
"@types/markdown-it": "^14.1.2",
|
|
108
111
|
"@types/node": "^20",
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,a)=>(a=n==null?{}:e(i(n)),o(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));let c=require(`react`);c=s(c);let l=require(`react/jsx-runtime`);var u=function(e){return e[e.Verbose=0]=`Verbose`,e[e.Info=1]=`Info`,e[e.Warning=2]=`Warning`,e[e.Error=3]=`Error`,e}({}),d=function(e){return e.Error=`Error`,e.Warning=`Warning`,e.Info=`Info`,e}({}),f={common:{loading:`Loading...`,error:`Error`,noData:`No data`,close:`Close`,save:`Save`,cancel:`Cancel`,ok:`OK`,searchPlaceholder:`Search...`},kpi:{noDescription:`No description available`,defaultTitle:`KPI`,lowerIsBetter:`Lower is better`,higherIsBetter:`Higher is better`,withinGoalThreshold:`Within goal threshold`,exceedsGoalThreshold:`Exceeds goal threshold`,goal:`Goal`,progressGoal:`Progress to goal`,maxAllowedThreshold:`Max allowed threshold`,totalItemsInScope:`Total items in scope`,totalItems:`Total`,currentValueAsPercent:`Current value as percentage of total`,percentOfTotal:`%`,onTrack:`On Track`,exceedGoal:`Exceeds Goal`},noKpis:{title:`No KPIs Configured`,subtitle:`Start tracking your team's performance by configuring {highlight} in the App Configuration list.`,highlightText:`KPI parameters`,configureButton:`Configure KPIs`},calendar:{calendarControl:{daysOfWeek:[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`]},selectCalendarView:{month:`Month`,week:`Week`,day:`Day`},eventPopoverCard:{timeSeparator:` - `,hourSuffix:`h`},eventDetailsPopover:{start:`Start`,end:`End`,location:`Location`,attendees:`Attendees`,details:`Details`},dayView:{allDay:`All Day`},toolbar:{today:`Today`,previous:`Previous`,next:`Next`},weekView:{allDay:`All Day`},calendarMonth:{months:[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],shortMonths:[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],days:[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`],shortDays:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],goToToday:`Go to today`},selectWeek:{selectWeekPlaceholder:`Select a Week`}},mensions:{placeholder:`Type a message...`,noResults:`No results found`,send:`Send`},shareDialog:{title:`Share`,copyLink:`Copy link`,linkCopied:`Link copied!`,share:`Share`,cancel:`Cancel`},userCard:{available:`Available`,availableIdle:`Available, idle`,away:`Away`,busy:`Busy`,busyIdle:`Busy, idle`,doNotDisturb:`Do not disturb`,beRightBack:`Be right back`,appearOffline:`Appear offline`,unknown:`Unknown`,outOfOffice:`Out of office`,offline:`Offline`,userAvatar:`User Avatar`,unknownUser:`Unknown User`},appDashboard:{noDashboardsAvailable:`No Dashboards Available`,clickToSetSpan:`Click to set span`,configure:`Configure`},aiAssistant:{processingError:`There was an error processing your request.`,noUsersFound:`No users found`,typeAMessage:`Type a message`},worldMap:{loadingMapStyle:`Loading map style…`,coordinates:`Coordinates:`,zoomIn:`Zoom in`,zoomOut:`Zoom out`,resetMap:`Reset map`,reset:`Reset`},aiSearchControl:{placeholder:`Ask AI to generate search query... (e.g., 'Find engineers in the Seattle office')`,notConfiguredError:`Azure OpenAI is not properly configured. Please check your configuration.`,generationError:`An error occurred during AI search query generation`},itemPicker:{placeholder:`Search…`,noResultsFound:`No results found`,searching:`Searching…`,loadingMore:`Loading more…`,selectedItems:`Selected items`,searchItems:`Search items`},listItemActivity:{you:`You`,accessed:`accessed this`,commented:`commented on this`,created:`created this`,deleted:`deleted this`,edited:`edited this`,mentioned:`mentioned you in this`,moved:`moved this`,renamed:`renamed this`,restored:`restored this`,shared:`shared this`,versioned:`versioned this`},inputField:{fieldRequired:`This field is required`,numberRequired:`A number is required`,invalidNumber:`Please enter a valid number`,valueMustBeAtLeast:`Value must be at least {0}`,valueMustBeAtMost:`Value must be at most {0}`},searchControl:{placeholder:`Search…`},mermaidDiagram:{loading:`Loading diagram…`,errorTitle:`Diagram Error`,errorMessage:`An error occurred while rendering the diagram.`,noSource:`No diagram source provided`},dropzone:{dropHere:`Drop files here or click to select`,dragActive:`Drop the files here`,fileRejected:`File type not accepted`,fileTooLarge:`File is too large`,tooManyFiles:`Too many files`,loading:`Loading…`},richTextEditor:{boldControlLabel:`Bold`,italicControlLabel:`Italic`,underlineControlLabel:`Underline`,strikeControlLabel:`Strikethrough`,clearFormattingControlLabel:`Clear formatting`,linkControlLabel:`Link`,unlinkControlLabel:`Unlink`,bulletListControlLabel:`Bullet list`,orderedListControlLabel:`Ordered list`,h1ControlLabel:`Heading 1`,h2ControlLabel:`Heading 2`,h3ControlLabel:`Heading 3`,h4ControlLabel:`Heading 4`,h5ControlLabel:`Heading 5`,h6ControlLabel:`Heading 6`,blockquoteControlLabel:`Blockquote`,alignLeftControlLabel:`Align left`,alignCenterControlLabel:`Align center`,alignRightControlLabel:`Align right`,alignJustifyControlLabel:`Align justify`,codeControlLabel:`Code`,codeBlockControlLabel:`Code block`,subscriptControlLabel:`Subscript`,superscriptControlLabel:`Superscript`,colorPickerControlLabel:`Text color`,unsetColorControlLabel:`Unset color`,highlightControlLabel:`Highlight`,hrControlLabel:`Horizontal rule`,undoControlLabel:`Undo`,redoControlLabel:`Redo`,sourceCodeControlLabel:`Source code`,linkEditorInputLabel:`Enter URL`,linkEditorInputPlaceholder:`https://example.com`,linkEditorExternalLink:`Open link in a new tab`,linkEditorInternalLink:`Open link in the same tab`,linkEditorSave:`Save`,colorPickerCancel:`Cancel`,colorPickerClear:`Clear color`,colorPickerColorPicker:`Color picker`,colorPickerPalette:`Color palette`,colorPickerSave:`Save`,tasksControlLabel:`Task list`,tasksSinkLabel:`Increase indent`,tasksLiftLabel:`Decrease indent`,fontFamilyControlLabel:`Font family`},compactCalendar:{noEvents:`No events`,allDay:`All day`,shortDays:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],today:`Today`,previous:`Previous`,next:`Next`},spotlight:{searchPlaceholder:`Search…`,nothingFound:`Nothing found`},colorPicker:{red:`Red`,green:`Green`,blue:`Blue`,alpha:`Alpha`,hue:`Hue`,saturation:`Saturation`,lightness:`Lightness`,hex:`Hex`,copy:`Copy`,saturationPanel:`Saturation and brightness`,hueSlider:`Hue`,alphaSlider:`Opacity`,eyeDropper:`Pick color from screen`,swatchColor:`Color swatch`,themeBrand:`Brand`,themeNeutral:`Neutral`,themeStatus:`Status`,themeColors:`Theme colors`}};function p(e,t){let n={...e};for(let r of Object.keys(t)){let i=t[r],a=e[r];typeof i==`object`&&i&&!Array.isArray(i)&&typeof a==`object`&&!Array.isArray(a)&&a!==null?n[r]=p(a,i):i!==void 0&&(n[r]=i)}return n}var m={ar:()=>Promise.resolve().then(()=>require(`./ar-DbkaJtO2.cjs`)).then(e=>e.ar),az:()=>Promise.resolve().then(()=>require(`./az-Cf7y5UC1.cjs`)).then(e=>e.az),bg:()=>Promise.resolve().then(()=>require(`./bg-nghgX11u.cjs`)).then(e=>e.bg),bs:()=>Promise.resolve().then(()=>require(`./bs-CMdfvb33.cjs`)).then(e=>e.bs),ca:()=>Promise.resolve().then(()=>require(`./ca-C8cBXf9y.cjs`)).then(e=>e.ca),cs:()=>Promise.resolve().then(()=>require(`./cs-B_90ZpDL.cjs`)).then(e=>e.cs),cy:()=>Promise.resolve().then(()=>require(`./cy-YdAkRgN7.cjs`)).then(e=>e.cy),da:()=>Promise.resolve().then(()=>require(`./da-3S6dCKx6.cjs`)).then(e=>e.da),de:()=>Promise.resolve().then(()=>require(`./de-cBD6cQjC.cjs`)).then(e=>e.de),el:()=>Promise.resolve().then(()=>require(`./el-C861pBjb.cjs`)).then(e=>e.el),es:()=>Promise.resolve().then(()=>require(`./es-7wJEQTAK.cjs`)).then(e=>e.es),et:()=>Promise.resolve().then(()=>require(`./et-BDQwGJeu.cjs`)).then(e=>e.et),eu:()=>Promise.resolve().then(()=>require(`./eu-Bis1mMYp.cjs`)).then(e=>e.eu),fi:()=>Promise.resolve().then(()=>require(`./fi-Bish9bFy.cjs`)).then(e=>e.fi),fr:()=>Promise.resolve().then(()=>require(`./fr-mNj_7F7p.cjs`)).then(e=>e.fr),ga:()=>Promise.resolve().then(()=>require(`./ga-DHGpUClX.cjs`)).then(e=>e.ga),gl:()=>Promise.resolve().then(()=>require(`./gl-BaGwE_dH.cjs`)).then(e=>e.gl),he:()=>Promise.resolve().then(()=>require(`./he-CyBuj0mX.cjs`)).then(e=>e.he),hi:()=>Promise.resolve().then(()=>require(`./hi-C9Y--qfd.cjs`)).then(e=>e.hi),hr:()=>Promise.resolve().then(()=>require(`./hr-_DB2jbdD.cjs`)).then(e=>e.hr),hu:()=>Promise.resolve().then(()=>require(`./hu-B6P_13vr.cjs`)).then(e=>e.hu),id:()=>Promise.resolve().then(()=>require(`./id-CD6_OeAS.cjs`)).then(e=>e.id),it:()=>Promise.resolve().then(()=>require(`./it-BqWJuJRG.cjs`)).then(e=>e.it),ja:()=>Promise.resolve().then(()=>require(`./ja-_IB67CHC.cjs`)).then(e=>e.ja),kk:()=>Promise.resolve().then(()=>require(`./kk-1zP-M5hA.cjs`)).then(e=>e.kk),ko:()=>Promise.resolve().then(()=>require(`./ko-Bh_npcwe.cjs`)).then(e=>e.ko),lt:()=>Promise.resolve().then(()=>require(`./lt-Bcs_RvUC.cjs`)).then(e=>e.lt),lv:()=>Promise.resolve().then(()=>require(`./lv-DXbttzfD.cjs`)).then(e=>e.lv),mk:()=>Promise.resolve().then(()=>require(`./mk-CwexdV8N.cjs`)).then(e=>e.mk),ms:()=>Promise.resolve().then(()=>require(`./ms-DbohV4fa.cjs`)).then(e=>e.ms),nb:()=>Promise.resolve().then(()=>require(`./nb-XSnogBcy.cjs`)).then(e=>e.nb),nl:()=>Promise.resolve().then(()=>require(`./nl-C3fB4nMe.cjs`)).then(e=>e.nl),pl:()=>Promise.resolve().then(()=>require(`./pl-BJHabrpe.cjs`)).then(e=>e.pl),pt:()=>Promise.resolve().then(()=>require(`./pt-BqRRasV7.cjs`)).then(e=>e.pt),ro:()=>Promise.resolve().then(()=>require(`./ro-BCq9yIk8.cjs`)).then(e=>e.ro),ru:()=>Promise.resolve().then(()=>require(`./ru-B-TiRA2D.cjs`)).then(e=>e.ru),sk:()=>Promise.resolve().then(()=>require(`./sk-Btf7EoeH.cjs`)).then(e=>e.sk),sl:()=>Promise.resolve().then(()=>require(`./sl-Cs0S-Rru.cjs`)).then(e=>e.sl),sr:()=>Promise.resolve().then(()=>require(`./sr-Jxn52mZC.cjs`)).then(e=>e.sr),sv:()=>Promise.resolve().then(()=>require(`./sv-DqwVwzYH.cjs`)).then(e=>e.sv),th:()=>Promise.resolve().then(()=>require(`./th-CnqYsyp5.cjs`)).then(e=>e.th),tr:()=>Promise.resolve().then(()=>require(`./tr-BiSE3U_v.cjs`)).then(e=>e.tr),uk:()=>Promise.resolve().then(()=>require(`./uk-YsR97h-O.cjs`)).then(e=>e.uk),vi:()=>Promise.resolve().then(()=>require(`./vi-BqlBS0CX.cjs`)).then(e=>e.vi),zh:()=>Promise.resolve().then(()=>require(`./zh-C3amwoRq.cjs`)).then(e=>e.zh)},h=new Set([`ar`,`he`,`fa`,`ur`]),g=class e{_locale;_isRtl;_loadedBundles;_overrides;constructor(t){this._locale=t||e.detectLocale(),this._isRtl=e.isRtlLocale(this._locale),this._loadedBundles=new Map,this._loadedBundles.set(`en`,f),this._overrides={}}get locale(){return this._locale}get isRtl(){return this._isRtl}getStrings(){let e=this.getLanguageKey(this._locale),t=this._loadedBundles.get(e)||f;if(e===`en`&&Object.keys(this._overrides).length===0)return f;let n=f;return e!==`en`&&(n=p(f,t)),Object.keys(this._overrides).length>0&&(n=p(n,this._overrides)),n}getComponentStrings(e){return this.getStrings()[e]}async loadBundle(e){let t=this.getLanguageKey(e);if(t===`en`||this._loadedBundles.has(t))return;let n=m[t];if(n)try{let e=await n();this._loadedBundles.set(t,e)}catch(e){console.warn(`[DefaultLocalizationProvider] Failed to load bundle for locale "${t}". Falling back to English.`,e)}else console.warn(`[DefaultLocalizationProvider] No bundle available for locale "${t}". Using English.`)}setOverrides(e){this._overrides=e}async setLocale(t){this._locale=t,this._isRtl=e.isRtlLocale(t),await this.loadBundle(t)}static detectLocale(){return typeof navigator<`u`&&navigator.language?navigator.language:`en`}static detectLocaleFromCulture(t){return t?.currentUICultureName?t.currentUICultureName:t?.currentCultureName?t.currentCultureName:e.detectLocale()}static isRtlLocale(e){let t=e.split(`-`)[0].toLowerCase();return h.has(t)}getLanguageKey(e){return e.split(`-`)[0].toLowerCase()}},_=(0,c.createContext)(void 0),v=()=>(0,c.useContext)(_),y=()=>(0,c.useContext)(_)?.strings??f;function b(e){return y()[e]}var x=()=>b(`kpi`),S=()=>b(`noKpis`),C=()=>b(`calendar`),w=()=>b(`mensions`),T=()=>b(`shareDialog`),E=()=>b(`common`),D=()=>b(`userCard`),O=()=>b(`appDashboard`),k=()=>b(`aiAssistant`),A=()=>b(`worldMap`),j=()=>b(`aiSearchControl`),M=()=>b(`itemPicker`),N=()=>b(`listItemActivity`),P=()=>b(`inputField`),F=()=>b(`searchControl`),I=()=>b(`mermaidDiagram`),L=()=>b(`dropzone`),R=()=>b(`compactCalendar`),z=()=>b(`spotlight`),B=({provider:e,locale:t,overrides:n,children:r})=>{let[i]=(0,c.useState)(()=>e||new g(t)),[a,o]=(0,c.useState)(()=>(n&&i.setOverrides(n),i.getStrings())),[s,u]=(0,c.useState)(i.locale),[d,f]=(0,c.useState)(i.isRtl);(0,c.useEffect)(()=>{let e=!1;return(async()=>{await i.loadBundle(i.locale),e||o(i.getStrings())})(),()=>{e=!0}},[]),(0,c.useEffect)(()=>{n&&(i.setOverrides(n),o(i.getStrings()))},[n]);let p={provider:i,strings:a,locale:s,isRtl:d,setLocale:(0,c.useCallback)(async e=>{await i.setLocale(e),u(i.locale),f(i.isRtl),o(i.getStrings())},[i])};return(0,l.jsx)(_.Provider,{value:p,children:r})};Object.defineProperty(exports,`C`,{enumerable:!0,get:function(){return A}}),Object.defineProperty(exports,`D`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`E`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`O`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,`S`,{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,`T`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`_`,{enumerable:!0,get:function(){return S}}),Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return C}}),Object.defineProperty(exports,`b`,{enumerable:!0,get:function(){return z}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,`d`,{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,`f`,{enumerable:!0,get:function(){return x}}),Object.defineProperty(exports,`g`,{enumerable:!0,get:function(){return I}}),Object.defineProperty(exports,`h`,{enumerable:!0,get:function(){return w}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return O}}),Object.defineProperty(exports,`k`,{enumerable:!0,get:function(){return s}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return L}}),Object.defineProperty(exports,`m`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,`p`,{enumerable:!0,get:function(){return N}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return R}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return B}}),Object.defineProperty(exports,`u`,{enumerable:!0,get:function(){return P}}),Object.defineProperty(exports,`v`,{enumerable:!0,get:function(){return F}}),Object.defineProperty(exports,`w`,{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,`x`,{enumerable:!0,get:function(){return y}}),Object.defineProperty(exports,`y`,{enumerable:!0,get:function(){return T}});
|
|
2
|
-
//# sourceMappingURL=LocalizationProvider-DEmAXWvz.cjs.map
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { IBaseProps } from '../baseComponentProps/IBaseProps';
|
|
2
|
-
export type Alignment = "start" | "end" | "center" | "space-between" | "space-around" | "space-evenly" | "baseline" | "stretch";
|
|
3
|
-
export interface IStackProps extends IBaseProps {
|
|
4
|
-
horizontal?: boolean;
|
|
5
|
-
horizontalAlign?: Alignment;
|
|
6
|
-
verticalAlign?: Alignment;
|
|
7
|
-
verticalFill?: boolean;
|
|
8
|
-
wrap?: boolean;
|
|
9
|
-
columnGap?: number;
|
|
10
|
-
RowGap?: number;
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=IStackProps.d.ts.map
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { IBaseProps } from '../baseComponentProps/IBaseProps';
|
|
2
|
-
import * as React from 'react';
|
|
3
|
-
export interface IStackItemProps extends IBaseProps {
|
|
4
|
-
grow?: boolean | number;
|
|
5
|
-
disableShrink?: boolean;
|
|
6
|
-
shrink?: boolean | number | "inherit" | "initial" | "unset";
|
|
7
|
-
alignSelf?: "auto" | "flex-start" | "flex-end" | "center" | "baseline" | "stretch";
|
|
8
|
-
order?: number;
|
|
9
|
-
verticalFill?: boolean;
|
|
10
|
-
}
|
|
11
|
-
export declare const StackItem: (props: React.PropsWithChildren<IStackItemProps>) => import("react/jsx-runtime").JSX.Element;
|
|
12
|
-
//# sourceMappingURL=StackItem.d.ts.map
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { IStackProps } from './IStackProps';
|
|
2
|
-
import * as React from 'react';
|
|
3
|
-
export declare const useStackStyles: (props: IStackProps) => {
|
|
4
|
-
stackStyles: (containerWidth: number, containerHeight: number) => React.CSSProperties;
|
|
5
|
-
};
|
|
6
|
-
//# sourceMappingURL=useStackStyles.d.ts.map
|