@salesforce/ui-bundle-template-app-angular-template-b2e 11.31.10 → 11.31.12
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/dist/CHANGELOG.md +16 -0
- package/dist/force-app/main/default/applications/{angularinternalapp.app-meta.xml → angularintapp.app-meta.xml} +2 -2
- package/dist/force-app/main/default/permissionsets/{angularinternalapp_Access.permissionset-meta.xml → angularintapp_Access.permissionset-meta.xml} +2 -2
- package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/angular.json +7 -4
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/angularinternalapp.uibundle-meta.xml → angularintapp/angularintapp.uibundle-meta.xml} +1 -1
- package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/app.routes.ts +5 -5
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/layout/app-layout/app-layout.component.html → angularintapp/src/app/components/layout/app-layout/app-layout.html} +17 -17
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/layout/app-layout/app-layout.component.spec.ts → angularintapp/src/app/components/layout/app-layout/app-layout.spec.ts} +2 -2
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/layout/app-layout/app-layout.component.ts → angularintapp/src/app/components/layout/app-layout/app-layout.ts} +2 -2
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/alert/alert.component.ts → angularintapp/src/app/components/ui/alert/alert.ts} +1 -1
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/button/button.component.ts → angularintapp/src/app/components/ui/button/button.ts} +2 -2
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/card/card.component.ts → angularintapp/src/app/components/ui/card/card.ts} +1 -1
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/collapsible/collapsible.component.ts → angularintapp/src/app/components/ui/collapsible/collapsible.ts} +1 -1
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/date-picker/date-picker.component.ts → angularintapp/src/app/components/ui/date-picker/date-picker.ts} +2 -2
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/date-range-picker/date-range-picker.component.ts → angularintapp/src/app/components/ui/date-range-picker/date-range-picker.ts} +2 -2
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/dialog/dialog.component.ts → angularintapp/src/app/components/ui/dialog/dialog.ts} +1 -1
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/field/field.component.ts → angularintapp/src/app/components/ui/field/field.ts} +1 -1
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/input/input.component.ts → angularintapp/src/app/components/ui/input/input.ts} +2 -2
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/label/label.component.ts → angularintapp/src/app/components/ui/label/label.ts} +1 -1
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/paginator/paginator.component.ts → angularintapp/src/app/components/ui/paginator/paginator.ts} +1 -1
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/popover/popover.component.ts → angularintapp/src/app/components/ui/popover/popover.ts} +1 -1
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/select/select.component.ts → angularintapp/src/app/components/ui/select/select.ts} +2 -2
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/separator/separator.component.ts → angularintapp/src/app/components/ui/separator/separator.ts} +2 -2
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/skeleton/skeleton.component.ts → angularintapp/src/app/components/ui/skeleton/skeleton.ts} +2 -2
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/agentforce/agentforce-conversation-client/agentforce-conversation-client.component.html → angularintapp/src/app/features/agentforce/conversation.html} +1 -1
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/agentforce/agentforce-conversation-client/agentforce-conversation-client.component.ts → angularintapp/src/app/features/agentforce/conversation.ts} +3 -3
- package/dist/force-app/main/default/uiBundles/angularintapp/src/app/features/object-search/breadcrumb/breadcrumb.html +54 -0
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/object-breadcrumb/object-breadcrumb.component.ts → angularintapp/src/app/features/object-search/breadcrumb/breadcrumb.ts} +2 -2
- package/dist/force-app/main/default/uiBundles/angularintapp/src/app/features/object-search/filters/active-filters.html +23 -0
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/active-filters/active-filters.component.ts → angularintapp/src/app/features/object-search/filters/active-filters.ts} +4 -4
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/filters/date-filter/date-filter.component.ts → angularintapp/src/app/features/object-search/filters/date-filter.ts} +6 -6
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/filters/date-range-filter/date-range-filter.component.ts → angularintapp/src/app/features/object-search/filters/date-range-filter.ts} +6 -6
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/filters/filter-field-wrapper/filter-field-wrapper.component.html → angularintapp/src/app/features/object-search/filters/filter-field-wrapper.html} +2 -2
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/filters/filter-field-wrapper/filter-field-wrapper.component.ts → angularintapp/src/app/features/object-search/filters/filter-field-wrapper.ts} +3 -3
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/filters/multi-select-filter/multi-select-filter.component.ts → angularintapp/src/app/features/object-search/filters/multi-select-filter.ts} +6 -6
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/filters/numeric-range-filter/numeric-range-filter.component.ts → angularintapp/src/app/features/object-search/filters/numeric-range-filter.ts} +6 -6
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/filters/search-filter/search-filter.component.ts → angularintapp/src/app/features/object-search/filters/search-filter.ts} +6 -6
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/filters/select-filter/select-filter.component.ts → angularintapp/src/app/features/object-search/filters/select-filter.ts} +5 -5
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/filters/text-filter/text-filter.component.ts → angularintapp/src/app/features/object-search/filters/text-filter.ts} +6 -6
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/pagination-controls/pagination-controls.component.ts → angularintapp/src/app/features/object-search/pagination/pagination.ts} +3 -3
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/search-bar/search-bar.component.html → angularintapp/src/app/features/object-search/search-bar/search-bar.html} +5 -5
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/search-bar/search-bar.component.ts → angularintapp/src/app/features/object-search/search-bar/search-bar.ts} +6 -6
- package/dist/force-app/main/default/uiBundles/angularintapp/src/app/features/object-search/sort-control/sort-control.html +50 -0
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/sort-control/sort-control.component.ts → angularintapp/src/app/features/object-search/sort-control/sort-control.ts} +5 -5
- package/dist/force-app/main/default/uiBundles/angularintapp/src/app/pages/account-detail/account-detail-page.html +164 -0
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/pages/account-detail/account-detail-page.component.ts → angularintapp/src/app/pages/account-detail/account-detail-page.ts} +9 -12
- package/dist/force-app/main/default/uiBundles/angularintapp/src/app/pages/account-search/account-search-page.html +111 -0
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/pages/account-search/account-search-page.component.ts → angularintapp/src/app/pages/account-search/account-search-page.ts} +15 -15
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/pages/home/home-page.component.ts → angularintapp/src/app/pages/home/home-page.ts} +3 -3
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/pages/home/home.component.spec.ts → angularintapp/src/app/pages/home/home.spec.ts} +1 -1
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/pages/home/home.component.ts → angularintapp/src/app/pages/home/home.ts} +1 -1
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/pages/not-found/not-found.component.spec.ts → angularintapp/src/app/pages/not-found/not-found.spec.ts} +1 -1
- package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/pages/not-found/not-found.component.ts → angularintapp/src/app/pages/not-found/not-found.ts} +1 -1
- package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/index.ts +1 -1
- package/dist/package-lock.json +2 -2
- package/dist/package.json +1 -1
- package/dist/scripts/org-setup.config.json +1 -1
- package/package.json +1 -1
- package/dist/force-app/main/default/uiBundles/angularinternalapp/src/app/features/object-search/components/active-filters/active-filters.component.html +0 -23
- package/dist/force-app/main/default/uiBundles/angularinternalapp/src/app/features/object-search/components/object-breadcrumb/object-breadcrumb.component.html +0 -55
- package/dist/force-app/main/default/uiBundles/angularinternalapp/src/app/features/object-search/components/sort-control/sort-control.component.html +0 -50
- package/dist/force-app/main/default/uiBundles/angularinternalapp/src/app/pages/account-detail/account-detail-page.component.html +0 -174
- package/dist/force-app/main/default/uiBundles/angularinternalapp/src/app/pages/account-search/account-search-page.component.html +0 -111
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/.forceignore +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/.postcssrc.json +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/.prettierignore +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/.prettierrc +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/CHANGELOG.md +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/README.md +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/e2e/app.spec.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/esbuild/api-version.mjs +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/eslint.config.js +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/middleware/html.mjs +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/middleware/proxy.mjs +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/package.json +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/playwright.config.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/public/favicon.ico +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/scripts/rewrite-e2e-assets.mjs +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/api/account/account-search.service.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/api/account/distinctAccountIndustries.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/api/account/distinctAccountTypes.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/api/account/getAccountDetail.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/api/account/searchAccounts.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/api/data-client.service.spec.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/api/data-client.service.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/app.config.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/app.html +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/app.spec.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/app.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/components/ui/_field-size.scss +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/alert/alert.component.html → angularintapp/src/app/components/ui/alert/alert.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/button/button.component.html → angularintapp/src/app/components/ui/button/button.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/button/button.component.scss → angularintapp/src/app/components/ui/button/button.scss} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/card/card.component.scss → angularintapp/src/app/components/ui/card/card.scss} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/collapsible/collapsible.component.html → angularintapp/src/app/components/ui/collapsible/collapsible.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/date-picker/date-picker.component.html → angularintapp/src/app/components/ui/date-picker/date-picker.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/date-picker/date-picker.component.scss → angularintapp/src/app/components/ui/date-picker/date-picker.scss} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/date-range-picker/date-range-picker.component.html → angularintapp/src/app/components/ui/date-range-picker/date-range-picker.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/date-range-picker/date-range-picker.component.scss → angularintapp/src/app/components/ui/date-range-picker/date-range-picker.scss} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/dialog/dialog.component.html → angularintapp/src/app/components/ui/dialog/dialog.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/field/field.component.html → angularintapp/src/app/components/ui/field/field.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/components/ui/field-size.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/input/input.component.html → angularintapp/src/app/components/ui/input/input.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/input/input.component.scss → angularintapp/src/app/components/ui/input/input.scss} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/label/label.component.html → angularintapp/src/app/components/ui/label/label.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/paginator/paginator.component.html → angularintapp/src/app/components/ui/paginator/paginator.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/popover/popover.component.html → angularintapp/src/app/components/ui/popover/popover.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/select/select.component.html → angularintapp/src/app/components/ui/select/select.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/select/select.component.scss → angularintapp/src/app/components/ui/select/select.scss} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/separator/separator.component.html → angularintapp/src/app/components/ui/separator/separator.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/separator/separator.component.scss → angularintapp/src/app/components/ui/separator/separator.scss} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/skeleton/skeleton.component.html → angularintapp/src/app/components/ui/skeleton/skeleton.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/skeleton/skeleton.component.scss → angularintapp/src/app/components/ui/skeleton/skeleton.scss} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/components/ui/spinner/spinner.component.ts → angularintapp/src/app/components/ui/spinner/spinner.ts} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/features/agentforce/agentforce-embed.service.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/filters/date-filter/date-filter.component.html → angularintapp/src/app/features/object-search/filters/date-filter.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/filters/date-range-filter/date-range-filter.component.html → angularintapp/src/app/features/object-search/filters/date-range-filter.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/filters/multi-select-filter/multi-select-filter.component.html → angularintapp/src/app/features/object-search/filters/multi-select-filter.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/filters/numeric-range-filter/numeric-range-filter.component.html → angularintapp/src/app/features/object-search/filters/numeric-range-filter.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/filters/search-filter/search-filter.component.html → angularintapp/src/app/features/object-search/filters/search-filter.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/filters/select-filter/select-filter.component.html → angularintapp/src/app/features/object-search/filters/select-filter.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/filters/text-filter/text-filter.component.html → angularintapp/src/app/features/object-search/filters/text-filter.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/features/object-search/object-search-state.service.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/features/object-search/components/pagination-controls/pagination-controls.component.html → angularintapp/src/app/features/object-search/pagination/pagination.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/features/object-search/utils/debounce.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/features/object-search/utils/field-utils.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/features/object-search/utils/filter-utils.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/features/object-search/utils/index.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/features/object-search/utils/sort-utils.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/pages/account-detail/account-detail-page.component.scss → angularintapp/src/app/pages/account-detail/account-detail-page.scss} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/pages/home/home-page.component.html → angularintapp/src/app/pages/home/home-page.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/pages/home/home.component.html → angularintapp/src/app/pages/home/home.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp/src/app/pages/not-found/not-found.component.html → angularintapp/src/app/pages/not-found/not-found.html} +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/types/conversation.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/types/globals.d.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/app/utils/async-data.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/index.html +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/main.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/styles.scss +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/theme.scss +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/src/types/sf-globals.d.ts +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/tsconfig.app.json +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/tsconfig.json +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/tsconfig.spec.json +0 -0
- /package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/ui-bundle.json +0 -0
package/dist/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,22 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [11.31.12](https://github.com/salesforce-experience-platform-emu/webapps/compare/v11.31.11...v11.31.12) (2026-07-21)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @salesforce/ui-bundle-template-base-sfdx-project
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## [11.31.11](https://github.com/salesforce-experience-platform-emu/webapps/compare/v11.31.10...v11.31.11) (2026-07-20)
|
|
15
|
+
|
|
16
|
+
**Note:** Version bump only for package @salesforce/ui-bundle-template-base-sfdx-project
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
6
22
|
## [11.31.10](https://github.com/salesforce-experience-platform-emu/webapps/compare/v11.31.9...v11.31.10) (2026-07-20)
|
|
7
23
|
|
|
8
24
|
**Note:** Version bump only for package @salesforce/ui-bundle-template-base-sfdx-project
|
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
<isNavPersonalizationDisabled>false</isNavPersonalizationDisabled>
|
|
11
11
|
<isNavTabPersistenceDisabled>false</isNavTabPersistenceDisabled>
|
|
12
12
|
<isOmniPinnedViewEnabled>false</isOmniPinnedViewEnabled>
|
|
13
|
-
<label>
|
|
13
|
+
<label>angularintapp</label>
|
|
14
14
|
<navType>Standard</navType>
|
|
15
|
-
<uiBundle>
|
|
15
|
+
<uiBundle>c__angularintapp</uiBundle>
|
|
16
16
|
<uiType>Lightning</uiType>
|
|
17
17
|
</CustomApplication>
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
2
|
<PermissionSet xmlns="http://soap.sforce.com/2006/04/metadata">
|
|
3
3
|
<applicationVisibilities>
|
|
4
|
-
<application>
|
|
4
|
+
<application>angularintapp</application>
|
|
5
5
|
<visible>true</visible>
|
|
6
6
|
</applicationVisibilities>
|
|
7
7
|
<hasActivationRequired>false</hasActivationRequired>
|
|
8
|
-
<label>
|
|
8
|
+
<label>angularintapp Access</label>
|
|
9
9
|
<userPermissions>
|
|
10
10
|
<enabled>true</enabled>
|
|
11
11
|
<name>ApiEnabled</name>
|
package/dist/force-app/main/default/uiBundles/{angularinternalapp → angularintapp}/angular.json
RENAMED
|
@@ -3,11 +3,14 @@
|
|
|
3
3
|
"version": 1,
|
|
4
4
|
"cli": {
|
|
5
5
|
"packageManager": "npm",
|
|
6
|
-
"analytics": false
|
|
6
|
+
"analytics": false,
|
|
7
|
+
"cache": {
|
|
8
|
+
"enabled": false
|
|
9
|
+
}
|
|
7
10
|
},
|
|
8
11
|
"newProjectRoot": "projects",
|
|
9
12
|
"projects": {
|
|
10
|
-
"
|
|
13
|
+
"angularintapp": {
|
|
11
14
|
"projectType": "application",
|
|
12
15
|
"schematics": {
|
|
13
16
|
"@schematics/angular:component": {
|
|
@@ -75,10 +78,10 @@
|
|
|
75
78
|
},
|
|
76
79
|
"configurations": {
|
|
77
80
|
"production": {
|
|
78
|
-
"buildTarget": "
|
|
81
|
+
"buildTarget": "angularintapp:build:production"
|
|
79
82
|
},
|
|
80
83
|
"development": {
|
|
81
|
-
"buildTarget": "
|
|
84
|
+
"buildTarget": "angularintapp:build:development"
|
|
82
85
|
}
|
|
83
86
|
},
|
|
84
87
|
"defaultConfiguration": "development"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
2
|
<UIBundle xmlns="http://soap.sforce.com/2006/04/metadata">
|
|
3
|
-
<masterLabel>
|
|
3
|
+
<masterLabel>angularintapp</masterLabel>
|
|
4
4
|
<description>A Salesforce UI Bundle.</description>
|
|
5
5
|
<isActive>true</isActive>
|
|
6
6
|
<version>1</version>
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Routes } from '@angular/router';
|
|
2
|
-
import { AppLayoutComponent } from './components/layout/app-layout/app-layout
|
|
3
|
-
import { NotFoundComponent } from './pages/not-found/not-found
|
|
4
|
-
import { HomePageComponent } from "./pages/home/home-page
|
|
5
|
-
import { AccountSearchPageComponent } from "./pages/account-search/account-search-page
|
|
6
|
-
import { AccountDetailPageComponent } from "./pages/account-detail/account-detail-page
|
|
2
|
+
import { AppLayoutComponent } from './components/layout/app-layout/app-layout';
|
|
3
|
+
import { NotFoundComponent } from './pages/not-found/not-found';
|
|
4
|
+
import { HomePageComponent } from "./pages/home/home-page";
|
|
5
|
+
import { AccountSearchPageComponent } from "./pages/account-search/account-search-page";
|
|
6
|
+
import { AccountDetailPageComponent } from "./pages/account-detail/account-detail-page";
|
|
7
7
|
export const routes: Routes = [
|
|
8
8
|
{
|
|
9
9
|
path: "",
|
|
@@ -28,23 +28,23 @@
|
|
|
28
28
|
</button>
|
|
29
29
|
</div>
|
|
30
30
|
@if (isOpen()) {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
31
|
+
<div id="app-layout-nav-menu" class="pb-4">
|
|
32
|
+
<ul class="flex flex-col space-y-2 list-none">
|
|
33
|
+
@for (item of navigationItems(); track item.path) {
|
|
34
|
+
<li>
|
|
35
|
+
<a
|
|
36
|
+
[routerLink]="item.path"
|
|
37
|
+
routerLinkActive="bg-blue-100 text-blue-700"
|
|
38
|
+
[routerLinkActiveOptions]="{ exact: true }"
|
|
39
|
+
(click)="closeMenu()"
|
|
40
|
+
class="block px-3 py-2 rounded-md text-sm font-medium transition-colors text-gray-700 hover:bg-gray-100"
|
|
41
|
+
>
|
|
42
|
+
{{ item.label }}
|
|
43
|
+
</a>
|
|
44
|
+
</li>
|
|
45
|
+
}
|
|
46
|
+
</ul>
|
|
47
|
+
</div>
|
|
48
48
|
}
|
|
49
49
|
</div>
|
|
50
50
|
</nav>
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
import { Component, input } from "@angular/core";
|
|
7
7
|
import { TestBed } from "@angular/core/testing";
|
|
8
8
|
import { provideRouter } from "@angular/router";
|
|
9
|
-
import { AppLayoutComponent } from "./app-layout
|
|
10
|
-
import { AgentforceConversationClientComponent } from "../../../features/agentforce/
|
|
9
|
+
import { AppLayoutComponent } from "./app-layout";
|
|
10
|
+
import { AgentforceConversationClientComponent } from "../../../features/agentforce/conversation";
|
|
11
11
|
|
|
12
12
|
// Stub the Agentforce client to keep this layout test hermetic (the real one
|
|
13
13
|
// embeds Lightning Out on render).
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { ChangeDetectionStrategy, Component, computed, inject, signal } from "@angular/core";
|
|
7
7
|
import { Router, RouterLink, RouterLinkActive, RouterOutlet, type Route } from "@angular/router";
|
|
8
|
-
import { AgentforceConversationClientComponent } from "../../../features/agentforce/
|
|
8
|
+
import { AgentforceConversationClientComponent } from "../../../features/agentforce/conversation";
|
|
9
9
|
|
|
10
10
|
interface NavItem {
|
|
11
11
|
path: string;
|
|
@@ -22,7 +22,7 @@ interface NavItem {
|
|
|
22
22
|
selector: "app-layout",
|
|
23
23
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
24
24
|
imports: [RouterOutlet, RouterLink, RouterLinkActive, AgentforceConversationClientComponent],
|
|
25
|
-
templateUrl: "./app-layout.
|
|
25
|
+
templateUrl: "./app-layout.html",
|
|
26
26
|
})
|
|
27
27
|
export class AppLayoutComponent {
|
|
28
28
|
private readonly router = inject(Router);
|
|
@@ -21,7 +21,7 @@ const VARIANT_CLASSES: Record<AppAlertVariant, string> = {
|
|
|
21
21
|
selector: 'app-alert',
|
|
22
22
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
23
23
|
imports: [MatIconModule],
|
|
24
|
-
templateUrl: './alert.
|
|
24
|
+
templateUrl: './alert.html',
|
|
25
25
|
host: {
|
|
26
26
|
'data-slot': 'alert',
|
|
27
27
|
role: 'alert',
|
|
@@ -30,8 +30,8 @@ export type AppButtonSize =
|
|
|
30
30
|
selector: 'app-button',
|
|
31
31
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
32
32
|
imports: [MatButtonModule, MatIconModule],
|
|
33
|
-
templateUrl: './button.
|
|
34
|
-
styleUrl: './button.
|
|
33
|
+
templateUrl: './button.html',
|
|
34
|
+
styleUrl: './button.scss',
|
|
35
35
|
})
|
|
36
36
|
export class ButtonComponent {
|
|
37
37
|
readonly appearance = input<AppButtonAppearance>('filled');
|
|
@@ -26,7 +26,7 @@ export type AppCardSize = 'default' | 'sm';
|
|
|
26
26
|
imports: [MatCard],
|
|
27
27
|
template:
|
|
28
28
|
'<mat-card appearance="outlined" [class]="classes()" [class.app-card-sm]="size() === \'sm\'"><ng-content /></mat-card>',
|
|
29
|
-
styleUrl: './card.
|
|
29
|
+
styleUrl: './card.scss',
|
|
30
30
|
})
|
|
31
31
|
export class CardComponent {
|
|
32
32
|
readonly size = input<AppCardSize>('default');
|
|
@@ -15,7 +15,7 @@ import { MatExpansionModule } from '@angular/material/expansion';
|
|
|
15
15
|
selector: 'app-collapsible',
|
|
16
16
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
17
17
|
imports: [MatExpansionModule],
|
|
18
|
-
templateUrl: './collapsible.
|
|
18
|
+
templateUrl: './collapsible.html',
|
|
19
19
|
})
|
|
20
20
|
export class CollapsibleComponent {
|
|
21
21
|
/** Two-way bindable expanded state. Supports `[(open)]`. */
|
|
@@ -18,8 +18,8 @@ import type { AppFieldSize } from '../field-size';
|
|
|
18
18
|
selector: 'app-date-picker',
|
|
19
19
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
20
20
|
imports: [FormsModule, MatDatepickerModule, MatFormFieldModule, MatInputModule],
|
|
21
|
-
templateUrl: './date-picker.
|
|
22
|
-
styleUrl: './date-picker.
|
|
21
|
+
templateUrl: './date-picker.html',
|
|
22
|
+
styleUrl: './date-picker.scss',
|
|
23
23
|
})
|
|
24
24
|
export class DatePickerComponent {
|
|
25
25
|
/** Two-way bindable date value. `null` clears the field. Supports `[(value)]`. */
|
|
@@ -21,8 +21,8 @@ export { DateRange } from '@angular/material/datepicker';
|
|
|
21
21
|
selector: 'app-date-range-picker',
|
|
22
22
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
23
23
|
imports: [FormsModule, MatDatepickerModule, MatFormFieldModule, MatInputModule],
|
|
24
|
-
templateUrl: './date-range-picker.
|
|
25
|
-
styleUrl: './date-range-picker.
|
|
24
|
+
templateUrl: './date-range-picker.html',
|
|
25
|
+
styleUrl: './date-range-picker.scss',
|
|
26
26
|
})
|
|
27
27
|
export class DateRangePickerComponent {
|
|
28
28
|
/** Two-way bindable range value. `null` clears the field. Supports `[(value)]`. */
|
|
@@ -16,7 +16,7 @@ import { ChangeDetectionStrategy, Component, input, model, output } from '@angul
|
|
|
16
16
|
selector: 'app-dialog',
|
|
17
17
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
18
18
|
imports: [CdkConnectedOverlay, CdkTrapFocus],
|
|
19
|
-
templateUrl: './dialog.
|
|
19
|
+
templateUrl: './dialog.html',
|
|
20
20
|
})
|
|
21
21
|
export class DialogComponent {
|
|
22
22
|
/** Two-way bindable open state. Supports `[(open)]`. */
|
|
@@ -12,7 +12,7 @@ import { ChangeDetectionStrategy, Component, input } from '@angular/core';
|
|
|
12
12
|
@Component({
|
|
13
13
|
selector: 'app-field',
|
|
14
14
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
15
|
-
templateUrl: './field.
|
|
15
|
+
templateUrl: './field.html',
|
|
16
16
|
host: {
|
|
17
17
|
'data-slot': 'field',
|
|
18
18
|
class: 'flex flex-col gap-1.5',
|
|
@@ -14,8 +14,8 @@ import type { AppFieldSize } from '../field-size';
|
|
|
14
14
|
selector: 'app-input',
|
|
15
15
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
16
16
|
imports: [FormsModule, MatFormFieldModule, MatInputModule],
|
|
17
|
-
templateUrl: './input.
|
|
18
|
-
styleUrl: './input.
|
|
17
|
+
templateUrl: './input.html',
|
|
18
|
+
styleUrl: './input.scss',
|
|
19
19
|
})
|
|
20
20
|
export class InputComponent {
|
|
21
21
|
/** Two-way bindable value. Supports `[(value)]`. */
|
|
@@ -9,7 +9,7 @@ import { ChangeDetectionStrategy, Component, input } from '@angular/core';
|
|
|
9
9
|
@Component({
|
|
10
10
|
selector: 'app-label',
|
|
11
11
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
12
|
-
templateUrl: './label.
|
|
12
|
+
templateUrl: './label.html',
|
|
13
13
|
})
|
|
14
14
|
export class LabelComponent {
|
|
15
15
|
/** Optional `for` attribute forwarded to the underlying `<label>`. */
|
|
@@ -14,7 +14,7 @@ import { MatPaginator, type PageEvent } from '@angular/material/paginator';
|
|
|
14
14
|
selector: 'app-paginator',
|
|
15
15
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
16
16
|
imports: [MatPaginator],
|
|
17
|
-
templateUrl: './paginator.
|
|
17
|
+
templateUrl: './paginator.html',
|
|
18
18
|
})
|
|
19
19
|
export class PaginatorComponent {
|
|
20
20
|
/** Total item count; Material derives the page count as `ceil(length / pageSize)`. */
|
|
@@ -15,7 +15,7 @@ import { ChangeDetectionStrategy, Component, input, model } from '@angular/core'
|
|
|
15
15
|
selector: 'app-popover',
|
|
16
16
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
17
17
|
imports: [CdkConnectedOverlay, CdkOverlayOrigin],
|
|
18
|
-
templateUrl: './popover.
|
|
18
|
+
templateUrl: './popover.html',
|
|
19
19
|
})
|
|
20
20
|
export class PopoverComponent {
|
|
21
21
|
/**
|
|
@@ -27,8 +27,8 @@ export interface AppSelectOption {
|
|
|
27
27
|
selector: 'app-select',
|
|
28
28
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
29
29
|
imports: [FormsModule, MatFormFieldModule, MatSelectModule],
|
|
30
|
-
templateUrl: './select.
|
|
31
|
-
styleUrl: './select.
|
|
30
|
+
templateUrl: './select.html',
|
|
31
|
+
styleUrl: './select.scss',
|
|
32
32
|
})
|
|
33
33
|
export class SelectComponent {
|
|
34
34
|
/** Two-way bindable single-select value. Ignored when `multiple` is set. */
|
|
@@ -31,8 +31,8 @@ const ORIENTATION_CLASSES: Record<AppSeparatorOrientation, string> = {
|
|
|
31
31
|
selector: 'app-separator',
|
|
32
32
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
33
33
|
imports: [MatDivider],
|
|
34
|
-
templateUrl: './separator.
|
|
35
|
-
styleUrl: './separator.
|
|
34
|
+
templateUrl: './separator.html',
|
|
35
|
+
styleUrl: './separator.scss',
|
|
36
36
|
host: {
|
|
37
37
|
'data-slot': 'separator',
|
|
38
38
|
'[attr.data-orientation]': 'orientation()',
|
|
@@ -13,8 +13,8 @@ import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
|
13
13
|
@Component({
|
|
14
14
|
selector: 'app-skeleton',
|
|
15
15
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
16
|
-
templateUrl: './skeleton.
|
|
17
|
-
styleUrl: './skeleton.
|
|
16
|
+
templateUrl: './skeleton.html',
|
|
17
|
+
styleUrl: './skeleton.scss',
|
|
18
18
|
host: {
|
|
19
19
|
'data-slot': 'skeleton',
|
|
20
20
|
'aria-hidden': 'true',
|
|
@@ -18,8 +18,8 @@ import type {
|
|
|
18
18
|
AgentforceErrorHandler,
|
|
19
19
|
AgentforceReadyHandler,
|
|
20
20
|
StyleTokens,
|
|
21
|
-
} from "
|
|
22
|
-
import { AgentforceEmbedService } from "
|
|
21
|
+
} from "../../types/conversation";
|
|
22
|
+
import { AgentforceEmbedService } from "./agentforce-embed.service";
|
|
23
23
|
|
|
24
24
|
/**
|
|
25
25
|
* Angular component that embeds the Agentforce Conversation Client (copilot /
|
|
@@ -37,7 +37,7 @@ import { AgentforceEmbedService } from "../agentforce-embed.service";
|
|
|
37
37
|
@Component({
|
|
38
38
|
selector: "app-agentforce-conversation-client",
|
|
39
39
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
40
|
-
templateUrl: "./
|
|
40
|
+
templateUrl: "./conversation.html",
|
|
41
41
|
})
|
|
42
42
|
export class AgentforceConversationClientComponent {
|
|
43
43
|
private readonly embedService = inject(AgentforceEmbedService);
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
<nav aria-label="Breadcrumb" class="mb-3">
|
|
2
|
+
<ol
|
|
3
|
+
class="text-muted-foreground flex flex-wrap items-center gap-1.5 text-sm break-words sm:gap-2.5"
|
|
4
|
+
>
|
|
5
|
+
@if (includeHome()) {
|
|
6
|
+
<li class="inline-flex items-center gap-1.5">
|
|
7
|
+
<a [routerLink]="'/'" class="hover:text-foreground transition-colors">{{ homeLabel() }}</a>
|
|
8
|
+
</li>
|
|
9
|
+
<li aria-hidden="true" class="[&>svg]:size-3.5">
|
|
10
|
+
<svg
|
|
11
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
12
|
+
viewBox="0 0 24 24"
|
|
13
|
+
fill="none"
|
|
14
|
+
stroke="currentColor"
|
|
15
|
+
stroke-width="2"
|
|
16
|
+
stroke-linecap="round"
|
|
17
|
+
stroke-linejoin="round"
|
|
18
|
+
>
|
|
19
|
+
<polyline points="9 18 15 12 9 6" />
|
|
20
|
+
</svg>
|
|
21
|
+
</li>
|
|
22
|
+
} @if (isDetailView()) {
|
|
23
|
+
<li class="inline-flex items-center gap-1.5">
|
|
24
|
+
<a [routerLink]="listPath()" class="hover:text-foreground transition-colors"
|
|
25
|
+
>{{ listLabel() }}</a
|
|
26
|
+
>
|
|
27
|
+
</li>
|
|
28
|
+
<li aria-hidden="true" class="[&>svg]:size-3.5">
|
|
29
|
+
<svg
|
|
30
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
31
|
+
viewBox="0 0 24 24"
|
|
32
|
+
fill="none"
|
|
33
|
+
stroke="currentColor"
|
|
34
|
+
stroke-width="2"
|
|
35
|
+
stroke-linecap="round"
|
|
36
|
+
stroke-linejoin="round"
|
|
37
|
+
>
|
|
38
|
+
<polyline points="9 18 15 12 9 6" />
|
|
39
|
+
</svg>
|
|
40
|
+
</li>
|
|
41
|
+
<li class="inline-flex items-center gap-1.5">
|
|
42
|
+
@if (loading() && !recordName()) {
|
|
43
|
+
<app-skeleton class="h-4 w-32" />
|
|
44
|
+
} @else {
|
|
45
|
+
<span class="text-foreground font-normal" aria-current="page">{{ recordName() }}</span>
|
|
46
|
+
}
|
|
47
|
+
</li>
|
|
48
|
+
} @else {
|
|
49
|
+
<li class="inline-flex items-center gap-1.5">
|
|
50
|
+
<span class="text-foreground font-normal" aria-current="page">{{ listLabel() }}</span>
|
|
51
|
+
</li>
|
|
52
|
+
}
|
|
53
|
+
</ol>
|
|
54
|
+
</nav>
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { ChangeDetectionStrategy, Component, computed, input } from "@angular/core";
|
|
7
7
|
import { RouterLink } from "@angular/router";
|
|
8
|
-
import { SkeletonComponent } from "
|
|
8
|
+
import { SkeletonComponent } from "../../../components/ui/skeleton/skeleton";
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
11
|
* Object-search breadcrumb — Home > Records list > (optional) Record name.
|
|
@@ -19,7 +19,7 @@ import { SkeletonComponent } from "../../../../components/ui/skeleton/skeleton.c
|
|
|
19
19
|
selector: "app-object-breadcrumb",
|
|
20
20
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
21
21
|
imports: [RouterLink, SkeletonComponent],
|
|
22
|
-
templateUrl: "./
|
|
22
|
+
templateUrl: "./breadcrumb.html",
|
|
23
23
|
})
|
|
24
24
|
export class ObjectBreadcrumbComponent {
|
|
25
25
|
/** Router path for the object list view (e.g. `/accounts`). */
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
@if (chips().length > 0) {
|
|
2
|
+
<div class="flex flex-wrap gap-2">
|
|
3
|
+
@for (chip of chips(); track chip.field) {
|
|
4
|
+
<app-button
|
|
5
|
+
appearance="outlined"
|
|
6
|
+
size="sm"
|
|
7
|
+
iconEnd="close"
|
|
8
|
+
[ariaLabel]="'Remove filter ' + chip.label"
|
|
9
|
+
(clicked)="onRemove(chip.field)"
|
|
10
|
+
>
|
|
11
|
+
{{ chip.label }}
|
|
12
|
+
</app-button>
|
|
13
|
+
}
|
|
14
|
+
<app-button
|
|
15
|
+
appearance="destructive"
|
|
16
|
+
size="sm"
|
|
17
|
+
ariaLabel="Clear all filters"
|
|
18
|
+
(clicked)="onClearAll()"
|
|
19
|
+
>
|
|
20
|
+
Clear all
|
|
21
|
+
</app-button>
|
|
22
|
+
</div>
|
|
23
|
+
}
|
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
* For full license text, see the LICENSE.txt file
|
|
5
5
|
*/
|
|
6
6
|
import { ChangeDetectionStrategy, Component, computed, inject } from "@angular/core";
|
|
7
|
-
import { ButtonComponent } from "
|
|
8
|
-
import { ObjectSearchStateService } from "
|
|
9
|
-
import type { ActiveFilterValue } from "
|
|
7
|
+
import { ButtonComponent } from "../../../components/ui/button/button";
|
|
8
|
+
import { ObjectSearchStateService } from "../object-search-state.service";
|
|
9
|
+
import type { ActiveFilterValue } from "../utils/filter-utils";
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* Format the display label for one active filter chip. Mirrors the React
|
|
@@ -56,7 +56,7 @@ function formatFilterLabel(filter: ActiveFilterValue): string {
|
|
|
56
56
|
selector: "app-active-filters",
|
|
57
57
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
58
58
|
imports: [ButtonComponent],
|
|
59
|
-
templateUrl: "./active-filters.
|
|
59
|
+
templateUrl: "./active-filters.html",
|
|
60
60
|
})
|
|
61
61
|
export class ActiveFiltersComponent {
|
|
62
62
|
private readonly state = inject(ObjectSearchStateService);
|
|
@@ -7,14 +7,14 @@ import { ChangeDetectionStrategy, Component, computed, inject, input } from "@an
|
|
|
7
7
|
// Base-app UI wrappers, inherited (not recreated) by this feature. Post-compose
|
|
8
8
|
// they land at uiBundles/<target>/src/app/components/ui/{date-picker,select}/..., four
|
|
9
9
|
// levels up.
|
|
10
|
-
import { DatePickerComponent } from "
|
|
10
|
+
import { DatePickerComponent } from "../../../components/ui/date-picker/date-picker";
|
|
11
11
|
import {
|
|
12
12
|
SelectComponent,
|
|
13
13
|
type AppSelectOption,
|
|
14
|
-
} from "
|
|
15
|
-
import { ObjectSearchStateService } from "
|
|
16
|
-
import type { FilterFieldConfig, FilterFieldType } from "
|
|
17
|
-
import { FilterFieldWrapperComponent } from "
|
|
14
|
+
} from "../../../components/ui/select/select";
|
|
15
|
+
import { ObjectSearchStateService } from "../object-search-state.service";
|
|
16
|
+
import type { FilterFieldConfig, FilterFieldType } from "../utils/filter-utils";
|
|
17
|
+
import { FilterFieldWrapperComponent } from "./filter-field-wrapper";
|
|
18
18
|
|
|
19
19
|
/**
|
|
20
20
|
* Single-date filter — operator select ("After" / "Before") plus a date
|
|
@@ -37,7 +37,7 @@ const OPERATOR_OPTIONS: readonly AppSelectOption[] = [
|
|
|
37
37
|
selector: "app-date-filter",
|
|
38
38
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
39
39
|
imports: [DatePickerComponent, SelectComponent, FilterFieldWrapperComponent],
|
|
40
|
-
templateUrl: "./date-filter.
|
|
40
|
+
templateUrl: "./date-filter.html",
|
|
41
41
|
})
|
|
42
42
|
export class DateFilterComponent {
|
|
43
43
|
private readonly state = inject(ObjectSearchStateService);
|
|
@@ -9,11 +9,11 @@ import { ChangeDetectionStrategy, Component, computed, inject, input } from "@an
|
|
|
9
9
|
import {
|
|
10
10
|
DateRange,
|
|
11
11
|
DateRangePickerComponent,
|
|
12
|
-
} from "
|
|
13
|
-
import { ObjectSearchStateService } from "
|
|
14
|
-
import type { FilterFieldConfig, FilterFieldType } from "
|
|
15
|
-
import { toDate, toDateString } from "
|
|
16
|
-
import { FilterFieldWrapperComponent } from "
|
|
12
|
+
} from "../../../components/ui/date-range-picker/date-range-picker";
|
|
13
|
+
import { ObjectSearchStateService } from "../object-search-state.service";
|
|
14
|
+
import type { FilterFieldConfig, FilterFieldType } from "../utils/filter-utils";
|
|
15
|
+
import { toDate, toDateString } from "./date-filter";
|
|
16
|
+
import { FilterFieldWrapperComponent } from "./filter-field-wrapper";
|
|
17
17
|
|
|
18
18
|
/**
|
|
19
19
|
* Date range filter — a single two-ended range picker. Emits a `daterange`
|
|
@@ -28,7 +28,7 @@ import { FilterFieldWrapperComponent } from "../filter-field-wrapper/filter-fiel
|
|
|
28
28
|
selector: "app-date-range-filter",
|
|
29
29
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
30
30
|
imports: [DateRangePickerComponent, FilterFieldWrapperComponent],
|
|
31
|
-
templateUrl: "./date-range-filter.
|
|
31
|
+
templateUrl: "./date-range-filter.html",
|
|
32
32
|
})
|
|
33
33
|
export class DateRangeFilterComponent {
|
|
34
34
|
private readonly state = inject(ObjectSearchStateService);
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
<ng-content />
|
|
4
4
|
<div class="min-h-4">
|
|
5
5
|
@if (error(); as err) {
|
|
6
|
-
|
|
6
|
+
<p class="text-xs text-red-600" role="alert">{{ err }}</p>
|
|
7
7
|
} @else if (helpText(); as help) {
|
|
8
|
-
|
|
8
|
+
<p class="text-xs text-gray-500">{{ help }}</p>
|
|
9
9
|
}
|
|
10
10
|
</div>
|
|
11
11
|
</div>
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
import { ChangeDetectionStrategy, Component, input } from "@angular/core";
|
|
7
7
|
// Base-app UI wrapper, inherited (not recreated) by this feature. Post-compose
|
|
8
8
|
// it lands at uiBundles/<target>/src/app/components/ui/label/..., three levels up from this
|
|
9
|
-
// filter folder (app/object-search/
|
|
10
|
-
import { LabelComponent } from "
|
|
9
|
+
// filter folder (app/object-search/filters/ -> app/components/ui/).
|
|
10
|
+
import { LabelComponent } from "../../../components/ui/label/label";
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* Standard label + control + help/error scaffold shared by every filter
|
|
@@ -22,7 +22,7 @@ import { LabelComponent } from "../../../../../components/ui/label/label.compone
|
|
|
22
22
|
selector: "app-filter-field-wrapper",
|
|
23
23
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
24
24
|
imports: [LabelComponent],
|
|
25
|
-
templateUrl: "./filter-field-wrapper.
|
|
25
|
+
templateUrl: "./filter-field-wrapper.html",
|
|
26
26
|
})
|
|
27
27
|
export class FilterFieldWrapperComponent {
|
|
28
28
|
/** Visible field label rendered above the control. */
|
|
@@ -4,11 +4,11 @@
|
|
|
4
4
|
* For full license text, see the LICENSE.txt file
|
|
5
5
|
*/
|
|
6
6
|
import { ChangeDetectionStrategy, Component, computed, inject, input } from "@angular/core";
|
|
7
|
-
import type { AppFieldSize } from "
|
|
8
|
-
import { SelectComponent } from "
|
|
9
|
-
import { ObjectSearchStateService } from "
|
|
10
|
-
import type { FilterFieldConfig } from "
|
|
11
|
-
import { FilterFieldWrapperComponent } from "
|
|
7
|
+
import type { AppFieldSize } from "../../../components/ui/field-size";
|
|
8
|
+
import { SelectComponent } from "../../../components/ui/select/select";
|
|
9
|
+
import { ObjectSearchStateService } from "../object-search-state.service";
|
|
10
|
+
import type { FilterFieldConfig } from "../utils/filter-utils";
|
|
11
|
+
import { FilterFieldWrapperComponent } from "./filter-field-wrapper";
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* Multi-select picklist filter. All presentation (checkbox options, trigger
|
|
@@ -22,7 +22,7 @@ import { FilterFieldWrapperComponent } from "../filter-field-wrapper/filter-fiel
|
|
|
22
22
|
selector: "app-multi-select-filter",
|
|
23
23
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
24
24
|
imports: [SelectComponent, FilterFieldWrapperComponent],
|
|
25
|
-
templateUrl: "./multi-select-filter.
|
|
25
|
+
templateUrl: "./multi-select-filter.html",
|
|
26
26
|
})
|
|
27
27
|
export class MultiSelectFilterComponent {
|
|
28
28
|
private readonly state = inject(ObjectSearchStateService);
|