@nice2dev/ui 1.0.21 → 1.0.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/CHANGELOG.md +198 -0
  2. package/dist/NiceErrorBoundary-B0262Ffc.js +770 -0
  3. package/dist/NiceErrorBoundary-BNhkOZtq.cjs +1 -0
  4. package/dist/NiceErrorBoundary-BXOLv-zG.cjs +1 -0
  5. package/dist/NiceErrorBoundary-DsreAsON.cjs +1 -0
  6. package/dist/NiceErrorBoundary-DyPWyuki.js +770 -0
  7. package/dist/NiceErrorBoundary-HMfrXIir.js +770 -0
  8. package/dist/NiceForm-B7D1MASh.js +5383 -0
  9. package/dist/NiceForm-BA9zZdm8.cjs +382 -0
  10. package/dist/NiceForm-Ba9rvBoT.cjs +382 -0
  11. package/dist/NiceForm-DAGMJpgx.js +5383 -0
  12. package/dist/NiceForm-D_ifvkIf.js +5386 -0
  13. package/dist/NiceForm-kd4essRP.cjs +382 -0
  14. package/dist/NiceForm.css +1 -1
  15. package/dist/NiceModal-4DLpDmAl.js +95 -0
  16. package/dist/NiceModal-BVT9cZbf.cjs +1 -0
  17. package/dist/NiceModal-CiOYOWJy.cjs +1 -0
  18. package/dist/NiceModal-D2xJTZZf.cjs +1 -0
  19. package/dist/NiceModal-DZbHCdKq.js +95 -0
  20. package/dist/NiceModal-MeC1cNtW.js +95 -0
  21. package/dist/NiceModuleLifecyclePanel-BZMUuDad.js +6807 -0
  22. package/dist/NiceModuleLifecyclePanel-BiX4KxaK.js +6781 -0
  23. package/dist/NiceModuleLifecyclePanel-C54g5eV_.cjs +1 -0
  24. package/dist/NiceModuleLifecyclePanel-CDo0iVfr.js +6781 -0
  25. package/dist/NiceModuleLifecyclePanel-DEJpoz5a.cjs +1 -0
  26. package/dist/NiceModuleLifecyclePanel-DrDTpH6K.cjs +1 -0
  27. package/dist/NiceModuleLifecyclePanel.css +1 -1
  28. package/dist/NicePagination-3be3_sVK.js +171 -0
  29. package/dist/NicePagination-BCRsVzkR.cjs +1 -0
  30. package/dist/NicePagination-C8gx6Bcl.js +171 -0
  31. package/dist/NicePagination-CNxEAb4C.cjs +1 -0
  32. package/dist/NicePagination-Cg_WEf-R.cjs +1 -0
  33. package/dist/NicePagination-DQXdzx7W.js +171 -0
  34. package/dist/NicePinCodeInput-3WugpLHi.js +12240 -0
  35. package/dist/NicePinCodeInput-BD2bMmVF.cjs +696 -0
  36. package/dist/NicePinCodeInput-CSfRHs4v.cjs +419 -0
  37. package/dist/NicePinCodeInput-CjwFvOEQ.js +13092 -0
  38. package/dist/NicePinCodeInput-DCLRLR8a.js +13097 -0
  39. package/dist/NicePinCodeInput-DoBQnMj9.cjs +694 -0
  40. package/dist/NiceSavedQueryPanel-DFDDuKWd.js +6597 -0
  41. package/dist/NiceSavedQueryPanel-DT9v7kUB.cjs +596 -0
  42. package/dist/NiceSavedQueryPanel-DTU4eiIH.cjs +596 -0
  43. package/dist/NiceSavedQueryPanel-RLj3BnDR.js +6866 -0
  44. package/dist/NiceSavedQueryPanel-qtWETcRP.cjs +596 -0
  45. package/dist/NiceSavedQueryPanel-z29D7N_A.js +6584 -0
  46. package/dist/NiceTabs-B4dM77y_.js +1657 -0
  47. package/dist/NiceTabs-BTVTtRZR.cjs +1 -0
  48. package/dist/NiceTabs-BXGmot7J.cjs +1 -0
  49. package/dist/NiceTabs-CFA8DGYR.cjs +1 -0
  50. package/dist/NiceTabs-Cx9DN6QD.js +1657 -0
  51. package/dist/NiceTabs-DJdhKste.js +1657 -0
  52. package/dist/NiceWindow-5VCSBJrc.js +1592 -0
  53. package/dist/NiceWindow-BEFAUTLp.cjs +1 -0
  54. package/dist/NiceWindow-Cs6-Dbci.js +1592 -0
  55. package/dist/NiceWindow-DYw4NCeb.js +1592 -0
  56. package/dist/NiceWindow-O_g8StvA.cjs +1 -0
  57. package/dist/NiceWindow-a4wB_m30.cjs +1 -0
  58. package/dist/NiceWindow.css +1 -0
  59. package/dist/charts-BDr6B81L.js +4657 -0
  60. package/dist/charts-Ci_KrAoU.cjs +761 -0
  61. package/dist/charts-ClxW-i5q.js +4657 -0
  62. package/dist/charts-De7FYS1U.cjs +761 -0
  63. package/dist/charts-DjFvhCdD.js +4657 -0
  64. package/dist/charts-Dr_FIPZT.cjs +761 -0
  65. package/dist/charts.cjs +1 -1
  66. package/dist/charts.mjs +1 -1
  67. package/dist/core-BIz6zQ5u.cjs +122 -0
  68. package/dist/core-BYxnKGOi.js +23141 -0
  69. package/dist/core-CT5vpy5U.js +25248 -0
  70. package/dist/core-CZE5v34h.cjs +122 -0
  71. package/dist/core-Cjw8oBvC.cjs +96 -0
  72. package/dist/core-xcuNJ-DB.js +24948 -0
  73. package/dist/data-branching-B7dCyaWr.cjs +1 -0
  74. package/dist/data-branching-BPAeL45o.js +6133 -0
  75. package/dist/data-branching-Byz79mmA.cjs +1 -0
  76. package/dist/data-branching-DjuerHfS.js +6133 -0
  77. package/dist/data-branching.cjs +1 -1
  78. package/dist/data-branching.d.ts +3 -0
  79. package/dist/data-branching.mjs +1 -1
  80. package/dist/data.cjs +1 -1
  81. package/dist/data.d.ts +45 -7
  82. package/dist/data.mjs +1 -1
  83. package/dist/devops-C3Pmbnxc.js +7684 -0
  84. package/dist/devops-CrXz348W.cjs +17 -0
  85. package/dist/devops-DYFov8j3.js +7684 -0
  86. package/dist/devops-g4qcLXah.cjs +17 -0
  87. package/dist/devops.cjs +1 -1
  88. package/dist/devops.d.ts +5 -0
  89. package/dist/devops.mjs +1 -1
  90. package/dist/editors.cjs +1 -1
  91. package/dist/editors.d.ts +175 -1
  92. package/dist/editors.mjs +44 -41
  93. package/dist/feedback.cjs +1 -1
  94. package/dist/feedback.d.ts +1 -2
  95. package/dist/feedback.mjs +2 -2
  96. package/dist/index-9Gi1mNY7.js +67912 -0
  97. package/dist/index-AEO3cK4T.cjs +5194 -0
  98. package/dist/index-BMQ-F0zE.js +65054 -0
  99. package/dist/index-BNb9q4Ll.cjs +5490 -0
  100. package/dist/index-CjdfogVa.js +66711 -0
  101. package/dist/index-Di3Cgr1P.cjs +5518 -0
  102. package/dist/index.cjs +1 -1
  103. package/dist/index.css +1 -1
  104. package/dist/index.d.ts +752 -62
  105. package/dist/index.mjs +982 -963
  106. package/dist/lazy.cjs +1 -1
  107. package/dist/lazy.d.ts +11 -0
  108. package/dist/lazy.mjs +24 -24
  109. package/dist/navigation.cjs +1 -1
  110. package/dist/navigation.d.ts +30 -4
  111. package/dist/navigation.mjs +34 -34
  112. package/dist/no-code-CHvv1KjZ.cjs +332 -0
  113. package/dist/no-code-CyvddsYt.js +7133 -0
  114. package/dist/no-code-Dl3ima61.cjs +332 -0
  115. package/dist/no-code-ktRzFaET.js +7133 -0
  116. package/dist/no-code.cjs +1 -1
  117. package/dist/no-code.d.ts +11 -0
  118. package/dist/no-code.mjs +1 -1
  119. package/dist/overlays.cjs +1 -1
  120. package/dist/overlays.d.ts +38 -0
  121. package/dist/overlays.mjs +52 -52
  122. package/dist/style.css +7 -4
  123. package/package.json +1 -1
package/dist/index.d.ts CHANGED
@@ -75,7 +75,9 @@ import { Dispatch } from 'react';
75
75
  import { DisplayPreferences } from '@nice2dev/ui-core';
76
76
  import { endMark } from '@nice2dev/ui-core';
77
77
  import { FillVariant } from '@nice2dev/ui-core';
78
+ import { filterGroupToWhere } from '@nice2dev/ui-core';
78
79
  import { filterNiceThemePacksByTag } from '@nice2dev/ui-core';
80
+ import { FilterToSqlOptions } from '@nice2dev/ui-core';
79
81
  import { forceGC } from '@nice2dev/ui-core';
80
82
  import { formatICU } from '@nice2dev/ui-core';
81
83
  import { formatShortcut } from '@nice2dev/ui-core';
@@ -130,7 +132,7 @@ import { ICUValues } from '@nice2dev/ui-core';
130
132
  import { IndexedDBAdapter } from '@nice2dev/ui-core';
131
133
  import { InputStyleVariant } from '@nice2dev/ui-core';
132
134
  import { ITracelessPolicy } from '@nice2dev/ui-core';
133
- import { JSX as JSX_2 } from 'react/jsx-runtime';
135
+ import { JSX as JSX_2 } from 'react';
134
136
  import { KeyboardShortcut } from '@nice2dev/ui-core';
135
137
  import { LayoutPreferences } from '@nice2dev/ui-core';
136
138
  import { LeakDetectorConfig } from '@nice2dev/ui-core';
@@ -178,6 +180,7 @@ import { NiceBreakpoints } from '@nice2dev/ui-core';
178
180
  import { NiceCacheConfig } from '@nice2dev/ui-core';
179
181
  import { NiceChangeMeta } from '@nice2dev/ui-core';
180
182
  import { NiceChangeReason } from '@nice2dev/ui-core';
183
+ import { NiceComponentTutorial } from '@nice2dev/ui-core';
181
184
  import { NiceComponentType } from '@nice2dev/ui-core';
182
185
  import { NiceCrossTabSyncConfig } from '@nice2dev/ui-core';
183
186
  import { NiceCursorLoadOptions } from '@nice2dev/ui-core';
@@ -258,6 +261,7 @@ import { niceReduxActions } from '@nice2dev/ui-core';
258
261
  import { NiceReduxMiddlewareConfig } from '@nice2dev/ui-core';
259
262
  import { niceReduxReducer } from '@nice2dev/ui-core';
260
263
  import { NiceRequestDeduplicator } from '@nice2dev/ui-core';
264
+ import { NiceResolvedTutorialStep } from '@nice2dev/ui-core';
261
265
  import { NiceResponsiveValue } from '@nice2dev/ui-core';
262
266
  import { NiceRestConfig } from '@nice2dev/ui-core';
263
267
  import { NiceRTLConfig } from '@nice2dev/ui-core';
@@ -271,6 +275,7 @@ import { NiceSkipLink } from '@nice2dev/ui-core';
271
275
  import { NiceSkipLinkProps } from '@nice2dev/ui-core';
272
276
  import { NiceSortDirection } from '@nice2dev/ui-core';
273
277
  import { NiceSortExpression } from '@nice2dev/ui-core';
278
+ import { NiceSqlWhere } from '@nice2dev/ui-core';
274
279
  import { NiceSSEConfig } from '@nice2dev/ui-core';
275
280
  import { NiceSSEDataSource } from '@nice2dev/ui-core';
276
281
  import { NiceSSEMessage } from '@nice2dev/ui-core';
@@ -317,6 +322,11 @@ import { NiceTone } from '@nice2dev/ui-core';
317
322
  import { NiceTouchTarget } from '@nice2dev/ui-core';
318
323
  import { NiceTransitionState } from '@nice2dev/ui-core';
319
324
  import { NiceTranslateFn } from '@nice2dev/ui-core';
325
+ import { NiceTutorialButton } from '@nice2dev/ui-core';
326
+ import { NiceTutorialButtonProps } from '@nice2dev/ui-core';
327
+ import { NiceTutorialsContextValue } from '@nice2dev/ui-core';
328
+ import { NiceTutorialsProvider } from '@nice2dev/ui-core';
329
+ import { NiceTutorialStepDef } from '@nice2dev/ui-core';
320
330
  import { NiceURLState } from '@nice2dev/ui-core';
321
331
  import { NiceURLStateConfig } from '@nice2dev/ui-core';
322
332
  import { NiceUserMenuResponse } from '@nice2dev/ui-core';
@@ -358,7 +368,9 @@ import { removeTheme } from '@nice2dev/ui-core';
358
368
  import { RenderStats } from '@nice2dev/ui-core';
359
369
  import { RenderTiming } from '@nice2dev/ui-core';
360
370
  import { resolveDisplayStyleConfig } from '@nice2dev/ui-core';
371
+ import { resolveStepsI18n } from '@nice2dev/ui-core';
361
372
  import { resolveTracelessPolicy } from '@nice2dev/ui-core';
373
+ import { resolveTutorial } from '@nice2dev/ui-core';
362
374
  import { RestAPISyncAdapter } from '@nice2dev/ui-core';
363
375
  import { SafeAreaInsets } from '@nice2dev/ui-core';
364
376
  import { saveBaseline } from '@nice2dev/ui-core';
@@ -371,6 +383,7 @@ import { SHADOW_VALUES } from '@nice2dev/ui-core';
371
383
  import { ShadowVariant } from '@nice2dev/ui-core';
372
384
  import { simulateKeyboard } from '@nice2dev/ui-core';
373
385
  import { simulateType } from '@nice2dev/ui-core';
386
+ import { sortModelToOrderBy } from '@nice2dev/ui-core';
374
387
  import { startMark } from '@nice2dev/ui-core';
375
388
  import { StorageAdapter } from '@nice2dev/ui-core';
