@geoit/ui 0.0.4 → 0.0.5
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/AGENTS.md +12 -8
- package/README.md +49 -62
- package/ai/AGENTS.md +38 -28
- package/ai/README.md +35 -1
- package/ai/catalog.json +2796 -288
- package/ai/components/geo-alert.md +3 -3
- package/ai/components/geo-back-button.md +2 -2
- package/ai/components/geo-breadcrumb.md +1 -1
- package/ai/components/geo-button.md +3 -3
- package/ai/components/geo-chart.md +103 -0
- package/ai/components/geo-checkbox.md +4 -6
- package/ai/components/geo-column-picker.md +3 -3
- package/ai/components/geo-confirm-modal.md +4 -5
- package/ai/components/geo-dashboard.md +91 -0
- package/ai/components/geo-date-picker.md +5 -3
- package/ai/components/geo-date-range-picker.md +5 -3
- package/ai/components/geo-empty-state.md +75 -0
- package/ai/components/geo-feedback-form.md +97 -0
- package/ai/components/geo-file-picker.md +4 -2
- package/ai/components/geo-forgot-password.md +78 -0
- package/ai/components/geo-form-modal.md +9 -10
- package/ai/components/geo-icon.md +3 -3
- package/ai/components/geo-input.md +8 -6
- package/ai/components/geo-layout-footer.md +70 -0
- package/ai/components/geo-layout-header-actions.md +82 -0
- package/ai/components/geo-layout-header.md +89 -0
- package/ai/components/geo-layout-sidebar.md +86 -0
- package/ai/components/geo-layout.md +155 -0
- package/ai/components/geo-list-page.md +72 -0
- package/ai/components/geo-login.md +94 -0
- package/ai/components/geo-map-admin-filter.md +80 -0
- package/ai/components/geo-map-basemap-switcher.md +75 -0
- package/ai/components/geo-map-help.md +72 -0
- package/ai/components/geo-map-layer-card.md +73 -0
- package/ai/components/geo-map-layer-panel.md +75 -0
- package/ai/components/geo-map-layers-drawer.md +78 -0
- package/ai/components/geo-map-legend.md +74 -0
- package/ai/components/geo-map-locate.md +75 -0
- package/ai/components/geo-map-location-chip.md +71 -0
- package/ai/components/geo-map-measure.md +74 -0
- package/ai/components/geo-map-opacity.md +75 -0
- package/ai/components/geo-map-parcel-popup.md +79 -0
- package/ai/components/geo-map-search.md +83 -0
- package/ai/components/geo-map-shell.md +110 -0
- package/ai/components/geo-map-snapshot.md +75 -0
- package/ai/components/geo-map-swipe.md +73 -0
- package/ai/components/geo-map-toolbar.md +76 -0
- package/ai/components/geo-map-zoom.md +74 -0
- package/ai/components/geo-map.md +205 -0
- package/ai/components/geo-overlap-result.md +88 -0
- package/ai/components/geo-page-header.md +72 -0
- package/ai/components/geo-page-title.md +1 -1
- package/ai/components/geo-pagination.md +4 -7
- package/ai/components/geo-radio.md +3 -1
- package/ai/components/geo-row-actions.md +3 -3
- package/ai/components/geo-select.md +4 -2
- package/ai/components/geo-slider.md +5 -7
- package/ai/components/geo-stat-card.md +98 -0
- package/ai/components/geo-status-tag.md +2 -2
- package/ai/components/geo-step-form-layout.md +7 -8
- package/ai/components/geo-stepper.md +3 -4
- package/ai/components/geo-table-filter.md +4 -5
- package/ai/components/geo-table-pagination.md +4 -7
- package/ai/components/geo-table-toolbar.md +7 -7
- package/ai/components/geo-table.md +17 -20
- package/ai/components/geo-tabs.md +4 -6
- package/ai/components/geo-textarea.md +4 -2
- package/ai/components/geo-toast.md +4 -4
- package/ai/components/geo-tree.md +4 -6
- package/ai/components/geo-typography.md +1 -1
- package/ai/components/geo-upload.md +9 -10
- package/ai/mockup.html +1194 -0
- package/ai/recipes.md +98 -85
- package/esm2022/lib/figma/geo-alert/geo-alert.component.mjs +19 -36
- package/esm2022/lib/figma/geo-back-button/geo-back-button.component.mjs +14 -24
- package/esm2022/lib/figma/geo-breadcrumb/geo-breadcrumb.component.mjs +8 -11
- package/esm2022/lib/figma/geo-button/geo-button.component.mjs +30 -59
- package/esm2022/lib/figma/geo-chart/geo-chart.component.mjs +88 -0
- package/esm2022/lib/figma/geo-chart/geo-chart.types.mjs +2 -0
- package/esm2022/lib/figma/geo-checkbox/geo-checkbox.component.mjs +11 -22
- package/esm2022/lib/figma/geo-confirm-modal/geo-confirm-modal.component.mjs +22 -54
- package/esm2022/lib/figma/geo-dashboard/geo-dashboard.component.mjs +49 -0
- package/esm2022/lib/figma/geo-dashboard/geo-dashboard.types.mjs +2 -0
- package/esm2022/lib/figma/geo-date-picker/geo-date-picker.component.mjs +48 -78
- package/esm2022/lib/figma/geo-date-range-picker/geo-date-range-picker.component.mjs +47 -75
- package/esm2022/lib/figma/geo-empty-state/geo-empty-state.component.mjs +25 -0
- package/esm2022/lib/figma/geo-feedback-form/geo-feedback-form.component.mjs +75 -0
- package/esm2022/lib/figma/geo-feedback-form/geo-feedback-form.types.mjs +2 -0
- package/esm2022/lib/figma/geo-file-picker/geo-file-picker.component.mjs +59 -81
- package/esm2022/lib/figma/geo-forgot-password/geo-forgot-password.component.mjs +51 -0
- package/esm2022/lib/figma/geo-form-modal/geo-form-modal.component.mjs +45 -112
- package/esm2022/lib/figma/geo-icon/geo-icon.component.mjs +22 -32
- package/esm2022/lib/figma/geo-input/geo-input.component.mjs +41 -70
- package/esm2022/lib/figma/geo-layout/footer/geo-layout-footer.component.mjs +18 -0
- package/esm2022/lib/figma/geo-layout/geo-layout-actions.directive.mjs +15 -0
- package/esm2022/lib/figma/geo-layout/geo-layout.component.mjs +79 -0
- package/esm2022/lib/figma/geo-layout/geo-layout.types.mjs +42 -0
- package/esm2022/lib/figma/geo-layout/header/geo-layout-header.component.mjs +60 -0
- package/esm2022/lib/figma/geo-layout/header-actions/geo-layout-header-actions.component.mjs +70 -0
- package/esm2022/lib/figma/geo-layout/sidebar/geo-layout-sidebar.component.mjs +90 -0
- package/esm2022/lib/figma/geo-list-page/geo-list-page.component.mjs +22 -0
- package/esm2022/lib/figma/geo-login/geo-login.component.mjs +58 -0
- package/esm2022/lib/figma/geo-login/geo-login.types.mjs +2 -0
- package/esm2022/lib/figma/geo-map/chrome/geo-map-admin-filter/geo-map-admin-filter.component.mjs +52 -0
- package/esm2022/lib/figma/geo-map/chrome/geo-map-basemap-switcher/geo-map-basemap-switcher.component.mjs +61 -0
- package/esm2022/lib/figma/geo-map/chrome/geo-map-help/geo-map-help.component.mjs +26 -0
- package/esm2022/lib/figma/geo-map/chrome/geo-map-layer-card/geo-map-layer-card.component.mjs +24 -0
- package/esm2022/lib/figma/geo-map/chrome/geo-map-layer-panel/geo-map-layer-panel.component.mjs +146 -0
- package/esm2022/lib/figma/geo-map/chrome/geo-map-layers-drawer/geo-map-layers-drawer.component.mjs +37 -0
- package/esm2022/lib/figma/geo-map/chrome/geo-map-legend/geo-map-legend.component.mjs +30 -0
- package/esm2022/lib/figma/geo-map/chrome/geo-map-locate/geo-map-locate.component.mjs +72 -0
- package/esm2022/lib/figma/geo-map/chrome/geo-map-location-chip/geo-map-location-chip.component.mjs +21 -0
- package/esm2022/lib/figma/geo-map/chrome/geo-map-measure/geo-map-measure.component.mjs +375 -0
- package/esm2022/lib/figma/geo-map/chrome/geo-map-opacity/geo-map-opacity.component.mjs +94 -0
- package/esm2022/lib/figma/geo-map/chrome/geo-map-parcel-popup/geo-map-parcel-popup.component.mjs +136 -0
- package/esm2022/lib/figma/geo-map/chrome/geo-map-search/geo-map-search.component.mjs +182 -0
- package/esm2022/lib/figma/geo-map/chrome/geo-map-shell/geo-map-shell.component.mjs +577 -0
- package/esm2022/lib/figma/geo-map/chrome/geo-map-snapshot/geo-map-snapshot.component.mjs +93 -0
- package/esm2022/lib/figma/geo-map/chrome/geo-map-swipe/geo-map-swipe.component.mjs +129 -0
- package/esm2022/lib/figma/geo-map/chrome/geo-map-toolbar/geo-map-toolbar.component.mjs +64 -0
- package/esm2022/lib/figma/geo-map/chrome/geo-map-zoom/geo-map-zoom.component.mjs +295 -0
- package/esm2022/lib/figma/geo-map/geo-map-toolbar.icons.mjs +18 -0
- package/esm2022/lib/figma/geo-map/geo-map.component.mjs +144 -0
- package/esm2022/lib/figma/geo-map/geo-map.constants.mjs +497 -0
- package/esm2022/lib/figma/geo-map/geo-map.controller.mjs +71 -0
- package/esm2022/lib/figma/geo-map/geo-map.types.mjs +2 -0
- package/esm2022/lib/figma/geo-map/services/geo-map-layer.service.mjs +368 -0
- package/esm2022/lib/figma/geo-map/services/geo-map-projection.service.mjs +110 -0
- package/esm2022/lib/figma/geo-map/services/geo-map.service.mjs +540 -0
- package/esm2022/lib/figma/geo-map/utils/geo-map-fullscreen-overlay.util.mjs +47 -0
- package/esm2022/lib/figma/geo-map/utils/geo-map-interactions.util.mjs +30 -0
- package/esm2022/lib/figma/geo-overlap-result/geo-overlap-result.component.mjs +25 -0
- package/esm2022/lib/figma/geo-overlap-result/geo-overlap-result.types.mjs +2 -0
- package/esm2022/lib/figma/geo-page-header/geo-page-header.component.mjs +23 -0
- package/esm2022/lib/figma/geo-page-title/geo-page-title.component.mjs +20 -35
- package/esm2022/lib/figma/geo-pagination/geo-pagination.component.mjs +13 -43
- package/esm2022/lib/figma/geo-radio/geo-radio.component.mjs +32 -52
- package/esm2022/lib/figma/geo-select/geo-select.component.mjs +46 -72
- package/esm2022/lib/figma/geo-slider/geo-slider.component.mjs +12 -28
- package/esm2022/lib/figma/geo-stat-card/geo-stat-card.component.mjs +163 -0
- package/esm2022/lib/figma/geo-stat-card/geo-stat-card.types.mjs +2 -0
- package/esm2022/lib/figma/geo-status-tag/geo-status-tag.component.mjs +23 -27
- package/esm2022/lib/figma/geo-step-form-layout/geo-step-form-layout.component.mjs +39 -96
- package/esm2022/lib/figma/geo-stepper/geo-stepper.component.mjs +18 -33
- package/esm2022/lib/figma/geo-table/geo-column-picker/geo-column-picker.component.mjs +14 -24
- package/esm2022/lib/figma/geo-table/geo-row-actions/geo-row-actions.component.mjs +18 -36
- package/esm2022/lib/figma/geo-table/geo-table-filter/geo-table-filter.component.mjs +41 -98
- package/esm2022/lib/figma/geo-table/geo-table-pagination/geo-table-pagination.component.mjs +40 -73
- package/esm2022/lib/figma/geo-table/geo-table-toolbar/geo-table-toolbar.component.mjs +26 -56
- package/esm2022/lib/figma/geo-table/geo-table.component.mjs +110 -210
- package/esm2022/lib/figma/geo-tabs/geo-tabs.component.mjs +33 -63
- package/esm2022/lib/figma/geo-textarea/geo-textarea.component.mjs +28 -44
- package/esm2022/lib/figma/geo-toast/geo-toast.component.mjs +18 -39
- package/esm2022/lib/figma/geo-tree/geo-tree.component.mjs +12 -40
- package/esm2022/lib/figma/geo-typography/geo-typography.component.mjs +49 -64
- package/esm2022/lib/figma/geo-upload/geo-upload.component.mjs +50 -101
- package/esm2022/lib/figma/index.mjs +50 -1
- package/esm2022/lib/styles/tokens.mjs +56 -24
- package/fesm2022/geoit-ui.mjs +5981 -1825
- package/fesm2022/geoit-ui.mjs.map +1 -1
- package/lib/figma/geo-alert/geo-alert.component.d.ts +10 -11
- package/lib/figma/geo-back-button/geo-back-button.component.d.ts +6 -7
- package/lib/figma/geo-breadcrumb/geo-breadcrumb.component.d.ts +2 -2
- package/lib/figma/geo-button/geo-button.component.d.ts +21 -17
- package/lib/figma/geo-chart/geo-chart.component.d.ts +40 -0
- package/lib/figma/geo-chart/geo-chart.types.d.ts +13 -0
- package/lib/figma/geo-checkbox/geo-checkbox.component.d.ts +6 -7
- package/lib/figma/geo-confirm-modal/geo-confirm-modal.component.d.ts +15 -17
- package/lib/figma/geo-dashboard/geo-dashboard.component.d.ts +29 -0
- package/lib/figma/geo-dashboard/geo-dashboard.types.d.ts +7 -0
- package/lib/figma/geo-date-picker/geo-date-picker.component.d.ts +26 -21
- package/lib/figma/geo-date-range-picker/geo-date-range-picker.component.d.ts +25 -20
- package/lib/figma/geo-empty-state/geo-empty-state.component.d.ts +17 -0
- package/lib/figma/geo-feedback-form/geo-feedback-form.component.d.ts +36 -0
- package/lib/figma/geo-feedback-form/geo-feedback-form.types.d.ts +8 -0
- package/lib/figma/geo-file-picker/geo-file-picker.component.d.ts +23 -20
- package/lib/figma/geo-forgot-password/geo-forgot-password.component.d.ts +24 -0
- package/lib/figma/geo-form-modal/geo-form-modal.component.d.ts +33 -35
- package/lib/figma/geo-icon/geo-icon.component.d.ts +7 -7
- package/lib/figma/geo-input/geo-input.component.d.ts +23 -21
- package/lib/figma/geo-layout/footer/geo-layout-footer.component.d.ts +10 -0
- package/lib/figma/geo-layout/geo-layout-actions.directive.d.ts +6 -0
- package/lib/figma/geo-layout/geo-layout.component.d.ts +48 -0
- package/lib/figma/geo-layout/geo-layout.types.d.ts +44 -0
- package/lib/figma/geo-layout/header/geo-layout-header.component.d.ts +31 -0
- package/lib/figma/geo-layout/header-actions/geo-layout-header-actions.component.d.ts +32 -0
- package/lib/figma/geo-layout/sidebar/geo-layout-sidebar.component.d.ts +34 -0
- package/lib/figma/geo-list-page/geo-list-page.component.d.ts +16 -0
- package/lib/figma/geo-login/geo-login.component.d.ts +27 -0
- package/lib/figma/geo-login/geo-login.types.d.ts +6 -0
- package/lib/figma/geo-map/chrome/geo-map-admin-filter/geo-map-admin-filter.component.d.ts +28 -0
- package/lib/figma/geo-map/chrome/geo-map-basemap-switcher/geo-map-basemap-switcher.component.d.ts +26 -0
- package/lib/figma/geo-map/chrome/geo-map-help/geo-map-help.component.d.ts +20 -0
- package/lib/figma/geo-map/chrome/geo-map-layer-card/geo-map-layer-card.component.d.ts +15 -0
- package/lib/figma/geo-map/chrome/geo-map-layer-panel/geo-map-layer-panel.component.d.ts +40 -0
- package/lib/figma/geo-map/chrome/geo-map-layers-drawer/geo-map-layers-drawer.component.d.ts +25 -0
- package/lib/figma/geo-map/chrome/geo-map-legend/geo-map-legend.component.d.ts +18 -0
- package/lib/figma/geo-map/chrome/geo-map-locate/geo-map-locate.component.d.ts +24 -0
- package/lib/figma/geo-map/chrome/geo-map-location-chip/geo-map-location-chip.component.d.ts +14 -0
- package/lib/figma/geo-map/chrome/geo-map-measure/geo-map-measure.component.d.ts +49 -0
- package/lib/figma/geo-map/chrome/geo-map-opacity/geo-map-opacity.component.d.ts +30 -0
- package/lib/figma/geo-map/chrome/geo-map-parcel-popup/geo-map-parcel-popup.component.d.ts +44 -0
- package/lib/figma/geo-map/chrome/geo-map-search/geo-map-search.component.d.ts +56 -0
- package/lib/figma/geo-map/chrome/geo-map-shell/geo-map-shell.component.d.ts +103 -0
- package/lib/figma/geo-map/chrome/geo-map-snapshot/geo-map-snapshot.component.d.ts +21 -0
- package/lib/figma/geo-map/chrome/geo-map-swipe/geo-map-swipe.component.d.ts +33 -0
- package/lib/figma/geo-map/chrome/geo-map-toolbar/geo-map-toolbar.component.d.ts +30 -0
- package/lib/figma/geo-map/chrome/geo-map-zoom/geo-map-zoom.component.d.ts +67 -0
- package/lib/figma/geo-map/geo-map-toolbar.icons.d.ts +17 -0
- package/lib/figma/geo-map/geo-map.component.d.ts +53 -0
- package/lib/figma/geo-map/geo-map.constants.d.ts +73 -0
- package/lib/figma/geo-map/geo-map.controller.d.ts +49 -0
- package/lib/figma/geo-map/geo-map.types.d.ts +224 -0
- package/lib/figma/geo-map/services/geo-map-layer.service.d.ts +42 -0
- package/lib/figma/geo-map/services/geo-map-projection.service.d.ts +32 -0
- package/lib/figma/geo-map/services/geo-map.service.d.ts +99 -0
- package/lib/figma/geo-map/utils/geo-map-fullscreen-overlay.util.d.ts +13 -0
- package/lib/figma/geo-map/utils/geo-map-interactions.util.d.ts +9 -0
- package/lib/figma/geo-overlap-result/geo-overlap-result.component.d.ts +18 -0
- package/lib/figma/geo-overlap-result/geo-overlap-result.types.d.ts +7 -0
- package/lib/figma/geo-page-header/geo-page-header.component.d.ts +16 -0
- package/lib/figma/geo-page-title/geo-page-title.component.d.ts +9 -9
- package/lib/figma/geo-pagination/geo-pagination.component.d.ts +9 -14
- package/lib/figma/geo-radio/geo-radio.component.d.ts +17 -15
- package/lib/figma/geo-select/geo-select.component.d.ts +24 -19
- package/lib/figma/geo-slider/geo-slider.component.d.ts +7 -9
- package/lib/figma/geo-stat-card/geo-stat-card.component.d.ts +50 -0
- package/lib/figma/geo-stat-card/geo-stat-card.types.d.ts +11 -0
- package/lib/figma/geo-status-tag/geo-status-tag.component.d.ts +7 -7
- package/lib/figma/geo-step-form-layout/geo-step-form-layout.component.d.ts +27 -29
- package/lib/figma/geo-stepper/geo-stepper.component.d.ts +6 -8
- package/lib/figma/geo-table/geo-column-picker/geo-column-picker.component.d.ts +6 -7
- package/lib/figma/geo-table/geo-row-actions/geo-row-actions.component.d.ts +11 -12
- package/lib/figma/geo-table/geo-table-filter/geo-table-filter.component.d.ts +21 -28
- package/lib/figma/geo-table/geo-table-pagination/geo-table-pagination.component.d.ts +17 -20
- package/lib/figma/geo-table/geo-table-toolbar/geo-table-toolbar.component.d.ts +17 -18
- package/lib/figma/geo-table/geo-table.component.d.ts +58 -62
- package/lib/figma/geo-tabs/geo-tabs.component.d.ts +14 -17
- package/lib/figma/geo-textarea/geo-textarea.component.d.ts +15 -13
- package/lib/figma/geo-toast/geo-toast.component.d.ts +11 -12
- package/lib/figma/geo-tree/geo-tree.component.d.ts +8 -13
- package/lib/figma/geo-typography/geo-typography.component.d.ts +13 -13
- package/lib/figma/geo-upload/geo-upload.component.d.ts +26 -28
- package/lib/figma/index.d.ts +49 -0
- package/lib/styles/tokens.d.ts +56 -23
- package/package.json +4 -2
- package/src/lib/figma/geo-map/assets/toolbar/fullscreen.svg +8 -0
- package/src/lib/figma/geo-map/assets/toolbar/home.svg +3 -0
- package/src/lib/figma/geo-map/assets/toolbar/layers.svg +3 -0
- package/src/lib/figma/geo-map/assets/toolbar/measure-area.svg +12 -0
- package/src/lib/figma/geo-map/assets/toolbar/measure-distance.svg +5 -0
- package/src/lib/figma/geo-map/assets/toolbar/pan.svg +13 -0
- package/src/lib/figma/geo-map/assets/toolbar/search.svg +3 -0
- package/src/lib/figma/geo-map/assets/toolbar/zoom-in.svg +3 -0
- package/src/lib/figma/geo-map/assets/toolbar/zoom-out.svg +5 -0
- package/src/lib/styles/design-tokens.scss +108 -35
- package/src/lib/styles/scrollbar.scss +2 -2
- package/src/lib/styles/theme.scss +1 -1
|
@@ -37,10 +37,10 @@ Thanh trượt số liên tục. Two-way [(value)] / (valueChange); min/max/step
|
|
|
37
37
|
|
|
38
38
|
## Binding
|
|
39
39
|
|
|
40
|
-
|
|
40
|
+
**`model()` two-way** on `value`:
|
|
41
41
|
|
|
42
42
|
```html
|
|
43
|
-
<geo-slider [(value)]="n"
|
|
43
|
+
<geo-slider [(value)]="n"></geo-slider>
|
|
44
44
|
```
|
|
45
45
|
|
|
46
46
|
## Inputs
|
|
@@ -49,18 +49,16 @@ Every supported Input (do not invent others):
|
|
|
49
49
|
|
|
50
50
|
| Input | Type | Default | Description |
|
|
51
51
|
|-------|------|---------|-------------|
|
|
52
|
-
| `value` | `number` | `0` |
|
|
52
|
+
| `value` | `number` | `0` | Two-way `model()` (supports banana binding). |
|
|
53
53
|
| `min` | `number` | `0` | — |
|
|
54
54
|
| `max` | `number` | `100` | — |
|
|
55
55
|
| `step` | `number` | `1` | — |
|
|
56
56
|
| `disabled` | `boolean` | `false` | — |
|
|
57
|
-
| `tipFormatter` | `(value: number)` |
|
|
57
|
+
| `tipFormatter` | `((value: number) => string) \| undefined` | `undefined` | — |
|
|
58
58
|
|
|
59
59
|
## Outputs
|
|
60
60
|
|
|
61
|
-
|
|
62
|
-
|--------|---------|-------------|
|
|
63
|
-
| `valueChange` | `EventEmitter<number>` | — |
|
|
61
|
+
_None_
|
|
64
62
|
|
|
65
63
|
|
|
66
64
|
## Examples
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
# geo-stat-card
|
|
2
|
+
|
|
3
|
+
> Complete usage reference for **GeoStatCardComponent** (`@geoit/ui`)
|
|
4
|
+
>
|
|
5
|
+
> Read this file before using the component. Use **only** the Inputs/Outputs listed here.
|
|
6
|
+
|
|
7
|
+
## Summary
|
|
8
|
+
GeoStatCardComponent
|
|
9
|
+
|
|
10
|
+
## Import
|
|
11
|
+
|
|
12
|
+
```ts
|
|
13
|
+
import { GeoStatCardComponent } from '@geoit/ui';
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
Add to the consuming standalone component:
|
|
17
|
+
|
|
18
|
+
```ts
|
|
19
|
+
imports: [GeoStatCardComponent]
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Selector
|
|
23
|
+
`geo-stat-card`
|
|
24
|
+
|
|
25
|
+
## Category
|
|
26
|
+
`other`
|
|
27
|
+
|
|
28
|
+
## When to use
|
|
29
|
+
—
|
|
30
|
+
|
|
31
|
+
## Do not use when
|
|
32
|
+
—
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
## Binding
|
|
36
|
+
|
|
37
|
+
Standalone component — drive via Inputs (`input()` / `model()`) and Outputs (`output()`). Banana bindings work for any `model()` fields (e.g. `[(open)]`, `[(pageIndex)]`).
|
|
38
|
+
|
|
39
|
+
## Inputs
|
|
40
|
+
|
|
41
|
+
Every supported Input (do not invent others):
|
|
42
|
+
|
|
43
|
+
| Input | Type | Default | Description |
|
|
44
|
+
|-------|------|---------|-------------|
|
|
45
|
+
| `label` | `string` | `''` | — |
|
|
46
|
+
| `value` | `string \| number` | `''` | — |
|
|
47
|
+
| `unit` | `string` | `''` | — |
|
|
48
|
+
| `icon` | `string` | `'bar-chart'` | — |
|
|
49
|
+
| `hint` | `string` | `''` | — |
|
|
50
|
+
| `clickable` | `boolean` | `false` | — |
|
|
51
|
+
| `animate` | `boolean` | `true` | Count-up number animation. Honors `prefers-reduced-motion`. |
|
|
52
|
+
| `animationDuration` | `number` | `1000` | Count-up duration in ms. |
|
|
53
|
+
| `animationDelay` | `number` | `0` | Stagger delay before count-up starts (ms). |
|
|
54
|
+
| `item` | `GeoStatCardItem \| null` | `null` | Convenience: bind a whole item object. |
|
|
55
|
+
|
|
56
|
+
## Outputs
|
|
57
|
+
|
|
58
|
+
| Output | Payload | Description |
|
|
59
|
+
|--------|---------|-------------|
|
|
60
|
+
| `clicked` | `OutputEmitterRef<void>` | — |
|
|
61
|
+
|
|
62
|
+
## Related types
|
|
63
|
+
|
|
64
|
+
From `figma/geo-stat-card/geo-stat-card.types.ts`:
|
|
65
|
+
|
|
66
|
+
```ts
|
|
67
|
+
export interface GeoStatCardItem {
|
|
68
|
+
id?: string;
|
|
69
|
+
label: string;
|
|
70
|
+
value: string | number;
|
|
71
|
+
/** Optional unit shown after value (e.g. m², thửa). */
|
|
72
|
+
unit?: string;
|
|
73
|
+
/** Ant Design icon name. */
|
|
74
|
+
icon?: string;
|
|
75
|
+
/** Optional helper / trend text. */
|
|
76
|
+
hint?: string;
|
|
77
|
+
}
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
## Examples
|
|
81
|
+
|
|
82
|
+
### Example
|
|
83
|
+
|
|
84
|
+
```html
|
|
85
|
+
<geo-stat-card></geo-stat-card>
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
## Package path
|
|
89
|
+
`node_modules/@geoit/ui/ai/components/geo-stat-card.md`
|
|
90
|
+
|
|
91
|
+
## Source
|
|
92
|
+
`projects/geo-ui/src/lib/figma/geo-stat-card/geo-stat-card.component.ts`
|
|
93
|
+
|
|
94
|
+
## Rules for AI / consumers
|
|
95
|
+
- Prefer this component over raw ng-zorro / HTML for the same UI role.
|
|
96
|
+
- Use design tokens (`var(--geo-*)`) — never hardcode brand colors or radius.
|
|
97
|
+
- Match props exactly to the Inputs table; do not invent unsupported inputs.
|
|
98
|
+
- Copy examples and adapt labels/bindings only.
|
|
@@ -37,7 +37,7 @@ Tag trạng thái (dot + label). status preset success|primary|error|warning|inf
|
|
|
37
37
|
|
|
38
38
|
## Binding
|
|
39
39
|
|
|
40
|
-
Standalone
|
|
40
|
+
Standalone component — drive via Inputs (`input()` / `model()`) and Outputs (`output()`). Banana bindings work for any `model()` fields (e.g. `[(open)]`, `[(pageIndex)]`).
|
|
41
41
|
|
|
42
42
|
## Inputs
|
|
43
43
|
|
|
@@ -46,7 +46,7 @@ Every supported Input (do not invent others):
|
|
|
46
46
|
| Input | Type | Default | Description |
|
|
47
47
|
|-------|------|---------|-------------|
|
|
48
48
|
| `status` | `GeoStatusPreset \| string` | `'success'` | Status preset or free-form string. Semantic: success \| primary \| error \| warning \| info \| teal \| neutral Legacy: completed \| cancelled \| in_progress \| adjusting |
|
|
49
|
-
| `label` | `string` |
|
|
49
|
+
| `label` | `string \| undefined` | `undefined` | Override label text. |
|
|
50
50
|
| `showDot` | `boolean` | `true` | Show leading status dot (design default). |
|
|
51
51
|
|
|
52
52
|
## Outputs
|
|
@@ -37,7 +37,7 @@ Wizard full-page: stepper dọc + card nội dung + footer Hủy/Trở lại/Lư
|
|
|
37
37
|
|
|
38
38
|
## Binding
|
|
39
39
|
|
|
40
|
-
Standalone
|
|
40
|
+
Standalone component — drive via Inputs (`input()` / `model()`) and Outputs (`output()`). Banana bindings work for any `model()` fields (e.g. `[(open)]`, `[(pageIndex)]`).
|
|
41
41
|
|
|
42
42
|
## Inputs
|
|
43
43
|
|
|
@@ -46,7 +46,7 @@ Every supported Input (do not invent others):
|
|
|
46
46
|
| Input | Type | Default | Description |
|
|
47
47
|
|-------|------|---------|-------------|
|
|
48
48
|
| `steps` | `GeoStepperStep[]` | `[]` | — |
|
|
49
|
-
| `activeIndex` | `number` | `0` |
|
|
49
|
+
| `activeIndex` | `number` | `0` | Two-way `model()` (supports banana binding). |
|
|
50
50
|
| `title` | `string` | `''` | — |
|
|
51
51
|
| `clickableSteps` | `boolean` | `true` | — |
|
|
52
52
|
| `showScrollButtons` | `boolean` | `true` | Hiện nút ↑/↓ góc phải card (chuyển bước). Mặc định `true`. |
|
|
@@ -67,12 +67,11 @@ Every supported Input (do not invent others):
|
|
|
67
67
|
|
|
68
68
|
| Output | Payload | Description |
|
|
69
69
|
|--------|---------|-------------|
|
|
70
|
-
| `
|
|
71
|
-
| `
|
|
72
|
-
| `
|
|
73
|
-
| `
|
|
74
|
-
| `
|
|
75
|
-
| `next` | `EventEmitter<void>` | — |
|
|
70
|
+
| `stepSelect` | `OutputEmitterRef<{ index: number; step: GeoStepperStep }>` | — |
|
|
71
|
+
| `cancel` | `OutputEmitterRef<void>` | — |
|
|
72
|
+
| `previous` | `OutputEmitterRef<void>` | — |
|
|
73
|
+
| `save` | `OutputEmitterRef<void>` | — |
|
|
74
|
+
| `next` | `OutputEmitterRef<void>` | — |
|
|
76
75
|
|
|
77
76
|
## Related types
|
|
78
77
|
|
|
@@ -37,7 +37,7 @@ Chỉ báo bước. [steps] {key,label}[]; [activeIndex]; orientation horizontal
|
|
|
37
37
|
|
|
38
38
|
## Binding
|
|
39
39
|
|
|
40
|
-
Standalone
|
|
40
|
+
Standalone component — drive via Inputs (`input()` / `model()`) and Outputs (`output()`). Banana bindings work for any `model()` fields (e.g. `[(open)]`, `[(pageIndex)]`).
|
|
41
41
|
|
|
42
42
|
## Inputs
|
|
43
43
|
|
|
@@ -46,7 +46,7 @@ Every supported Input (do not invent others):
|
|
|
46
46
|
| Input | Type | Default | Description |
|
|
47
47
|
|-------|------|---------|-------------|
|
|
48
48
|
| `steps` | `GeoStepperStep[]` | `[]` | — |
|
|
49
|
-
| `activeIndex` | `number` | `0` |
|
|
49
|
+
| `activeIndex` | `number` | `0` | Two-way `model()` (supports banana binding). |
|
|
50
50
|
| `orientation` | `'vertical' \| 'horizontal'` | `'horizontal'` | Mặc định horizontal theo design form modal. |
|
|
51
51
|
| `clickable` | `boolean` | `true` | Cho phép click để đổi bước. |
|
|
52
52
|
|
|
@@ -54,8 +54,7 @@ Every supported Input (do not invent others):
|
|
|
54
54
|
|
|
55
55
|
| Output | Payload | Description |
|
|
56
56
|
|--------|---------|-------------|
|
|
57
|
-
| `
|
|
58
|
-
| `stepSelect` | `EventEmitter<{ index: number; step: GeoStepperStep }>` | — |
|
|
57
|
+
| `stepSelect` | `OutputEmitterRef<{ index: number; step: GeoStepperStep }>` | — |
|
|
59
58
|
|
|
60
59
|
## Related types
|
|
61
60
|
|
|
@@ -38,7 +38,7 @@ Thanh lọc bảng: ô tìm + bộ lọc nâng cao (ng-content). (search)/(reset
|
|
|
38
38
|
|
|
39
39
|
## Binding
|
|
40
40
|
|
|
41
|
-
Standalone
|
|
41
|
+
Standalone component — drive via Inputs (`input()` / `model()`) and Outputs (`output()`). Banana bindings work for any `model()` fields (e.g. `[(open)]`, `[(pageIndex)]`).
|
|
42
42
|
|
|
43
43
|
## Inputs
|
|
44
44
|
|
|
@@ -55,7 +55,7 @@ Every supported Input (do not invent others):
|
|
|
55
55
|
| `searchLoading` | `boolean` | `false` | — |
|
|
56
56
|
| `showAdvancedToggle` | `boolean` | `true` | Hiện nút mở/đóng slot `[advanced]`. |
|
|
57
57
|
| `showReset` | `boolean` | `true` | — |
|
|
58
|
-
| `advancedExpanded` | `boolean` | `false` | Mở panel field nâng cao (`[advanced]`). |
|
|
58
|
+
| `advancedExpanded` | `boolean` | `false` | Mở panel field nâng cao (`[advanced]`). — Two-way `model()` (supports banana binding). |
|
|
59
59
|
| `advancedFilterCount` | `number` | `0` | Số field advanced đang có giá trị — hiện badge trên nút expand. Parent tự tính (vd. `countFilledFilters(query, ADVANCED_KEYS)`). |
|
|
60
60
|
| `filterToggleTitle` | `string` | `'Bộ lọc nâng cao'` | — |
|
|
61
61
|
| `resetTitle` | `string` | `'Xóa bộ lọc'` | — |
|
|
@@ -64,9 +64,8 @@ Every supported Input (do not invent others):
|
|
|
64
64
|
|
|
65
65
|
| Output | Payload | Description |
|
|
66
66
|
|--------|---------|-------------|
|
|
67
|
-
| `search` | `
|
|
68
|
-
| `reset` | `
|
|
69
|
-
| `advancedExpandedChange` | `EventEmitter<boolean>` | — |
|
|
67
|
+
| `search` | `OutputEmitterRef<void>` | — |
|
|
68
|
+
| `reset` | `OutputEmitterRef<void>` | — |
|
|
70
69
|
|
|
71
70
|
|
|
72
71
|
## Examples
|
|
@@ -37,7 +37,7 @@ Footer phân trang riêng cho bảng (nhãn khoảng + đổi page size). [pageI
|
|
|
37
37
|
|
|
38
38
|
## Binding
|
|
39
39
|
|
|
40
|
-
Standalone
|
|
40
|
+
Standalone component — drive via Inputs (`input()` / `model()`) and Outputs (`output()`). Banana bindings work for any `model()` fields (e.g. `[(open)]`, `[(pageIndex)]`).
|
|
41
41
|
|
|
42
42
|
## Inputs
|
|
43
43
|
|
|
@@ -45,8 +45,8 @@ Every supported Input (do not invent others):
|
|
|
45
45
|
|
|
46
46
|
| Input | Type | Default | Description |
|
|
47
47
|
|-------|------|---------|-------------|
|
|
48
|
-
| `pageIndex` | `number` | `1` |
|
|
49
|
-
| `pageSize` | `number` | `10` |
|
|
48
|
+
| `pageIndex` | `number` | `1` | Two-way `model()` (supports banana binding). |
|
|
49
|
+
| `pageSize` | `number` | `10` | Two-way `model()` (supports banana binding). |
|
|
50
50
|
| `total` | `number` | `0` | — |
|
|
51
51
|
| `pageSizeOptions` | `number[]` | `DEFAULT_UI_TABLE_PAGE_SIZE_OPTIONS` | — |
|
|
52
52
|
| `showSizeChanger` | `boolean` | `true` | — |
|
|
@@ -56,10 +56,7 @@ Every supported Input (do not invent others):
|
|
|
56
56
|
|
|
57
57
|
## Outputs
|
|
58
58
|
|
|
59
|
-
|
|
60
|
-
|--------|---------|-------------|
|
|
61
|
-
| `pageIndexChange` | `EventEmitter<number>` | — |
|
|
62
|
-
| `pageSizeChange` | `EventEmitter<number>` | — |
|
|
59
|
+
_None_
|
|
63
60
|
|
|
64
61
|
|
|
65
62
|
## Examples
|
|
@@ -37,7 +37,7 @@ Toolbar danh sách: số kết quả, xóa/xuất/thêm, ẩn hiện cột. (add
|
|
|
37
37
|
|
|
38
38
|
## Binding
|
|
39
39
|
|
|
40
|
-
Standalone
|
|
40
|
+
Standalone component — drive via Inputs (`input()` / `model()`) and Outputs (`output()`). Banana bindings work for any `model()` fields (e.g. `[(open)]`, `[(pageIndex)]`).
|
|
41
41
|
|
|
42
42
|
## Inputs
|
|
43
43
|
|
|
@@ -54,17 +54,17 @@ Every supported Input (do not invent others):
|
|
|
54
54
|
| `showAdd` | `boolean` | `true` | — |
|
|
55
55
|
| `addLabel` | `string` | `'Thêm mới'` | — |
|
|
56
56
|
| `columnItems` | `GeoColumnPickerItem[]` | `[]` | — |
|
|
57
|
-
| `columnStorageKey` | `string` |
|
|
57
|
+
| `columnStorageKey` | `string \| undefined` | `undefined` | Key lưu trạng thái ẩn/hiện cột trong sessionStorage |
|
|
58
58
|
|
|
59
59
|
## Outputs
|
|
60
60
|
|
|
61
61
|
| Output | Payload | Description |
|
|
62
62
|
|--------|---------|-------------|
|
|
63
|
-
| `deleteClick` | `
|
|
64
|
-
| `exportClick` | `
|
|
65
|
-
| `toggleColumns` | `
|
|
66
|
-
| `columnApply` | `
|
|
67
|
-
| `addClick` | `
|
|
63
|
+
| `deleteClick` | `OutputEmitterRef<void>` | — |
|
|
64
|
+
| `exportClick` | `OutputEmitterRef<void>` | — |
|
|
65
|
+
| `toggleColumns` | `OutputEmitterRef<void>` | — |
|
|
66
|
+
| `columnApply` | `OutputEmitterRef<GeoColumnPickerApplyPayload>` | — |
|
|
67
|
+
| `addClick` | `OutputEmitterRef<void>` | — |
|
|
68
68
|
|
|
69
69
|
|
|
70
70
|
## Examples
|
|
@@ -37,7 +37,7 @@ Bảng dữ liệu: [columns] GeoTableColumn[] + [data]. Hỗ trợ renderAs ind
|
|
|
37
37
|
|
|
38
38
|
## Binding
|
|
39
39
|
|
|
40
|
-
Standalone
|
|
40
|
+
Standalone component — drive via Inputs (`input()` / `model()`) and Outputs (`output()`). Banana bindings work for any `model()` fields (e.g. `[(open)]`, `[(pageIndex)]`).
|
|
41
41
|
|
|
42
42
|
## Inputs
|
|
43
43
|
|
|
@@ -56,42 +56,39 @@ Every supported Input (do not invent others):
|
|
|
56
56
|
| `tableLayout` | `'auto' \| 'fixed'` | `'auto'` | — |
|
|
57
57
|
| `showPagination` | `boolean` | `true` | — |
|
|
58
58
|
| `frontPagination` | `boolean` | `true` | — |
|
|
59
|
-
| `pageIndex` | `number` | `1` |
|
|
60
|
-
| `pageSize` | `number` | `10` |
|
|
61
|
-
| `total` | `number` |
|
|
59
|
+
| `pageIndex` | `number` | `1` | Two-way `model()` (supports banana binding). |
|
|
60
|
+
| `pageSize` | `number` | `10` | Two-way `model()` (supports banana binding). |
|
|
61
|
+
| `total` | `number \| undefined` | `undefined` | — |
|
|
62
62
|
| `pageSizeOptions` | `number[]` | `DEFAULT_UI_TABLE_PAGE_SIZE_OPTIONS` | — |
|
|
63
63
|
| `showSizeChanger` | `boolean` | `false` | — |
|
|
64
64
|
| `showQuickJumper` | `boolean` | `false` | — |
|
|
65
65
|
| `hideOnSinglePage` | `boolean` | `false` | — |
|
|
66
66
|
| `simplePagination` | `boolean` | `false` | — |
|
|
67
67
|
| `paginationPosition` | `'top' \| 'bottom' \| 'both'` | `'bottom'` | — |
|
|
68
|
-
| `scroll` | `{ x?: string; y?: string }` |
|
|
69
|
-
| `scrollY` | `string` |
|
|
68
|
+
| `scroll` | `{ x?: string; y?: string }` | — | — |
|
|
69
|
+
| `scrollY` | `string \| undefined` | `undefined` | — |
|
|
70
70
|
| `autoScroll` | `boolean` | `false` | Tự bật scroll ngang theo tổng width cột. Khi có cột `fixed`, scroll.x luôn được tính (bắt buộc với nz-table fixed). |
|
|
71
|
-
| `tableTitle` | `string` |
|
|
72
|
-
| `footer` | `string` |
|
|
71
|
+
| `tableTitle` | `string \| undefined` | `undefined` | — |
|
|
72
|
+
| `footer` | `string \| undefined` | `undefined` | — |
|
|
73
73
|
| `emptyText` | `string` | `'Không có dữ liệu'` | — |
|
|
74
74
|
| `showTotalRange` | `boolean` | `false` | — |
|
|
75
75
|
| `selectable` | `boolean` | `false` | — |
|
|
76
76
|
| `rowKey` | `string` | `'id'` | — |
|
|
77
|
-
| `selectedKeys` | `string[]` | `[]` |
|
|
78
|
-
| `mobileTitleKey` | `string` |
|
|
77
|
+
| `selectedKeys` | `string[]` | `[]` | Two-way `model()` (supports banana binding). |
|
|
78
|
+
| `mobileTitleKey` | `string \| undefined` | `undefined` | Mobile card: key cột làm tiêu đề. Ưu tiên hơn `column.mobileTitle`; nếu không set thì lấy cột dữ liệu đầu tiên. |
|
|
79
79
|
| `mobileCardView` | `boolean` | `true` | Bật/tắt chuyển card trên mobile (mặc định bật). |
|
|
80
80
|
|
|
81
81
|
## Outputs
|
|
82
82
|
|
|
83
83
|
| Output | Payload | Description |
|
|
84
84
|
|--------|---------|-------------|
|
|
85
|
-
| `rowClick` | `
|
|
86
|
-
| `rowEdit` | `
|
|
87
|
-
| `rowMore` | `
|
|
88
|
-
| `rowAction` | `
|
|
89
|
-
| `
|
|
90
|
-
| `
|
|
91
|
-
| `
|
|
92
|
-
| `currentPageDataChange` | `EventEmitter<readonly Record<string, unknown>[]>` | — |
|
|
93
|
-
| `selectedKeysChange` | `EventEmitter<string[]>` | — |
|
|
94
|
-
| `selectionChange` | `EventEmitter<Record<string, unknown>[]>` | — |
|
|
85
|
+
| `rowClick` | `OutputEmitterRef<Record<string, unknown>>` | — |
|
|
86
|
+
| `rowEdit` | `OutputEmitterRef<Record<string, unknown>>` | — |
|
|
87
|
+
| `rowMore` | `OutputEmitterRef<Record<string, unknown>>` | — |
|
|
88
|
+
| `rowAction` | `OutputEmitterRef<{ row: Record<string, unknown>; action: string }>` | — |
|
|
89
|
+
| `queryParams` | `OutputEmitterRef<NzTableQueryParams>` | — |
|
|
90
|
+
| `currentPageDataChange` | `OutputEmitterRef<readonly Record<string, unknown>[]>` | — |
|
|
91
|
+
| `selectionChange` | `OutputEmitterRef<Record<string, unknown>[]>` | — |
|
|
95
92
|
|
|
96
93
|
## Related types
|
|
97
94
|
|
|
@@ -37,7 +37,7 @@ Tab ngang brand ink. [items] {key,title}[]; nội dung qua <ng-template uiTab="k
|
|
|
37
37
|
|
|
38
38
|
## Binding
|
|
39
39
|
|
|
40
|
-
Standalone
|
|
40
|
+
Standalone component — drive via Inputs (`input()` / `model()`) and Outputs (`output()`). Banana bindings work for any `model()` fields (e.g. `[(open)]`, `[(pageIndex)]`).
|
|
41
41
|
|
|
42
42
|
## Inputs
|
|
43
43
|
|
|
@@ -48,8 +48,8 @@ Every supported Input (do not invent others):
|
|
|
48
48
|
| `items` | `GeoTabItem[]` | `[]` | — |
|
|
49
49
|
| `type` | `'line' \| 'card'` | `'line'` | — |
|
|
50
50
|
| `size` | `'default' \| 'large' \| 'small'` | `'default'` | — |
|
|
51
|
-
| `selectedIndex` | `number` | `0` |
|
|
52
|
-
| `selectedKey` | `string` |
|
|
51
|
+
| `selectedIndex` | `number` | `0` | Two-way `model()` (supports banana binding). |
|
|
52
|
+
| `selectedKey` | `string \| undefined` | `undefined` | Two-way `model()` (supports banana binding). |
|
|
53
53
|
| `centered` | `boolean` | `false` | — |
|
|
54
54
|
| `animated` | `boolean` | `true` | — |
|
|
55
55
|
|
|
@@ -57,9 +57,7 @@ Every supported Input (do not invent others):
|
|
|
57
57
|
|
|
58
58
|
| Output | Payload | Description |
|
|
59
59
|
|--------|---------|-------------|
|
|
60
|
-
| `
|
|
61
|
-
| `selectedKeyChange` | `EventEmitter<string>` | — |
|
|
62
|
-
| `tabChange` | `EventEmitter<{ index: number; key: string }>` | — |
|
|
60
|
+
| `tabChange` | `OutputEmitterRef<{ index: number; key: string }>` | — |
|
|
63
61
|
|
|
64
62
|
## Related types
|
|
65
63
|
|
|
@@ -48,6 +48,8 @@ Supports **ControlValueAccessor**.
|
|
|
48
48
|
|
|
49
49
|
Also import `FormsModule` (template-driven) or `ReactiveFormsModule`.
|
|
50
50
|
|
|
51
|
+
Library API uses Angular 18 `input()` / `output()` signals under the hood.
|
|
52
|
+
|
|
51
53
|
## Inputs
|
|
52
54
|
|
|
53
55
|
Every supported Input (do not invent others):
|
|
@@ -61,14 +63,14 @@ Every supported Input (do not invent others):
|
|
|
61
63
|
| `required` | `boolean` | `false` | — |
|
|
62
64
|
| `error` | `boolean` | `false` | — |
|
|
63
65
|
| `errorMessage` | `string` | `''` | — |
|
|
64
|
-
| `maxlength` | `number` |
|
|
66
|
+
| `maxlength` | `number \| undefined` | `undefined` | — |
|
|
65
67
|
| `block` | `boolean` | `true` | — |
|
|
66
68
|
|
|
67
69
|
## Outputs
|
|
68
70
|
|
|
69
71
|
| Output | Payload | Description |
|
|
70
72
|
|--------|---------|-------------|
|
|
71
|
-
| `valueChange` | `
|
|
73
|
+
| `valueChange` | `OutputEmitterRef<string>` | — |
|
|
72
74
|
|
|
73
75
|
|
|
74
76
|
## Examples
|
|
@@ -38,7 +38,7 @@ Thông báo tạm thời. Ưu tiên inject GeoToastService (success/error/warnin
|
|
|
38
38
|
|
|
39
39
|
## Binding
|
|
40
40
|
|
|
41
|
-
Standalone
|
|
41
|
+
Standalone component — drive via Inputs (`input()` / `model()`) and Outputs (`output()`). Banana bindings work for any `model()` fields (e.g. `[(open)]`, `[(pageIndex)]`).
|
|
42
42
|
|
|
43
43
|
## Inputs
|
|
44
44
|
|
|
@@ -51,14 +51,14 @@ Every supported Input (do not invent others):
|
|
|
51
51
|
| `message` | `string` | `''` | — |
|
|
52
52
|
| `closable` | `boolean` | `true` | — |
|
|
53
53
|
| `showIcon` | `boolean` | `true` | — |
|
|
54
|
-
| `visible` | `boolean` | `true` |
|
|
55
|
-
| `icon` | `string` |
|
|
54
|
+
| `visible` | `boolean` | `true` | Two-way `model()` (supports banana binding). |
|
|
55
|
+
| `icon` | `string \| undefined` | `undefined` | Override Ant Design icon type. |
|
|
56
56
|
|
|
57
57
|
## Outputs
|
|
58
58
|
|
|
59
59
|
| Output | Payload | Description |
|
|
60
60
|
|--------|---------|-------------|
|
|
61
|
-
| `closed` | `
|
|
61
|
+
| `closed` | `OutputEmitterRef<void>` | — |
|
|
62
62
|
|
|
63
63
|
## Related types
|
|
64
64
|
|
|
@@ -37,7 +37,7 @@ Cây phân cấp. [nodes] GeoTreeNode[]; bật checkable + [(checkedKeys)]; [(ex
|
|
|
37
37
|
|
|
38
38
|
## Binding
|
|
39
39
|
|
|
40
|
-
Standalone
|
|
40
|
+
Standalone component — drive via Inputs (`input()` / `model()`) and Outputs (`output()`). Banana bindings work for any `model()` fields (e.g. `[(open)]`, `[(pageIndex)]`).
|
|
41
41
|
|
|
42
42
|
## Inputs
|
|
43
43
|
|
|
@@ -47,8 +47,8 @@ Every supported Input (do not invent others):
|
|
|
47
47
|
|-------|------|---------|-------------|
|
|
48
48
|
| `nodes` | `GeoTreeNode[]` | `[]` | — |
|
|
49
49
|
| `checkable` | `boolean` | `false` | — |
|
|
50
|
-
| `checkedKeys` | `Array<string \| number>` | `[]` |
|
|
51
|
-
| `expandedKeys` | `Array<string \| number>` | `[]` |
|
|
50
|
+
| `checkedKeys` | `Array<string \| number>` | `[]` | Two-way `model()` (supports banana binding). |
|
|
51
|
+
| `expandedKeys` | `Array<string \| number>` | `[]` | Two-way `model()` (supports banana binding). |
|
|
52
52
|
| `showLine` | `boolean` | `false` | — |
|
|
53
53
|
| `blockNode` | `boolean` | `false` | — |
|
|
54
54
|
|
|
@@ -56,9 +56,7 @@ Every supported Input (do not invent others):
|
|
|
56
56
|
|
|
57
57
|
| Output | Payload | Description |
|
|
58
58
|
|--------|---------|-------------|
|
|
59
|
-
| `
|
|
60
|
-
| `expandedKeysChange` | `EventEmitter<Array<string \| number>>` | — |
|
|
61
|
-
| `nodeClick` | `EventEmitter<NzFormatEmitEvent>` | — |
|
|
59
|
+
| `nodeClick` | `OutputEmitterRef<NzFormatEmitEvent>` | — |
|
|
62
60
|
|
|
63
61
|
## Related types
|
|
64
62
|
|
|
@@ -37,7 +37,7 @@ Text theo type scale GEO. variant h1–h4|subtitle|body|body-small|caption|…;
|
|
|
37
37
|
|
|
38
38
|
## Binding
|
|
39
39
|
|
|
40
|
-
Standalone
|
|
40
|
+
Standalone component — drive via Inputs (`input()` / `model()`) and Outputs (`output()`). Banana bindings work for any `model()` fields (e.g. `[(open)]`, `[(pageIndex)]`).
|
|
41
41
|
|
|
42
42
|
## Inputs
|
|
43
43
|
|
|
@@ -37,7 +37,7 @@ Vùng kéo-thả upload + danh sách tiến độ. accept/maxSize; [(fileList)];
|
|
|
37
37
|
|
|
38
38
|
## Binding
|
|
39
39
|
|
|
40
|
-
Standalone
|
|
40
|
+
Standalone component — drive via Inputs (`input()` / `model()`) and Outputs (`output()`). Banana bindings work for any `model()` fields (e.g. `[(open)]`, `[(pageIndex)]`).
|
|
41
41
|
|
|
42
42
|
## Inputs
|
|
43
43
|
|
|
@@ -58,23 +58,22 @@ Every supported Input (do not invent others):
|
|
|
58
58
|
| `titleSuffix` | `string` | `'để tải lên'` | — |
|
|
59
59
|
| `listTitle` | `string` | `'Tập tin đính kèm'` | — |
|
|
60
60
|
| `showListTitle` | `boolean` | `true` | — |
|
|
61
|
-
| `fileList` | `GeoUploadFile[]` | `[]` | Controlled file list. |
|
|
62
|
-
| `headers` | `{} \| ((file: NzUploadFile) => {} \| Observable<{}>)` |
|
|
63
|
-
| `data` | `{} \| ((file: NzUploadFile) => {} \| Observable<{}>)` |
|
|
61
|
+
| `fileList` | `GeoUploadFile[]` | `[]` | Controlled file list. — Two-way `model()` (supports banana binding). |
|
|
62
|
+
| `headers` | `{} \| ((file: NzUploadFile) => {} \| Observable<{}>) \| undefined` | `undefined` | — |
|
|
63
|
+
| `data` | `{} \| ((file: NzUploadFile) => {} \| Observable<{}>) \| undefined` | `undefined` | — |
|
|
64
64
|
| `name` | `string` | `'file'` | — |
|
|
65
65
|
| `withCredentials` | `boolean` | `false` | — |
|
|
66
66
|
| `directory` | `boolean` | `false` | — |
|
|
67
|
-
| `customRequest` | `
|
|
68
|
-
| `beforeUpload` | `(
|
|
67
|
+
| `customRequest` | `GeoUploadCustomRequest \| undefined` | `undefined` | Custom XHR — mặc định simulate progress khi không có `action`. |
|
|
68
|
+
| `beforeUpload` | `((file: NzUploadFile, fileList: NzUploadFile[]) => boolean \| Observable<boolean>) \| undefined` | `undefined` | — |
|
|
69
69
|
|
|
70
70
|
## Outputs
|
|
71
71
|
|
|
72
72
|
| Output | Payload | Description |
|
|
73
73
|
|--------|---------|-------------|
|
|
74
|
-
| `
|
|
75
|
-
| `
|
|
76
|
-
| `
|
|
77
|
-
| `reject` | `EventEmitter<{ file: File; reason: 'type' \| 'size' }>` | — |
|
|
74
|
+
| `change` | `OutputEmitterRef<NzUploadChangeParam>` | — |
|
|
75
|
+
| `remove` | `OutputEmitterRef<GeoUploadFile>` | — |
|
|
76
|
+
| `reject` | `OutputEmitterRef<{ file: File; reason: 'type' \| 'size' }>` | — |
|
|
78
77
|
|
|
79
78
|
## Related types
|
|
80
79
|
|