@mgremy/ng-primitives 0.9.0 → 0.10.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.
@@ -0,0 +1,4 @@
1
+ # @mgremy/ng-primitives/src/lib/dialog
2
+
3
+ Secondary entry point of `@mgremy/ng-primitives`. It can be used by importing from
4
+ `@mgremy/ng-primitives/dialog`.
@@ -3,6 +3,7 @@ import { inject, input, Directive } from '@angular/core';
3
3
  import { NgpAccordionTrigger } from 'ng-primitives/accordion';
4
4
  import { NgpButton } from 'ng-primitives/button';
5
5
  import { NgpComboboxButton } from 'ng-primitives/combobox';
6
+ import { NgpDialogTrigger } from 'ng-primitives/dialog';
6
7
  import { NgpMenuTrigger } from 'ng-primitives/menu';
7
8
  import { NgpTooltipTrigger } from 'ng-primitives/tooltip';
8
9
 
@@ -12,6 +13,7 @@ const options = [
12
13
  'ngpMenuTrigger',
13
14
  'ngpTooltipTrigger',
14
15
  'ngpAccordionTrigger',
16
+ 'ngpDialogTrigger',
15
17
  ];
16
18
  const error = new Error(`MgnpButton must be used with ${options.join(' / ')}`);
17
19
  class MgnpButton {
@@ -20,6 +22,7 @@ class MgnpButton {
20
22
  ngpMenuTrigger = inject(NgpMenuTrigger, { optional: true });
21
23
  ngpTooltipTrigger = inject(NgpTooltipTrigger, { optional: true });
22
24
  ngpAccordionTrigger = inject(NgpAccordionTrigger, { optional: true });
25
+ ngpDialogTrigger = inject(NgpDialogTrigger, { optional: true });
23
26
  color = input('ui', ...(ngDevMode ? [{ debugName: "color" }] : []));
24
27
  variant = input('solid', ...(ngDevMode ? [{ debugName: "variant" }] : []));
25
28
  size = input('md', ...(ngDevMode ? [{ debugName: "size" }] : []));
@@ -28,13 +31,14 @@ class MgnpButton {
28
31
  !this.ngpComboboxButton &&
29
32
  !this.ngpMenuTrigger &&
30
33
  !this.ngpTooltipTrigger &&
31
- !this.ngpAccordionTrigger) {
34
+ !this.ngpAccordionTrigger &&
35
+ !this.ngpDialogTrigger) {
32
36
  console.error(this);
33
37
  throw error;
34
38
  }
35
39
  }
36
40
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MgnpButton, deps: [], target: i0.ɵɵFactoryTarget.Directive });
37
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.1", type: MgnpButton, isStandalone: true, selector: "[ngpButton][mgnpButton],\n [ngpComboboxButton][mgnpButton],\n [ngpMenuTrigger][mgnpButton],\n [ngpTooltipTrigger][mgnpButton],\n [ngpAccordionTrigger][mgnpButton]", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-mgnp-component": "mgnp-button" }, properties: { "attr.data-mgnp-size": "size()", "attr.data-mgnp-color": "color()", "attr.data-mgnp-variant": "variant()" } }, ngImport: i0 });
41
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.1", type: MgnpButton, isStandalone: true, selector: "[ngpButton][mgnpButton],\n [ngpComboboxButton][mgnpButton],\n [ngpMenuTrigger][mgnpButton],\n [ngpTooltipTrigger][mgnpButton],\n [ngpAccordionTrigger][mgnpButton],\n [ngpDialogTrigger][mgnpButton]", inputs: { color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-mgnp-component": "mgnp-button" }, properties: { "attr.data-mgnp-size": "size()", "attr.data-mgnp-color": "color()", "attr.data-mgnp-variant": "variant()" } }, ngImport: i0 });
38
42
  }
