Adjust European short trip heuristic from >3 days to >1 day to correctly detect when user has returned home from European trips. This fixes the April 29-30, 2023 case where the location incorrectly showed "Sankt Georg, Hamburg" instead of "Bristol" when the user was free (no events scheduled) after the foss-north trip ended on April 27. The previous logic required more than 3 days to pass before assuming return home from European countries, but for short European trips by rail/ferry, users typically return within 1-2 days. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
30 lines
1.2 KiB
JavaScript
30 lines
1.2 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.dynamicAnchor = void 0;
|
|
const codegen_1 = require("../../compile/codegen");
|
|
const names_1 = require("../../compile/names");
|
|
const compile_1 = require("../../compile");
|
|
const ref_1 = require("../core/ref");
|
|
const def = {
|
|
keyword: "$dynamicAnchor",
|
|
schemaType: "string",
|
|
code: (cxt) => dynamicAnchor(cxt, cxt.schema),
|
|
};
|
|
function dynamicAnchor(cxt, anchor) {
|
|
const { gen, it } = cxt;
|
|
it.schemaEnv.root.dynamicAnchors[anchor] = true;
|
|
const v = (0, codegen_1._) `${names_1.default.dynamicAnchors}${(0, codegen_1.getProperty)(anchor)}`;
|
|
const validate = it.errSchemaPath === "#" ? it.validateName : _getValidate(cxt);
|
|
gen.if((0, codegen_1._) `!${v}`, () => gen.assign(v, validate));
|
|
}
|
|
exports.dynamicAnchor = dynamicAnchor;
|
|
function _getValidate(cxt) {
|
|
const { schemaEnv, schema, self } = cxt.it;
|
|
const { root, baseId, localRefs, meta } = schemaEnv.root;
|
|
const { schemaId } = self.opts;
|
|
const sch = new compile_1.SchemaEnv({ schema, schemaId, root, baseId, localRefs, meta });
|
|
compile_1.compileSchema.call(self, sch);
|
|
return (0, ref_1.getValidate)(cxt, sch);
|
|
}
|
|
exports.default = def;
|
|
//# sourceMappingURL=dynamicAnchor.js.map
|