base-paint 0.3.15 → 0.3.16
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/README.md +23 -6
- package/dist/charts.js +1 -0
- package/dist/components/bulk-bar/attrs.js +1 -0
- package/dist/components/bulk-bar/index.js +1 -0
- package/dist/components/bulk-bar/keys.d.ts +23 -0
- package/dist/components/bulk-bar/keys.d.ts.map +1 -0
- package/dist/components/bulk-bar/keys.js +55 -0
- package/dist/components/bulk-bar/keys.js.map +1 -0
- package/dist/components/bulk-bar/model.d.ts.map +1 -1
- package/dist/components/bulk-bar/model.js +10 -0
- package/dist/components/bulk-bar/model.js.map +1 -1
- package/dist/components/bulk-bar/render.js +1 -0
- package/dist/components/bulk-bar/runtime.js +1 -0
- package/dist/components/bulk-bar/style-column.js +1 -0
- package/dist/components/bulk-bar/style-confirm.js +1 -0
- package/dist/components/bulk-bar/style-sizes.js +1 -0
- package/dist/components/bulk-bar/style.js +1 -0
- package/dist/components/calendar-month/attrs.js +1 -0
- package/dist/components/calendar-month/index.js +1 -0
- package/dist/components/calendar-month/model.js +1 -0
- package/dist/components/calendar-month/render.js +1 -0
- package/dist/components/calendar-month/style.js +1 -0
- package/dist/components/cash-waterline/attrs.js +1 -0
- package/dist/components/cash-waterline/fields.d.ts +17 -0
- package/dist/components/cash-waterline/fields.d.ts.map +1 -1
- package/dist/components/cash-waterline/fields.js +41 -0
- package/dist/components/cash-waterline/fields.js.map +1 -1
- package/dist/components/cash-waterline/index.js +1 -0
- package/dist/components/cash-waterline/model.d.ts.map +1 -1
- package/dist/components/cash-waterline/model.js +3 -1
- package/dist/components/cash-waterline/model.js.map +1 -1
- package/dist/components/cash-waterline/render.js +1 -0
- package/dist/components/cash-waterline/style-forms.js +1 -0
- package/dist/components/cash-waterline/style.js +1 -0
- package/dist/components/charts/bar.js +1 -0
- package/dist/components/charts/combo.js +1 -0
- package/dist/components/charts/coords.js +1 -0
- package/dist/components/charts/dispatch.js +1 -0
- package/dist/components/charts/donut.js +1 -0
- package/dist/components/charts/gauge.js +1 -0
- package/dist/components/charts/helpers.js +1 -0
- package/dist/components/charts/index.js +1 -0
- package/dist/components/charts/line.js +1 -0
- package/dist/components/charts/options.js +1 -0
- package/dist/components/charts/progress.js +1 -0
- package/dist/components/charts/scatter.js +1 -0
- package/dist/components/charts/shared.js +1 -0
- package/dist/components/charts/sparkline.js +1 -0
- package/dist/components/charts/style.d.ts.map +1 -1
- package/dist/components/charts/style.js +5 -1
- package/dist/components/charts/style.js.map +1 -1
- package/dist/components/charts/svg.js +1 -0
- package/dist/components/command-palette/attrs.js +1 -0
- package/dist/components/command-palette/index.js +1 -0
- package/dist/components/command-palette/model.js +1 -0
- package/dist/components/command-palette/render.js +1 -0
- package/dist/components/command-palette/runtime.js +1 -0
- package/dist/components/command-palette/style.js +1 -0
- package/dist/components/compare-columns/attrs.js +1 -0
- package/dist/components/compare-columns/index.js +1 -0
- package/dist/components/compare-columns/model.js +1 -0
- package/dist/components/compare-columns/render.js +1 -0
- package/dist/components/compare-columns/style.js +1 -0
- package/dist/components/confirm-strip/attrs.js +1 -0
- package/dist/components/confirm-strip/index.js +1 -0
- package/dist/components/confirm-strip/model.js +1 -0
- package/dist/components/confirm-strip/render.js +1 -0
- package/dist/components/confirm-strip/runtime.js +1 -0
- package/dist/components/confirm-strip/style.js +1 -0
- package/dist/components/controls/action-bar.js +1 -0
- package/dist/components/controls/bind.js +1 -0
- package/dist/components/controls/copy.js +1 -0
- package/dist/components/controls/helpers-meta.js +1 -0
- package/dist/components/controls/helpers.js +1 -0
- package/dist/components/controls/index.js +1 -0
- package/dist/components/controls/shared.js +1 -0
- package/dist/components/controls/status.js +1 -0
- package/dist/components/controls/toast.js +1 -0
- package/dist/components/date-range/attrs.d.ts +11 -2
- package/dist/components/date-range/attrs.d.ts.map +1 -1
- package/dist/components/date-range/attrs.js +12 -2
- package/dist/components/date-range/attrs.js.map +1 -1
- package/dist/components/date-range/index.js +1 -0
- package/dist/components/date-range/model.js +1 -0
- package/dist/components/date-range/render.js +1 -0
- package/dist/components/date-range/runtime.js +1 -0
- package/dist/components/date-range/style-calendar.d.ts.map +1 -1
- package/dist/components/date-range/style-calendar.js +24 -6
- package/dist/components/date-range/style-calendar.js.map +1 -1
- package/dist/components/date-range/style.d.ts.map +1 -1
- package/dist/components/date-range/style.js +8 -5
- package/dist/components/date-range/style.js.map +1 -1
- package/dist/components/dialog/attrs.js +1 -0
- package/dist/components/dialog/index.js +1 -0
- package/dist/components/dialog/model.js +1 -0
- package/dist/components/dialog/render.js +1 -0
- package/dist/components/dialog/runtime.js +1 -0
- package/dist/components/dialog/style.js +1 -0
- package/dist/components/drag-sort/attrs.d.ts +182 -0
- package/dist/components/drag-sort/attrs.d.ts.map +1 -0
- package/dist/components/drag-sort/attrs.js +204 -0
- package/dist/components/drag-sort/attrs.js.map +1 -0
- package/dist/components/drag-sort/index.d.ts +22 -0
- package/dist/components/drag-sort/index.d.ts.map +1 -0
- package/dist/components/drag-sort/index.js +21 -0
- package/dist/components/drag-sort/index.js.map +1 -0
- package/dist/components/drag-sort/model.d.ts +46 -0
- package/dist/components/drag-sort/model.d.ts.map +1 -0
- package/dist/components/drag-sort/model.js +200 -0
- package/dist/components/drag-sort/model.js.map +1 -0
- package/dist/components/drag-sort/render.d.ts +3 -0
- package/dist/components/drag-sort/render.d.ts.map +1 -0
- package/dist/components/drag-sort/render.js +182 -0
- package/dist/components/drag-sort/render.js.map +1 -0
- package/dist/components/drag-sort/runtime-buttons.d.ts +27 -0
- package/dist/components/drag-sort/runtime-buttons.d.ts.map +1 -0
- package/dist/components/drag-sort/runtime-buttons.js +139 -0
- package/dist/components/drag-sort/runtime-buttons.js.map +1 -0
- package/dist/components/drag-sort/runtime-lift.d.ts +16 -0
- package/dist/components/drag-sort/runtime-lift.d.ts.map +1 -0
- package/dist/components/drag-sort/runtime-lift.js +74 -0
- package/dist/components/drag-sort/runtime-lift.js.map +1 -0
- package/dist/components/drag-sort/runtime-prelude.d.ts +18 -0
- package/dist/components/drag-sort/runtime-prelude.d.ts.map +1 -0
- package/dist/components/drag-sort/runtime-prelude.js +168 -0
- package/dist/components/drag-sort/runtime-prelude.js.map +1 -0
- package/dist/components/drag-sort/runtime-text.d.ts +58 -0
- package/dist/components/drag-sort/runtime-text.d.ts.map +1 -0
- package/dist/components/drag-sort/runtime-text.js +81 -0
- package/dist/components/drag-sort/runtime-text.js.map +1 -0
- package/dist/components/drag-sort/runtime.d.ts +9 -0
- package/dist/components/drag-sort/runtime.d.ts.map +1 -0
- package/dist/components/drag-sort/runtime.js +181 -0
- package/dist/components/drag-sort/runtime.js.map +1 -0
- package/dist/components/drag-sort/style-forms.d.ts +5 -0
- package/dist/components/drag-sort/style-forms.d.ts.map +1 -0
- package/dist/components/drag-sort/style-forms.js +135 -0
- package/dist/components/drag-sort/style-forms.js.map +1 -0
- package/dist/components/drag-sort/style.d.ts +5 -0
- package/dist/components/drag-sort/style.d.ts.map +1 -0
- package/dist/components/drag-sort/style.js +304 -0
- package/dist/components/drag-sort/style.js.map +1 -0
- package/dist/components/drawer-sheet/attrs.js +1 -0
- package/dist/components/drawer-sheet/index.js +1 -0
- package/dist/components/drawer-sheet/model.js +1 -0
- package/dist/components/drawer-sheet/render.js +1 -0
- package/dist/components/drawer-sheet/runtime.js +1 -0
- package/dist/components/drawer-sheet/style.js +1 -0
- package/dist/components/due-row/attrs.js +1 -0
- package/dist/components/due-row/index.js +1 -0
- package/dist/components/due-row/model.js +1 -0
- package/dist/components/due-row/render.js +1 -0
- package/dist/components/due-row/runtime.js +1 -0
- package/dist/components/due-row/style.js +1 -0
- package/dist/components/editable-value/attrs.d.ts +2 -2
- package/dist/components/editable-value/attrs.d.ts.map +1 -1
- package/dist/components/editable-value/attrs.js +3 -2
- package/dist/components/editable-value/attrs.js.map +1 -1
- package/dist/components/editable-value/index.js +1 -0
- package/dist/components/editable-value/render.d.ts.map +1 -1
- package/dist/components/editable-value/render.js +40 -0
- package/dist/components/editable-value/render.js.map +1 -1
- package/dist/components/editable-value/runtime.d.ts.map +1 -1
- package/dist/components/editable-value/runtime.js +15 -5
- package/dist/components/editable-value/runtime.js.map +1 -1
- package/dist/components/editable-value/style.js +1 -0
- package/dist/components/entry-rows/index.js +1 -0
- package/dist/components/entry-rows/render.js +1 -0
- package/dist/components/entry-rows/style.js +1 -0
- package/dist/components/filter-chips/attrs.js +1 -0
- package/dist/components/filter-chips/index.js +1 -0
- package/dist/components/filter-chips/model.js +1 -0
- package/dist/components/filter-chips/render.js +1 -0
- package/dist/components/filter-chips/runtime.js +1 -0
- package/dist/components/filter-chips/style.js +1 -0
- package/dist/components/flow-ribbon/fields.d.ts +8 -1
- package/dist/components/flow-ribbon/fields.d.ts.map +1 -1
- package/dist/components/flow-ribbon/fields.js +39 -3
- package/dist/components/flow-ribbon/fields.js.map +1 -1
- package/dist/components/flow-ribbon/forms-rails.d.ts +26 -0
- package/dist/components/flow-ribbon/forms-rails.d.ts.map +1 -0
- package/dist/components/flow-ribbon/forms-rails.js +63 -0
- package/dist/components/flow-ribbon/forms-rails.js.map +1 -0
- package/dist/components/flow-ribbon/forms.d.ts +6 -25
- package/dist/components/flow-ribbon/forms.d.ts.map +1 -1
- package/dist/components/flow-ribbon/forms.js +11 -49
- package/dist/components/flow-ribbon/forms.js.map +1 -1
- package/dist/components/flow-ribbon/model.d.ts.map +1 -1
- package/dist/components/flow-ribbon/model.js +2 -1
- package/dist/components/flow-ribbon/model.js.map +1 -1
- package/dist/components/gantt-timeline/attrs.js +1 -0
- package/dist/components/gantt-timeline/index.js +1 -0
- package/dist/components/gantt-timeline/layout.js +1 -0
- package/dist/components/gantt-timeline/model.d.ts.map +1 -1
- package/dist/components/gantt-timeline/model.js +51 -0
- package/dist/components/gantt-timeline/model.js.map +1 -1
- package/dist/components/gantt-timeline/render.js +1 -0
- package/dist/components/gantt-timeline/scale.js +1 -0
- package/dist/components/gantt-timeline/style-marks.js +1 -0
- package/dist/components/gantt-timeline/style.js +1 -0
- package/dist/components/gap-band/attrs.d.ts +77 -0
- package/dist/components/gap-band/attrs.d.ts.map +1 -0
- package/dist/components/gap-band/attrs.js +113 -0
- package/dist/components/gap-band/attrs.js.map +1 -0
- package/dist/components/gap-band/forms.d.ts +117 -0
- package/dist/components/gap-band/forms.d.ts.map +1 -0
- package/dist/components/gap-band/forms.js +172 -0
- package/dist/components/gap-band/forms.js.map +1 -0
- package/dist/components/gap-band/index.d.ts +16 -0
- package/dist/components/gap-band/index.d.ts.map +1 -0
- package/dist/components/gap-band/index.js +15 -0
- package/dist/components/gap-band/index.js.map +1 -0
- package/dist/components/gap-band/model.d.ts +5 -0
- package/dist/components/gap-band/model.d.ts.map +1 -0
- package/dist/components/gap-band/model.js +116 -0
- package/dist/components/gap-band/model.js.map +1 -0
- package/dist/components/gap-band/render.d.ts +3 -0
- package/dist/components/gap-band/render.d.ts.map +1 -0
- package/dist/components/gap-band/render.js +142 -0
- package/dist/components/gap-band/render.js.map +1 -0
- package/dist/components/gap-band/scale.d.ts +45 -0
- package/dist/components/gap-band/scale.d.ts.map +1 -0
- package/dist/components/gap-band/scale.js +163 -0
- package/dist/components/gap-band/scale.js.map +1 -0
- package/dist/components/gap-band/style-forms.d.ts +10 -0
- package/dist/components/gap-band/style-forms.d.ts.map +1 -0
- package/dist/components/gap-band/style-forms.js +244 -0
- package/dist/components/gap-band/style-forms.js.map +1 -0
- package/dist/components/gap-band/style.d.ts +9 -0
- package/dist/components/gap-band/style.d.ts.map +1 -0
- package/dist/components/gap-band/style.js +334 -0
- package/dist/components/gap-band/style.js.map +1 -0
- package/dist/components/goal-stairs/attrs.js +1 -0
- package/dist/components/goal-stairs/index.js +1 -0
- package/dist/components/goal-stairs/model.d.ts.map +1 -1
- package/dist/components/goal-stairs/model.js +31 -0
- package/dist/components/goal-stairs/model.js.map +1 -1
- package/dist/components/goal-stairs/render.js +1 -0
- package/dist/components/goal-stairs/style.js +1 -0
- package/dist/components/heat-grid/attrs.js +1 -0
- package/dist/components/heat-grid/index.js +1 -0
- package/dist/components/heat-grid/model.js +1 -0
- package/dist/components/heat-grid/render.js +1 -0
- package/dist/components/heat-grid/style.js +1 -0
- package/dist/components/help/index.js +1 -0
- package/dist/components/help/render.d.ts.map +1 -1
- package/dist/components/help/render.js +12 -2
- package/dist/components/help/render.js.map +1 -1
- package/dist/components/help/schema.js +1 -0
- package/dist/components/help/shared.js +1 -0
- package/dist/components/help/shell.js +1 -0
- package/dist/components/help/template.js +1 -0
- package/dist/components/hour-band/attrs.js +1 -0
- package/dist/components/hour-band/index.js +1 -0
- package/dist/components/hour-band/model.js +1 -0
- package/dist/components/hour-band/render.js +1 -0
- package/dist/components/hour-band/style.js +1 -0
- package/dist/components/index.d.ts +7 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +53 -0
- package/dist/components/index.js.map +1 -1
- package/dist/components/invoice-lines/attrs.js +1 -0
- package/dist/components/invoice-lines/index.js +1 -0
- package/dist/components/invoice-lines/model.js +1 -0
- package/dist/components/invoice-lines/render.js +1 -0
- package/dist/components/invoice-lines/style.js +1 -0
- package/dist/components/kanban-columns/attrs.d.ts +213 -0
- package/dist/components/kanban-columns/attrs.d.ts.map +1 -0
- package/dist/components/kanban-columns/attrs.js +242 -0
- package/dist/components/kanban-columns/attrs.js.map +1 -0
- package/dist/components/kanban-columns/index.d.ts +21 -0
- package/dist/components/kanban-columns/index.d.ts.map +1 -0
- package/dist/components/kanban-columns/index.js +20 -0
- package/dist/components/kanban-columns/index.js.map +1 -0
- package/dist/components/kanban-columns/model.d.ts +63 -0
- package/dist/components/kanban-columns/model.d.ts.map +1 -0
- package/dist/components/kanban-columns/model.js +251 -0
- package/dist/components/kanban-columns/model.js.map +1 -0
- package/dist/components/kanban-columns/render.d.ts +3 -0
- package/dist/components/kanban-columns/render.d.ts.map +1 -0
- package/dist/components/kanban-columns/render.js +209 -0
- package/dist/components/kanban-columns/render.js.map +1 -0
- package/dist/components/kanban-columns/runtime.d.ts +3 -0
- package/dist/components/kanban-columns/runtime.d.ts.map +1 -0
- package/dist/components/kanban-columns/runtime.js +228 -0
- package/dist/components/kanban-columns/runtime.js.map +1 -0
- package/dist/components/kanban-columns/style-grouped.d.ts +5 -0
- package/dist/components/kanban-columns/style-grouped.d.ts.map +1 -0
- package/dist/components/kanban-columns/style-grouped.js +145 -0
- package/dist/components/kanban-columns/style-grouped.js.map +1 -0
- package/dist/components/kanban-columns/style-narrow.d.ts +5 -0
- package/dist/components/kanban-columns/style-narrow.d.ts.map +1 -0
- package/dist/components/kanban-columns/style-narrow.js +49 -0
- package/dist/components/kanban-columns/style-narrow.js.map +1 -0
- package/dist/components/kanban-columns/style.d.ts +5 -0
- package/dist/components/kanban-columns/style.d.ts.map +1 -0
- package/dist/components/kanban-columns/style.js +328 -0
- package/dist/components/kanban-columns/style.js.map +1 -0
- package/dist/components/key-value-list/attrs.js +1 -0
- package/dist/components/key-value-list/index.js +1 -0
- package/dist/components/key-value-list/model.js +1 -0
- package/dist/components/key-value-list/render.js +1 -0
- package/dist/components/key-value-list/style.js +1 -0
- package/dist/components/ledger-rows/index.js +1 -0
- package/dist/components/ledger-rows/render.js +1 -0
- package/dist/components/ledger-rows/style.js +1 -0
- package/dist/components/multi-checks/attrs.js +1 -0
- package/dist/components/multi-checks/index.js +1 -0
- package/dist/components/multi-checks/model.js +1 -0
- package/dist/components/multi-checks/render.js +1 -0
- package/dist/components/multi-checks/runtime.js +1 -0
- package/dist/components/multi-checks/style.js +1 -0
- package/dist/components/note-block/attrs.js +1 -0
- package/dist/components/note-block/index.js +1 -0
- package/dist/components/note-block/model.js +1 -0
- package/dist/components/note-block/render.js +1 -0
- package/dist/components/note-block/style.js +1 -0
- package/dist/components/number-stepper/attrs.js +1 -0
- package/dist/components/number-stepper/index.js +1 -0
- package/dist/components/number-stepper/model.js +1 -0
- package/dist/components/number-stepper/render.js +1 -0
- package/dist/components/number-stepper/runtime.js +1 -0
- package/dist/components/number-stepper/style.js +1 -0
- package/dist/components/page/fact-strip.js +1 -0
- package/dist/components/page/index.js +1 -0
- package/dist/components/page/media.js +1 -0
- package/dist/components/page/shared.js +1 -0
- package/dist/components/page/style.js +1 -0
- package/dist/components/page/timeline.js +1 -0
- package/dist/components/page-bars/index.js +1 -0
- package/dist/components/page-bars/style.js +1 -0
- package/dist/components/page-head/attrs.js +1 -0
- package/dist/components/page-head/index.js +1 -0
- package/dist/components/page-head/model.js +1 -0
- package/dist/components/page-head/render.js +1 -0
- package/dist/components/page-head/style.js +1 -0
- package/dist/components/page-nav/index.js +1 -0
- package/dist/components/page-nav/style.js +1 -0
- package/dist/components/page-ui/index.js +1 -0
- package/dist/components/page-ui/toast.js +1 -0
- package/dist/components/photo-compare/attrs.js +1 -0
- package/dist/components/photo-compare/index.js +1 -0
- package/dist/components/photo-compare/model.js +1 -0
- package/dist/components/photo-compare/render.js +1 -0
- package/dist/components/photo-compare/runtime.js +1 -0
- package/dist/components/photo-compare/style.js +1 -0
- package/dist/components/photo-grid/attrs.js +1 -0
- package/dist/components/photo-grid/index.js +1 -0
- package/dist/components/photo-grid/model.js +1 -0
- package/dist/components/photo-grid/render.js +1 -0
- package/dist/components/photo-grid/style.js +1 -0
- package/dist/components/popover-menu/attrs.js +1 -0
- package/dist/components/popover-menu/index.js +1 -0
- package/dist/components/popover-menu/model.js +1 -0
- package/dist/components/popover-menu/render.js +1 -0
- package/dist/components/popover-menu/runtime.js +1 -0
- package/dist/components/popover-menu/style.js +1 -0
- package/dist/components/portion-gauge/attrs.d.ts +103 -0
- package/dist/components/portion-gauge/attrs.d.ts.map +1 -0
- package/dist/components/portion-gauge/attrs.js +108 -0
- package/dist/components/portion-gauge/attrs.js.map +1 -0
- package/dist/components/portion-gauge/fields.d.ts +26 -0
- package/dist/components/portion-gauge/fields.d.ts.map +1 -0
- package/dist/components/portion-gauge/fields.js +172 -0
- package/dist/components/portion-gauge/fields.js.map +1 -0
- package/dist/components/portion-gauge/index.d.ts +18 -0
- package/dist/components/portion-gauge/index.d.ts.map +1 -0
- package/dist/components/portion-gauge/index.js +16 -0
- package/dist/components/portion-gauge/index.js.map +1 -0
- package/dist/components/portion-gauge/model.d.ts +76 -0
- package/dist/components/portion-gauge/model.d.ts.map +1 -0
- package/dist/components/portion-gauge/model.js +127 -0
- package/dist/components/portion-gauge/model.js.map +1 -0
- package/dist/components/portion-gauge/render.d.ts +3 -0
- package/dist/components/portion-gauge/render.d.ts.map +1 -0
- package/dist/components/portion-gauge/render.js +158 -0
- package/dist/components/portion-gauge/render.js.map +1 -0
- package/dist/components/portion-gauge/style-gauge.d.ts +7 -0
- package/dist/components/portion-gauge/style-gauge.d.ts.map +1 -0
- package/dist/components/portion-gauge/style-gauge.js +154 -0
- package/dist/components/portion-gauge/style-gauge.js.map +1 -0
- package/dist/components/portion-gauge/style.d.ts +10 -0
- package/dist/components/portion-gauge/style.d.ts.map +1 -0
- package/dist/components/portion-gauge/style.js +293 -0
- package/dist/components/portion-gauge/style.js.map +1 -0
- package/dist/components/progress-list/attrs.js +1 -0
- package/dist/components/progress-list/index.js +1 -0
- package/dist/components/progress-list/model.js +1 -0
- package/dist/components/progress-list/render.js +1 -0
- package/dist/components/progress-list/style.js +1 -0
- package/dist/components/progress-ring/attrs.js +1 -0
- package/dist/components/progress-ring/index.js +1 -0
- package/dist/components/progress-ring/model.js +1 -0
- package/dist/components/progress-ring/render.js +1 -0
- package/dist/components/progress-ring/style.js +1 -0
- package/dist/components/punch-strip/index.js +1 -0
- package/dist/components/punch-strip/render.js +1 -0
- package/dist/components/punch-strip/style.js +1 -0
- package/dist/components/quick-capture/attrs.d.ts +181 -0
- package/dist/components/quick-capture/attrs.d.ts.map +1 -0
- package/dist/components/quick-capture/attrs.js +203 -0
- package/dist/components/quick-capture/attrs.js.map +1 -0
- package/dist/components/quick-capture/index.d.ts +23 -0
- package/dist/components/quick-capture/index.d.ts.map +1 -0
- package/dist/components/quick-capture/index.js +22 -0
- package/dist/components/quick-capture/index.js.map +1 -0
- package/dist/components/quick-capture/model.d.ts +34 -0
- package/dist/components/quick-capture/model.d.ts.map +1 -0
- package/dist/components/quick-capture/model.js +183 -0
- package/dist/components/quick-capture/model.js.map +1 -0
- package/dist/components/quick-capture/render.d.ts +3 -0
- package/dist/components/quick-capture/render.d.ts.map +1 -0
- package/dist/components/quick-capture/render.js +143 -0
- package/dist/components/quick-capture/render.js.map +1 -0
- package/dist/components/quick-capture/runtime.d.ts +3 -0
- package/dist/components/quick-capture/runtime.d.ts.map +1 -0
- package/dist/components/quick-capture/runtime.js +184 -0
- package/dist/components/quick-capture/runtime.js.map +1 -0
- package/dist/components/quick-capture/style-cells.d.ts +5 -0
- package/dist/components/quick-capture/style-cells.d.ts.map +1 -0
- package/dist/components/quick-capture/style-cells.js +108 -0
- package/dist/components/quick-capture/style-cells.js.map +1 -0
- package/dist/components/quick-capture/style-choices.d.ts +5 -0
- package/dist/components/quick-capture/style-choices.d.ts.map +1 -0
- package/dist/components/quick-capture/style-choices.js +132 -0
- package/dist/components/quick-capture/style-choices.js.map +1 -0
- package/dist/components/quick-capture/style-drawer.d.ts +5 -0
- package/dist/components/quick-capture/style-drawer.d.ts.map +1 -0
- package/dist/components/quick-capture/style-drawer.js +88 -0
- package/dist/components/quick-capture/style-drawer.js.map +1 -0
- package/dist/components/quick-capture/style.d.ts +5 -0
- package/dist/components/quick-capture/style.d.ts.map +1 -0
- package/dist/components/quick-capture/style.js +177 -0
- package/dist/components/quick-capture/style.js.map +1 -0
- package/dist/components/radar-profile/attrs.js +1 -1
- package/dist/components/radar-profile/attrs.js.map +1 -1
- package/dist/components/radar-profile/fields.d.ts +149 -0
- package/dist/components/radar-profile/fields.d.ts.map +1 -0
- package/dist/components/radar-profile/fields.js +77 -0
- package/dist/components/radar-profile/fields.js.map +1 -0
- package/dist/components/radar-profile/forms.d.ts +2 -140
- package/dist/components/radar-profile/forms.d.ts.map +1 -1
- package/dist/components/radar-profile/forms.js +50 -84
- package/dist/components/radar-profile/forms.js.map +1 -1
- package/dist/components/radar-profile/model.d.ts +2 -2
- package/dist/components/radar-profile/model.d.ts.map +1 -1
- package/dist/components/radar-profile/model.js +22 -2
- package/dist/components/radar-profile/model.js.map +1 -1
- package/dist/components/radar-profile/render.d.ts.map +1 -1
- package/dist/components/radar-profile/render.js +8 -5
- package/dist/components/radar-profile/render.js.map +1 -1
- package/dist/components/radar-profile/scale.d.ts +0 -2
- package/dist/components/radar-profile/scale.d.ts.map +1 -1
- package/dist/components/radar-profile/scale.js +0 -3
- package/dist/components/radar-profile/scale.js.map +1 -1
- package/dist/components/radar-profile/style-readouts.d.ts +5 -0
- package/dist/components/radar-profile/style-readouts.d.ts.map +1 -0
- package/dist/components/radar-profile/style-readouts.js +257 -0
- package/dist/components/radar-profile/style-readouts.js.map +1 -0
- package/dist/components/radar-profile/style.d.ts.map +1 -1
- package/dist/components/radar-profile/style.js +19 -232
- package/dist/components/radar-profile/style.js.map +1 -1
- package/dist/components/radio-cards/attrs.js +1 -0
- package/dist/components/radio-cards/index.js +1 -0
- package/dist/components/radio-cards/model.js +1 -0
- package/dist/components/radio-cards/render.js +1 -0
- package/dist/components/radio-cards/runtime.js +1 -0
- package/dist/components/radio-cards/style.js +1 -0
- package/dist/components/range-bar/attrs.js +1 -0
- package/dist/components/range-bar/index.js +1 -0
- package/dist/components/range-bar/model.js +1 -0
- package/dist/components/range-bar/render.js +1 -0
- package/dist/components/range-bar/style.js +1 -0
- package/dist/components/rank-list/attrs.js +1 -0
- package/dist/components/rank-list/index.js +1 -0
- package/dist/components/rank-list/model.js +1 -0
- package/dist/components/rank-list/render.js +1 -0
- package/dist/components/rank-list/style.js +1 -0
- package/dist/components/rating-row/attrs.js +1 -0
- package/dist/components/rating-row/index.js +1 -0
- package/dist/components/rating-row/model.js +1 -0
- package/dist/components/rating-row/render.js +1 -0
- package/dist/components/rating-row/runtime.js +1 -0
- package/dist/components/rating-row/style.js +1 -0
- package/dist/components/relation-picker/attrs.d.ts +196 -0
- package/dist/components/relation-picker/attrs.d.ts.map +1 -0
- package/dist/components/relation-picker/attrs.js +240 -0
- package/dist/components/relation-picker/attrs.js.map +1 -0
- package/dist/components/relation-picker/index.d.ts +20 -0
- package/dist/components/relation-picker/index.d.ts.map +1 -0
- package/dist/components/relation-picker/index.js +19 -0
- package/dist/components/relation-picker/index.js.map +1 -0
- package/dist/components/relation-picker/model.d.ts +85 -0
- package/dist/components/relation-picker/model.d.ts.map +1 -0
- package/dist/components/relation-picker/model.js +189 -0
- package/dist/components/relation-picker/model.js.map +1 -0
- package/dist/components/relation-picker/render.d.ts +3 -0
- package/dist/components/relation-picker/render.d.ts.map +1 -0
- package/dist/components/relation-picker/render.js +244 -0
- package/dist/components/relation-picker/render.js.map +1 -0
- package/dist/components/relation-picker/runtime.d.ts +3 -0
- package/dist/components/relation-picker/runtime.d.ts.map +1 -0
- package/dist/components/relation-picker/runtime.js +260 -0
- package/dist/components/relation-picker/runtime.js.map +1 -0
- package/dist/components/relation-picker/style-forms.d.ts +5 -0
- package/dist/components/relation-picker/style-forms.d.ts.map +1 -0
- package/dist/components/relation-picker/style-forms.js +190 -0
- package/dist/components/relation-picker/style-forms.js.map +1 -0
- package/dist/components/relation-picker/style-list.d.ts +5 -0
- package/dist/components/relation-picker/style-list.d.ts.map +1 -0
- package/dist/components/relation-picker/style-list.js +146 -0
- package/dist/components/relation-picker/style-list.js.map +1 -0
- package/dist/components/relation-picker/style.d.ts +5 -0
- package/dist/components/relation-picker/style.d.ts.map +1 -0
- package/dist/components/relation-picker/style.js +308 -0
- package/dist/components/relation-picker/style.js.map +1 -0
- package/dist/components/reminder-setter/attrs.d.ts +240 -0
- package/dist/components/reminder-setter/attrs.d.ts.map +1 -0
- package/dist/components/reminder-setter/attrs.js +268 -0
- package/dist/components/reminder-setter/attrs.js.map +1 -0
- package/dist/components/reminder-setter/index.d.ts +22 -0
- package/dist/components/reminder-setter/index.d.ts.map +1 -0
- package/dist/components/reminder-setter/index.js +21 -0
- package/dist/components/reminder-setter/index.js.map +1 -0
- package/dist/components/reminder-setter/model-track.d.ts +29 -0
- package/dist/components/reminder-setter/model-track.d.ts.map +1 -0
- package/dist/components/reminder-setter/model-track.js +110 -0
- package/dist/components/reminder-setter/model-track.js.map +1 -0
- package/dist/components/reminder-setter/model.d.ts +51 -0
- package/dist/components/reminder-setter/model.d.ts.map +1 -0
- package/dist/components/reminder-setter/model.js +110 -0
- package/dist/components/reminder-setter/model.js.map +1 -0
- package/dist/components/reminder-setter/render.d.ts +3 -0
- package/dist/components/reminder-setter/render.d.ts.map +1 -0
- package/dist/components/reminder-setter/render.js +221 -0
- package/dist/components/reminder-setter/render.js.map +1 -0
- package/dist/components/reminder-setter/rules.d.ts +34 -0
- package/dist/components/reminder-setter/rules.d.ts.map +1 -0
- package/dist/components/reminder-setter/rules.js +121 -0
- package/dist/components/reminder-setter/rules.js.map +1 -0
- package/dist/components/reminder-setter/runtime.d.ts +3 -0
- package/dist/components/reminder-setter/runtime.d.ts.map +1 -0
- package/dist/components/reminder-setter/runtime.js +264 -0
- package/dist/components/reminder-setter/runtime.js.map +1 -0
- package/dist/components/reminder-setter/style-track.d.ts +3 -0
- package/dist/components/reminder-setter/style-track.d.ts.map +1 -0
- package/dist/components/reminder-setter/style-track.js +189 -0
- package/dist/components/reminder-setter/style-track.js.map +1 -0
- package/dist/components/reminder-setter/style.d.ts +5 -0
- package/dist/components/reminder-setter/style.d.ts.map +1 -0
- package/dist/components/reminder-setter/style.js +306 -0
- package/dist/components/reminder-setter/style.js.map +1 -0
- package/dist/components/result-row/attrs.js +1 -0
- package/dist/components/result-row/index.js +1 -0
- package/dist/components/result-row/model.js +1 -0
- package/dist/components/result-row/render.js +1 -0
- package/dist/components/result-row/style.js +1 -0
- package/dist/components/scale-bar/index.js +1 -0
- package/dist/components/scale-bar/render.js +1 -0
- package/dist/components/scale-bar/style.js +1 -0
- package/dist/components/scatter-fit/attrs.js +1 -0
- package/dist/components/scatter-fit/forms.js +1 -0
- package/dist/components/scatter-fit/index.js +1 -0
- package/dist/components/scatter-fit/model.d.ts.map +1 -1
- package/dist/components/scatter-fit/model.js +68 -18
- package/dist/components/scatter-fit/model.js.map +1 -1
- package/dist/components/scatter-fit/render.js +1 -0
- package/dist/components/scatter-fit/scale.js +1 -0
- package/dist/components/scatter-fit/style-forms.js +1 -0
- package/dist/components/scatter-fit/style.js +1 -0
- package/dist/components/search-field/attrs.js +1 -0
- package/dist/components/search-field/index.js +1 -0
- package/dist/components/search-field/model.js +1 -0
- package/dist/components/search-field/render.js +1 -0
- package/dist/components/search-field/runtime.js +1 -0
- package/dist/components/search-field/style.js +1 -0
- package/dist/components/section-head/attrs.js +1 -0
- package/dist/components/section-head/index.js +1 -0
- package/dist/components/section-head/model.js +1 -0
- package/dist/components/section-head/render.js +1 -0
- package/dist/components/section-head/style.js +1 -0
- package/dist/components/shared/escape.js +1 -0
- package/dist/components/shared/typography.js +1 -0
- package/dist/components/shared/validate.js +1 -0
- package/dist/components/sheet-frame/index.js +1 -0
- package/dist/components/sheet-frame/render.js +1 -0
- package/dist/components/sheet-frame/style.js +1 -0
- package/dist/components/skeleton/attrs.js +1 -0
- package/dist/components/skeleton/index.js +1 -0
- package/dist/components/skeleton/model.js +1 -0
- package/dist/components/skeleton/render.js +1 -0
- package/dist/components/skeleton/style.js +1 -0
- package/dist/components/skin/contract.d.ts +1 -1
- package/dist/components/skin/contract.js +1 -0
- package/dist/components/skin/index.js +1 -0
- package/dist/components/skin/skins/broadsheet.js +1 -0
- package/dist/components/skin/skins/ink.js +1 -0
- package/dist/components/skin/skins/neutral.js +1 -0
- package/dist/components/skin/skins/paper.js +1 -0
- package/dist/components/slider-row/attrs.js +1 -0
- package/dist/components/slider-row/index.js +1 -0
- package/dist/components/slider-row/model.js +1 -0
- package/dist/components/slider-row/render.js +1 -0
- package/dist/components/slider-row/runtime.js +1 -0
- package/dist/components/slider-row/style.js +1 -0
- package/dist/components/small-multiples/attrs.js +1 -0
- package/dist/components/small-multiples/index.js +1 -0
- package/dist/components/small-multiples/model.d.ts.map +1 -1
- package/dist/components/small-multiples/model.js +43 -0
- package/dist/components/small-multiples/model.js.map +1 -1
- package/dist/components/small-multiples/render.js +1 -0
- package/dist/components/small-multiples/scale.js +1 -0
- package/dist/components/small-multiples/style.js +1 -0
- package/dist/components/sort-toggle/attrs.js +1 -0
- package/dist/components/sort-toggle/index.js +1 -0
- package/dist/components/sort-toggle/model.js +1 -0
- package/dist/components/sort-toggle/render.js +1 -0
- package/dist/components/sort-toggle/runtime.js +1 -0
- package/dist/components/sort-toggle/style.js +1 -0
- package/dist/components/spread-dist/attrs.d.ts +56 -12
- package/dist/components/spread-dist/attrs.d.ts.map +1 -1
- package/dist/components/spread-dist/attrs.js +72 -12
- package/dist/components/spread-dist/attrs.js.map +1 -1
- package/dist/components/spread-dist/forms.d.ts +53 -10
- package/dist/components/spread-dist/forms.d.ts.map +1 -1
- package/dist/components/spread-dist/forms.js +104 -7
- package/dist/components/spread-dist/forms.js.map +1 -1
- package/dist/components/spread-dist/index.d.ts +5 -4
- package/dist/components/spread-dist/index.d.ts.map +1 -1
- package/dist/components/spread-dist/index.js +5 -3
- package/dist/components/spread-dist/index.js.map +1 -1
- package/dist/components/spread-dist/model.d.ts +1 -1
- package/dist/components/spread-dist/model.d.ts.map +1 -1
- package/dist/components/spread-dist/model.js +154 -4
- package/dist/components/spread-dist/model.js.map +1 -1
- package/dist/components/spread-dist/render.d.ts.map +1 -1
- package/dist/components/spread-dist/render.js +79 -10
- package/dist/components/spread-dist/render.js.map +1 -1
- package/dist/components/spread-dist/scale.d.ts +15 -3
- package/dist/components/spread-dist/scale.d.ts.map +1 -1
- package/dist/components/spread-dist/scale.js +50 -15
- package/dist/components/spread-dist/scale.js.map +1 -1
- package/dist/components/spread-dist/style-box.d.ts +5 -0
- package/dist/components/spread-dist/style-box.d.ts.map +1 -0
- package/dist/components/spread-dist/style-box.js +252 -0
- package/dist/components/spread-dist/style-box.js.map +1 -0
- package/dist/components/spread-dist/style-quantile.d.ts +5 -0
- package/dist/components/spread-dist/style-quantile.d.ts.map +1 -0
- package/dist/components/spread-dist/style-quantile.js +97 -0
- package/dist/components/spread-dist/style-quantile.js.map +1 -0
- package/dist/components/spread-dist/style.d.ts.map +1 -1
- package/dist/components/spread-dist/style.js +28 -87
- package/dist/components/spread-dist/style.js.map +1 -1
- package/dist/components/stacked-bar/attrs.js +1 -0
- package/dist/components/stacked-bar/index.js +1 -0
- package/dist/components/stacked-bar/model.js +1 -0
- package/dist/components/stacked-bar/render.js +1 -0
- package/dist/components/stacked-bar/style.js +1 -0
- package/dist/components/stat-inline/attrs.js +1 -0
- package/dist/components/stat-inline/index.js +1 -0
- package/dist/components/stat-inline/model.js +1 -0
- package/dist/components/stat-inline/render.js +1 -0
- package/dist/components/stat-inline/style.js +1 -0
- package/dist/components/status-row/attrs.js +1 -0
- package/dist/components/status-row/index.js +1 -0
- package/dist/components/status-row/model.js +1 -0
- package/dist/components/status-row/render.js +1 -0
- package/dist/components/status-row/style.js +1 -0
- package/dist/components/step-flow/attrs.js +1 -0
- package/dist/components/step-flow/index.js +1 -0
- package/dist/components/step-flow/model.js +1 -0
- package/dist/components/step-flow/render.js +1 -0
- package/dist/components/step-flow/style.js +1 -0
- package/dist/components/streak-badge/attrs.js +1 -0
- package/dist/components/streak-badge/index.js +1 -0
- package/dist/components/streak-badge/model.js +1 -0
- package/dist/components/streak-badge/render.js +1 -0
- package/dist/components/streak-badge/style.js +1 -0
- package/dist/components/style/action-bar.js +1 -0
- package/dist/components/style/copy-button.js +1 -0
- package/dist/components/style/empty-state.js +1 -0
- package/dist/components/style/error-receipt.js +1 -0
- package/dist/components/style/help-shell.js +1 -0
- package/dist/components/style/index.js +1 -0
- package/dist/components/style/parts.js +1 -0
- package/dist/components/style/sheet.js +1 -0
- package/dist/components/style/status-badge.js +1 -0
- package/dist/components/style/toast.js +1 -0
- package/dist/components/style/tokens.js +1 -0
- package/dist/components/sub-list/attrs.js +1 -0
- package/dist/components/sub-list/index.js +1 -0
- package/dist/components/sub-list/model.js +1 -0
- package/dist/components/sub-list/render.js +1 -0
- package/dist/components/sub-list/style.js +1 -0
- package/dist/components/summary-head/index.js +1 -0
- package/dist/components/summary-head/render.js +1 -0
- package/dist/components/summary-head/style.js +1 -0
- package/dist/components/switch-row/attrs.js +1 -0
- package/dist/components/switch-row/index.js +1 -0
- package/dist/components/switch-row/model.js +1 -0
- package/dist/components/switch-row/render.js +1 -0
- package/dist/components/switch-row/runtime.js +1 -0
- package/dist/components/switch-row/style.js +1 -0
- package/dist/components/sync-status/attrs.js +1 -0
- package/dist/components/sync-status/index.js +1 -0
- package/dist/components/sync-status/model.js +1 -0
- package/dist/components/sync-status/render.js +1 -0
- package/dist/components/sync-status/runtime.js +1 -0
- package/dist/components/sync-status/style.js +1 -0
- package/dist/components/task-list/attrs.js +1 -0
- package/dist/components/task-list/index.js +1 -0
- package/dist/components/task-list/model.js +1 -0
- package/dist/components/task-list/render.js +1 -0
- package/dist/components/task-list/runtime.js +1 -0
- package/dist/components/task-list/style.js +1 -0
- package/dist/components/template/fill.js +1 -0
- package/dist/components/template/index.js +1 -0
- package/dist/components/template/markers.d.ts +1 -1
- package/dist/components/template/markers.js +2 -1
- package/dist/components/template/shared.js +1 -0
- package/dist/components/text/api.js +1 -0
- package/dist/components/text/formats.js +1 -0
- package/dist/components/text/index.js +1 -0
- package/dist/components/text/input.js +1 -0
- package/dist/components/text/log.js +1 -0
- package/dist/components/text/rows.js +1 -0
- package/dist/components/text/shared.js +1 -0
- package/dist/components/timer-card/attrs.js +1 -0
- package/dist/components/timer-card/index.js +1 -0
- package/dist/components/timer-card/model.js +1 -0
- package/dist/components/timer-card/render.js +1 -0
- package/dist/components/timer-card/runtime.js +1 -0
- package/dist/components/timer-card/style.js +1 -0
- package/dist/components/toast-card/attrs.js +1 -0
- package/dist/components/toast-card/index.js +1 -0
- package/dist/components/toast-card/model.js +1 -0
- package/dist/components/toast-card/render.js +1 -0
- package/dist/components/toast-card/runtime.js +1 -0
- package/dist/components/toast-card/style.js +1 -0
- package/dist/components/tooltip/attrs.d.ts +11 -4
- package/dist/components/tooltip/attrs.d.ts.map +1 -1
- package/dist/components/tooltip/attrs.js +12 -4
- package/dist/components/tooltip/attrs.js.map +1 -1
- package/dist/components/tooltip/index.d.ts +2 -1
- package/dist/components/tooltip/index.d.ts.map +1 -1
- package/dist/components/tooltip/index.js +3 -1
- package/dist/components/tooltip/index.js.map +1 -1
- package/dist/components/tooltip/model.js +1 -0
- package/dist/components/tooltip/render.d.ts.map +1 -1
- package/dist/components/tooltip/render.js +4 -2
- package/dist/components/tooltip/render.js.map +1 -1
- package/dist/components/tooltip/runtime.d.ts.map +1 -1
- package/dist/components/tooltip/runtime.js +28 -6
- package/dist/components/tooltip/runtime.js.map +1 -1
- package/dist/components/tooltip/style.d.ts.map +1 -1
- package/dist/components/tooltip/style.js +11 -4
- package/dist/components/tooltip/style.js.map +1 -1
- package/dist/components/undo-timeline/attrs.d.ts +1 -1
- package/dist/components/undo-timeline/attrs.d.ts.map +1 -1
- package/dist/components/undo-timeline/attrs.js +1 -1
- package/dist/components/undo-timeline/attrs.js.map +1 -1
- package/dist/components/undo-timeline/index.d.ts +1 -1
- package/dist/components/undo-timeline/index.d.ts.map +1 -1
- package/dist/components/undo-timeline/index.js +1 -1
- package/dist/components/undo-timeline/index.js.map +1 -1
- package/dist/components/undo-timeline/keys.d.ts +17 -0
- package/dist/components/undo-timeline/keys.d.ts.map +1 -0
- package/dist/components/undo-timeline/keys.js +47 -0
- package/dist/components/undo-timeline/keys.js.map +1 -0
- package/dist/components/undo-timeline/model.d.ts.map +1 -1
- package/dist/components/undo-timeline/model.js +20 -1
- package/dist/components/undo-timeline/model.js.map +1 -1
- package/dist/components/undo-timeline/render.d.ts.map +1 -1
- package/dist/components/undo-timeline/render.js +10 -2
- package/dist/components/undo-timeline/render.js.map +1 -1
- package/dist/components/undo-timeline/runtime.d.ts.map +1 -1
- package/dist/components/undo-timeline/runtime.js +19 -12
- package/dist/components/undo-timeline/runtime.js.map +1 -1
- package/dist/components/undo-timeline/style-impact.d.ts.map +1 -1
- package/dist/components/undo-timeline/style-impact.js +2 -4
- package/dist/components/undo-timeline/style-impact.js.map +1 -1
- package/dist/components/undo-timeline/style-track.d.ts.map +1 -1
- package/dist/components/undo-timeline/style-track.js +5 -0
- package/dist/components/undo-timeline/style-track.js.map +1 -1
- package/dist/components/undo-timeline/text.d.ts +0 -2
- package/dist/components/undo-timeline/text.d.ts.map +1 -1
- package/dist/components/undo-timeline/text.js +0 -2
- package/dist/components/undo-timeline/text.js.map +1 -1
- package/dist/components/window-picker/attrs.js +1 -0
- package/dist/components/window-picker/index.js +1 -0
- package/dist/components/window-picker/model.js +1 -0
- package/dist/components/window-picker/render.js +1 -0
- package/dist/components/window-picker/runtime.js +1 -0
- package/dist/components/window-picker/style.js +1 -0
- package/dist/components/wizard-shell/attrs.d.ts +2 -1
- package/dist/components/wizard-shell/attrs.d.ts.map +1 -1
- package/dist/components/wizard-shell/attrs.js +3 -1
- package/dist/components/wizard-shell/attrs.js.map +1 -1
- package/dist/components/wizard-shell/index.js +1 -0
- package/dist/components/wizard-shell/model.d.ts.map +1 -1
- package/dist/components/wizard-shell/model.js +36 -0
- package/dist/components/wizard-shell/model.js.map +1 -1
- package/dist/components/wizard-shell/render.js +1 -0
- package/dist/components/wizard-shell/runtime.js +1 -0
- package/dist/components/wizard-shell/style-answer.js +1 -0
- package/dist/components/wizard-shell/style.js +1 -0
- package/dist/components//346/270/205/345/215/225.d.ts +2 -2
- package/dist/components//346/270/205/345/215/225.d.ts.map +1 -1
- package/dist/components//346/270/205/345/215/225.js +68 -54
- package/dist/components//346/270/205/345/215/225.js.map +1 -1
- package/dist/contract.js +1 -0
- package/dist/controls.js +1 -0
- package/dist/font.js +1 -0
- package/dist/help.js +1 -0
- package/dist/helpShell.d.ts.map +1 -1
- package/dist/helpShell.js +3 -2
- package/dist/helpShell.js.map +1 -1
- package/dist/index.js +1 -0
- package/dist/injector.js +1 -0
- package/dist/output/saveHtml.js +1 -0
- package/dist/pageUi.js +1 -0
- package/dist/spec/charts.js +1 -0
- package/dist/spec/controls.js +1 -0
- package/dist/spec/help.d.ts +59 -0
- package/dist/spec/help.d.ts.map +1 -1
- package/dist/spec/help.js +20 -0
- package/dist/spec/help.js.map +1 -1
- package/dist/spec/index.js +2 -1
- package/dist/spec/index.js.map +1 -1
- package/dist/spec/style.js +1 -0
- package/dist/spec/template.d.ts +1 -1
- package/dist/spec/template.d.ts.map +1 -1
- package/dist/spec/template.js +2 -1
- package/dist/spec/template.js.map +1 -1
- package/dist/spec/text.d.ts +1 -1
- package/dist/spec/text.js +2 -1
- package/dist/style.js +1 -0
- package/dist/template.js +1 -0
- package/dist/text.js +1 -0
- package/dist/ui.js +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { type ReminderSetterOption } from './attrs.js';
|
|
2
|
+
import type { ReminderSetterTrackModel } from './model.js';
|
|
3
|
+
/** 归一化后的一条提醒(`render.ts` 与运行时段读的就是它)。 */
|
|
4
|
+
export interface ReminderSetterTrackItemModel {
|
|
5
|
+
readonly id: string;
|
|
6
|
+
readonly label: string;
|
|
7
|
+
/** 1 起的序号(刻度上那枚徽章与图例那一行印的是它:两处对得起来)。 */
|
|
8
|
+
readonly index: number;
|
|
9
|
+
/** 一天里的第几分钟(机器读数,`0`–`1439`)。 */
|
|
10
|
+
readonly at: number;
|
|
11
|
+
/** 屏上那个时刻(`07:00`):由 `at` 算出来,**只印在图例那一行**。 */
|
|
12
|
+
readonly time: string;
|
|
13
|
+
/** 落在刻度上的比例(`0`–`1`):标记里那一枚点的 `left` 由它算出来。 */
|
|
14
|
+
readonly place: number;
|
|
15
|
+
/** 现在选中的是不是它。 */
|
|
16
|
+
readonly on: boolean;
|
|
17
|
+
readonly repeat: string;
|
|
18
|
+
readonly lead: string;
|
|
19
|
+
readonly chosen: readonly string[];
|
|
20
|
+
/** 图例那一行的尾一截(重复档;一条通知都没勾时换成那句状态)。 */
|
|
21
|
+
readonly tail: string;
|
|
22
|
+
}
|
|
23
|
+
/** `track` 那一支:一天刻度上那几条 + 现在选中哪一条 + 选中那条的三个决定。 */
|
|
24
|
+
export declare function normalizeTrack(raw: Record<string, unknown>, rows: {
|
|
25
|
+
repeats: ReminderSetterOption[];
|
|
26
|
+
leads: ReminderSetterOption[];
|
|
27
|
+
routes: ReminderSetterOption[];
|
|
28
|
+
}, id: string, extraClass?: string): ReminderSetterTrackModel;
|
|
29
|
+
//# sourceMappingURL=model-track.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-track.d.ts","sourceRoot":"","sources":["../../../src/components/reminder-setter/model-track.ts"],"names":[],"mappings":"AAgBA,OAAO,EAUL,KAAK,oBAAoB,EAE1B,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAqB,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAK9E,yCAAyC;AACzC,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,wCAAwC;IACxC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,+CAA+C;IAC/C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,+CAA+C;IAC/C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,iBAAiB;IACjB,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,qCAAqC;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AA2DD,kDAAkD;AAClD,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE;IACjE,OAAO,EAAE,oBAAoB,EAAE,CAAC;IAAC,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAAC,MAAM,EAAE,oBAAoB,EAAE,CAAC;CAChG,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,wBAAwB,CAgC5D"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
/** reminder-setter · **形态 `track` 的入参校验与归一化**(一天刻度上摆着好几条提醒那一档)。
|
|
2
|
+
*
|
|
3
|
+
* 这一档的场景是「**一天里好几条提醒、要看它们落在哪儿**」:刻度上摆着**多条**提醒点,
|
|
4
|
+
* 点某一条就改它自己的三个决定。故它比 `decisions` 那一档多两样入参——`items`(这一天有哪几条)
|
|
5
|
+
* 与 `picked`(现在改的是哪一条),其余三排档名与那一档**同一份**(`repeats`/`leads`/`routes`)。
|
|
6
|
+
*
|
|
7
|
+
* 三条口径:
|
|
8
|
+
* 1. **位置由数算出来**:每条提醒只给一个 `at`(一天里的第几分钟),刻度上的位置(`place`)
|
|
9
|
+
* 与屏上那个时刻(`time`)都在这里算好——`render.ts` 只拼标记,一个字都不算。
|
|
10
|
+
* 2. **`at` 是读数,两道闸都过**:有限数(`NaN`/`±Infinity` 一律拒)+ 可加性上界(`rules.ts`
|
|
11
|
+
* 的 `reqNumber()`);再过一道**改得到**的闸:整数分钟、落在 `0`–`1439`、踩在步进键那一档上
|
|
12
|
+
* ——落不到的点屏上点不出来。
|
|
13
|
+
* 3. **两枚点不许落在同一分钟**:命中盒 ≥44、相邻 ≥8px 是底线,同一个时刻摆两条时两枚命中盒
|
|
14
|
+
* 叠在一起(那一条按不准);改法是给其中一条另一分钟。
|
|
15
|
+
*/
|
|
16
|
+
import { assertDenseArray, assertPlainObject, badInput } from '../shared/validate.js';
|
|
17
|
+
import { REMINDER_SETTER_DAY_MIN, REMINDER_SETTER_MAX_ITEMS, REMINDER_SETTER_MAX_ROUTES, REMINDER_SETTER_MIN_ITEMS, REMINDER_SETTER_TEXT, REMINDER_SETTER_TIME_STEP_MIN, reminderSetterClock, reminderSetterPlace, reminderSetterTrackTail, } from './attrs.js';
|
|
18
|
+
import { assertKeys, reqChosen, reqIdentifier, reqNumber, reqPicked, reqRealText } from './rules.js';
|
|
19
|
+
/** `ReminderSetterTrackItem` 的键(一档可选值的入参表之外的第二个嵌套层)。 */
|
|
20
|
+
const ITEM_KEYS = ['id', 'label', 'at', 'repeat', 'lead', 'chosen'];
|
|
21
|
+
/** 一天里的第几分钟:**改得到**的那一闸(整数、在一天之内、踩在步进键那一档上)。 */
|
|
22
|
+
function reqAt(value, field) {
|
|
23
|
+
const at = reqNumber(value, field);
|
|
24
|
+
if (!Number.isInteger(at))
|
|
25
|
+
badInput(field + ' 必须是整数分钟(一天里的第几分钟),读到 ' + String(at));
|
|
26
|
+
if (at < 0 || at >= REMINDER_SETTER_DAY_MIN) {
|
|
27
|
+
badInput(field + ' 要落在 0–' + String(REMINDER_SETTER_DAY_MIN - 1) + ' 那一圈里(一天里的第几分钟),读到 '
|
|
28
|
+
+ String(at));
|
|
29
|
+
}
|
|
30
|
+
if (at % REMINDER_SETTER_TIME_STEP_MIN !== 0) {
|
|
31
|
+
badInput(field + ' 要落在 ' + String(REMINDER_SETTER_TIME_STEP_MIN)
|
|
32
|
+
+ ' 分钟那一档上(改法是两枚步进键,落不到的点屏上点不出来)');
|
|
33
|
+
}
|
|
34
|
+
return at;
|
|
35
|
+
}
|
|
36
|
+
/** 这一天的提醒:2–4 条,逐条过键表与逐字段校验(`id` 与 `at` 各自唯一)。 */
|
|
37
|
+
function reqItems(value, rows) {
|
|
38
|
+
if (!Array.isArray(value)) {
|
|
39
|
+
badInput('reminder-setter: input.items 必须是数组(一天里那几条提醒,'
|
|
40
|
+
+ String(REMINDER_SETTER_MIN_ITEMS) + '–' + String(REMINDER_SETTER_MAX_ITEMS) + ' 条)');
|
|
41
|
+
}
|
|
42
|
+
assertDenseArray(value, 'reminder-setter: input.items');
|
|
43
|
+
if (value.length < REMINDER_SETTER_MIN_ITEMS || value.length > REMINDER_SETTER_MAX_ITEMS) {
|
|
44
|
+
badInput('reminder-setter: input.items 要 ' + String(REMINDER_SETTER_MIN_ITEMS) + '–'
|
|
45
|
+
+ String(REMINDER_SETTER_MAX_ITEMS) + ' 条(一条谈不上「落在哪儿的几条」,再多窄容器里两枚点的命中盒会叠),读到 '
|
|
46
|
+
+ String(value.length) + ' 条');
|
|
47
|
+
}
|
|
48
|
+
const ids = new Set();
|
|
49
|
+
const ats = new Set();
|
|
50
|
+
return value.map((one, i) => {
|
|
51
|
+
const at = 'reminder-setter: input.items[' + String(i) + ']';
|
|
52
|
+
assertPlainObject(one, at);
|
|
53
|
+
const raw = one;
|
|
54
|
+
assertKeys(raw, ITEM_KEYS, at);
|
|
55
|
+
const id = reqIdentifier(raw.id, at + '.id');
|
|
56
|
+
if (ids.has(id))
|
|
57
|
+
badInput(at + '.id 与前面某一条重了(一整天里每条提醒的机器键唯一)');
|
|
58
|
+
ids.add(id);
|
|
59
|
+
const minutes = reqAt(raw.at, at + '.at');
|
|
60
|
+
if (ats.has(minutes)) {
|
|
61
|
+
badInput(at + '.at 与前面某一条落在同一分钟上:两枚点的命中盒会叠在一起('
|
|
62
|
+
+ '命中盒不小于 ' + String(REMINDER_SETTER_TIME_STEP_MIN) + ' 分钟那一档、相邻要留缝),'
|
|
63
|
+
+ '改法是给其中一条另一分钟');
|
|
64
|
+
}
|
|
65
|
+
ats.add(minutes);
|
|
66
|
+
return {
|
|
67
|
+
id,
|
|
68
|
+
label: reqRealText(raw.label, at + '.label'),
|
|
69
|
+
at: minutes,
|
|
70
|
+
repeat: reqPicked(rows.repeats, raw.repeat, at + '.repeat'),
|
|
71
|
+
lead: reqPicked(rows.leads, raw.lead, at + '.lead'),
|
|
72
|
+
chosen: reqChosen(rows.routes, raw.chosen, at + '.chosen', REMINDER_SETTER_MAX_ROUTES),
|
|
73
|
+
};
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
/** `track` 那一支:一天刻度上那几条 + 现在选中哪一条 + 选中那条的三个决定。 */
|
|
77
|
+
export function normalizeTrack(raw, rows, id, extraClass) {
|
|
78
|
+
const items = reqItems(raw.items, rows);
|
|
79
|
+
/* 屏上顺序=**刻度上的先后**:按 `at` 升序排(件自己排,调用方不用先排;同一分钟已被上面挡住)。 */
|
|
80
|
+
const sorted = items.slice().sort((a, b) => a.at - b.at);
|
|
81
|
+
const picked = reqIdentifier(raw.picked, 'reminder-setter: input.picked');
|
|
82
|
+
if (!sorted.some((o) => o.id === picked)) {
|
|
83
|
+
badInput('reminder-setter: input.picked 没有命中 items 里的任何一条: ' + picked);
|
|
84
|
+
}
|
|
85
|
+
const repeatLabelOf = (key) => rows.repeats.filter((o) => o.key === key)[0].label;
|
|
86
|
+
const built = sorted.map((item, i) => ({
|
|
87
|
+
id: item.id,
|
|
88
|
+
label: item.label,
|
|
89
|
+
index: i + 1,
|
|
90
|
+
at: item.at,
|
|
91
|
+
time: reminderSetterClock(item.at),
|
|
92
|
+
place: reminderSetterPlace(item.at),
|
|
93
|
+
on: item.id === picked,
|
|
94
|
+
repeat: item.repeat,
|
|
95
|
+
lead: item.lead,
|
|
96
|
+
chosen: item.chosen,
|
|
97
|
+
tail: reminderSetterTrackTail(repeatLabelOf(item.repeat), item.chosen.length, REMINDER_SETTER_TEXT),
|
|
98
|
+
}));
|
|
99
|
+
const sel = built.filter((o) => o.on)[0];
|
|
100
|
+
const selRows = [
|
|
101
|
+
{ part: 'repeat', label: REMINDER_SETTER_TEXT.repeatLabel, multi: false,
|
|
102
|
+
options: rows.repeats.map((o) => ({ key: o.key, label: o.label, on: o.key === sel.repeat })) },
|
|
103
|
+
{ part: 'lead', label: REMINDER_SETTER_TEXT.leadLabel, multi: false,
|
|
104
|
+
options: rows.leads.map((o) => ({ key: o.key, label: o.label, on: o.key === sel.lead })) },
|
|
105
|
+
{ part: 'route', label: REMINDER_SETTER_TEXT.routeLabel, multi: true,
|
|
106
|
+
options: rows.routes.map((o) => ({ key: o.key, label: o.label, on: sel.chosen.includes(o.key) })) },
|
|
107
|
+
];
|
|
108
|
+
return { form: 'track', id, items: built, picked: sel.id, rows: selRows, extraClass };
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=model-track.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-track.js","sourceRoot":"","sources":["../../../src/components/reminder-setter/model-track.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { type ReminderSetterPart } from './attrs.js';
|
|
2
|
+
import { type ReminderSetterTrackItemModel } from './model-track.js';
|
|
3
|
+
/** 归一化后的一枚可点项(`on`=现在选的是它/勾的是它)。 */
|
|
4
|
+
export interface ReminderSetterOptionRow {
|
|
5
|
+
readonly key: string;
|
|
6
|
+
readonly label: string;
|
|
7
|
+
readonly on: boolean;
|
|
8
|
+
}
|
|
9
|
+
/** 归一化后的一行决定(一行只做一个决定)。 */
|
|
10
|
+
export interface ReminderSetterRow {
|
|
11
|
+
readonly part: ReminderSetterPart;
|
|
12
|
+
/** 这一行问什么(`什么时候响`/`提前多久`/`走哪条通知`)。 */
|
|
13
|
+
readonly label: string;
|
|
14
|
+
/** 这一行是不是多选(形不同:单选是胶囊,多选是方框)。 */
|
|
15
|
+
readonly multi: boolean;
|
|
16
|
+
readonly options: readonly ReminderSetterOptionRow[];
|
|
17
|
+
}
|
|
18
|
+
/** 两个形态共有的那几样(根上的发现锚与形态键)。 */
|
|
19
|
+
interface ReminderSetterCommonModel {
|
|
20
|
+
readonly id: string;
|
|
21
|
+
readonly extraClass?: string;
|
|
22
|
+
}
|
|
23
|
+
/** `decisions` 那一支的内部类型(`render.ts` 只吃它,不再自己碰 `any`)。 */
|
|
24
|
+
export interface ReminderSetterDecisionsModel extends ReminderSetterCommonModel {
|
|
25
|
+
readonly form: 'decisions';
|
|
26
|
+
readonly title: string;
|
|
27
|
+
/** 现在设的时间(`HH:MM`,机器读数)。 */
|
|
28
|
+
readonly time: string;
|
|
29
|
+
/** 第一次从哪一天(`YYYY-MM-DD`,机器读数)。 */
|
|
30
|
+
readonly startDate: string;
|
|
31
|
+
/** 三行决定(顺序=屏上顺序:什么时候响 → 提前多久 → 走哪条通知)。 */
|
|
32
|
+
readonly rows: readonly ReminderSetterRow[];
|
|
33
|
+
/** **全件唯一的读数行**(一行说完现在设的是多少)。 */
|
|
34
|
+
readonly recap: string;
|
|
35
|
+
}
|
|
36
|
+
/** `track` 那一支的内部类型(一天刻度上那几条提醒,谁被选中、各自三个决定是什么)。 */
|
|
37
|
+
export interface ReminderSetterTrackModel extends ReminderSetterCommonModel {
|
|
38
|
+
readonly form: 'track';
|
|
39
|
+
/** 刻度上那几条提醒(屏上顺序=刻度上的先后)。 */
|
|
40
|
+
readonly items: readonly ReminderSetterTrackItemModel[];
|
|
41
|
+
/** 现在选中的是哪一条(须是上面某一枚的 `id`)。 */
|
|
42
|
+
readonly picked: string;
|
|
43
|
+
/** 选中那一条的三个决定(下面那块面板画的**只有这一条**)。 */
|
|
44
|
+
readonly rows: readonly ReminderSetterRow[];
|
|
45
|
+
}
|
|
46
|
+
/** 内部类型:两个形态的联合(`render.ts` 按 `form` 分派,各自只读自己那一支的字段)。 */
|
|
47
|
+
export type ReminderSetterModel = ReminderSetterDecisionsModel | ReminderSetterTrackModel;
|
|
48
|
+
/** 入参归一化。**唯一入口**:`render.ts` 只吃它产出的 `ReminderSetterModel`。 */
|
|
49
|
+
export declare function normalizeReminderSetter(input: unknown): ReminderSetterModel;
|
|
50
|
+
export {};
|
|
51
|
+
//# sourceMappingURL=model.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../src/components/reminder-setter/model.ts"],"names":[],"mappings":"AAkBA,OAAO,EAWL,KAAK,kBAAkB,EACxB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAkB,KAAK,4BAA4B,EAAE,MAAM,kBAAkB,CAAC;AAErF,oCAAoC;AACpC,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC;CACtB;AAED,2BAA2B;AAC3B,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,sCAAsC;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,iCAAiC;IACjC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,SAAS,uBAAuB,EAAE,CAAC;CACtD;AAED,8BAA8B;AAC9B,UAAU,yBAAyB;IACjC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,yDAAyD;AACzD,MAAM,WAAW,4BAA6B,SAAQ,yBAAyB;IAC7E,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,4BAA4B;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,kCAAkC;IAClC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,0CAA0C;IAC1C,QAAQ,CAAC,IAAI,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAC5C,iCAAiC;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,mDAAmD;AACnD,MAAM,WAAW,wBAAyB,SAAQ,yBAAyB;IACzE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,6BAA6B;IAC7B,QAAQ,CAAC,KAAK,EAAE,SAAS,4BAA4B,EAAE,CAAC;IACxD,gCAAgC;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,qCAAqC;IACrC,QAAQ,CAAC,IAAI,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAC7C;AAED,0DAA0D;AAC1D,MAAM,MAAM,mBAAmB,GAAG,4BAA4B,GAAG,wBAAwB,CAAC;AAuF1F,+DAA+D;AAC/D,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,mBAAmB,CAkB3E"}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
/** reminder-setter · **入参归一化与校验**(把 `any` 与说不出的 `unknown` 挡在门外,产出内部类型)。
|
|
2
|
+
*
|
|
3
|
+
* 三条口径(与 `kanban-columns/model.ts`/`relation-picker/model.ts` 同一条):
|
|
4
|
+
* 1. **非法入参一律 `badInput()`**(抛 `BlocksError`)——不静默降级、不「尽量猜」:
|
|
5
|
+
* · **上屏文本全空白=拒**(`' '` 会在屏上留一块空白:无字提醒名、无字档名;
|
|
6
|
+
* **零宽字符那类不可见字符同样算空白**——`trim()` 剥不掉它们,得先剥再判);
|
|
7
|
+
* · **入参表以外的键=拒**(写错一个键名,调用方以为自己设上了,屏上却没有;
|
|
8
|
+
* 自有的不可枚举键与原型链上继承来的键**同样算**——只走 `Object.keys` 会漏掉这两类);
|
|
9
|
+
* · **改不到的值=拒**:时间的分钟必须落在步进键的格子上(否则那枚读数屏上点不到)、
|
|
10
|
+
* 日期必须是真实存在的一天、选中的档必须真的在那一排里。
|
|
11
|
+
* 2. **能算的都算出来**:三行(每一行的可点项与「现在选的是哪一枚」)与**唯一那行复述**都在这里算好;
|
|
12
|
+
* `render.ts` 只拼标记,一个字都不算。
|
|
13
|
+
* 3. **一条通知都不勾是合法态**:`chosen: []` ⇒ 复述读成「没有通知,不会响」(照实读数,不是错误)。
|
|
14
|
+
*
|
|
15
|
+
* **两个形态各一支**:`decisions` 那一支照旧住本文件;`track` 那一支住同目录 `model-track.ts`
|
|
16
|
+
* (两个骨架的入参不同,挤在一份里会超本包告警线 350)。共用的那几条守卫住 `rules.ts`。
|
|
17
|
+
*/
|
|
18
|
+
import { assertPlainObject, badInput, optExtraClass, optText, reqText } from '../shared/validate.js';
|
|
19
|
+
import { REMINDER_SETTER_FORMS, REMINDER_SETTER_MAX_CHOICES, REMINDER_SETTER_MAX_ROUTES, REMINDER_SETTER_MIN_CHOICES, REMINDER_SETTER_MIN_ROUTES, REMINDER_SETTER_TEXT, REMINDER_SETTER_TIME_STEP_MIN, reminderSetterRecap, } from './attrs.js';
|
|
20
|
+
import { assertKeys, reqChosen, reqIdentifier, reqOptions, reqPicked, reqRealText } from './rules.js';
|
|
21
|
+
import { normalizeTrack } from './model-track.js';
|
|
22
|
+
/** `HH:MM`(24 小时制)。 */
|
|
23
|
+
const TIME_RE = /^([01][0-9]|2[0-3]):([0-5][0-9])$/;
|
|
24
|
+
/** `YYYY-MM-DD`。 */
|
|
25
|
+
const DATE_RE = /^(\d{4})-(\d{2})-(\d{2})$/;
|
|
26
|
+
/** 提醒时间:`HH:MM`,**且分钟落在步进键的格子上**(落不到的点屏上点不出来 ⇒ 不许给)。 */
|
|
27
|
+
function reqTime(value, field) {
|
|
28
|
+
const text = reqText(value, field);
|
|
29
|
+
const m = TIME_RE.exec(text);
|
|
30
|
+
if (m === null)
|
|
31
|
+
badInput(field + ' 必须是 HH:MM(24 小时制,如 22:30)');
|
|
32
|
+
if (Number(m[2]) % REMINDER_SETTER_TIME_STEP_MIN !== 0) {
|
|
33
|
+
badInput(field + ' 的分钟要落在 ' + String(REMINDER_SETTER_TIME_STEP_MIN)
|
|
34
|
+
+ ' 分钟那一档上(改法是两枚步进键,落不到的点屏上点不出来)');
|
|
35
|
+
}
|
|
36
|
+
return text;
|
|
37
|
+
}
|
|
38
|
+
/** 起始日:`YYYY-MM-DD`,**且是真实存在的一天**(`2026-02-30` 这类不是)。 */
|
|
39
|
+
function reqDate(value, field) {
|
|
40
|
+
const text = reqText(value, field);
|
|
41
|
+
const m = DATE_RE.exec(text);
|
|
42
|
+
if (m === null)
|
|
43
|
+
badInput(field + ' 必须是 YYYY-MM-DD');
|
|
44
|
+
const y = Number(m[1]);
|
|
45
|
+
const mo = Number(m[2]);
|
|
46
|
+
const d = Number(m[3]);
|
|
47
|
+
const at = new Date(Date.UTC(y, mo - 1, d));
|
|
48
|
+
if (at.getUTCFullYear() !== y || at.getUTCMonth() !== mo - 1 || at.getUTCDate() !== d) {
|
|
49
|
+
badInput(field + ' 不是真实存在的一天:' + text);
|
|
50
|
+
}
|
|
51
|
+
return text;
|
|
52
|
+
}
|
|
53
|
+
/** `ReminderSetterInput` 的**全部**键(顶层入参表:两个形态的键都在,缺哪个由形态自己定)。 */
|
|
54
|
+
const INPUT_KEYS = ['id', 'title', 'repeats', 'repeat', 'time', 'startDate',
|
|
55
|
+
'leads', 'lead', 'routes', 'chosen', 'form', 'extraClass', 'items', 'picked'];
|
|
56
|
+
/** 三排可点项(两个形态共用:档名由调用方给,件不猜有哪几条通知通道)。 */
|
|
57
|
+
function reqRows(raw) {
|
|
58
|
+
return {
|
|
59
|
+
repeats: reqOptions(raw.repeats, 'reminder-setter: input.repeats', REMINDER_SETTER_MIN_CHOICES, REMINDER_SETTER_MAX_CHOICES),
|
|
60
|
+
leads: reqOptions(raw.leads, 'reminder-setter: input.leads', REMINDER_SETTER_MIN_CHOICES, REMINDER_SETTER_MAX_CHOICES),
|
|
61
|
+
routes: reqOptions(raw.routes, 'reminder-setter: input.routes', REMINDER_SETTER_MIN_ROUTES, REMINDER_SETTER_MAX_ROUTES),
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
/** 三行决定的**装配**(两个形态共用:`decisions` 是那条提醒的,`track` 是选中那条的)。 */
|
|
65
|
+
function rowsOf(rows, repeat, lead, chosen) {
|
|
66
|
+
return [
|
|
67
|
+
{ part: 'repeat', label: REMINDER_SETTER_TEXT.repeatLabel, multi: false,
|
|
68
|
+
options: rows.repeats.map((o) => ({ key: o.key, label: o.label, on: o.key === repeat })) },
|
|
69
|
+
{ part: 'lead', label: REMINDER_SETTER_TEXT.leadLabel, multi: false,
|
|
70
|
+
options: rows.leads.map((o) => ({ key: o.key, label: o.label, on: o.key === lead })) },
|
|
71
|
+
{ part: 'route', label: REMINDER_SETTER_TEXT.routeLabel, multi: true,
|
|
72
|
+
options: rows.routes.map((o) => ({ key: o.key, label: o.label, on: chosen.includes(o.key) })) },
|
|
73
|
+
];
|
|
74
|
+
}
|
|
75
|
+
/** `decisions` 那一支:一件提醒、三行决定、一行复述。 */
|
|
76
|
+
function decisionsModel(raw, rows) {
|
|
77
|
+
const time = reqTime(raw.time, 'reminder-setter: input.time');
|
|
78
|
+
const startDate = reqDate(raw.startDate, 'reminder-setter: input.startDate');
|
|
79
|
+
const repeat = reqPicked(rows.repeats, raw.repeat, 'reminder-setter: input.repeat');
|
|
80
|
+
const lead = reqPicked(rows.leads, raw.lead, 'reminder-setter: input.lead');
|
|
81
|
+
const chosen = reqChosen(rows.routes, raw.chosen, 'reminder-setter: input.chosen', REMINDER_SETTER_MAX_ROUTES);
|
|
82
|
+
const repeatLabel = rows.repeats.filter((o) => o.key === repeat)[0].label;
|
|
83
|
+
return {
|
|
84
|
+
form: 'decisions',
|
|
85
|
+
title: reqRealText(raw.title, 'reminder-setter: input.title'),
|
|
86
|
+
time,
|
|
87
|
+
startDate,
|
|
88
|
+
rows: rowsOf(rows, repeat, lead, chosen),
|
|
89
|
+
recap: reminderSetterRecap(repeatLabel, startDate, time, chosen.length, REMINDER_SETTER_TEXT),
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
/** 入参归一化。**唯一入口**:`render.ts` 只吃它产出的 `ReminderSetterModel`。 */
|
|
93
|
+
export function normalizeReminderSetter(input) {
|
|
94
|
+
assertPlainObject(input, 'renderReminderSetter: input');
|
|
95
|
+
const raw = input;
|
|
96
|
+
assertKeys(raw, INPUT_KEYS, 'renderReminderSetter: input');
|
|
97
|
+
const form = raw.form === undefined ? REMINDER_SETTER_FORMS[0] : raw.form;
|
|
98
|
+
if (!REMINDER_SETTER_FORMS.includes(form)) {
|
|
99
|
+
badInput('reminder-setter: input.form 必须是 ' + REMINDER_SETTER_FORMS.join('/')
|
|
100
|
+
+ ' 之一(`decisions`=一行一个决定/`track`=一天刻度上摆点)');
|
|
101
|
+
}
|
|
102
|
+
const id = reqIdentifier(raw.id, 'reminder-setter: input.id');
|
|
103
|
+
/* `optText` 在这里只为把「不是字符串」挡掉;类名正则由 `optExtraClass` 管。 */
|
|
104
|
+
const extraClass = optExtraClass(optText(raw.extraClass, 'reminder-setter: input.extraClass'), 'reminder-setter: input.extraClass');
|
|
105
|
+
const rows = reqRows(raw);
|
|
106
|
+
if (form === 'track')
|
|
107
|
+
return normalizeTrack(raw, rows, id, extraClass);
|
|
108
|
+
return { ...decisionsModel(raw, rows), id, extraClass };
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/components/reminder-setter/model.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../../../src/components/reminder-setter/render.ts"],"names":[],"mappings":"AAmQA,wDAAwD;AACxD,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAc3D"}
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
/** reminder-setter · **渲染**(纯函数产 HTML;按形态分派,两档:`decisions` / `track`)。
|
|
2
|
+
*
|
|
3
|
+
* —— 形态 `decisions`「一行一个决定」——
|
|
4
|
+
*
|
|
5
|
+
* 一屏三层,**每层一句话都没有多的**:
|
|
6
|
+
* · **抬头**:这一组设定在给哪条提醒设(`「记体重」的提醒`);
|
|
7
|
+
* · **三行**:什么时候响 / 提前多久 / 走哪条通知——左边是这一行问什么,右边是这一行的全部可点项;
|
|
8
|
+
* 日期与时间不走精确拖点,走两枚 44×44 的步进键夹一枚读数(手机上「点得到」);
|
|
9
|
+
* · **一行复述**:全件唯一的读数行(`每天 2026-09-26 22:30`),一行说完,`role="status"` 会在变时念出来。
|
|
10
|
+
*
|
|
11
|
+
* —— 形态 `track`「一天刻度上摆点」——
|
|
12
|
+
*
|
|
13
|
+
* 一天里好几条提醒、要看它们落在哪儿:刻度上摆着**多条**提醒点(每枚 44×44 的可点件),
|
|
14
|
+
* 点某一条就改**它自己**的三个决定(下面那块面板只画选中的那一条)。这一档只留一层话:
|
|
15
|
+
* 刻度 + 小时数 + **图例**(一行一条:序号 + 时间 + 提醒名 + 重复档)+ 选中那条的决定面板。
|
|
16
|
+
* **没有抬头、没有复述那一行**——图例那一行就是「现在设的是多少」(再写一行就是同一个数印第二遍)。
|
|
17
|
+
*
|
|
18
|
+
* 原型里的旁白与口径句一句都不上屏(2026-09-25 用户口径:原型里写了好多文字、看起来很混乱;
|
|
19
|
+
* 砍法:删 3 句口径旁白、删编辑面板那行「选中:22:30 记体重」——图例那行已印同一件事)。
|
|
20
|
+
*
|
|
21
|
+
* 五条硬口径(判据断的就是它们):
|
|
22
|
+
* · **触屏可达**:三排可点项/两枚步进键/刻度上那几枚点,每枚 ≥`REMINDER_SETTER_TOUCH_PX`、
|
|
23
|
+
* 相邻留 `REMINDER_SETTER_GAP_PX` 缝;
|
|
24
|
+
* · **状态不只靠颜色**:选中那枚=形(勾 + 方框/胶囊/圈)+ 字(档名 + 字重)+ 色(软底)三样;
|
|
25
|
+
* · **单选与多选形状分开**:单选留一枚**固定 `REMINDER_SETTER_TICK_PX` 宽的勾选槽位**(未选也留:
|
|
26
|
+
* 一排胶囊的左右沿才齐平),多选是实心方框(这条可以多选,形状自己说得出);
|
|
27
|
+
* · **数值永不截断**:时间与日期读数没有省略手段,窄档只换行;
|
|
28
|
+
* · **同页多实例**:全部 `aria-*` 都按入参 `id` 逐实例派生(`wizard-shell` 同一处教训)。
|
|
29
|
+
*/
|
|
30
|
+
import { esc } from '../shared/escape.js';
|
|
31
|
+
import { REMINDER_SETTER_AT_ATTR, REMINDER_SETTER_ATTR, REMINDER_SETTER_CHOSEN_ATTR, REMINDER_SETTER_CLASS, REMINDER_SETTER_DEC, REMINDER_SETTER_DELTA_ATTR, REMINDER_SETTER_FORM_ATTR, REMINDER_SETTER_HOURS, REMINDER_SETTER_INC, REMINDER_SETTER_LEAD_ATTR, REMINDER_SETTER_PART_ATTR, REMINDER_SETTER_PICKED_ATTR, REMINDER_SETTER_READ_ATTR, REMINDER_SETTER_REPEAT_ATTR, REMINDER_SETTER_ROW_ATTR, REMINDER_SETTER_START_ATTR, REMINDER_SETTER_STEP_ATTR, REMINDER_SETTER_TEXT, REMINDER_SETTER_TIME_ATTR, REMINDER_SETTER_TOUCH_PX, REMINDER_SETTER_VALUE_ATTR, reminderSetterHead, reminderSetterSlot, } from './attrs.js';
|
|
32
|
+
import { normalizeReminderSetter, } from './model.js';
|
|
33
|
+
/** 根上那两个机器读数(`decisions` 那一档:时间 + 第一次从)。 */
|
|
34
|
+
function decisionsRootAttrs(m) {
|
|
35
|
+
return ' ' + REMINDER_SETTER_TIME_ATTR + '="' + esc(m.time) + '"'
|
|
36
|
+
+ ' ' + REMINDER_SETTER_START_ATTR + '="' + esc(m.startDate) + '"';
|
|
37
|
+
}
|
|
38
|
+
/** 根上那两个机器读数(`track` 那一档:现在改的是哪一条 + 它落在一天里的第几分钟)。 */
|
|
39
|
+
function trackRootAttrs(m) {
|
|
40
|
+
const sel = m.items.filter((o) => o.on)[0];
|
|
41
|
+
return ' ' + REMINDER_SETTER_PICKED_ATTR + '="' + esc(m.picked) + '"'
|
|
42
|
+
+ ' ' + REMINDER_SETTER_AT_ATTR + '="' + String(sel.at) + '"';
|
|
43
|
+
}
|
|
44
|
+
/** 抬头那一行(`「记体重」的提醒`:它是什么)。 */
|
|
45
|
+
function headHtml(m) {
|
|
46
|
+
return '<p class="' + reminderSetterSlot('head') + '">' + esc(reminderSetterHead(m.title)) + '</p>';
|
|
47
|
+
}
|
|
48
|
+
/** 一枚可点项:单选走 `-chip`(胶囊)、多选走 `-check`(方框)——**形状本身就是「这条可以多选」**。
|
|
49
|
+
* 选中态照法条(有文字的选中面):软底 + 主色字 + 主色描边 + 勾(形),字重 700。 */
|
|
50
|
+
function optionHtml(row, key, label, on) {
|
|
51
|
+
return '<button type="button" class="' + reminderSetterSlot(row.multi ? 'check' : 'chip')
|
|
52
|
+
+ (on ? ' is-on' : '') + '"'
|
|
53
|
+
+ ' ' + REMINDER_SETTER_PART_ATTR + '="' + esc(row.part) + '"'
|
|
54
|
+
+ ' ' + REMINDER_SETTER_VALUE_ATTR + '="' + esc(key) + '"'
|
|
55
|
+
+ ' aria-pressed="' + (on ? 'true' : 'false') + '">' + esc(label) + '</button>';
|
|
56
|
+
}
|
|
57
|
+
/** 这一行的可点项那一排(`role="group"` 带这一行的名字:屏读器念得出「什么时候响」是哪一组)。
|
|
58
|
+
* `who`=这条提醒叫什么(`decisions` 那一档是抬头那个提醒名,`track` 那一档是选中那条的名字)。 */
|
|
59
|
+
function trayHtml(who, row) {
|
|
60
|
+
return '<div class="' + reminderSetterSlot(row.multi ? 'rack' : 'tray') + '" role="group"'
|
|
61
|
+
+ ' aria-label="' + esc(row.label + '(' + who + ')') + '">'
|
|
62
|
+
+ row.options.map((o) => optionHtml(row, o.key, o.label, o.on)).join('')
|
|
63
|
+
+ '</div>';
|
|
64
|
+
}
|
|
65
|
+
/** 一个步进位(名字 + 减 + 读数 + 加):两枚键的命中盒都不小于触控地板,中间那枚是机器读数的另一种摆法。 */
|
|
66
|
+
function stepFieldHtml(step, label, value, decLabel, incLabel, what) {
|
|
67
|
+
const stepAttr = ' ' + REMINDER_SETTER_STEP_ATTR + '="' + esc(step) + '"';
|
|
68
|
+
return '<div class="' + reminderSetterSlot('field') + '">'
|
|
69
|
+
+ '<span class="' + reminderSetterSlot('flabel') + '">' + esc(label) + '</span>'
|
|
70
|
+
+ '<div class="' + reminderSetterSlot('stepper') + '" role="group"'
|
|
71
|
+
+ ' aria-label="' + esc(label + '(' + what + ')') + '">'
|
|
72
|
+
+ '<button type="button" class="' + reminderSetterSlot('dec') + '"' + stepAttr
|
|
73
|
+
+ ' ' + REMINDER_SETTER_DELTA_ATTR + '="-1"'
|
|
74
|
+
+ ' aria-label="' + esc(decLabel + '(' + what + ')') + '">' + esc(REMINDER_SETTER_DEC) + '</button>'
|
|
75
|
+
+ '<span class="' + reminderSetterSlot('num') + '"'
|
|
76
|
+
+ ' ' + REMINDER_SETTER_READ_ATTR + '="' + esc(step) + '">' + esc(value) + '</span>'
|
|
77
|
+
+ '<button type="button" class="' + reminderSetterSlot('inc') + '"' + stepAttr
|
|
78
|
+
+ ' ' + REMINDER_SETTER_DELTA_ATTR + '="1"'
|
|
79
|
+
+ ' aria-label="' + esc(incLabel + '(' + what + ')') + '">' + esc(REMINDER_SETTER_INC) + '</button>'
|
|
80
|
+
+ '</div></div>';
|
|
81
|
+
}
|
|
82
|
+
/** 「什么时候响」那一行多出来的两个步进位:时间 + 第一次从(都住在这一行的控制列里)。 */
|
|
83
|
+
function fieldsHtml(m) {
|
|
84
|
+
const T = REMINDER_SETTER_TEXT;
|
|
85
|
+
return '<div class="' + reminderSetterSlot('fields') + '">'
|
|
86
|
+
+ stepFieldHtml('time', T.timeLabel, m.time, T.early, T.late, m.title)
|
|
87
|
+
+ stepFieldHtml('start', T.startLabel, m.startDate, T.prevDay, T.nextDay, m.title)
|
|
88
|
+
+ '</div>';
|
|
89
|
+
}
|
|
90
|
+
/** 一行决定(左标签右控件;窄档折成上下两段,仍是这一行只做一个决定)。
|
|
91
|
+
* `fields`=这一行下面再挂的那两个步进位(只有 `decisions` 那一档的「什么时候响」要挂)。 */
|
|
92
|
+
function rowHtml(who, row, fields) {
|
|
93
|
+
return '<div class="' + reminderSetterSlot('row') + '"'
|
|
94
|
+
+ ' ' + REMINDER_SETTER_ROW_ATTR + '="' + esc(row.part) + '">'
|
|
95
|
+
+ '<p class="' + reminderSetterSlot('label') + '">' + esc(row.label) + '</p>'
|
|
96
|
+
+ '<div class="' + reminderSetterSlot('ctl') + '">'
|
|
97
|
+
+ trayHtml(who, row) + fields
|
|
98
|
+
+ '</div></div>';
|
|
99
|
+
}
|
|
100
|
+
/** **全件唯一的读数行**:一行说完现在设的是多少(变的时候 `role="status"` 会念出来)。 */
|
|
101
|
+
function recapHtml(m) {
|
|
102
|
+
return '<p class="' + reminderSetterSlot('read') + '"'
|
|
103
|
+
+ ' ' + REMINDER_SETTER_READ_ATTR + '="recap" role="status">' + esc(m.recap) + '</p>';
|
|
104
|
+
}
|
|
105
|
+
/** 形态 `decisions` 的骨架:抬头 → 三行决定 → 一行复述。 */
|
|
106
|
+
function renderDecisions(m) {
|
|
107
|
+
return headHtml(m)
|
|
108
|
+
+ m.rows.map((row) => rowHtml(m.title, row, row.part === 'repeat' ? fieldsHtml(m) : '')).join('')
|
|
109
|
+
+ recapHtml(m);
|
|
110
|
+
}
|
|
111
|
+
/* ── 形态 `track`:一天刻度上摆着好几条提醒,点其中一条改它自己的三个决定 ────────────
|
|
112
|
+
*
|
|
113
|
+
* **这一档比 `decisions` 省一层话**:没有抬头、没有复述那一行——
|
|
114
|
+
* 「现在设的是多少」由图例那一行自己读出来(序号 + 时间 + 提醒名 + 重复档/那句状态)。
|
|
115
|
+
* 再写一行复述就是把同一个数印第二遍(用户 2026-09-25 砍掉的正是那一句)。
|
|
116
|
+
*
|
|
117
|
+
* 一枚提醒点=**一个 44×44 的可点件**(命中盒不小于触控地板),落点由 `at` 算出来的
|
|
118
|
+
* `place` 写进行内样式:`left: calc((100% - 44px) * place + 22px)` ——
|
|
119
|
+
* 两端各让出半个命中盒,最左/最右那一条的命中盒也不会顶出刻度条(窄档零横溢)。
|
|
120
|
+
*/
|
|
121
|
+
/** 一枚提醒点(刻度上那一个可点件):徽章印序号,点本身印位置(形与色都在样式段里)。 */
|
|
122
|
+
function dotHtml(item, touch) {
|
|
123
|
+
return '<button type="button" class="' + reminderSetterSlot('dot') + (item.on ? ' is-on' : '') + '"'
|
|
124
|
+
+ ' ' + REMINDER_SETTER_PART_ATTR + '="pick"'
|
|
125
|
+
+ ' ' + REMINDER_SETTER_VALUE_ATTR + '="' + esc(item.id) + '"'
|
|
126
|
+
+ ' ' + REMINDER_SETTER_AT_ATTR + '="' + String(item.at) + '"'
|
|
127
|
+
+ itemStateAttrs(item)
|
|
128
|
+
+ ' aria-pressed="' + (item.on ? 'true' : 'false') + '"'
|
|
129
|
+
+ ' aria-label="' + esc(item.time + ' ' + item.label) + '"'
|
|
130
|
+
+ ' style="left: calc((100% - ' + String(touch) + 'px) * ' + String(item.place) + ' + '
|
|
131
|
+
+ String(touch / 2) + 'px)">'
|
|
132
|
+
+ '<b>' + String(item.index) + '</b><i></i></button>';
|
|
133
|
+
}
|
|
134
|
+
/** 一条提醒自己的那三枚读数的**机器读数锚**(点与图例那一行都挂着:同一份状态的两种摆法)。 */
|
|
135
|
+
function itemStateAttrs(item) {
|
|
136
|
+
return ' ' + REMINDER_SETTER_REPEAT_ATTR + '="' + esc(item.repeat) + '"'
|
|
137
|
+
+ ' ' + REMINDER_SETTER_LEAD_ATTR + '="' + esc(item.lead) + '"'
|
|
138
|
+
+ ' ' + REMINDER_SETTER_CHOSEN_ATTR + '="' + esc(item.chosen.join(' ')) + '"';
|
|
139
|
+
}
|
|
140
|
+
/** 图例里的一行(这条提醒现在设的是多少):序号 + 时间 + 提醒名 + 重复档;可点(点它=选中它)。 */
|
|
141
|
+
function legendRowHtml(item) {
|
|
142
|
+
return '<button type="button" class="' + reminderSetterSlot('lg') + (item.on ? ' is-on' : '') + '"'
|
|
143
|
+
+ ' ' + REMINDER_SETTER_PART_ATTR + '="pick"'
|
|
144
|
+
+ ' ' + REMINDER_SETTER_VALUE_ATTR + '="' + esc(item.id) + '"'
|
|
145
|
+
+ ' ' + REMINDER_SETTER_AT_ATTR + '="' + String(item.at) + '"'
|
|
146
|
+
+ itemStateAttrs(item)
|
|
147
|
+
+ ' aria-pressed="' + (item.on ? 'true' : 'false') + '">'
|
|
148
|
+
+ '<b>' + String(item.index) + '</b>'
|
|
149
|
+
+ '<em class="' + reminderSetterSlot('num') + '"'
|
|
150
|
+
+ ' ' + REMINDER_SETTER_READ_ATTR + '="at">' + esc(item.time) + '</em>'
|
|
151
|
+
+ '<span>' + esc(item.label) + '</span>'
|
|
152
|
+
+ '<span ' + REMINDER_SETTER_READ_ATTR + '="tail">' + esc(item.tail) + '</span></button>';
|
|
153
|
+
}
|
|
154
|
+
/** 一天那条刻度:刻度条(位置的参照) + 上面每一枚提醒点。 */
|
|
155
|
+
function dayHtml(m) {
|
|
156
|
+
return '<div class="' + reminderSetterSlot('day') + '">'
|
|
157
|
+
+ '<div class="' + reminderSetterSlot('ruler') + '">'
|
|
158
|
+
+ m.items.map((it) => dotHtml(it, REMINDER_SETTER_TOUCH_PX)).join('')
|
|
159
|
+
+ '</div>'
|
|
160
|
+
+ '<div class="' + reminderSetterSlot('hours') + '" aria-hidden="true">'
|
|
161
|
+
+ REMINDER_SETTER_HOURS.map((h) => '<span>' + String(h) + '</span>').join('')
|
|
162
|
+
+ '</div>'
|
|
163
|
+
+ '<div class="' + reminderSetterSlot('legend') + '">'
|
|
164
|
+
+ m.items.map((it) => legendRowHtml(it)).join('')
|
|
165
|
+
+ '</div></div>';
|
|
166
|
+
}
|
|
167
|
+
/** 选中那一条的「时间」那一行:两枚 44 的步进键夹一枚读数(改的是选中那条的 `at`)。 */
|
|
168
|
+
function trackStepHtml(m) {
|
|
169
|
+
const T = REMINDER_SETTER_TEXT;
|
|
170
|
+
const sel = m.items.filter((o) => o.on)[0];
|
|
171
|
+
const stepAttr = ' ' + REMINDER_SETTER_STEP_ATTR + '="time"';
|
|
172
|
+
return '<div class="' + reminderSetterSlot('row') + '"'
|
|
173
|
+
+ ' ' + REMINDER_SETTER_ROW_ATTR + '="time">'
|
|
174
|
+
+ '<p class="' + reminderSetterSlot('label') + '">' + esc(T.timeLabel) + '</p>'
|
|
175
|
+
+ '<div class="' + reminderSetterSlot('ctl') + '">'
|
|
176
|
+
+ '<div class="' + reminderSetterSlot('field') + '">'
|
|
177
|
+
+ '<div class="' + reminderSetterSlot('stepper') + '" role="group"'
|
|
178
|
+
+ ' aria-label="' + esc(T.timeLabel + '(' + sel.label + ')') + '">'
|
|
179
|
+
+ '<button type="button" class="' + reminderSetterSlot('dec') + '"' + stepAttr
|
|
180
|
+
+ ' ' + REMINDER_SETTER_DELTA_ATTR + '="-1"'
|
|
181
|
+
+ ' aria-label="' + esc(T.early + '(' + sel.label + ')') + '">' + esc(REMINDER_SETTER_DEC) + '</button>'
|
|
182
|
+
+ '<span class="' + reminderSetterSlot('num') + '"'
|
|
183
|
+
+ ' ' + REMINDER_SETTER_READ_ATTR + '="sel">' + esc(sel.time) + '</span>'
|
|
184
|
+
+ '<button type="button" class="' + reminderSetterSlot('inc') + '"' + stepAttr
|
|
185
|
+
+ ' ' + REMINDER_SETTER_DELTA_ATTR + '="1"'
|
|
186
|
+
+ ' aria-label="' + esc(T.late + '(' + sel.label + ')') + '">' + esc(REMINDER_SETTER_INC) + '</button>'
|
|
187
|
+
+ '</div></div></div></div>';
|
|
188
|
+
}
|
|
189
|
+
/** 形态 `track` 的骨架:一天那条刻度(点 + 小时数 + 图例) → 选中那一条的三个决定。 */
|
|
190
|
+
function renderTrack(m) {
|
|
191
|
+
const sel = m.items.filter((o) => o.on)[0];
|
|
192
|
+
const panel = (row) => rowHtml(sel.label, row, '');
|
|
193
|
+
return dayHtml(m)
|
|
194
|
+
+ '<div class="' + reminderSetterSlot('pick') + '">'
|
|
195
|
+
+ m.rows.slice(0, 2).map(panel).join('')
|
|
196
|
+
+ trackStepHtml(m)
|
|
197
|
+
+ m.rows.slice(2).map(panel).join('')
|
|
198
|
+
+ '</div>';
|
|
199
|
+
}
|
|
200
|
+
/** 形态 → 骨架(加第二形态就是加一支)。 */
|
|
201
|
+
const SKELETONS = {
|
|
202
|
+
decisions: renderDecisions,
|
|
203
|
+
track: renderTrack,
|
|
204
|
+
};
|
|
205
|
+
/** 渲染提醒设置(纯函数:同样的入参恒产同样的字节;转义只经 `shared/escape.ts`)。 */
|
|
206
|
+
export function renderReminderSetter(input) {
|
|
207
|
+
const m = normalizeReminderSetter(input);
|
|
208
|
+
const extra = m.extraClass === undefined ? '' : ' ' + m.extraClass;
|
|
209
|
+
/* 根**就是宿主**:`-host` 那一枚槽类必须落在根上(样式段里卡框与 `container-type`
|
|
210
|
+
* 都挂在它名下;根上不带它 ⇒ 那一条规则成了永不命中的死声明,
|
|
211
|
+
* 卡没有边/没有投影,`@container` 也永远找不到容器 ⇒ 窄档折行整段失效)。 */
|
|
212
|
+
return '<div class="' + REMINDER_SETTER_CLASS + ' ' + reminderSetterSlot('host')
|
|
213
|
+
+ ' is-' + m.form + extra + '"'
|
|
214
|
+
+ ' ' + REMINDER_SETTER_ATTR + '="' + esc(m.id) + '"'
|
|
215
|
+
+ ' ' + REMINDER_SETTER_FORM_ATTR + '="' + m.form + '"'
|
|
216
|
+
+ (m.form === 'track' ? trackRootAttrs(m) : decisionsRootAttrs(m))
|
|
217
|
+
+ '>'
|
|
218
|
+
+ (m.form === 'track' ? SKELETONS.track(m) : SKELETONS.decisions(m))
|
|
219
|
+
+ '</div>';
|
|
220
|
+
}
|
|
221
|
+
//# sourceMappingURL=render.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render.js","sourceRoot":"","sources":["../../../src/components/reminder-setter/render.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,2BAA2B,EAC3B,qBAAqB,EACrB,mBAAmB,EACnB,0BAA0B,EAC1B,yBAAyB,EACzB,qBAAqB,EACrB,mBAAmB,EACnB,yBAAyB,EACzB,yBAAyB,EACzB,2BAA2B,EAC3B,yBAAyB,EACzB,2BAA2B,EAC3B,wBAAwB,EACxB,0BAA0B,EAC1B,yBAAyB,EACzB,oBAAoB,EACpB,yBAAyB,EACzB,wBAAwB,EACxB,0BAA0B,EAC1B,kBAAkB,EAClB,kBAAkB,GAGnB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,uBAAuB,GAIxB,MAAM,YAAY,CAAC;AAGpB,4CAA4C;AAC5C,SAAS,kBAAkB,CAAC,CAA+B;IACzD,OAAO,GAAG,GAAG,yBAAyB,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG;UAC7D,GAAG,GAAG,0BAA0B,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC;AACvE,CAAC;AAED,qDAAqD;AACrD,SAAS,cAAc,CAAC,CAA2B;IACjD,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,OAAO,GAAG,GAAG,2BAA2B,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG;UACjE,GAAG,GAAG,uBAAuB,GAAG,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;AAClE,CAAC;AAED,8BAA8B;AAC9B,SAAS,QAAQ,CAAC,CAA+B;IAC/C,OAAO,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC;AACtG,CAAC;AAED;qDACqD;AACrD,SAAS,UAAU,CAAC,GAAsB,EAAE,GAAW,EAAE,KAAa,EAAE,EAAW;IACjF,OAAO,+BAA+B,GAAG,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;UACrF,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG;UAC1B,GAAG,GAAG,yBAAyB,GAAG,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG;UAC5D,GAAG,GAAG,0BAA0B,GAAG,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG;UACxD,iBAAiB,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC;AACpF,CAAC;AAED;kEACkE;AAClE,SAAS,QAAQ,CAAC,GAAW,EAAE,GAAsB;IACnD,OAAO,cAAc,GAAG,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,gBAAgB;UACtF,eAAe,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI;UACzD,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;UACtE,QAAQ,CAAC;AACf,CAAC;AAED,8DAA8D;AAC9D,SAAS,aAAa,CAAC,IAAwB,EAAE,KAAa,EAAE,KAAa,EAC3E,QAAgB,EAAE,QAAgB,EAAE,IAAY;IAChD,MAAM,QAAQ,GAAG,GAAG,GAAG,yBAAyB,GAAG,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;IAC1E,OAAO,cAAc,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,IAAI;UACtD,eAAe,GAAG,kBAAkB,CAAC,QAAQ,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,SAAS;UAC9E,cAAc,GAAG,kBAAkB,CAAC,SAAS,CAAC,GAAG,gBAAgB;UACjE,eAAe,GAAG,GAAG,CAAC,KAAK,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,CAAC,GAAG,IAAI;UACtD,+BAA+B,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,QAAQ;UAC5E,GAAG,GAAG,0BAA0B,GAAG,OAAO;UAC1C,eAAe,GAAG,GAAG,CAAC,QAAQ,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,mBAAmB,CAAC,GAAG,WAAW;UAClG,eAAe,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,GAAG;UACjD,GAAG,GAAG,yBAAyB,GAAG,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,SAAS;UAClF,+BAA+B,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,QAAQ;UAC5E,GAAG,GAAG,0BAA0B,GAAG,MAAM;UACzC,eAAe,GAAG,GAAG,CAAC,QAAQ,GAAG,GAAG,GAAG,IAAI,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,mBAAmB,CAAC,GAAG,WAAW;UAClG,cAAc,CAAC;AACrB,CAAC;AAED,kDAAkD;AAClD,SAAS,UAAU,CAAC,CAA+B;IACjD,MAAM,CAAC,GAAG,oBAAoB,CAAC;IAC/B,OAAO,cAAc,GAAG,kBAAkB,CAAC,QAAQ,CAAC,GAAG,IAAI;UACvD,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC;UACpE,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC;UAChF,QAAQ,CAAC;AACf,CAAC;AAED;6DAC6D;AAC7D,SAAS,OAAO,CAAC,GAAW,EAAE,GAAsB,EAAE,MAAc;IAClE,OAAO,cAAc,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,GAAG;UACnD,GAAG,GAAG,wBAAwB,GAAG,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI;UAC5D,YAAY,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM;UAC3E,cAAc,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,IAAI;UACjD,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,MAAM;UAC3B,cAAc,CAAC;AACrB,CAAC;AAED,2DAA2D;AAC3D,SAAS,SAAS,CAAC,CAA+B;IAChD,OAAO,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,GAAG,GAAG;UAClD,GAAG,GAAG,yBAAyB,GAAG,yBAAyB,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC;AAC1F,CAAC;AAED,2CAA2C;AAC3C,SAAS,eAAe,CAAC,CAA+B;IACtD,OAAO,QAAQ,CAAC,CAAC,CAAC;UACd,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;UAC/F,SAAS,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC;AAED;;;;;;;;;GASG;AAEH,gDAAgD;AAChD,SAAS,OAAO,CAAC,IAAkC,EAAE,KAAa;IAChE,OAAO,+BAA+B,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG;UAChG,GAAG,GAAG,yBAAyB,GAAG,SAAS;UAC3C,GAAG,GAAG,0BAA0B,GAAG,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG;UAC5D,GAAG,GAAG,uBAAuB,GAAG,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG;UAC5D,cAAc,CAAC,IAAI,CAAC;UACpB,iBAAiB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,GAAG;UACtD,eAAe,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG;UACzD,6BAA6B,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK;UACrF,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,OAAO;UAC3B,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,sBAAsB,CAAC;AAC1D,CAAC;AAED,qDAAqD;AACrD,SAAS,cAAc,CAAC,IAAkC;IACxD,OAAO,GAAG,GAAG,2BAA2B,GAAG,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG;UACpE,GAAG,GAAG,yBAAyB,GAAG,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG;UAC7D,GAAG,GAAG,2BAA2B,GAAG,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;AAClF,CAAC;AAED,0DAA0D;AAC1D,SAAS,aAAa,CAAC,IAAkC;IACvD,OAAO,+BAA+B,GAAG,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG;UAC/F,GAAG,GAAG,yBAAyB,GAAG,SAAS;UAC3C,GAAG,GAAG,0BAA0B,GAAG,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG;UAC5D,GAAG,GAAG,uBAAuB,GAAG,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG;UAC5D,cAAc,CAAC,IAAI,CAAC;UACpB,iBAAiB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,IAAI;UACvD,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,MAAM;UACnC,aAAa,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,GAAG;UAC/C,GAAG,GAAG,yBAAyB,GAAG,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO;UACrE,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,SAAS;UACtC,QAAQ,GAAG,yBAAyB,GAAG,UAAU,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC;AAC9F,CAAC;AAED,oCAAoC;AACpC,SAAS,OAAO,CAAC,CAA2B;IAC1C,OAAO,cAAc,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,IAAI;UACpD,cAAc,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,IAAI;UACnD,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,wBAAwB,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;UACnE,QAAQ;UACR,cAAc,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,uBAAuB;UACtE,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;UAC3E,QAAQ;UACR,cAAc,GAAG,kBAAkB,CAAC,QAAQ,CAAC,GAAG,IAAI;UACpD,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;UAC/C,cAAc,CAAC;AACrB,CAAC;AAED,oDAAoD;AACpD,SAAS,aAAa,CAAC,CAA2B;IAChD,MAAM,CAAC,GAAG,oBAAoB,CAAC;IAC/B,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,GAAG,GAAG,yBAAyB,GAAG,SAAS,CAAC;IAC7D,OAAO,cAAc,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,GAAG;UACnD,GAAG,GAAG,wBAAwB,GAAG,UAAU;UAC3C,YAAY,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,MAAM;UAC7E,cAAc,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,IAAI;UACjD,cAAc,GAAG,kBAAkB,CAAC,OAAO,CAAC,GAAG,IAAI;UACnD,cAAc,GAAG,kBAAkB,CAAC,SAAS,CAAC,GAAG,gBAAgB;UACjE,eAAe,GAAG,GAAG,CAAC,CAAC,CAAC,SAAS,GAAG,GAAG,GAAG,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI;UACjE,+BAA+B,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,QAAQ;UAC5E,GAAG,GAAG,0BAA0B,GAAG,OAAO;UAC1C,eAAe,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,GAAG,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,mBAAmB,CAAC,GAAG,WAAW;UACtG,eAAe,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,GAAG;UACjD,GAAG,GAAG,yBAAyB,GAAG,SAAS,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,SAAS;UACvE,+BAA+B,GAAG,kBAAkB,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,QAAQ;UAC5E,GAAG,GAAG,0BAA0B,GAAG,MAAM;UACzC,eAAe,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,GAAG,GAAG,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,mBAAmB,CAAC,GAAG,WAAW;UACrG,0BAA0B,CAAC;AACjC,CAAC;AAED,wDAAwD;AACxD,SAAS,WAAW,CAAC,CAA2B;IAC9C,MAAM,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,CAAC,GAAsB,EAAU,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IAC9E,OAAO,OAAO,CAAC,CAAC,CAAC;UACb,cAAc,GAAG,kBAAkB,CAAC,MAAM,CAAC,GAAG,IAAI;UAClD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;UACtC,aAAa,CAAC,CAAC,CAAC;UAChB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;UACnC,QAAQ,CAAC;AACf,CAAC;AAED,2BAA2B;AAC3B,MAAM,SAAS,GAGX;IACF,SAAS,EAAE,eAAe;IAC1B,KAAK,EAAE,WAAW;CACnB,CAAC;AAEF,wDAAwD;AACxD,MAAM,UAAU,oBAAoB,CAAC,KAAc;IACjD,MAAM,CAAC,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;IACzC,MAAM,KAAK,GAAG,CAAC,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,UAAU,CAAC;IACnE;;uDAEmD;IACnD,OAAO,cAAc,GAAG,qBAAqB,GAAG,GAAG,GAAG,kBAAkB,CAAC,MAAM,CAAC;UAC5E,MAAM,GAAG,CAAC,CAAC,IAAI,GAAG,KAAK,GAAG,GAAG;UAC7B,GAAG,GAAG,oBAAoB,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG;UACnD,GAAG,GAAG,yBAAyB,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,GAAG,GAAG;UACrD,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;UAChE,GAAG;UACH,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;UAClE,QAAQ,CAAC;AACf,CAAC"}
|