@gnggln/ng-ui-system 1.0.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/gnggln-ng-ui-system.mjs +5 -0
- package/esm2022/lib/components/accordion/accordion.component.mjs +353 -0
- package/esm2022/lib/components/accordion/accordion.types.mjs +6 -0
- package/esm2022/lib/components/accordion/index.mjs +2 -0
- package/esm2022/lib/components/base-layout/base-layout.component.mjs +218 -0
- package/esm2022/lib/components/base-layout/base-layout.types.mjs +6 -0
- package/esm2022/lib/components/base-layout/index.mjs +14 -0
- package/esm2022/lib/components/button/button-area.component.mjs +196 -0
- package/esm2022/lib/components/button/button.component.mjs +164 -0
- package/esm2022/lib/components/button/button.types.mjs +6 -0
- package/esm2022/lib/components/button/index.mjs +16 -0
- package/esm2022/lib/components/crud-table/crud-table.component.mjs +789 -0
- package/esm2022/lib/components/crud-table/crud-table.types.mjs +6 -0
- package/esm2022/lib/components/crud-table/index.mjs +16 -0
- package/esm2022/lib/components/form-builder/adapters/it-date-adapter.mjs +82 -0
- package/esm2022/lib/components/form-builder/directives/currency-input.directive.mjs +184 -0
- package/esm2022/lib/components/form-builder/form-builder.component.mjs +824 -0
- package/esm2022/lib/components/form-builder/form-wizard.component.mjs +510 -0
- package/esm2022/lib/components/form-builder/index.mjs +19 -0
- package/esm2022/lib/components/form-builder/services/form-condition.service.mjs +132 -0
- package/esm2022/lib/components/form-builder/services/form-validation.service.mjs +381 -0
- package/esm2022/lib/components/form-builder/services/location.service.mjs +140 -0
- package/esm2022/lib/components/form-builder/services/wizard-sync.service.mjs +84 -0
- package/esm2022/lib/components/form-builder/sub-components/error-summary/form-error-summary.component.mjs +161 -0
- package/esm2022/lib/components/form-builder/sub-components/file-input/file-input.component.mjs +310 -0
- package/esm2022/lib/components/form-builder/sub-components/specifica-territoriale/specifica-territoriale.component.mjs +648 -0
- package/esm2022/lib/components/form-builder/sub-components/table-territoriale/table-territoriale.component.mjs +432 -0
- package/esm2022/lib/components/form-builder/types/condition.types.mjs +6 -0
- package/esm2022/lib/components/form-builder/types/field.types.mjs +6 -0
- package/esm2022/lib/components/form-builder/types/index.mjs +2 -0
- package/esm2022/lib/components/form-builder/types/schema.types.mjs +6 -0
- package/esm2022/lib/components/form-builder/types/territoriale.types.mjs +6 -0
- package/esm2022/lib/components/form-builder/types/validation.types.mjs +6 -0
- package/esm2022/lib/components/form-builder-editor/form-builder-editor.component.mjs +730 -0
- package/esm2022/lib/components/form-builder-editor/form-builder-editor.service.mjs +56 -0
- package/esm2022/lib/components/form-builder-editor/index.mjs +21 -0
- package/esm2022/lib/components/form-builder-editor/services/editor-persistence.service.mjs +190 -0
- package/esm2022/lib/components/form-builder-editor/services/editor-state.service.mjs +324 -0
- package/esm2022/lib/components/form-builder-editor/services/field-factory.service.mjs +188 -0
- package/esm2022/lib/components/form-builder-editor/sub-components/condition-editor/condition-editor.component.mjs +667 -0
- package/esm2022/lib/components/form-builder-editor/sub-components/editor-toolbar/editor-toolbar.component.mjs +317 -0
- package/esm2022/lib/components/form-builder-editor/sub-components/field-config-panel/field-config-panel.component.mjs +611 -0
- package/esm2022/lib/components/form-builder-editor/sub-components/field-palette/field-palette.component.mjs +267 -0
- package/esm2022/lib/components/form-builder-editor/sub-components/form-values-panel/form-values-panel.component.mjs +276 -0
- package/esm2022/lib/components/form-builder-editor/sub-components/options-editor/options-editor.component.mjs +323 -0
- package/esm2022/lib/components/form-builder-editor/sub-components/preview-container/preview-container.component.mjs +238 -0
- package/esm2022/lib/components/form-builder-editor/sub-components/section-editor/section-editor.component.mjs +472 -0
- package/esm2022/lib/components/form-builder-editor/sub-components/validation-editor/validation-editor.component.mjs +473 -0
- package/esm2022/lib/components/form-builder-editor/types/editor.types.mjs +6 -0
- package/esm2022/lib/components/layout-builder/index.mjs +18 -0
- package/esm2022/lib/components/layout-builder/layout-builder.component.mjs +1730 -0
- package/esm2022/lib/components/layout-builder/layout-builder.types.mjs +9 -0
- package/esm2022/lib/components/layout-builder/layout.service.mjs +239 -0
- package/esm2022/lib/components/modal/confirm-dialog.component.mjs +151 -0
- package/esm2022/lib/components/modal/index.mjs +4 -0
- package/esm2022/lib/components/modal/modal.component.mjs +139 -0
- package/esm2022/lib/components/modal/modal.service.mjs +194 -0
- package/esm2022/lib/components/modal/modal.types.mjs +6 -0
- package/esm2022/lib/components/page-header/breadcrumb.service.mjs +242 -0
- package/esm2022/lib/components/page-header/index.mjs +20 -0
- package/esm2022/lib/components/page-header/page-header.component.mjs +243 -0
- package/esm2022/lib/components/page-header/page-header.types.mjs +21 -0
- package/esm2022/lib/components/table/index.mjs +2 -0
- package/esm2022/lib/components/table/paginated-table.component.mjs +407 -0
- package/esm2022/lib/components/table/table.types.mjs +6 -0
- package/esm2022/lib/core/types/index.mjs +6 -0
- package/esm2022/lib/core/utils/index.mjs +53 -0
- package/esm2022/lib/sources/location-data.opt.json +8942 -0
- package/esm2022/lib/sources/nazioni.opt.json +215 -0
- package/esm2022/public-api.mjs +34 -0
- package/fesm2022/gnggln-ng-ui-system.mjs +55752 -0
- package/fesm2022/gnggln-ng-ui-system.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/components/accordion/accordion.component.d.ts +118 -0
- package/lib/components/accordion/accordion.types.d.ts +62 -0
- package/lib/components/accordion/index.d.ts +2 -0
- package/lib/components/base-layout/base-layout.component.d.ts +83 -0
- package/lib/components/base-layout/base-layout.types.d.ts +26 -0
- package/lib/components/base-layout/index.d.ts +13 -0
- package/lib/components/button/button-area.component.d.ts +88 -0
- package/lib/components/button/button.component.d.ts +55 -0
- package/lib/components/button/button.types.d.ts +70 -0
- package/lib/components/button/index.d.ts +15 -0
- package/lib/components/crud-table/crud-table.component.d.ts +143 -0
- package/lib/components/crud-table/crud-table.types.d.ts +207 -0
- package/lib/components/crud-table/index.d.ts +15 -0
- package/lib/components/form-builder/adapters/it-date-adapter.d.ts +32 -0
- package/lib/components/form-builder/directives/currency-input.directive.d.ts +48 -0
- package/lib/components/form-builder/form-builder.component.d.ts +183 -0
- package/lib/components/form-builder/form-wizard.component.d.ts +87 -0
- package/lib/components/form-builder/index.d.ts +13 -0
- package/lib/components/form-builder/services/form-condition.service.d.ts +46 -0
- package/lib/components/form-builder/services/form-validation.service.d.ts +63 -0
- package/lib/components/form-builder/services/location.service.d.ts +83 -0
- package/lib/components/form-builder/services/wizard-sync.service.d.ts +63 -0
- package/lib/components/form-builder/sub-components/error-summary/form-error-summary.component.d.ts +28 -0
- package/lib/components/form-builder/sub-components/file-input/file-input.component.d.ts +41 -0
- package/lib/components/form-builder/sub-components/specifica-territoriale/specifica-territoriale.component.d.ts +145 -0
- package/lib/components/form-builder/sub-components/table-territoriale/table-territoriale.component.d.ts +108 -0
- package/lib/components/form-builder/types/condition.types.d.ts +51 -0
- package/lib/components/form-builder/types/field.types.d.ts +288 -0
- package/lib/components/form-builder/types/index.d.ts +5 -0
- package/lib/components/form-builder/types/schema.types.d.ts +227 -0
- package/lib/components/form-builder/types/territoriale.types.d.ts +170 -0
- package/lib/components/form-builder/types/validation.types.d.ts +174 -0
- package/lib/components/form-builder-editor/form-builder-editor.component.d.ts +117 -0
- package/lib/components/form-builder-editor/form-builder-editor.service.d.ts +38 -0
- package/lib/components/form-builder-editor/index.d.ts +15 -0
- package/lib/components/form-builder-editor/services/editor-persistence.service.d.ts +42 -0
- package/lib/components/form-builder-editor/services/editor-state.service.d.ts +66 -0
- package/lib/components/form-builder-editor/services/field-factory.service.d.ts +28 -0
- package/lib/components/form-builder-editor/sub-components/condition-editor/condition-editor.component.d.ts +139 -0
- package/lib/components/form-builder-editor/sub-components/editor-toolbar/editor-toolbar.component.d.ts +43 -0
- package/lib/components/form-builder-editor/sub-components/field-config-panel/field-config-panel.component.d.ts +83 -0
- package/lib/components/form-builder-editor/sub-components/field-palette/field-palette.component.d.ts +40 -0
- package/lib/components/form-builder-editor/sub-components/form-values-panel/form-values-panel.component.d.ts +51 -0
- package/lib/components/form-builder-editor/sub-components/options-editor/options-editor.component.d.ts +63 -0
- package/lib/components/form-builder-editor/sub-components/preview-container/preview-container.component.d.ts +68 -0
- package/lib/components/form-builder-editor/sub-components/section-editor/section-editor.component.d.ts +82 -0
- package/lib/components/form-builder-editor/sub-components/validation-editor/validation-editor.component.d.ts +112 -0
- package/lib/components/form-builder-editor/types/editor.types.d.ts +124 -0
- package/lib/components/layout-builder/index.d.ts +16 -0
- package/lib/components/layout-builder/layout-builder.component.d.ts +85 -0
- package/lib/components/layout-builder/layout-builder.types.d.ts +436 -0
- package/lib/components/layout-builder/layout.service.d.ts +100 -0
- package/lib/components/modal/confirm-dialog.component.d.ts +46 -0
- package/lib/components/modal/index.d.ts +4 -0
- package/lib/components/modal/modal.component.d.ts +44 -0
- package/lib/components/modal/modal.service.d.ts +93 -0
- package/lib/components/modal/modal.types.d.ts +110 -0
- package/lib/components/page-header/breadcrumb.service.d.ts +96 -0
- package/lib/components/page-header/index.d.ts +16 -0
- package/lib/components/page-header/page-header.component.d.ts +59 -0
- package/lib/components/page-header/page-header.types.d.ts +96 -0
- package/lib/components/table/index.d.ts +2 -0
- package/lib/components/table/paginated-table.component.d.ts +85 -0
- package/lib/components/table/table.types.d.ts +81 -0
- package/lib/core/types/index.d.ts +57 -0
- package/lib/core/utils/index.d.ts +29 -0
- package/package.json +44 -0
- package/public-api.d.ts +22 -0
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared types for ng-ui-system components.
|
|
3
|
+
* These types are used across multiple components to ensure consistency.
|
|
4
|
+
*/
|
|
5
|
+
/** Standard size variants used across components. */
|
|
6
|
+
export type UiSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
|
|
7
|
+
/** Visual style variants for components. */
|
|
8
|
+
export type UiVariant = 'primary' | 'accent' | 'warn' | 'neutral' | 'ghost' | 'outline';
|
|
9
|
+
/** Semantic color palette tokens. */
|
|
10
|
+
export type UiColor = 'primary' | 'accent' | 'warn' | 'success' | 'info' | 'neutral';
|
|
11
|
+
/** Layout direction. */
|
|
12
|
+
export type UiDirection = 'horizontal' | 'vertical';
|
|
13
|
+
/** Horizontal alignment. */
|
|
14
|
+
export type UiAlign = 'start' | 'center' | 'end' | 'stretch';
|
|
15
|
+
/** Component density options for compact or spacious layouts. */
|
|
16
|
+
export type UiDensity = 'compact' | 'default' | 'comfortable';
|
|
17
|
+
/**
|
|
18
|
+
* Common Lucide icon names with autocomplete support.
|
|
19
|
+
* Accepts any valid Lucide icon name as a string.
|
|
20
|
+
*
|
|
21
|
+
* Provides IntelliSense for the most frequently used enterprise icons.
|
|
22
|
+
* For the full icon catalogue, visit https://lucide.dev/icons
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* ```typescript
|
|
26
|
+
* const myIcon: UiIconName = 'arrow-right'; // autocomplete ✓
|
|
27
|
+
* const custom: UiIconName = 'my-custom-icon'; // still valid
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
export type UiIconName = 'arrow-right' | 'arrow-left' | 'arrow-up' | 'arrow-down' | 'chevron-right' | 'chevron-left' | 'chevron-up' | 'chevron-down' | 'external-link' | 'corner-down-left' | 'corner-down-right' | 'check' | 'x' | 'plus' | 'minus' | 'search' | 'refresh-cw' | 'download' | 'upload' | 'save' | 'trash-2' | 'pencil' | 'copy' | 'clipboard' | 'share-2' | 'send' | 'log-in' | 'log-out' | 'mail' | 'message-circle' | 'phone' | 'bell' | 'user' | 'users' | 'lock' | 'unlock' | 'key' | 'shield' | 'file' | 'file-text' | 'file-spreadsheet' | 'file-archive' | 'folder' | 'image' | 'camera' | 'paperclip' | 'info' | 'alert-triangle' | 'alert-circle' | 'check-circle' | 'x-circle' | 'help-circle' | 'loader-2' | 'menu' | 'more-horizontal' | 'more-vertical' | 'grid' | 'list' | 'filter' | 'sliders' | 'columns' | 'maximize-2' | 'minimize-2' | 'home' | 'settings' | 'star' | 'heart' | 'bookmark' | 'calendar' | 'clock' | 'map-pin' | 'eye' | 'eye-off' | 'sun' | 'moon' | 'monitor' | (string & Record<never, never>);
|
|
31
|
+
/** Status values used for feedback components (badges, alerts, indicators). */
|
|
32
|
+
export type UiStatus = 'idle' | 'loading' | 'success' | 'error' | 'warning' | 'info';
|
|
33
|
+
/**
|
|
34
|
+
* Generic key-value pair used in select options, dropdowns, etc.
|
|
35
|
+
* @template T - The type of the value.
|
|
36
|
+
*/
|
|
37
|
+
export interface UiOption<T = string> {
|
|
38
|
+
/** The display label. */
|
|
39
|
+
label: string;
|
|
40
|
+
/** The underlying value. */
|
|
41
|
+
value: T;
|
|
42
|
+
/** Whether this option is disabled. */
|
|
43
|
+
disabled?: boolean;
|
|
44
|
+
/** Optional icon name (Lucide icon). */
|
|
45
|
+
icon?: UiIconName;
|
|
46
|
+
/** Optional grouping key for grouped selects. */
|
|
47
|
+
group?: string;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Result wrapper for async operations.
|
|
51
|
+
* @template T - The type of the data payload.
|
|
52
|
+
*/
|
|
53
|
+
export interface UiAsyncState<T = unknown> {
|
|
54
|
+
status: UiStatus;
|
|
55
|
+
data: T | null;
|
|
56
|
+
error: string | null;
|
|
57
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared utility functions for ng-ui-system components.
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Generates a unique ID with an optional prefix.
|
|
6
|
+
* Uses crypto.randomUUID() when available for better randomness, falls back to crypto.getRandomValues().
|
|
7
|
+
* Useful for linking labels to form controls, ARIA attributes, etc.
|
|
8
|
+
*
|
|
9
|
+
* @param prefix - Optional prefix for the generated ID.
|
|
10
|
+
* @returns A unique string ID.
|
|
11
|
+
*/
|
|
12
|
+
export declare function uiUniqueId(prefix?: string): string;
|
|
13
|
+
/**
|
|
14
|
+
* Coerces a value to a boolean.
|
|
15
|
+
* Useful for handling string boolean attributes in templates.
|
|
16
|
+
*
|
|
17
|
+
* @param value - The value to coerce.
|
|
18
|
+
* @returns The boolean representation.
|
|
19
|
+
*/
|
|
20
|
+
export declare function uiCoerceBoolean(value: unknown): boolean;
|
|
21
|
+
/**
|
|
22
|
+
* Clamps a number between a minimum and maximum value.
|
|
23
|
+
*
|
|
24
|
+
* @param value - The value to clamp.
|
|
25
|
+
* @param min - The minimum allowed value.
|
|
26
|
+
* @param max - The maximum allowed value.
|
|
27
|
+
* @returns The clamped value.
|
|
28
|
+
*/
|
|
29
|
+
export declare function uiClamp(value: number, min: number, max: number): number;
|
package/package.json
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@gnggln/ng-ui-system",
|
|
3
|
+
"version": "1.0.0-alpha.0",
|
|
4
|
+
"description": "Enterprise-grade Angular standalone component library with design tokens, a11y, and full TypeScript support.",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"angular",
|
|
7
|
+
"components",
|
|
8
|
+
"ui",
|
|
9
|
+
"library",
|
|
10
|
+
"standalone",
|
|
11
|
+
"material",
|
|
12
|
+
"enterprise",
|
|
13
|
+
"design-tokens",
|
|
14
|
+
"a11y"
|
|
15
|
+
],
|
|
16
|
+
"license": "MIT",
|
|
17
|
+
"peerDependencies": {
|
|
18
|
+
"@angular/animations": "^17.0.0 || ^18.0.0 || ^19.0.0 || ^20.0.0",
|
|
19
|
+
"@angular/cdk": "^17.0.0 || ^18.0.0 || ^19.0.0 || ^20.0.0",
|
|
20
|
+
"@angular/common": "^17.0.0 || ^18.0.0 || ^19.0.0 || ^20.0.0",
|
|
21
|
+
"@angular/core": "^17.0.0 || ^18.0.0 || ^19.0.0 || ^20.0.0",
|
|
22
|
+
"@angular/forms": "^17.0.0 || ^18.0.0 || ^19.0.0 || ^20.0.0",
|
|
23
|
+
"@angular/material": "^17.0.0 || ^18.0.0 || ^19.0.0 || ^20.0.0",
|
|
24
|
+
"lucide-angular": ">=0.300.0",
|
|
25
|
+
"date-fns": ">=3.0.0"
|
|
26
|
+
},
|
|
27
|
+
"dependencies": {
|
|
28
|
+
"tslib": "^2.6.0"
|
|
29
|
+
},
|
|
30
|
+
"sideEffects": false,
|
|
31
|
+
"module": "fesm2022/gnggln-ng-ui-system.mjs",
|
|
32
|
+
"typings": "index.d.ts",
|
|
33
|
+
"exports": {
|
|
34
|
+
"./package.json": {
|
|
35
|
+
"default": "./package.json"
|
|
36
|
+
},
|
|
37
|
+
".": {
|
|
38
|
+
"types": "./index.d.ts",
|
|
39
|
+
"esm2022": "./esm2022/gnggln-ng-ui-system.mjs",
|
|
40
|
+
"esm": "./esm2022/gnggln-ng-ui-system.mjs",
|
|
41
|
+
"default": "./fesm2022/gnggln-ng-ui-system.mjs"
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
package/public-api.d.ts
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ng-ui-system - Public API Surface
|
|
3
|
+
*
|
|
4
|
+
* Main entry point that re-exports all secondary entry points.
|
|
5
|
+
* For optimal tree-shaking, prefer importing from specific entry points:
|
|
6
|
+
* import { UiButtonComponent } from 'ng-ui-system/button';
|
|
7
|
+
*
|
|
8
|
+
* For convenience, you can also import from the main entry point:
|
|
9
|
+
* import { UiButtonComponent } from 'ng-ui-system';
|
|
10
|
+
*/
|
|
11
|
+
export * from './lib/core/types/index';
|
|
12
|
+
export * from './lib/core/utils/index';
|
|
13
|
+
export * from './lib/components/button/index';
|
|
14
|
+
export * from './lib/components/accordion/index';
|
|
15
|
+
export * from './lib/components/modal/index';
|
|
16
|
+
export * from './lib/components/table/index';
|
|
17
|
+
export * from './lib/components/crud-table/index';
|
|
18
|
+
export * from './lib/components/form-builder/index';
|
|
19
|
+
export * from './lib/components/page-header/index';
|
|
20
|
+
export * from './lib/components/base-layout/index';
|
|
21
|
+
export * from './lib/components/form-builder-editor/index';
|
|
22
|
+
export * from './lib/components/layout-builder/index';
|