@ngbase/adk 0.1.2 → 0.1.4
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/a11y/accessibility-group.d.ts +2 -5
- package/accordion/accordion-item.d.ts +3 -1
- package/autocomplete/autocomplete-input.d.ts +2 -4
- package/autocomplete/autocomplete.d.ts +12 -3
- package/carousel/carousel.d.ts +2 -2
- package/checkbox/checkbox.d.ts +11 -3
- package/checkbox/public-api.d.ts +1 -1
- package/datepicker/datepicker-trigger.d.ts +22 -5
- package/datepicker/datepicker.d.ts +2 -1
- package/drag/drag.d.ts +1 -2
- package/fesm2022/ngbase-adk-a11y.mjs +29 -26
- package/fesm2022/ngbase-adk-a11y.mjs.map +1 -1
- package/fesm2022/ngbase-adk-accordion.mjs +12 -2
- package/fesm2022/ngbase-adk-accordion.mjs.map +1 -1
- package/fesm2022/ngbase-adk-autocomplete.mjs +18 -18
- package/fesm2022/ngbase-adk-autocomplete.mjs.map +1 -1
- package/fesm2022/ngbase-adk-carousel.mjs +5 -5
- package/fesm2022/ngbase-adk-carousel.mjs.map +1 -1
- package/fesm2022/ngbase-adk-checkbox.mjs +8 -6
- package/fesm2022/ngbase-adk-checkbox.mjs.map +1 -1
- package/fesm2022/ngbase-adk-datepicker.mjs +76 -25
- package/fesm2022/ngbase-adk-datepicker.mjs.map +1 -1
- package/fesm2022/ngbase-adk-dialog.mjs +3 -3
- package/fesm2022/ngbase-adk-dialog.mjs.map +1 -1
- package/fesm2022/ngbase-adk-drag.mjs +1 -2
- package/fesm2022/ngbase-adk-drag.mjs.map +1 -1
- package/fesm2022/ngbase-adk-list.mjs +2 -2
- package/fesm2022/ngbase-adk-list.mjs.map +1 -1
- package/fesm2022/ngbase-adk-mask.mjs +5 -3
- package/fesm2022/ngbase-adk-mask.mjs.map +1 -1
- package/fesm2022/ngbase-adk-menu.mjs +22 -7
- package/fesm2022/ngbase-adk-menu.mjs.map +1 -1
- package/fesm2022/ngbase-adk-pagination.mjs +3 -3
- package/fesm2022/ngbase-adk-pagination.mjs.map +1 -1
- package/fesm2022/ngbase-adk-popover.mjs +25 -22
- package/fesm2022/ngbase-adk-popover.mjs.map +1 -1
- package/fesm2022/ngbase-adk-portal.mjs +5 -9
- package/fesm2022/ngbase-adk-portal.mjs.map +1 -1
- package/fesm2022/ngbase-adk-radio.mjs +6 -3
- package/fesm2022/ngbase-adk-radio.mjs.map +1 -1
- package/fesm2022/ngbase-adk-resizable.mjs.map +1 -1
- package/fesm2022/ngbase-adk-select.mjs +21 -13
- package/fesm2022/ngbase-adk-select.mjs.map +1 -1
- package/fesm2022/ngbase-adk-slider.mjs +4 -1
- package/fesm2022/ngbase-adk-slider.mjs.map +1 -1
- package/fesm2022/ngbase-adk-stepper.mjs.map +1 -1
- package/fesm2022/ngbase-adk-table.mjs +8 -6
- package/fesm2022/ngbase-adk-table.mjs.map +1 -1
- package/fesm2022/ngbase-adk-tabs.mjs.map +1 -1
- package/fesm2022/ngbase-adk-test.mjs +11 -1
- package/fesm2022/ngbase-adk-test.mjs.map +1 -1
- package/fesm2022/ngbase-adk-tour.mjs +2 -2
- package/fesm2022/ngbase-adk-tour.mjs.map +1 -1
- package/fesm2022/ngbase-adk-utils.mjs +12 -9
- package/fesm2022/ngbase-adk-utils.mjs.map +1 -1
- package/mask/mask.d.ts +1 -2
- package/menu/menu-trigger.d.ts +1 -1
- package/menu/menu.d.ts +8 -2
- package/package.json +8 -8
- package/pagination/pagination.d.ts +3 -3
- package/popover/base-popover.service.d.ts +1 -1
- package/popover/popover.d.ts +5 -4
- package/portal/portal-base.service.d.ts +3 -3
- package/portal/portal-close.directive.d.ts +3 -2
- package/radio/radio.d.ts +5 -1
- package/schematics/components/files/accordion/accordion.ts.template +2 -2
- package/schematics/components/files/alert/alert.ts.template +1 -1
- package/schematics/components/files/autocomplete/autocomplete.ts.template +1 -1
- package/schematics/components/files/avatar/avatar.ts.template +1 -1
- package/schematics/components/files/badge/badge.ts.template +1 -1
- package/schematics/components/files/breadcrumb/breadcrumb.ts.template +6 -2
- package/schematics/components/files/button/button.ts.template +5 -5
- package/schematics/components/files/card/card.ts.template +1 -1
- package/schematics/components/files/checkbox/checkbox.ts.template +9 -19
- package/schematics/components/files/checkbox/focus-style.directive.ts.template +1 -1
- package/schematics/components/files/chip/chip.ts.template +4 -2
- package/schematics/components/files/color-picker/color-picker.ts.template +1 -1
- package/schematics/components/files/command/command.ts.template +1 -1
- package/schematics/components/files/datepicker/calendar.ts.template +10 -10
- package/schematics/components/files/datepicker/datepicker.ts.template +19 -18
- package/schematics/components/files/datepicker/time.ts.template +3 -3
- package/schematics/components/files/dialog/dialog.ts.template +1 -1
- package/schematics/components/files/drawer/drawer.ts.template +2 -2
- package/schematics/components/files/form-field/form-field.ts.template +8 -8
- package/schematics/components/files/form-field/input-style.directive.ts.template +1 -1
- package/schematics/components/files/keys/key.ts.template +1 -1
- package/schematics/components/files/list/list.ts.template +1 -1
- package/schematics/components/files/otp/otp.ts.template +1 -1
- package/schematics/components/files/pagination/pagination.ts.template +6 -2
- package/schematics/components/files/popover/popover.ts.template +2 -2
- package/schematics/components/files/progress/progress.ts.template +1 -1
- package/schematics/components/files/radio/radio.ts.template +7 -5
- package/schematics/components/files/resizable/resizable.ts.template +6 -3
- package/schematics/components/files/select/option.ts.template +2 -2
- package/schematics/components/files/select/select.ts.template +3 -3
- package/schematics/components/files/selectable/selectable.ts.template +5 -5
- package/schematics/components/files/sheet/sheet.ts.template +1 -1
- package/schematics/components/files/sidenav/sidenav.ts.template +1 -1
- package/schematics/components/files/skeleton/skeleton.ts.template +1 -1
- package/schematics/components/files/slider/slider.ts.template +3 -3
- package/schematics/components/files/sonner/sonner.ts.template +3 -3
- package/schematics/components/files/spinner/spinner.ts.template +1 -1
- package/schematics/components/files/stepper/stepper.ts.template +1 -1
- package/schematics/components/files/switch/switch.ts.template +2 -2
- package/schematics/components/files/table/index.ts.template +12 -11
- package/schematics/components/files/table/table.ts.template +107 -5
- package/schematics/components/files/tabs/tab.ts.template +4 -4
- package/schematics/components/files/toggle/toggle.ts.template +1 -1
- package/schematics/components/files/toggle-group/toggle-group.ts.template +1 -1
- package/schematics/components/files/tooltip/tooltip.ts.template +1 -1
- package/schematics/components/index.js +32 -8
- package/schematics/components/index.js.map +1 -1
- package/schematics/components/index.ts +41 -11
- package/schematics/components/schema.d.ts +1 -1
- package/schematics/components/schema.json +2 -2
- package/schematics/components/schema.ts +1 -1
- package/select/option.d.ts +1 -1
- package/select/select-base.d.ts +8 -6
- package/select/select.d.ts +5 -2
- package/slider/slider.d.ts +1 -0
- package/table/table.d.ts +2 -2
- package/test/utils.d.ts +19 -3
- package/utils/utils.d.ts +5 -4
- package/schematics/components/files/table/body-cell.ts.template +0 -19
- package/schematics/components/files/table/body-row.ts.template +0 -21
- package/schematics/components/files/table/column.ts.template +0 -8
- package/schematics/components/files/table/head-cell.ts.template +0 -19
- package/schematics/components/files/table/head-row.ts.template +0 -27
|
@@ -27,7 +27,7 @@ import {
|
|
|
27
27
|
<div class="relative flex overflow-hidden">
|
|
28
28
|
<button
|
|
29
29
|
ngbTabScroll="left"
|
|
30
|
-
class="absolute left-0 z-10 h-full place-items-center bg-
|
|
30
|
+
class="absolute left-0 z-10 h-full place-items-center bg-background px-2"
|
|
31
31
|
>
|
|
32
32
|
<<%= name %>-icon name="lucideChevronLeft" />
|
|
33
33
|
</button>
|
|
@@ -36,14 +36,14 @@ import {
|
|
|
36
36
|
@for (tab of tabs(); track tab.id) {
|
|
37
37
|
<button
|
|
38
38
|
[ngbTabButton]="tab"
|
|
39
|
-
class="whitespace-nowrap border-b-2 border-transparent px-4 py-3 font-medium
|
|
39
|
+
class="text-muted-foreground aria-[disabled=true]:text-muted-foreground whitespace-nowrap border-b-2 border-transparent px-4 py-3 font-medium aria-[disabled=true]:cursor-not-allowed aria-[selected=true]:!border-primary aria-[selected=true]:!text-primary aria-[disabled=true]:opacity-50"
|
|
40
40
|
></button>
|
|
41
41
|
}
|
|
42
42
|
</div>
|
|
43
43
|
</nav>
|
|
44
44
|
<button
|
|
45
45
|
ngbTabScroll="right"
|
|
46
|
-
class="absolute right-0 z-10 h-full place-items-center bg-
|
|
46
|
+
class="absolute right-0 z-10 h-full place-items-center bg-background px-2"
|
|
47
47
|
>
|
|
48
48
|
<<%= name %>-icon name="lucideChevronRight" />
|
|
49
49
|
</button>
|
|
@@ -52,7 +52,7 @@ import {
|
|
|
52
52
|
</div>
|
|
53
53
|
<ng-content /> `,
|
|
54
54
|
host: {
|
|
55
|
-
class: 'bg-
|
|
55
|
+
class: 'bg-background flex flex-col',
|
|
56
56
|
},
|
|
57
57
|
})
|
|
58
58
|
export class Tabs extends NgbTabs<Tab> {}
|
|
@@ -7,7 +7,7 @@ import { NgbToggle } from '@ngbase/adk/toggle';
|
|
|
7
7
|
hostDirectives: [{ directive: NgbToggle, inputs: ['value'], outputs: ['valueChange'] }],
|
|
8
8
|
template: `<ng-content />`,
|
|
9
9
|
host: {
|
|
10
|
-
class: 'block w-9 h-9 rounded relative aria-[pressed=true]:bg-
|
|
10
|
+
class: 'block w-9 h-9 rounded relative aria-[pressed=true]:bg-foreground',
|
|
11
11
|
},
|
|
12
12
|
})
|
|
13
13
|
export class Toggle {}
|
|
@@ -19,7 +19,7 @@ export class ToggleGroup<T> {}
|
|
|
19
19
|
hostDirectives: [{ directive: NgbToggleItem, inputs: ['disabled', 'value'] }],
|
|
20
20
|
host: {
|
|
21
21
|
class:
|
|
22
|
-
'inline-block rounded h-9 px-3 hover:bg-opacity-80 active:bg-opacity-70 aria-[selected=true]:bg-
|
|
22
|
+
'inline-block rounded h-9 px-3 hover:bg-opacity-80 active:bg-opacity-70 aria-[selected=true]:bg-foreground',
|
|
23
23
|
},
|
|
24
24
|
})
|
|
25
25
|
export class ToggleItem<T> {}
|
|
@@ -32,7 +32,7 @@ export class Tooltip {}
|
|
|
32
32
|
template: `<div ngbPopoverArrow>{{ content() }}</div>`,
|
|
33
33
|
host: {
|
|
34
34
|
class:
|
|
35
|
-
'fixed inline-block rounded-lg bg-
|
|
35
|
+
'fixed inline-block rounded-lg bg-background px-3 py-1 border shadow-md z-p whitespace-pre-line max-w-[15rem] text-text',
|
|
36
36
|
'[class]': `theme.mode() === 'dark' ? 'light' : 'dark'`,
|
|
37
37
|
},
|
|
38
38
|
animations: [tooltipAnimation],
|
|
@@ -3,15 +3,39 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.myGenerator = myGenerator;
|
|
4
4
|
const schematics_1 = require("@angular-devkit/schematics");
|
|
5
5
|
const core_1 = require("@angular-devkit/core");
|
|
6
|
+
function readConfigFile(tree) {
|
|
7
|
+
const configPath = 'ngbase.config.json';
|
|
8
|
+
if (tree.exists(configPath)) {
|
|
9
|
+
const buffer = tree.read(configPath);
|
|
10
|
+
if (buffer) {
|
|
11
|
+
try {
|
|
12
|
+
const content = JSON.parse(buffer.toString());
|
|
13
|
+
return content;
|
|
14
|
+
}
|
|
15
|
+
catch (error) {
|
|
16
|
+
console.warn(`⚠️ Failed to parse ${configPath}:`, error);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
return {};
|
|
21
|
+
}
|
|
6
22
|
function myGenerator(options) {
|
|
7
|
-
return () => {
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
(0, schematics_1.
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
23
|
+
return (tree) => {
|
|
24
|
+
const config = readConfigFile(tree);
|
|
25
|
+
const finalOptions = Object.assign(Object.assign({}, config), options);
|
|
26
|
+
if (!options.component || options.component.length === 0) {
|
|
27
|
+
return (0, schematics_1.noop)();
|
|
28
|
+
}
|
|
29
|
+
const rules = options.component.map(comp => {
|
|
30
|
+
const sourceTemplates = (0, schematics_1.url)(`./files/${comp}`);
|
|
31
|
+
const targetPath = options.path || '';
|
|
32
|
+
const sourceParametrizedTemplates = (0, schematics_1.apply)(sourceTemplates, [
|
|
33
|
+
(0, schematics_1.applyTemplates)(Object.assign(Object.assign(Object.assign({}, core_1.strings), finalOptions), { component: comp })),
|
|
34
|
+
(0, schematics_1.move)((0, core_1.normalize)(`/${targetPath}/${comp}`)),
|
|
35
|
+
]);
|
|
36
|
+
return (0, schematics_1.mergeWith)(sourceParametrizedTemplates);
|
|
37
|
+
});
|
|
38
|
+
return (0, schematics_1.chain)(rules);
|
|
15
39
|
};
|
|
16
40
|
}
|
|
17
41
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../projects/adk/schematics/components/index.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../projects/adk/schematics/components/index.ts"],"names":[],"mappings":";;AA8BA,kCA4BC;AA1DD,2DAUoC;AACpC,+CAA0D;AAG1D,SAAS,cAAc,CAAC,IAAU;IAChC,MAAM,UAAU,GAAG,oBAAoB,CAAC;IACxC,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACrC,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC9C,OAAO,OAAO,CAAC;YACjB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CAAC,sBAAsB,UAAU,GAAG,EAAE,KAAK,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAgB,WAAW,CAAC,OAA0B;IACpD,OAAO,CAAC,IAAU,EAAE,EAAE;QACpB,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,YAAY,mCAAQ,MAAM,GAAK,OAAO,CAAE,CAAC;QAE/C,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzD,OAAO,IAAA,iBAAI,GAAE,CAAC;QAChB,CAAC;QAED,MAAM,KAAK,GAAW,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YACjD,MAAM,eAAe,GAAG,IAAA,gBAAG,EAAC,WAAW,IAAI,EAAE,CAAC,CAAC;YAE/C,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;YAEtC,MAAM,2BAA2B,GAAG,IAAA,kBAAK,EAAC,eAAe,EAAE;gBACzD,IAAA,2BAAc,gDACT,cAAO,GACP,YAAY,KACf,SAAS,EAAE,IAAI,IACf;gBACF,IAAA,iBAAI,EAAC,IAAA,gBAAS,EAAC,IAAI,UAAU,IAAI,IAAI,EAAE,CAAC,CAAC;aAC1C,CAAC,CAAC;YAEH,OAAO,IAAA,sBAAS,EAAC,2BAA2B,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;QAEH,OAAO,IAAA,kBAAK,EAAC,KAAK,CAAC,CAAC;IACtB,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -6,24 +6,54 @@ import {
|
|
|
6
6
|
applyTemplates,
|
|
7
7
|
url,
|
|
8
8
|
chain,
|
|
9
|
+
noop,
|
|
10
|
+
Tree,
|
|
9
11
|
} from '@angular-devkit/schematics';
|
|
10
12
|
import { strings, normalize } from '@angular-devkit/core';
|
|
11
13
|
import { MyGeneratorSchema } from './schema';
|
|
12
14
|
|
|
15
|
+
function readConfigFile(tree: Tree): Partial<MyGeneratorSchema> {
|
|
16
|
+
const configPath = 'ngbase.config.json';
|
|
17
|
+
if (tree.exists(configPath)) {
|
|
18
|
+
const buffer = tree.read(configPath);
|
|
19
|
+
if (buffer) {
|
|
20
|
+
try {
|
|
21
|
+
const content = JSON.parse(buffer.toString());
|
|
22
|
+
return content;
|
|
23
|
+
} catch (error) {
|
|
24
|
+
console.warn(`⚠️ Failed to parse ${configPath}:`, error);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
return {};
|
|
29
|
+
}
|
|
30
|
+
|
|
13
31
|
export function myGenerator(options: MyGeneratorSchema): Rule {
|
|
14
|
-
return () => {
|
|
15
|
-
const
|
|
32
|
+
return (tree: Tree) => {
|
|
33
|
+
const config = readConfigFile(tree);
|
|
34
|
+
const finalOptions = { ...config, ...options };
|
|
35
|
+
|
|
36
|
+
if (!options.component || options.component.length === 0) {
|
|
37
|
+
return noop();
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
const rules: Rule[] = options.component.map(comp => {
|
|
41
|
+
const sourceTemplates = url(`./files/${comp}`);
|
|
42
|
+
|
|
43
|
+
const targetPath = options.path || '';
|
|
16
44
|
|
|
17
|
-
|
|
45
|
+
const sourceParametrizedTemplates = apply(sourceTemplates, [
|
|
46
|
+
applyTemplates({
|
|
47
|
+
...strings,
|
|
48
|
+
...finalOptions,
|
|
49
|
+
component: comp,
|
|
50
|
+
}),
|
|
51
|
+
move(normalize(`/${targetPath}/${comp}`)),
|
|
52
|
+
]);
|
|
18
53
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
...strings,
|
|
22
|
-
...options,
|
|
23
|
-
}),
|
|
24
|
-
move(normalize(`/${targetPath}/${options.component}`)),
|
|
25
|
-
]);
|
|
54
|
+
return mergeWith(sourceParametrizedTemplates);
|
|
55
|
+
});
|
|
26
56
|
|
|
27
|
-
return chain(
|
|
57
|
+
return chain(rules);
|
|
28
58
|
};
|
|
29
59
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"$schema": "http://json-schema.org/schema",
|
|
2
|
+
"$schema": "http://json-schema.org/draft-07/schema",
|
|
3
3
|
"$id": "SchematicsAccordion",
|
|
4
4
|
"title": "Accordion Schema",
|
|
5
5
|
"type": "object",
|
|
@@ -80,7 +80,7 @@
|
|
|
80
80
|
],
|
|
81
81
|
"x-prompt": {
|
|
82
82
|
"message": "Which component would you like to create?",
|
|
83
|
-
"type": "
|
|
83
|
+
"type": "checkbox",
|
|
84
84
|
"items": [
|
|
85
85
|
{ "value": "accordion", "label": "Accordion" },
|
|
86
86
|
{ "value": "alert", "label": "Alert" },
|
package/select/option.d.ts
CHANGED
|
@@ -19,7 +19,7 @@ export declare class NgbOption<T> {
|
|
|
19
19
|
label(): string;
|
|
20
20
|
focus(): void;
|
|
21
21
|
unselect(): void;
|
|
22
|
-
getValue(): string |
|
|
22
|
+
getValue(): string | T | undefined;
|
|
23
23
|
static ɵfac: i0.ɵɵFactoryDeclaration<NgbOption<any>, never>;
|
|
24
24
|
static ɵdir: i0.ɵɵDirectiveDeclaration<NgbOption<any>, "[ngbOption]", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "ayId": { "alias": "ayId"; "required": false; "isSignal": true; }; }, { "onSelectionChange": "onSelectionChange"; }, never, never, true, [{ directive: typeof i1.AccessibleItem; inputs: {}; outputs: {}; }]>;
|
|
25
25
|
}
|
package/select/select-base.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { EffectRef, ElementRef, OnDestroy, TemplateRef } from '@angular/core';
|
|
2
2
|
import { ControlValueAccessor } from '@angular/forms';
|
|
3
3
|
import { Directionality } from '@ngbase/adk/bidi';
|
|
4
|
+
import { PopoverOptions } from '@ngbase/adk/popover';
|
|
4
5
|
import { Subject } from 'rxjs';
|
|
5
6
|
import { NgbOption } from './option';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
@@ -16,21 +17,22 @@ export declare abstract class SelectBase<T> implements ControlValueAccessor, OnD
|
|
|
16
17
|
readonly target: NgbSelectTarget | null;
|
|
17
18
|
readonly list: import("@angular/core").Signal<readonly NgbOption<any>[]>;
|
|
18
19
|
readonly popover: {
|
|
19
|
-
open: <T_1>(component: import("@ngbase/adk/portal").DialogInput<T_1>, options:
|
|
20
|
+
open: <T_1>(component: import("@ngbase/adk/portal").DialogInput<T_1>, options: PopoverOptions) => import("@ngbase/adk/popover").PopoverOpen<T_1>;
|
|
20
21
|
closeAll: () => void;
|
|
21
22
|
};
|
|
22
23
|
readonly optionsTemplate: import("@angular/core").Signal<TemplateRef<any> | undefined>;
|
|
23
24
|
readonly container: import("@angular/core").Signal<ElementRef<any> | undefined>;
|
|
24
25
|
readonly optionsGroup: import("@angular/core").Signal<ElementRef<any> | undefined>;
|
|
25
|
-
readonly options: import("@angular/core").InputSignal<T[]>;
|
|
26
26
|
readonly value: import("@angular/core").ModelSignal<any>;
|
|
27
|
+
readonly disabled: import("@angular/core").ModelSignal<boolean>;
|
|
27
28
|
readonly multiple: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
|
|
29
|
+
readonly noAutoClose: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
|
|
30
|
+
readonly options: import("@angular/core").InputSignal<T[]>;
|
|
28
31
|
readonly placeholder: import("@angular/core").InputSignal<string>;
|
|
29
|
-
readonly disabled: import("@angular/core").ModelSignal<boolean>;
|
|
30
32
|
readonly size: import("@angular/core").InputSignal<"target" | "free">;
|
|
31
33
|
readonly opened: import("@angular/core").OutputEmitterRef<boolean>;
|
|
32
34
|
readonly closed: import("@angular/core").OutputEmitterRef<boolean>;
|
|
33
|
-
|
|
35
|
+
defaultOptions: Partial<PopoverOptions>;
|
|
34
36
|
readonly panelOpen: import("@angular/core").WritableSignal<boolean>;
|
|
35
37
|
readonly values: import("@angular/core").WritableSignal<T[]>;
|
|
36
38
|
readonly status: import("@angular/core").WritableSignal<"opening" | "opened" | "closed">;
|
|
@@ -43,7 +45,7 @@ export declare abstract class SelectBase<T> implements ControlValueAccessor, OnD
|
|
|
43
45
|
readonly cValue: import("@angular/core").Signal<string>;
|
|
44
46
|
private withInPopup;
|
|
45
47
|
valueRef: EffectRef;
|
|
46
|
-
constructor(isSelect: boolean);
|
|
48
|
+
protected constructor(isSelect: boolean);
|
|
47
49
|
open(): void;
|
|
48
50
|
popValue(): void;
|
|
49
51
|
close(): void;
|
|
@@ -60,5 +62,5 @@ export declare abstract class SelectBase<T> implements ControlValueAccessor, OnD
|
|
|
60
62
|
setDisabledState(isDisabled: boolean): void;
|
|
61
63
|
ngOnDestroy(): void;
|
|
62
64
|
static ɵfac: i0.ɵɵFactoryDeclaration<SelectBase<any>, never>;
|
|
63
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<SelectBase<any>, never, never, { "
|
|
65
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<SelectBase<any>, never, never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "noAutoClose": { "alias": "noAutoClose"; "required": false; "isSignal": true; }; "options": { "alias": "options"; "required": false; "isSignal": true; }; "placeholder": { "alias": "placeholder"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "disabled": "disabledChange"; "opened": "opened"; "closed": "closed"; }, ["list"], never, true, never>;
|
|
64
66
|
}
|
package/select/select.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { TemplateRef } from '@angular/core';
|
|
2
2
|
import { AccessibleGroup } from '@ngbase/adk/a11y';
|
|
3
|
+
import { FilterOptions } from '@ngbase/adk/utils';
|
|
3
4
|
import { SelectBase } from './select-base';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
import * as i1 from "@ngbase/adk/a11y";
|
|
@@ -27,7 +28,9 @@ export declare class NgbSelectOptionGroup {
|
|
|
27
28
|
export declare class NgbSelect<T> extends SelectBase<T> {
|
|
28
29
|
readonly search: import("@angular/core").ModelSignal<string>;
|
|
29
30
|
readonly optionTemplate: import("@angular/core").Signal<NgbSelectOption<any> | undefined>;
|
|
30
|
-
readonly
|
|
31
|
+
readonly filterFn: import("@angular/core").InputSignal<(option: string) => string>;
|
|
32
|
+
readonly queryFn: import("@angular/core").InputSignal<((query: string, option: any) => boolean) | undefined>;
|
|
33
|
+
readonly filterOptions: import("@angular/core").InputSignal<FilterOptions<T> | undefined>;
|
|
31
34
|
readonly optionsFilter: {
|
|
32
35
|
search: import("@angular/core").WritableSignal<string>;
|
|
33
36
|
list: import("@angular/core").WritableSignal<T[]>;
|
|
@@ -35,7 +38,7 @@ export declare class NgbSelect<T> extends SelectBase<T> {
|
|
|
35
38
|
};
|
|
36
39
|
constructor();
|
|
37
40
|
static ɵfac: i0.ɵɵFactoryDeclaration<NgbSelect<any>, never>;
|
|
38
|
-
static ɵdir: i0.ɵɵDirectiveDeclaration<NgbSelect<any>, "[ngbSelect]", never, { "search": { "alias": "search"; "required": false; "isSignal": true; }; }, { "search": "searchChange"; }, ["optionTemplate"], never, true, never>;
|
|
41
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<NgbSelect<any>, "[ngbSelect]", never, { "search": { "alias": "search"; "required": false; "isSignal": true; }; "filterFn": { "alias": "filterFn"; "required": false; "isSignal": true; }; "queryFn": { "alias": "queryFn"; "required": false; "isSignal": true; }; "filterOptions": { "alias": "filterOptions"; "required": false; "isSignal": true; }; }, { "search": "searchChange"; }, ["optionTemplate"], never, true, never>;
|
|
39
42
|
}
|
|
40
43
|
export declare function aliasSelect(select: typeof NgbSelect): (({
|
|
41
44
|
provide: import("@angular/core").InjectionToken<readonly import("@angular/forms").ControlValueAccessor[]>;
|
package/slider/slider.d.ts
CHANGED
package/table/table.d.ts
CHANGED
|
@@ -3,6 +3,8 @@ import { NgbColumn } from './column';
|
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export declare const ROW_TOKEN: InjectionToken<any>;
|
|
5
5
|
export declare class NgbTable<T> {
|
|
6
|
+
private readonly injector;
|
|
7
|
+
private readonly differs;
|
|
6
8
|
private readonly thead;
|
|
7
9
|
private readonly tbody;
|
|
8
10
|
private readonly bodyRowDef;
|
|
@@ -10,8 +12,6 @@ export declare class NgbTable<T> {
|
|
|
10
12
|
readonly columns: import("@angular/core").Signal<readonly NgbColumn[]>;
|
|
11
13
|
readonly data: import("@angular/core").InputSignal<T[]>;
|
|
12
14
|
readonly trackBy: import("@angular/core").InputSignal<(index: number, item: T) => any>;
|
|
13
|
-
private readonly injector;
|
|
14
|
-
private readonly differs;
|
|
15
15
|
private _dataDiffers?;
|
|
16
16
|
private readonly _values;
|
|
17
17
|
private readonly valuesTracker;
|
package/test/utils.d.ts
CHANGED
|
@@ -43,11 +43,27 @@ export declare class RenderResult<T> extends ElementHelper<HTMLElement> {
|
|
|
43
43
|
queryRoot<U extends HTMLElement>(selector: string): ElementHelper<U>;
|
|
44
44
|
setInput(name: string, value: any): void;
|
|
45
45
|
}
|
|
46
|
-
export
|
|
46
|
+
export interface FakeServiceResult<T extends Type<any>, C = any> {
|
|
47
47
|
provide: T;
|
|
48
|
-
useFactory: () =>
|
|
48
|
+
useFactory: () => any;
|
|
49
|
+
v: InstanceType<T>;
|
|
50
|
+
_: C;
|
|
51
|
+
}
|
|
52
|
+
export declare function fakeService<T extends Type<any>, I extends Partial<InstanceType<T>> | (() => Partial<InstanceType<T>> & {
|
|
53
|
+
__?: any;
|
|
54
|
+
})>(service: T, impl: I): {
|
|
55
|
+
provide: T;
|
|
56
|
+
useFactory: () => any;
|
|
57
|
+
readonly v: InstanceType<T>;
|
|
58
|
+
readonly _: I extends () => Partial<InstanceType<T>> & {
|
|
59
|
+
__: infer C;
|
|
60
|
+
} ? C : never;
|
|
49
61
|
};
|
|
50
|
-
type FakeService<T extends Type<any
|
|
62
|
+
export type FakeService<T extends Type<any>, I extends Partial<InstanceType<T>> | (() => Partial<InstanceType<T>> & {
|
|
63
|
+
__?: any;
|
|
64
|
+
}) = any> = FakeServiceResult<T, I extends () => Partial<InstanceType<T>> & {
|
|
65
|
+
__: infer C;
|
|
66
|
+
} ? C : never>;
|
|
51
67
|
type RenderProvider = Provider | EnvironmentProviders | FakeService<any>;
|
|
52
68
|
export declare function render<T>(component: Type<T>, providers?: RenderProvider[], options?: {
|
|
53
69
|
inputs?: [string, any][];
|
package/utils/utils.d.ts
CHANGED
|
@@ -15,12 +15,13 @@ export declare function documentListener<T extends Event>(ev: string, fn: (e: T)
|
|
|
15
15
|
skip?: number;
|
|
16
16
|
element?: HTMLElement | Document | Window;
|
|
17
17
|
}>): ListenerOut;
|
|
18
|
-
export
|
|
19
|
-
filter
|
|
18
|
+
export type FilterOptions<T, V = any> = {
|
|
19
|
+
filter: (v: V) => string;
|
|
20
|
+
query?: (query: string, option: V) => boolean;
|
|
20
21
|
key?: keyof T;
|
|
21
22
|
childrenFilter?: (v: T) => V[];
|
|
22
|
-
|
|
23
|
-
|
|
23
|
+
};
|
|
24
|
+
export declare function filterFunction<T, V = T>(data: Signal<T[]> | T[], ops: () => FilterOptions<T, V>): {
|
|
24
25
|
search: import("@angular/core").WritableSignal<string>;
|
|
25
26
|
list: import("@angular/core").WritableSignal<T[]>;
|
|
26
27
|
filteredList: Signal<T[]>;
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Component, Directive, ChangeDetectionStrategy } from '@angular/core';
|
|
2
|
-
import { NgbCell, NgbCellDef } from '@ngbase/adk/table';
|
|
3
|
-
|
|
4
|
-
@Component({
|
|
5
|
-
selector: '[<%= name %>Cell]',
|
|
6
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
7
|
-
hostDirectives: [NgbCell],
|
|
8
|
-
host: {
|
|
9
|
-
class: 'px-4 py-2 align-middle bg-foreground',
|
|
10
|
-
},
|
|
11
|
-
template: `<ng-content />`,
|
|
12
|
-
})
|
|
13
|
-
export class Cell {}
|
|
14
|
-
|
|
15
|
-
@Directive({
|
|
16
|
-
selector: '[<%= name %>CellDef]',
|
|
17
|
-
hostDirectives: [NgbCellDef],
|
|
18
|
-
})
|
|
19
|
-
export class CellDef {}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Directive } from '@angular/core';
|
|
2
|
-
import { NgbBodyRow, NgbBodyRowDef } from '@ngbase/adk/table';
|
|
3
|
-
|
|
4
|
-
@Directive({
|
|
5
|
-
selector: '[<%= name %>BodyRowDef]',
|
|
6
|
-
hostDirectives: [
|
|
7
|
-
{ directive: NgbBodyRowDef, inputs: ['ngbBodyRowDefColumns: <%= name %>BodyRowDefColumns'] },
|
|
8
|
-
],
|
|
9
|
-
})
|
|
10
|
-
export class BodyRowDef {}
|
|
11
|
-
|
|
12
|
-
@Component({
|
|
13
|
-
selector: '[<%= name %>BodyRow]',
|
|
14
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
15
|
-
providers: [{ provide: NgbBodyRow, useExisting: BodyRow }],
|
|
16
|
-
template: `<ng-container #container />`,
|
|
17
|
-
host: {
|
|
18
|
-
class: '[&:not(:last-child)]:border-b hover:bg-muted-background h-12',
|
|
19
|
-
},
|
|
20
|
-
})
|
|
21
|
-
export class BodyRow extends NgbBodyRow {}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { Directive } from '@angular/core';
|
|
2
|
-
import { NgbColumn } from '@ngbase/adk/table';
|
|
3
|
-
|
|
4
|
-
@Directive({
|
|
5
|
-
selector: '[<%= name %>Column]',
|
|
6
|
-
hostDirectives: [{ directive: NgbColumn, inputs: ['ngbColumn: <%= name %>Column', 'sticky'] }],
|
|
7
|
-
})
|
|
8
|
-
export class Column {}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Component, Directive, ChangeDetectionStrategy } from '@angular/core';
|
|
2
|
-
import { NgbHead, NgbHeadDef } from '@ngbase/adk/table';
|
|
3
|
-
|
|
4
|
-
@Component({
|
|
5
|
-
selector: '[<%= name %>Head]',
|
|
6
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
7
|
-
host: {
|
|
8
|
-
class: 'px-4 py-2 text-left align-middle font-medium text-muted border-b bg-foreground',
|
|
9
|
-
},
|
|
10
|
-
hostDirectives: [NgbHead],
|
|
11
|
-
template: `<ng-content />`,
|
|
12
|
-
})
|
|
13
|
-
export class Head {}
|
|
14
|
-
|
|
15
|
-
@Directive({
|
|
16
|
-
selector: '[<%= name %>HeadDef]',
|
|
17
|
-
hostDirectives: [NgbHeadDef],
|
|
18
|
-
})
|
|
19
|
-
export class HeadDef {}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, Directive } from '@angular/core';
|
|
2
|
-
import { NgbHeadRow, NgbHeadRowDef } from '@ngbase/adk/table';
|
|
3
|
-
|
|
4
|
-
@Component({
|
|
5
|
-
selector: '[<%= name %>HeadRow]',
|
|
6
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
7
|
-
host: {
|
|
8
|
-
class: `h-10 [&[data-sticky=true]]:sticky [&[data-sticky=true]]:top-0 [&[data-sticky=true]]:bg-foreground`,
|
|
9
|
-
},
|
|
10
|
-
providers: [{ provide: NgbHeadRow, useExisting: HeadRow }],
|
|
11
|
-
template: `<ng-container #container />`,
|
|
12
|
-
})
|
|
13
|
-
export class HeadRow extends NgbHeadRow {}
|
|
14
|
-
|
|
15
|
-
@Directive({
|
|
16
|
-
selector: '[<%= name %>HeadRowDef]',
|
|
17
|
-
hostDirectives: [
|
|
18
|
-
{
|
|
19
|
-
directive: NgbHeadRowDef,
|
|
20
|
-
inputs: [
|
|
21
|
-
'ngbHeadRowDef: <%= name %>HeadRowDef',
|
|
22
|
-
'ngbHeadRowDefSticky: <%= name %>HeadRowDefSticky',
|
|
23
|
-
],
|
|
24
|
-
},
|
|
25
|
-
],
|
|
26
|
-
})
|
|
27
|
-
export class HeadRowDef {}
|