Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
"use strict";

Object.defineProperty(exports, "__esModule", {
value: true
});

var _utils = require("./utils/index.cjs");
var _dataTables = require("@azure/data-tables");
var _identity = require("@azure/identity");
const DRIVER_NAME = "azure-storage-table";
module.exports = (0, _utils.defineDriver)(opts => {
const {
accountName = null,
tableName = "unstorage",
partitionKey = "unstorage",
accountKey = null,
sasKey = null,
connectionString = null,
pageSize = 1e3
} = opts;
let client;
const getClient = () => {
if (client) {
return client;
}
if (!accountName) {
throw (0, _utils.createRequiredError)(DRIVER_NAME, "accountName");
}
if (pageSize > 1e3) {
throw (0, _utils.createError)(DRIVER_NAME, "`pageSize` exceeds the maximum allowed value of `1000`");
}
if (accountKey) {
const credential = new _dataTables.AzureNamedKeyCredential(accountName, accountKey);
client = new _dataTables.TableClient(`https://${accountName}.table.core.windows.net`, tableName, credential);
} else if (sasKey) {
const credential = new _dataTables.AzureSASCredential(sasKey);
client = new _dataTables.TableClient(`https://${accountName}.table.core.windows.net`, tableName, credential);
} else if (connectionString) {
client = _dataTables.TableClient.fromConnectionString(connectionString, tableName);
} else {
const credential = new _identity.DefaultAzureCredential();
client = new _dataTables.TableClient(`https://${accountName}.table.core.windows.net`, tableName, credential);
}
return client;
};
return {
name: DRIVER_NAME,
options: opts,
getInstance: getClient,
async hasItem(key) {
try {
await getClient().getEntity(partitionKey, key);
return true;
} catch {
return false;
}
},
async getItem(key) {
try {
const entity = await getClient().getEntity(partitionKey, key);
return entity.unstorageValue;
} catch {
return null;
}
},
async setItem(key, value) {
const entity = {
partitionKey,
rowKey: key,
unstorageValue: value
};
await getClient().upsertEntity(entity, "Replace");
},
async removeItem(key) {
await getClient().deleteEntity(partitionKey, key);
},
async getKeys() {
const iterator = getClient().listEntities().byPage({
maxPageSize: pageSize
});
const keys = [];
for await (const page of iterator) {
const pageKeys = page.map(entity => entity.rowKey).filter(Boolean);
keys.push(...pageKeys);
}
return keys;
},
async getMeta(key) {
const entity = await getClient().getEntity(partitionKey, key);
return {
mtime: entity.timestamp ? new Date(entity.timestamp) : void 0,
etag: entity.etag
};
},
async clear() {
const iterator = getClient().listEntities().byPage({
maxPageSize: pageSize
});
for await (const page of iterator) {
await Promise.all(page.map(async entity => {
if (entity.partitionKey && entity.rowKey) {
await getClient().deleteEntity(entity.partitionKey, entity.rowKey);
}
}));
}
}
};
});
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
/**
* @license
* Copyright 2018 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
import { noChange } from '../lit-html.js';
import { directive, Directive, PartType, } from '../directive.js';
const important = 'important';
// The leading space is important
const importantFlag = ' !' + important;
// How many characters to remove from a value, as a negative number
const flagTrim = 0 - importantFlag.length;
class StyleMapDirective extends Directive {
constructor(partInfo) {
super(partInfo);
if (partInfo.type !== PartType.ATTRIBUTE ||
partInfo.name !== 'style' ||
partInfo.strings?.length > 2) {
throw new Error('The `styleMap` directive must be used in the `style` attribute ' +
'and must be the only part in the attribute.');
}
}
render(styleInfo) {
return Object.keys(styleInfo).reduce((style, prop) => {
const value = styleInfo[prop];
if (value == null) {
return style;
}
// Convert property names from camel-case to dash-case, i.e.:
// `backgroundColor` -> `background-color`
// Vendor-prefixed names need an extra `-` appended to front:
// `webkitAppearance` -> `-webkit-appearance`
// Exception is any property name containing a dash, including
// custom properties; we assume these are already dash-cased i.e.:
// `--my-button-color` --> `--my-button-color`
prop = prop.includes('-')
? prop
: prop
.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g, '-$&')
.toLowerCase();
return style + `${prop}:${value};`;
}, '');
}
update(part, [styleInfo]) {
const { style } = part.element;
if (this._previousStyleProperties === undefined) {
this._previousStyleProperties = new Set(Object.keys(styleInfo));
return this.render(styleInfo);
}
// Remove old properties that no longer exist in styleInfo
for (const name of this._previousStyleProperties) {
// If the name isn't in styleInfo or it's null/undefined
if (styleInfo[name] == null) {
this._previousStyleProperties.delete(name);
if (name.includes('-')) {
style.removeProperty(name);
}
else {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
style[name] = null;
}
}
}
// Add or update properties
for (const name in styleInfo) {
const value = styleInfo[name];
if (value != null) {
this._previousStyleProperties.add(name);
const isImportant = typeof value === 'string' && value.endsWith(importantFlag);
if (name.includes('-') || isImportant) {
style.setProperty(name, isImportant
? value.slice(0, flagTrim)
: value, isImportant ? important : '');
}
else {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
style[name] = value;
}
}
}
return noChange;
}
}
/**
* A directive that applies CSS properties to an element.
*
* `styleMap` can only be used in the `style` attribute and must be the only
* expression in the attribute. It takes the property names in the
* {@link StyleInfo styleInfo} object and adds the properties to the inline
* style of the element.
*
* Property names with dashes (`-`) are assumed to be valid CSS
* property names and set on the element's style object using `setProperty()`.
* Names without dashes are assumed to be camelCased JavaScript property names
* and set on the element's style object using property assignment, allowing the
* style object to translate JavaScript-style names to CSS property names.
*
* For example `styleMap({backgroundColor: 'red', 'border-top': '5px', '--size':
* '0'})` sets the `background-color`, `border-top` and `--size` properties.
*
* @param styleInfo
* @see {@link https://lit.dev/docs/templates/directives/#stylemap styleMap code samples on Lit.dev}
*/
export const styleMap = directive(StyleMapDirective);
//# sourceMappingURL=style-map.js.map
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"version":3,"file":"scroll.js","sourceRoot":"","sources":["../../../chains/definitions/scroll.ts"],"names":[],"mappings":";;;AAAA,qEAA8D;AAEjD,QAAA,MAAM,GAAiB,IAAA,4BAAW,EAAC;IAC9C,EAAE,EAAE,OAAO;IACX,IAAI,EAAE,QAAQ;IACd,cAAc,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC9D,OAAO,EAAE;QACP,OAAO,EAAE;YACP,IAAI,EAAE,CAAC,uBAAuB,CAAC;YAC/B,SAAS,EAAE,CAAC,4BAA4B,CAAC;SAC1C;KACF;IACD,cAAc,EAAE;QACd,OAAO,EAAE;YACP,IAAI,EAAE,YAAY;YAClB,GAAG,EAAE,wBAAwB;YAC7B,MAAM,EAAE,gCAAgC;SACzC;KACF;IACD,SAAS,EAAE;QACT,UAAU,EAAE;YACV,OAAO,EAAE,4CAA4C;YACrD,YAAY,EAAE,EAAE;SACjB;KACF;IACD,OAAO,EAAE,KAAK;CACf,CAAC,CAAA"}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../spend-permissions/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAMxD;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CACjC,KAA+B,EAC/B,OAA+B;IAE/B,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;QACpB,OAAO,4CAA4C,CAAC;IACtD,CAAC;IAED,IAAI,KAAK,KAAK,MAAM,IAAI,CAAC,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,cAAc,CAAC,EAAE,CAAC;QAC3E,OAAO,eAAe,CAAC,KAAK,EAAE,OAAkB,CAAC,CAAC;IACpD,CAAC;IAED,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;QACrB,MAAM,IAAI,wBAAwB,CAChC,sCAAsC,KAAK,wBAAwB,OAAO,8CAA8C,CACzH,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
Original file line number Diff line number Diff line change
@@ -0,0 +1,119 @@
import { BytesSizeMismatchError } from '../errors/abi.js';
import { InvalidAddressError } from '../errors/address.js';
import { InvalidDomainError, InvalidPrimaryTypeError, InvalidStructTypeError, } from '../errors/typedData.js';
import { isAddress } from './address/isAddress.js';
import { size } from './data/size.js';
import { numberToHex } from './encoding/toHex.js';
import { bytesRegex, integerRegex } from './regex.js';
import { hashDomain, } from './signature/hashTypedData.js';
import { stringify } from './stringify.js';
export function serializeTypedData(parameters) {
const { domain: domain_, message: message_, primaryType, types, } = parameters;
const normalizeData = (struct, data_) => {
const data = { ...data_ };
for (const param of struct) {
const { name, type } = param;
if (type === 'address')
data[name] = data[name].toLowerCase();
}
return data;
};
const domain = (() => {
if (!types.EIP712Domain)
return {};
if (!domain_)
return {};
return normalizeData(types.EIP712Domain, domain_);
})();
const message = (() => {
if (primaryType === 'EIP712Domain')
return undefined;
return normalizeData(types[primaryType], message_);
})();
return stringify({ domain, message, primaryType, types });
}
export function validateTypedData(parameters) {
const { domain, message, primaryType, types } = parameters;
const validateData = (struct, data) => {
for (const param of struct) {
const { name, type } = param;
const value = data[name];
const integerMatch = type.match(integerRegex);
if (integerMatch &&
(typeof value === 'number' || typeof value === 'bigint')) {
const [_type, base, size_] = integerMatch;
// If number cannot be cast to a sized hex value, it is out of range
// and will throw.
numberToHex(value, {
signed: base === 'int',
size: Number.parseInt(size_, 10) / 8,
});
}
if (type === 'address' && typeof value === 'string' && !isAddress(value))
throw new InvalidAddressError({ address: value });
const bytesMatch = type.match(bytesRegex);
if (bytesMatch) {
const [_type, size_] = bytesMatch;
if (size_ && size(value) !== Number.parseInt(size_, 10))
throw new BytesSizeMismatchError({
expectedSize: Number.parseInt(size_, 10),
givenSize: size(value),
});
}
const struct = types[type];
if (struct) {
validateReference(type);
validateData(struct, value);
}
}
};
// Validate domain types.
if (types.EIP712Domain && domain) {
if (typeof domain !== 'object')
throw new InvalidDomainError({ domain });
validateData(types.EIP712Domain, domain);
}
// Validate message types.
if (primaryType !== 'EIP712Domain') {
if (types[primaryType])
validateData(types[primaryType], message);
else
throw new InvalidPrimaryTypeError({ primaryType, types });
}
}
export function getTypesForEIP712Domain({ domain, }) {
return [
typeof domain?.name === 'string' && { name: 'name', type: 'string' },
domain?.version && { name: 'version', type: 'string' },
(typeof domain?.chainId === 'number' ||
typeof domain?.chainId === 'bigint') && {
name: 'chainId',
type: 'uint256',
},
domain?.verifyingContract && {
name: 'verifyingContract',
type: 'address',
},
domain?.salt && { name: 'salt', type: 'bytes32' },
].filter(Boolean);
}
export function domainSeparator({ domain }) {
return hashDomain({
domain,
types: {
EIP712Domain: getTypesForEIP712Domain({ domain }),
},
});
}
/** @internal */
function validateReference(type) {
// Struct type must not be a Solidity type.
if (type === 'address' ||
type === 'bool' ||
type === 'string' ||
type.startsWith('bytes') ||
type.startsWith('uint') ||
type.startsWith('int'))
throw new InvalidStructTypeError({ type });
}
//# sourceMappingURL=typedData.js.map
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"version":3,"file":"CaipNetworkUtil.js","sourceRoot":"","sources":["../../../src/CaipNetworkUtil.ts"],"names":[],"mappings":"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"}
Loading