376
389
  import { StorageAuditResult } from '@nice2dev/ui-core';
@@ -559,6 +572,8 @@ import { useNiceTransition } from '@nice2dev/ui-core';
559
572
  import { UseNiceTransitionOptions } from '@nice2dev/ui-core';
560
573
  import { UseNiceTransitionResult } from '@nice2dev/ui-core';
561
574
  import { useNiceTranslation } from '@nice2dev/ui-core';
575
+ import { useNiceTutorials } from '@nice2dev/ui-core';
576
+ import { useNiceTutorialsEnabled } from '@nice2dev/ui-core';
562
577
  import { useOrientation } from '@nice2dev/ui-core';
563
578
  import { usePan } from '@nice2dev/ui-core';
564
579
  import { UsePanOptions } from '@nice2dev/ui-core';
@@ -719,6 +734,8 @@ export { aggregate }
719
734
 
720
735
  export { AggregateFunction }
721
736
 
737
+ declare type AggregateFunction_2 = 'COUNT' | 'SUM' | 'AVG' | 'MIN' | 'MAX' | 'COUNT_DISTINCT';
738
+
722
739
  export { AggregateSpec }
723
740
 
724
741
  export declare type AggregationFunction = 'sum' | 'min' | 'max' | 'count' | 'avg';
@@ -2472,6 +2489,8 @@ declare interface ComputedField {
2472
2489
  dependencies: string[];
2473
2490
  }
2474
2491
 
2492
+ declare type ConditionOperator = '=' | '!=' | '>' | '<' | '>=' | '<=' | 'LIKE' | 'NOT LIKE' | 'IN' | 'NOT IN' | 'IS NULL' | 'IS NOT NULL' | 'BETWEEN';
2493
+
2475
2494
  /**
2476
2495
  * Confidence band configuration.
2477
2496
  */
@@ -3116,7 +3135,7 @@ export declare function deserializeRbacPolicy(json: string): NiceRbacPolicy;
3116
3135
 
3117
3136
  export { deserializeTheme }
3118
3137
 
3119
- export declare function deserializeViewV2(json: string): NiceViewDefinitionV2;
3138
+ export declare function deserializeView(json: string): NiceViewDefinition;
3120
3139
 
