ttpg-darrell 1.0.76 → 1.0.78
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/build/cjs/lib/game-object/cardholder-player-name/cardholder-player-name.js +1 -1
- package/build/cjs/lib/layout-objects/layout-border.d.ts +2 -2
- package/build/cjs/lib/layout-objects/layout-border.js +8 -13
- package/build/cjs/lib/layout-objects/layout-border.js.map +1 -1
- package/build/cjs/lib/layout-objects/layout-border.testp.js +19 -0
- package/build/cjs/lib/layout-objects/layout-border.testp.js.map +1 -0
- package/build/cjs/lib/layout-objects/layout-objects.d.ts +1 -1
- package/build/cjs/lib/locale/locale.d.ts +1 -1
- package/build/cjs/lib-ext/color-mapping/color-mapping.js +2 -2
- package/build/cjs/lib-ext/color-mapping/color-mapping.js.map +1 -1
- package/build/cjs/lib-ext/color-mapping/raw-linear.js +0 -25
- package/build/cjs/lib-ext/color-mapping/raw-linear.js.map +1 -1
- package/build/cjs/lib-ext/create-assets/abstract-create-assets/abstract-create-assets.d.ts +0 -1
- package/build/cjs/lib-ext/create-assets/create-board/create-board.d.ts +0 -1
- package/build/cjs/lib-ext/create-assets/create-cardsheets/create-cardsheet-params.d.ts +12 -160
- package/build/cjs/lib-ext/create-assets/create-cardsheets/create-cardsheet.d.ts +0 -1
- package/build/cjs/lib-ext/create-assets/create-d6/create-d6-params.d.ts +10 -158
- package/build/cjs/lib-ext/create-assets/create-d6/create-d6.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/abstract-cell/abstract-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/bleed-cell/bleed-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/buffer-cell/buffer-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/canvas-cell/canvas-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/cell-parser/cell-schema.d.ts +40 -20
- package/build/cjs/lib-ext/image/cell/col-cell/col-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/grid-cell/grid-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/image-cell/image-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/padded-cell/padded-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/resize-cell/resize-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/row-cell/row-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/solid-cell/solid-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/cell/text-cell/text-cell.d.ts +0 -1
- package/build/cjs/lib-ext/image/image-split/image-split.d.ts +0 -1
- package/build/cjs/lib-ext/nsid/extract-nsid-to-template-id.js +1 -1
- package/build/cjs/lib-ext/nsid/extract-nsid-to-template-id.js.map +1 -1
- package/build/cjs/lib-ext/template/cube-template/cube-template.js +4 -4
- package/build/cjs/lib-ext/template/cube-template/cube-template.js.map +1 -1
- package/build/esm/lib/game-object/cardholder-player-name/cardholder-player-name.js +1 -1
- package/build/esm/lib/layout-objects/layout-border.d.ts +2 -2
- package/build/esm/lib/layout-objects/layout-border.js +8 -13
- package/build/esm/lib/layout-objects/layout-border.js.map +1 -1
- package/build/esm/lib/layout-objects/layout-border.testp.js +17 -0
- package/build/esm/lib/layout-objects/layout-border.testp.js.map +1 -0
- package/build/esm/lib/layout-objects/layout-objects.d.ts +1 -1
- package/build/esm/lib/locale/locale.d.ts +1 -1
- package/build/esm/lib-ext/create-assets/abstract-create-assets/abstract-create-assets.d.ts +0 -1
- package/build/esm/lib-ext/create-assets/create-board/create-board.d.ts +0 -1
- package/build/esm/lib-ext/create-assets/create-cardsheets/create-cardsheet-params.d.ts +12 -160
- package/build/esm/lib-ext/create-assets/create-cardsheets/create-cardsheet.d.ts +0 -1
- package/build/esm/lib-ext/create-assets/create-d6/create-d6-params.d.ts +10 -158
- package/build/esm/lib-ext/create-assets/create-d6/create-d6.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/abstract-cell/abstract-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/bleed-cell/bleed-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/buffer-cell/buffer-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/canvas-cell/canvas-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/cell-parser/cell-schema.d.ts +40 -20
- package/build/esm/lib-ext/image/cell/col-cell/col-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/grid-cell/grid-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/image-cell/image-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/padded-cell/padded-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/resize-cell/resize-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/row-cell/row-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/solid-cell/solid-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/cell/text-cell/text-cell.d.ts +0 -1
- package/build/esm/lib-ext/image/image-split/image-split.d.ts +0 -1
- package/build/esm/lib-ext/nsid/extract-nsid-to-template-id.js +1 -1
- package/build/esm/lib-ext/nsid/extract-nsid-to-template-id.js.map +1 -1
- package/build/esm/lib-ext/template/cube-template/cube-template.js +4 -4
- package/build/esm/lib-ext/template/cube-template/cube-template.js.map +1 -1
- package/package.json +1 -1
- package/build/cjs/lib/bug-workarounds/bug-card-holder-assignment.d.ts +0 -8
- package/build/cjs/lib/bug-workarounds/bug-card-holder-assignment.js +0 -14
- package/build/cjs/lib/bug-workarounds/bug-card-holder-assignment.js.map +0 -1
- package/build/cjs/lib/bug-workarounds/bug-unique-cards.d.ts +0 -8
- package/build/cjs/lib/bug-workarounds/bug-unique-cards.js +0 -14
- package/build/cjs/lib/bug-workarounds/bug-unique-cards.js.map +0 -1
- package/build/cjs/lib/chess-clock/chess-clock-window.d.ts +0 -11
- package/build/cjs/lib/chess-clock/chess-clock-window.js +0 -47
- package/build/cjs/lib/chess-clock/chess-clock-window.js.map +0 -1
- package/build/cjs/lib/chess-clock/chess-clock-window.testp.d.ts +0 -1
- package/build/cjs/lib/chess-clock/chess-clock-window.testp.js +0 -23
- package/build/cjs/lib/chess-clock/chess-clock-window.testp.js.map +0 -1
- package/build/cjs/lib/context-menu/abstract-right-click-card.d.ts +0 -17
- package/build/cjs/lib/context-menu/abstract-right-click-card.js +0 -40
- package/build/cjs/lib/context-menu/abstract-right-click-card.js.map +0 -1
- package/build/cjs/lib/context-menu/abstract-right-click-deck.d.ts +0 -19
- package/build/cjs/lib/context-menu/abstract-right-click-deck.js +0 -46
- package/build/cjs/lib/context-menu/abstract-right-click-deck.js.map +0 -1
- package/build/cjs/lib/context-menu/leave-seat.d.ts +0 -19
- package/build/cjs/lib/context-menu/leave-seat.js +0 -51
- package/build/cjs/lib/context-menu/leave-seat.js.map +0 -1
- package/build/cjs/lib/event/on-card-became-singleton-or-deck.d.ts +0 -30
- package/build/cjs/lib/event/on-card-became-singleton-or-deck.js +0 -103
- package/build/cjs/lib/event/on-card-became-singleton-or-deck.js.map +0 -1
- package/build/cjs/lib/event/on-card-became-singleton-or-deck.testp.d.ts +0 -1
- package/build/cjs/lib/event/on-card-became-singleton-or-deck.testp.js +0 -15
- package/build/cjs/lib/event/on-card-became-singleton-or-deck.testp.js.map +0 -1
- package/build/cjs/lib/event/throttle-click-handler.d.ts +0 -9
- package/build/cjs/lib/event/throttle-click-handler.js +0 -28
- package/build/cjs/lib/event/throttle-click-handler.js.map +0 -1
- package/build/cjs/lib/event/triggerable-multicast-delegate.d.ts +0 -30
- package/build/cjs/lib/event/triggerable-multicast-delegate.js +0 -57
- package/build/cjs/lib/event/triggerable-multicast-delegate.js.map +0 -1
- package/build/cjs/lib/game-object/dice-snap-rotation/dice-snap-rotation-obj.d.ts +0 -1
- package/build/cjs/lib/game-object/dice-snap-rotation/dice-snap-rotation-obj.js +0 -6
- package/build/cjs/lib/game-object/dice-snap-rotation/dice-snap-rotation-obj.js.map +0 -1
- package/build/cjs/lib/game-object/dice-snap-rotation/dice-snap-rotation.d.ts +0 -7
- package/build/cjs/lib/game-object/dice-snap-rotation/dice-snap-rotation.js +0 -27
- package/build/cjs/lib/game-object/dice-snap-rotation/dice-snap-rotation.js.map +0 -1
- package/build/cjs/lib/jest-util/click-all/click-all.d.ts +0 -2
- package/build/cjs/lib/jest-util/click-all/click-all.js +0 -38
- package/build/cjs/lib/jest-util/click-all/click-all.js.map +0 -1
- package/build/cjs/lib/parse/parse-color.d.ts +0 -7
- package/build/cjs/lib/parse/parse-color.js +0 -47
- package/build/cjs/lib/parse/parse-color.js.map +0 -1
- package/build/cjs/lib/svg/svg-sparkline.d.ts +0 -12
- package/build/cjs/lib/svg/svg-sparkline.js +0 -44
- package/build/cjs/lib/svg/svg-sparkline.js.map +0 -1
- package/build/cjs/lib/ui-visibility/ui-visibility.d.ts +0 -17
- package/build/cjs/lib/ui-visibility/ui-visibility.js +0 -69
- package/build/cjs/lib/ui-visibility/ui-visibility.js.map +0 -1
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-config-widget.d.ts +0 -9
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-config-widget.js +0 -82
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-config-widget.js.map +0 -1
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-config-window.d.ts +0 -4
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-config-window.js +0 -40
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-config-window.js.map +0 -1
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-data.d.ts +0 -46
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-data.js +0 -211
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-data.js.map +0 -1
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-widget.d.ts +0 -15
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-widget.js +0 -227
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-widget.js.map +0 -1
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-window.d.ts +0 -11
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-window.js +0 -47
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-window.js.map +0 -1
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-window.testp.d.ts +0 -1
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-window.testp.js +0 -22
- package/build/cjs/lib/widget/chess-clock-widget/chess-clock-window.testp.js.map +0 -1
- package/build/cjs/lib-ext/color-mapping/color-mapping-scikit.js +0 -140
- package/build/cjs/lib-ext/color-mapping/color-mapping-scikit.js.map +0 -1
- package/build/cjs/lib-ext/color-mapping/extracted-to-hex.js +0 -41
- package/build/cjs/lib-ext/color-mapping/extracted-to-hex.js.map +0 -1
- package/build/cjs/lib-ext/image-table.d.ts +0 -1
- package/build/cjs/lib-ext/image-table.js +0 -14
- package/build/cjs/lib-ext/image-table.js.map +0 -1
- package/build/esm/lib/bug-workarounds/bug-card-holder-assignment.d.ts +0 -8
- package/build/esm/lib/bug-workarounds/bug-card-holder-assignment.js +0 -10
- package/build/esm/lib/bug-workarounds/bug-card-holder-assignment.js.map +0 -1
- package/build/esm/lib/bug-workarounds/bug-unique-cards.d.ts +0 -8
- package/build/esm/lib/bug-workarounds/bug-unique-cards.js +0 -10
- package/build/esm/lib/bug-workarounds/bug-unique-cards.js.map +0 -1
- package/build/esm/lib/chess-clock/chess-clock-window.d.ts +0 -11
- package/build/esm/lib/chess-clock/chess-clock-window.js +0 -43
- package/build/esm/lib/chess-clock/chess-clock-window.js.map +0 -1
- package/build/esm/lib/chess-clock/chess-clock-window.testp.d.ts +0 -1
- package/build/esm/lib/chess-clock/chess-clock-window.testp.js +0 -21
- package/build/esm/lib/chess-clock/chess-clock-window.testp.js.map +0 -1
- package/build/esm/lib/context-menu/abstract-right-click-card.d.ts +0 -17
- package/build/esm/lib/context-menu/abstract-right-click-card.js +0 -36
- package/build/esm/lib/context-menu/abstract-right-click-card.js.map +0 -1
- package/build/esm/lib/context-menu/abstract-right-click-deck.d.ts +0 -19
- package/build/esm/lib/context-menu/abstract-right-click-deck.js +0 -42
- package/build/esm/lib/context-menu/abstract-right-click-deck.js.map +0 -1
- package/build/esm/lib/context-menu/leave-seat.d.ts +0 -19
- package/build/esm/lib/context-menu/leave-seat.js +0 -47
- package/build/esm/lib/context-menu/leave-seat.js.map +0 -1
- package/build/esm/lib/event/on-card-became-singleton-or-deck.d.ts +0 -30
- package/build/esm/lib/event/on-card-became-singleton-or-deck.js +0 -99
- package/build/esm/lib/event/on-card-became-singleton-or-deck.js.map +0 -1
- package/build/esm/lib/event/on-card-became-singleton-or-deck.testp.d.ts +0 -1
- package/build/esm/lib/event/on-card-became-singleton-or-deck.testp.js +0 -13
- package/build/esm/lib/event/on-card-became-singleton-or-deck.testp.js.map +0 -1
- package/build/esm/lib/event/throttle-click-handler.d.ts +0 -9
- package/build/esm/lib/event/throttle-click-handler.js +0 -24
- package/build/esm/lib/event/throttle-click-handler.js.map +0 -1
- package/build/esm/lib/event/triggerable-multicast-delegate.d.ts +0 -30
- package/build/esm/lib/event/triggerable-multicast-delegate.js +0 -53
- package/build/esm/lib/event/triggerable-multicast-delegate.js.map +0 -1
- package/build/esm/lib/game-object/dice-snap-rotation/dice-snap-rotation-obj.d.ts +0 -1
- package/build/esm/lib/game-object/dice-snap-rotation/dice-snap-rotation-obj.js +0 -4
- package/build/esm/lib/game-object/dice-snap-rotation/dice-snap-rotation-obj.js.map +0 -1
- package/build/esm/lib/game-object/dice-snap-rotation/dice-snap-rotation.d.ts +0 -4
- package/build/esm/lib/game-object/dice-snap-rotation/dice-snap-rotation.js +0 -20
- package/build/esm/lib/game-object/dice-snap-rotation/dice-snap-rotation.js.map +0 -1
- package/build/esm/lib/jest-util/click-all/click-all.d.ts +0 -2
- package/build/esm/lib/jest-util/click-all/click-all.js +0 -34
- package/build/esm/lib/jest-util/click-all/click-all.js.map +0 -1
- package/build/esm/lib/parse/parse-color.d.ts +0 -7
- package/build/esm/lib/parse/parse-color.js +0 -43
- package/build/esm/lib/parse/parse-color.js.map +0 -1
- package/build/esm/lib/svg/svg-sparkline.d.ts +0 -12
- package/build/esm/lib/svg/svg-sparkline.js +0 -40
- package/build/esm/lib/svg/svg-sparkline.js.map +0 -1
- package/build/esm/lib/ui-visibility/ui-visibility.d.ts +0 -17
- package/build/esm/lib/ui-visibility/ui-visibility.js +0 -65
- package/build/esm/lib/ui-visibility/ui-visibility.js.map +0 -1
- package/build/esm/lib-ext/image-table.d.ts +0 -1
- package/build/esm/lib-ext/image-table.js +0 -9
- package/build/esm/lib-ext/image-table.js.map +0 -1
- package/build/module_type_should_override_this/index.d.ts +0 -54
- package/build/module_type_should_override_this/index.js +0 -55
- package/build/module_type_should_override_this/index.js.map +0 -1
- package/build/module_type_should_override_this/lib/adjacency/adjacency.d.ts +0 -61
- package/build/module_type_should_override_this/lib/adjacency/adjacency.js +0 -212
- package/build/module_type_should_override_this/lib/adjacency/adjacency.js.map +0 -1
- package/build/module_type_should_override_this/lib/broadcast/broadcast.d.ts +0 -9
- package/build/module_type_should_override_this/lib/broadcast/broadcast.js +0 -42
- package/build/module_type_should_override_this/lib/broadcast/broadcast.js.map +0 -1
- package/build/module_type_should_override_this/lib/bug-workarounds/bug-card-holder-assignment.d.ts +0 -8
- package/build/module_type_should_override_this/lib/bug-workarounds/bug-card-holder-assignment.js +0 -10
- package/build/module_type_should_override_this/lib/bug-workarounds/bug-card-holder-assignment.js.map +0 -1
- package/build/module_type_should_override_this/lib/bug-workarounds/bug-unique-cards.d.ts +0 -8
- package/build/module_type_should_override_this/lib/bug-workarounds/bug-unique-cards.js +0 -10
- package/build/module_type_should_override_this/lib/bug-workarounds/bug-unique-cards.js.map +0 -1
- package/build/module_type_should_override_this/lib/card-util/card-util.d.ts +0 -45
- package/build/module_type_should_override_this/lib/card-util/card-util.js +0 -173
- package/build/module_type_should_override_this/lib/card-util/card-util.js.map +0 -1
- package/build/module_type_should_override_this/lib/context-menu/abstract-right-click-card.d.ts +0 -17
- package/build/module_type_should_override_this/lib/context-menu/abstract-right-click-card.js +0 -36
- package/build/module_type_should_override_this/lib/context-menu/abstract-right-click-card.js.map +0 -1
- package/build/module_type_should_override_this/lib/context-menu/abstract-right-click-deck.d.ts +0 -19
- package/build/module_type_should_override_this/lib/context-menu/abstract-right-click-deck.js +0 -42
- package/build/module_type_should_override_this/lib/context-menu/abstract-right-click-deck.js.map +0 -1
- package/build/module_type_should_override_this/lib/context-menu/leave-seat.d.ts +0 -19
- package/build/module_type_should_override_this/lib/context-menu/leave-seat.js +0 -47
- package/build/module_type_should_override_this/lib/context-menu/leave-seat.js.map +0 -1
- package/build/module_type_should_override_this/lib/data-store/data-store.d.ts +0 -104
- package/build/module_type_should_override_this/lib/data-store/data-store.js +0 -392
- package/build/module_type_should_override_this/lib/data-store/data-store.js.map +0 -1
- package/build/module_type_should_override_this/lib/dice-group/dice-group-testp.d.ts +0 -1
- package/build/module_type_should_override_this/lib/dice-group/dice-group-testp.js +0 -37
- package/build/module_type_should_override_this/lib/dice-group/dice-group-testp.js.map +0 -1
- package/build/module_type_should_override_this/lib/dice-group/dice-group.d.ts +0 -83
- package/build/module_type_should_override_this/lib/dice-group/dice-group.js +0 -247
- package/build/module_type_should_override_this/lib/dice-group/dice-group.js.map +0 -1
- package/build/module_type_should_override_this/lib/error-handler/bugsplat-remote-reporter.d.ts +0 -21
- package/build/module_type_should_override_this/lib/error-handler/bugsplat-remote-reporter.js +0 -54
- package/build/module_type_should_override_this/lib/error-handler/bugsplat-remote-reporter.js.map +0 -1
- package/build/module_type_should_override_this/lib/error-handler/error-batcher.d.ts +0 -11
- package/build/module_type_should_override_this/lib/error-handler/error-batcher.js +0 -50
- package/build/module_type_should_override_this/lib/error-handler/error-batcher.js.map +0 -1
- package/build/module_type_should_override_this/lib/error-handler/error-handler.d.ts +0 -43
- package/build/module_type_should_override_this/lib/error-handler/error-handler.js +0 -234
- package/build/module_type_should_override_this/lib/error-handler/error-handler.js.map +0 -1
- package/build/module_type_should_override_this/lib/error-handler/error-handler.testp.d.ts +0 -4
- package/build/module_type_should_override_this/lib/error-handler/error-handler.testp.js +0 -13
- package/build/module_type_should_override_this/lib/error-handler/error-handler.testp.js.map +0 -1
- package/build/module_type_should_override_this/lib/event/on-card-became-singleton-or-deck.d.ts +0 -30
- package/build/module_type_should_override_this/lib/event/on-card-became-singleton-or-deck.js +0 -99
- package/build/module_type_should_override_this/lib/event/on-card-became-singleton-or-deck.js.map +0 -1
- package/build/module_type_should_override_this/lib/event/on-card-became-singleton-or-deck.testp.d.ts +0 -1
- package/build/module_type_should_override_this/lib/event/on-card-became-singleton-or-deck.testp.js +0 -13
- package/build/module_type_should_override_this/lib/event/on-card-became-singleton-or-deck.testp.js.map +0 -1
- package/build/module_type_should_override_this/lib/event/throttle-click-handler.d.ts +0 -9
- package/build/module_type_should_override_this/lib/event/throttle-click-handler.js +0 -24
- package/build/module_type_should_override_this/lib/event/throttle-click-handler.js.map +0 -1
- package/build/module_type_should_override_this/lib/event/triggerable-multicast-delegate.d.ts +0 -30
- package/build/module_type_should_override_this/lib/event/triggerable-multicast-delegate.js +0 -53
- package/build/module_type_should_override_this/lib/event/triggerable-multicast-delegate.js.map +0 -1
- package/build/module_type_should_override_this/lib/facing/facing.d.ts +0 -4
- package/build/module_type_should_override_this/lib/facing/facing.js +0 -15
- package/build/module_type_should_override_this/lib/facing/facing.js.map +0 -1
- package/build/module_type_should_override_this/lib/find/find.d.ts +0 -19
- package/build/module_type_should_override_this/lib/find/find.js +0 -152
- package/build/module_type_should_override_this/lib/find/find.js.map +0 -1
- package/build/module_type_should_override_this/lib/game-object/cardholder-player-name/cardholder-player-name-obj.d.ts +0 -1
- package/build/module_type_should_override_this/lib/game-object/cardholder-player-name/cardholder-player-name-obj.js +0 -10
- package/build/module_type_should_override_this/lib/game-object/cardholder-player-name/cardholder-player-name-obj.js.map +0 -1
- package/build/module_type_should_override_this/lib/game-object/cardholder-player-name/cardholder-player-name.d.ts +0 -19
- package/build/module_type_should_override_this/lib/game-object/cardholder-player-name/cardholder-player-name.js +0 -101
- package/build/module_type_should_override_this/lib/game-object/cardholder-player-name/cardholder-player-name.js.map +0 -1
- package/build/module_type_should_override_this/lib/game-object/deleted-items-container/deleted-items-container-obj.d.ts +0 -1
- package/build/module_type_should_override_this/lib/game-object/deleted-items-container/deleted-items-container-obj.js +0 -5
- package/build/module_type_should_override_this/lib/game-object/deleted-items-container/deleted-items-container-obj.js.map +0 -1
- package/build/module_type_should_override_this/lib/game-object/deleted-items-container/deleted-items-container.d.ts +0 -24
- package/build/module_type_should_override_this/lib/game-object/deleted-items-container/deleted-items-container.js +0 -91
- package/build/module_type_should_override_this/lib/game-object/deleted-items-container/deleted-items-container.js.map +0 -1
- package/build/module_type_should_override_this/lib/game-object/garbage/garbage-container-obj.d.ts +0 -1
- package/build/module_type_should_override_this/lib/game-object/garbage/garbage-container-obj.js +0 -4
- package/build/module_type_should_override_this/lib/game-object/garbage/garbage-container-obj.js.map +0 -1
- package/build/module_type_should_override_this/lib/game-object/garbage/garbage-container.d.ts +0 -43
- package/build/module_type_should_override_this/lib/game-object/garbage/garbage-container.js +0 -116
- package/build/module_type_should_override_this/lib/game-object/garbage/garbage-container.js.map +0 -1
- package/build/module_type_should_override_this/lib/game-object/garbage/simple-card-garbage-handler.d.ts +0 -20
- package/build/module_type_should_override_this/lib/game-object/garbage/simple-card-garbage-handler.js +0 -100
- package/build/module_type_should_override_this/lib/game-object/garbage/simple-card-garbage-handler.js.map +0 -1
- package/build/module_type_should_override_this/lib/game-object/garbage/simple-to-container-handler.d.ts +0 -16
- package/build/module_type_should_override_this/lib/game-object/garbage/simple-to-container-handler.js +0 -44
- package/build/module_type_should_override_this/lib/game-object/garbage/simple-to-container-handler.js.map +0 -1
- package/build/module_type_should_override_this/lib/game-object/garbage/simple-to-snap-point-handler.d.ts +0 -19
- package/build/module_type_should_override_this/lib/game-object/garbage/simple-to-snap-point-handler.js +0 -50
- package/build/module_type_should_override_this/lib/game-object/garbage/simple-to-snap-point-handler.js.map +0 -1
- package/build/module_type_should_override_this/lib/global/global-init.d.ts +0 -10
- package/build/module_type_should_override_this/lib/global/global-init.js +0 -20
- package/build/module_type_should_override_this/lib/global/global-init.js.map +0 -1
- package/build/module_type_should_override_this/lib/global/i-global.d.ts +0 -3
- package/build/module_type_should_override_this/lib/global/i-global.js +0 -2
- package/build/module_type_should_override_this/lib/global/i-global.js.map +0 -1
- package/build/module_type_should_override_this/lib/heap/heap.d.ts +0 -8
- package/build/module_type_should_override_this/lib/heap/heap.js +0 -109
- package/build/module_type_should_override_this/lib/heap/heap.js.map +0 -1
- package/build/module_type_should_override_this/lib/layout-objects/layout-objects.d.ts +0 -49
- package/build/module_type_should_override_this/lib/layout-objects/layout-objects.js +0 -257
- package/build/module_type_should_override_this/lib/layout-objects/layout-objects.js.map +0 -1
- package/build/module_type_should_override_this/lib/locale/locale.d.ts +0 -8
- package/build/module_type_should_override_this/lib/locale/locale.js +0 -48
- package/build/module_type_should_override_this/lib/locale/locale.js.map +0 -1
- package/build/module_type_should_override_this/lib/namespace-id/namespace-id.d.ts +0 -1
- package/build/module_type_should_override_this/lib/namespace-id/namespace-id.js +0 -2
- package/build/module_type_should_override_this/lib/namespace-id/namespace-id.js.map +0 -1
- package/build/module_type_should_override_this/lib/nsid/nsid.d.ts +0 -54
- package/build/module_type_should_override_this/lib/nsid/nsid.js +0 -86
- package/build/module_type_should_override_this/lib/nsid/nsid.js.map +0 -1
- package/build/module_type_should_override_this/lib/parse/parse-color.d.ts +0 -7
- package/build/module_type_should_override_this/lib/parse/parse-color.js +0 -43
- package/build/module_type_should_override_this/lib/parse/parse-color.js.map +0 -1
- package/build/module_type_should_override_this/lib/perf/perf.d.ts +0 -29
- package/build/module_type_should_override_this/lib/perf/perf.js +0 -93
- package/build/module_type_should_override_this/lib/perf/perf.js.map +0 -1
- package/build/module_type_should_override_this/lib/setup/abstract-setup.d.ts +0 -18
- package/build/module_type_should_override_this/lib/setup/abstract-setup.js +0 -22
- package/build/module_type_should_override_this/lib/setup/abstract-setup.js.map +0 -1
- package/build/module_type_should_override_this/lib/shuffle/shuffle.d.ts +0 -7
- package/build/module_type_should_override_this/lib/shuffle/shuffle.js +0 -26
- package/build/module_type_should_override_this/lib/shuffle/shuffle.js.map +0 -1
- package/build/module_type_should_override_this/lib/spawn/spawn.d.ts +0 -21
- package/build/module_type_should_override_this/lib/spawn/spawn.js +0 -116
- package/build/module_type_should_override_this/lib/spawn/spawn.js.map +0 -1
- package/build/module_type_should_override_this/lib/svg/svg-sparkline.d.ts +0 -12
- package/build/module_type_should_override_this/lib/svg/svg-sparkline.js +0 -40
- package/build/module_type_should_override_this/lib/svg/svg-sparkline.js.map +0 -1
- package/build/module_type_should_override_this/lib/turn-order/turn-order.d.ts +0 -51
- package/build/module_type_should_override_this/lib/turn-order/turn-order.js +0 -200
- package/build/module_type_should_override_this/lib/turn-order/turn-order.js.map +0 -1
- package/build/module_type_should_override_this/lib/ui/screen-test.d.ts +0 -1
- package/build/module_type_should_override_this/lib/ui/screen-test.js +0 -20
- package/build/module_type_should_override_this/lib/ui/screen-test.js.map +0 -1
- package/build/module_type_should_override_this/lib/ui-visibility/ui-visibility.d.ts +0 -17
- package/build/module_type_should_override_this/lib/ui-visibility/ui-visibility.js +0 -65
- package/build/module_type_should_override_this/lib/ui-visibility/ui-visibility.js.map +0 -1
- package/build/module_type_should_override_this/lib/whisper-reporter/whisper-reporter-locale.data.d.ts +0 -3
- package/build/module_type_should_override_this/lib/whisper-reporter/whisper-reporter-locale.data.js +0 -4
- package/build/module_type_should_override_this/lib/whisper-reporter/whisper-reporter-locale.data.js.map +0 -1
- package/build/module_type_should_override_this/lib/whisper-reporter/whisper-reporter.d.ts +0 -5
- package/build/module_type_should_override_this/lib/whisper-reporter/whisper-reporter.js +0 -25
- package/build/module_type_should_override_this/lib/whisper-reporter/whisper-reporter.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/confirm-button/confirm-button.d.ts +0 -2
- package/build/module_type_should_override_this/lib/widget/confirm-button/confirm-button.js +0 -3
- package/build/module_type_should_override_this/lib/widget/confirm-button/confirm-button.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/d6widget/d6widget.d.ts +0 -48
- package/build/module_type_should_override_this/lib/widget/d6widget/d6widget.js +0 -84
- package/build/module_type_should_override_this/lib/widget/d6widget/d6widget.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/end-turn-button/end-turn-button.d.ts +0 -35
- package/build/module_type_should_override_this/lib/widget/end-turn-button/end-turn-button.js +0 -109
- package/build/module_type_should_override_this/lib/widget/end-turn-button/end-turn-button.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/end-turn-button/end-turn-button.testp.d.ts +0 -1
- package/build/module_type_should_override_this/lib/widget/end-turn-button/end-turn-button.testp.js +0 -10
- package/build/module_type_should_override_this/lib/widget/end-turn-button/end-turn-button.testp.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/end-turn-button/end-turn-locale.data.d.ts +0 -3
- package/build/module_type_should_override_this/lib/widget/end-turn-button/end-turn-locale.data.js +0 -4
- package/build/module_type_should_override_this/lib/widget/end-turn-button/end-turn-locale.data.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/hot-seat-button/hot-seat-button.d.ts +0 -28
- package/build/module_type_should_override_this/lib/widget/hot-seat-button/hot-seat-button.js +0 -99
- package/build/module_type_should_override_this/lib/widget/hot-seat-button/hot-seat-button.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/hot-seat-button/hot-seat-button.testp.d.ts +0 -1
- package/build/module_type_should_override_this/lib/widget/hot-seat-button/hot-seat-button.testp.js +0 -10
- package/build/module_type_should_override_this/lib/widget/hot-seat-button/hot-seat-button.testp.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/hot-seat-button/hot-seat-locale.data.d.ts +0 -3
- package/build/module_type_should_override_this/lib/widget/hot-seat-button/hot-seat-locale.data.js +0 -5
- package/build/module_type_should_override_this/lib/widget/hot-seat-button/hot-seat-locale.data.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/perf-widget/perf-widget-locale.data.d.ts +0 -3
- package/build/module_type_should_override_this/lib/widget/perf-widget/perf-widget-locale.data.js +0 -4
- package/build/module_type_should_override_this/lib/widget/perf-widget/perf-widget-locale.data.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/perf-widget/perf-widget.d.ts +0 -19
- package/build/module_type_should_override_this/lib/widget/perf-widget/perf-widget.js +0 -74
- package/build/module_type_should_override_this/lib/widget/perf-widget/perf-widget.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/perf-widget/perf-widget.testp.d.ts +0 -1
- package/build/module_type_should_override_this/lib/widget/perf-widget/perf-widget.testp.js +0 -5
- package/build/module_type_should_override_this/lib/widget/perf-widget/perf-widget.testp.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-clicked-widget.d.ts +0 -22
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-clicked-widget.js +0 -136
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-clicked-widget.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-entry-wart.d.ts +0 -16
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-entry-wart.js +0 -7
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-entry-wart.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-entry-widget.d.ts +0 -29
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-entry-widget.js +0 -131
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-entry-widget.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-locale.data.d.ts +0 -3
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-locale.data.js +0 -13
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-locale.data.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-widget-params.d.ts +0 -33
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-widget-params.js +0 -6
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-widget-params.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-widget.d.ts +0 -25
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-widget.js +0 -99
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-widget.js.map +0 -1
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-widget.testp.d.ts +0 -1
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-widget.testp.js +0 -58
- package/build/module_type_should_override_this/lib/widget/turn-order-widget/turn-order-widget.testp.js.map +0 -1
- package/build/module_type_should_override_this/lib-ext/image-table.d.ts +0 -1
- package/build/module_type_should_override_this/lib-ext/image-table.js +0 -9
- package/build/module_type_should_override_this/lib-ext/image-table.js.map +0 -1
- package/build/module_type_should_override_this/locale.data.d.ts +0 -4
- package/build/module_type_should_override_this/locale.data.js +0 -5
- package/build/module_type_should_override_this/locale.data.js.map +0 -1
- /package/build/cjs/{lib-ext/color-mapping/color-mapping-scikit.d.ts → lib/layout-objects/layout-border.testp.d.ts} +0 -0
- /package/build/{cjs/lib-ext/color-mapping/extracted-to-hex.d.ts → esm/lib/layout-objects/layout-border.testp.d.ts} +0 -0
|
@@ -1,392 +0,0 @@
|
|
|
1
|
-
import { Container, ObjectType, world, } from "@tabletop-playground/api";
|
|
2
|
-
const BLOCK_SIZE = 512; // setSavedData limit 1023 (json trimmings, metadata is extra!)
|
|
3
|
-
const BLOCK_METADATA_SIZE = 32; // be conservative
|
|
4
|
-
const OBJ_SIZE = 65536 - 20; // 64 KB max, leave room for json trimmings
|
|
5
|
-
const BLOCKS_PER_OBJ = Math.floor(OBJ_SIZE / (BLOCK_SIZE + BLOCK_METADATA_SIZE));
|
|
6
|
-
const KEY_FREELIST = "f";
|
|
7
|
-
const KEY_NEXT_OBJECT_ID = "o";
|
|
8
|
-
const KEY_NEXT_BLOCK_INDEX = "i";
|
|
9
|
-
const KEY_BLOCK_DATA = "d";
|
|
10
|
-
/**
|
|
11
|
-
* Store arbitrarily large opaque data.
|
|
12
|
-
*
|
|
13
|
-
* Creates a container, stored data gets broken up into chunks and spread
|
|
14
|
-
* across objects inside that container. If data exceeds the single object
|
|
15
|
-
* limits it chains to a new object.
|
|
16
|
-
*
|
|
17
|
-
* Different data keys can store inside a shared object, creating more
|
|
18
|
-
* objects only when the existing set fills.
|
|
19
|
-
*
|
|
20
|
-
* This does suffer from internal fragmentation; storing many very small
|
|
21
|
-
* data entries wastes space.
|
|
22
|
-
*/
|
|
23
|
-
export class DataStore {
|
|
24
|
-
/**
|
|
25
|
-
* constructor
|
|
26
|
-
*
|
|
27
|
-
* @param dataStoreId - each store MUST have a different id
|
|
28
|
-
*/
|
|
29
|
-
constructor(dataStoreId) {
|
|
30
|
-
let rootObj;
|
|
31
|
-
// Check if this store is already registered.
|
|
32
|
-
const globalKey = `__DataStore:${dataStoreId}__`;
|
|
33
|
-
const rootObjId = world.getSavedData(globalKey);
|
|
34
|
-
if (rootObjId && rootObjId.length > 0) {
|
|
35
|
-
rootObj = world.getObjectById(rootObjId);
|
|
36
|
-
}
|
|
37
|
-
// If not, create a new root container.
|
|
38
|
-
if (!rootObj) {
|
|
39
|
-
const templateId = "A44BAA604E0ED034CD67FA9502214AA7"; // container
|
|
40
|
-
rootObj = world.createObjectFromTemplate(templateId, [0, 0, -10]);
|
|
41
|
-
if (rootObj) {
|
|
42
|
-
rootObj.setObjectType(ObjectType.NonInteractive);
|
|
43
|
-
rootObj.setSavedData("[]", KEY_FREELIST);
|
|
44
|
-
world.setSavedData(rootObj.getId(), globalKey);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
if (!rootObj || !(rootObj instanceof Container)) {
|
|
48
|
-
throw new Error("DataStore unable to find or create root container");
|
|
49
|
-
}
|
|
50
|
-
this._root = rootObj;
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Remove data.
|
|
54
|
-
*
|
|
55
|
-
* @param dataId
|
|
56
|
-
* @returns
|
|
57
|
-
*/
|
|
58
|
-
delete(dataId) {
|
|
59
|
-
const firstBlockLocation = this._getRootEntry(dataId);
|
|
60
|
-
if (!firstBlockLocation) {
|
|
61
|
-
return;
|
|
62
|
-
}
|
|
63
|
-
const blocks = this._getChain(firstBlockLocation);
|
|
64
|
-
this._releaseBlock(firstBlockLocation);
|
|
65
|
-
for (const block of blocks) {
|
|
66
|
-
if (block.next) {
|
|
67
|
-
this._releaseBlock(block.next);
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
this._root.setSavedData("", dataId);
|
|
71
|
-
}
|
|
72
|
-
/**
|
|
73
|
-
* Add or replace data.
|
|
74
|
-
*
|
|
75
|
-
* @param dataId
|
|
76
|
-
* @param data
|
|
77
|
-
* @returns
|
|
78
|
-
*/
|
|
79
|
-
set(dataId, data) {
|
|
80
|
-
var _a, _b;
|
|
81
|
-
this.delete(dataId);
|
|
82
|
-
if (data.length === 0) {
|
|
83
|
-
return;
|
|
84
|
-
}
|
|
85
|
-
const n = Math.ceil(data.length / BLOCK_SIZE);
|
|
86
|
-
// Split data into chunks.
|
|
87
|
-
const dataChunks = [];
|
|
88
|
-
for (let i = 0; i < data.length; i += BLOCK_SIZE) {
|
|
89
|
-
const end = Math.min(i + BLOCK_SIZE, data.length);
|
|
90
|
-
dataChunks.push(data.substring(i, end));
|
|
91
|
-
}
|
|
92
|
-
// Reserve block locations.
|
|
93
|
-
const blockLocations = [];
|
|
94
|
-
for (let i = 0; i < dataChunks.length; i++) {
|
|
95
|
-
blockLocations.push(this._allocBlock());
|
|
96
|
-
}
|
|
97
|
-
// Create chained blocks.
|
|
98
|
-
const blocks = [];
|
|
99
|
-
for (let i = 0; i < n; i++) {
|
|
100
|
-
const data = dataChunks[i];
|
|
101
|
-
if (data) {
|
|
102
|
-
const block = {
|
|
103
|
-
data,
|
|
104
|
-
};
|
|
105
|
-
if (i < dataChunks.length - 1) {
|
|
106
|
-
block.next = blockLocations[i + 1];
|
|
107
|
-
}
|
|
108
|
-
blocks.push(block);
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
// Save blocks.
|
|
112
|
-
for (let i = 0; i < n; i++) {
|
|
113
|
-
const blockLocation = blockLocations[i];
|
|
114
|
-
if (!blockLocation) {
|
|
115
|
-
throw new Error("missing block location");
|
|
116
|
-
}
|
|
117
|
-
const block = blocks[i];
|
|
118
|
-
if (!block) {
|
|
119
|
-
throw new Error("missing block");
|
|
120
|
-
}
|
|
121
|
-
const blockEnc = {
|
|
122
|
-
[KEY_BLOCK_DATA]: block.data,
|
|
123
|
-
};
|
|
124
|
-
if (i < dataChunks.length - 1) {
|
|
125
|
-
const nextLocation = blockLocations[i + 1];
|
|
126
|
-
if (!nextLocation) {
|
|
127
|
-
throw new Error("missing next");
|
|
128
|
-
}
|
|
129
|
-
blockEnc[KEY_NEXT_BLOCK_INDEX] = nextLocation.index;
|
|
130
|
-
if (blockLocation.obj !== nextLocation.obj) {
|
|
131
|
-
blockEnc[KEY_NEXT_OBJECT_ID] = nextLocation.obj.getId();
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
blockLocation.obj.setSavedData(JSON.stringify(blockEnc), blockLocation.index.toString());
|
|
135
|
-
}
|
|
136
|
-
// Save root entry.
|
|
137
|
-
const id = (_a = blockLocations[0]) === null || _a === void 0 ? void 0 : _a.obj.getId();
|
|
138
|
-
const index = (_b = blockLocations[0]) === null || _b === void 0 ? void 0 : _b.index;
|
|
139
|
-
if (id === undefined || index === undefined) {
|
|
140
|
-
throw new Error("missing root");
|
|
141
|
-
}
|
|
142
|
-
const rootEnc = {
|
|
143
|
-
[KEY_NEXT_OBJECT_ID]: id,
|
|
144
|
-
[KEY_NEXT_BLOCK_INDEX]: index,
|
|
145
|
-
};
|
|
146
|
-
this._root.setSavedData(JSON.stringify(rootEnc), dataId);
|
|
147
|
-
}
|
|
148
|
-
/**
|
|
149
|
-
* Get data.
|
|
150
|
-
*
|
|
151
|
-
* @param dataId
|
|
152
|
-
* @returns
|
|
153
|
-
*/
|
|
154
|
-
get(dataId) {
|
|
155
|
-
const firstBlockLocation = this._getRootEntry(dataId);
|
|
156
|
-
if (!firstBlockLocation) {
|
|
157
|
-
return undefined;
|
|
158
|
-
}
|
|
159
|
-
const blocks = this._getChain(firstBlockLocation);
|
|
160
|
-
return blocks.map((block) => block.data).join("");
|
|
161
|
-
}
|
|
162
|
-
/**
|
|
163
|
-
* Get the first data block location for the data entry.
|
|
164
|
-
*
|
|
165
|
-
* @param dataId
|
|
166
|
-
* @returns
|
|
167
|
-
*/
|
|
168
|
-
_getRootEntry(dataId) {
|
|
169
|
-
const blockLocationEncData = this._root.getSavedData(dataId);
|
|
170
|
-
if (!blockLocationEncData || blockLocationEncData.length === 0) {
|
|
171
|
-
return undefined;
|
|
172
|
-
}
|
|
173
|
-
const blockLocationEnc = JSON.parse(blockLocationEncData);
|
|
174
|
-
if (blockLocationEnc[KEY_NEXT_OBJECT_ID] === undefined ||
|
|
175
|
-
blockLocationEnc[KEY_NEXT_BLOCK_INDEX] === undefined) {
|
|
176
|
-
throw new Error("bad objId or block index");
|
|
177
|
-
}
|
|
178
|
-
const obj = world.getObjectById(blockLocationEnc[KEY_NEXT_OBJECT_ID]);
|
|
179
|
-
if (!obj) {
|
|
180
|
-
throw new Error("bad obj");
|
|
181
|
-
}
|
|
182
|
-
return { obj, index: blockLocationEnc[KEY_NEXT_BLOCK_INDEX] };
|
|
183
|
-
}
|
|
184
|
-
/**
|
|
185
|
-
* Read all blocks starting with the given location.
|
|
186
|
-
*
|
|
187
|
-
* @param blockLocation
|
|
188
|
-
* @param processor
|
|
189
|
-
*/
|
|
190
|
-
_getChain(blockLocation) {
|
|
191
|
-
var _a;
|
|
192
|
-
const blocks = [];
|
|
193
|
-
do {
|
|
194
|
-
const blockEncData = blockLocation.obj.getSavedData(blockLocation.index.toString());
|
|
195
|
-
if (!blockEncData || blockEncData.length === 0) {
|
|
196
|
-
throw new Error("bad blockEncData");
|
|
197
|
-
}
|
|
198
|
-
const blockEnc = JSON.parse(blockEncData);
|
|
199
|
-
if (blockEnc[KEY_BLOCK_DATA] === undefined) {
|
|
200
|
-
throw new Error("missing block data");
|
|
201
|
-
}
|
|
202
|
-
const block = {
|
|
203
|
-
data: blockEnc[KEY_BLOCK_DATA],
|
|
204
|
-
};
|
|
205
|
-
if (blockEnc[KEY_NEXT_BLOCK_INDEX]) {
|
|
206
|
-
let obj;
|
|
207
|
-
if (blockEnc[KEY_NEXT_OBJECT_ID]) {
|
|
208
|
-
obj = world.getObjectById(blockEnc[KEY_NEXT_OBJECT_ID]);
|
|
209
|
-
if (!obj) {
|
|
210
|
-
throw new Error("bad objId");
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
else {
|
|
214
|
-
obj = blockLocation.obj;
|
|
215
|
-
}
|
|
216
|
-
block.next = {
|
|
217
|
-
obj,
|
|
218
|
-
index: blockEnc[KEY_NEXT_BLOCK_INDEX],
|
|
219
|
-
};
|
|
220
|
-
blockLocation = block.next; // iterate to next block
|
|
221
|
-
}
|
|
222
|
-
blocks.push(block);
|
|
223
|
-
} while ((_a = blocks[blocks.length - 1]) === null || _a === void 0 ? void 0 : _a.next);
|
|
224
|
-
return blocks;
|
|
225
|
-
}
|
|
226
|
-
/**
|
|
227
|
-
* Reserve a block (index within a store file).
|
|
228
|
-
* If store has no more free slots remove it from root available list.
|
|
229
|
-
*
|
|
230
|
-
* @returns
|
|
231
|
-
*/
|
|
232
|
-
_allocBlock() {
|
|
233
|
-
var _a;
|
|
234
|
-
// Get a store with free slot(s).
|
|
235
|
-
let store = this._getStore();
|
|
236
|
-
if (!store) {
|
|
237
|
-
store = this._allocStore();
|
|
238
|
-
}
|
|
239
|
-
// Get a free index, remove from freelist.
|
|
240
|
-
const freelistData = store.getSavedData(KEY_FREELIST);
|
|
241
|
-
if (!freelistData || freelistData.length === 0) {
|
|
242
|
-
throw new Error("bad freelistData");
|
|
243
|
-
}
|
|
244
|
-
const freelist = JSON.parse(freelistData);
|
|
245
|
-
if (!Array.isArray(freelist)) {
|
|
246
|
-
throw new Error("freelist is not an array");
|
|
247
|
-
}
|
|
248
|
-
if (freelist.length === 0) {
|
|
249
|
-
throw new Error("freelist empty");
|
|
250
|
-
}
|
|
251
|
-
const blockIndex = (_a = freelist.shift()) !== null && _a !== void 0 ? _a : -1;
|
|
252
|
-
store.setSavedData(JSON.stringify(freelist), KEY_FREELIST);
|
|
253
|
-
// If that was the last block, remove from available stores.
|
|
254
|
-
if (freelist.length === 0) {
|
|
255
|
-
this._removeStoreFromAvailable(store);
|
|
256
|
-
}
|
|
257
|
-
return {
|
|
258
|
-
obj: store,
|
|
259
|
-
index: blockIndex,
|
|
260
|
-
};
|
|
261
|
-
}
|
|
262
|
-
/**
|
|
263
|
-
* Release a block (index within a store file).
|
|
264
|
-
* If the store is no longer in use delete it.
|
|
265
|
-
*
|
|
266
|
-
* @param blockLocation
|
|
267
|
-
*/
|
|
268
|
-
_releaseBlock(blockLocation) {
|
|
269
|
-
const store = blockLocation.obj;
|
|
270
|
-
// Push to the freelist.
|
|
271
|
-
const freelistData = store.getSavedData(KEY_FREELIST);
|
|
272
|
-
if (!freelistData || freelistData.length === 0) {
|
|
273
|
-
throw new Error("bad freelistData");
|
|
274
|
-
}
|
|
275
|
-
const freelist = JSON.parse(freelistData);
|
|
276
|
-
if (!Array.isArray(freelist)) {
|
|
277
|
-
throw new Error("freelist is not an array");
|
|
278
|
-
}
|
|
279
|
-
freelist.push(blockLocation.index);
|
|
280
|
-
store.setSavedData(JSON.stringify(freelist), KEY_FREELIST);
|
|
281
|
-
// If the freelist was empty, add to available stores.
|
|
282
|
-
if (freelist.length === 1) {
|
|
283
|
-
this._addStoreToAvailable(store);
|
|
284
|
-
}
|
|
285
|
-
// If the freelist is everything, delete the store.
|
|
286
|
-
if (freelist.length === BLOCKS_PER_OBJ) {
|
|
287
|
-
this._releaseStore(store);
|
|
288
|
-
}
|
|
289
|
-
}
|
|
290
|
-
/**
|
|
291
|
-
* Add store to available with-capacity list (store has more room).
|
|
292
|
-
*
|
|
293
|
-
* @param obj
|
|
294
|
-
*/
|
|
295
|
-
_addStoreToAvailable(obj) {
|
|
296
|
-
const rootStoreIdsData = this._root.getSavedData(KEY_FREELIST);
|
|
297
|
-
if (!rootStoreIdsData || rootStoreIdsData.length === 0) {
|
|
298
|
-
throw new Error("bad rootStoreData");
|
|
299
|
-
}
|
|
300
|
-
const rootStoreIds = JSON.parse(rootStoreIdsData);
|
|
301
|
-
if (!Array.isArray(rootStoreIds)) {
|
|
302
|
-
throw new Error("rootStoreData not array");
|
|
303
|
-
}
|
|
304
|
-
rootStoreIds.push(obj.getId());
|
|
305
|
-
this._root.setSavedData(JSON.stringify(rootStoreIds), KEY_FREELIST);
|
|
306
|
-
}
|
|
307
|
-
/**
|
|
308
|
-
* Remove store from available with-capcity list (store is full).
|
|
309
|
-
*
|
|
310
|
-
* @param obj
|
|
311
|
-
*/
|
|
312
|
-
_removeStoreFromAvailable(obj) {
|
|
313
|
-
const rootStoreIdsData = this._root.getSavedData(KEY_FREELIST);
|
|
314
|
-
if (!rootStoreIdsData || rootStoreIdsData.length === 0) {
|
|
315
|
-
throw new Error("bad rootStoreData");
|
|
316
|
-
}
|
|
317
|
-
const rootStoreIds = JSON.parse(rootStoreIdsData);
|
|
318
|
-
if (!Array.isArray(rootStoreIds)) {
|
|
319
|
-
throw new Error("rootStoreData not array");
|
|
320
|
-
}
|
|
321
|
-
const idx = rootStoreIds.indexOf(obj.getId());
|
|
322
|
-
if (idx < 0) {
|
|
323
|
-
throw new Error("file not in root freelist");
|
|
324
|
-
}
|
|
325
|
-
rootStoreIds.splice(idx, 1);
|
|
326
|
-
this._root.setSavedData(JSON.stringify(rootStoreIds), KEY_FREELIST);
|
|
327
|
-
}
|
|
328
|
-
/**
|
|
329
|
-
* Get a store from the list of stores with free slots.
|
|
330
|
-
*
|
|
331
|
-
* @returns
|
|
332
|
-
*/
|
|
333
|
-
_getStore() {
|
|
334
|
-
// Return entry from available stores.
|
|
335
|
-
const rootStoreIdsData = this._root.getSavedData(KEY_FREELIST);
|
|
336
|
-
if (!rootStoreIdsData || rootStoreIdsData.length === 0) {
|
|
337
|
-
throw new Error("bad rootStoreData");
|
|
338
|
-
}
|
|
339
|
-
const rootStoreIds = JSON.parse(rootStoreIdsData);
|
|
340
|
-
if (!Array.isArray(rootStoreIds)) {
|
|
341
|
-
throw new Error("rootStoreData not array");
|
|
342
|
-
}
|
|
343
|
-
if (rootStoreIds.length > 0) {
|
|
344
|
-
const objId = rootStoreIds[0];
|
|
345
|
-
if (!objId) {
|
|
346
|
-
throw new Error("missing objId");
|
|
347
|
-
}
|
|
348
|
-
const obj = world.getObjectById(objId);
|
|
349
|
-
if (!obj) {
|
|
350
|
-
throw new Error("bad obj");
|
|
351
|
-
}
|
|
352
|
-
return obj;
|
|
353
|
-
}
|
|
354
|
-
return undefined;
|
|
355
|
-
}
|
|
356
|
-
/**
|
|
357
|
-
* Create a new store, add to the list of stores with free slots.
|
|
358
|
-
*
|
|
359
|
-
* @returns
|
|
360
|
-
*/
|
|
361
|
-
_allocStore() {
|
|
362
|
-
// Create store object and place inside root container.
|
|
363
|
-
const templateId = "83FDE12C4E6D912B16B85E9A00422F43"; // cube
|
|
364
|
-
const obj = world.createObjectFromTemplate(templateId, [0, 0, 0]);
|
|
365
|
-
if (!obj) {
|
|
366
|
-
throw new Error("unable to create store");
|
|
367
|
-
}
|
|
368
|
-
this._root.addObjects([obj]);
|
|
369
|
-
// Set free list.
|
|
370
|
-
const freelist = [];
|
|
371
|
-
for (let i = 0; i < BLOCKS_PER_OBJ; i++) {
|
|
372
|
-
freelist.push(i);
|
|
373
|
-
}
|
|
374
|
-
obj.setSavedData(JSON.stringify(freelist), KEY_FREELIST);
|
|
375
|
-
// Add to root freelist of available stores.
|
|
376
|
-
this._addStoreToAvailable(obj);
|
|
377
|
-
return obj;
|
|
378
|
-
}
|
|
379
|
-
/**
|
|
380
|
-
* Remove a store from the list of stores with free slots, then
|
|
381
|
-
* delete the store object.
|
|
382
|
-
*
|
|
383
|
-
* @param obj
|
|
384
|
-
*/
|
|
385
|
-
_releaseStore(obj) {
|
|
386
|
-
// Remove from root freelist of available stores.
|
|
387
|
-
this._removeStoreFromAvailable(obj);
|
|
388
|
-
// Destroy store object.
|
|
389
|
-
obj.destroy();
|
|
390
|
-
}
|
|
391
|
-
}
|
|
392
|
-
//# sourceMappingURL=data-store.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"data-store.js","sourceRoot":"","sources":["../../../../src/lib/data-store/data-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { refObject, world } from "@tabletop-playground/api";
|
|
2
|
-
import { DiceGroup, DiceGroupCleanup } from "./dice-group";
|
|
3
|
-
world.setShowDiceRollMessages(false);
|
|
4
|
-
new DiceGroupCleanup().init();
|
|
5
|
-
const player = world.getAllPlayers()[0];
|
|
6
|
-
if (!player) {
|
|
7
|
-
throw new Error("no player");
|
|
8
|
-
}
|
|
9
|
-
DiceGroup.roll({
|
|
10
|
-
diceParams: [
|
|
11
|
-
{ sides: 10 },
|
|
12
|
-
{
|
|
13
|
-
id: "will-reroll",
|
|
14
|
-
name: "Rerolled",
|
|
15
|
-
sides: 10,
|
|
16
|
-
primaryColor: [1, 0, 0, 1],
|
|
17
|
-
secondaryColor: [1, 1, 0, 1],
|
|
18
|
-
hit: 11, // cannot hit, will reroll
|
|
19
|
-
reroll: true,
|
|
20
|
-
},
|
|
21
|
-
{ sides: 4 },
|
|
22
|
-
{ sides: 6 },
|
|
23
|
-
{ sides: 8 },
|
|
24
|
-
{ sides: 12 },
|
|
25
|
-
{ sides: 20 },
|
|
26
|
-
],
|
|
27
|
-
player,
|
|
28
|
-
position: refObject.getPosition().add([0, 4, 0]),
|
|
29
|
-
timeoutSeconds: -1, // no timeout
|
|
30
|
-
deleteAfterSeconds: -1, // no delete
|
|
31
|
-
callback: (diceResults) => {
|
|
32
|
-
console.log(diceResults
|
|
33
|
-
.map((diceResult) => DiceGroup.format(diceResult))
|
|
34
|
-
.join(", "));
|
|
35
|
-
},
|
|
36
|
-
});
|
|
37
|
-
//# sourceMappingURL=dice-group-testp.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dice-group-testp.js","sourceRoot":"","sources":["../../../../src/lib/dice-group/dice-group-testp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,SAAS,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAc,MAAM,cAAc,CAAC;AAEvE,KAAK,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;AAErC,IAAI,gBAAgB,EAAE,CAAC,IAAI,EAAE,CAAC;AAE9B,MAAM,MAAM,GAAuB,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC;AAC5D,IAAI,CAAC,MAAM,EAAE,CAAC;IACV,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,CAAC,IAAI,CAAC;IACX,UAAU,EAAE;QACR,EAAE,KAAK,EAAE,EAAE,EAAE;QACb;YACI,EAAE,EAAE,aAAa;YACjB,IAAI,EAAE,UAAU;YAChB,KAAK,EAAE,EAAE;YACT,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAC1B,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YAC5B,GAAG,EAAE,EAAE,EAAE,0BAA0B;YACnC,MAAM,EAAE,IAAI;SACf;QACD,EAAE,KAAK,EAAE,CAAC,EAAE;QACZ,EAAE,KAAK,EAAE,CAAC,EAAE;QACZ,EAAE,KAAK,EAAE,CAAC,EAAE;QACZ,EAAE,KAAK,EAAE,EAAE,EAAE;QACb,EAAE,KAAK,EAAE,EAAE,EAAE;KAChB;IACD,MAAM;IACN,QAAQ,EAAE,SAAS,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAChD,cAAc,EAAE,CAAC,CAAC,EAAE,aAAa;IACjC,kBAAkB,EAAE,CAAC,CAAC,EAAE,YAAY;IACpC,QAAQ,EAAE,CAAC,WAAyB,EAAE,EAAE;QACpC,OAAO,CAAC,GAAG,CACP,WAAW;aACN,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;aACjD,IAAI,CAAC,IAAI,CAAC,CAClB,CAAC;IACN,CAAC;CACJ,CAAC,CAAC"}
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
import { Color, Dice, Player, Vector } from "@tabletop-playground/api";
|
|
2
|
-
import { IGlobal } from "../global/i-global";
|
|
3
|
-
/**
|
|
4
|
-
* Setup for a single die.
|
|
5
|
-
*/
|
|
6
|
-
export type DiceParams = {
|
|
7
|
-
sides: 4 | 6 | 8 | 10 | 12 | 20;
|
|
8
|
-
id?: string;
|
|
9
|
-
primaryColor?: Color | [r: number, g: number, b: number, a: number];
|
|
10
|
-
secondaryColor?: Color | [r: number, g: number, b: number, a: number];
|
|
11
|
-
name?: string;
|
|
12
|
-
hit?: number;
|
|
13
|
-
crit?: number;
|
|
14
|
-
critCount?: number;
|
|
15
|
-
reroll?: boolean;
|
|
16
|
-
};
|
|
17
|
-
/**
|
|
18
|
-
* Setup for a group of dice.
|
|
19
|
-
*/
|
|
20
|
-
export type DiceGroupParams = {
|
|
21
|
-
diceParams: DiceParams[];
|
|
22
|
-
player: Player;
|
|
23
|
-
timeoutSeconds?: number;
|
|
24
|
-
deleteAfterSeconds?: number;
|
|
25
|
-
callback?: (diceResults: DiceResult[], player: Player) => void;
|
|
26
|
-
position?: Vector | [x: number, y: number, z: number];
|
|
27
|
-
doFakeRoll?: boolean;
|
|
28
|
-
};
|
|
29
|
-
export type DiceResult = {
|
|
30
|
-
diceParams: DiceParams;
|
|
31
|
-
dice?: Dice;
|
|
32
|
-
value: number;
|
|
33
|
-
hit?: boolean;
|
|
34
|
-
crit?: boolean;
|
|
35
|
-
rerolledValue?: number;
|
|
36
|
-
};
|
|
37
|
-
export declare const DICE_GROUP_SAVED_DATA_KEY = "__DiceGroup_DiceId__";
|
|
38
|
-
/**
|
|
39
|
-
* Remove any lingering DiceGroup dice.
|
|
40
|
-
*/
|
|
41
|
-
export declare class DiceGroupCleanup implements IGlobal {
|
|
42
|
-
init(): void;
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Roll a collection of dice, listen to onRolled for overall result.
|
|
46
|
-
* Can only be used once, create a new one for new rolls.
|
|
47
|
-
*/
|
|
48
|
-
export declare class DiceGroup {
|
|
49
|
-
static readonly DEFAULT_TIMEOUT_SECONDS = 3;
|
|
50
|
-
static readonly DEFAULT_DELETE_AFTER_SECONDS = 5;
|
|
51
|
-
/**
|
|
52
|
-
* Create and roll dice group.
|
|
53
|
-
* Do via static to prevent attempting to reuse the single-use instance.
|
|
54
|
-
*
|
|
55
|
-
* @param params
|
|
56
|
-
*/
|
|
57
|
-
static roll(params: DiceGroupParams): void;
|
|
58
|
-
/**
|
|
59
|
-
* Format a dice result for display.
|
|
60
|
-
*
|
|
61
|
-
* @param diceResult
|
|
62
|
-
* @returns
|
|
63
|
-
*/
|
|
64
|
-
static format(diceResult: DiceResult): string;
|
|
65
|
-
private readonly _diceParamsArray;
|
|
66
|
-
private readonly _player;
|
|
67
|
-
private readonly _callback;
|
|
68
|
-
private readonly _deleteAfterSeconds;
|
|
69
|
-
private readonly _timeoutSeconds;
|
|
70
|
-
private readonly _position;
|
|
71
|
-
private readonly _diceObjIdToDiceResult;
|
|
72
|
-
private readonly _activeDice;
|
|
73
|
-
private _timeoutHandle;
|
|
74
|
-
private readonly _onDiceRolledHandler;
|
|
75
|
-
private readonly _onTimeoutHandler;
|
|
76
|
-
private readonly _onDeleteDiceHandler;
|
|
77
|
-
private constructor();
|
|
78
|
-
fakeRoll(): void;
|
|
79
|
-
roll(): void;
|
|
80
|
-
_sendResult(): void;
|
|
81
|
-
static _setFakeValue(diceResult: DiceResult): void;
|
|
82
|
-
static _createDice(diceParams: DiceParams, position: Vector | [x: number, y: number, z: number]): Dice;
|
|
83
|
-
}
|