@pallasoft/ps-mobile-components 1.3.0 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/ps-action-menu/ps-action-menu-entries.js +1 -0
- package/dist/components/ps-action-menu/ps-action-menu.android.js +19 -30
- package/dist/components/ps-action-sheet/ps-action-sheet.js +6 -4
- package/dist/components/ps-barcode-scanner-sheet/index.d.ts +2 -0
- package/dist/components/ps-barcode-scanner-sheet/index.js +2 -0
- package/dist/components/ps-barcode-scanner-sheet/ps-barcode-scanner-sheet-props.d.ts +11 -0
- package/dist/components/ps-barcode-scanner-sheet/ps-barcode-scanner-sheet-props.js +1 -0
- package/dist/components/ps-barcode-scanner-sheet/ps-barcode-scanner-sheet.d.ts +2 -0
- package/dist/components/ps-barcode-scanner-sheet/ps-barcode-scanner-sheet.js +82 -0
- package/dist/components/ps-button/ps-button.js +4 -2
- package/dist/components/ps-cartesian-chart/ps-cartesian-chart.js +25 -19
- package/dist/components/ps-checkbox/ps-checkbox.js +5 -2
- package/dist/components/ps-chip/ps-chip.js +3 -1
- package/dist/components/ps-date-field/ps-date-field.android.js +1 -1
- package/dist/components/ps-date-field/ps-date-field.ios.js +1 -1
- package/dist/components/ps-document-page/ps-document-page-props.d.ts +3 -0
- package/dist/components/ps-document-page/ps-document-page.d.ts +1 -1
- package/dist/components/ps-document-page/ps-document-page.js +16 -7
- package/dist/components/ps-document-page-strip/index.d.ts +2 -0
- package/dist/components/ps-document-page-strip/index.js +2 -0
- package/dist/components/ps-document-page-strip/ps-document-page-strip-props.d.ts +6 -0
- package/dist/components/ps-document-page-strip/ps-document-page-strip-props.js +1 -0
- package/dist/components/ps-document-page-strip/ps-document-page-strip.d.ts +2 -0
- package/dist/components/ps-document-page-strip/ps-document-page-strip.js +43 -0
- package/dist/components/ps-document-pdf-cover/index.d.ts +2 -0
- package/dist/components/ps-document-pdf-cover/index.js +2 -0
- package/dist/components/ps-document-pdf-cover/ps-document-pdf-cover-props.d.ts +6 -0
- package/dist/components/ps-document-pdf-cover/ps-document-pdf-cover-props.js +1 -0
- package/dist/components/ps-document-pdf-cover/ps-document-pdf-cover.d.ts +2 -0
- package/dist/components/ps-document-pdf-cover/ps-document-pdf-cover.js +18 -0
- package/dist/components/ps-document-preview/ps-document-preview.js +3 -4
- package/dist/components/ps-document-preview-face/index.d.ts +2 -0
- package/dist/components/ps-document-preview-face/index.js +2 -0
- package/dist/components/ps-document-preview-face/ps-document-preview-face-props.d.ts +6 -0
- package/dist/components/ps-document-preview-face/ps-document-preview-face-props.js +1 -0
- package/dist/components/ps-document-preview-face/ps-document-preview-face.d.ts +2 -0
- package/dist/components/ps-document-preview-face/ps-document-preview-face.js +18 -0
- package/dist/components/ps-document-text-page/index.d.ts +2 -0
- package/dist/components/ps-document-text-page/index.js +2 -0
- package/dist/components/ps-document-text-page/ps-document-text-page-props.d.ts +6 -0
- package/dist/components/ps-document-text-page/ps-document-text-page-props.js +1 -0
- package/dist/components/ps-document-text-page/ps-document-text-page.d.ts +2 -0
- package/dist/components/ps-document-text-page/ps-document-text-page.js +18 -0
- package/dist/components/ps-document-unsupported/index.d.ts +2 -0
- package/dist/components/ps-document-unsupported/index.js +2 -0
- package/dist/components/ps-document-unsupported/ps-document-unsupported-props.d.ts +7 -0
- package/dist/components/ps-document-unsupported/ps-document-unsupported-props.js +1 -0
- package/dist/components/ps-document-unsupported/ps-document-unsupported.d.ts +2 -0
- package/dist/components/ps-document-unsupported/ps-document-unsupported.js +10 -0
- package/dist/components/ps-document-viewer/ps-document-viewer.js +27 -7
- package/dist/components/ps-header-action/index.d.ts +2 -0
- package/dist/components/ps-header-action/index.js +2 -0
- package/dist/components/ps-header-action/ps-header-action-props.d.ts +6 -0
- package/dist/components/ps-header-action/ps-header-action-props.js +1 -0
- package/dist/components/ps-header-action/ps-header-action.android.d.ts +2 -0
- package/dist/components/ps-header-action/ps-header-action.android.js +9 -0
- package/dist/components/ps-header-action/ps-header-action.d.ts +2 -0
- package/dist/components/ps-header-action/ps-header-action.js +11 -0
- package/dist/components/ps-header-menu/index.d.ts +2 -0
- package/dist/components/ps-header-menu/index.js +2 -0
- package/dist/components/ps-header-menu/ps-header-menu-props.d.ts +7 -0
- package/dist/components/ps-header-menu/ps-header-menu-props.js +1 -0
- package/dist/components/ps-header-menu/ps-header-menu.android.d.ts +2 -0
- package/dist/components/ps-header-menu/ps-header-menu.android.js +11 -0
- package/dist/components/ps-header-menu/ps-header-menu.d.ts +2 -0
- package/dist/components/ps-header-menu/ps-header-menu.js +20 -0
- package/dist/components/ps-icon-button/ps-icon-button.js +7 -7
- package/dist/components/ps-kpi-card/ps-kpi-card.js +1 -2
- package/dist/components/ps-list/ps-list-action-row.js +6 -6
- package/dist/components/ps-list/ps-list-context-menu.android.d.ts +2 -0
- package/dist/components/ps-list/ps-list-context-menu.android.js +3 -0
- package/dist/components/ps-list/ps-list-link-menu.android.d.ts +2 -0
- package/dist/components/ps-list/ps-list-link-menu.android.js +7 -0
- package/dist/components/ps-list/ps-list-link-row.js +5 -5
- package/dist/components/ps-list/ps-list-props.d.ts +1 -0
- package/dist/components/ps-list/ps-list-row-body.d.ts +2 -2
- package/dist/components/ps-list/ps-list-row-body.js +7 -4
- package/dist/components/ps-list/ps-list-row-menu.d.ts +10 -0
- package/dist/components/ps-list/ps-list-row-menu.js +27 -0
- package/dist/components/ps-list/ps-list-row.d.ts +1 -1
- package/dist/components/ps-list/ps-list-row.js +2 -2
- package/dist/components/ps-list/ps-list-select-row.js +2 -1
- package/dist/components/ps-menu-popup/index.d.ts +4 -0
- package/dist/components/ps-menu-popup/index.js +4 -0
- package/dist/components/ps-menu-popup/ps-menu-popup-divider.d.ts +1 -0
- package/dist/components/ps-menu-popup/ps-menu-popup-divider.js +7 -0
- package/dist/components/ps-menu-popup/ps-menu-popup-header.d.ts +5 -0
- package/dist/components/ps-menu-popup/ps-menu-popup-header.js +8 -0
- package/dist/components/ps-menu-popup/ps-menu-popup-row.d.ts +12 -0
- package/dist/components/ps-menu-popup/ps-menu-popup-row.js +22 -0
- package/dist/components/ps-menu-popup/ps-menu-popup.d.ts +9 -0
- package/dist/components/ps-menu-popup/ps-menu-popup.js +35 -0
- package/dist/components/ps-mobile-theme-provider/ps-mobile-theme-provider-props.d.ts +1 -0
- package/dist/components/ps-mobile-theme-provider/ps-mobile-theme-provider.d.ts +1 -1
- package/dist/components/ps-mobile-theme-provider/ps-mobile-theme-provider.js +8 -2
- package/dist/components/ps-native-menu/ps-native-menu-row.js +5 -5
- package/dist/components/ps-native-menu/ps-native-menu.android.js +16 -24
- package/dist/components/ps-option-picker/ps-option-picker.js +3 -1
- package/dist/components/ps-page-header/ps-page-header.js +3 -1
- package/dist/components/ps-pallasoft-sign-in-button/ps-pallasoft-sign-in-button.js +3 -1
- package/dist/components/ps-screen/ps-screen.js +9 -4
- package/dist/components/ps-search-field/ps-search-field.js +3 -1
- package/dist/components/ps-segmented-control/ps-segmented-control.android.js +4 -9
- package/dist/components/ps-selection-mode/ps-selection-bar.d.ts +9 -0
- package/dist/components/ps-selection-mode/ps-selection-bar.js +49 -0
- package/dist/components/ps-selection-mode/ps-selection-mode.android.d.ts +2 -0
- package/dist/components/ps-selection-mode/ps-selection-mode.android.js +23 -0
- package/dist/components/ps-sheet-content/ps-sheet-content.js +1 -1
- package/dist/components/ps-sheet-presenter/ps-sheet-presenter.android.js +4 -4
- package/dist/components/ps-sortable-grid/ps-sortable-item.js +2 -0
- package/dist/components/ps-spinner/ps-spinner.android.d.ts +2 -0
- package/dist/components/ps-spinner/ps-spinner.android.js +13 -0
- package/dist/components/ps-switch/ps-switch.android.d.ts +2 -0
- package/dist/components/ps-switch/ps-switch.android.js +25 -0
- package/dist/components/ps-switcher/index.d.ts +2 -0
- package/dist/components/ps-switcher/index.js +2 -0
- package/dist/components/ps-switcher/ps-switcher-panel.d.ts +10 -0
- package/dist/components/ps-switcher/ps-switcher-panel.js +17 -0
- package/dist/components/ps-switcher/ps-switcher-props.d.ts +12 -0
- package/dist/components/ps-switcher/ps-switcher-props.js +1 -0
- package/dist/components/ps-switcher/ps-switcher-row.d.ts +7 -0
- package/dist/components/ps-switcher/ps-switcher-row.js +33 -0
- package/dist/components/ps-switcher/ps-switcher-trigger.d.ts +11 -0
- package/dist/components/ps-switcher/ps-switcher-trigger.js +35 -0
- package/dist/components/ps-switcher/ps-switcher.d.ts +2 -0
- package/dist/components/ps-switcher/ps-switcher.js +21 -0
- package/dist/components/ps-tab-bar-provider/ps-tab-bar-provider.js +1 -1
- package/dist/components/ps-tabs/ps-tabs.js +3 -1
- package/dist/components/ps-waterfall-chart/index.d.ts +2 -0
- package/dist/components/ps-waterfall-chart/index.js +2 -0
- package/dist/components/ps-waterfall-chart/ps-waterfall-chart-props.d.ts +9 -0
- package/dist/components/ps-waterfall-chart/ps-waterfall-chart-props.js +1 -0
- package/dist/components/ps-waterfall-chart/ps-waterfall-chart.d.ts +2 -0
- package/dist/components/ps-waterfall-chart/ps-waterfall-chart.js +37 -0
- package/dist/components/ps-widget-list/ps-widget-list.js +1 -1
- package/dist/constants/ps-android-state-config.d.ts +12 -0
- package/dist/constants/ps-android-state-config.js +12 -0
- package/dist/constants/ps-barcode-permission.d.ts +6 -0
- package/dist/constants/ps-barcode-permission.js +5 -0
- package/dist/constants/ps-barcode-scanner-config.d.ts +18 -0
- package/dist/constants/ps-barcode-scanner-config.js +31 -0
- package/dist/constants/ps-capture-config.d.ts +12 -0
- package/dist/constants/ps-capture-config.js +22 -0
- package/dist/constants/ps-capture-source.d.ts +7 -0
- package/dist/constants/ps-capture-source.js +6 -0
- package/dist/constants/ps-cartesian-series-shape.d.ts +5 -0
- package/dist/constants/ps-cartesian-series-shape.js +4 -0
- package/dist/constants/ps-chart-brand-config.d.ts +21 -0
- package/dist/constants/ps-chart-brand-config.js +10 -0
- package/dist/constants/ps-document-config.d.ts +3 -0
- package/dist/constants/ps-document-config.js +3 -0
- package/dist/constants/ps-document-file-config.d.ts +11 -0
- package/dist/constants/ps-document-file-config.js +11 -0
- package/dist/constants/ps-document-kind.d.ts +1 -0
- package/dist/constants/ps-document-kind.js +1 -0
- package/dist/constants/ps-document-load-status.d.ts +7 -0
- package/dist/constants/ps-document-load-status.js +6 -0
- package/dist/constants/ps-document-pdf-config.d.ts +14 -0
- package/dist/constants/ps-document-pdf-config.js +14 -0
- package/dist/constants/ps-header-config.d.ts +3 -0
- package/dist/constants/ps-header-config.js +3 -0
- package/dist/constants/ps-menu-popup-config.d.ts +10 -0
- package/dist/constants/ps-menu-popup-config.js +10 -0
- package/dist/constants/ps-quick-action-config.d.ts +4 -0
- package/dist/constants/ps-quick-action-config.js +4 -0
- package/dist/constants/ps-ripple-kind.d.ts +8 -0
- package/dist/constants/ps-ripple-kind.js +7 -0
- package/dist/constants/ps-selection-bar-config.d.ts +4 -0
- package/dist/constants/ps-selection-bar-config.js +4 -0
- package/dist/constants/ps-sortable-grid-config.d.ts +2 -1
- package/dist/constants/ps-sortable-grid-config.js +2 -1
- package/dist/constants/ps-switcher-config.d.ts +12 -0
- package/dist/constants/ps-switcher-config.js +12 -0
- package/dist/contexts/ps-tab-bar-context.js +1 -0
- package/dist/hooks/use-ps-barcode-scanner.d.ts +2 -0
- package/dist/hooks/use-ps-barcode-scanner.js +9 -0
- package/dist/hooks/use-ps-document-open.d.ts +3 -0
- package/dist/hooks/use-ps-document-open.js +14 -0
- package/dist/hooks/use-ps-document-pdf-cover.d.ts +3 -0
- package/dist/hooks/use-ps-document-pdf-cover.js +33 -0
- package/dist/hooks/use-ps-document-pdf-pages.d.ts +3 -0
- package/dist/hooks/use-ps-document-pdf-pages.js +31 -0
- package/dist/hooks/use-ps-document-text.d.ts +3 -0
- package/dist/hooks/use-ps-document-text.js +29 -0
- package/dist/hooks/use-ps-file-upload.d.ts +3 -0
- package/dist/hooks/use-ps-file-upload.js +32 -0
- package/dist/hooks/use-ps-header-right.d.ts +2 -0
- package/dist/hooks/use-ps-header-right.js +9 -0
- package/dist/hooks/use-ps-material-scheme.d.ts +2 -0
- package/dist/hooks/use-ps-material-scheme.js +3 -0
- package/dist/hooks/use-ps-menu-anchor.d.ts +10 -0
- package/dist/hooks/use-ps-menu-anchor.js +13 -0
- package/dist/hooks/use-ps-quick-actions.d.ts +2 -0
- package/dist/hooks/use-ps-quick-actions.js +30 -0
- package/dist/hooks/use-ps-stack-screen-options.d.ts +2 -0
- package/dist/hooks/use-ps-stack-screen-options.js +7 -0
- package/dist/hooks/use-ps-top-inset.d.ts +1 -0
- package/dist/hooks/use-ps-top-inset.js +10 -0
- package/dist/index.d.ts +44 -0
- package/dist/index.js +43 -0
- package/dist/interfaces/ps-barcode-frame-size.d.ts +4 -0
- package/dist/interfaces/ps-barcode-frame-size.js +1 -0
- package/dist/interfaces/ps-barcode-last-read.d.ts +4 -0
- package/dist/interfaces/ps-barcode-last-read.js +1 -0
- package/dist/interfaces/ps-barcode-scan.d.ts +4 -0
- package/dist/interfaces/ps-barcode-scan.js +1 -0
- package/dist/interfaces/ps-barcode-scanner-labels.d.ts +8 -0
- package/dist/interfaces/ps-barcode-scanner-labels.js +1 -0
- package/dist/interfaces/ps-barcode-scanner-native.d.ts +23 -0
- package/dist/interfaces/ps-barcode-scanner-native.js +1 -0
- package/dist/interfaces/ps-capture-labels.d.ts +6 -0
- package/dist/interfaces/ps-capture-labels.js +1 -0
- package/dist/interfaces/ps-capture-menu-options.d.ts +6 -0
- package/dist/interfaces/ps-capture-menu-options.js +1 -0
- package/dist/interfaces/ps-capture-modules.d.ts +6 -0
- package/dist/interfaces/ps-capture-modules.js +1 -0
- package/dist/interfaces/ps-capture-options.d.ts +6 -0
- package/dist/interfaces/ps-capture-options.js +1 -0
- package/dist/interfaces/ps-cartesian-chart-series.d.ts +2 -0
- package/dist/interfaces/ps-date-dialog-colors.d.ts +19 -0
- package/dist/interfaces/ps-date-dialog-colors.js +1 -0
- package/dist/interfaces/ps-device-file.d.ts +5 -0
- package/dist/interfaces/ps-device-file.js +1 -0
- package/dist/interfaces/ps-document-file-system.d.ts +2 -0
- package/dist/interfaces/ps-document-file-system.js +1 -0
- package/dist/interfaces/ps-document-labels.d.ts +1 -0
- package/dist/interfaces/ps-document-page-image.d.ts +5 -0
- package/dist/interfaces/ps-document-page-image.js +1 -0
- package/dist/interfaces/ps-document-pdf-native.d.ts +9 -0
- package/dist/interfaces/ps-document-pdf-native.js +1 -0
- package/dist/interfaces/ps-document-pdf-options.d.ts +4 -0
- package/dist/interfaces/ps-document-pdf-options.js +1 -0
- package/dist/interfaces/ps-document-pdf-state.d.ts +6 -0
- package/dist/interfaces/ps-document-pdf-state.js +1 -0
- package/dist/interfaces/ps-document-viewer-entry.d.ts +8 -0
- package/dist/interfaces/ps-document-viewer-entry.js +1 -0
- package/dist/interfaces/ps-file-upload-options.d.ts +8 -0
- package/dist/interfaces/ps-file-upload-options.js +1 -0
- package/dist/interfaces/ps-material-scheme.d.ts +38 -0
- package/dist/interfaces/ps-material-scheme.js +1 -0
- package/dist/interfaces/ps-material-segmented-colors.d.ts +14 -0
- package/dist/interfaces/ps-material-segmented-colors.js +1 -0
- package/dist/interfaces/ps-material-switch-colors.d.ts +14 -0
- package/dist/interfaces/ps-material-switch-colors.js +1 -0
- package/dist/interfaces/ps-menu-anchor.d.ts +6 -0
- package/dist/interfaces/ps-menu-anchor.js +1 -0
- package/dist/interfaces/ps-menu-item.d.ts +1 -0
- package/dist/interfaces/ps-menu-popup-layout.d.ts +6 -0
- package/dist/interfaces/ps-menu-popup-layout.js +1 -0
- package/dist/interfaces/ps-menu-popup-window.d.ts +4 -0
- package/dist/interfaces/ps-menu-popup-window.js +1 -0
- package/dist/interfaces/ps-mobile-theme-input.d.ts +2 -0
- package/dist/interfaces/ps-quick-action-native.d.ts +14 -0
- package/dist/interfaces/ps-quick-action-native.js +1 -0
- package/dist/interfaces/ps-quick-action.d.ts +7 -0
- package/dist/interfaces/ps-quick-action.js +1 -0
- package/dist/interfaces/ps-scanned-file.d.ts +2 -5
- package/dist/interfaces/ps-stack-screen-options.d.ts +2 -0
- package/dist/interfaces/ps-stack-screen-options.js +1 -0
- package/dist/interfaces/ps-switcher-item.d.ts +11 -0
- package/dist/interfaces/ps-switcher-item.js +1 -0
- package/dist/interfaces/ps-tab-bar-context-data.d.ts +1 -0
- package/dist/interfaces/ps-tab-bar-icon-colors.d.ts +4 -0
- package/dist/interfaces/ps-tab-bar-icon-colors.js +1 -0
- package/dist/interfaces/ps-tab-bar-label-style.d.ts +5 -0
- package/dist/interfaces/ps-tab-bar-label-style.js +1 -0
- package/dist/interfaces/ps-tab-bar-label-styles.d.ts +5 -0
- package/dist/interfaces/ps-tab-bar-label-styles.js +1 -0
- package/dist/interfaces/ps-tab-bar-style.d.ts +12 -0
- package/dist/interfaces/ps-tab-bar-style.js +1 -0
- package/dist/interfaces/ps-waterfall-datum.d.ts +6 -0
- package/dist/interfaces/ps-waterfall-datum.js +1 -0
- package/dist/interfaces/ps-waterfall-step.d.ts +7 -0
- package/dist/interfaces/ps-waterfall-step.js +1 -0
- package/dist/interfaces/use-ps-barcode-scanner-result.d.ts +6 -0
- package/dist/interfaces/use-ps-barcode-scanner-result.js +1 -0
- package/dist/interfaces/use-ps-document-open-result.d.ts +5 -0
- package/dist/interfaces/use-ps-document-open-result.js +1 -0
- package/dist/interfaces/use-ps-document-pdf-cover-result.d.ts +7 -0
- package/dist/interfaces/use-ps-document-pdf-cover-result.js +1 -0
- package/dist/interfaces/use-ps-document-pdf-pages-result.d.ts +5 -0
- package/dist/interfaces/use-ps-document-pdf-pages-result.js +1 -0
- package/dist/interfaces/use-ps-document-text-result.d.ts +5 -0
- package/dist/interfaces/use-ps-document-text-result.js +1 -0
- package/dist/interfaces/use-ps-file-upload-result.d.ts +8 -0
- package/dist/interfaces/use-ps-file-upload-result.js +1 -0
- package/dist/interfaces/use-ps-quick-actions-options.d.ts +5 -0
- package/dist/interfaces/use-ps-quick-actions-options.js +1 -0
- package/dist/services/ps-barcode-scanner-service.d.ts +14 -0
- package/dist/services/ps-barcode-scanner-service.js +53 -0
- package/dist/services/ps-button-style-service.d.ts +2 -0
- package/dist/services/ps-button-style-service.js +13 -1
- package/dist/services/ps-capture-picker-service.d.ts +11 -0
- package/dist/services/ps-capture-picker-service.js +67 -0
- package/dist/services/ps-capture-source-service.d.ts +10 -0
- package/dist/services/ps-capture-source-service.js +31 -0
- package/dist/services/ps-chart-brand-service.d.ts +4 -0
- package/dist/services/ps-chart-brand-service.js +20 -0
- package/dist/services/ps-chart-shape-service.d.ts +7 -0
- package/dist/services/ps-chart-shape-service.js +17 -0
- package/dist/services/ps-control-style-service.js +3 -2
- package/dist/services/ps-date-picker-service.d.ts +3 -0
- package/dist/services/ps-date-picker-service.js +21 -0
- package/dist/services/ps-device-file-service.d.ts +14 -0
- package/dist/services/ps-device-file-service.js +27 -0
- package/dist/services/ps-document-file-service.d.ts +10 -0
- package/dist/services/ps-document-file-service.js +75 -0
- package/dist/services/ps-document-open-service.d.ts +5 -0
- package/dist/services/ps-document-open-service.js +16 -0
- package/dist/services/ps-document-pdf-service.d.ts +10 -0
- package/dist/services/ps-document-pdf-service.js +40 -0
- package/dist/services/ps-document-text-service.d.ts +5 -0
- package/dist/services/ps-document-text-service.js +14 -0
- package/dist/services/ps-document-viewer-entry-service.d.ts +11 -0
- package/dist/services/ps-document-viewer-entry-service.js +72 -0
- package/dist/services/ps-list-row-style-service.js +2 -5
- package/dist/services/ps-material-control-service.d.ts +9 -0
- package/dist/services/ps-material-control-service.js +46 -0
- package/dist/services/ps-material-scheme-service.d.ts +5 -0
- package/dist/services/ps-material-scheme-service.js +42 -0
- package/dist/services/ps-menu-popup-service.d.ts +6 -0
- package/dist/services/ps-menu-popup-service.js +23 -0
- package/dist/services/ps-mobile-theme-service.d.ts +1 -1
- package/dist/services/ps-mobile-theme-service.js +7 -2
- package/dist/services/ps-navigation-theme-service.d.ts +5 -0
- package/dist/services/ps-navigation-theme-service.js +21 -0
- package/dist/services/ps-pdf-native-service.d.ts +8 -0
- package/dist/services/ps-pdf-native-service.js +33 -0
- package/dist/services/ps-quick-action-service.d.ts +9 -0
- package/dist/services/ps-quick-action-service.js +31 -0
- package/dist/services/ps-ripple-service.d.ts +7 -0
- package/dist/services/ps-ripple-service.js +26 -0
- package/dist/services/ps-screen-service.d.ts +3 -1
- package/dist/services/ps-screen-service.js +8 -2
- package/dist/services/ps-sheet-service.d.ts +1 -0
- package/dist/services/ps-sheet-service.js +3 -0
- package/dist/services/ps-stack-options-service.d.ts +5 -0
- package/dist/services/ps-stack-options-service.js +18 -0
- package/dist/services/ps-state-service.d.ts +7 -0
- package/dist/services/ps-state-service.js +26 -0
- package/dist/services/ps-switcher-service.d.ts +6 -0
- package/dist/services/ps-switcher-service.js +15 -0
- package/dist/services/ps-tab-bar-style-service.d.ts +5 -0
- package/dist/services/ps-tab-bar-style-service.js +30 -0
- package/dist/services/ps-waterfall-service.d.ts +10 -0
- package/dist/services/ps-waterfall-service.js +38 -0
- package/jest-setup.js +86 -3
- package/package.json +36 -3
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useState } from 'react';
|
|
3
|
+
import { View } from 'react-native';
|
|
4
|
+
import { PsSwitcherConfig } from '../../constants/ps-switcher-config';
|
|
5
|
+
import { PsSwitcherService } from '../../services/ps-switcher-service';
|
|
6
|
+
import { PsMenuPopupDivider } from '../ps-menu-popup/ps-menu-popup-divider';
|
|
7
|
+
import { PsSearchField } from '../ps-search-field/ps-search-field';
|
|
8
|
+
import { PsText } from '../ps-text/ps-text';
|
|
9
|
+
import { PsSwitcherRow } from './ps-switcher-row';
|
|
10
|
+
export const PsSwitcherPanel = ({ clearLabel, items, noMatchLabel, onSelect, searchPlaceholder, selectedId, }) => {
|
|
11
|
+
const [query, setQuery] = useState('');
|
|
12
|
+
const shown = PsSwitcherService.filter(items, query);
|
|
13
|
+
return (_jsxs(View, { children: [PsSwitcherService.hasSearch(items.length) ? (_jsx(View, { style: {
|
|
14
|
+
paddingHorizontal: PsSwitcherConfig.searchPaddingHorizontal,
|
|
15
|
+
paddingVertical: PsSwitcherConfig.searchPaddingVertical,
|
|
16
|
+
}, children: _jsx(PsSearchField, { clearLabel: clearLabel, onChange: setQuery, placeholder: searchPlaceholder, value: query }) })) : null, shown.length === 0 ? (_jsx(View, { style: { padding: PsSwitcherConfig.searchPaddingHorizontal }, children: _jsx(PsText, { tone: 'muted', children: noMatchLabel }) })) : (shown.map((item, index) => (_jsxs(View, { children: [index === 0 ? null : _jsx(PsMenuPopupDivider, {}), _jsx(PsSwitcherRow, { isSelected: item.id === selectedId, item: item, onPress: () => onSelect(item.id) })] }, item.id))))] }));
|
|
17
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { PsSwitcherItem } from '../../interfaces/ps-switcher-item';
|
|
2
|
+
export interface PsSwitcherProps {
|
|
3
|
+
allItem?: PsSwitcherItem;
|
|
4
|
+
clearLabel: string;
|
|
5
|
+
isLoading?: boolean;
|
|
6
|
+
items: PsSwitcherItem[];
|
|
7
|
+
label: string;
|
|
8
|
+
noMatchLabel: string;
|
|
9
|
+
onSelect: (id: string) => void;
|
|
10
|
+
searchPlaceholder: string;
|
|
11
|
+
selectedId: string;
|
|
12
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { PsSwitcherItem } from '../../interfaces/ps-switcher-item';
|
|
2
|
+
export interface PsSwitcherRowProps {
|
|
3
|
+
isSelected: boolean;
|
|
4
|
+
item: PsSwitcherItem;
|
|
5
|
+
onPress: () => void;
|
|
6
|
+
}
|
|
7
|
+
export declare const PsSwitcherRow: ({ isSelected, item, onPress }: PsSwitcherRowProps) => import("react").JSX.Element;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { PsIconKey } from '@pallasoft/ps-icons';
|
|
3
|
+
import { Pressable, View } from 'react-native';
|
|
4
|
+
import { PsMenuPopupConfig } from '../../constants/ps-menu-popup-config';
|
|
5
|
+
import { PsRippleKind } from '../../constants/ps-ripple-kind';
|
|
6
|
+
import { PsSwitcherConfig } from '../../constants/ps-switcher-config';
|
|
7
|
+
import { usePsHaptics } from '../../hooks/use-ps-haptics';
|
|
8
|
+
import { usePsMobileTheme } from '../../hooks/use-ps-mobile-theme';
|
|
9
|
+
import { PsRippleService } from '../../services/ps-ripple-service';
|
|
10
|
+
import { PsAvatar } from '../ps-avatar/ps-avatar';
|
|
11
|
+
import { PsBadge } from '../ps-badge/ps-badge';
|
|
12
|
+
import { PsIcon } from '../ps-icon/ps-icon';
|
|
13
|
+
import { PsText } from '../ps-text/ps-text';
|
|
14
|
+
export const PsSwitcherRow = ({ isSelected, item, onPress }) => {
|
|
15
|
+
const haptic = usePsHaptics();
|
|
16
|
+
const theme = usePsMobileTheme();
|
|
17
|
+
return (_jsxs(Pressable, { android_ripple: PsRippleService.resolve(theme, PsRippleKind.Surface), accessibilityRole: 'menuitem', accessibilityState: { selected: isSelected }, onPress: () => {
|
|
18
|
+
haptic('selection');
|
|
19
|
+
onPress();
|
|
20
|
+
}, style: ({ pressed }) => ({
|
|
21
|
+
alignItems: 'center',
|
|
22
|
+
backgroundColor: pressed
|
|
23
|
+
? theme.primarySoftStrong
|
|
24
|
+
: isSelected
|
|
25
|
+
? theme.primarySoft
|
|
26
|
+
: 'transparent',
|
|
27
|
+
flexDirection: 'row',
|
|
28
|
+
gap: PsSwitcherConfig.rowGap,
|
|
29
|
+
minHeight: PsSwitcherConfig.rowMinHeight,
|
|
30
|
+
paddingHorizontal: PsMenuPopupConfig.rowPaddingHorizontal,
|
|
31
|
+
paddingVertical: PsSwitcherConfig.rowPaddingVertical,
|
|
32
|
+
}), children: [_jsx(PsAvatar, { initials: item.initials, size: 'small' }), _jsxs(View, { style: { flex: 1, gap: PsSwitcherConfig.textGap }, children: [_jsx(PsText, { numberOfLines: 1, weight: 'semibold', children: item.title }), item.subtitle === undefined ? null : (_jsx(PsText, { numberOfLines: 1, tone: 'muted', variant: 'small', children: item.subtitle })), item.status === undefined ? null : (_jsx(PsText, { numberOfLines: 1, tone: item.statusTone, variant: 'small', children: item.status }))] }), _jsxs(View, { style: { alignItems: 'flex-end', gap: PsSwitcherConfig.textGap }, children: [item.value === undefined ? null : (_jsx(PsText, { numberOfLines: 1, weight: 'bold', children: item.value })), item.badge === undefined ? null : (_jsx(PsBadge, { size: 'small', tone: 'primary', children: item.badge }))] }), isSelected ? _jsx(PsIcon, { color: theme.primaryText, iconKey: PsIconKey.Check }) : null] }));
|
|
33
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ElementRef, RefObject } from 'react';
|
|
2
|
+
import { View } from 'react-native';
|
|
3
|
+
import type { PsSwitcherItem } from '../../interfaces/ps-switcher-item';
|
|
4
|
+
export interface PsSwitcherTriggerProps {
|
|
5
|
+
anchorRef: RefObject<ElementRef<typeof View> | null>;
|
|
6
|
+
isOpen: boolean;
|
|
7
|
+
item: PsSwitcherItem;
|
|
8
|
+
label: string;
|
|
9
|
+
onPress: () => void;
|
|
10
|
+
}
|
|
11
|
+
export declare const PsSwitcherTrigger: ({ anchorRef, isOpen, item, label, onPress, }: PsSwitcherTriggerProps) => import("react").JSX.Element;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { PsIconKey } from '@pallasoft/ps-icons';
|
|
3
|
+
import { Pressable, View } from 'react-native';
|
|
4
|
+
import { PsMobileControlConfig } from '../../constants/ps-mobile-control-config';
|
|
5
|
+
import { PsRippleKind } from '../../constants/ps-ripple-kind';
|
|
6
|
+
import { PsSwitcherConfig } from '../../constants/ps-switcher-config';
|
|
7
|
+
import { usePsHaptics } from '../../hooks/use-ps-haptics';
|
|
8
|
+
import { usePsMobileTheme } from '../../hooks/use-ps-mobile-theme';
|
|
9
|
+
import { PsRippleService } from '../../services/ps-ripple-service';
|
|
10
|
+
import { PsStateService } from '../../services/ps-state-service';
|
|
11
|
+
import { PsAvatar } from '../ps-avatar/ps-avatar';
|
|
12
|
+
import { PsIcon } from '../ps-icon/ps-icon';
|
|
13
|
+
import { PsText } from '../ps-text/ps-text';
|
|
14
|
+
export const PsSwitcherTrigger = ({ anchorRef, isOpen, item, label, onPress, }) => {
|
|
15
|
+
const haptic = usePsHaptics();
|
|
16
|
+
const theme = usePsMobileTheme();
|
|
17
|
+
return (_jsx(View, { collapsable: false, ref: anchorRef, children: _jsxs(Pressable, { android_ripple: PsRippleService.resolve(theme, PsRippleKind.Surface), accessibilityLabel: label, accessibilityRole: 'button', accessibilityState: { expanded: isOpen }, onPress: () => {
|
|
18
|
+
haptic('selection');
|
|
19
|
+
onPress();
|
|
20
|
+
}, style: ({ pressed }) => ({
|
|
21
|
+
alignItems: 'center',
|
|
22
|
+
backgroundColor: pressed
|
|
23
|
+
? PsStateService.pressedFill(theme, theme.surface)
|
|
24
|
+
: theme.surface,
|
|
25
|
+
borderColor: isOpen ? theme.primary : theme.line,
|
|
26
|
+
borderRadius: PsMobileControlConfig.controlRadius,
|
|
27
|
+
borderWidth: 1,
|
|
28
|
+
flexDirection: 'row',
|
|
29
|
+
gap: PsSwitcherConfig.rowGap,
|
|
30
|
+
minHeight: PsSwitcherConfig.triggerMinHeight,
|
|
31
|
+
overflow: 'hidden',
|
|
32
|
+
paddingHorizontal: PsSwitcherConfig.triggerPaddingHorizontal,
|
|
33
|
+
paddingVertical: PsSwitcherConfig.rowPaddingVertical,
|
|
34
|
+
}), children: [_jsx(PsAvatar, { initials: item.initials, size: 'small' }), _jsxs(View, { style: { flex: 1, gap: PsSwitcherConfig.textGap }, children: [_jsx(PsText, { numberOfLines: 1, weight: 'semibold', children: item.title }), item.value === undefined ? null : (_jsx(PsText, { numberOfLines: 1, weight: 'bold', children: item.value })), item.status === undefined ? null : (_jsx(PsText, { numberOfLines: 1, tone: item.statusTone, variant: 'small', children: item.status }))] }), _jsx(PsIcon, { color: theme.muted, iconKey: PsIconKey.Chevron, size: PsSwitcherConfig.chevronSize })] }) }));
|
|
35
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { PsSkeletonShape } from '../../constants/ps-skeleton-shape';
|
|
3
|
+
import { usePsMenuAnchor } from '../../hooks/use-ps-menu-anchor';
|
|
4
|
+
import { PsSwitcherService } from '../../services/ps-switcher-service';
|
|
5
|
+
import { PsMenuPopup } from '../ps-menu-popup/ps-menu-popup';
|
|
6
|
+
import { PsSkeleton } from '../ps-skeleton/ps-skeleton';
|
|
7
|
+
import { PsSwitcherPanel } from './ps-switcher-panel';
|
|
8
|
+
import { PsSwitcherTrigger } from './ps-switcher-trigger';
|
|
9
|
+
export const PsSwitcher = ({ allItem, clearLabel, isLoading = false, items, label, noMatchLabel, onSelect, searchPlaceholder, selectedId, }) => {
|
|
10
|
+
const menu = usePsMenuAnchor();
|
|
11
|
+
const all = allItem === undefined ? items : [allItem, ...items];
|
|
12
|
+
const selected = PsSwitcherService.selected(all, selectedId);
|
|
13
|
+
if (isLoading)
|
|
14
|
+
return _jsx(PsSkeleton, { shape: PsSkeletonShape.Card });
|
|
15
|
+
if (selected === undefined)
|
|
16
|
+
return null;
|
|
17
|
+
return (_jsxs(_Fragment, { children: [_jsx(PsSwitcherTrigger, { isOpen: menu.anchor !== undefined, item: selected, label: label, onPress: menu.open, anchorRef: menu.ref }), menu.anchor === undefined ? null : (_jsx(PsMenuPopup, { anchor: menu.anchor, isFullWidth: true, onClose: menu.close, children: _jsx(PsSwitcherPanel, { clearLabel: clearLabel, items: all, noMatchLabel: noMatchLabel, onSelect: (id) => {
|
|
18
|
+
menu.close();
|
|
19
|
+
onSelect(id);
|
|
20
|
+
}, searchPlaceholder: searchPlaceholder, selectedId: selectedId }) }))] }));
|
|
21
|
+
};
|
|
@@ -3,6 +3,6 @@ import { useMemo, useState } from 'react';
|
|
|
3
3
|
import { PsTabBarContext } from '../../contexts/ps-tab-bar-context';
|
|
4
4
|
export const PsTabBarProvider = ({ children }) => {
|
|
5
5
|
const [isHidden, setIsHidden] = useState(false);
|
|
6
|
-
const value = useMemo(() => ({ isHidden, setIsHidden }), [isHidden]);
|
|
6
|
+
const value = useMemo(() => ({ hasTabBar: true, isHidden, setIsHidden }), [isHidden]);
|
|
7
7
|
return _jsx(PsTabBarContext.Provider, { value: value, children: children });
|
|
8
8
|
};
|
|
@@ -2,10 +2,12 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { useEffect, useRef, useState } from 'react';
|
|
3
3
|
import { Pressable, ScrollView, View } from 'react-native';
|
|
4
4
|
import { PsMobileControlConfig } from '../../constants/ps-mobile-control-config';
|
|
5
|
+
import { PsRippleKind } from '../../constants/ps-ripple-kind';
|
|
5
6
|
import { PsSkeletonShape } from '../../constants/ps-skeleton-shape';
|
|
6
7
|
import { PsTabsConfig } from '../../constants/ps-tabs-config';
|
|
7
8
|
import { usePsHaptics } from '../../hooks/use-ps-haptics';
|
|
8
9
|
import { usePsMobileTheme } from '../../hooks/use-ps-mobile-theme';
|
|
10
|
+
import { PsRippleService } from '../../services/ps-ripple-service';
|
|
9
11
|
import { PsTabsService } from '../../services/ps-tabs-service';
|
|
10
12
|
import { PsSkeleton } from '../ps-skeleton/ps-skeleton';
|
|
11
13
|
import { PsText } from '../ps-text/ps-text';
|
|
@@ -26,7 +28,7 @@ export const PsTabs = ({ getItemIcon, getItemKey, getItemLabel, isLoading = fals
|
|
|
26
28
|
const key = getItemKey(item);
|
|
27
29
|
const isSelected = key === selectedKey;
|
|
28
30
|
const color = isSelected ? theme.primaryText : theme.muted;
|
|
29
|
-
return (_jsxs(Pressable, { accessibilityRole: 'tab', accessibilityState: { selected: isSelected }, onLayout: (event) => frames.current.set(key, {
|
|
31
|
+
return (_jsxs(Pressable, { android_ripple: PsRippleService.resolve(theme, PsRippleKind.Surface), accessibilityRole: 'tab', accessibilityState: { selected: isSelected }, onLayout: (event) => frames.current.set(key, {
|
|
30
32
|
width: event.nativeEvent.layout.width,
|
|
31
33
|
x: event.nativeEvent.layout.x,
|
|
32
34
|
}), onPress: () => {
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { PsWaterfallDatum } from '../../interfaces/ps-waterfall-datum';
|
|
2
|
+
export interface PsWaterfallChartProps {
|
|
3
|
+
data: PsWaterfallDatum[];
|
|
4
|
+
emptyLabel: string;
|
|
5
|
+
formatTick: (value: number) => string;
|
|
6
|
+
formatValue: (value: number) => string;
|
|
7
|
+
height?: number;
|
|
8
|
+
isLoading?: boolean;
|
|
9
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { StyleSheet, View } from 'react-native';
|
|
3
|
+
import Svg, { G, Line, Text as SvgText } from 'react-native-svg';
|
|
4
|
+
import { PsChartConfig } from '../../constants/ps-chart-config';
|
|
5
|
+
import { PsChartSkeletonVariant } from '../../constants/ps-chart-skeleton-variant';
|
|
6
|
+
import { usePsChartReveal } from '../../hooks/use-ps-chart-reveal';
|
|
7
|
+
import { usePsChartScrub } from '../../hooks/use-ps-chart-scrub';
|
|
8
|
+
import { usePsChartWidth } from '../../hooks/use-ps-chart-width';
|
|
9
|
+
import { usePsMobileTheme } from '../../hooks/use-ps-mobile-theme';
|
|
10
|
+
import { PsChartScaleService } from '../../services/ps-chart-scale-service';
|
|
11
|
+
import { PsWaterfallService } from '../../services/ps-waterfall-service';
|
|
12
|
+
import { PsChartBar } from '../ps-chart-bar/ps-chart-bar';
|
|
13
|
+
import { PsChartEmptyState } from '../ps-chart-empty-state/ps-chart-empty-state';
|
|
14
|
+
import { PsChartReadout } from '../ps-chart-readout/ps-chart-readout';
|
|
15
|
+
import { PsChartSkeleton } from '../ps-chart-skeleton/ps-chart-skeleton';
|
|
16
|
+
export const PsWaterfallChart = ({ data, emptyLabel, formatTick, formatValue, height = PsChartConfig.chartHeight, isLoading = false, }) => {
|
|
17
|
+
const theme = usePsMobileTheme();
|
|
18
|
+
const { onLayout, width } = usePsChartWidth();
|
|
19
|
+
const plot = PsChartScaleService.plot(width, height);
|
|
20
|
+
const { index, panHandlers } = usePsChartScrub(data.length, true, plot);
|
|
21
|
+
const steps = PsWaterfallService.steps(data);
|
|
22
|
+
const progress = usePsChartReveal(`waterfall:${PsWaterfallService.values(steps).join(',')}`);
|
|
23
|
+
if (isLoading)
|
|
24
|
+
return _jsx(PsChartSkeleton, { height: height, variant: PsChartSkeletonVariant.Bars });
|
|
25
|
+
if (steps.length === 0 || PsWaterfallService.values(steps).every((value) => value === 0))
|
|
26
|
+
return _jsx(PsChartEmptyState, { height: height, label: emptyLabel });
|
|
27
|
+
const colors = [theme.chart[0], theme.danger, theme.primary700];
|
|
28
|
+
const domain = PsChartScaleService.domain(PsWaterfallService.values(steps));
|
|
29
|
+
const selected = index === null ? steps.length - 1 : index;
|
|
30
|
+
const step = steps[selected];
|
|
31
|
+
const rects = PsWaterfallService.rects(steps, colors, domain, plot);
|
|
32
|
+
const color = step.isTotal ? colors[2] : step.value < 0 ? colors[1] : colors[0];
|
|
33
|
+
return (_jsxs(View, { style: { gap: 8 }, children: [_jsx(PsChartReadout, { items: [{ color, label: step.label, value: formatValue(step.value) }], title: step.label }), _jsx(View, { accessible: true, accessibilityLabel: `${step.label}, ${formatValue(step.value)}`, accessibilityRole: 'image', onLayout: onLayout, style: { height }, children: width === 0 ? null : (_jsxs(_Fragment, { children: [_jsxs(Svg, { height: height, pointerEvents: 'none', width: width, children: [PsChartScaleService.ticks(domain).map((tick) => {
|
|
34
|
+
const y = PsChartScaleService.y(tick, domain, plot);
|
|
35
|
+
return (_jsxs(G, { children: [_jsx(Line, { stroke: theme.line, strokeWidth: PsChartConfig.gridLineWidth, x1: plot.left, x2: plot.right, y1: y, y2: y }), _jsx(SvgText, { fill: theme.muted, fontFamily: theme.fonts.medium, fontSize: PsChartConfig.axisLabelSize, textAnchor: 'end', x: plot.left - 6, y: y + 3, children: formatTick(tick) })] }, tick));
|
|
36
|
+
}), steps.map((entry, position) => (_jsx(SvgText, { fill: theme.muted, fontFamily: theme.fonts.medium, fontSize: PsChartConfig.axisLabelSize, textAnchor: 'middle', x: PsChartScaleService.categoryX(position, steps.length, plot, true), y: height - 6, children: entry.label }, entry.label))), rects.map((rect) => (_jsx(PsChartBar, { progress: progress, rect: rect }, rect.id)))] }), _jsx(View, { ...panHandlers, style: StyleSheet.absoluteFill, testID: 'ps-chart-touch' })] })) })] }));
|
|
37
|
+
};
|
|
@@ -10,5 +10,5 @@ export const PsWidgetList = ({ children, onRefresh, style }) => {
|
|
|
10
10
|
return (_jsx(ScrollView, { contentContainerStyle: {
|
|
11
11
|
gap: PsMobileControlConfig.rowSpacing,
|
|
12
12
|
padding: PsListConfig.contentInset,
|
|
13
|
-
}, contentInsetAdjustmentBehavior: 'automatic', refreshControl: onRefresh === undefined ? undefined : (_jsx(RefreshControl, { onRefresh: () => void refresh(), refreshing: isRefreshing, tintColor: theme.primary })), style: [{ backgroundColor: theme.background, flex: 1 }, style], children: children }));
|
|
13
|
+
}, contentInsetAdjustmentBehavior: 'automatic', refreshControl: onRefresh === undefined ? undefined : (_jsx(RefreshControl, { colors: [theme.primaryText], progressBackgroundColor: theme.surface, onRefresh: () => void refresh(), refreshing: isRefreshing, tintColor: theme.primary })), style: [{ backgroundColor: theme.background, flex: 1 }, style], children: children }));
|
|
14
14
|
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare const PsAndroidStateConfig: {
|
|
2
|
+
readonly disabledContainerAlpha: 0.12;
|
|
3
|
+
readonly disabledContentAlpha: 0.38;
|
|
4
|
+
readonly focusAlpha: 0.12;
|
|
5
|
+
readonly iconRippleRadius: 24;
|
|
6
|
+
readonly loadingIndicatorLarge: 48;
|
|
7
|
+
readonly loadingIndicatorSmall: 28;
|
|
8
|
+
readonly rippleAlpha: 0.16;
|
|
9
|
+
readonly rippleOnFillAlpha: 0.24;
|
|
10
|
+
readonly tabLabelSize: 12;
|
|
11
|
+
readonly touchTarget: 48;
|
|
12
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export const PsAndroidStateConfig = {
|
|
2
|
+
disabledContainerAlpha: 0.12,
|
|
3
|
+
disabledContentAlpha: 0.38,
|
|
4
|
+
focusAlpha: 0.12,
|
|
5
|
+
iconRippleRadius: 24,
|
|
6
|
+
loadingIndicatorLarge: 48,
|
|
7
|
+
loadingIndicatorSmall: 28,
|
|
8
|
+
rippleAlpha: 0.16,
|
|
9
|
+
rippleOnFillAlpha: 0.24,
|
|
10
|
+
tabLabelSize: 12,
|
|
11
|
+
touchTarget: 48,
|
|
12
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { PallasoftDarkColor } from '@pallasoft/ps-design-system';
|
|
2
|
+
export declare const PsBarcodeScannerConfig: {
|
|
3
|
+
readonly backdropColor: PallasoftDarkColor.Background;
|
|
4
|
+
readonly barcodeTypes: string[];
|
|
5
|
+
readonly barGap: 12;
|
|
6
|
+
readonly barPadding: 12;
|
|
7
|
+
readonly cooldownMs: 1500;
|
|
8
|
+
readonly facing: "back";
|
|
9
|
+
readonly frameAspectRatio: 0.6;
|
|
10
|
+
readonly frameBorderWidth: 3;
|
|
11
|
+
readonly frameRadius: 16;
|
|
12
|
+
readonly frameWidthFraction: 0.8;
|
|
13
|
+
readonly footerGap: 8;
|
|
14
|
+
readonly footerPadding: 16;
|
|
15
|
+
readonly pillPaddingHorizontal: 14;
|
|
16
|
+
readonly pillPaddingVertical: 8;
|
|
17
|
+
readonly pillRadius: 16;
|
|
18
|
+
};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { PallasoftDarkColor } from '@pallasoft/ps-design-system';
|
|
2
|
+
export const PsBarcodeScannerConfig = {
|
|
3
|
+
backdropColor: PallasoftDarkColor.Background,
|
|
4
|
+
barcodeTypes: [
|
|
5
|
+
'ean13',
|
|
6
|
+
'ean8',
|
|
7
|
+
'upc_a',
|
|
8
|
+
'upc_e',
|
|
9
|
+
'code128',
|
|
10
|
+
'code39',
|
|
11
|
+
'code93',
|
|
12
|
+
'itf14',
|
|
13
|
+
'codabar',
|
|
14
|
+
'qr',
|
|
15
|
+
'datamatrix',
|
|
16
|
+
'pdf417',
|
|
17
|
+
],
|
|
18
|
+
barGap: 12,
|
|
19
|
+
barPadding: 12,
|
|
20
|
+
cooldownMs: 1500,
|
|
21
|
+
facing: 'back',
|
|
22
|
+
frameAspectRatio: 0.6,
|
|
23
|
+
frameBorderWidth: 3,
|
|
24
|
+
frameRadius: 16,
|
|
25
|
+
frameWidthFraction: 0.8,
|
|
26
|
+
footerGap: 8,
|
|
27
|
+
footerPadding: 16,
|
|
28
|
+
pillPaddingHorizontal: 14,
|
|
29
|
+
pillPaddingVertical: 8,
|
|
30
|
+
pillRadius: 16,
|
|
31
|
+
};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { PsIconKey } from '@pallasoft/ps-icons';
|
|
2
|
+
import { PsCaptureSource } from './ps-capture-source';
|
|
3
|
+
export declare const PsCaptureConfig: {
|
|
4
|
+
readonly documentTypes: readonly ["image/*", "application/pdf"];
|
|
5
|
+
readonly icons: Record<PsCaptureSource, PsIconKey>;
|
|
6
|
+
readonly imageFallbackType: "image/jpeg";
|
|
7
|
+
readonly imageQuality: 0.8;
|
|
8
|
+
readonly order: readonly ["scan", "camera", "library", "files"];
|
|
9
|
+
readonly scanFileName: "scan";
|
|
10
|
+
readonly scanQuality: 80;
|
|
11
|
+
readonly unknownType: "application/octet-stream";
|
|
12
|
+
};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { PsIconKey } from '@pallasoft/ps-icons';
|
|
2
|
+
import { PsCaptureSource } from './ps-capture-source';
|
|
3
|
+
export const PsCaptureConfig = {
|
|
4
|
+
documentTypes: ['image/*', 'application/pdf'],
|
|
5
|
+
icons: {
|
|
6
|
+
[PsCaptureSource.Camera]: PsIconKey.Camera,
|
|
7
|
+
[PsCaptureSource.Files]: PsIconKey.File,
|
|
8
|
+
[PsCaptureSource.Library]: PsIconKey.Image,
|
|
9
|
+
[PsCaptureSource.Scan]: PsIconKey.Scan,
|
|
10
|
+
},
|
|
11
|
+
imageFallbackType: 'image/jpeg',
|
|
12
|
+
imageQuality: 0.8,
|
|
13
|
+
order: [
|
|
14
|
+
PsCaptureSource.Scan,
|
|
15
|
+
PsCaptureSource.Camera,
|
|
16
|
+
PsCaptureSource.Library,
|
|
17
|
+
PsCaptureSource.Files,
|
|
18
|
+
],
|
|
19
|
+
scanFileName: 'scan',
|
|
20
|
+
scanQuality: 80,
|
|
21
|
+
unknownType: 'application/octet-stream',
|
|
22
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export declare const PsChartBrandConfig: {
|
|
2
|
+
readonly steps: readonly [{
|
|
3
|
+
readonly amount: 0;
|
|
4
|
+
readonly isWhite: true;
|
|
5
|
+
}, {
|
|
6
|
+
readonly amount: 0.42;
|
|
7
|
+
readonly isWhite: true;
|
|
8
|
+
}, {
|
|
9
|
+
readonly amount: 0.32;
|
|
10
|
+
readonly isWhite: false;
|
|
11
|
+
}, {
|
|
12
|
+
readonly amount: 0.64;
|
|
13
|
+
readonly isWhite: true;
|
|
14
|
+
}, {
|
|
15
|
+
readonly amount: 0.52;
|
|
16
|
+
readonly isWhite: false;
|
|
17
|
+
}, {
|
|
18
|
+
readonly amount: 0.76;
|
|
19
|
+
readonly isWhite: true;
|
|
20
|
+
}];
|
|
21
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export const PsChartBrandConfig = {
|
|
2
|
+
steps: [
|
|
3
|
+
{ amount: 0, isWhite: true },
|
|
4
|
+
{ amount: 0.42, isWhite: true },
|
|
5
|
+
{ amount: 0.32, isWhite: false },
|
|
6
|
+
{ amount: 0.64, isWhite: true },
|
|
7
|
+
{ amount: 0.52, isWhite: false },
|
|
8
|
+
{ amount: 0.76, isWhite: true },
|
|
9
|
+
],
|
|
10
|
+
};
|
|
@@ -5,6 +5,8 @@ export declare const PsDocumentConfig: {
|
|
|
5
5
|
readonly barPaddingVertical: 4;
|
|
6
6
|
readonly chromeAlpha: 0.6;
|
|
7
7
|
readonly counterSeparator: " / ";
|
|
8
|
+
readonly keyJoin: "|";
|
|
9
|
+
readonly keySeparator: "|";
|
|
8
10
|
readonly dismissActivation: 12;
|
|
9
11
|
readonly dismissDistance: 120;
|
|
10
12
|
readonly dismissVelocity: 900;
|
|
@@ -20,4 +22,5 @@ export declare const PsDocumentConfig: {
|
|
|
20
22
|
readonly previewTextLines: 12;
|
|
21
23
|
readonly scaleEpsilon: 0.01;
|
|
22
24
|
readonly settleMs: 180;
|
|
25
|
+
readonly stripIconSize: 20;
|
|
23
26
|
};
|
|
@@ -5,6 +5,8 @@ export const PsDocumentConfig = {
|
|
|
5
5
|
barPaddingVertical: 4,
|
|
6
6
|
chromeAlpha: 0.6,
|
|
7
7
|
counterSeparator: ' / ',
|
|
8
|
+
keyJoin: '|',
|
|
9
|
+
keySeparator: '|',
|
|
8
10
|
dismissActivation: 12,
|
|
9
11
|
dismissDistance: 120,
|
|
10
12
|
dismissVelocity: 900,
|
|
@@ -20,4 +22,5 @@ export const PsDocumentConfig = {
|
|
|
20
22
|
previewTextLines: 12,
|
|
21
23
|
scaleEpsilon: 0.01,
|
|
22
24
|
settleMs: 180,
|
|
25
|
+
stripIconSize: 20,
|
|
23
26
|
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare const PsDocumentFileConfig: {
|
|
2
|
+
readonly cacheFolder: "ps-documents";
|
|
3
|
+
readonly fallbackExtension: "bin";
|
|
4
|
+
readonly hashModulus: 4294967296;
|
|
5
|
+
readonly hashMultiplier: 33;
|
|
6
|
+
readonly hashRadix: 36;
|
|
7
|
+
readonly hashSeed: 5381;
|
|
8
|
+
readonly pdfExtension: "pdf";
|
|
9
|
+
readonly textExtension: "txt";
|
|
10
|
+
readonly unsafeName: RegExp;
|
|
11
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export const PsDocumentFileConfig = {
|
|
2
|
+
cacheFolder: 'ps-documents',
|
|
3
|
+
fallbackExtension: 'bin',
|
|
4
|
+
hashModulus: 4294967296,
|
|
5
|
+
hashMultiplier: 33,
|
|
6
|
+
hashRadix: 36,
|
|
7
|
+
hashSeed: 5381,
|
|
8
|
+
pdfExtension: 'pdf',
|
|
9
|
+
textExtension: 'txt',
|
|
10
|
+
unsafeName: /[^a-zA-Z0-9-]/g,
|
|
11
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const PsDocumentLoadStatus: {
|
|
2
|
+
readonly Failed: "failed";
|
|
3
|
+
readonly Loading: "loading";
|
|
4
|
+
readonly Ready: "ready";
|
|
5
|
+
readonly Unavailable: "unavailable";
|
|
6
|
+
};
|
|
7
|
+
export type PsDocumentLoadStatus = (typeof PsDocumentLoadStatus)[keyof typeof PsDocumentLoadStatus];
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare const PsDocumentPdfConfig: {
|
|
2
|
+
readonly coverMaxWidth: 900;
|
|
3
|
+
readonly jpegQuality: 85;
|
|
4
|
+
readonly pageIdSeparator: "-p";
|
|
5
|
+
readonly pageMaxWidth: 2000;
|
|
6
|
+
readonly stripGap: 8;
|
|
7
|
+
readonly stripHeight: 72;
|
|
8
|
+
readonly stripPadding: 12;
|
|
9
|
+
readonly stripScrollViewPosition: 0.5;
|
|
10
|
+
readonly stripSelectedBorder: 2;
|
|
11
|
+
readonly stripTileWidth: 54;
|
|
12
|
+
readonly stripUnselectedAlpha: 0.3;
|
|
13
|
+
readonly unavailableError: "PDF rendering is not available";
|
|
14
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export const PsDocumentPdfConfig = {
|
|
2
|
+
coverMaxWidth: 900,
|
|
3
|
+
jpegQuality: 85,
|
|
4
|
+
pageIdSeparator: '-p',
|
|
5
|
+
pageMaxWidth: 2000,
|
|
6
|
+
stripGap: 8,
|
|
7
|
+
stripHeight: 72,
|
|
8
|
+
stripPadding: 12,
|
|
9
|
+
stripScrollViewPosition: 0.5,
|
|
10
|
+
stripSelectedBorder: 2,
|
|
11
|
+
stripTileWidth: 54,
|
|
12
|
+
stripUnselectedAlpha: 0.3,
|
|
13
|
+
unavailableError: 'PDF rendering is not available',
|
|
14
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare const PsMenuPopupConfig: {
|
|
2
|
+
readonly anchorGap: 4;
|
|
3
|
+
readonly edgeMargin: 8;
|
|
4
|
+
readonly maxWidth: 296;
|
|
5
|
+
readonly minWidth: 168;
|
|
6
|
+
readonly paddingVertical: 8;
|
|
7
|
+
readonly radius: 12;
|
|
8
|
+
readonly rowHeight: 48;
|
|
9
|
+
readonly rowPaddingHorizontal: 16;
|
|
10
|
+
};
|