@spartan-ng/cli 0.0.1-alpha.613 → 0.0.1-alpha.628
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/package.json +5 -1
- package/src/generators/healthcheck/generator.js +2 -0
- package/src/generators/healthcheck/generator.js.map +1 -1
- package/src/generators/healthcheck/healthchecks/hlm-dialog-portal.d.ts +2 -0
- package/src/generators/healthcheck/healthchecks/hlm-dialog-portal.js +35 -0
- package/src/generators/healthcheck/healthchecks/hlm-dialog-portal.js.map +1 -0
- package/src/generators/migrate-dialog-portal/compat.d.ts +2 -0
- package/src/generators/migrate-dialog-portal/compat.js +6 -0
- package/src/generators/migrate-dialog-portal/compat.js.map +1 -0
- package/src/generators/migrate-dialog-portal/generator.d.ts +4 -0
- package/src/generators/migrate-dialog-portal/generator.js +93 -0
- package/src/generators/migrate-dialog-portal/generator.js.map +1 -0
- package/src/generators/migrate-dialog-portal/schema.d.ts +4 -0
- package/src/generators/migrate-dialog-portal/schema.json +19 -0
- package/src/generators/ui/libs/alert-dialog/files/index.ts.template +5 -2
- package/src/generators/ui/libs/alert-dialog/files/lib/hlm-alert-dialog-portal.ts.template +8 -0
- package/src/generators/ui/libs/autocomplete/files/index.ts.template +3 -0
- package/src/generators/ui/libs/autocomplete/files/lib/hlm-autocomplete-content.ts.template +2 -2
- package/src/generators/ui/libs/autocomplete/files/lib/hlm-autocomplete-portal.ts.template +8 -0
- package/src/generators/ui/libs/autocomplete/files/lib/hlm-autocomplete-search.ts.template +11 -2
- package/src/generators/ui/libs/autocomplete/files/lib/hlm-autocomplete.ts.template +11 -2
- package/src/generators/ui/libs/combobox/files/index.ts.template +3 -0
- package/src/generators/ui/libs/combobox/files/lib/hlm-combobox-content.ts.template +2 -2
- package/src/generators/ui/libs/combobox/files/lib/hlm-combobox-multiple.ts.template +20 -2
- package/src/generators/ui/libs/combobox/files/lib/hlm-combobox-portal.ts.template +8 -0
- package/src/generators/ui/libs/combobox/files/lib/hlm-combobox.ts.template +20 -2
- package/src/generators/ui/libs/command/files/index.ts.template +3 -6
- package/src/generators/ui/libs/command/files/lib/hlm-command-dialog.ts.template +46 -18
- package/src/generators/ui/libs/command/files/lib/hlm-command-input.ts.template +38 -0
- package/src/generators/ui/libs/command/files/lib/hlm-command-list.ts.template +1 -1
- package/src/generators/ui/libs/command/files/lib/hlm-command-separator.ts.template +1 -1
- package/src/generators/ui/libs/command/files/lib/hlm-command.ts.template +3 -3
- package/src/generators/ui/libs/date-picker/files/lib/hlm-date-picker-multi.ts.template +4 -4
- package/src/generators/ui/libs/date-picker/files/lib/hlm-date-picker.ts.template +3 -4
- package/src/generators/ui/libs/date-picker/files/lib/hlm-date-range-picker.ts.template +3 -4
- package/src/generators/ui/libs/dialog/files/index.ts.template +3 -0
- package/src/generators/ui/libs/dialog/files/lib/hlm-dialog-portal.ts.template +8 -0
- package/src/generators/ui/libs/hover-card/files/index.ts.template +12 -1
- package/src/generators/ui/libs/hover-card/files/lib/hlm-hover-card-portal.ts.template +8 -0
- package/src/generators/ui/libs/hover-card/files/lib/hlm-hover-card-trigger.ts.template +23 -0
- package/src/generators/ui/libs/hover-card/files/lib/hlm-hover-card.ts.template +11 -0
- package/src/generators/ui/libs/navigation-menu/files/hlm-navigation-menu-content.ts.template +1 -1
- package/src/generators/ui/libs/navigation-menu/files/hlm-navigation-menu-portal.ts.template +8 -0
- package/src/generators/ui/libs/navigation-menu/files/hlm-navigation-menu.ts.template +1 -1
- package/src/generators/ui/libs/navigation-menu/files/index.ts.template +4 -1
- package/src/generators/ui/libs/popover/files/index.ts.template +3 -1
- package/src/generators/ui/libs/popover/files/lib/hlm-popover-content.ts.template +2 -2
- package/src/generators/ui/libs/popover/files/lib/hlm-popover-portal.ts.template +8 -0
- package/src/generators/ui/libs/radio-group/files/lib/hlm-radio-group.ts.template +1 -1
- package/src/generators/ui/libs/sheet/files/index.ts.template +3 -0
- package/src/generators/ui/libs/sheet/files/lib/hlm-sheet-close.ts.template +1 -7
- package/src/generators/ui/libs/sheet/files/lib/hlm-sheet-content.ts.template +23 -6
- package/src/generators/ui/libs/sheet/files/lib/hlm-sheet-portal.ts.template +8 -0
- package/src/generators/ui/libs/sidebar/files/lib/hlm-sidebar-menu-button.ts.template +3 -4
- package/src/generators/ui/libs/sidebar/files/lib/hlm-sidebar.ts.template +2 -3
- package/src/generators/ui/libs/tooltip/files/index.ts.template +1 -3
- package/src/generators/ui/libs/tooltip/files/lib/hlm-tooltip.ts.template +34 -7
- package/src/generators/ui/primitive-deps.js +1 -1
- package/src/generators/ui/primitive-deps.js.map +1 -1
- package/src/generators/ui/supported-ui-libraries.json +45 -39
- package/src/generators/ui/libs/command/files/lib/hlm-command-search-input.ts.template +0 -19
- package/src/generators/ui/libs/command/files/lib/hlm-command-search.ts.template +0 -16
- package/src/generators/ui/libs/tooltip/files/lib/hlm-tooltip-trigger.ts.template +0 -41
package/package.json
CHANGED
|
@@ -19,6 +19,7 @@ const helm_imports_1 = require("./healthchecks/helm-imports");
|
|
|
19
19
|
const hlm_1 = require("./healthchecks/hlm");
|
|
20
20
|
const hlm_date_picker_1 = require("./healthchecks/hlm-date-picker");
|
|
21
21
|
const hlm_dialog_1 = require("./healthchecks/hlm-dialog");
|
|
22
|
+
const hlm_dialog_portal_1 = require("./healthchecks/hlm-dialog-portal");
|
|
22
23
|
const hlm_icon_1 = require("./healthchecks/hlm-icon");
|
|
23
24
|
const hlm_menu_1 = require("./healthchecks/hlm-menu");
|
|
24
25
|
const hlm_progress_1 = require("./healthchecks/hlm-progress");
|
|
@@ -56,6 +57,7 @@ async function healthcheckGenerator(tree, options) {
|
|
|
56
57
|
brn_collapsible_1.brainCollapsibleHealthcheck,
|
|
57
58
|
hlm_menu_1.helmMenuHealthcheck,
|
|
58
59
|
hlm_dialog_1.helmDialogHealthcheck,
|
|
60
|
+
hlm_dialog_portal_1.helmDialogPortalHealthcheck,
|
|
59
61
|
];
|
|
60
62
|
const failedReports = [];
|
|
61
63
|
const importAlias = await (0, config_1.getImportAlias)(tree, options.angularCli);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../libs/cli/src/generators/healthcheck/generator.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../libs/cli/src/generators/healthcheck/generator.ts"],"names":[],"mappings":";;AAgCA,oDAwDC;AAxFD,uCAA4D;AAC5D,+CAAoD;AACpD,iDAAmH;AACnH,gEAAuE;AACvE,gFAAwF;AACxF,wGAAiG;AACjG,oEAA6E;AAC7E,wDAAiE;AACjE,gEAAyE;AACzE,oGAA6F;AAC7F,0DAAmE;AACnE,sEAA8E;AAC9E,0EAAiF;AACjF,8DAAqE;AACrE,8DAAqE;AACrE,4CAA0D;AAC1D,oEAAuE;AACvE,0DAAkE;AAClE,wEAA+E;AAC/E,sDAA8D;AAC9D,sDAA8D;AAC9D,8DAAkE;AAClE,oEAAuE;AACvE,0DAA8D;AAC9D,kEAAyE;AACzE,0EAAgF;AAChF,oDAA4D;AAE5D,2CAA4C;AAC5C,+CAA+C;AAC/C,2CAAgD;AAEzC,KAAK,UAAU,oBAAoB,CAAC,IAAU,EAAE,OAA8D;IACpH,eAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IAEvC,MAAM,YAAY,GAAkB;QACnC,4BAAkB;QAClB,uCAAuB;QACvB,qCAAsB;QACtB,8BAAmB;QACnB,uCAAqB;QACrB,iCAAqB;QACrB,8BAAiB;QACjB,8CAA2B;QAC3B,qCAAsB;QACtB,gDAA2B;QAC3B,uCAAqB;QACrB,kCAAmB;QACnB,0BAAoB;QACpB,yCAAyB;QACzB,iEAA6B;QAC7B,6DAA2B;QAC3B,wDAAgC;QAChC,yCAAwB;QACxB,mCAAsB;QACtB,iDAA4B;QAC5B,6CAA2B;QAC3B,8BAAmB;QACnB,kCAAqB;QACrB,+CAA2B;KAC3B,CAAC;IAEF,MAAM,aAAa,GAAwB,EAAE,CAAC;IAE9C,MAAM,WAAW,GAAG,MAAM,IAAA,uBAAc,EAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;IAEnE,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,MAAM,IAAA,uBAAc,EAAC,IAAI,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QACpE,IAAA,sBAAW,EAAC,MAAM,CAAC,CAAC;QAEpB,IAAI,MAAM,CAAC,MAAM,KAAK,gCAAiB,CAAC,OAAO,EAAE,CAAC;YACjD,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5B,CAAC;IACF,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,aAAa,EAAE,CAAC;QACpC,IAAI,MAAM,CAAC,OAAO,IAAI,IAAA,mCAAoB,EAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;YAChE,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,IAAI,CAAC,MAAM,IAAA,mBAAU,EAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;YAE7E,IAAI,GAAG,EAAE,CAAC;gBACT,MAAM,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC;YACrF,CAAC;QACF,CAAC;IACF,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QACzB,MAAM,IAAA,oBAAW,EAAC,IAAI,CAAC,CAAC;IACzB,CAAC;AACF,CAAC;AAED,kBAAe,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.helmDialogPortalHealthcheck = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const devkit_1 = require("@nx/devkit");
|
|
6
|
+
const generator_1 = tslib_1.__importDefault(require("../../migrate-dialog-portal/generator"));
|
|
7
|
+
const healthchecks_1 = require("../healthchecks");
|
|
8
|
+
exports.helmDialogPortalHealthcheck = {
|
|
9
|
+
name: 'Helm Dialog Portal',
|
|
10
|
+
async detect(tree, failure) {
|
|
11
|
+
(0, devkit_1.visitNotIgnoredFiles)(tree, '/', (file) => {
|
|
12
|
+
// if the file is a .ts or .htlm file, check for helm menu
|
|
13
|
+
if (!file.endsWith('.ts') && !file.endsWith('.html')) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
const contents = tree.read(file, 'utf-8');
|
|
17
|
+
if (!contents) {
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
if (contents.includes('*brnDialogContent') ||
|
|
21
|
+
contents.includes('*brnAlertDialogContent') ||
|
|
22
|
+
contents.includes('*brnPopoverContent') ||
|
|
23
|
+
contents.includes('*brnSheetContent') ||
|
|
24
|
+
contents.includes('*brnNavigationMenuContent')) {
|
|
25
|
+
failure('Please use the new helm directives *hlm*Portal for alert-dialog, dialog, popover, sheet or navigation-menu.', healthchecks_1.HealthcheckSeverity.Error, true);
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
},
|
|
29
|
+
fix: async (tree, { importAlias }) => {
|
|
30
|
+
await (0, generator_1.default)(tree, { skipFormat: true, importAlias });
|
|
31
|
+
return true;
|
|
32
|
+
},
|
|
33
|
+
prompt: 'Would you like to migrate *brn*Content selectors to *hlm*Portal? You need to regenerate helm components to have *hlm*Portal in your project.',
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=hlm-dialog-portal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hlm-dialog-portal.js","sourceRoot":"","sources":["../../../../../../../libs/cli/src/generators/healthcheck/healthchecks/hlm-dialog-portal.ts"],"names":[],"mappings":";;;;AAAA,uCAAkD;AAClD,8FAAiF;AACjF,kDAAwE;AAE3D,QAAA,2BAA2B,GAAgB;IACvD,IAAI,EAAE,oBAAoB;IAC1B,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO;QACzB,IAAA,6BAAoB,EAAC,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,EAAE;YACxC,0DAA0D;YAC1D,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBACtD,OAAO;YACR,CAAC;YAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAE1C,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACf,OAAO;YACR,CAAC;YAED,IACC,QAAQ,CAAC,QAAQ,CAAC,mBAAmB,CAAC;gBACtC,QAAQ,CAAC,QAAQ,CAAC,wBAAwB,CAAC;gBAC3C,QAAQ,CAAC,QAAQ,CAAC,oBAAoB,CAAC;gBACvC,QAAQ,CAAC,QAAQ,CAAC,kBAAkB,CAAC;gBACrC,QAAQ,CAAC,QAAQ,CAAC,2BAA2B,CAAC,EAC7C,CAAC;gBACF,OAAO,CACN,6GAA6G,EAC7G,kCAAmB,CAAC,KAAK,EACzB,IAAI,CACJ,CAAC;YACH,CAAC;QACF,CAAC,CAAC,CAAC;IACJ,CAAC;IACD,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE;QACpC,MAAM,IAAA,mBAA4B,EAAC,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;QAC5E,OAAO,IAAI,CAAC;IACb,CAAC;IACD,MAAM,EACL,8IAA8I;CAC/I,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const devkit_1 = require("@nx/devkit");
|
|
4
|
+
const generator_1 = require("./generator");
|
|
5
|
+
exports.default = (0, devkit_1.convertNxGenerator)(generator_1.migrateDialogPortalGenerator);
|
|
6
|
+
//# sourceMappingURL=compat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compat.js","sourceRoot":"","sources":["../../../../../../libs/cli/src/generators/migrate-dialog-portal/compat.ts"],"names":[],"mappings":";;AAAA,uCAAgD;AAChD,2CAA2D;AAE3D,kBAAe,IAAA,2BAAkB,EAAC,wCAA4B,CAAC,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { type Tree } from '@nx/devkit';
|
|
2
|
+
import type { MigrateDialogPortalGeneratorSchema } from './schema';
|
|
3
|
+
export declare function migrateDialogPortalGenerator(tree: Tree, { skipFormat, importAlias }: MigrateDialogPortalGeneratorSchema): Promise<void>;
|
|
4
|
+
export default migrateDialogPortalGenerator;
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.migrateDialogPortalGenerator = migrateDialogPortalGenerator;
|
|
4
|
+
const devkit_1 = require("@nx/devkit");
|
|
5
|
+
const import_alias_1 = require("../../utils/import-alias");
|
|
6
|
+
const visit_files_1 = require("../../utils/visit-files");
|
|
7
|
+
async function migrateDialogPortalGenerator(tree, { skipFormat, importAlias }) {
|
|
8
|
+
updateImports(tree, importAlias);
|
|
9
|
+
replaceSelector(tree);
|
|
10
|
+
if (!skipFormat) {
|
|
11
|
+
await (0, devkit_1.formatFiles)(tree);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Update imports
|
|
16
|
+
*/
|
|
17
|
+
function updateImports(tree, importAlias) {
|
|
18
|
+
(0, visit_files_1.visitFiles)(tree, '/', (path) => {
|
|
19
|
+
// if this is not a typescript file then skip
|
|
20
|
+
if (!path.endsWith('.ts')) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
let content = tree.read(path, 'utf-8');
|
|
24
|
+
if (!content) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
if (content.includes('*brnDialogContent')) {
|
|
28
|
+
content = content
|
|
29
|
+
.replace("import { BrnDialogImports } from '@spartan-ng/brain/dialog';", '')
|
|
30
|
+
.replace(/BrnDialogImports,?\s?/, '');
|
|
31
|
+
}
|
|
32
|
+
if (content.includes('*brnAlertDialogContent')) {
|
|
33
|
+
content = content
|
|
34
|
+
.replace("import { BrnAlertDialogImports } from '@spartan-ng/brain/alert-dialog';", '')
|
|
35
|
+
.replace(/BrnAlertDialogImports,?\s?/, '');
|
|
36
|
+
}
|
|
37
|
+
if (content.includes('*brnPopoverContent')) {
|
|
38
|
+
const popoverImport = (0, import_alias_1.helmImport)(importAlias, 'popover');
|
|
39
|
+
content = content
|
|
40
|
+
.replace("import { BrnPopoverImports } from '@spartan-ng/brain/popover';", '')
|
|
41
|
+
.replace(/BrnPopoverImports,?\s?/, '')
|
|
42
|
+
// handle BrnPopoverContent import
|
|
43
|
+
.replace("import { BrnPopoverContent } from '@spartan-ng/brain/popover';", `import { HlmPopoverImports } from '${popoverImport}';`)
|
|
44
|
+
.replace(/BrnPopoverContent?\s?/, 'HlmPopoverImports');
|
|
45
|
+
}
|
|
46
|
+
if (content.includes('*brnSheetContent')) {
|
|
47
|
+
content = content
|
|
48
|
+
.replace("import { BrnSheetImports } from '@spartan-ng/brain/sheet';", '')
|
|
49
|
+
.replace(/BrnSheetImports,?\s?/, '');
|
|
50
|
+
}
|
|
51
|
+
if (content.includes('*brnNavigationMenuContent')) {
|
|
52
|
+
content = content
|
|
53
|
+
.replace("import { BrnNavigationMenuImports } from '@spartan-ng/brain/navigation-menu';", '')
|
|
54
|
+
.replace(/BrnNavigationMenuImports,?\s?/, '');
|
|
55
|
+
}
|
|
56
|
+
tree.write(path, content);
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
function replaceSelector(tree) {
|
|
60
|
+
(0, visit_files_1.visitFiles)(tree, '.', (path) => {
|
|
61
|
+
// if this is not an html file or typescript file (inline templates) then skip
|
|
62
|
+
if (!path.endsWith('.html') && !path.endsWith('.ts')) {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
let content = tree.read(path, 'utf-8');
|
|
66
|
+
if (!content) {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
// dialog content
|
|
70
|
+
if (content.includes('*brnDialogContent')) {
|
|
71
|
+
content = content.replace(/\*brnDialogContent/g, '*hlmDialogPortal');
|
|
72
|
+
}
|
|
73
|
+
// alert dialog content
|
|
74
|
+
if (content.includes('*brnAlertDialogContent')) {
|
|
75
|
+
content = content.replace(/\*brnAlertDialogContent/g, '*hlmAlertDialogPortal');
|
|
76
|
+
}
|
|
77
|
+
// popover content
|
|
78
|
+
if (content.includes('*brnPopoverContent')) {
|
|
79
|
+
content = content.replace(/\*brnPopoverContent/g, '*hlmPopoverPortal');
|
|
80
|
+
}
|
|
81
|
+
// sheet content
|
|
82
|
+
if (content.includes('*brnSheetContent')) {
|
|
83
|
+
content = content.replace(/\*brnSheetContent/g, '*hlmSheetPortal');
|
|
84
|
+
}
|
|
85
|
+
// navigation-menu content
|
|
86
|
+
if (content.includes('*brnNavigationMenuContent')) {
|
|
87
|
+
content = content.replace(/\*brnNavigationMenuContent/g, '*hlmNavigationMenuPortal');
|
|
88
|
+
}
|
|
89
|
+
tree.write(path, content);
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
exports.default = migrateDialogPortalGenerator;
|
|
93
|
+
//# sourceMappingURL=generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../libs/cli/src/generators/migrate-dialog-portal/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema",
|
|
3
|
+
"$id": "MigrateDialogPortal",
|
|
4
|
+
"title": "",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"skipFormat": {
|
|
8
|
+
"type": "boolean",
|
|
9
|
+
"default": false,
|
|
10
|
+
"description": "Skip formatting files"
|
|
11
|
+
},
|
|
12
|
+
"importAlias": {
|
|
13
|
+
"type": "string",
|
|
14
|
+
"default": "@spartan-ui/helm",
|
|
15
|
+
"description": "The prefix to use for helm imports"
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
"required": []
|
|
19
|
+
}
|
|
@@ -6,6 +6,7 @@ import { HlmAlertDialogDescription } from './lib/hlm-alert-dialog-description';
|
|
|
6
6
|
import { HlmAlertDialogFooter } from './lib/hlm-alert-dialog-footer';
|
|
7
7
|
import { HlmAlertDialogHeader } from './lib/hlm-alert-dialog-header';
|
|
8
8
|
import { HlmAlertDialogOverlay } from './lib/hlm-alert-dialog-overlay';
|
|
9
|
+
import { HlmAlertDialogPortal } from './lib/hlm-alert-dialog-portal';
|
|
9
10
|
import { HlmAlertDialogTitle } from './lib/hlm-alert-dialog-title';
|
|
10
11
|
import { HlmAlertDialogTrigger } from './lib/hlm-alert-dialog-trigger';
|
|
11
12
|
|
|
@@ -17,18 +18,20 @@ export * from './lib/hlm-alert-dialog-description';
|
|
|
17
18
|
export * from './lib/hlm-alert-dialog-footer';
|
|
18
19
|
export * from './lib/hlm-alert-dialog-header';
|
|
19
20
|
export * from './lib/hlm-alert-dialog-overlay';
|
|
21
|
+
export * from './lib/hlm-alert-dialog-portal';
|
|
20
22
|
export * from './lib/hlm-alert-dialog-title';
|
|
21
23
|
export * from './lib/hlm-alert-dialog-trigger';
|
|
22
24
|
|
|
23
25
|
export const HlmAlertDialogImports = [
|
|
24
26
|
HlmAlertDialog,
|
|
27
|
+
HlmAlertDialogAction,
|
|
28
|
+
HlmAlertDialogCancel,
|
|
25
29
|
HlmAlertDialogContent,
|
|
26
30
|
HlmAlertDialogDescription,
|
|
27
31
|
HlmAlertDialogFooter,
|
|
28
32
|
HlmAlertDialogHeader,
|
|
29
33
|
HlmAlertDialogOverlay,
|
|
34
|
+
HlmAlertDialogPortal,
|
|
30
35
|
HlmAlertDialogTitle,
|
|
31
|
-
HlmAlertDialogAction,
|
|
32
|
-
HlmAlertDialogCancel,
|
|
33
36
|
HlmAlertDialogTrigger,
|
|
34
37
|
] as const;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import { BrnAlertDialogContent } from '@spartan-ng/brain/alert-dialog';
|
|
3
|
+
|
|
4
|
+
@Directive({
|
|
5
|
+
selector: '[hlmAlertDialogPortal]',
|
|
6
|
+
hostDirectives: [{ directive: BrnAlertDialogContent, inputs: ['context', 'class'] }],
|
|
7
|
+
})
|
|
8
|
+
export class HlmAlertDialogPortal {}
|
|
@@ -6,6 +6,7 @@ import { HlmAutocompleteInput } from './lib/hlm-autocomplete-input';
|
|
|
6
6
|
import { HlmAutocompleteItem } from './lib/hlm-autocomplete-item';
|
|
7
7
|
import { HlmAutocompleteLabel } from './lib/hlm-autocomplete-label';
|
|
8
8
|
import { HlmAutocompleteList } from './lib/hlm-autocomplete-list';
|
|
9
|
+
import { HlmAutocompletePortal } from './lib/hlm-autocomplete-portal';
|
|
9
10
|
import { HlmAutocompleteSearch } from './lib/hlm-autocomplete-search';
|
|
10
11
|
import { HlmAutocompleteSeparator } from './lib/hlm-autocomplete-separator';
|
|
11
12
|
import { HlmAutocompleteStatus } from './lib/hlm-autocomplete-status';
|
|
@@ -18,6 +19,7 @@ export * from './lib/hlm-autocomplete-input';
|
|
|
18
19
|
export * from './lib/hlm-autocomplete-item';
|
|
19
20
|
export * from './lib/hlm-autocomplete-label';
|
|
20
21
|
export * from './lib/hlm-autocomplete-list';
|
|
22
|
+
export * from './lib/hlm-autocomplete-portal';
|
|
21
23
|
export * from './lib/hlm-autocomplete-search';
|
|
22
24
|
export * from './lib/hlm-autocomplete-separator';
|
|
23
25
|
export * from './lib/hlm-autocomplete-status';
|
|
@@ -31,6 +33,7 @@ export const HlmAutocompleteImports = [
|
|
|
31
33
|
HlmAutocompleteItem,
|
|
32
34
|
HlmAutocompleteLabel,
|
|
33
35
|
HlmAutocompleteList,
|
|
36
|
+
HlmAutocompletePortal,
|
|
34
37
|
HlmAutocompleteSearch,
|
|
35
38
|
HlmAutocompleteSeparator,
|
|
36
39
|
HlmAutocompleteStatus,
|
|
@@ -3,14 +3,14 @@ import { BrnAutocompleteContent } from '@spartan-ng/brain/autocomplete';
|
|
|
3
3
|
import { classes } from '<%- importAlias %>/utils';
|
|
4
4
|
|
|
5
5
|
@Directive({
|
|
6
|
-
selector: '[hlmAutocompleteContent]',
|
|
6
|
+
selector: '[hlmAutocompleteContent],hlm-autocomplete-content',
|
|
7
7
|
hostDirectives: [BrnAutocompleteContent],
|
|
8
8
|
})
|
|
9
9
|
export class HlmAutocompleteContent {
|
|
10
10
|
constructor() {
|
|
11
11
|
classes(
|
|
12
12
|
() =>
|
|
13
|
-
'group/autocomplete-content bg-popover text-popover-foreground data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 ring-foreground/10 max-h-72 w-(--brn-autocomplete-width) min-w-36 overflow-hidden rounded-md p-0 shadow-md ring-1 duration-100',
|
|
13
|
+
'group/autocomplete-content bg-popover text-popover-foreground data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 ring-foreground/10 flex max-h-72 w-(--brn-autocomplete-width) min-w-36 flex-col overflow-hidden rounded-md p-0 shadow-md ring-1 duration-100',
|
|
14
14
|
);
|
|
15
15
|
}
|
|
16
16
|
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import { BrnPopoverContent } from '@spartan-ng/brain/popover';
|
|
3
|
+
|
|
4
|
+
@Directive({
|
|
5
|
+
selector: '[hlmAutocompletePortal]',
|
|
6
|
+
hostDirectives: [{ directive: BrnPopoverContent, inputs: ['context', 'class'] }],
|
|
7
|
+
})
|
|
8
|
+
export class HlmAutocompletePortal {}
|
|
@@ -18,12 +18,21 @@ import { classes } from '<%- importAlias %>/utils';
|
|
|
18
18
|
hostDirectives: [
|
|
19
19
|
{
|
|
20
20
|
directive: BrnAutocompleteSearch,
|
|
21
|
-
inputs: ['disabled', 'value', 'search', 'itemToString'],
|
|
21
|
+
inputs: ['autoHighlight', 'disabled', 'value', 'search', 'itemToString'],
|
|
22
22
|
outputs: ['valueChange', 'searchChange'],
|
|
23
23
|
},
|
|
24
24
|
{
|
|
25
25
|
directive: BrnPopover,
|
|
26
|
-
inputs: [
|
|
26
|
+
inputs: [
|
|
27
|
+
'align',
|
|
28
|
+
'autoFocus',
|
|
29
|
+
'closeDelay',
|
|
30
|
+
'closeOnOutsidePointerEvents',
|
|
31
|
+
'sideOffset',
|
|
32
|
+
'state',
|
|
33
|
+
'offsetX',
|
|
34
|
+
'restoreFocus',
|
|
35
|
+
],
|
|
27
36
|
outputs: ['stateChanged', 'closed'],
|
|
28
37
|
},
|
|
29
38
|
],
|
|
@@ -18,12 +18,21 @@ import { classes } from '<%- importAlias %>/utils';
|
|
|
18
18
|
hostDirectives: [
|
|
19
19
|
{
|
|
20
20
|
directive: BrnAutocomplete,
|
|
21
|
-
inputs: ['disabled', 'value', 'search', 'itemToString', 'isItemEqualToValue'],
|
|
21
|
+
inputs: ['autoHighlight', 'disabled', 'value', 'search', 'itemToString', 'isItemEqualToValue'],
|
|
22
22
|
outputs: ['valueChange', 'searchChange'],
|
|
23
23
|
},
|
|
24
24
|
{
|
|
25
25
|
directive: BrnPopover,
|
|
26
|
-
inputs: [
|
|
26
|
+
inputs: [
|
|
27
|
+
'align',
|
|
28
|
+
'autoFocus',
|
|
29
|
+
'closeDelay',
|
|
30
|
+
'closeOnOutsidePointerEvents',
|
|
31
|
+
'sideOffset',
|
|
32
|
+
'state',
|
|
33
|
+
'offsetX',
|
|
34
|
+
'restoreFocus',
|
|
35
|
+
],
|
|
27
36
|
outputs: ['stateChanged', 'closed'],
|
|
28
37
|
},
|
|
29
38
|
],
|
|
@@ -10,6 +10,7 @@ import { HlmComboboxItem } from './lib/hlm-combobox-item';
|
|
|
10
10
|
import { HlmComboboxLabel } from './lib/hlm-combobox-label';
|
|
11
11
|
import { HlmComboboxList } from './lib/hlm-combobox-list';
|
|
12
12
|
import { HlmComboboxMultiple } from './lib/hlm-combobox-multiple';
|
|
13
|
+
import { HlmComboboxPortal } from './lib/hlm-combobox-portal';
|
|
13
14
|
import { HlmComboboxSeparator } from './lib/hlm-combobox-separator';
|
|
14
15
|
import { HlmComboboxStatus } from './lib/hlm-combobox-status';
|
|
15
16
|
import { HlmComboboxTrigger } from './lib/hlm-combobox-trigger';
|
|
@@ -28,6 +29,7 @@ export * from './lib/hlm-combobox-item';
|
|
|
28
29
|
export * from './lib/hlm-combobox-label';
|
|
29
30
|
export * from './lib/hlm-combobox-list';
|
|
30
31
|
export * from './lib/hlm-combobox-multiple';
|
|
32
|
+
export * from './lib/hlm-combobox-portal';
|
|
31
33
|
export * from './lib/hlm-combobox-separator';
|
|
32
34
|
export * from './lib/hlm-combobox-status';
|
|
33
35
|
export * from './lib/hlm-combobox-trigger';
|
|
@@ -47,6 +49,7 @@ export const HlmComboboxImports = [
|
|
|
47
49
|
HlmComboboxLabel,
|
|
48
50
|
HlmComboboxList,
|
|
49
51
|
HlmComboboxMultiple,
|
|
52
|
+
HlmComboboxPortal,
|
|
50
53
|
HlmComboboxSeparator,
|
|
51
54
|
HlmComboboxStatus,
|
|
52
55
|
HlmComboboxTrigger,
|
|
@@ -3,13 +3,13 @@ import { BrnComboboxContent } from '@spartan-ng/brain/combobox';
|
|
|
3
3
|
import { classes } from '<%- importAlias %>/utils';
|
|
4
4
|
|
|
5
5
|
@Directive({
|
|
6
|
-
selector: '[hlmComboboxContent]',
|
|
6
|
+
selector: '[hlmComboboxContent],hlm-combobox-content',
|
|
7
7
|
hostDirectives: [BrnComboboxContent],
|
|
8
8
|
})
|
|
9
9
|
export class HlmComboboxContent {
|
|
10
10
|
constructor() {
|
|
11
11
|
classes(() => [
|
|
12
|
-
'group/combobox-content bg-popover text-popover-foreground data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 ring-foreground/10 max-h-72 w-(--brn-combobox-width) min-w-36 overflow-hidden rounded-md p-0 shadow-md ring-1 duration-100',
|
|
12
|
+
'group/combobox-content bg-popover text-popover-foreground data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 ring-foreground/10 flex max-h-72 w-(--brn-combobox-width) min-w-36 flex-col overflow-hidden rounded-md p-0 shadow-md ring-1 duration-100',
|
|
13
13
|
// change input group styles in the content
|
|
14
14
|
'**:data-[slot=input-group]:bg-input **:data-[slot=input-group]:border-input/30 **:has-[[data-slot=input-group-control]:focus-visible]:border-input **:has-[[data-slot=input-group-control]:focus-visible]:ring-0 **:data-[slot=input-group]:m-1 **:data-[slot=input-group]:mb-0 **:data-[slot=input-group]:h-8 **:data-[slot=input-group]:shadow-none',
|
|
15
15
|
]);
|
|
@@ -18,12 +18,30 @@ import { classes } from '<%- importAlias %>/utils';
|
|
|
18
18
|
hostDirectives: [
|
|
19
19
|
{
|
|
20
20
|
directive: BrnComboboxMultiple,
|
|
21
|
-
inputs: [
|
|
21
|
+
inputs: [
|
|
22
|
+
'autoHighlight',
|
|
23
|
+
'disabled',
|
|
24
|
+
'filter',
|
|
25
|
+
'search',
|
|
26
|
+
'value',
|
|
27
|
+
'itemToString',
|
|
28
|
+
'filterOptions',
|
|
29
|
+
'isItemEqualToValue',
|
|
30
|
+
],
|
|
22
31
|
outputs: ['searchChange', 'valueChange'],
|
|
23
32
|
},
|
|
24
33
|
{
|
|
25
34
|
directive: BrnPopover,
|
|
26
|
-
inputs: [
|
|
35
|
+
inputs: [
|
|
36
|
+
'align',
|
|
37
|
+
'autoFocus',
|
|
38
|
+
'closeDelay',
|
|
39
|
+
'closeOnOutsidePointerEvents',
|
|
40
|
+
'sideOffset',
|
|
41
|
+
'state',
|
|
42
|
+
'offsetX',
|
|
43
|
+
'restoreFocus',
|
|
44
|
+
],
|
|
27
45
|
outputs: ['stateChanged', 'closed'],
|
|
28
46
|
},
|
|
29
47
|
],
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import { BrnPopoverContent } from '@spartan-ng/brain/popover';
|
|
3
|
+
|
|
4
|
+
@Directive({
|
|
5
|
+
selector: '[hlmComboboxPortal]',
|
|
6
|
+
hostDirectives: [{ directive: BrnPopoverContent, inputs: ['context', 'class'] }],
|
|
7
|
+
})
|
|
8
|
+
export class HlmComboboxPortal {}
|
|
@@ -18,12 +18,30 @@ import { classes } from '<%- importAlias %>/utils';
|
|
|
18
18
|
hostDirectives: [
|
|
19
19
|
{
|
|
20
20
|
directive: BrnCombobox,
|
|
21
|
-
inputs: [
|
|
21
|
+
inputs: [
|
|
22
|
+
'autoHighlight',
|
|
23
|
+
'disabled',
|
|
24
|
+
'filter',
|
|
25
|
+
'search',
|
|
26
|
+
'value',
|
|
27
|
+
'itemToString',
|
|
28
|
+
'filterOptions',
|
|
29
|
+
'isItemEqualToValue',
|
|
30
|
+
],
|
|
22
31
|
outputs: ['searchChange', 'valueChange'],
|
|
23
32
|
},
|
|
24
33
|
{
|
|
25
34
|
directive: BrnPopover,
|
|
26
|
-
inputs: [
|
|
35
|
+
inputs: [
|
|
36
|
+
'align',
|
|
37
|
+
'autoFocus',
|
|
38
|
+
'closeDelay',
|
|
39
|
+
'closeOnOutsidePointerEvents',
|
|
40
|
+
'sideOffset',
|
|
41
|
+
'state',
|
|
42
|
+
'offsetX',
|
|
43
|
+
'restoreFocus',
|
|
44
|
+
],
|
|
27
45
|
outputs: ['stateChanged', 'closed'],
|
|
28
46
|
},
|
|
29
47
|
],
|
|
@@ -4,10 +4,9 @@ import { HlmCommandEmpty } from './lib/hlm-command-empty';
|
|
|
4
4
|
import { HlmCommandEmptyState } from './lib/hlm-command-empty-state';
|
|
5
5
|
import { HlmCommandGroup } from './lib/hlm-command-group';
|
|
6
6
|
import { HlmCommandGroupLabel } from './lib/hlm-command-group-label';
|
|
7
|
+
import { HlmCommandInput } from './lib/hlm-command-input';
|
|
7
8
|
import { HlmCommandItem } from './lib/hlm-command-item';
|
|
8
9
|
import { HlmCommandList } from './lib/hlm-command-list';
|
|
9
|
-
import { HlmCommandSearch } from './lib/hlm-command-search';
|
|
10
|
-
import { HlmCommandSearchInput } from './lib/hlm-command-search-input';
|
|
11
10
|
import { HlmCommandSeparator } from './lib/hlm-command-separator';
|
|
12
11
|
import { HlmCommandShortcut } from './lib/hlm-command-shortcut';
|
|
13
12
|
|
|
@@ -17,10 +16,9 @@ export * from './lib/hlm-command-empty';
|
|
|
17
16
|
export * from './lib/hlm-command-empty-state';
|
|
18
17
|
export * from './lib/hlm-command-group';
|
|
19
18
|
export * from './lib/hlm-command-group-label';
|
|
19
|
+
export * from './lib/hlm-command-input';
|
|
20
20
|
export * from './lib/hlm-command-item';
|
|
21
21
|
export * from './lib/hlm-command-list';
|
|
22
|
-
export * from './lib/hlm-command-search';
|
|
23
|
-
export * from './lib/hlm-command-search-input';
|
|
24
22
|
export * from './lib/hlm-command-separator';
|
|
25
23
|
export * from './lib/hlm-command-shortcut';
|
|
26
24
|
|
|
@@ -31,10 +29,9 @@ export const HlmCommandImports = [
|
|
|
31
29
|
HlmCommandEmptyState,
|
|
32
30
|
HlmCommandGroup,
|
|
33
31
|
HlmCommandGroupLabel,
|
|
32
|
+
HlmCommandInput,
|
|
34
33
|
HlmCommandItem,
|
|
35
34
|
HlmCommandList,
|
|
36
|
-
HlmCommandSearchInput,
|
|
37
|
-
HlmCommandSearch,
|
|
38
35
|
HlmCommandSeparator,
|
|
39
36
|
HlmCommandShortcut,
|
|
40
37
|
] as const;
|
|
@@ -1,26 +1,54 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
|
|
1
|
+
import { BooleanInput } from '@angular/cdk/coercion';
|
|
2
|
+
import {
|
|
3
|
+
booleanAttribute,
|
|
4
|
+
ChangeDetectionStrategy,
|
|
5
|
+
Component,
|
|
6
|
+
computed,
|
|
7
|
+
input,
|
|
8
|
+
linkedSignal,
|
|
9
|
+
output,
|
|
10
|
+
} from '@angular/core';
|
|
11
|
+
import { BrnDialogContent, BrnDialogState } from '@spartan-ng/brain/dialog';
|
|
12
|
+
import { HlmDialogImports } from '<%- importAlias %>/dialog';
|
|
13
|
+
import { hlm } from '<%- importAlias %>/utils';
|
|
14
|
+
import { ClassValue } from 'clsx';
|
|
4
15
|
|
|
5
|
-
@
|
|
6
|
-
selector: '
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
16
|
+
@Component({
|
|
17
|
+
selector: 'hlm-command-dialog',
|
|
18
|
+
imports: [HlmDialogImports, BrnDialogContent],
|
|
19
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
20
|
+
template: `
|
|
21
|
+
<hlm-dialog [state]="_state()" (stateChanged)="stateChanged($event)">
|
|
22
|
+
<hlm-dialog-content
|
|
23
|
+
*hlmDialogPortal="let ctx"
|
|
24
|
+
[class]="_computedDialogContentClass()"
|
|
25
|
+
[showCloseButton]="showCloseButton()"
|
|
26
|
+
>
|
|
27
|
+
<hlm-dialog-header class="sr-only">
|
|
28
|
+
<h2 hlmDialogTitle>{{ title() }}</h2>
|
|
29
|
+
<p hlmDialogDescription>{{ description() }}</p>
|
|
30
|
+
</hlm-dialog-header>
|
|
31
|
+
<ng-content />
|
|
32
|
+
</hlm-dialog-content>
|
|
33
|
+
</hlm-dialog>
|
|
34
|
+
`,
|
|
10
35
|
})
|
|
11
36
|
export class HlmCommandDialog {
|
|
12
|
-
|
|
13
|
-
|
|
37
|
+
public readonly title = input<string>('Command Palette');
|
|
38
|
+
public readonly description = input<string>('Search for a command to run...');
|
|
14
39
|
|
|
15
|
-
|
|
16
|
-
|
|
40
|
+
public readonly state = input<BrnDialogState>('closed');
|
|
41
|
+
protected readonly _state = linkedSignal(this.state);
|
|
17
42
|
|
|
18
|
-
|
|
19
|
-
const searchInput = this._searchInput();
|
|
43
|
+
public readonly showCloseButton = input<boolean, BooleanInput>(false, { transform: booleanAttribute });
|
|
20
44
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
45
|
+
public readonly dialogContentClass = input<ClassValue>('');
|
|
46
|
+
protected readonly _computedDialogContentClass = computed(() => hlm('w-96 p-0', this.dialogContentClass()));
|
|
47
|
+
|
|
48
|
+
public readonly stateChange = output<BrnDialogState>();
|
|
49
|
+
|
|
50
|
+
protected stateChanged(state: BrnDialogState) {
|
|
51
|
+
this.stateChange.emit(state);
|
|
52
|
+
this._state.set(state);
|
|
25
53
|
}
|
|
26
54
|
}
|