39
43
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MgnpButton, decorators: [{
40
44
  type: Directive,
@@ -43,7 +47,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
43
47
  [ngpComboboxButton][mgnpButton],
44
48
  [ngpMenuTrigger][mgnpButton],
45
49
  [ngpTooltipTrigger][mgnpButton],
46
- [ngpAccordionTrigger][mgnpButton]`,
50
+ [ngpAccordionTrigger][mgnpButton],
51
+ [ngpDialogTrigger][mgnpButton]`,
47
52
  standalone: true,
48
53
  host: {
49
54
  'data-mgnp-component': 'mgnp-button',
@@ -1 +1 @@
1
- {"version":3,"file":"mgremy-ng-primitives-button.mjs","sources":["../../../../libs/ng-primitives/button/src/lib/mgnp-button/mgnp-button.directive.ts","../../../../libs/ng-primitives/button/src/mgremy-ng-primitives-button.ts"],"sourcesContent":["import { PropertyType } from '@mgremy/ng-primitives';\n\nimport { Directive, inject, input } from '@angular/core';\nimport { NgpAccordionTrigger } from 'ng-primitives/accordion';\nimport { NgpButton } from 'ng-primitives/button';\nimport { NgpComboboxButton } from 'ng-primitives/combobox';\nimport { NgpMenuTrigger } from 'ng-primitives/menu';\nimport { NgpTooltipTrigger } from 'ng-primitives/tooltip';\n\nconst options = [\n 'ngpButton',\n 'ngpComboboxButton',\n 'ngpMenuTrigger',\n 'ngpTooltipTrigger',\n 'ngpAccordionTrigger',\n];\n\nconst error = new Error(`MgnpButton must be used with ${options.join(' / ')}`);\n\nexport type MgnpButtonColor = PropertyType<\n 'ui' | 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'danger'\n>;\n\nexport type MgnpButtonVariant = PropertyType<'solid' | 'outline'>;\n\nexport type MgnpButtonSize = PropertyType<'xs' | 'sm' | 'md' | 'lg' | 'xl'>;\n\n@Directive({\n selector: `[ngpButton][mgnpButton],\n [ngpComboboxButton][mgnpButton],\n [ngpMenuTrigger][mgnpButton],\n [ngpTooltipTrigger][mgnpButton],\n [ngpAccordionTrigger][mgnpButton]`,\n standalone: true,\n host: {\n 'data-mgnp-component': 'mgnp-button',\n '[attr.data-mgnp-size]': 'size()',\n '[attr.data-mgnp-color]': 'color()',\n '[attr.data-mgnp-variant]': 'variant()',\n },\n})\nexport class MgnpButton {\n protected readonly ngpButton = inject(NgpButton, { optional: true });\n protected readonly ngpComboboxButton = inject(NgpComboboxButton, { optional: true });\n protected readonly ngpMenuTrigger = inject(NgpMenuTrigger, { optional: true });\n protected readonly ngpTooltipTrigger = inject(NgpTooltipTrigger, { optional: true });\n protected readonly ngpAccordionTrigger = inject(NgpAccordionTrigger, { optional: true });\n\n readonly color = input<MgnpButtonColor>('ui');\n readonly variant = input<MgnpButtonVariant>('solid');\n readonly size = input<MgnpButtonSize>('md');\n\n constructor() {\n if (\n !this.ngpButton &&\n !this.ngpComboboxButton &&\n !this.ngpMenuTrigger &&\n !this.ngpTooltipTrigger &&\n !this.ngpAccordionTrigger\n ) {\n console.error(this);\n throw error;\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;AASA,MAAM,OAAO,GAAG;IACd,WAAW;IACX,mBAAmB;IACnB,gBAAgB;IAChB,mBAAmB;IACnB,qBAAqB;CACtB;AAED,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,CAAA,6BAAA,EAAgC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA,CAAE,CAAC;MAwBjE,UAAU,CAAA;IACF,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACjD,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACjE,cAAc,GAAG,MAAM,CAAC,cAAc,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC3D,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACjE,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAE/E,IAAA,KAAK,GAAG,KAAK,CAAkB,IAAI,iDAAC;AACpC,IAAA,OAAO,GAAG,KAAK,CAAoB,OAAO,mDAAC;AAC3C,IAAA,IAAI,GAAG,KAAK,CAAiB,IAAI,gDAAC;AAE3C,IAAA,WAAA,GAAA;QACE,IACE,CAAC,IAAI,CAAC,SAAS;YACf,CAAC,IAAI,CAAC,iBAAiB;YACvB,CAAC,IAAI,CAAC,cAAc;YACpB,CAAC,IAAI,CAAC,iBAAiB;AACvB,YAAA,CAAC,IAAI,CAAC,mBAAmB,EACzB;AACA,YAAA,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;AACnB,YAAA,MAAM,KAAK;QACb;IACF;uGAtBW,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAV,UAAU,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gLAAA,EAAA,MAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,qBAAA,EAAA,aAAA,EAAA,EAAA,UAAA,EAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,SAAA,EAAA,wBAAA,EAAA,WAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAV,UAAU,EAAA,UAAA,EAAA,CAAA;kBAdtB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,CAAA;;;;AAI0B,qCAAA,CAAA;AACpC,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,IAAI,EAAE;AACJ,wBAAA,qBAAqB,EAAE,aAAa;AACpC,wBAAA,uBAAuB,EAAE,QAAQ;AACjC,wBAAA,wBAAwB,EAAE,SAAS;AACnC,wBAAA,0BAA0B,EAAE,WAAW;AACxC,qBAAA;AACF,iBAAA;;;ACxCD;;AAEG;;;;"}
1
+ {"version":3,"file":"mgremy-ng-primitives-button.mjs","sources":["../../../../libs/ng-primitives/button/src/lib/mgnp-button/mgnp-button.directive.ts","../../../../libs/ng-primitives/button/src/mgremy-ng-primitives-button.ts"],"sourcesContent":["import { PropertyType } from '@mgremy/ng-primitives';\n\nimport { Directive, inject, input } from '@angular/core';\nimport { NgpAccordionTrigger } from 'ng-primitives/accordion';\nimport { NgpButton } from 'ng-primitives/button';\nimport { NgpComboboxButton } from 'ng-primitives/combobox';\nimport { NgpDialogTrigger } from 'ng-primitives/dialog';\nimport { NgpMenuTrigger } from 'ng-primitives/menu';\nimport { NgpTooltipTrigger } from 'ng-primitives/tooltip';\n\nconst options = [\n 'ngpButton',\n 'ngpComboboxButton',\n 'ngpMenuTrigger',\n 'ngpTooltipTrigger',\n 'ngpAccordionTrigger',\n 'ngpDialogTrigger',\n];\n\nconst error = new Error(`MgnpButton must be used with ${options.join(' / ')}`);\n\nexport type MgnpButtonColor = PropertyType<\n 'ui' | 'primary' | 'secondary' | 'info' | 'success' | 'warning' | 'danger'\n>;\n\nexport type MgnpButtonVariant = PropertyType<'solid' | 'outline'>;\n\nexport type MgnpButtonSize = PropertyType<'xs' | 'sm' | 'md' | 'lg' | 'xl'>;\n\n@Directive({\n selector: `[ngpButton][mgnpButton],\n [ngpComboboxButton][mgnpButton],\n [ngpMenuTrigger][mgnpButton],\n [ngpTooltipTrigger][mgnpButton],\n [ngpAccordionTrigger][mgnpButton],\n [ngpDialogTrigger][mgnpButton]`,\n standalone: true,\n host: {\n 'data-mgnp-component': 'mgnp-button',\n '[attr.data-mgnp-size]': 'size()',\n '[attr.data-mgnp-color]': 'color()',\n '[attr.data-mgnp-variant]': 'variant()',\n },\n})\nexport class MgnpButton {\n protected readonly ngpButton = inject(NgpButton, { optional: true });\n protected readonly ngpComboboxButton = inject(NgpComboboxButton, { optional: true });\n protected readonly ngpMenuTrigger = inject(NgpMenuTrigger, { optional: true });\n protected readonly ngpTooltipTrigger = inject(NgpTooltipTrigger, { optional: true });\n protected readonly ngpAccordionTrigger = inject(NgpAccordionTrigger, { optional: true });\n protected readonly ngpDialogTrigger = inject(NgpDialogTrigger, { optional: true });\n\n readonly color = input<MgnpButtonColor>('ui');\n readonly variant = input<MgnpButtonVariant>('solid');\n readonly size = input<MgnpButtonSize>('md');\n\n constructor() {\n if (\n !this.ngpButton &&\n !this.ngpComboboxButton &&\n !this.ngpMenuTrigger &&\n !this.ngpTooltipTrigger &&\n !this.ngpAccordionTrigger &&\n !this.ngpDialogTrigger\n ) {\n console.error(this);\n throw error;\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,106 @@
1
+ import * as i0 from '@angular/core';
2
+ import { inject, Directive } from '@angular/core';
3
+ import { NgpDialog, NgpDialogDescription, NgpDialogOverlay, NgpDialogTitle } from 'ng-primitives/dialog';
4
+
5
+ const options$3 = ['ngpDialog'];
6
+ const error$3 = new Error(`MgnpDialog must be used with ${options$3.join(' / ')}`);
7
+ class MgnpDialog {
8
+ _ngpDialog = inject(NgpDialog, { optional: true });
9
+ constructor() {
10
+ if (!this._ngpDialog) {
11
+ console.error(this);
12
+ throw error$3;
13
+ }
14
+ }
15
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MgnpDialog, deps: [], target: i0.ɵɵFactoryTarget.Directive });
16
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.1", type: MgnpDialog, isStandalone: true, selector: "[ngpDialog][mgnpDialog]", host: { attributes: { "data-mgnp-component": "mgnp-dialog" } }, ngImport: i0 });
17
+ }
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MgnpDialog, decorators: [{
19
+ type: Directive,
20
+ args: [{
21
+ selector: '[ngpDialog][mgnpDialog]',
22
+ standalone: true,
23
+ host: {
24
+ 'data-mgnp-component': 'mgnp-dialog',
25
+ },
26
+ }]
27
+ }], ctorParameters: () => [] });
28
+
29
+ const options$2 = ['ngpDialogDescription'];
30
+ const error$2 = new Error(`MgnpDialogDescription must be used with ${options$2.join(' / ')}`);
31
+ class MgnpDialogDescription {
32
+ _ngpDialogDescription = inject(NgpDialogDescription, { optional: true });
33
+ constructor() {
34
+ if (!this._ngpDialogDescription) {
35
+ console.error(this);
36
+ throw error$2;
37
+ }
38
+ }
39
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MgnpDialogDescription, deps: [], target: i0.ɵɵFactoryTarget.Directive });
40
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.1", type: MgnpDialogDescription, isStandalone: true, selector: "[ngpDialogDescription][mgnpDialogDescription]", host: { attributes: { "data-mgnp-component": "mgnp-dialog-description" } }, ngImport: i0 });
41
+ }
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MgnpDialogDescription, decorators: [{
43
+ type: Directive,
44
+ args: [{
45
+ selector: '[ngpDialogDescription][mgnpDialogDescription]',
46
+ standalone: true,
47
+ host: {
48
+ 'data-mgnp-component': 'mgnp-dialog-description',
49
+ },
50
+ }]
51
+ }], ctorParameters: () => [] });
52
+
53
+ const options$1 = ['ngpDialogOverlay'];
54
+ const error$1 = new Error(`MgnpDialogOverlay must be used with ${options$1.join(' / ')}`);
55
+ class MgnpDialogOverlay {
56
+ _ngpDialogOverlay = inject(NgpDialogOverlay, { optional: true });
57
+ constructor() {
58
+ if (!this._ngpDialogOverlay) {
59
+ console.error(this);
60
+ throw error$1;
61
+ }
62
+ }
63
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MgnpDialogOverlay, deps: [], target: i0.ɵɵFactoryTarget.Directive });
64
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.1", type: MgnpDialogOverlay, isStandalone: true, selector: "[ngpDialogOverlay][mgnpDialogOverlay]", host: { attributes: { "data-mgnp-component": "mgnp-dialog-overlay" } }, ngImport: i0 });
65
+ }
66
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MgnpDialogOverlay, decorators: [{
67
+ type: Directive,
68
+ args: [{
69
+ selector: '[ngpDialogOverlay][mgnpDialogOverlay]',
70
+ standalone: true,
71
+ host: {
72
+ 'data-mgnp-component': 'mgnp-dialog-overlay',
73
+ },
74
+ }]
75
+ }], ctorParameters: () => [] });
76
+
77
+ const options = ['ngpDialogTitle'];
78
+ const error = new Error(`MgnpDialogTitle must be used with ${options.join(' / ')}`);
79
+ class MgnpDialogTitle {
80
+ _ngpDialogTitle = inject(NgpDialogTitle, { optional: true });
81
+ constructor() {
82
+ if (!this._ngpDialogTitle) {
83
+ console.error(this);
84
+ throw error;
85
+ }
86
+ }
87
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MgnpDialogTitle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
88
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.1", type: MgnpDialogTitle, isStandalone: true, selector: "[ngpDialogTitle][mgnpDialogTitle]", host: { attributes: { "data-mgnp-component": "mgnp-dialog-title" } }, ngImport: i0 });
89
+ }
90
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MgnpDialogTitle, decorators: [{
91
+ type: Directive,
92
+ args: [{
93
+ selector: '[ngpDialogTitle][mgnpDialogTitle]',
94
+ standalone: true,
95
+ host: {
96
+ 'data-mgnp-component': 'mgnp-dialog-title',
97
+ },
98
+ }]
99
+ }], ctorParameters: () => [] });
100
+
101
+ /**
102
+ * Generated bundle index. Do not edit.
103
+ */
104
+
105
+ export { MgnpDialog, MgnpDialogDescription, MgnpDialogOverlay, MgnpDialogTitle };
106
+ //# sourceMappingURL=mgremy-ng-primitives-dialog.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mgremy-ng-primitives-dialog.mjs","sources":["../../../../libs/ng-primitives/dialog/src/lib/mgnp-dialog/mgnp-dialog.directive.ts","../../../../libs/ng-primitives/dialog/src/lib/mgnp-dialog-description/mgnp-dialog-description.directive.ts","../../../../libs/ng-primitives/dialog/src/lib/mgnp-dialog-overlay/mgnp-dialog-overlay.directive.ts","../../../../libs/ng-primitives/dialog/src/lib/mgnp-dialog-title/mgnp-dialog-title.directive.ts","../../../../libs/ng-primitives/dialog/src/mgremy-ng-primitives-dialog.ts"],"sourcesContent":["import { Directive, inject } from '@angular/core';\nimport { NgpDialog } from 'ng-primitives/dialog';\n\nconst options = ['ngpDialog'];\n\nconst error = new Error(`MgnpDialog must be used with ${options.join(' / ')}`);\n\n@Directive({\n selector: '[ngpDialog][mgnpDialog]',\n standalone: true,\n host: {\n 'data-mgnp-component': 'mgnp-dialog',\n },\n})\nexport class MgnpDialog {\n private readonly _ngpDialog = inject(NgpDialog, { optional: true });\n\n constructor() {\n if (!this._ngpDialog) {\n console.error(this);\n throw error;\n }\n }\n}\n","import { Directive, inject } from '@angular/core';\nimport { NgpDialogDescription } from 'ng-primitives/dialog';\n\nconst options = ['ngpDialogDescription'];\n\nconst error = new Error(`MgnpDialogDescription must be used with ${options.join(' / ')}`);\n\n@Directive({\n selector: '[ngpDialogDescription][mgnpDialogDescription]',\n standalone: true,\n host: {\n 'data-mgnp-component': 'mgnp-dialog-description',\n },\n})\nexport class MgnpDialogDescription {\n private readonly _ngpDialogDescription = inject(NgpDialogDescription, { optional: true });\n\n constructor() {\n if (!this._ngpDialogDescription) {\n console.error(this);\n throw error;\n }\n }\n}\n","import { Directive, inject } from '@angular/core';\nimport { NgpDialogOverlay } from 'ng-primitives/dialog';\n\nconst options = ['ngpDialogOverlay'];\n\nconst error = new Error(`MgnpDialogOverlay must be used with ${options.join(' / ')}`);\n\n@Directive({\n selector: '[ngpDialogOverlay][mgnpDialogOverlay]',\n standalone: true,\n host: {\n 'data-mgnp-component': 'mgnp-dialog-overlay',\n },\n})\nexport class MgnpDialogOverlay {\n private readonly _ngpDialogOverlay = inject(NgpDialogOverlay, { optional: true });\n\n constructor() {\n if (!this._ngpDialogOverlay) {\n console.error(this);\n throw error;\n }\n }\n}\n","import { Directive, inject } from '@angular/core';\nimport { NgpDialogTitle } from 'ng-primitives/dialog';\n\nconst options = ['ngpDialogTitle'];\n\nconst error = new Error(`MgnpDialogTitle must be used with ${options.join(' / ')}`);\n\n@Directive({\n selector: '[ngpDialogTitle][mgnpDialogTitle]',\n standalone: true,\n host: {\n 'data-mgnp-component': 'mgnp-dialog-title',\n },\n})\nexport class MgnpDialogTitle {\n private readonly _ngpDialogTitle = inject(NgpDialogTitle, { optional: true });\n\n constructor() {\n if (!this._ngpDialogTitle) {\n console.error(this);\n throw error;\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["options","error"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mgremy/ng-primitives",
3
- "version": "0.9.0",
3
+ "version": "0.10.0",
4
4
  "license": "Apache-2.0",