3121
3140
  declare interface DesignState {
3122
3141
  components: ComponentInstance[];
@@ -3332,7 +3351,7 @@ export declare function diffObjects(oldObj: Record<string, unknown>, newObj: Rec
3332
3351
  declare type DiffViewMode = 'split' | 'unified';
3333
3352
 
3334
3353
  /** Compare two view definitions and produce a diff. */
3335
- export declare function diffViews(oldView: NiceViewDefinitionV2, newView: NiceViewDefinitionV2): NiceViewDiffResult;
3354
+ export declare function diffViews(oldView: NiceViewDefinition, newView: NiceViewDefinition): NiceViewDiffResult;
3336
3355
 
3337
3356
  export { DisplayPreferences }
3338
3357
 
@@ -3888,6 +3907,28 @@ export declare interface EntityMapping {
3888
3907
  onError?: string;
3889
3908
  }
3890
3909
 
3910
+ /**
3911
+ * Scaffold a {@link NiceViewDefinition} from an entity:
3912
+ * - `grid` → a single `dataGrid` cell over a `rows` rest data source (columns from fields);
3913
+ * - `form` / `detail` → field controls (mapped by dataType) laid out `perRow` per row,
3914
+ * two-way bound to a `record` data source (`detail` is read-only and omits the PK).
3915
+ * Universal — any entity with a `fields[]` array works (defaults to the OmniVerk shape).
3916
+ */
3917
+ export declare function entityToView(entity: NiceEntityLike, kind?: NiceEntityViewKind, options?: EntityToViewOptions): NiceViewDefinition;
3918
+
3919
+ export declare interface EntityToViewOptions {
3920
+ /** dataType → controlType overrides (merged over {@link NICE_DATATYPE_CONTROL_MAP}). */
3921
+ fieldControlMap?: Record<string, string>;
3922
+ /** Cells per row for form/detail. Default 2. */
3923
+ perRow?: number;
3924
+ /** Grid column count. Default 12. */
3925
+ columns?: number;
3926
+ /** Data source endpoint (rest). Default = entity name. */
3927
+ endpoint?: string;
3928
+ id?: string;
3929
+ name?: string;
3930
+ }
3931
+
3891
3932
  export declare type ERPAggregateFunction = 'sum' | 'avg' | 'count' | 'min' | 'max' | 'first' | 'last' | 'distinctCount' | 'runningSum';
3892
3933
 
3893
3934
  export declare interface ERPChartConfig {
@@ -4436,7 +4477,7 @@ export declare interface ExpressionSet {
4436
4477
  }
4437
4478
 
4438
4479
  /** Extract all control types used in a view. */
4439
- export declare function extractControlTypes(view: NiceViewDefinitionV2): string[];
4480
+ export declare function extractControlTypes(view: NiceViewDefinition): string[];
4440
4481
 
4441
4482
  /**
4442
4483
  * Extract all CSS variables from a doc
@@ -4683,8 +4724,12 @@ declare interface FileItemActions {
4683
4724
 
4684
4725
  export { FillVariant }
4685
4726
 
4727
+ export { filterGroupToWhere }
4728
+
4686
4729
  export { filterNiceThemePacksByTag }
4687
4730
 
4731
+ export { FilterToSqlOptions }
4732
+
4688
4733
  export declare type FilterType = 'brightness' | 'contrast' | 'saturation' | 'hue' | 'blur' | 'sharpen' | 'grayscale' | 'sepia' | 'invert' | 'vignette' | 'chromaKey' | 'colorCorrection';
4689
4734
 
4690
4735
  /**
@@ -4920,7 +4965,7 @@ export declare function generateAdapters(config: AdapterGeneratorConfig): Adapte
4920
4965
  export declare function generateAllForRbac(policy: NiceRbacPolicy): NiceGeneratedFile[];
4921
4966
 
4922
4967
  /** Generate all code files for a view definition. */
4923
- export declare function generateAllForView(view: NiceViewDefinitionV2): NiceGeneratedFile[];
4968
+ export declare function generateAllForView(view: NiceViewDefinition): NiceGeneratedFile[];
4924
4969
 
4925
4970
  export { generateBadgeStyles }
4926
4971
 
@@ -4929,7 +4974,7 @@ export { generateButtonStyles }
4929
4974
  export { generateCardStyles }
4930
4975
 
4931
4976
  /** Generate a Dart model class from a view definition's data bindings. */
4932
- export declare function generateDartModel(view: NiceViewDefinitionV2): NiceGeneratedFile;
4977
+ export declare function generateDartModel(view: NiceViewDefinition): NiceGeneratedFile;
4933
4978
 
4934
4979
  export declare interface GeneratedFile {
4935
4980
  path: string;
@@ -4976,13 +5021,13 @@ export declare function generateRbacTypescript(policy: NiceRbacPolicy): NiceGene
4976
5021
  export declare function generateScaffold(config: NiceScaffoldConfig): NiceScaffoldResult;
4977
5022
 
4978
5023
  /** Generate story files for multiple views. */
4979
- export declare function generateStoriesFromViews(views: NiceViewDefinitionV2[], options?: {
5024
+ export declare function generateStoriesFromViews(views: NiceViewDefinition[], options?: {
4980
5025
  basePath?: string;
4981
5026
  showSource?: boolean;
4982
5027
  }): NiceStoryFile[];
4983
5028
 
4984
5029
  /** Generate a Storybook story file from a view definition. */
4985
- export declare function generateStoryFromView(view: NiceViewDefinitionV2, options?: {
5030
+ export declare function generateStoryFromView(view: NiceViewDefinition, options?: {
4986
5031
  /** Storybook base path for the title. Default: "ERP Views". */
4987
5032
  basePath?: string;
4988
5033
  /** Whether to include a code panel. Default: true. */
@@ -5005,14 +5050,14 @@ export { generateTooltipStyles }
5005
5050
  export { generateTracelessComplianceReport }
5006
5051
 
5007
5052
  /** Generate a TypeScript interface from a view definition's data bindings. */
5008
- export declare function generateTypescriptModel(view: NiceViewDefinitionV2): NiceGeneratedFile;
5053
+ export declare function generateTypescriptModel(view: NiceViewDefinition): NiceGeneratedFile;
5009
5054
 
5010
5055
  export { generateVariantCSS }
5011
5056
 
5012
5057
  export declare function generateVariations(baseHsv: HSV, count: number): string[];
5013
5058
 
5014
5059
  /** Generate a Storybook index/catalog page listing all view stories. */
5015
- export declare function generateViewCatalog(views: NiceViewDefinitionV2[], options?: {
5060
+ export declare function generateViewCatalog(views: NiceViewDefinition[], options?: {
5016
5061
  basePath?: string;
5017
5062
  }): NiceStoryFile;
5018
5063
 
@@ -5666,6 +5711,8 @@ export declare type JobStatus = 'idle' | 'running' | 'completed' | 'failed' | 'c
5666
5711
 
5667
5712
  declare type JobStatus_2 = 'pending' | 'running' | 'success' | 'failure' | 'cancelled' | 'skipped' | 'waiting';
5668
5713
 
5714
+ declare type JoinType = 'INNER' | 'LEFT' | 'RIGHT' | 'FULL' | 'CROSS';
5715
+
5669
5716
  export { KeyboardShortcut }
5670
5717
 
5671
5718
  declare interface Keyframe_2 {
@@ -6728,6 +6775,9 @@ export { NICE_BUILTIN_ICONS }
6728
6775
  /** All built-in style preset keys (export for convenience when populating the `presets` prop). */
6729
6776
  export declare const NICE_COLOR_PRESET_KEYS: NiceColorPreset[];
6730
6777
 
6778
+ /** Default mapping: entity field `dataType` (lower-cased) → registry control type. */
6779
+ export declare const NICE_DATATYPE_CONTROL_MAP: Record<string, string>;
6780
+
6731
6781
  export { NICE_DISPLAY_STYLE_INFO }
6732
6782
 
6733
6783
  export { NICE_DISPLAY_STYLES }
@@ -6773,10 +6823,38 @@ export { NiceAccessControl }
6773
6823
 
6774
6824
  export { NiceAccessControlProps }
6775
6825
 
6826
+ export declare const NiceAccessManager: ForwardRefExoticComponent<NiceAccessManagerProps & RefAttributes<HTMLDivElement>>;
6827
+
6828
+ export declare interface NiceAccessManagerProps extends NiceBaseProps {
6829
+ /** The RBAC model (controlled). */
6830
+ value: NiceRbacModel;
6831
+ /** Change callback with the full updated model. */
6832
+ onChange: (model: NiceRbacModel) => void;
6833
+ /** Render read-only. */
6834
+ readOnly?: boolean;
6835
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
6836
+ tutorial?: NiceComponentTutorial;
6837
+ }
6838
+
6776
6839
  export { NiceAccessMode }
6777
6840
 
6778
6841
  export { NiceAccessPermissions }
6779
6842
 
6843
+ /** A node in the protected-resource tree (module → view/entity → …). */
6844
+ export declare interface NiceAccessResource {
6845
+ id: string;
6846
+ label: string;
6847
+ type?: 'module' | 'view' | 'entity' | 'field' | 'action' | 'group';
6848
+ children?: NiceAccessResource[];
6849
+ }
6850
+
6851
+ /** A role/subject that access is granted to. */
6852
+ export declare interface NiceAccessRole {
6853
+ id: string;
6854
+ label: string;
6855
+ description?: string;
6856
+ }
6857
+
6780
6858
  export declare const NiceAccordion: default_2.FC<NiceAccordionProps>;
6781
6859
 
6782
6860
  /** A panel definition for the {@link NiceAccordion}. */
@@ -6877,6 +6955,26 @@ export declare interface NiceAchievementBadgeProps {
6877
6955
  id?: string;
6878
6956
  }
6879
6957
 
6958
+ export declare const NiceActionBuilder: ForwardRefExoticComponent<NiceActionBuilderProps & RefAttributes<HTMLDivElement>>;
6959
+
6960
+ export declare interface NiceActionBuilderProps {
6961
+ /** Current actions (controlled). */
6962
+ value: NiceViewAction[];
6963
+ /** Change callback with the full updated array. */
6964
+ onChange: (actions: NiceViewAction[]) => void;
6965
+ /** Available custom handler names (for `type: 'custom'`). */
6966
+ handlers?: string[];
6967
+ /** Available data source keys (for `refresh`). */
6968
+ dataSources?: string[];
6969
+ /** Render read-only. */
6970
+ readOnly?: boolean;
6971
+ /** Add-button label. Default `'+ Add action'`. */
6972
+ addLabel?: string;
6973
+ className?: string;
6974
+ style?: React.CSSProperties;
6975
+ 'data-testid'?: string;
6976
+ }
6977
+
6880
6978
  /** Context provided to action handlers at execution time. */
6881
6979
  export declare interface NiceActionContext {
6882
6980
  /** Current data sources keyed by name */
@@ -7494,6 +7592,8 @@ export declare interface NiceAutomationRuleEditorProps extends NiceBaseProps {
7494
7592
  onChange: (rule: AutomationRuleDto) => void;
7495
7593
  availableDevices: SmartDeviceDto[];
7496
7594
  availableScenes?: SmartSceneDto[];
7595
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
7596
+ tutorial?: NiceComponentTutorial;
7497
7597
  }
7498
7598
 
7499
7599
  export declare const NiceAvatar: default_2.FC<NiceAvatarProps>;
@@ -7551,7 +7651,7 @@ export declare interface NiceBackTopProps extends NiceStandardProps {
7551
7651
  onScroll?: () => void;
7552
7652
  }
7553
7653
 
7554
- export declare function NiceBackupDiffViewer({ diffs, title, defaultMode, defaultActions, className, style, }: NiceBackupDiffViewerProps): JSX_2.Element;
7654
+ export declare function NiceBackupDiffViewer({ diffs, title, defaultMode, defaultActions, className, style, }: NiceBackupDiffViewerProps): default_2.JSX.Element;
7555
7655
 
7556
7656
  export declare interface NiceBackupDiffViewerProps {
7557
7657
  /** Array of individual entity diffs */
@@ -7566,7 +7666,7 @@ export declare interface NiceBackupDiffViewerProps {
7566
7666
  style?: default_2.CSSProperties;
7567
7667
  }
7568
7668
 
7569
- export declare function NiceBackupList({ entries, onRestore, onDownload, onDelete, onCompare, onEditTags, onRowClick, onCreateBackup, pageSize, loading, className, style, }: NiceBackupListProps): JSX_2.Element;
7669
+ export declare function NiceBackupList({ entries, onRestore, onDownload, onDelete, onCompare, onEditTags, onRowClick, onCreateBackup, pageSize, loading, className, style, }: NiceBackupListProps): default_2.JSX.Element;
7570
7670
 
7571
7671
  export declare interface NiceBackupListProps {
7572
7672
  /** List of backup entries to display */
@@ -7593,7 +7693,7 @@ export declare interface NiceBackupListProps {
7593
7693
  style?: default_2.CSSProperties;
7594
7694
  }
7595
7695
 
7596
- export declare function NiceBackupRestoreDialog({ open, entry, plan, loading, progress, error, onDryRun, onConfirm, onClose, }: NiceBackupRestoreDialogProps): JSX_2.Element | null;
7696
+ export declare function NiceBackupRestoreDialog({ open, entry, plan, loading, progress, error, onDryRun, onConfirm, onClose, }: NiceBackupRestoreDialogProps): default_2.JSX.Element | null;
7597
7697
 
7598
7698
  export declare interface NiceBackupRestoreDialogProps {
7599
7699
  /** Whether the dialog is visible */
@@ -7616,7 +7716,7 @@ export declare interface NiceBackupRestoreDialogProps {
7616
7716
  onClose?: () => void;
7617
7717
  }
7618
7718
 
7619
- export declare function NiceBackupScheduler({ value, onChange, onSave, loading, className, style, }: NiceBackupSchedulerProps): JSX_2.Element;
7719
+ export declare function NiceBackupScheduler({ value, onChange, onSave, loading, className, style, }: NiceBackupSchedulerProps): default_2.JSX.Element;
7620
7720
 
7621
7721
  export declare interface NiceBackupSchedulerProps {
7622
7722
  /** Current schedule configuration */
@@ -7631,7 +7731,7 @@ export declare interface NiceBackupSchedulerProps {
7631
7731
  style?: default_2.CSSProperties;
7632
7732
  }
7633
7733
 
7634
- export declare function NiceBackupStatusBadge({ status, createdAt, showAge, warningDays, criticalDays, tags, maxTags, size, animate, className, style, }: NiceBackupStatusBadgeProps): JSX_2.Element;
7734
+ export declare function NiceBackupStatusBadge({ status, createdAt, showAge, warningDays, criticalDays, tags, maxTags, size, animate, className, style, }: NiceBackupStatusBadgeProps): default_2.JSX.Element;
7635
7735
 
7636
7736
  export declare interface NiceBackupStatusBadgeProps {
7637
7737
  status: BackupStatus;
@@ -7655,7 +7755,7 @@ export declare interface NiceBackupStatusBadgeProps {
7655
7755
  style?: default_2.CSSProperties;
7656
7756
  }
7657
7757
 
7658
- export declare function NiceBackupTagEditor({ tags, onChange, suggestions, allowDeleteAutoTags, maxManualTags, className, style, }: NiceBackupTagEditorProps): JSX_2.Element;
7758
+ export declare function NiceBackupTagEditor({ tags, onChange, suggestions, allowDeleteAutoTags, maxManualTags, tutorial, className, style, }: NiceBackupTagEditorProps): default_2.JSX.Element;
7659
7759
 
7660
7760
  export declare interface NiceBackupTagEditorProps {
7661
7761
  /** Current tags */
@@ -7674,6 +7774,8 @@ export declare interface NiceBackupTagEditorProps {
7674
7774
  maxManualTags?: number;
7675
7775
  className?: string;
7676
7776
  style?: default_2.CSSProperties;
7777
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
7778
+ tutorial?: NiceComponentTutorial;
7677
7779
  }
7678
7780
 
7679
7781
  export declare const NiceBadge: default_2.FC<NiceBadgeProps>;
@@ -8172,7 +8274,7 @@ export declare interface NiceCardProps extends NiceBaseProps {
8172
8274
  onClick?: () => void;
8173
8275
  }
8174
8276
 
8175
- export declare function NiceCardView<T extends NiceCardViewItem>({ items, renderCard, columns, gap, searchable, searchField, searchPlaceholder, loading, emptyText, onCardClick, className, style, accessMode, id, }: NiceCardViewProps<T>): JSX_2.Element | null;
8277
+ export declare function NiceCardView<T extends NiceCardViewItem>({ items, renderCard, columns, gap, searchable, searchField, searchPlaceholder, loading, emptyText, onCardClick, className, style, accessMode, id, }: NiceCardViewProps<T>): default_2.JSX.Element | null;
8176
8278
 
8177
8279
  /** An item displayed by the {@link NiceCardView} component. */
8178
8280
  declare interface NiceCardViewItem {
@@ -8816,8 +8918,20 @@ export declare interface NiceCodeEditorProps {
8816
8918
  * LSP bridge configuration. If provided, connects Monaco to the LSP server for enhanced language features.
8817
8919
  */
8818
8920
  lsp?: NiceCodeEditorLspConfig;
8921
+ /**
8922
+ * Extra TypeScript/JavaScript declaration sources fed to Monaco for IntelliSense
8923
+ * (e.g. a generated `ctx.d.ts` describing a script context). Each entry is registered
8924
+ * via `monaco.languages.typescript.{typescript|javascript}Defaults.addExtraLib`.
8925
+ * Only takes effect for `javascript` / `typescript` languages. Re-applied when the array changes.
8926
+ */
8927
+ extraLibs?: Array<{
8928
+ content: string;
8929
+ filePath?: string;
8930
+ }>;
8819
8931
  /** Additional CSS class */
8820
8932
  className?: string;
8933
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
8934
+ tutorial?: NiceComponentTutorial;
8821
8935
  /** Test ID */
8822
8936
  'data-testid'?: string;
8823
8937
  }
@@ -9384,6 +9498,8 @@ export declare interface NiceComponentDesignerProps {
9384
9498
  theme?: 'light' | 'dark';
9385
9499
  /** Additional class name */
9386
9500
  className?: string;
9501
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
9502
+ tutorial?: NiceComponentTutorial;
9387
9503
  }
9388
9504
 
9389
9505
  export declare interface NiceComponentEntry {
@@ -9425,6 +9541,8 @@ export declare interface NiceComponentPlaygroundProps extends NiceBaseProps {
9425
9541
  defaultDisplayStyle?: NiceDisplayStyle;
9426
9542
  }
9427
9543
 
9544
+ export { NiceComponentTutorial }
9545
+
9428
9546
  export { NiceComponentType }
9429
9547
 
9430
9548
  /** Full type mapping registry. */
@@ -10074,6 +10192,8 @@ export declare interface NiceCropEditorProps {
10074
10192
  style?: default_2.CSSProperties;
10075
10193
  /** Test ID */
10076
10194
  'data-testid'?: string;
10195
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
10196
+ tutorial?: NiceComponentTutorial;
10077
10197
  }
10078
10198
 
10079
10199
  /** Cross-platform schema metadata attached to a view definition. */
@@ -10087,7 +10207,7 @@ export declare interface NiceCrossPlatformMeta {
10087
10207
  }
10088
10208
 
10089
10209
  /** Cross-platform view = standard view + cross-platform metadata. */
10090
- export declare interface NiceCrossPlatformView extends NiceViewDefinitionV2 {
10210
+ export declare interface NiceCrossPlatformView extends NiceViewDefinition {
10091
10211
  crossPlatform?: NiceCrossPlatformMeta;
10092
10212
  }
10093
10213
 
@@ -10288,7 +10408,7 @@ export declare interface NiceDataDiffViewerProps extends NiceBaseProps {
10288
10408
  onSelectRecord?: (table: string, recordId: string) => void;
10289
10409
  }
10290
10410
 
10291
- export declare function NiceDataGrid<T extends Record<string, any>>({ columns, data: dataProp, keyField, dataSource, sortable, sortField: controlledSortField, sortDirection: controlledSortDir, onSort, selectable, selectedKeys: controlledSelected, onSelectionChange, pagination, pageSize: initPageSize, page: controlledPage, onPageChange, totalRows, searchable, searchPlaceholder, virtualScroll, rowHeight, groupBy, groupRender, onCellEdit, editMode, formItems, formColumns, editFormTitle, formProps, onRowEdit, onRowAdd, onRowDelete: _onRowDelete, bulkActions, onBulkDelete, exportCsv, exportFilename, detailRow, expandedRowKeys: controlledExpandedRows, onExpandedRowChange, columnReorder: _columnReorder, onColumnReorder: _onColumnReorder, columnResize, rowDraggable, onRowReorder, striped, compact, loading: loadingProp, emptyText, toolbar, onRowClick, pinnedTopKeys, pinnedBottomKeys, colSpan: colSpanFn, showStatusBar, contextMenuItems, onContextMenuAction, printFriendly, keyboardNavigation, focusedCell: controlledFocusedCell, onFocusedCellChange, cellRangeSelection, selectedCellRange: controlledCellRange, onCellRangeChange, clipboard, clipboardFormat, onBeforeCopy, onCopy, onPaste, quickFilters, activeQuickFilters: controlledQuickFilters, onQuickFilterChange, columnGroups: _columnGroups, stateStorageKey, initialState, onStateChange, flashRowKeys, flashDuration, autoFitColumns: _autoFitColumns, showColumnStats: _showColumnStats, rowIndicator, frozenRows: _frozenRows, className, style, accessMode, id, displayStyle, }: NiceDataGridProps<T>): JSX_2.Element | null;
10411
+ export declare function NiceDataGrid<T extends Record<string, any>>({ columns, data: dataProp, keyField, dataSource, sortable, sortField: controlledSortField, sortDirection: controlledSortDir, onSort, showAdvancedFilter, advancedFilter, onAdvancedFilterChange, filterFields, filterPresets, onSaveFilterPreset, onDeleteFilterPreset, selectable, selectedKeys: controlledSelected, onSelectionChange, pagination, pageSize: initPageSize, page: controlledPage, onPageChange, totalRows, searchable, searchPlaceholder, virtualScroll, rowHeight, groupBy, groupRender, onCellEdit, editMode, formItems, formColumns, editFormTitle, formProps, onRowEdit, onRowAdd, onRowDelete: _onRowDelete, bulkActions, onBulkDelete, exportCsv, exportFilename, detailRow, expandedRowKeys: controlledExpandedRows, onExpandedRowChange, columnReorder: _columnReorder, onColumnReorder: _onColumnReorder, columnResize, rowDraggable, onRowReorder, striped, compact, loading: loadingProp, emptyText, toolbar, onRowClick, pinnedTopKeys, pinnedBottomKeys, colSpan: colSpanFn, showStatusBar, contextMenuItems, onContextMenuAction, printFriendly, keyboardNavigation, focusedCell: controlledFocusedCell, onFocusedCellChange, cellRangeSelection, selectedCellRange: controlledCellRange, onCellRangeChange, clipboard, clipboardFormat, onBeforeCopy, onCopy, onPaste, quickFilters, activeQuickFilters: controlledQuickFilters, onQuickFilterChange, columnGroups: _columnGroups, stateStorageKey, initialState, onStateChange, flashRowKeys, flashDuration, autoFitColumns: _autoFitColumns, showColumnStats: _showColumnStats, rowIndicator, frozenRows: _frozenRows, className, style, accessMode, id, displayStyle, }: NiceDataGridProps<T>): default_2.JSX.Element | null;
10292
10412
 
10293
10413
  export declare namespace NiceDataGrid {
10294
10414
  var displayName: string;
@@ -10412,6 +10532,18 @@ export declare interface NiceDataGridProps<T extends Record<string, any> = any>
10412
10532
  sortField?: string;
10413
10533
  sortDirection?: SortDirection;
10414
10534
  onSort?: (field: string, direction: SortDirection) => void;
10535
+ /** Show an "Advanced filter" toolbar button that opens a NiceFilterBuilder panel. */
10536
+ showAdvancedFilter?: boolean;
10537
+ /** The advanced filter tree (controlled). Applied client-side unless a dataSource is bound. */
10538
+ advancedFilter?: NiceFilterGroup;
10539
+ /** Change callback for the advanced filter. */
10540
+ onAdvancedFilterChange?: (filter: NiceFilterGroup) => void;
10541
+ /** Filterable fields for the builder. Defaults to the (filterable) columns. */
10542
+ filterFields?: NiceFilterField[];
10543
+ /** Saved filter presets shown in the builder. */
10544
+ filterPresets?: NiceFilterPreset[];
10545
+ onSaveFilterPreset?: (preset: NiceFilterPreset) => void;
10546
+ onDeleteFilterPreset?: (name: string) => void;
10415
10547
  selectable?: boolean;
10416
10548
  selectedKeys?: Set<string>;
10417
10549
  onSelectionChange?: (keys: Set<string>) => void;
@@ -10567,6 +10699,8 @@ export declare interface NiceDataMergeBuilderProps extends NiceBaseProps {
10567
10699
  onPreview?: (sourceId: string, targetId: string) => void;
10568
10700
  onMerge?: (config: MergeConfig) => void;
10569
10701
  onCancel?: () => void;
10702
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
10703
+ tutorial?: NiceComponentTutorial;
10570
10704
  }
10571
10705
 
10572
10706
  export declare const NiceDataSnapshot: default_2.FC<NiceDataSnapshotProps>;
@@ -10591,10 +10725,47 @@ export declare interface NiceDataSnapshotProps extends NiceBaseProps {
10591
10725
 
10592
10726
  export { NiceDataSource }
10593
10727
 
10728
+ export declare const NiceDataSourceBuilder: ForwardRefExoticComponent<NiceDataSourceBuilderProps & RefAttributes<HTMLDivElement>>;
10729
+
10730
+ export declare interface NiceDataSourceBuilderProps extends NiceBaseProps {
10731
+ /** The data source being edited (controlled). */
10732
+ value?: NiceDataSourceDef;
10733
+ /** Change callback with the full updated data source (incl. generated SQL). */
10734
+ onChange?: (ds: NiceDataSourceDef) => void;
10735
+ /** Tables available from the connected database schema(s) — host-supplied. */
10736
+ schemas: NiceDataSourceSchemaTable[];
10737
+ /** Optional ER/schema preview slot (e.g. NiceDatabaseSchemaViewer from ui-diagrams). */
10738
+ renderSchemaPreview?: (schemas: NiceDataSourceSchemaTable[]) => React.ReactNode;
10739
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
10740
+ tutorial?: NiceComponentTutorial;
10741
+ }
10742
+
10594
10743
  export { NiceDataSourceConfig }
10595
10744
 
10745
+ /** A reusable, serializable data source (maps to a view-standard `query` source). */
10746
+ export declare interface NiceDataSourceDef {
10747
+ key: string;
10748
+ label?: string;
10749
+ kind: 'query';
10750
+ query: NiceQueryModel;
10751
+ /** Generated SQL view (read-only artifact derived from `query`). */
10752
+ sql: string;
10753
+ }
10754
+
10596
10755
  export { NiceDataSourceEventMap }
10597
10756
 
10757
+ /** A table the host exposes from a connected database schema. */
10758
+ export declare interface NiceDataSourceSchemaTable {
10759
+ name: string;
10760
+ schema?: string;
10761
+ columns: Array<{
10762
+ name: string;
10763
+ dataType: string;
10764
+ isPrimaryKey?: boolean;
10765
+ isForeignKey?: boolean;
10766
+ }>;
10767
+ }
10768
+
10598
10769
  export { NiceDataSourceState }
10599
10770
 
10600
10771
  /** Predefined date-format presets. */
@@ -10810,7 +10981,7 @@ export declare interface NiceDeviceControlCardProps extends NiceBaseProps {
10810
10981
  controlLayout?: ControlLayout;
10811
10982
  }
10812
10983
 
10813
- export declare function NiceDiagramDesigner({ initialSchema, onChange, onExport, className, style, }: NiceDiagramDesignerProps): JSX.Element;
10984
+ export declare function NiceDiagramDesigner({ initialSchema, onChange, onExport, className, style, tutorial, }: NiceDiagramDesignerProps): JSX.Element;
10814
10985
 
10815
10986
  export declare interface NiceDiagramDesignerProps {
10816
10987
  /** Initial diagram schema. Accepts the canonical {@link DiagramSchema} or a looser input where nodes only need `id/x/y/label` and edges may use `from`/`to` aliases. */
@@ -10847,6 +11018,8 @@ export declare interface NiceDiagramDesignerProps {
10847
11018
  className?: string;
10848
11019
  /** Style */
10849
11020
  style?: default_2.CSSProperties;
11021
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
11022
+ tutorial?: NiceComponentTutorial;
10850
11023
  }
10851
11024
 
10852
11025
  export { NiceDirection }
@@ -11010,7 +11183,7 @@ export declare interface NiceDocumentApprovalFlowProps extends NiceFormFieldProp
11010
11183
  locale?: string;
11011
11184
  }
11012
11185
 
11013
- export declare function NiceDocumentationViewer({ doc, component: _component, renderPreview: _renderPreview, defaultTab, sections, compact, enableCodeEdit, className, style, }: NiceDocumentationViewerProps): JSX_2.Element;
11186
+ export declare function NiceDocumentationViewer({ doc, component: _component, renderPreview: _renderPreview, defaultTab, sections, compact, enableCodeEdit, className, style, }: NiceDocumentationViewerProps): default_2.JSX.Element;
11014
11187
 
11015
11188
  export declare interface NiceDocumentationViewerProps {
11016
11189
  /** Component documentation data */
@@ -11105,6 +11278,8 @@ export declare interface NiceDocumentEditorProps extends NiceBaseProps {
11105
11278
  showToc?: boolean;
11106
11279
  /** Show find & replace bar (Ctrl+F). */
11107
11280
  showFindReplace?: boolean;
11281
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
11282
+ tutorial?: NiceComponentTutorial;
11108
11283
  }
11109
11284
 
11110
11285
  export declare interface NiceDocumentInfo {
@@ -11507,8 +11682,29 @@ export declare interface NiceEnergyChartProps extends NiceBaseProps {
11507
11682
  onDrillDown?: (bucket: string) => void;
11508
11683
  }
11509
11684
 
11685
+ /** Minimal entity field descriptor (OmniVerk `ModuleEntityField`-compatible). */
11686
+ export declare interface NiceEntityFieldLike {
11687
+ name: string;
11688
+ displayName?: string;
11689
+ dataType?: string;
11690
+ isRequired?: boolean;
11691
+ isPrimaryKey?: boolean;
11692
+ [k: string]: unknown;
11693
+ }
11694
+
11695
+ /** Minimal entity descriptor (OmniVerk `ModuleEntity`-compatible). */
11696
+ export declare interface NiceEntityLike {
11697
+ name?: string;
11698
+ displayName?: string;
11699
+ fields?: NiceEntityFieldLike[];
11700
+ [k: string]: unknown;
11701
+ }
11702
+
11510
11703
  export { NiceEntityMenuDto }
11511
11704
 
11705
+ /** View kinds this scaffolder supports. */
11706
+ export declare type NiceEntityViewKind = 'form' | 'detail' | 'grid';
11707
+
11512
11708
  export declare const NiceERPReportDesigner: default_2.FC<NiceERPReportDesignerProps>;
11513
11709
 
11514
11710
  export declare interface NiceERPReportDesignerProps extends NiceBaseProps {
@@ -11538,6 +11734,8 @@ export declare interface NiceERPReportDesignerProps extends NiceBaseProps {
11538
11734
  showDataPanel?: boolean;
11539
11735
  /** Show toolbar */
11540
11736
  showToolbar?: boolean;
11737
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
11738
+ tutorial?: NiceComponentTutorial;
11541
11739
  }
11542
11740
 
11543
11741
  /**
@@ -11550,7 +11748,7 @@ export declare class NiceErrorBoundary extends Component<NiceErrorBoundaryProps,
11550
11748
  static getDerivedStateFromError(error: Error): NiceErrorBoundaryState;
11551
11749
  componentDidCatch(error: Error, errorInfo: default_2.ErrorInfo): void;
11552
11750
  handleReset: () => void;
11553
- render(): string | number | boolean | Iterable<default_2.ReactNode> | JSX_2.Element | null | undefined;
11751
+ render(): string | number | boolean | Iterable<default_2.ReactNode> | default_2.JSX.Element | null | undefined;
11554
11752
  }
11555
11753
 
11556
11754
  /** Props for the {@link NiceErrorBoundary} component. */
@@ -12130,6 +12328,8 @@ export declare interface NiceFilterBuilderProps extends NiceBaseProps {
12130
12328
  presets?: NiceFilterPreset[];
12131
12329
  onSavePreset?: (preset: NiceFilterPreset) => void;
12132
12330
  onDeletePreset?: (name: string) => void;
12331
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
12332
+ tutorial?: NiceComponentTutorial;
12133
12333
  }
12134
12334
 
12135
12335
  export { NiceFilterCondition }
@@ -13041,6 +13241,22 @@ export declare interface NiceHighlightProps extends NiceStandardProps {
13041
13241
  caseSensitive?: boolean;
13042
13242
  }
13043
13243
 
13244
+ /** A single trigger → handler binding. */
13245
+ export declare interface NiceHookBinding {
13246
+ id: string;
13247
+ /** Id of the {@link NiceLifecycleTrigger} this binding fires on. */
13248
+ trigger: string;
13249
+ /** Id of the bound handler, or a free-form handler reference when no `handlers` list is given. */
13250
+ handler: string;
13251
+ /** Execution order within the trigger (lower runs first). */
13252
+ order: number;
13253
+ /** Whether the binding is active. */
13254
+ enabled: boolean;
13255
+ /** Optional condition expression gating execution. */
13256
+ condition?: string;
13257
+ description?: string;
13258
+ }
13259
+
13044
13260
  /** Configuration for the hot-swap manager. */
13045
13261
  export declare interface NiceHotSwapConfig {
13046
13262
  /** Module import resolver. */
@@ -13110,7 +13326,6 @@ declare interface NiceHtmlEditorAIRef {
13110
13326
  /** Available toolbar commands for the {@link NiceHtmlEditor}. */
13111
13327
  export declare type NiceHtmlEditorCommand = 'bold' | 'italic' | 'underline' | 'strikethrough' | 'h1' | 'h2' | 'h3' | 'ul' | 'ol' | 'link' | 'unlink' | 'undo' | 'redo' | 'clear' | 'table' | 'image' | 'code' | 'markdown' | 'blockquote' | 'hr' | 'fontSize' | 'fontColor' | 'bgColor' | 'subscript' | 'superscript' | 'indent' | 'outdent' | 'alignLeft' | 'alignCenter' | 'alignRight' | 'alignJustify' | 'fullscreen' | 'removeFormat' | 'print' | 'source' | 'emoji' | 'findReplace';
13112
13328
 
13113
- /** Props for the {@link NiceHtmlEditor} component � a WYSIWYG rich-text editor with toolbar, mentions, and image upload. */
13114
13329
  export declare interface NiceHtmlEditorProps extends NiceFormFieldProps {
13115
13330
  value: string;
13116
13331
  onChange: (html: string) => void;
@@ -13142,6 +13357,8 @@ export declare interface NiceHtmlEditorProps extends NiceFormFieldProps {
13142
13357
  label: string;
13143
13358
  html: string;
13144
13359
  }[];
13360
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
13361
+ tutorial?: NiceComponentTutorial;
13145
13362
  }
13146
13363
 
13147
13364
  declare interface NiceHTMLOptions extends NiceExportOptions {
@@ -13289,6 +13506,8 @@ export declare interface NiceImageEditorProps extends NiceBaseProps {
13289
13506
  onChange?: (state: NiceImageEditorState) => void;
13290
13507
  width?: number | string;
13291
13508
  height?: number | string;
13509
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
13510
+ tutorial?: NiceComponentTutorial;
13292
13511
  }
13293
13512
 
13294
13513
  export declare interface NiceImageEditorState {
@@ -13571,6 +13790,8 @@ export declare interface NiceInvoiceLineEditorProps extends NiceFormFieldProps {
13571
13790
  maxLines?: number;
13572
13791
  /** Fires with computed totals whenever lines change. */
13573
13792
  onTotalsChange?: (totals: InvoiceTotals) => void;
13793
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
13794
+ tutorial?: NiceComponentTutorial;
13574
13795
  }
13575
13796
 
13576
13797
  declare interface NiceJSONOptions extends NiceExportOptions {
@@ -13632,6 +13853,8 @@ export declare interface NiceKanbanBoardProps extends NiceBaseProps, TracelessSt
13632
13853
  onCardCreate?: (newCard: NiceKanbanCard) => void;
13633
13854
  /** Called when the user requests deletion from the popup form. */
13634
13855
  onCardDelete?: (cardKey: string | number) => void;
13856
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
13857
+ tutorial?: NiceComponentTutorial;
13635
13858
  }
13636
13859
 
13637
13860
  /** A card on the {@link NiceKanbanBoard}. */
@@ -13684,6 +13907,51 @@ export { NiceKeyboardHint }
13684
13907
 
13685
13908
  export { NiceKeyboardHintProps }
13686
13909
 
13910
+ export declare const NiceKeyValueEditor: ForwardRefExoticComponent<NiceKeyValueEditorProps & RefAttributes<HTMLDivElement>>;
13911
+
13912
+ export declare interface NiceKeyValueEditorProps extends NiceBaseProps {
13913
+ /** Current rows (controlled). */
13914
+ value: NiceKeyValuePair[];
13915
+ /** Change callback with the full updated array. */
13916
+ onChange: (pairs: NiceKeyValuePair[]) => void;
13917
+ /** Allow toggling a row's value between text and secret (adds a lock toggle). */
13918
+ allowSecret?: boolean;
13919
+ /** Show a per-row enable/disable checkbox. */
13920
+ allowToggle?: boolean;
13921
+ /** Show a per-row description input. */
13922
+ allowDescription?: boolean;
13923
+ /** Suggested keys (rendered via a shared `<datalist>`). */
13924
+ keySuggestions?: string[];
13925
+ /** Placeholder for the key input. Default `'Key'`. */
13926
+ keyPlaceholder?: string;
13927
+ /** Placeholder for the value input. Default `'Value'`. */
13928
+ valuePlaceholder?: string;
13929
+ /** Label for the add-row button. Default `'Add'`. */
13930
+ addLabel?: string;
13931
+ /** Render read-only (no editing, no add/remove). */
13932
+ readOnly?: boolean;
13933
+ /** Highlight duplicate keys. Default `true`. */
13934
+ duplicateKeyWarning?: boolean;
13935
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
13936
+ tutorial?: NiceComponentTutorial;
13937
+ }
13938
+
13939
+ /** A single key/value row. */
13940
+ export declare interface NiceKeyValuePair {
13941
+ /** Stable id (used as React key when present). */
13942
+ id?: string;
13943
+ /** The key/name. */
13944
+ key: string;
13945
+ /** The value. */
13946
+ value: string;
13947
+ /** `'secret'` renders the value masked with a reveal toggle. Default `'text'`. */
13948
+ type?: 'text' | 'secret';
13949
+ /** Whether the row is active. Only meaningful when `allowToggle` is set. */
13950
+ enabled?: boolean;
13951
+ /** Optional description / note. Only shown when `allowDescription` is set. */
13952
+ description?: string;
13953
+ }
13954
+
13687
13955
  export declare const NiceKioskShell: ForwardRefExoticComponent<NiceKioskShellProps & RefAttributes<HTMLDivElement>>;
13688
13956
 
13689
13957
  export declare interface NiceKioskShellProps extends NiceBaseProps {
@@ -13853,6 +14121,47 @@ export declare interface NiceLeaderboardProps {
13853
14121
  id?: string;
13854
14122
  }
13855
14123
 
14124
+ /** A handler that can be bound to a trigger (e.g. a script). */
14125
+ export declare interface NiceLifecycleHandlerOption {
14126
+ id: string;
14127
+ label: string;
14128
+ description?: string;
14129
+ }
14130
+
14131
+ export declare const NiceLifecycleHooksEditor: ForwardRefExoticComponent<NiceLifecycleHooksEditorProps & RefAttributes<HTMLDivElement>>;
14132
+
14133
+ export declare interface NiceLifecycleHooksEditorProps extends NiceBaseProps {
14134
+ /** Available triggers. */
14135
+ triggers: NiceLifecycleTrigger[];
14136
+ /** Current bindings (controlled). */
14137
+ bindings: NiceHookBinding[];
14138
+ /** Available handlers. When omitted, the handler field is a free-text input. */
14139
+ handlers?: NiceLifecycleHandlerOption[];
14140
+ /** Change callback with the full updated bindings array. */
14141
+ onChange: (bindings: NiceHookBinding[]) => void;
14142
+ /** Show up/down controls to reorder bindings within a trigger. Default `true`. */
14143
+ allowReorder?: boolean;
14144
+ /** Show a condition input per binding. Default `false`. */
14145
+ allowCondition?: boolean;
14146
+ /** Group triggers by their `group` field. Default `false`. */
14147
+ groupByTrigger?: boolean;
14148
+ /** Render read-only. */
14149
+ readOnly?: boolean;
14150
+ /** Custom handler picker (overrides the default select / text input). */
14151
+ renderHandlerPicker?: (binding: NiceHookBinding, set: (patch: Partial<NiceHookBinding>) => void) => React.ReactNode;
14152
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
14153
+ tutorial?: NiceComponentTutorial;
14154
+ }
14155
+
14156
+ /** A trigger that handlers can be bound to (e.g. `EntityCreated:Article`). */
14157
+ export declare interface NiceLifecycleTrigger {
14158
+ id: string;
14159
+ label: string;
14160
+ /** Optional grouping key (shown as a section header when `groupByTrigger`). */
14161
+ group?: string;
14162
+ description?: string;
14163
+ }
14164
+
13856
14165
  /**
13857
14166
  * Modal image viewer. Renders a full-screen overlay with prev/next
13858
14167
  * navigation, optional zoom + download buttons, and a counter.
@@ -14145,7 +14454,7 @@ export declare const NiceLiveDataGrid: <T extends LiveGridRow = LiveGridRow>(pro
14145
14454
  ref?: default_2.ForwardedRef<NiceLiveDataGridRef<T>>;
14146
14455
  }) => ReturnType<typeof NiceLiveDataGridInner>;
14147
14456
 
14148
- declare function NiceLiveDataGridInner<T extends LiveGridRow = LiveGridRow>({ columns, data: initialData, dataSource, rowKey, showConnectionStatus, highlightDuration, updateAnimation, maxRows, selectable, selectedIds, onSelectionChange, onRowClick, onUpdate, onConnectionStatusChange, emptyContent, loadingContent, sortable, sortField, sortDirection, onSortChange, virtualized: _virtualized, rowHeight, height, className, style, }: NiceLiveDataGridProps<T>, ref: default_2.ForwardedRef<NiceLiveDataGridRef<T>>): JSX_2.Element;
14457
+ declare function NiceLiveDataGridInner<T extends LiveGridRow = LiveGridRow>({ columns, data: initialData, dataSource, rowKey, showConnectionStatus, highlightDuration, updateAnimation, maxRows, selectable, selectedIds, onSelectionChange, onRowClick, onUpdate, onConnectionStatusChange, emptyContent, loadingContent, sortable, sortField, sortDirection, onSortChange, virtualized: _virtualized, rowHeight, height, className, style, }: NiceLiveDataGridProps<T>, ref: default_2.ForwardedRef<NiceLiveDataGridRef<T>>): default_2.JSX.Element;
14149
14458
 
14150
14459
  /** Props for NiceLiveDataGrid */
14151
14460
  export declare interface NiceLiveDataGridProps<T extends LiveGridRow = LiveGridRow> extends NiceBaseProps {
@@ -14384,6 +14693,45 @@ export declare interface NiceLockButtonProps extends NiceBaseProps {
14384
14693
  label?: string;
14385
14694
  }
14386
14695
 
14696
+ export declare const NiceLogConsole: ForwardRefExoticComponent<NiceLogConsoleProps & RefAttributes<HTMLDivElement>>;
14697
+
14698
+ export declare interface NiceLogConsoleProps extends NiceBaseProps {
14699
+ /** Entries to render, oldest → newest. */
14700
+ entries: NiceLogEntry[];
14701
+ /** Max height before the body scrolls. Number → px. Default `240`. */
14702
+ maxHeight?: number | string;
14703
+ /** Auto-scroll to the newest entry when `entries` grows. Default `true`. */
14704
+ autoScroll?: boolean;
14705
+ /** Show a per-entry timestamp gutter. Default `true`. */
14706
+ showTimestamps?: boolean;
14707
+ /** When set, only entries whose level is included are rendered. */
14708
+ levelFilter?: NiceLogLevel[];
14709
+ /** When provided, a "Clear" button is shown in the header. */
14710
+ onClear?: () => void;
14711
+ /** Header title. When omitted (and no `onClear`) the header is hidden. */
14712
+ title?: string;
14713
+ /** Content shown when there are no (visible) entries. Default `'No output'`. */
14714
+ emptyText?: React.ReactNode;
14715
+ /** Label for the clear button. Default `'Clear'`. */
14716
+ clearLabel?: string;
14717
+ /** Monospace font family override. */
14718
+ fontFamily?: string;
14719
+ }
14720
+
14721
+ /** A single line emitted to the console. */
14722
+ export declare interface NiceLogEntry {
14723
+ /** Severity — drives colour and optional filtering. Defaults to `'log'`. */
14724
+ level?: NiceLogLevel;
14725
+ /** Human-readable message. */
14726
+ message: string;
14727
+ /** When the entry was produced. Epoch ms or `Date`. */
14728
+ timestamp?: number | Date;
14729
+ /** Optional structured payload appended (pretty-printed JSON) below the message. */
14730
+ data?: unknown;
14731
+ /** Optional source/tag shown as a dim prefix (e.g. a script or provider id). */
14732
+ source?: string;
14733
+ }
14734
+
14387
14735
  export declare const NiceLoginForm: ForwardRefExoticComponent<NiceLoginFormProps & RefAttributes<HTMLFormElement>>;
14388
14736
 
14389
14737
  /** Props for the {@link NiceLoginForm} component — a pre-built login form with username, password, remember-me, and social links. */
@@ -14426,6 +14774,12 @@ export declare interface NiceLoginFormProps extends NiceStandardProps {
14426
14774
  passwordPlaceholder?: string;
14427
14775
  }
14428
14776
 
14777
+ /**
14778
+ * Severity of a single console entry. `'trace'` sits below `'debug'` to mirror
14779
+ * standard loggers (Microsoft.Extensions.Logging, Serilog, Python logging, …).
14780
+ */
14781
+ export declare type NiceLogLevel = 'trace' | 'log' | 'info' | 'warn' | 'error' | 'debug';
14782
+
14429
14783
  export declare const NiceLogo: default_2.ForwardRefExoticComponent<NiceLogoProps & default_2.RefAttributes<HTMLElement>>;
14430
14784
 
14431
14785
  export declare interface NiceLogoProps {
@@ -14544,9 +14898,11 @@ export declare interface NiceLowCodeStudioProps {
14544
14898
  onSave?: (design: DesignState) => void;
14545
14899
  /** Additional class name */
14546
14900
  className?: string;
14901
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
14902
+ tutorial?: NiceComponentTutorial;
14547
14903
  }
14548
14904
 
14549
- export declare function NiceMAM({ assets: initialAssets, folders: initialFolders, collections: initialCollections, people: initialPeople, currentUser, uploadEndpoint: _uploadEndpoint, enableAITagging, enableFaceRecognition, maxUploadSize: _maxUploadSize, allowedTypes: _allowedTypes, onUpload: _onUpload, onDelete, onAnalyze, onDetectFaces, onSelectionChange: _onSelectionChange, onPreview, renderAssetCard, className, style, children, ...baseProps }: NiceMAMProps): JSX_2.Element;
14905
+ export declare function NiceMAM({ assets: initialAssets, folders: initialFolders, collections: initialCollections, people: initialPeople, currentUser, uploadEndpoint: _uploadEndpoint, enableAITagging, enableFaceRecognition, maxUploadSize: _maxUploadSize, allowedTypes: _allowedTypes, onUpload: _onUpload, onDelete, onAnalyze, onDetectFaces, onSelectionChange: _onSelectionChange, onPreview, renderAssetCard, className, style, children, ...baseProps }: NiceMAMProps): default_2.JSX.Element;
14550
14906
 
14551
14907
  export declare interface NiceMAMProps extends NiceBaseProps {
14552
14908
  /** Initial assets */
@@ -14701,6 +15057,8 @@ export declare interface NiceMarkdownEditorProps extends NiceBaseProps {
14701
15057
  showLineNumbers?: boolean;
14702
15058
  onExportHtml?: (html: string) => void;
14703
15059
  onImageUpload?: (file: File) => Promise<string>;
15060
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
15061
+ tutorial?: NiceComponentTutorial;
14704
15062
  }
14705
15063
 
14706
15064
  export declare type NiceMarkdownPreviewMode = 'side' | 'tab' | 'none';
@@ -15056,6 +15414,8 @@ export declare interface NiceMergeRequestBuilderProps extends NiceBaseProps {
15056
15414
  onCancel?: () => void;
15057
15415
  onBranchChange?: (source: string, target: string) => void;
15058
15416
  onPreview?: (data: MergeRequestData) => void;
15417
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
15418
+ tutorial?: NiceComponentTutorial;
15059
15419
  }
15060
15420
 
15061
15421
  export declare const NiceModal: default_2.FC<NiceModalProps>;
@@ -16405,6 +16765,8 @@ export declare interface NicePageBuilderProps {
16405
16765
  previewMode?: 'desktop' | 'tablet' | 'mobile';
16406
16766
  /** Additional class name */
16407
16767
  className?: string;
16768
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
16769
+ tutorial?: NiceComponentTutorial;
16408
16770
  }
16409
16771
 
16410
16772
  /**
@@ -16576,6 +16938,8 @@ export declare interface NicePDFAnnotationEditorProps extends NiceFormFieldProps
16576
16938
  onAnnotationClick?: (annotation: PDFAnnotation) => void;
16577
16939
  /** Fires when an annotation is deleted. */
16578
16940
  onAnnotationDelete?: (id: string) => void;
16941
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
16942
+ tutorial?: NiceComponentTutorial;
16579
16943
  }
16580
16944
 
16581
16945
  declare interface NicePDFOptions extends NiceExportOptions {
@@ -16850,6 +17214,8 @@ export declare interface NicePipelineEditorProps extends NiceBaseProps {
16850
17214
  onSave: () => void;
16851
17215
  onRun: () => void;
16852
17216
  onValidate: () => void;
17217
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
17218
+ tutorial?: NiceComponentTutorial;
16853
17219
  }
16854
17220
 
16855
17221
  export declare const NicePipelineMonitor: default_2.FC<NicePipelineMonitorProps>;
@@ -17403,6 +17769,18 @@ export declare interface NiceQRCodeProps extends NiceStandardProps {
17403
17769
  /** Reed-Solomon error correction level for QR codes. */
17404
17770
  export declare type NiceQRErrorCorrection = 'L' | 'M' | 'Q' | 'H';
17405
17771
 
17772
+ /** The visual query model owned by the builder. */
17773
+ export declare interface NiceQueryModel {
17774
+ tables: QueryTable[];
17775
+ joins: QueryJoin[];
17776
+ conditions: QueryCondition[];
17777
+ sorts: QuerySort[];
17778
+ groupBy: QueryGroupBy[];
17779
+ distinct: boolean;
17780
+ limit?: number;
17781
+ offset?: number;
17782
+ }
17783
+
17406
17784
  /**
17407
17785
  * {@link NiceQuestCard} — Displays a quest/task card with progress, rewards, deadline and action buttons.
17408
17786
  */
@@ -17685,6 +18063,16 @@ export declare interface NiceRbacDenyRule {
17685
18063
  actions: RbacAction[];
17686
18064
  }
17687
18065
 
18066
+ /** The full RBAC model: roles, the resource tree, the action columns, and grants. */
18067
+ export declare interface NiceRbacModel {
18068
+ roles: NiceAccessRole[];
18069
+ resources: NiceAccessResource[];
18070
+ /** Action columns (view/create/edit/delete/…) applied per resource. */
18071
+ actions: PermissionAction[];
18072
+ /** `grants[resourceId]` is a `roleId:actionId → boolean|'inherited'` map. */
18073
+ grants: Record<string, PermissionMatrixValue>;
18074
+ }
18075
+
17688
18076
  /** Single permission granting or denying an action on a resource. */
17689
18077
  export declare interface NiceRbacPermission {
17690
18078
  /** Resource key (e.g. "sales.orders", "inventory.products"). */
@@ -17823,6 +18211,8 @@ export declare interface NiceRecipeEditorProps extends NiceBaseProps {
17823
18211
  saveLabel?: string;
17824
18212
  /** Custom Cancel button label. */
17825
18213
  cancelLabel?: string;
18214
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
18215
+ tutorial?: NiceComponentTutorial;
17826
18216
  }
17827
18217
 
17828
18218
  /**
@@ -18095,6 +18485,8 @@ export declare interface NiceResolvedPermissions {
18095
18485
  denied: Map<string, Set<RbacAction>>;
18096
18486
  }
18097
18487
 
18488
+ export { NiceResolvedTutorialStep }
18489
+
18098
18490
  export declare const NiceResourceAllocation: default_2.ForwardRefExoticComponent<NiceResourceAllocationProps & default_2.RefAttributes<NiceResourceAllocationRef>>;
18099
18491
 
18100
18492
  export declare interface NiceResourceAllocationProps extends NiceBaseProps {
@@ -18248,6 +18640,48 @@ export declare interface NiceRetryPanelProps extends NiceStandardProps {
18248
18640
  icon?: default_2.ReactNode;
18249
18641
  }
18250
18642
 
18643
+ /** A single revision/version entry. */
18644
+ export declare interface NiceRevision {
18645
+ id: string;
18646
+ /** Short label (e.g. "v12" or a commit subject). */
18647
+ label?: string;
18648
+ author?: string;
18649
+ /** When the revision was created. Epoch ms or `Date`. */
18650
+ timestamp: number | Date;
18651
+ /** Inline content. When omitted, `loadContent` is used for diffing. */
18652
+ content?: string;
18653
+ /** Longer description / change summary. */
18654
+ summary?: string;
18655
+ tags?: string[];
18656
+ }
18657
+
18658
+ export declare const NiceRevisionHistory: ForwardRefExoticComponent<NiceRevisionHistoryProps & RefAttributes<HTMLDivElement>>;
18659
+
18660
+ export declare interface NiceRevisionHistoryProps extends NiceBaseProps {
18661
+ /** Revisions, newest first (rendered in given order). */
18662
+ revisions: NiceRevision[];
18663
+ /** Language for diff syntax highlighting. Default `'plaintext'`. */
18664
+ language?: NiceCodeLanguage;
18665
+ /** Selected (modified / right side) revision id. Uncontrolled when omitted. */
18666
+ selectedId?: string;
18667
+ /** Compare-against (original / left side) revision id. Uncontrolled when omitted. */
18668
+ compareWithId?: string;
18669
+ /** Called when the selected revision changes. */
18670
+ onSelect?: (id: string) => void;
18671
+ /** Called when the compare pair changes. */
18672
+ onCompare?: (compareWithId: string, selectedId: string) => void;
18673
+ /** Called when the user rolls back to a revision. */
18674
+ onRollback?: (id: string) => void;
18675
+ /** Lazily resolve a revision's content (when not provided inline). */
18676
+ loadContent?: (id: string) => Promise<string>;
18677
+ /** Render the side-by-side diff pane. Default `true`. */
18678
+ showDiff?: boolean;
18679
+ /** Rollback button label. Default `'Restore'`. */
18680
+ rollbackLabel?: string;
18681
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
18682
+ tutorial?: NiceComponentTutorial;
18683
+ }
18684
+
18251
18685
  /**
18252
18686
  * Decorative corner ribbon that hangs from the top of its wrapped
18253
18687
  * element. Positioning is relative to a `position: relative` shim
@@ -18512,6 +18946,8 @@ export declare interface NiceSceneActionBuilderProps extends NiceBaseProps {
18512
18946
  availableRooms?: SmartRoomDto[];
18513
18947
  showPreview?: boolean;
18514
18948
  maxActions?: number;
18949
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
18950
+ tutorial?: NiceComponentTutorial;
18515
18951
  }
18516
18952
 
18517
18953
  export declare const NiceSceneBar: default_2.FC<NiceSceneBarProps>;
@@ -18700,6 +19136,64 @@ export declare interface NiceSchedulerServiceData {
18700
19136
  /** Available calendar views for the {@link NiceScheduler}. */
18701
19137
  export declare type NiceSchedulerView = 'day' | 'week' | 'workWeek' | 'month' | 'dayRange' | 'monthRange' | 'agenda' | 'timeline';
18702
19138
 
19139
+ export declare const NiceScriptRunner: ForwardRefExoticComponent<NiceScriptRunnerProps & RefAttributes<HTMLDivElement>>;
19140
+
19141
+ export declare interface NiceScriptRunnerProps extends NiceBaseProps {
19142
+ /** Script source (controlled). */
19143
+ value: string;
19144
+ /** Script change callback. */
19145
+ onChange?: (value: string) => void;
19146
+ /** Editor language. Default `'javascript'`. */
19147
+ language?: NiceCodeLanguage;
19148
+ /**
19149
+ * Executes the script. Receives the current code and parsed input.
19150
+ * Return (or resolve) a {@link NiceScriptRunResult}. Throwing is also supported —
19151
+ * the error is surfaced in the result pane.
19152
+ */
19153
+ onRun: (code: string, input: unknown) => Promise<NiceScriptRunResult> | NiceScriptRunResult;
19154
+ /** Sample input (entity/payload). Edited as JSON; parsed before `onRun`. */
19155
+ input?: unknown;
19156
+ /** Called with the parsed input when the input editor changes. */
19157
+ onInputChange?: (input: unknown) => void;
19158
+ /** Show the input editor. Defaults to `true` when `input` is provided. */
19159
+ showInputPanel?: boolean;
19160
+ /** Declaration libs forwarded to the code editor for IntelliSense (e.g. `ctx.d.ts`). */
19161
+ extraLibs?: Array<{
19162
+ content: string;
19163
+ filePath?: string;
19164
+ }>;
19165
+ /** Editor height. Number → px. Default `260`. */
19166
+ height?: number | string;
19167
+ /** Externally-controlled running state. When omitted, the component manages its own. */
19168
+ running?: boolean;
19169
+ /** Debounced auto-run on code/input change. Default `false`. */
19170
+ autoRun?: boolean;
19171
+ /** Debounce for `autoRun`, ms. Default `600`. */
19172
+ autoRunDelay?: number;
19173
+ /** Panel arrangement. Default `'vertical'` (editor on top, output below). */
19174
+ layout?: 'horizontal' | 'vertical';
19175
+ /** Run button label. Default `'Run'`. */
19176
+ runLabel?: string;
19177
+ /** Editor theme. Default `'auto'`. */
19178
+ theme?: 'auto' | 'light' | 'dark' | 'vs' | 'vs-dark';
19179
+ /** Optional guided tour. `true` = built-in; array/object = custom steps. Shows a "?" button. */
19180
+ tutorial?: NiceComponentTutorial;
19181
+ }
19182
+
19183
+ /** Outcome of a single script run, returned by {@link NiceScriptRunnerProps.onRun}. */
19184
+ export declare interface NiceScriptRunResult {
19185
+ /** Whether the run succeeded. */
19186
+ ok: boolean;
19187
+ /** Returned value (pretty-printed in the result pane). */
19188
+ result?: unknown;
19189
+ /** Log lines captured during the run. */
19190
+ logs?: NiceLogEntry[];
19191
+ /** Error message when `ok` is false. */
19192
+ error?: string;
19193
+ /** Wall-clock duration in milliseconds (shown in the status bar). */
19194
+ durationMs?: number;
19195
+ }
19196
+
18703
19197
  export declare const NiceScrollView: default_2.FC<NiceScrollViewProps>;
18704
19198
 
18705
19199
  /** Props for the {@link NiceScrollView} component — a styled scrollable container with configurable scrollbar visibility. */
@@ -18889,7 +19383,7 @@ export declare interface NiceSectionProps extends NiceStandardProps {
18889
19383
  * - `NiceToolbar` — long horizontal strip with separators / spacers /
18890
19384
  * custom widgets, typically above content.
18891
19385
  */
18892
- export declare function NiceSegmentedControl<T = string>({ options, value: controlledValue, defaultValue, onChange, size, block, disabled, className, style, 'data-testid': testId, }: NiceSegmentedControlProps<T>): JSX_2.Element;
19386
+ export declare function NiceSegmentedControl<T = string>({ options, value: controlledValue, defaultValue, onChange, size, block, disabled, className, style, 'data-testid': testId, }: NiceSegmentedControlProps<T>): default_2.JSX.Element;
18893
19387
 
18894
19388
  export declare namespace NiceSegmentedControl {
18895
19389
  var displayName: string;
@@ -19104,6 +19598,9 @@ export declare interface NiceShowcaseProps extends NiceBaseProps {
19104
19598
  /** Available showcase tabs for the {@link NiceShowcase} component. */
19105
19599
  export declare type NiceShowcaseTab = 'about' | 'dashboard' | 'users' | 'data' | 'forms' | 'scheduling' | 'files' | 'controls' | 'docs' | 'theme-designer';
19106
19600
 
19601
+ /** Context-menu / gesture actions that can be selectively disabled (e.g. for guests). */
19602
+ declare type NiceSidebarContextMenuAction = 'hide' | 'reorder' | 'rename' | 'newGroup' | 'collapseToggle';
19603
+
19107
19604
  export declare const NiceSidebarNav: ForwardRefExoticComponent<NiceSidebarNavProps & RefAttributes<HTMLDivElement>>;
19108
19605
 
19109
19606
  export declare interface NiceSidebarNavProps {
@@ -19132,6 +19629,21 @@ export declare interface NiceSidebarNavProps {
19132
19629
  routeToUrl?: (route: string) => string;
19133
19630
  /** Enable the right-click context menu on view nodes. Default `true`. */
19134
19631
  contextMenu?: boolean;
19632
+ /**
19633
+ * Disable individual destructive context-menu actions (and the matching
19634
+ * gestures). Listed actions render greyed-out; non-destructive actions
19635
+ * ("Open in new tab", "Copy link", favorites) stay enabled. Useful for guest
19636
+ * / demo panels that have no Preferences page to recover from accidental edits.
19637
+ */
19638
+ disabledContextMenuActions?: NiceSidebarContextMenuAction[];
19639
+ /**
19640
+ * Shorthand for read-only mode: disables every destructive context-menu
19641
+ * action ('hide', 'reorder', 'rename', 'newGroup') and drag-reorder, while
19642
+ * keeping navigation, expand/collapse and "Open in new tab" / "Copy link".
19643
+ * Equivalent to passing the full destructive list to
19644
+ * {@link disabledContextMenuActions}. Default `false`.
19645
+ */
19646
+ readonly?: boolean;
19135
19647
  /**
19136
19648
  * Override the initial enableModeIcons flag.
19137
19649
  * Can be toggled later via Preferences.
@@ -19155,12 +19667,20 @@ export declare interface NiceSidebarNavProps {
19155
19667
  */
19156
19668
  position?: 'left' | 'right';
19157
19669
  /**
19158
- * **Minimal mode** — hides the mode strip, sources, favorites and footer
19159
- * preferences, leaving only the navigation tree. Use for stripped-down
19160
- * shells (auth flows, embedded views) where the full taxonomy is overkill.
19161
- * Default `false`.
19670
+ * **Minimal mode** — shorthand that hides the mode strip, source headers,
19671
+ * the favorites view and the footer preferences, leaving only the navigation
19672
+ * tree. Equivalent to setting all four `show*` flags below to `false`. The
19673
+ * granular flags override it when set explicitly. Default `false`.
19162
19674
  */
19163
19675
  minimal?: boolean;
19676
+ /** Show the mode-icon strip (Pinned / Recent / All / Prefs). Default `!minimal`. */
19677
+ showModeStrip?: boolean;
19678
+ /** Show source section headers above their trees. Default `!minimal`. */
19679
+ showSources?: boolean;
19680
+ /** Allow the Favorites view/mode. Default `!minimal`. */
19681
+ showFavorites?: boolean;
19682
+ /** Allow the footer Preferences view/mode. Default `!minimal`. */
19683
+ showFooterPreferences?: boolean;
19164
19684
  /**
19165
19685
  * **Embedded mode** — render the sidebar inside another container (e.g. a
19166
19686
  * mobile drawer / hamburger menu). Forces full width, drops the footer with
@@ -19451,7 +19971,7 @@ export declare interface NiceSliderProps extends Omit<NiceFormFieldProps, 'label
19451
19971
  showTickLabels?: boolean;
19452
19972
  }
19453
19973
 
19454
- export declare function NiceSortable<T extends Record<string, unknown>>({ items, keyField, onReorder, renderItem, direction, handle, group: _group, disabled, className, style, }: NiceSortableProps<T>): JSX_2.Element;
19974
+ export declare function NiceSortable<T extends Record<string, unknown>>({ items, keyField, onReorder, renderItem, direction, handle, group: _group, disabled, className, style, }: NiceSortableProps<T>): default_2.JSX.Element;
19455
19975
 
19456
19976
  export declare namespace NiceSortable {
19457
19977
  var displayName: string;
@@ -19736,6 +20256,8 @@ export declare interface NiceSpreadsheetSheet {
19736
20256
  columnFilters?: Record<number, string>;
19737
20257
  }
19738
20258
 
20259
+ export { NiceSqlWhere }
20260
+
19739
20261
  export { NiceSSEConfig }
19740
20262
 
19741
20263
  export { NiceSSEDataSource }
@@ -19811,6 +20333,8 @@ export declare interface NiceStateDesignerProps extends NiceBaseProps {
19811
20333
  onStoreChange?: (store: StoreDefinition) => void;
19812
20334
  onExport?: (code: string, format: ExportFormat_2) => void;
19813
20335
  onSave?: (store: StoreDefinition) => void;
20336
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
20337
+ tutorial?: NiceComponentTutorial;
19814
20338
  }
19815
20339
 
19816
20340
  export { NiceStateIO }
@@ -19982,7 +20506,7 @@ export declare interface NiceStoryMeta {
19982
20506
  parameters?: Record<string, unknown>;
19983
20507
  }
19984
20508
 
19985
- export declare function NiceStreamDashboard({ platforms: initialPlatforms, scenes: initialScenes, config: initialConfig, enableWebRTC: _enableWebRTC, rtmpServerUrl: _rtmpServerUrl, maxChatMessages: _maxChatMessages, autoRecord, recordingPath: _recordingPath, onStreamStart, onStreamStop, onChatMessage: _onChatMessage, onAlert, onAnalyticsUpdate: _onAnalyticsUpdate, onVODCreated, renderPreview, renderChatMessage, className, style, children, ...baseProps }: NiceStreamDashboardProps): JSX_2.Element;
20509
+ export declare function NiceStreamDashboard({ platforms: initialPlatforms, scenes: initialScenes, config: initialConfig, enableWebRTC: _enableWebRTC, rtmpServerUrl: _rtmpServerUrl, maxChatMessages: _maxChatMessages, autoRecord, recordingPath: _recordingPath, onStreamStart, onStreamStop, onChatMessage: _onChatMessage, onAlert, onAnalyticsUpdate: _onAnalyticsUpdate, onVODCreated, renderPreview, renderChatMessage, className, style, children, ...baseProps }: NiceStreamDashboardProps): default_2.JSX.Element;
19986
20510
 
19987
20511
  export declare interface NiceStreamDashboardProps extends NiceBaseProps {
19988
20512
  /** Initial platform connections */
@@ -20225,7 +20749,7 @@ export declare interface NiceTabItem {
20225
20749
  content?: default_2.ReactNode;
20226
20750
  }
20227
20751
 
20228
- export declare function NiceTable<T extends Record<string, any>>({ columns, data, striped, compact, emptyText, className, style, accessMode, id, displayStyle, }: NiceTableProps<T>): JSX_2.Element | null;
20752
+ export declare function NiceTable<T extends Record<string, any>>({ columns, data, striped, compact, emptyText, className, style, accessMode, id, displayStyle, }: NiceTableProps<T>): default_2.JSX.Element | null;
20229
20753
 
20230
20754
  /** Column definition for the {@link NiceTable} component. */
20231
20755
  export declare interface NiceTableColumn<T = any> {
@@ -20557,6 +21081,8 @@ export declare interface NiceTestBuilderProps extends NiceBaseProps {
20557
21081
  onExport?: (code: string) => void;
20558
21082
  onRun?: (suiteId: string) => void;
20559
21083
  onRunAll?: () => void;
21084
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
21085
+ tutorial?: NiceComponentTutorial;
20560
21086
  }
20561
21087
 
20562
21088
  export { NiceTestWrapper }
@@ -20651,6 +21177,8 @@ export declare interface NiceThemeBuilderProps extends NiceBaseProps {
20651
21177
  showPreview?: boolean;
20652
21178
  /** Layout placement of the preview pane (default: 'right') */
20653
21179
  previewPlacement?: 'right' | 'bottom';
21180
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
21181
+ tutorial?: NiceComponentTutorial;
20654
21182
  }
20655
21183
 
20656
21184
  /** Editable sections in the {@link NiceThemeBuilder}. */
@@ -20918,7 +21446,7 @@ export { NiceThemeVariantProvider }
20918
21446
 
20919
21447
  export { NiceThemeVariantProviderProps }
20920
21448
 
20921
- export declare function NiceTileView<T extends NiceTileViewItem>({ items, tileWidth, tileHeight, direction, renderTile, onTileClick, loading, emptyText, className, style, }: NiceTileViewProps<T>): JSX_2.Element;
21449
+ export declare function NiceTileView<T extends NiceTileViewItem>({ items, tileWidth, tileHeight, direction, renderTile, onTileClick, loading, emptyText, className, style, }: NiceTileViewProps<T>): default_2.JSX.Element;
20922
21450
 
20923
21451
  /** A tile item displayed by the {@link NiceTileView} component. */
20924
21452
  declare interface NiceTileViewItem {
@@ -21489,7 +22017,7 @@ export declare interface NiceTopologyData {
21489
22017
 
21490
22018
  export { NiceTouchTarget }
21491
22019
 
21492
- export declare function NiceTranscoder({ jobs: initialJobs, profiles: initialProfiles, presets: customPresets, maxConcurrent, autoStart, defaultOutputDir, showThumbnails, enableDragDrop, onJobStatusChange, onJobComplete: _onJobComplete, onJobError: _onJobError, onProgress: _onProgress, renderJobItem, className, style, children, ...baseProps }: NiceTranscoderProps): JSX_2.Element;
22020
+ export declare function NiceTranscoder({ jobs: initialJobs, profiles: initialProfiles, presets: customPresets, maxConcurrent, autoStart, defaultOutputDir, showThumbnails, enableDragDrop, onJobStatusChange, onJobComplete: _onJobComplete, onJobError: _onJobError, onProgress: _onProgress, renderJobItem, className, style, children, ...baseProps }: NiceTranscoderProps): default_2.JSX.Element;
21493
22021
 
21494
22022
  export declare interface NiceTranscoderProps extends NiceBaseProps {
21495
22023
  /** Initial jobs */
@@ -21537,7 +22065,7 @@ export declare interface NiceTreeContextMenuItem {
21537
22065
  disabled?: boolean;
21538
22066
  }
21539
22067
 
21540
- export declare function NiceTreeGrid<T extends NiceTreeGridNode>({ columns, data, keyField, parentKeyField, nested, childrenField, expandedKeys: controlledExpanded, onExpandedChange, defaultExpandAll, sortable, sortField: controlledSortField, sortDirection: controlledSortDir, onSort, selectable, selectedKeys: controlledSelected, onSelectionChange, searchable, searchPlaceholder, striped, compact, loading, emptyText, toolbar, onRowClick, className, style, }: NiceTreeGridProps<T>): JSX_2.Element;
22068
+ export declare function NiceTreeGrid<T extends NiceTreeGridNode>({ columns, data, keyField, parentKeyField, nested, childrenField, expandedKeys: controlledExpanded, onExpandedChange, defaultExpandAll, sortable, sortField: controlledSortField, sortDirection: controlledSortDir, onSort, selectable, selectedKeys: controlledSelected, onSelectionChange, searchable, searchPlaceholder, striped, compact, loading, emptyText, toolbar, onRowClick, className, style, }: NiceTreeGridProps<T>): default_2.JSX.Element;
21541
22069
 
21542
22070
  /** A row node in the {@link NiceTreeGrid} (supports index-signature for dynamic fields). */
21543
22071
  export declare interface NiceTreeGridNode {
@@ -21596,7 +22124,7 @@ export declare interface NiceTreeGridProps<T extends NiceTreeGridNode = NiceTree
21596
22124
  onRowClick?: (row: T) => void;
21597
22125
  }
21598
22126
 
21599
- export declare function NiceTreeList<T extends NiceTreeListNode>({ columns, data, keyField, parentKeyField, expandedKeys: controlledExpanded, onExpandedChange, selectedKeys, onSelectionChange, selectable, loading, emptyText, className, style, accessMode, id, }: NiceTreeListProps<T>): JSX_2.Element | null;
22127
+ export declare function NiceTreeList<T extends NiceTreeListNode>({ columns, data, keyField, parentKeyField, expandedKeys: controlledExpanded, onExpandedChange, selectedKeys, onSelectionChange, selectable, loading, emptyText, className, style, accessMode, id, }: NiceTreeListProps<T>): default_2.JSX.Element | null;
21600
22128
 
21601
22129
  /** A tree-list node for the {@link NiceTreeList} component. */
21602
22130
  export declare interface NiceTreeListNode {
@@ -21836,6 +22364,22 @@ export declare interface NiceTruncateProps extends NiceStandardProps {
21836
22364
 
21837
22365
  export declare const NiceTutorial: default_2.FC<NiceTutorialProps>;
21838
22366
 
22367
+ export { NiceTutorialButton }
22368
+
22369
+ export { NiceTutorialButtonProps }
22370
+
22371
+ export declare const NiceTutorialHost: default_2.FC<NiceTutorialHostProps>;
22372
+
22373
+ export declare interface NiceTutorialHostProps {
22374
+ /** Global enable flag (default `true`). Set `false` to hide every "?" button. */
22375
+ enabled?: boolean;
22376
+ /** Override NiceTutorial control labels (merged over the i18n defaults). */
22377
+ labels?: NiceTutorialProps['labels'];
22378
+ /** Extra props forwarded to the underlying NiceTutorial (autoplay, placement…). */
22379
+ tutorialProps?: Omit<NiceTutorialProps, 'steps' | 'active' | 'onFinish' | 'onSkip' | 'labels'>;
22380
+ children: default_2.ReactNode;
22381
+ }
22382
+
21839
22383
  /** Props for the {@link NiceTutorial} component — a guided walkthrough overlay with step-by-step highlighting. */
21840
22384
  export declare interface NiceTutorialProps {
21841
22385
  /** Array of ordered tutorial steps */
@@ -21863,6 +22407,14 @@ export declare interface NiceTutorialProps {
21863
22407
  finish?: string;
21864
22408
  skip?: string;
21865
22409
  stepOf?: string;
22410
+ /** Play autoplay button (default "Play"). */
22411
+ play?: string;
22412
+ /** Pause autoplay button (default "Pause"). */
22413
+ pause?: string;
22414
+ /** Aria-label for the speed slider (default "Speed"). */
22415
+ speed?: string;
22416
+ /** Aria-label / tooltip for the tooltip close icon (default "Close"). */
22417
+ close?: string;
21866
22418
  };
21867
22419
  /** Animation duration in ms (default 300) */
21868
22420
  animationDuration?: number;
@@ -21870,6 +22422,36 @@ export declare interface NiceTutorialProps {
21870
22422
  overlayOpacity?: number;
21871
22423
  /** Z-index for the overlay (default 10000) */
21872
22424
  zIndex?: number;
22425
+ /**
22426
+ * Where the control buttons (skip / prev / next / play) sit.
22427
+ * - `'floating-bottom'` (default): fixed strip at bottom-center of the
22428
+ * viewport. The buttons never move between steps and never overlap with
22429
+ * the tooltip body.
22430
+ * - `'inline'`: inside the tooltip footer (legacy behaviour — buttons
22431
+ * re-position with each step).
22432
+ */
22433
+ buttonsPlacement?: 'floating-bottom' | 'inline';
22434
+ /**
22435
+ * How control buttons render.
22436
+ * - `'icon'` (default): round icon-only buttons.
22437
+ * - `'icon-text'`: icon with the label next to it.
22438
+ * - `'text'`: text label only (legacy).
22439
+ */
22440
+ buttonsDisplay?: 'icon' | 'icon-text' | 'text';
22441
+ /**
22442
+ * Show the PLAY/PAUSE button + progress bar + speed slider. Default `true`.
22443
+ * Disable to hide all autoplay controls.
22444
+ */
22445
+ showAutoplay?: boolean;
22446
+ /** Initial autoplay interval in ms-per-step. Default `5000`. */
22447
+ autoplayInterval?: number;
22448
+ /** Min/max range for the speed slider in ms-per-step. Defaults `{ min: 2000, max: 15000 }`. */
22449
+ autoplaySpeedRange?: {
22450
+ min: number;
22451
+ max: number;
22452
+ };
22453
+ /** Called whenever autoplay state changes. */
22454
+ onAutoplayChange?: (playing: boolean) => void;
21873
22455
  }
21874
22456
 
21875
22457
  export declare const NiceTutorialProvider: default_2.FC<NiceTutorialProviderProps>;
@@ -21880,6 +22462,10 @@ export declare interface NiceTutorialProviderProps {
21880
22462
  children: default_2.ReactNode;
21881
22463
  }
21882
22464
 
22465
+ export { NiceTutorialsContextValue }
22466
+
22467
+ export { NiceTutorialsProvider }
22468
+
21883
22469
  /** A single step in a {@link NiceTutorial} flow. */
21884
22470
  export declare interface NiceTutorialStep {
21885
22471
  /** CSS selector or ref-based query to find the target element */
@@ -21910,6 +22496,8 @@ export declare interface NiceTutorialStep {
21910
22496
  disableInteraction?: boolean;
21911
22497
  }
21912
22498
 
22499
+ export { NiceTutorialStepDef }
22500
+
21913
22501
  /** Single type mapping entry. */
21914
22502
  export declare interface NiceTypeMappingEntry {
21915
22503
  /** Universal control type key (used in JSON schema). */
@@ -22263,7 +22851,7 @@ export declare interface NiceVectorMapProps extends NiceStandardProps {
22263
22851
  showTooltip?: boolean;
22264
22852
  }
22265
22853
 
22266
- export declare function NiceVideoAnnotator({ video: initialVideo, annotations: initialAnnotations, markers: initialMarkers, transcription: initialTranscription, speakers: initialSpeakers, currentUser, enableSpatialAnnotations, enableTranscription, enableComments, enableReview: _enableReview, autoSaveInterval: _autoSaveInterval, onAnnotationsChange, onMarkersChange, onTranscriptionChange: _onTranscriptionChange, onAutoSave: _onAutoSave, onFrameExtracted, renderAnnotation, editorSize, className, style, children, ...baseProps }: NiceVideoAnnotatorProps): JSX_2.Element;
22854
+ export declare function NiceVideoAnnotator({ video: initialVideo, annotations: initialAnnotations, markers: initialMarkers, transcription: initialTranscription, speakers: initialSpeakers, currentUser, enableSpatialAnnotations, enableTranscription, enableComments, enableReview: _enableReview, autoSaveInterval: _autoSaveInterval, onAnnotationsChange, onMarkersChange, onTranscriptionChange: _onTranscriptionChange, onAutoSave: _onAutoSave, onFrameExtracted, renderAnnotation, editorSize, className, style, children, ...baseProps }: NiceVideoAnnotatorProps): default_2.JSX.Element;
22267
22855
 
22268
22856
  export declare interface NiceVideoAnnotatorProps extends NiceBaseProps {
22269
22857
  /** Editor layout size (minimal / compact / standard / fullscreen). */
@@ -22336,6 +22924,8 @@ export declare interface NiceVideoEditorProps extends NiceBaseProps {
22336
22924
  onAutoSave?: (project: VideoProject) => void;
22337
22925
  /** Read-only mode */
22338
22926
  readOnly?: boolean;
22927
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
22928
+ tutorial?: NiceComponentTutorial;
22339
22929
  }
22340
22930
 
22341
22931
  export declare type NiceViewAccessLevel = 'hidden' | 'readonly' | 'editable';
@@ -22361,6 +22951,10 @@ export declare interface NiceViewAction {
22361
22951
  dataSourceKey?: string;
22362
22952
  /** For custom: handler name registered in the view registry */
22363
22953
  handler?: string;
22954
+ /** For script: inline source executed by the host (never by the UI). */
22955
+ script?: string;
22956
+ /** For script: language of {@link script}. */
22957
+ language?: 'js' | 'csharp';
22364
22958
  /** Additional payload */
22365
22959
  params?: Record<string, unknown>;
22366
22960
  /** Confirmation dialog text (if set, action requires user confirmation) */
@@ -22371,7 +22965,7 @@ export declare interface NiceViewAction {
22371
22965
  errorMessage?: string;
22372
22966
  }
22373
22967
 
22374
- export declare type NiceViewActionType = 'navigate' | 'apiCall' | 'setField' | 'openDialog' | 'closeDialog' | 'submit' | 'refresh' | 'custom';
22968
+ export declare type NiceViewActionType = 'navigate' | 'apiCall' | 'setField' | 'openDialog' | 'closeDialog' | 'submit' | 'refresh' | 'script' | 'custom';
22375
22969
 
22376
22970
  /** Binding expression that maps a component prop to a data field or expression. */
22377
22971
  export declare interface NiceViewBinding {
@@ -22402,7 +22996,7 @@ export declare class NiceViewCache {
22402
22996
  /** Get a cached view definition. Returns undefined if not found or expired. */
22403
22997
  get(module: string, viewId: string): Promise<NiceViewCacheEntry | undefined>;
22404
22998
  /** Store a view definition in the cache. */
22405
- set(module: string, viewId: string, view: NiceViewDefinitionV2, etag?: string): Promise<void>;
22999
+ set(module: string, viewId: string, view: NiceViewDefinition, etag?: string): Promise<void>;
22406
23000
  /** Remove a specific view from cache. */
22407
23001
  remove(module: string, viewId: string): Promise<void>;
22408
23002
  /** Clear all cached views. */
@@ -22428,7 +23022,7 @@ export declare interface NiceViewCacheConfig {
22428
23022
  /** Cached view entry with metadata. */
22429
23023
  export declare interface NiceViewCacheEntry {
22430
23024
  /** View definition */
22431
- view: NiceViewDefinitionV2;
23025
+ view: NiceViewDefinition;
22432
23026
  /** ETag for conditional refresh */
22433
23027
  etag?: string;
22434
23028
  /** Timestamp when cached (ms since epoch) */
@@ -22440,7 +23034,7 @@ export declare interface NiceViewCacheEntry {
22440
23034
  }
22441
23035
 
22442
23036
  /** Extended cell definition with data binding, actions, and permissions. */
22443
- export declare interface NiceViewCellV2 {
23037
+ export declare interface NiceViewCell {
22444
23038
  id: string;
22445
23039
  /** Component type key (maps to NiceViewRegistry) */
22446
23040
  controlType: string;
@@ -22507,7 +23101,7 @@ export declare interface NiceViewDataStore {
22507
23101
  }
22508
23102
 
22509
23103
  /** Full view definition v2 with data binding, actions, and permissions. */
22510
- export declare interface NiceViewDefinitionV2 {
23104
+ export declare interface NiceViewDefinition {
22511
23105
  /** Unique view identifier */
22512
23106
  id: string;
22513
23107
  /** Display name */
@@ -22519,7 +23113,7 @@ export declare interface NiceViewDefinitionV2 {
22519
23113
  /** Grid columns count */
22520
23114
  columns?: number;
22521
23115
  /** Top-level rows */
22522
- rows?: NiceViewRowV2[];
23116
+ rows?: NiceViewRow[];
22523
23117
  /** Optional nested container layout (replaces rows for complex layouts) */
22524
23118
  container?: NiceViewContainer;
22525
23119
  /** Alias for `container` — convenience root layout node. */
@@ -22568,6 +23162,25 @@ export declare interface NiceViewDiffResult {
22568
23162
  summary: string[];
22569
23163
  }
22570
23164
 
23165
+ export declare const NiceViewEditor: ForwardRefExoticComponent<NiceViewEditorProps & RefAttributes<HTMLDivElement>>;
23166
+
23167
+ export declare interface NiceViewEditorProps extends NiceStandardProps {
23168
+ /** The view to edit (controlled). */
23169
+ value?: NiceViewDefinition;
23170
+ /** Change callback with the full updated view. */
23171
+ onChange?: (view: NiceViewDefinition) => void;
23172
+ /** Control registry for the live preview. Default `defaultViewRegistry`. */
23173
+ registry?: NiceViewRegistry;
23174
+ /** Entities available for "New from entity" + binding field hints. */
23175
+ entities?: NiceEntityLike[];
23176
+ /** Save callback (shows a Save button when provided). */
23177
+ onSave?: (view: NiceViewDefinition) => void;
23178
+ /** Editor height. Default `560`. */
23179
+ height?: number | string;
23180
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
23181
+ tutorial?: NiceComponentTutorial;
23182
+ }
23183
+
22571
23184
  /** Event-to-action mapping on a cell. */
22572
23185
  export declare interface NiceViewEventBinding {
22573
23186
  /** DOM/component event name (e.g. "onClick", "onValueChange", "onRowClick") */
@@ -22627,7 +23240,7 @@ export declare class NiceViewFetchError extends Error {
22627
23240
  /** Result of a view fetch operation. */
22628
23241
  export declare interface NiceViewFetchResult {
22629
23242
  /** The fetched view definition (undefined if 304 Not Modified) */
22630
- view?: NiceViewDefinitionV2;
23243
+ view?: NiceViewDefinition;
22631
23244
  /** HTTP status code */
22632
23245
  status: number;
22633
23246
  /** ETag from response (for conditional requests) */
@@ -22739,15 +23352,11 @@ export declare class NiceViewRegistry {
22739
23352
  clear(): void;
22740
23353
  }
22741
23354
 
22742
- export declare const NiceViewRenderer: ForwardRefExoticComponent<NiceViewRendererV2Props & RefAttributes<HTMLDivElement>>;
22743
-
22744
- export declare type NiceViewRendererProps = NiceViewRendererV2Props;
23355
+ export declare const NiceViewRenderer: default_2.ForwardRefExoticComponent<NiceViewRendererProps & default_2.RefAttributes<HTMLDivElement>>;
22745
23356
 
22746
- export declare const NiceViewRendererV2: default_2.ForwardRefExoticComponent<NiceViewRendererV2Props & default_2.RefAttributes<HTMLDivElement>>;
22747
-
22748
- export declare interface NiceViewRendererV2Props extends NiceBaseProps {
23357
+ export declare interface NiceViewRendererProps extends NiceBaseProps {
22749
23358
  /** The v2 view definition to render. */
22750
- view: NiceViewDefinitionV2;
23359
+ view: NiceViewDefinition;
22751
23360
  /** Optional registry (uses defaultViewRegistry if omitted). */
22752
23361
  registry?: NiceViewRegistry;
22753
23362
  /** Data store providing bound data. */
@@ -22768,12 +23377,22 @@ export declare interface NiceViewRendererV2Props extends NiceBaseProps {
22768
23377
  }>;
22769
23378
  /** Record index for list/detail contexts. */
22770
23379
  recordIndex?: number;
23380
+ /**
23381
+ * Execute an inline V2 `script` action (the `'script'` action type). The renderer never
23382
+ * evaluates script source itself — supply a host bridge here (e.g. a sandbox, or a
23383
+ * Jint/Roslyn test endpoint). When omitted, `script` actions are skipped with a warning.
23384
+ */
23385
+ onRunScript?: (script: string, meta: {
23386
+ language: 'js' | 'csharp';
23387
+ action: NiceViewAction;
23388
+ context: NiceActionContext;
23389
+ }) => void | Promise<void>;
22771
23390
  }
22772
23391
 
22773
23392
  /** Row in a v2 layout. */
22774
- export declare interface NiceViewRowV2 {
23393
+ export declare interface NiceViewRow {
22775
23394
  id: string;
22776
- cells: NiceViewCellV2[];
23395
+ cells: NiceViewCell[];
22777
23396
  height?: string;
22778
23397
  /** Visibility expression */
22779
23398
  visibleWhen?: string;
@@ -22787,7 +23406,7 @@ export declare interface NiceViewSection {
22787
23406
  label?: string;
22788
23407
  icon?: string;
22789
23408
  /** Rows inside this section */
22790
- rows: NiceViewRowV2[];
23409
+ rows: NiceViewRow[];
22791
23410
  /** Nested container (for deep layouts) */
22792
23411
  container?: NiceViewContainer;
22793
23412
  }
@@ -22813,7 +23432,7 @@ export declare interface NiceViewToolbarItem {
22813
23432
  items?: Omit<NiceViewToolbarItem, 'items'>[];
22814
23433
  }
22815
23434
 
22816
- export declare type NiceViewUpdateListener = (view: NiceViewDefinitionV2) => void;
23435
+ export declare type NiceViewUpdateListener = (view: NiceViewDefinition) => void;
22817
23436
 
22818
23437
  export declare const NiceVirtualScroller: <T>(props: NiceVirtualScrollerProps<T> & {
22819
23438
  ref?: default_2.ForwardedRef<HTMLDivElement>;
@@ -23173,9 +23792,9 @@ export declare interface NiceWorkflowDefinition {
23173
23792
  bpmn?: BPMNProcessDefinition;
23174
23793
  }
23175
23794
 
23176
- export declare const NiceWorkflowDesignerV2: default_2.FC<NiceWorkflowDesignerV2Props>;
23795
+ export declare const NiceWorkflowDesigner: default_2.FC<NiceWorkflowDesignerProps>;
23177
23796
 
23178
- export declare interface NiceWorkflowDesignerV2Props extends NiceBaseProps {
23797
+ export declare interface NiceWorkflowDesignerProps extends NiceBaseProps {
23179
23798
  workflow?: NiceWorkflowDefinition;
23180
23799
  /** Convenience: flat node list mapped into `workflow.states` when `workflow` is omitted. */
23181
23800
  nodes?: Array<{
@@ -23209,6 +23828,8 @@ export declare interface NiceWorkflowDesignerV2Props extends NiceBaseProps {
23209
23828
  showValidation?: boolean;
23210
23829
  onTest?: (workflow: NiceWorkflowDefinition) => void;
23211
23830
  onPublish?: (workflow: NiceWorkflowDefinition) => void;
23831
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
23832
+ tutorial?: NiceComponentTutorial;
23212
23833
  }
23213
23834
 
23214
23835
  export declare interface NiceWorkflowState {
@@ -24178,6 +24799,60 @@ export declare interface QualityPresetDefinition {
24178
24799
  profile: Partial<TranscodeProfile>;
24179
24800
  }
24180
24801
 
24802
+ declare interface QueryColumn {
24803
+ name: string;
24804
+ dataType: string;
24805
+ isPrimaryKey?: boolean;
24806
+ isForeignKey?: boolean;
24807
+ selected: boolean;
24808
+ alias?: string;
24809
+ aggregate?: AggregateFunction_2;
24810
+ }
24811
+
24812
+ declare interface QueryCondition {
24813
+ id: string;
24814
+ tableId: string;
24815
+ column: string;
24816
+ operator: ConditionOperator;
24817
+ value: string;
24818
+ value2?: string;
24819
+ logicalOperator?: 'AND' | 'OR';
24820
+ groupId?: string;
24821
+ }
24822
+
24823
+ declare interface QueryGroupBy {
24824
+ tableId: string;
24825
+ column: string;
24826
+ }
24827
+
24828
+ declare interface QueryJoin {
24829
+ id: string;
24830
+ type: JoinType;
24831
+ leftTableId: string;
24832
+ leftColumn: string;
24833
+ rightTableId: string;
24834
+ rightColumn: string;
24835
+ }
24836
+
24837
+ declare interface QuerySort {
24838
+ id: string;
24839
+ tableId: string;
24840
+ column: string;
24841
+ direction: SortDirection_2;
24842
+ }
24843
+
24844
+ declare interface QueryTable {
24845
+ id: string;
24846
+ name: string;
24847
+ alias?: string;
24848
+ schema?: string;
24849
+ position: {
24850
+ x: number;
24851
+ y: number;
24852
+ };
24853
+ columns: QueryColumn[];
24854
+ }
24855
+
24181
24856
  /** Quest reward definition. */
24182
24857
  export declare interface QuestReward {
24183
24858
  type: 'xp' | 'badge' | 'item' | 'currency' | 'custom';
@@ -24576,6 +25251,8 @@ export declare interface ReportBuilderProps {
24576
25251
  fields?: string[];
24577
25252
  }>;
24578
25253
  className?: string;
25254
+ /** Optional "?" guided tour. Off by default; `true` uses the built-in tour. */
25255
+ tutorial?: NiceComponentTutorial;
24579
25256
  }
24580
25257
 
24581
25258
  export declare interface ReportData {
@@ -24649,8 +25326,12 @@ export { resolveDisplayStyleConfig }
24649
25326
  /** Resolve permissions for a set of user roles. */
24650
25327
  export declare function resolvePermissions(userRoleIds: string[], policy: NiceRbacPolicy): NiceResolvedPermissions;
24651
25328
 
25329
+ export { resolveStepsI18n }
25330
+
24652
25331
  export { resolveTracelessPolicy }
24653
25332
 
25333
+ export { resolveTutorial }
25334
+
24654
25335
  export declare interface Resource {
24655
25336
  id: string;
24656
25337
  name: string;
@@ -25124,7 +25805,7 @@ export declare function serializeRbacPolicy(policy: NiceRbacPolicy): string;
25124
25805
 
25125
25806
  export { serializeTheme }
25126
25807
 
25127
- export declare function serializeViewV2(view: NiceViewDefinitionV2): string;
25808
+ export declare function serializeView(view: NiceViewDefinition): string;
25128
25809
 
25129
25810
  /**
25130
25811
  * useServiceWorker — Service Worker registration and update management
@@ -25370,6 +26051,7 @@ export declare interface SidebarNavHelpers {
25370
26051
  removeFavorite: (id: string) => void;
25371
26052
  setMaxDepth: (mode: SidebarNavMode, depth: number) => void;
25372
26053
  toggleCollapse: (nodeId: string) => void;
26054
+ setCollapsed: (ids: string[], collapsed: boolean) => void;
25373
26055
  setAutoExpand: (v: boolean) => void;
25374
26056
  /** Set the user's preferred left-click behaviour for sidebar items. */
25375
26057
  setLeftClickBehavior: (v: 'focus-existing' | 'open-new') => void;
@@ -25656,6 +26338,10 @@ export declare interface SnapshotSchedule {
25656
26338
  /** Sort direction for grid columns (`null` = unsorted). */
25657
26339
  declare type SortDirection = 'asc' | 'desc' | null;
25658
26340
 
26341
+ declare type SortDirection_2 = 'ASC' | 'DESC';
26342
+
26343
+ export { sortModelToOrderBy }
26344
+
25659
26345
  /** Sort option */
25660
26346
  export declare type SortOption = 'name-asc' | 'name-desc' | 'date-asc' | 'date-desc' | 'size-asc' | 'size-desc' | 'relevance';
25661
26347
 
@@ -27557,6 +28243,10 @@ export { useNiceTranslation }
27557
28243
 
27558
28244
  export declare function useNiceTutorial(): TutorialContextValue;
27559
28245
 
28246
+ export { useNiceTutorials }
28247
+
28248
+ export { useNiceTutorialsEnabled }
28249
+
27560
28250
  export declare const useNiceValidation: () => ValidationContextValue | null;
27561
28251
 
27562
28252
  /**
@@ -27978,13 +28668,13 @@ export declare function validateModuleManifest(m: NiceModuleManifest): string[];
27978
28668
  export declare function validateRbacPolicy(policy: NiceRbacPolicy): string[];
27979
28669
 
27980
28670
  /** Validate a v2 view definition, returning an array of error messages. */
27981
- export declare function validateViewDefinitionV2(view: NiceViewDefinitionV2): string[];
28671
+ export declare function validateViewDefinition(view: NiceViewDefinition): string[];
27982
28672
 
27983
28673
  /** Full validation of a view definition before deploy. */
27984
- export declare function validateViewForDeploy(view: NiceViewDefinitionV2, config?: NiceValidatorConfig): NiceValidationReport;
28674
+ export declare function validateViewForDeploy(view: NiceViewDefinition, config?: NiceValidatorConfig): NiceValidationReport;
27985
28675
 
27986
28676
  /** Batch-validate multiple views. */
27987
- export declare function validateViewsBatch(views: NiceViewDefinitionV2[], config?: NiceValidatorConfig): NiceValidationReport[];
28677
+ export declare function validateViewsBatch(views: NiceViewDefinition[], config?: NiceValidatorConfig): NiceValidationReport[];
27988
28678
 
27989
28679
  declare interface ValidationContextValue {
27990
28680
  register: (name: string, validate: () => NiceValidationResult) => void;