5
5
  "homepage": "https://doc.mgremy.xyz/ng-primitives",
6
6
  "publishConfig": {
@@ -12,7 +12,7 @@
12
12
  "peerDependencies": {
13
13
  "@angular/core": "^21.1.0",
14
14
  "ng-primitives": "^0.110.0",
15
- "tailwindcss": "^4.0.0"
15
+ "tailwindcss": "^4.3.0"
16
16
  },
17
17
  "sideEffects": false,
18
18
  "style": "theme/mgnp.css",
@@ -41,6 +41,10 @@
41
41
  "types": "./types/mgremy-ng-primitives-combobox.d.ts",
42
42
  "default": "./fesm2022/mgremy-ng-primitives-combobox.mjs"
43
43
  },
44
+ "./dialog": {
45
+ "types": "./types/mgremy-ng-primitives-dialog.d.ts",
46
+ "default": "./fesm2022/mgremy-ng-primitives-dialog.mjs"
47
+ },
44
48
  "./input": {
45
49
  "types": "./types/mgremy-ng-primitives-input.d.ts",
46
50
  "default": "./fesm2022/mgremy-ng-primitives-input.mjs"
@@ -0,0 +1,101 @@
1
+ @utility mgnp-dialog {
2
+ background-color: var(--mg-background-ui);
3
+ box-shadow: var(--ngp-button-shadow);
4
+ padding: --spacing(6);
5
+ border-radius: --spacing(2);
6
+ animation: fade-in var(--default-transition-duration) var(--default-transition-timing-function);
7
+
8
+ @variant data-exit {
9
+ animation: fade-out var(--default-transition-duration) var(--default-transition-timing-function);
10
+ }
11
+ }
12
+
13
+ @utility mgnp-dialog-title {
14
+ font-size: var(--text-lg);
15
+ line-height: var(--text-lg--line-height);
16
+ color: var(--mg-text-ui);
17
+ margin-block: --spacing(1);
18
+ }
19
+
20
+ @utility mgnp-dialog-description {
21
+ font-size: var(--text-base);
22
+ line-height: var(--text-base--line-height);
23
+ color: var(--mg-text-ui-disabled);
24
+ margin: --spacing(0);
25
+ }
26
+
27
+ @utility mgnp-dialog-overlay {
28
+ display: flex;
29
+ justify-content: center;
30
+ align-items: center;
31
+ position: fixed;
32
+ z-index: 9999;
33
+ background-color: --alpha(var(--mg-background-ui) / 50%);
34
+ backdrop-filter: blur(--spacing(0.5));
35
+ inset: --spacing(0);
36
+ animation: slide-in var(--default-transition-duration) var(--default-transition-timing-function);
37
+
38
+ @variant data-exit {
39
+ animation: slide-out var(--default-transition-duration)
40
+ var(--default-transition-timing-function);
41
+ }
42
+ }
43
+
44
+ @layer base {
45
+ [mgnpDialog][data-mgnp-component='mgnp-dialog'] {
46
+ @apply transition mgnp-dialog;
47
+ }
48
+
49
+ [mgnpDialogTitle][data-mgnp-component='mgnp-dialog-title'] {
50
+ @apply transition mgnp-dialog-title;
51
+ }
52
+
53
+ [mgnpDialogDescription][data-mgnp-component='mgnp-dialog-description'] {
54
+ @apply transition mgnp-dialog-description;
55
+ }
56
+
57
+ [mgnpDialogOverlay][data-mgnp-component='mgnp-dialog-overlay'] {
58
+ @apply transition mgnp-dialog-overlay;
59
+ }
60
+ }
61
+
62
+ @keyframes fade-in {
63
+ 0% {
64
+ opacity: 0;
65
+ }
66
+ 100% {
67
+ opacity: 1;
68
+ }
69
+ }
70
+
71
+ @keyframes fade-out {
72
+ 0% {
73
+ opacity: 1;
74
+ }
75
+ 100% {
76
+ opacity: 0;
77
+ }
78
+ }
79
+
80
+ @keyframes slide-in {
81
+ 0% {
82
+ transform: translateY(-20px);
83
+ opacity: 0;
84
+ }
85
+ 100% {
86
+ transform: translateY(0);
87
+ opacity: 1;
88
+ }
89
+ }
90
+
91
+ @keyframes slide-out {
92
+ 0% {
93
+ transform: translateY(0);
94
+ opacity: 1;
95
+ }
96
+
97
+ 100% {
98
+ transform: translateY(-20px);
99
+ opacity: 0;
100
+ }
101
+ }
package/theme/ngp_tw.css CHANGED
@@ -2,6 +2,7 @@
2
2
  @import './components/button.css';
3
3
  @import './components/checkbox.css';
4
4
  @import './components/combobox.css';
5
+ @import './components/dialog.css';
5
6
  @import './components/input.css';
6
7
  @import './components/menu.css';
7
8
  @import './components/pagination.css';
@@ -3,6 +3,7 @@ import { PropertyType } from '@mgremy/ng-primitives';
3
3
  import { NgpAccordionTrigger } from 'ng-primitives/accordion';
4
4
  import { NgpButton } from 'ng-primitives/button';
5
5
  import { NgpComboboxButton } from 'ng-primitives/combobox';
6
+ import { NgpDialogTrigger } from 'ng-primitives/dialog';
6
7
  import { NgpMenuTrigger } from 'ng-primitives/menu';
7
8
  import { NgpTooltipTrigger } from 'ng-primitives/tooltip';
8
9
 
@@ -15,12 +16,13 @@ declare class MgnpButton {
15
16
  protected readonly ngpMenuTrigger: NgpMenuTrigger<any> | null;
16
17
  protected readonly ngpTooltipTrigger: NgpTooltipTrigger<any> | null;
17
18
  protected readonly ngpAccordionTrigger: NgpAccordionTrigger<any> | null;
19
+ protected readonly ngpDialogTrigger: NgpDialogTrigger<any> | null;
18
20
  readonly color: _angular_core.InputSignal<MgnpButtonColor>;
19
21
  readonly variant: _angular_core.InputSignal<MgnpButtonVariant>;
20
22
  readonly size: _angular_core.InputSignal<MgnpButtonSize>;
21
23
  constructor();
22
24
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<MgnpButton, never>;
23
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<MgnpButton, "[ngpButton][mgnpButton], [ngpComboboxButton][mgnpButton], [ngpMenuTrigger][mgnpButton], [ngpTooltipTrigger][mgnpButton], [ngpAccordionTrigger][mgnpButton]", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
25
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<MgnpButton, "[ngpButton][mgnpButton], [ngpComboboxButton][mgnpButton], [ngpMenuTrigger][mgnpButton], [ngpTooltipTrigger][mgnpButton], [ngpAccordionTrigger][mgnpButton], [ngpDialogTrigger][mgnpButton]", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
24
26
  }
25
27
 
26
28
  export { MgnpButton };
@@ -0,0 +1,31 @@
1
+ import * as i0 from '@angular/core';
2
+
3
+ declare class MgnpDialog {
4
+ private readonly _ngpDialog;
5
+ constructor();
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<MgnpDialog, never>;
7
+ static ɵdir: i0.ɵɵDirectiveDeclaration<MgnpDialog, "[ngpDialog][mgnpDialog]", never, {}, {}, never, never, true, never>;
8
+ }
9
+
10
+ declare class MgnpDialogDescription {
11
+ private readonly _ngpDialogDescription;
12
+ constructor();
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<MgnpDialogDescription, never>;
14
+ static ɵdir: i0.ɵɵDirectiveDeclaration<MgnpDialogDescription, "[ngpDialogDescription][mgnpDialogDescription]", never, {}, {}, never, never, true, never>;
15
+ }
16
+
17
+ declare class MgnpDialogOverlay {
18
+ private readonly _ngpDialogOverlay;
19
+ constructor();
20
+ static ɵfac: i0.ɵɵFactoryDeclaration<MgnpDialogOverlay, never>;
21
+ static ɵdir: i0.ɵɵDirectiveDeclaration<MgnpDialogOverlay, "[ngpDialogOverlay][mgnpDialogOverlay]", never, {}, {}, never, never, true, never>;
22
+ }
23
+
24
+ declare class MgnpDialogTitle {
25
+ private readonly _ngpDialogTitle;
26
+ constructor();
27
+ static ɵfac: i0.ɵɵFactoryDeclaration<MgnpDialogTitle, never>;
28
+ static ɵdir: i0.ɵɵDirectiveDeclaration<MgnpDialogTitle, "[ngpDialogTitle][mgnpDialogTitle]", never, {}, {}, never, never, true, never>;
29
+ }
30
+
31
+ export { MgnpDialog, MgnpDialogDescription, MgnpDialogOverlay, MgnpDialogTitle };